.department-page main{padding-top:26px}
.page-intro{padding:70px var(--gutter) 78px;max-width:1512px;margin:auto}
.page-eyebrow{font-size:18px;margin-bottom:32px}
.page-intro h1{font-family:'Kumbh Sans',sans-serif;font-weight:500;font-size:clamp(58px,9.5vw,146px);line-height:1.03;letter-spacing:-.065em;max-width:12ch;margin:0}
.contact-opening,.career-opening{display:grid;gap:38px;margin-top:42px}
.contact-opening p,.career-opening p{font-size:23px;line-height:1.45;max-width:28ch;margin:0}
.contact-address{font-size:clamp(21px,3.2vw,42px);line-height:1.35;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px;justify-self:start}
.contact-intake{padding:64px var(--gutter) 110px;display:grid;gap:42px;background:#f5f7ff}
.intake-intro h2,.role-section-title h2,.working-here h2,.role-detail h2{font-size:clamp(40px,5.5vw,78px);line-height:1.07;letter-spacing:-.05em;margin:0 0 26px}
.intake-intro p{font-size:20px;line-height:1.45;max-width:25ch}
.contact-form{max-width:760px}
.field-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 26px}.contact-intake .form-wrap{min-width:0}
.field{min-width:0;position:relative}
.field label{display:block;font-size:19px;margin-bottom:12px}
.field input,.field textarea,.select-trigger{font:18px/1.4 'Hanken Grotesk',sans-serif;color:var(--blue);background:#fff;border:1px solid #b9c8ee;border-radius:8px;width:100%;padding:16px;min-height:58px;box-sizing:border-box}
.field textarea{resize:vertical;min-height:170px}
.field input::placeholder,.field textarea::placeholder{color:#61729a;opacity:1}
.field input:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:3px}
.field-hint{font-size:15px;line-height:1.5;display:block;margin-top:10px;max-width:54ch}
.select-native,.trap,.response-frame{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}
.select-trigger{display:flex;justify-content:space-between;align-items:center;text-align:left;cursor:pointer}
.select-listbox{position:absolute;z-index:10;top:calc(100% - 6px);left:0;right:0;background:white;border-radius:10px;box-shadow:0 12px 35px #002fa724;max-height:280px;overflow:auto;padding:8px;border:1px solid #b9c8ee}
.select-listbox[hidden]{display:none}
.select-listbox [role=option]{padding:14px;font-size:18px;cursor:pointer;border-radius:5px}
.select-listbox .is-active,.select-listbox [aria-selected=true]{background:#eaf0ff}
.select-trigger[aria-invalid=true]{outline:2px solid var(--blue);outline-offset:3px}
.form-footer{margin-top:32px}
.form-note{font-size:16px;line-height:1.5;margin-bottom:24px;max-width:45ch}
.submit-button,.role-contact{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:14px 28px;border-radius:999px;background:var(--blue);color:white;font-size:20px;border:0;cursor:pointer;text-decoration:none}
.submit-button:disabled{opacity:.55;cursor:wait}
.form-status{margin-top:28px;padding:24px;border:1px solid #9fb3e5;border-radius:12px;background:#fff;font-size:18px;line-height:1.5}
.form-status p{margin-top:8px}
.career-roles{padding:40px var(--gutter) 80px}
.role-section-title{display:grid;gap:22px;margin-bottom:26px}
.role-section-title p{font-size:20px}
.career-row{display:grid;gap:14px;padding:34px 0;border-top:1px solid #c5d1ef;text-decoration:none;align-items:baseline}
.role-discipline{font-size:17px}
.career-row h3{font-size:clamp(30px,3.9vw,54px);line-height:1.16;letter-spacing:-.045em;max-width:22ch;margin:0}
.role-invitation{font-size:18px;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.working-here{padding:70px var(--gutter) 95px;background:var(--blue);color:#fff;display:grid;gap:24px}
.working-here p,.role-detail p{font-size:21px;line-height:1.5;max-width:39ch;margin:0 0 24px}
.working-here .detail-entry{color:#fff;font-size:21px}
.role-back{display:inline-block;font-size:18px;text-decoration:underline;text-underline-offset:6px;margin-bottom:32px}
.role-intro .page-eyebrow{margin-bottom:24px}
.role-intro h1{font-size:clamp(46px,7.6vw,116px);max-width:18ch}
.role-lede{font-size:clamp(22px,2.6vw,32px);line-height:1.45;max-width:38ch;margin:36px 0 0}
.role-detail{display:grid;gap:30px;padding:40px var(--gutter) 100px}
.role-detail h3{font-size:28px;letter-spacing:-.025em;margin:38px 0 18px}
.role-contact{margin-top:12px}
.department-page .garden-footer{margin-top:0}
@media(min-width:760px){
 .page-intro{padding-top:94px;padding-bottom:100px}
 .contact-opening,.career-opening{grid-template-columns:1fr 1fr;gap:10%;margin-top:58px}
 .career-opening p{font-size:27px;max-width:30ch}
 .contact-intake{grid-template-columns:minmax(0,1fr);gap:40px;padding-block:70px 90px}
 .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field--wide{grid-column:1/-1}
 .career-roles{padding-block:50px 100px}.role-section-title{grid-template-columns:1fr 1fr;align-items:end;margin-bottom:45px}
 .career-row{grid-template-columns:.55fr 1.5fr .5fr;gap:28px;padding-block:44px}.role-invitation{justify-self:end}
 .working-here,.role-detail{grid-template-columns:1fr 1fr;gap:10%;padding-block:95px 115px}
}
@media(max-width:359px){.page-intro h1{font-size:53px}.role-intro h1{font-size:43px}.contact-opening p,.career-opening p{font-size:21px}.contact-address{font-size:21px}.field-grid{gap:24px}.page-intro{padding-top:48px}}
@media(hover:hover){.career-row h3{transition:transform 250ms cubic-bezier(.16,1,.3,1)}.career-row:hover h3{transform:translateX(6px)}.submit-button:hover,.role-contact:hover{background:#082684}}
@media(prefers-reduced-motion:reduce){.career-row h3{transition:none!important;transform:none!important}}

/* Legal copy shares the reading system; its wording is preserved. */
.privacy-page .wrap{max-width:1000px;margin:0 auto;padding:70px var(--gutter) 100px;font-size:20px;line-height:1.65}
.privacy-page h1{font:500 clamp(44px,7vw,86px)/1.08 'Kumbh Sans',sans-serif;letter-spacing:-.045em;margin:0 0 30px}
.privacy-page h2{font:500 clamp(28px,3vw,38px)/1.2 'Kumbh Sans',sans-serif;letter-spacing:-.025em;margin:48px 0 22px}
.privacy-page p{margin-block:20px}.privacy-page .edition{font-size:17px;line-height:1.6;margin-bottom:32px}
.privacy-page li{margin-block:12px}.privacy-page a{overflow-wrap:anywhere;text-decoration-thickness:1px;text-underline-offset:5px}
.privacy-page table{width:100%;table-layout:fixed;overflow-wrap:anywhere;hyphens:auto;border-collapse:collapse;font-size:18px}.privacy-page th,.privacy-page td{text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid #c6d2ed}
.privacy-page .fine,.privacy-page small{font-size:17px;line-height:1.5}
@media(max-width:600px){.privacy-page .wrap{padding-top:44px;font-size:19px}.privacy-page table{font-size:16px}.privacy-page th,.privacy-page td{padding:12px 6px}}

html:not(.js-ready) .contact-form{display:none}

@media(min-width:1100px){.contact-intake{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8%;padding-block:90px 120px}}

/* On phones, each provider or retention rule remains one readable record. */
@media(max-width:600px){
 .privacy-page table,.privacy-page tbody{display:block;width:100%}
 .privacy-page thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .privacy-page tbody tr{display:grid;gap:18px;padding:26px 0;border-bottom:1px solid #c6d2ed}
 .privacy-page th,.privacy-page td{display:block;width:auto;padding:0;border:0;font-size:18px;line-height:1.5;hyphens:none;overflow-wrap:break-word}
 .privacy-page td::before{content:attr(data-label);display:block;margin-bottom:5px;font-size:15px;font-weight:500;line-height:1.4}
 .privacy-page td:first-child{font-size:21px;font-weight:500;line-height:1.35}
}

/* Reading is centred on phones; editable values keep their familiar alignment. */
@media(max-width:800px){
 .department-page :is(.page-intro,.contact-intake,.working-here,.role-detail),.privacy-page .wrap{text-align:center}
 .department-page :is(.page-intro h1,.contact-opening p,.career-opening p,.contact-address,.intake-intro p,.contact-form,.field-hint,.form-note,.working-here p,.role-detail p){margin-inline:auto}
 .department-page .contact-address{justify-self:center}
 .contact-form :is(input,textarea,select,.select-trigger,.select-listbox){text-align:left}
}
