@font-face{font-family:Manrope;src:url('assets/fonts/Manrope-variable.woff') format('woff');font-weight:200 800;font-style:normal;font-display:swap}
:root{--navy:#061b33;--navy-deep:#061b33;--ink:#10283e;--muted:#4e6780;--paper:#fcfcfb;--soft:#f8fafb;--line:#cbd5df;--sans:Manrope,Arial,sans-serif;--display:Manrope,Arial,sans-serif;--shadow:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:light}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}p{margin:0 0 20px}img{max-width:100%;display:block}svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.5;flex-shrink:0}h1,h2,h3{font-optical-sizing:auto}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #557b9b;outline-offset:4px}button:disabled{cursor:default}.wrap{width:min(1240px,calc(100% - 128px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:fixed;z-index:30;top:-90px;left:12px;background:white;color:var(--navy);padding:12px 16px}.skip-link:focus{top:12px}
.site-header{background:var(--paper);color:var(--navy)}.header-inner{position:relative;min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:16px;min-width:0}.brand-emblem{width:27px;height:42px;stroke-width:2.1;color:#071b34}.brand-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.brand-signature{font:600 13px/1.35 var(--sans);color:#2e4a61;white-space:nowrap;letter-spacing:.035em;transform:translateY(3px)}.brand-title{font:650 22px/1.2 var(--display);letter-spacing:-.65px;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:20px}.header-contact{font-size:13px;color:#344d66;padding:10px 0}.header-contact:hover{text-decoration:underline}.menu-toggle{display:none;place-items:center;min-width:28px;height:36px;background:none;border:0;color:var(--navy);padding:2px}.menu-toggle svg{width:24px;height:24px;stroke-width:1.4}.header-menu{position:absolute;top:calc(100% - 4px);left:0;right:0;z-index:20;background:var(--paper);border:1px solid var(--line);padding:12px 20px;box-shadow:0 14px 24px #0a223218}.header-menu a{display:block;padding:12px 0;border-bottom:1px solid #e2e8ed;font-size:14px}.header-menu a:last-child{border:0}
.home-search{background:var(--paper)}.search-intro{padding-top:16px}.search-intro h1{font:600 clamp(38px,4.1vw,53px)/1.08 var(--display);letter-spacing:-1.35px;color:var(--navy);margin:0 0 16px}.search-form{display:flex;align-items:center;gap:17px;width:100%;min-height:56px;padding:2px 2px 2px 17px;border:1px solid #b9c6d3;border-radius:7px;background:#fff;box-shadow:none}.search-form svg{width:25px;height:25px;color:#6e8299;stroke-width:1.5}.search-form input{flex:1;min-width:0;background:transparent;border:0;color:var(--navy);font-size:16px;padding:11px 0;line-height:1.4}.search-form input::placeholder{color:#647a91;opacity:1}.search-form button{align-self:stretch;display:grid;place-items:center;min-width:128px;min-height:50px;border:1px solid #18344c;border-radius:6px;background:#06243b;color:#fff;font-size:17px;padding:9px 24px}.search-form button:hover{background:#193e58}.tabs-shell{position:relative;display:block;margin-top:15px}.institution-tabs{display:flex;align-items:center;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;overscroll-behavior-inline:contain;padding:0;margin:0}.institution-tabs::-webkit-scrollbar{display:none}.institution-tabs a{position:relative;display:flex;justify-content:center;align-items:center;flex:1 0 auto;min-height:58px;padding:15px 22px;white-space:nowrap;font:600 21px/1.2 var(--display);color:var(--navy);letter-spacing:-.35px}.institution-tabs a:first-child{justify-content:flex-start;padding-left:0}.institution-tabs a:last-child{justify-content:flex-end;padding-right:0}.institution-tabs a:not(:first-child):before{content:'';position:absolute;left:0;top:50%;width:1px;height:23px;transform:translateY(-50%);background:#bdcbd7}.institution-tabs a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.institution-tabs a[aria-current]{text-decoration:underline;text-underline-offset:6px}.tabs-next{display:none;width:28px;min-height:46px;place-items:center;padding:0;border:0;background:var(--paper);color:var(--navy)}.tabs-next:disabled{opacity:.22}.tabs-next svg{width:20px;height:20px}.global-search{background:var(--paper);padding:15px 0 0;border-bottom:1px solid var(--line)}
/* Approved composition: luminous full-band scene, editorial copy on top, no split panel. */
body.home{display:block;height:auto;min-height:0}.home #main{display:block;min-height:0}.cinematic-banner{position:relative;margin:0;height:auto;aspect-ratio:1280/420;min-height:0;overflow:hidden;isolation:isolate;background:linear-gradient(90deg,#b4cada,#eef6fa 46%,#d4e3ed 72%,#b4c7d7)}.hero-media.cinematic-scene{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;overflow:hidden}.scene-poster,.scene-poster img,.scene-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.scene-video{z-index:1;opacity:0}.hero-media.media-ready .scene-video{opacity:1}.hero-media.media-ready .scene-poster{visibility:hidden}.banner-inner{position:relative;display:flex;align-items:center;height:100%;pointer-events:none;z-index:2}.scene-copy{width:62%;padding:0 0 6px 3%;background:transparent;color:var(--navy)}.scene-slogan{font:600 clamp(64px,7.2vw,102px)/.98 var(--display);letter-spacing:-2.6px;margin:0;color:#03182c}.scene-word{position:relative;display:block;width:max-content;max-width:100%;white-space:nowrap}.scene-support{font-size:clamp(18px,1.8vw,25px);font-weight:400;line-height:1.35;color:#112d45;margin:16px 0 0;letter-spacing:-.7px;white-space:nowrap}.scene-control{position:absolute;bottom:12px;right:18px;z-index:4;display:grid;place-items:center;width:30px;height:30px;min-height:30px;border:1px solid #677e9277;border-radius:50%;padding:0;background:#f4f8fbc7;color:#18374f;font:400 12px/1 var(--sans)}.scene-control:hover{background:white}.home-editorial{padding-top:23px;padding-bottom:0}.home-editorial h2{font:600 clamp(34px,4vw,51px)/1.12 var(--display);letter-spacing:-1.3px;margin:0 0 4px;color:var(--navy)}.editorial-copy{font-size:20px;line-height:1.5;letter-spacing:-.3px;color:#4c657d;margin:0 0 18px}.topic-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c7d2dd;border-bottom:1px solid #c7d2dd}.topic-links a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:14px 31px 14px 0;color:var(--navy);font:600 23px/1.2 var(--display);letter-spacing:-.4px}.topic-links a:not(:nth-child(3n+1)){padding-left:35px}.topic-links a:not(:nth-child(3n+1)):before{content:'';position:absolute;left:0;top:50%;height:30px;width:1px;background:#bdcbd7;transform:translateY(-50%)}.topic-links a:nth-child(3n){padding-right:0}.topic-links a:nth-child(n+4){border-top:1px solid #c7d2dd}.topic-links svg{width:19px;height:19px;stroke-width:1.3}.topic-links a:hover{color:#456a88}.topic-links a:hover svg{transform:translateX(2px)}
.site-footer{padding:0 0 14px;margin:0;background:var(--paper);color:#435b74}.footer-inner{display:flex;align-items:center;gap:0;min-height:43px;font-size:12px}.footer-inner a{position:relative;padding:7px 19px;min-height:28px}.footer-inner a:first-child{padding-left:0}.footer-inner a:not(:first-child):before{content:'';height:17px;width:1px;background:#c2ceda;position:absolute;left:0;top:50%;transform:translateY(-50%)}.footer-inner a:hover{text-decoration:underline}.inner-page .site-footer{border-top:1px solid var(--line);padding-top:6px}
/* Listings and article reading surfaces. */
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:13px;padding-block:26px;font-size:11px;color:#526d83}.breadcrumb a:hover{color:#224d6c;text-decoration:underline}.listing{padding-bottom:65px}.listing-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;padding:15px 0 32px}.listing-heading h1{font:600 46px/1.15 var(--display);letter-spacing:-1.2px;margin:0;color:var(--navy)}.intro{font-size:14px;line-height:1.8;color:var(--muted);max-width:700px;margin:18px 0 0}.result-count{font-size:13px;white-space:nowrap;color:#56758e;padding:8px 13px;border:1px solid #ccdae5;background:#edf3f7}.list-subheading{font:600 26px/1.3 var(--display);letter-spacing:-.4px;margin:35px 0 17px}.common-note{font-size:13px;color:#526d83;margin-bottom:23px}.question-list{border:1px solid #d7e2eb;border-top:2px solid #718fa6;background:white;box-shadow:none}.question-row{display:flex;align-items:center;gap:23px;padding:24px 27px;border-bottom:1px solid #e0e8ef;transition:background .15s}.question-row:last-child{border-bottom:0}.question-row:hover{background:#f1f6fa}.q-number{width:22px;flex-shrink:0;align-self:flex-start;padding-top:3px;color:#5c7488;font-size:11px}.q-main{flex:1;min-width:0}.q-main small{display:block;font-size:10px;letter-spacing:.7px;color:#5c7488;margin-bottom:8px}.q-main>span{display:block;font-size:17px;line-height:1.65;letter-spacing:-.15px;color:#2b465d}.question-row>span:last-child{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d9e4ec;border-radius:50%;font-size:18px;color:#6b8aa2;flex-shrink:0}.question-row:hover>span:last-child{background:#e3edf4;color:#325b79}
.article-layout{display:grid;grid-template-columns:minmax(0,800px) minmax(220px,1fr);gap:47px;align-items:start;padding:10px 0 70px}.answer-article{padding:37px 40px 35px;background:white;border:1px solid #dbe5ed;box-shadow:none}.answer-article h1{font:600 clamp(31px,2.8vw,41px)/1.23 var(--display);letter-spacing:-1px;margin:0;color:#173952}.article-rule{height:1px;background:#d9e4ed;margin:29px 0}.answer-body{font-size:16px;line-height:1.95;color:#3a5267}.answer-body p{line-height:1.95;margin:0 0 24px}.answer-body>p:first-child{font-size:18px;line-height:1.85;color:#29465c}.answer-body h2{font:600 28px/1.3 var(--display);letter-spacing:-.4px;margin:32px 0 19px;color:#1d3f59}.answer-body ul{padding-left:22px}.answer-body li{padding-left:5px;margin-bottom:14px}.article-notice{font-size:12px;line-height:1.8;color:#526d83;padding-top:23px;margin-top:31px;border-top:1px solid #d8e3ec}.article-contact{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:27px;padding:23px 25px;background:#edf3f7;color:var(--navy)}.article-contact>span{font-size:12px;line-height:1.8;max-width:260px;color:#4c677e}.article-contact a{display:flex;align-items:center;gap:20px;white-space:nowrap;border-bottom:1px solid #8aaac0;padding:7px 0;font-size:13px}.article-contact a:hover{color:#163b58;border-color:#163b58}.article-aside{position:sticky;top:26px;padding:22px 0 0;border-top:2px solid #6887a0}.article-aside>.eyebrow{font-size:9px;margin-bottom:17px}.article-aside>a{display:block;padding:19px 0;border-bottom:1px solid #cfdde7;font-size:14px;line-height:1.75;color:#46647a}.article-aside>a>span{padding-left:12px;color:#7a95a9}.article-aside>a:hover{color:#193d59}.article-aside .all-questions{font-size:12px;font-weight:700;border:0;padding-top:23px}
/* Honest information/contact pages, sharing the reading system. */
.contact-page,.info-page{padding-bottom:70px;min-height:0}.contact-page>.eyebrow{margin-top:20px}.contact-page h1,.info-page h1{font:600 clamp(33px,4vw,46px)/1.2 var(--display);letter-spacing:-1px;color:var(--navy);margin:15px 0 32px}.contact-copy{max-width:780px;padding:30px 35px;background:white;border:1px solid #d7e3ed;border-top:2px solid #7b9ab1;box-shadow:none}.contact-copy p{font-size:16px;line-height:1.9;color:#4e687d}.contact-copy p:first-child{font-size:20px;line-height:1.5;color:#294b65}.info-page{max-width:900px}.info-page>p{font-size:16px;line-height:1.95;color:#435e73;margin-bottom:24px}.text-link{display:inline-flex;gap:23px;align-items:center;padding:9px 0;border-bottom:1px solid #8da8bc;font-size:13px;color:#2a5575}.text-link:hover{color:#112f45;border-color:#315976}.empty-results{padding:33px;background:white;border:1px solid #d5e2ec;box-shadow:none;max-width:800px}.empty-results h2{font:600 29px/1.3 var(--display);margin:0 0 20px;color:#294a63}.empty-results p{font-size:15px;color:#5e778b;line-height:1.85}.empty-results a{font-size:13px;border-bottom:1px solid #86a4ba;padding-bottom:6px}.search-page{min-height:0}#search-title{font-size:clamp(33px,3.8vw,46px);overflow-wrap:anywhere}

/* Smaller devices are recomposed to the approved portrait proportions. */
@media(max-width:1100px){.wrap{width:calc(100% - 88px)}.institution-tabs a{font-size:19px;padding-inline:19px}.article-layout{grid-template-columns:minmax(0,1fr) 225px;gap:30px}.answer-article{padding:30px}.topic-links a{font-size:21px;padding-right:23px}.topic-links a:not(:nth-child(3n+1)){padding-left:25px}.brand-title{font-size:21px}.scene-copy{padding-left:1%}.editorial-copy{font-size:18px}}
@media(max-width:850px){.wrap{width:calc(100% - 56px)}.article-layout{display:block}.article-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 25px;margin-top:30px}.article-aside .eyebrow{grid-column:1/-1}.scene-slogan{font-size:clamp(51px,7.5vw,64px);letter-spacing:-1.8px}.scene-copy{width:67%;padding-left:0}.scene-support{font-size:17px;letter-spacing:-.4px}.topic-links a{font-size:19px}.topic-links a:not(:nth-child(3n+1)){padding-left:18px}.home-editorial h2{font-size:34px}.editorial-copy{font-size:16px}.institution-tabs a{font-size:18px;padding-inline:16px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:100px;gap:12px}.brand-copy{gap:4px}.brand-signature{font-size:clamp(11px,3.1vw,12px)}.brand{gap:11px}.brand-emblem{width:24px;height:37px}.brand-title{font-size:clamp(15px,4.6vw,19px);letter-spacing:-.55px}.header-actions{gap:17px}.header-contact{font-size:11px}.ui-ready .menu-toggle{display:grid}.search-intro{padding-top:11px}.search-intro h1{font-size:clamp(32px,10.5vw,40px);line-height:1.05;letter-spacing:-1.25px;margin-bottom:14px}.search-form{min-height:47px;padding:1px 1px 1px 10px;gap:11px;border-radius:5px}.search-form svg{width:21px;height:21px}.search-form input{font-size:14px;padding:9px 0}.search-form button{min-width:74px;min-height:43px;padding:7px 16px;font-size:16px;border-radius:4px}.tabs-shell{display:grid;grid-template-columns:minmax(0,1fr) 24px;margin-top:10px;margin-right:-4px}.institution-tabs a,.institution-tabs a:first-child,.institution-tabs a:last-child{flex:0 0 auto;justify-content:center;min-width:calc((100vw - 64px)/3);min-height:51px;padding:12px 14px;font-size:18px;letter-spacing:-.55px}.institution-tabs a:first-child{justify-content:flex-start;padding-left:0}.institution-tabs a:not(:first-child):before{height:20px}.ui-ready .tabs-next{display:grid;width:24px;min-height:44px}.global-search{padding-top:10px}.cinematic-banner{height:auto;aspect-ratio:4/3;min-height:0;max-height:none}.banner-inner{position:absolute;inset:0;width:calc(100% - 40px);align-items:flex-start}.scene-copy{width:76%;padding:43px 0 0;background:transparent}.scene-slogan{font-size:clamp(34px,10.8vw,42px);line-height:1.02;letter-spacing:-1.15px}.scene-support{font-size:17px;line-height:1.38;letter-spacing:-.3px;white-space:normal;margin-top:13px;max-width:220px}.scene-support span{display:block}.scene-control{width:26px;height:26px;min-height:26px;right:9px;bottom:9px;font-size:11px;background:#f4f8fba8}.home-editorial{padding-top:19px}.home-editorial h2{font-size:clamp(20px,6.1vw,25px);line-height:1.25;letter-spacing:-.5px;margin-bottom:4px;white-space:normal}.editorial-copy{font-size:16px;line-height:1.38;letter-spacing:-.15px;margin-bottom:15px}.topic-links{display:block}.topic-links a,.topic-links a:not(:first-child),.topic-links a:last-child{padding:11px 0;min-height:48px;font-size:21px;border-bottom:1px solid #c7d2dd;letter-spacing:-.45px}.topic-links a:last-child{border-bottom:0}.topic-links a:before{display:none}.topic-links a:nth-child(n+4){border-top:0}.topic-links svg{width:17px;height:17px}.footer-inner{min-height:48px;font-size:11px}.footer-inner a{padding-inline:16px}.site-footer{padding-bottom:9px}.breadcrumb{font-size:10px;gap:10px;padding-block:20px}.listing{padding-bottom:45px}.listing-heading{gap:14px;align-items:end;padding:8px 0 25px}.listing-heading h1{font-size:39px}.intro{font-size:13px;line-height:1.8;margin-top:15px}.result-count{font-size:11px;padding:6px 8px}.list-subheading{font-size:26px;margin-top:28px}.common-note{font-size:12px}.question-row{gap:13px;padding:21px 15px}.q-number{font-size:10px;width:14px}.q-main>span{font-size:15px;line-height:1.7}.q-main small{font-size:9px;letter-spacing:.4px}.question-row>span:last-child{width:25px;height:25px;font-size:15px}.article-layout{padding-top:5px;padding-bottom:45px}.answer-article{padding:25px 21px}.answer-article h1{font-size:33px;line-height:1.22;letter-spacing:-.75px}.article-rule{margin:25px 0}.answer-body{font-size:15px}.answer-body p{line-height:1.95}.answer-body>p:first-child{font-size:17px;line-height:1.85}.answer-body h2{font-size:28px}.article-notice{font-size:11px;line-height:1.85}.article-contact{display:block;padding:20px}.article-contact>span{display:block;font-size:12px}.article-contact a{display:inline-flex;font-size:12px;margin-top:12px}.article-aside{grid-template-columns:1fr}.article-aside>a{font-size:14px;line-height:1.8}.contact-page,.info-page{padding-bottom:45px}.contact-page h1,.info-page h1{font-size:37px;line-height:1.25;margin-bottom:26px}.contact-copy{padding:24px 21px}.contact-copy p{font-size:15px;line-height:1.85}.contact-copy p:first-child{font-size:19px}.info-page>p{font-size:15px;line-height:1.9}.empty-results{padding:25px 22px}.empty-results h2{font-size:28px}.empty-results p{font-size:14px}}
@media(max-width:360px){.wrap{width:calc(100% - 36px)}.brand{gap:9px}.brand-emblem{width:21px;height:34px}.brand-title{font-size:15px;letter-spacing:-.45px}.header-actions{gap:12px}.header-contact{font-size:10px}.menu-toggle{min-width:24px}.menu-toggle svg{width:22px}.header-inner{min-height:96px}.brand-signature{font-size:11px}.banner-inner{width:calc(100% - 36px)}.scene-copy{padding-top:38px}.scene-support{font-size:16px}.scene-slogan{letter-spacing:-1.25px}.search-form button{min-width:68px}.institution-tabs a,.institution-tabs a:first-child,.institution-tabs a:last-child{font-size:17px;padding-inline:12px}.answer-article{padding:23px 17px}.answer-article h1{font-size:31px}.question-row{padding-inline:12px;gap:11px}.question-row>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.scene-word{transform:none}}


/* Hide a mismatched decoded frame in the CSS media-query turn, before JS source selection runs. */
@media(max-width:600px){.scene-video[data-active-variant="desktop"]{opacity:0!important}.hero-media[data-active-variant="desktop"] .scene-poster{visibility:visible!important}}
@media(min-width:601px){.scene-video[data-active-variant="mobile"]{opacity:0!important}.hero-media[data-active-variant="mobile"] .scene-poster{visibility:visible!important}}

/* V35: rapid letter flow; existing support motion and typography retained. */
.scene-slogan{font-family:var(--sans);font-weight:600;line-height:1.04;letter-spacing:-1.7px}
.scene-support-word{display:inline-block}
.scene-char{display:inline-block;position:relative;opacity:1;transform:none}
.scene-char::after{content:attr(data-char);position:absolute;inset:0;color:#b3dbef;text-shadow:0 0 .07em #eaf8ff,0 0 .16em #78b8dc;opacity:0;pointer-events:none}
/* 24 fixed slots × 30ms stagger + 240ms entry = 930ms, then a calm readable hold. */
@keyframes hero-letter-shine{0%,2%,12%,100%{opacity:0}6%{opacity:.92}}
@keyframes hero-support-enter{from{opacity:.28;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-support-poise{0%,64%,86%,100%{opacity:1;transform:translateY(0)}73%{opacity:.9;transform:translateY(-1.5px)}}
.cinematic-banner.has-motion .scene-char::after{animation:hero-letter-shine 5s ease-in-out calc(var(--char-index)*35ms) infinite both}
.cinematic-banner.motion-paused .scene-char::after{animation-play-state:paused!important;opacity:0!important}
.cinematic-banner.has-motion .scene-support-word{animation:hero-support-enter .9s cubic-bezier(.2,.75,.25,1) .35s both,hero-support-poise 16s ease-in-out 1.25s infinite}
.cinematic-banner.has-motion .scene-support-word:nth-child(2){animation-delay:.5s,1.6s}
/* The existing controller uses this same gate for user pause, hidden tabs and offscreen media. */
.cinematic-banner.motion-paused .scene-word,.cinematic-banner.motion-paused .scene-char,.cinematic-banner.motion-paused .scene-support-word{animation-play-state:paused!important;opacity:1!important;transform:none!important}
@media(max-width:600px){.scene-slogan{font-size:clamp(32px,10.2vw,40px);line-height:1.06;letter-spacing:-.9px}.scene-support-word{display:block}}
@media(prefers-reduced-motion:reduce){.cinematic-banner .scene-word,.cinematic-banner .scene-char,.cinematic-banner .scene-support-word{animation:none!important;opacity:1;transform:none}}

/* Finite paginated navigation: actual anchors work without JavaScript. */
.pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:26px 0 20px;font-size:13px}
.pagination a,.pagination [aria-current]{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:4px;background:var(--paper)}
.pagination a:hover{background:#edf3f7}.pagination [aria-current]{font-weight:700;background:var(--navy);border-color:var(--navy);color:white}
.question-row,.pagination a,.institution-tabs a,button{touch-action:manipulation}
.answer-article h1,.answer-body h2,.q-main>span,.article-aside>a{overflow-wrap:anywhere}
.q-main>span{font-weight:500}.q-number{width:auto;min-width:22px}
@media(max-width:600px){.pagination{gap:6px;font-size:12px}.pagination a,.pagination [aria-current]{padding-inline:10px}.q-number{min-width:20px}.listing-heading{align-items:flex-start}.listing-heading>div{min-width:0}.answer-article h1{font-size:clamp(26px,7.7vw,32px);line-height:1.3}.answer-body h2{font-size:25px}.scene-slogan{font-weight:650}.brand-title{font-weight:650}}

/* V32: one reading scale and spacing rhythm, shared by every page.
   The cinematic slogan remains a deliberate display treatment; its media,
   composition and existing lightweight motion/pause gates are unchanged. */
:root{
  --type-caption:13px;--type-small:14px;--type-body:16px;--type-lead:18px;
  --type-h1:clamp(30px,3vw,40px);--type-h2:clamp(22px,2.2vw,28px);
  --leading-body:1.7;--leading-heading:1.25;--leading-ui:1.4;
  --tracking-heading:-.02em;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;
  --space-5:24px;--space-6:32px;--space-7:48px;
}
body{font-size:var(--type-body);line-height:var(--leading-body)}
p{margin-bottom:var(--space-4)}
h1,h2,h3{font-family:var(--sans);font-weight:600;letter-spacing:var(--tracking-heading)}
.header-inner{min-height:88px;gap:var(--space-5)}
.brand{gap:var(--space-3)}
.brand-copy{gap:var(--space-1)}
.brand-title{font-size:22px;line-height:1.25;letter-spacing:-.025em}
.brand-signature{font-size:var(--type-caption);line-height:var(--leading-ui);letter-spacing:.02em}
.header-actions{gap:var(--space-3)}
.header-contact{display:inline-flex;align-items:center;min-height:44px;font-size:var(--type-small);padding:var(--space-2) 0}
.menu-toggle{min-width:44px;width:44px;height:44px;padding:10px}
.header-menu{padding:var(--space-2) var(--space-4)}
.header-menu a{min-height:44px;padding:10px 0;font-size:var(--type-body);line-height:var(--leading-ui)}

.search-intro{padding-top:var(--space-3)}
.search-intro h1,.listing-heading h1,#search-title,.answer-article h1,.contact-page h1,.info-page h1{
  font-size:var(--type-h1);font-weight:600;line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);
}
.search-intro h1{margin:0 0 var(--space-4)}
.search-form{min-height:52px;gap:var(--space-3);padding:2px 2px 2px var(--space-3)}
.search-form svg{width:22px;height:22px}
.search-form input{font-size:var(--type-body);line-height:var(--leading-ui);padding:10px 0}
.search-form button{min-width:96px;min-height:46px;padding:10px var(--space-5);font-size:var(--type-body);font-weight:600;line-height:var(--leading-ui)}
.tabs-shell{margin-top:var(--space-2)}
.institution-tabs a{min-height:50px;padding:var(--space-3) 20px;font-size:18px;line-height:var(--leading-ui);letter-spacing:-.015em}
.institution-tabs a:not(:first-child):before{height:20px}
.tabs-next{width:44px;min-height:44px}
.global-search{padding-top:var(--space-1)}

.home-editorial{padding-top:var(--space-5)}
.home-editorial h2,.list-subheading,.answer-body h2,.empty-results h2{
  font-size:var(--type-h2);font-weight:600;line-height:1.35;letter-spacing:var(--tracking-heading);
}
.home-editorial h2{margin:0 0 var(--space-2)}
.editorial-copy{font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:normal;margin-bottom:var(--space-4)}
.topic-links a{min-height:56px;gap:var(--space-4);padding:var(--space-3) var(--space-5) var(--space-3) 0;font-size:18px;line-height:1.45;letter-spacing:-.015em}
.topic-links a:not(:nth-child(3n+1)){padding-left:var(--space-5)}
.scene-control{width:44px;height:44px;min-height:44px;font-size:var(--type-small)}
.footer-inner{min-height:52px;font-size:var(--type-small);line-height:var(--leading-ui)}
.footer-inner a{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-3) var(--space-4)}
.site-footer{padding-bottom:var(--space-2)}

.breadcrumb{min-height:52px;gap:var(--space-2);padding-block:var(--space-1);font-size:var(--type-caption);line-height:var(--leading-ui)}
.breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
.eyebrow{font-size:var(--type-small);font-weight:600;line-height:var(--leading-ui);letter-spacing:.01em;margin:0 0 var(--space-2)}
.listing{padding-bottom:var(--space-7)}
/* Let the description span the full line rather than shrink beside its count. */
.listing-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) 0 var(--space-5)}
.listing-heading>div{display:contents}
.listing-heading .eyebrow{grid-column:1;grid-row:1;margin:0}
.listing-heading h1{grid-column:1/-1;margin:0}
.listing-heading .intro{grid-column:1/-1;margin:0}
.intro{font-size:var(--type-body);line-height:var(--leading-body);margin-top:var(--space-3)}
.result-count{grid-column:2;grid-row:1;font-size:var(--type-caption);line-height:var(--leading-ui);padding:6px var(--space-2);align-self:center}
.list-subheading{margin:var(--space-4) 0 var(--space-3)}
.common-note{font-size:var(--type-small);line-height:var(--leading-body);margin-bottom:var(--space-4)}
.question-row{gap:var(--space-4);padding:20px var(--space-5)}
.q-number{min-width:22px;font-size:var(--type-caption);line-height:var(--leading-ui);padding-top:0}
.q-main small{font-size:var(--type-caption);line-height:var(--leading-ui);letter-spacing:normal;margin-bottom:var(--space-1)}
.q-main>span{font-size:var(--type-body);font-weight:500;line-height:1.65;letter-spacing:normal}
.question-row>span:last-child{width:28px;height:28px;font-size:16px}
.pagination{gap:var(--space-2);margin:var(--space-5) 0 var(--space-4);font-size:var(--type-small);line-height:var(--leading-ui)}
.pagination a,.pagination [aria-current]{min-width:44px;min-height:44px;padding:10px var(--space-3)}

.article-layout{gap:var(--space-6);padding:var(--space-2) 0 var(--space-7)}
.answer-article{padding:var(--space-6)}
.answer-article h1{margin:0;line-height:1.3}
.article-rule{margin:var(--space-5) 0}
.answer-body,.answer-body p,.answer-body>p:first-child{font-size:var(--type-body);line-height:var(--leading-body)}
.answer-body p{margin:0 0 var(--space-4)}
.answer-body h2{margin:var(--space-6) 0 var(--space-3)}
.answer-body ul{padding-left:var(--space-5);margin:0 0 var(--space-4)}
.answer-body li{padding-left:var(--space-1);margin-bottom:var(--space-2)}
.article-notice{font-size:var(--type-small);line-height:var(--leading-body);padding-top:var(--space-4);margin-top:var(--space-5)}
.article-contact{gap:var(--space-4);margin-top:var(--space-5);padding:var(--space-4) var(--space-5)}
.article-contact>span{font-size:var(--type-small);line-height:var(--leading-body)}
.article-contact a{min-height:44px;gap:var(--space-4);padding:var(--space-2) 0;font-size:var(--type-small);line-height:var(--leading-ui)}
.article-aside{padding-top:var(--space-4)}
.article-aside>.eyebrow{font-size:var(--type-small);margin-bottom:var(--space-2)}
.article-aside>a{padding:var(--space-4) 0;font-size:var(--type-body);line-height:1.65}
.article-aside .all-questions{font-size:var(--type-small);padding-top:var(--space-4)}

.contact-page,.info-page{padding-bottom:var(--space-7)}
.contact-page>.eyebrow{margin-top:var(--space-2)}
.contact-page h1,.info-page h1{margin:var(--space-2) 0 var(--space-5)}
.contact-copy{padding:var(--space-6)}
.contact-copy p,.info-page>p,.empty-results p{font-size:var(--type-body);line-height:var(--leading-body);margin-bottom:var(--space-4)}
.contact-copy p:first-child{font-size:var(--type-lead);line-height:1.5}
.text-link{min-height:44px;gap:var(--space-4);padding:10px 0;font-size:var(--type-small);line-height:var(--leading-ui)}
.empty-results{padding:var(--space-6)}
.empty-results h2{margin-bottom:var(--space-4)}
.empty-results a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--type-small)}

@media(max-width:1100px){
  .brand-title{font-size:21px}
  .institution-tabs a{font-size:17px;padding-inline:var(--space-4)}
  .article-layout{gap:var(--space-5)}
}
@media(max-width:850px){
  .institution-tabs a{font-size:16px}
  .topic-links a{font-size:17px;padding-right:var(--space-4)}
  .topic-links a:not(:nth-child(3n+1)){padding-left:var(--space-4)}
}
@media(max-width:600px){
  :root{--type-h1:30px;--type-h2:22px}
  .wrap{width:calc(100% - 32px)}
  .header-inner{min-height:84px;gap:var(--space-2)}
  .brand{gap:var(--space-2)}
  .brand-emblem{width:22px;height:36px}
  .brand-title{font-size:clamp(16px,4.7vw,20px);letter-spacing:-.025em}
  .brand-signature{font-size:12px}
  .header-actions{gap:var(--space-2)}
  .header-contact{font-size:var(--type-small)}
  .menu-toggle{min-width:44px}
  .search-intro{padding-top:var(--space-1)}
  .search-intro h1{margin-bottom:var(--space-3)}
  .search-form{gap:var(--space-2);padding-left:10px}
  .search-form svg{width:20px;height:20px}
  .search-form input{font-size:16px}
  .search-form button{min-width:68px;padding-inline:var(--space-4)}
  .tabs-shell{grid-template-columns:minmax(0,1fr) 44px;margin-top:var(--space-2);margin-right:0}
  .institution-tabs a,.institution-tabs a:first-child,.institution-tabs a:last-child{min-width:calc((100vw - 76px)/3);min-height:48px;padding:var(--space-3);font-size:16px;letter-spacing:-.015em}
  .institution-tabs a:first-child{padding-left:0}
  .ui-ready .tabs-next{width:44px;min-height:44px}
  .home-editorial{padding-top:20px}
  .home-editorial h2{font-size:var(--type-h2);margin-bottom:var(--space-2)}
  .editorial-copy{line-height:var(--leading-body)}
  .topic-links a,.topic-links a:not(:first-child),.topic-links a:last-child{min-height:48px;padding:var(--space-3) 0;font-size:18px;line-height:1.45;letter-spacing:-.015em}
  .footer-inner{font-size:var(--type-small)}
  .breadcrumb{font-size:var(--type-caption)}
  .listing-heading{padding-bottom:var(--space-4)}
  .question-row{gap:var(--space-3);padding:var(--space-4)}
  .q-number{min-width:22px}
  .article-layout{padding-top:var(--space-1)}
  .answer-article,.contact-copy,.empty-results{padding:20px}
  .article-rule{margin:20px 0}
  .article-contact{padding:var(--space-4)}
  .article-contact a{margin-top:var(--space-2)}
  .article-aside{margin-top:var(--space-5)}
  .article-aside>a{font-size:var(--type-body);line-height:1.65}
}
@media(max-width:480px){
  /* The duplicate remains available in the menu/footer; no-JS keeps it here. */
  .ui-ready .header-contact{display:none}
}
@media(max-width:360px){
  .question-row{padding-inline:var(--space-3)}
  .answer-article,.contact-copy,.empty-results{padding:var(--space-4)}
}

@media(prefers-reduced-motion:reduce){.cinematic-banner .scene-char::after{animation:none!important;opacity:0!important}}

/* V35: forty-row chunks keep offscreen layout/paint out of the scrolling path.
   Retaining native nodes preserves browser find, keyboard and screen-reader access;
   unlike DOM recycling, no focused question disappears. */
.list-chunk{content-visibility:auto;contain-intrinsic-size:auto 4000px}
.list-chunk+.list-chunk{margin-top:var(--space-4)}
.pagination .feed-more{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px var(--space-4);border:1px solid var(--navy);border-radius:4px;background:var(--navy);color:white;font:inherit;cursor:pointer}
.pagination .feed-more:hover{background:#284c68}
.pagination .feed-more:disabled{opacity:.65;cursor:wait}
.pagination .feed-fallback{border-color:transparent;background:transparent;font-size:var(--type-small)}
.feed-status{font-size:var(--type-small);line-height:1.6;color:var(--muted);margin:var(--space-3) 0;max-width:650px}
.feed-error{color:#8a342b}
@media print{.list-chunk{content-visibility:visible;contain-intrinsic-size:none}.feed-more,.feed-status{display:none}}
