/* Opt-in readability fixes: membership, talent and public-research only. */
body.readable-page{color:#163946;font-size:16px;line-height:1.65;--readable-border:#667b80;scroll-padding-top:110px;scroll-padding-bottom:100px}
body.readable-page *{box-sizing:border-box}
body.readable-page .header{background:#fff;backdrop-filter:none}
body.readable-page main{overflow-wrap:anywhere}
body.readable-page main :is(p,dd,li,small,label,caption,td,th){line-height:1.65}
body.readable-page main :is(p,dd,small,label,caption,td,th),body.readable-page .network-steps span,body.readable-page .network-path li span,body.readable-page .network-path>p{font-size:16px}
body.readable-page main :is(h1,h2,h3){line-height:1.35;overflow-wrap:anywhere}
body.readable-page :is(.network-eyebrow,.network-card-number,.section-kicker,.network-steps b,.network-path li b){font-size:14px;font-weight:750;line-height:1.6}
body.readable-page .network-hero-benefits{font-size:16px}
body.readable-page :is(.network-fee,.network-account-panel h3){font-size:20px;line-height:1.5}
body.readable-page :is(.network-benefits dl>div,.network-benefits a,.network-fields a,.network-member-links a,.network-account-panel p,.network-status,.network-bottom p){font-size:16px}
body.readable-page :is(.network-help,.network-fine,.network-proof-links small,.network-faq details p){font-size:16px;line-height:1.65}
body.readable-page .network-account-panel p+p{margin-top:12px}
body.readable-page :is(.network-path,.network-bottom){background:#163946;color:#e2ecec}
body.readable-page :is(.network-path,.network-bottom) :is(h2,h3,strong){color:#fff}
body.readable-page .network-path>p{color:#e2ecec}
body.readable-page main a:not(.btn){text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
body.readable-page :is(a,button,input,select,textarea,summary){scroll-margin-top:120px;scroll-margin-bottom:110px}
body.readable-page :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #0759b9!important;outline-offset:3px!important;box-shadow:0 0 0 6px #fff!important}
body.readable-page .btn{min-height:48px;max-width:100%;height:auto;font-size:16px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;transform:none;transition:background-color .15s,color .15s}
body.readable-page .btn.primary,body.readable-page .btn.dark{background:#163946;color:#fff;border:1px solid #163946}
body.readable-page .btn.outline{background:#fff;color:#163946;border:1px solid #667b80;backdrop-filter:none}
body.readable-page .btn.light{background:#fff;color:#163946;border:1px solid #fff}
body.readable-page .btn:is(:hover,:active){background:#0b5263;color:#fff;border-color:#0b5263;transform:none}
body.readable-page :is(.network-bottom,.dual-cta) .btn.outline{background:transparent;color:#fff;border-color:#b8cbce}
body.readable-page :is(.network-bottom,.dual-cta) .btn:is(:hover,:active){background:#fff;color:#163946;border-color:#fff}
body.readable-page .network-bottom .btn.primary{background:#f0dfa7;color:#163946;border-color:#f0dfa7}
body.readable-page :is([aria-disabled=true],button:disabled){opacity:1;cursor:wait;background:#e2e8e7;color:#40575e;border-color:#667b80}
body.readable-page .network-comparison table{font-size:16px}
body.readable-page .network-comparison :is(th,td){font-size:16px;line-height:1.65}
body.readable-page .network-comparison thead th{background:#163946;color:#fff}
body.readable-page .network-faq summary{min-height:48px;padding:18px 8px}
body.readable-page :is(.talent-form,.talent-gate,.talent-history){min-width:0}
body.readable-page .talent-fields :is(input,select,textarea),body.readable-page #globalSearch{min-height:48px;border:2px solid #667b80;color:#163946;background:#fff;font-size:16px;line-height:1.5}
body.readable-page :is(input,textarea)::placeholder{color:#52686f;opacity:1}
body.readable-page .talent-fields input[readonly]{color:#40575e;background:#edf2f1;border-color:#667b80}
body.readable-page .talent-fields :is(input,select,textarea):focus{border-color:#0759b9;outline:3px solid #0759b9;outline-offset:3px;box-shadow:0 0 0 6px #fff}
body.readable-page .talent-segmented label{position:relative;cursor:pointer}
body.readable-page .talent-segmented input{width:1px;height:1px;top:50%;left:50%}
body.readable-page .talent-segmented span{min-height:48px;border:2px solid #667b80;color:#163946}
body.readable-page .talent-segmented input:checked+span{border-color:#163946;background:#163946;color:#fff;font-weight:750}
body.readable-page .talent-segmented input:checked+span:before{content:'✓';margin-right:8px}
body.readable-page .talent-segmented input:focus-visible+span{outline:3px solid #0759b9;outline-offset:3px;box-shadow:0 0 0 6px #fff}
body.readable-page .talent-consent{min-height:48px;padding:12px 0;color:#40575e;cursor:pointer}
body.readable-page .talent-consent input{width:24px;height:24px;accent-color:#163946;margin-top:2px}
body.readable-page :is(.talent-file small,.talent-security span,.talent-history article span,.talent-history article>strong,.talent-history>div:first-child span){font-size:16px;color:#40575e}
body.readable-page .talent-security span{margin-top:6px}
body.readable-page .talent-field-error{display:block;margin-top:6px;font-size:16px;font-weight:650;color:#9c2525;line-height:1.6}
body.readable-page .talent-fields [aria-invalid=true]{border-color:#9c2525}
body.readable-page .talent-form-status:not(:empty){padding:14px;border:2px solid #667b80;background:#f4f7f5}
body.readable-page .talent-form-status[data-state=error]{color:#9c2525;border-color:#9c2525}
body.readable-page .talent-form-status[data-state=success]{color:#075a49;border-color:#075a49}
body.readable-page .readable-form-help{margin:0 0 24px;color:#40575e}
body.readable-page .talent-file input::file-selector-button{min-height:44px;margin-right:10px;border:1px solid #667b80;border-radius:3px;padding:8px 12px;background:#edf2f1;color:#163946;font:inherit;cursor:pointer}
body.readable-page .talent-gate-actions{flex-wrap:wrap}
/* Explicit dark-panel colors beat the shared .content h2 rule. */
body.readable-page.institute-ui .content .dual-cta{background:#163946;color:#fff}
body.readable-page.institute-ui .content .dual-cta h2{color:#fff;font-size:clamp(26px,3vw,34px)}
body.readable-page.institute-ui .content .dual-cta p{color:#e2ecec;font-size:16px}
body.readable-page .dual-cta .section-kicker{color:#e8cf94}
body.readable-page .public-cap-visual{background:#eef4f3;color:#163946;border-color:#b6c7c5}
body.readable-page :is(.public-cap-hero,.public-cap-hero>div,.content,.bid-flow li,.dual-cta>div){min-width:0}
body.readable-page .capability-card p{color:#40575e;font-size:16px}
body.readable-page .bid-flow{padding:0;list-style:none}
body.readable-page .bid-flow li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:14px;border-radius:12px;background:#fff}
body.readable-page .bid-flow b{display:grid;place-items:center;width:44px;height:44px;background:#163946;color:#fff;border-radius:8px;font-size:16px}
body.readable-page .bid-flow span{color:#40575e;font-size:16px;line-height:1.65}
body.readable-page .bid-flow strong{color:#163946}
body.readable-page .footer :is(p,a,label,.footer-legal,.copy){font-size:16px;line-height:1.65}
body.readable-page .footer .copy{color:#b9c7d8}
body.readable-page .footer a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;margin:2px 12px 2px 0}
body.readable-page .footer-grid>div:nth-child(2) a{display:flex}
body.readable-page .footer .footer-contact{white-space:normal;overflow-wrap:anywhere}
body.readable-page .related-select{min-height:48px;border:2px solid #a7b9bc;font-size:16px}
body.readable-page .header :is(.icon,.menu,.header-login,.header-signup){min-width:44px;min-height:44px}
body.readable-page .keri-chatbot__launcher:is(:hover,:focus-visible){background:#163946;border-color:#163946}
body.readable-page .keri-chatbot__panel header button{width:44px;height:44px;flex-basis:44px}
body.readable-page .readable-search-label{display:block;font-weight:700;margin:16px 0 8px;color:#163946}
@media(max-width:1024px){body.readable-page .public-cap-hero{grid-template-columns:1fr}}
@media(max-width:768px){
 body.readable-page .container{max-width:100%;width:calc(100% - 28px)}
 body.readable-page .network-hero-grid,body.readable-page .talent-form-layout{grid-template-columns:minmax(0,1fr)}
 body.readable-page .network-hero h1{font-size:clamp(28px,8vw,36px)}
 body.readable-page .network-steps{grid-template-columns:minmax(0,1fr)}
 body.readable-page .network-path,body.readable-page .network-benefits article,body.readable-page .network-account-panel{padding:24px}
 body.readable-page .network-comparison :is(th,td){padding:12px 6px;font-size:16px}
 body.readable-page .network-comparison th:first-child{width:34%}
 body.readable-page .network-account-panel,body.readable-page .network-institution{min-width:0}
 body.readable-page .network-bottom .container{align-items:stretch}
 body.readable-page .talent-form-layout{gap:28px}
 body.readable-page .talent-form,body.readable-page .talent-gate,body.readable-page .talent-history{padding:24px 16px}
 body.readable-page .talent-segmented{grid-template-columns:minmax(0,1fr);gap:14px}
 body.readable-page .dual-cta{padding:24px 20px}
 body.readable-page .dual-cta-actions{display:grid;grid-template-columns:minmax(0,1fr)}
 body.readable-page .public-cap-visual{padding:20px 14px}
 body.readable-page .network-faq summary{font-size:18px}
 body.readable-page .footer-grid{grid-template-columns:minmax(0,1fr);gap:28px}
}
@media(prefers-reduced-motion:reduce){body.readable-page .btn{transition:none}}
body.readable-page .public-cap-visual>.section-kicker{color:#0b5263}
/* Keep the closed help launcher in document flow, away from forms and CTAs. */
body.readable-page .keri-chatbot{position:relative;right:auto;bottom:auto;display:flex;justify-content:flex-end;max-width:1200px;margin:20px auto;padding:0 14px}
/* Intrinsic wrapping also handles text/browser magnification between breakpoints. */
body.readable-page.institute-ui .header-in{height:auto;flex-wrap:wrap;gap:12px;padding-top:10px;padding-bottom:10px}
@media(min-width:1025px){
 body.readable-page.institute-ui .header .brand{flex:0 0 auto;max-width:100%}
 body.readable-page.institute-ui .header .nav{flex:1 1 580px;flex-wrap:wrap;justify-content:flex-start}
 body.readable-page.institute-ui .header .nav-item{flex:0 1 auto}
 body.readable-page.institute-ui .header .nav-link{white-space:normal;min-height:44px;display:flex;align-items:center}
 body.readable-page .membership-header-actions{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}
 body.readable-page .membership-header-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;font-size:16px;padding:10px 14px}
}
body.readable-page .network-hero-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
body.readable-page .talent-form-layout{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
body.readable-page .network-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
body.readable-page .footer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
body.readable-page .footer-grid>div{min-width:0}
/* A wrapped, magnified header must not cover keyboard targets while scrolling. */
body.readable-page .header{position:relative;top:auto}
body.readable-page.institute-ui.has-context-navigation .institute-context-nav__inner{height:auto;flex-wrap:wrap;overflow:visible;min-width:0}
body.readable-page.institute-ui.has-context-navigation .institute-context-home{flex:0 0 48px;min-height:48px}
body.readable-page.institute-ui.has-context-navigation .institute-context-select{flex:1 1 180px;min-width:0;max-width:100%}
body.readable-page.institute-ui.has-context-navigation .institute-context-select>summary{min-height:48px;white-space:normal;padding:12px 16px;font-size:16px}
body.readable-page.institute-ui.has-context-navigation .institute-context-select__menu{left:0;right:0;min-width:0;width:100%;max-width:100%}
body.readable-page.institute-ui.has-context-navigation .institute-context-select:not([open]) .institute-context-select__menu{display:none}
body.readable-page.institute-ui.has-context-navigation .institute-context-select__menu a{white-space:normal;font-size:16px;min-height:44px}
body.readable-page.institute-ui.has-context-navigation :is(.institute-context-home,.institute-context-select>summary,.institute-context-select__menu a):focus-visible{outline:3px solid #0759b9;outline-offset:3px;box-shadow:0 0 0 6px #fff}
