.career-page { color: #555555; }
.career-page p { line-height: 1.9; }
.career-page .sr-section-heading { margin-bottom: 0 !important; }
.career-page h2 { font-size: clamp(28px, 2.8vw, 38px); }
.career-page h3 { font-size: 25px; }
.career-hero { padding: 32px 0 62px; background: #f7f7f5; }
.career-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; color: #859097; font-size: 12px; line-height: 1.7; }
.career-breadcrumb a { color: #555555; }
.career-breadcrumb a:hover { color: #d60000; text-decoration: underline; text-underline-offset: 4px; }
.career-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 66px; align-items: center; margin-top: 44px; }
.career-hero-copy { min-width: 0; }
.career-hero-copy h1 { margin: 0 0 24px; font-size: clamp(35px, 3.8vw, 52px); line-height: 1.4; letter-spacing: .01em; }
.career-hero-copy .career-hero-intro { max-width: 510px; margin: 0 0 28px; font-size: 16px; }
.career-hero-photo { position: relative; min-width: 0; margin: 0; padding-bottom: 26px; }
.career-hero-photo::before { position: absolute; z-index: 1; bottom: 26px; left: -12px; width: 5px; height: 50%; background: #d60000; content: ""; }
.career-hero-photo img { width: 100%; height: 350px; object-fit: cover; object-position: center 58%; }
.career-hero-photo figcaption { position: absolute; bottom: 0; left: 0; color: #597682; font-size: 10px; letter-spacing: .035em; line-height: 1.6; }
.career-subnav { border-bottom: 1px solid #dedfdc; background: #fff; }
.career-subnav > div { display: flex; flex-wrap: wrap; gap: 0 48px; }
.career-subnav a { position: relative; padding: 23px 0 21px; color: #65717b; font-size: 14px; }
.career-subnav a:hover, .career-subnav a[aria-current="page"] { color: #242424; }
.career-subnav a[aria-current="page"] { font-weight: 600; }
.career-subnav a[aria-current="page"]::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: #d60000; content: ""; }
.career-intro-grid { display: grid; grid-template-columns: 1fr 1.15fr; gap: 90px; align-items: start; }
.career-prose p { margin: 0 0 20px; font-size: 16px; }
.career-prose .sr-link { margin-top: 8px; }
.career-paper { background: #f7f7f5; }
.career-section-intro { display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: end; margin-bottom: 44px; }
.career-section-intro > p { max-width: 470px; margin: 0 0 3px auto; font-size: 15px; }
.career-value-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
.career-value-grid article { padding: 28px 0 0; border-top: 1px solid #b5d6da; }
.career-index { flex-shrink: 0; color: #d60000; font-family: Georgia, "Times New Roman", serif; font-size: 26px; font-weight: 400; line-height: 1.2; }
.career-value-grid h3 { margin: 22px 0 14px; }
.career-value-grid p { margin: 0; font-size: 14px; }
.career-value-grid .career-value-phrase { margin: 0 0 16px; color: #242424; font-size: 15px; }
.career-business-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 58px; border-top: 1px solid #dedfdc; }
.career-business-grid article { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 34px 0 38px; border-bottom: 1px solid #dedfdc; }
.career-business-top { display: flex; align-items: center; gap: 16px; }
.career-business-top > span:last-child { color: #8a9298; font-size: 10px; letter-spacing: .1em; }
.career-business-grid h3 { margin: 24px 0 14px; font-size: 29px; }
.career-business-grid p { margin: 0 0 22px; font-size: 15px; }
.career-business-grid .sr-link { margin-top: auto; }
.career-principles { padding: 74px 0; background: #242424; color: rgba(255,255,255,.75); }
.career-principles-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 90px; align-items: center; }
.career-principles .sr-eyebrow { color: #98d7dc; }
.career-principles h2 { color: #fff; line-height: 1.55; }
.career-principles-grid > div > p:not(.sr-eyebrow) { margin: 0 0 24px; font-size: 15px; }
.career-principles .sr-link { color: #98d7dc !important; }
.career-entry-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 52px; }
.career-entry-grid article { min-width: 0; padding: 28px 0 0; border-top: 1px solid #b5d6da; }
.career-entry-grid h3 { margin: 0 0 16px; font-size: 29px; }
.career-entry-grid p:not(.sr-eyebrow) { margin: 0 0 24px; font-size: 15px; }
.career-areas { scroll-margin-top: 112px; }
.career-areas .career-expand-note { margin: -16px 0 24px; color: #879198; font-size: 12px; }
.career-direction-list { border-top: 1px solid #dce1e1; }
.career-direction { border-bottom: 1px solid #dce1e1; }
.career-direction summary { display: flex; align-items: center; gap: 30px; padding: 27px 0; cursor: pointer; list-style: none; }
.career-direction summary::-webkit-details-marker, .career-faq summary::-webkit-details-marker { display: none; }
.career-direction summary::marker, .career-faq summary::marker { content: ""; }
.career-direction-heading { display: flex; flex: 1; min-width: 0; align-items: center; justify-content: space-between; gap: 28px; }
.career-direction-title { color: #242424; font-family: var(--sr-serif); font-size: 28px; line-height: 1.45; }
.career-direction-category { color: #879198; font-size: 12px; line-height: 1.6; text-align: right; }
.career-direction summary:hover .career-direction-title { color: #937b4d; }
.career-detail-toggle { position: relative; flex-shrink: 0; width: 24px; height: 24px; }
.career-detail-toggle::before, .career-detail-toggle::after { position: absolute; top: 11px; left: 5px; width: 14px; height: 1px; background: #d60000; content: ""; }
.career-detail-toggle::after { transform: rotate(90deg); }
.career-direction[open] > summary .career-detail-toggle::after, .career-faq details[open] > summary .career-detail-toggle::after { transform: rotate(0); }
.career-direction-body { padding: 0 64px 34px 58px; }
.career-direction-body > p { max-width: 820px; margin: 0 0 24px; font-size: 15px; }
.career-direction-body h3 { margin: 0 0 14px; font-family: var(--sr-sans); font-size: 13px; font-weight: 600; }
.career-direction-body ul { margin: 0 0 24px; padding: 0; list-style: none; }
.career-direction-body li { position: relative; padding-left: 16px; font-size: 14px; line-height: 1.9; margin-bottom: 10px; }
.career-direction-body li::before { position: absolute; top: 11px; left: 0; width: 4px; height: 4px; background: #d60000; content: ""; }
.career-qualities-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
.career-qualities-grid article { padding-top: 22px; border-top: 1px solid #b5d6da; }
.career-qualities-grid h3 { margin: 0 0 14px; font-size: 23px; }
.career-qualities-grid p { font-size: 14px; }
.career-application { scroll-margin-top: 112px; }
.career-application-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 90px; align-items: start; }
.career-application-grid > div:first-child > p:not(.sr-eyebrow) { max-width: 500px; margin-top: 22px; font-size: 15px; }
.career-mail-panel { min-width: 0; padding: 30px 0 0; border-top: 1px solid #b5d6da; }
.career-mail-panel .career-mail-label { margin: 0 0 12px; color: #8a806a; font-size: 10px; letter-spacing: .12em; }
.career-mail-address { display: flex; justify-content: space-between; align-items: center; gap: 20px; max-width: 100%; color: #242424 !important; font-family: Georgia, "Times New Roman", serif; font-size: clamp(24px, 2.8vw, 36px); line-height: 1.5; }
.career-mail-address:hover { color: #937b4d !important; }
.career-mail-address > span { color: #d60000; font-size: 23px; }
.career-mail-subject { display: flex; flex-wrap: wrap; gap: 12px 30px; margin: 20px 0 28px; font-size: 13px; }
.career-mail-subject > span { color: #879198; }
.career-mail-subject > strong { color: #555555; font-weight: 500; }
.career-application-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 38px; margin: 64px 0 0; padding: 0; list-style: none; }
.career-application-steps li { min-width: 0; padding-top: 26px; border-top: 1px solid #dce1e1; }
.career-application-steps h3 { margin: 22px 0 14px; font-size: 23px; }
.career-application-steps p { margin: 0; font-size: 14px; }
.career-faq { display: grid; grid-template-columns: 1fr 2fr; gap: 54px; margin-top: 64px; padding-top: 36px; border-top: 1px solid #dce1e1; }
.career-faq > h3 { font-size: 25px; }
.career-faq details { border-bottom: 1px solid #dce1e1; }
.career-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 26px; padding: 0 0 22px; color: #242424; font-size: 16px; line-height: 1.6; cursor: pointer; list-style: none; }
.career-faq details + details summary { padding-top: 22px; }
.career-faq details > p { margin: 0 0 24px; font-size: 14px; }
@media (max-width: 1023px) {
  .career-hero-grid { gap: 38px; }
  .career-hero-copy h1 { font-size: 37px; }
  .career-hero-photo img { height: 320px; }
  .career-intro-grid, .career-principles-grid, .career-application-grid { gap: 48px; }
  .career-section-intro { gap: 38px; }
  .career-value-grid, .career-qualities-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px; }
  .career-direction-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
  .career-direction-category { text-align: left; }
}
@media (max-width: 767px) {
  .career-hero { padding: 24px 0 42px; }
  .career-breadcrumb { gap: 8px; font-size: 11px; }
  .career-hero-grid { grid-template-columns: 1fr; gap: 30px; margin-top: 34px; }
  .career-hero-copy h1 { margin-bottom: 20px; font-size: 34px; line-height: 1.45; }
  .career-hero-copy .career-hero-intro { margin-bottom: 20px; font-size: 15px; }
  .career-hero-photo img { height: 220px; object-position: center 62%; }
  .career-hero-photo::before { left: -8px; width: 3px; }
  .career-hero-photo figcaption { font-size: 9px; }
  .career-subnav > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .career-subnav a { display: flex; align-items: center; padding: 18px 0 16px; width: fit-content; max-width: 100%; font-size: 12px; line-height: 1.6; }
  .career-intro-grid, .career-section-intro, .career-principles-grid, .career-application-grid { grid-template-columns: 1fr; gap: 26px; }
  .career-section-intro { margin-bottom: 32px; }
  .career-section-intro > p { margin: 0; max-width: none; font-size: 14px; }
  .career-prose p { font-size: 15px; }
  .career-page h2 { font-size: 28px; }
  .career-value-grid, .career-qualities-grid { gap: 30px 24px; }
  .career-value-grid article { padding-top: 22px; }
  .career-value-grid h3 { margin: 18px 0 12px; font-size: 23px; }
  .career-value-grid p, .career-qualities-grid p { font-size: 13px; }
  .career-value-grid .career-value-phrase { font-size: 14px; margin-bottom: 12px; }
  .career-business-grid, .career-entry-grid { grid-template-columns: 1fr; }
  .career-business-grid article { padding: 26px 0 30px; }
  .career-business-grid h3 { margin-top: 20px; font-size: 27px; }
  .career-entry-grid { gap: 34px; }
  .career-entry-grid h3 { font-size: 27px; }
  .career-principles { padding: 52px 0; }
  .career-principles-grid { gap: 24px; }
  .career-principles h2 { font-size: 28px; }
  .career-direction summary { gap: 18px; padding: 23px 0; }
  .career-direction-title { font-size: 24px; }
  .career-direction-category { font-size: 11px; }
  .career-direction-body { padding: 0 0 28px 47px; }
  .career-direction-body > p { font-size: 14px; margin-bottom: 20px; }
  .career-direction-body li { font-size: 13px; }
  .career-qualities-grid h3 { font-size: 22px; }
  .career-application-grid > div:first-child > p:not(.sr-eyebrow) { max-width: none; margin-top: 20px; font-size: 14px; }
  .career-mail-panel { padding-top: 24px; }
  .career-mail-address { font-size: 30px; }
  .career-mail-subject { gap: 12px 24px; }
  .career-application-steps { grid-template-columns: 1fr; gap: 26px; margin-top: 42px; }
  .career-application-steps li { padding-top: 22px; }
  .career-application-steps h3 { font-size: 23px; margin-top: 16px; }
  .career-faq { grid-template-columns: 1fr; gap: 26px; margin-top: 44px; padding-top: 28px; }
  .career-faq > h3 { font-size: 25px; }
  .career-faq summary { font-size: 15px; }
  .career-faq details > p { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .career-page * { transition: none !important; } }
