 .careers-shell {
     background: var(--light);
     padding-bottom: 4rem;
 }

 .jobs-hero {
     padding: 5rem 0 3rem;
 }

 .jobs-hero-grid {
     display: grid;
     grid-template-columns: minmax(0, 1fr) 360px;
     gap: 3rem;
     align-items: start;
 }

 .jobs-eyebrow {
     text-transform: uppercase;
     letter-spacing: 0.12em;
     font-size: 0.75rem;
     font-weight: 700;
     color: var(--primary);
     margin-bottom: 0.75rem;
 }

 .jobs-title {
     font-size: clamp(2.4rem, 4vw, 3.6rem);
     font-weight: 800;
     line-height: 1.1;
     color: var(--dark);
 }

 .jobs-subtitle {
     margin-top: 1rem;
     color: var(--gray);
     font-size: 1.1rem;
 }

 .jobs-hero-actions {
     display: flex;
     align-items: center;
     gap: 1.25rem;
     margin-top: 2rem;
     flex-wrap: wrap;
 }

 .jobs-primary-button {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 0.85rem 1.75rem;
     border-radius: 999px;
     background: var(--primary);
     color: white;
     font-weight: 600;
     text-decoration: none;
     box-shadow: 0 12px 30px rgba(79, 70, 229, 0.2);
     transition: var(--transition);
 }

 .jobs-primary-button:hover {
     background: var(--primary-dark);
     transform: translateY(-1px);
 }

 .jobs-secondary-link {
     color: var(--primary);
     font-weight: 600;
     text-decoration: none;
 }

 .jobs-secondary-link:hover {
     text-decoration: underline;
 }

 .jobs-hero-card {
     background: white;
     border-radius: var(--border-radius);
     padding: 2rem;
     box-shadow: 0 20px 45px rgba(15, 23, 42, 0.08);
     border: 1px solid rgba(148, 163, 184, 0.2);
 }

 .jobs-hero-card h3 {
     font-size: 1.25rem;
     font-weight: 700;
     color: var(--dark);
 }

 .jobs-hero-card ul {
     list-style: none;
     margin-top: 1.25rem;
     display: grid;
     gap: 0.75rem;
     color: var(--gray);
 }

 .jobs-hero-card li {
     position: relative;
     padding-left: 1.5rem;
 }

 .jobs-hero-card li::before {
     content: '✓';
     position: absolute;
     left: 0;
     top: 0;
     color: var(--success);
     font-weight: 700;
 }

 .jobs-search {
     padding: 2rem 0 4rem;
 }

 .jobs-search-header {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 1.5rem;
     margin-bottom: 1.5rem;
 }

 .jobs-search-header h2 {
     font-size: 2rem;
     font-weight: 700;
     color: var(--dark);
 }

 .jobs-search-header p {
     color: var(--gray);
     margin-top: 0.35rem;
 }

 .jobs-clear-link {
     color: var(--primary);
     font-weight: 600;
     text-decoration: none;
 }

 .jobs-clear-link:hover {
     text-decoration: underline;
 }

 .jobs-filter-form {
     background: white;
     border-radius: var(--border-radius);
     padding: 1.75rem;
     border: 1px solid rgba(148, 163, 184, 0.2);
     box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
     margin-bottom: 2.5rem;
 }

 .jobs-filter-grid {
     display: grid;
     grid-template-columns: repeat(4, minmax(0, 1fr));
     gap: 1rem;
 }

 .jobs-filter-field span {
     display: block;
     font-size: 0.75rem;
     font-weight: 700;
     letter-spacing: 0.08em;
     text-transform: uppercase;
     color: var(--gray);
     margin-bottom: 0.4rem;
 }

 .jobs-filter-field input,
 .jobs-filter-field select {
     width: 100%;
     padding: 0.75rem 0.9rem;
     border-radius: 12px;
     border: 1px solid rgba(148, 163, 184, 0.35);
     background: #f8fafc;
     font-size: 0.95rem;
     color: var(--dark);
 }

 .jobs-filter-field input:focus,
 .jobs-filter-field select:focus {
     outline: none;
     border-color: var(--primary);
     box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.15);
 }

 .jobs-filter-button {
     margin-top: 1.25rem;
     border: none;
     border-radius: 999px;
     padding: 0.85rem 1.75rem;
     background: var(--dark);
     color: white;
     font-weight: 600;
     cursor: pointer;
     transition: var(--transition);
 }

 .jobs-filter-button:hover {
     background: #0b1220;
     transform: translateY(-1px);
 }

 .jobs-list {
     display: grid;
     gap: 1.5rem;
 }

 .job-card {
     background: white;
     border-radius: var(--border-radius);
     padding: 1.75rem;
     border: 1px solid rgba(148, 163, 184, 0.2);
     box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
     transition: var(--transition);
 }

 .job-card:hover {
     transform: translateY(-3px);
     box-shadow: 0 20px 40px rgba(15, 23, 42, 0.1);
 }

 .job-card-header {
     display: flex;
     align-items: flex-start;
     justify-content: space-between;
     gap: 1rem;
 }

 .job-card h3 {
     font-size: 1.35rem;
     font-weight: 700;
     color: var(--dark);
 }

 .job-card h3 a {
     color: inherit;
     text-decoration: none;
 }

 .job-card h3 a:hover {
     color: var(--primary);
 }

 .job-status {
     background: rgba(16, 185, 129, 0.15);
     color: #047857;
     font-size: 0.75rem;
     font-weight: 700;
     padding: 0.3rem 0.75rem;
     border-radius: 999px;
 }

 .job-meta {
     display: flex;
     flex-wrap: wrap;
     gap: 0.5rem;
     margin-top: 0.75rem;
 }

 .job-tag {
     background: #f1f5f9;
     color: #475569;
     font-size: 0.75rem;
     font-weight: 600;
     padding: 0.35rem 0.75rem;
     border-radius: 999px;
 }

 .job-summary {
     margin-top: 0.9rem;
     color: #475569;
 }

 .job-card-footer {
     margin-top: 1.25rem;
     display: flex;
     justify-content: space-between;
     align-items: center;
     gap: 1rem;
     font-size: 0.85rem;
     color: var(--gray);
 }

 .job-link {
     color: var(--primary);
     font-weight: 600;
     text-decoration: none;
 }

 .job-link:hover {
     text-decoration: underline;
 }

 .jobs-empty {
     text-align: center;
     padding: 3rem 2rem;
     background: white;
     border-radius: var(--border-radius);
     border: 1px solid rgba(148, 163, 184, 0.2);
 }

 .jobs-empty h3 {
     font-size: 1.5rem;
     font-weight: 700;
     color: var(--dark);
 }

 .jobs-empty p {
     margin: 1rem 0 1.5rem;
     color: var(--gray);
 }

 .job-hero {
     padding: 4rem 0 2rem;
 }

 .jobs-back-link {
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     color: var(--primary);
     font-weight: 600;
     text-decoration: none;
     margin-bottom: 1.5rem;
 }

 .jobs-back-link:hover {
     text-decoration: underline;
 }

 .job-hero-content h1 {
     font-size: clamp(2.1rem, 4vw, 3rem);
     font-weight: 800;
     color: var(--dark);
     margin-bottom: 1rem;
 }

 .job-detail {
     padding: 2rem 0 4rem;
 }

 .job-detail-grid {
     display: grid;
     grid-template-columns: minmax(0, 1fr) 320px;
     gap: 2rem;
 }

 .job-detail-body {
     background: white;
     border-radius: var(--border-radius);
     padding: 2.5rem;
     border: 1px solid rgba(148, 163, 184, 0.2);
     box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
 }

 .job-section + .job-section {
     margin-top: 2.5rem;
 }

 .job-section h2 {
     font-size: 1.5rem;
     font-weight: 700;
     color: var(--dark);
     margin-bottom: 0.75rem;
 }

 .job-richtext {
     color: #475569;
     line-height: 1.8;
 }

 .job-list {
     margin-left: 1.25rem;
     color: #475569;
     display: grid;
     gap: 0.6rem;
 }

 .job-apply-card {
     background: white;
     border-radius: var(--border-radius);
     padding: 2rem;
     border: 1px solid rgba(148, 163, 184, 0.2);
     box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
     position: sticky;
     top: 110px;
     align-self: start;
 }

 .job-apply-card h3 {
     font-size: 1.35rem;
     font-weight: 700;
     color: var(--dark);
 }

 .job-apply-card p {
     color: var(--gray);
     margin-top: 0.75rem;
 }

 .job-apply-meta {
     display: grid;
     gap: 0.75rem;
     margin-top: 1.5rem;
 }

 .job-apply-label {
     display: block;
     font-size: 0.7rem;
     letter-spacing: 0.1em;
     text-transform: uppercase;
     color: var(--gray);
     margin-bottom: 0.3rem;
 }

 .job-apply-button {
     display: inline-flex;
     justify-content: center;
     align-items: center;
     width: 100%;
     margin-top: 1.5rem;
     border-radius: 999px;
     padding: 0.85rem 1.5rem;
     background: var(--primary);
     color: white;
     font-weight: 700;
     text-decoration: none;
     transition: var(--transition);
 }

 .job-apply-button:hover {
     background: var(--primary-dark);
     transform: translateY(-1px);
 }

 .job-apply-note {
     margin-top: 0.75rem;
     font-size: 0.9rem;
     color: var(--gray);
 }

 @media (max-width: 1024px) {
     .jobs-hero-grid {
         grid-template-columns: minmax(0, 1fr) 320px;
     }
 }

 @media (max-width: 900px) {
     .jobs-hero-grid {
         grid-template-columns: 1fr;
     }

     .jobs-filter-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
     }

     .job-detail-grid {
         grid-template-columns: 1fr;
     }

     .job-apply-card {
         position: static;
     }
 }

 @media (max-width: 640px) {
     .jobs-filter-grid {
         grid-template-columns: 1fr;
     }

     .jobs-search-header {
         flex-direction: column;
         align-items: flex-start;
     }

     .job-card-footer {
         flex-direction: column;
         align-items: flex-start;
     }
 }
