
:root{--navy:#0b132b;--ink:#111827;--copy:#475569;--muted:#64748b;--blue:#1d4ed8;--green:#047857;--slate:#f8fafc;--white:#fff;--line:#e2e8f0;--soft:0 10px 30px rgba(15,23,42,.06);--shadow:0 22px 60px rgba(15,23,42,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--slate);color:var(--copy);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}:focus-visible{outline:3px solid #93c5fd;outline-offset:3px;border-radius:7px}.shell{width:min(1120px,calc(100% - 36px));margin:auto}.skip{position:fixed;left:12px;top:-70px;z-index:200;padding:10px 13px;border-radius:10px;background:#fff;color:var(--navy);font-weight:800}.skip:focus{top:10px}.nav{position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(226,232,240,.85);background:rgba(255,255,255,.9);backdrop-filter:blur(18px)}.navin{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px}.mark{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:var(--navy);box-shadow:0 8px 20px rgba(11,19,43,.16)}.brand strong{display:block;color:var(--ink);font-size:16px;line-height:1}.brand small{display:block;margin-top:5px;color:#718096;font-size:8px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.links{display:flex;align-items:center;gap:18px;color:#334155;font-size:12px;font-weight:700}.links a:hover{color:var(--blue)}.links .cta{padding:10px 13px;border-radius:12px;background:var(--navy);color:#fff}.mobile{display:none;position:relative}.mobile summary{width:43px;height:43px;display:grid;place-items:center;cursor:pointer;list-style:none;border:1px solid var(--line);border-radius:13px;background:#fff}.mobile summary::-webkit-details-marker{display:none}.panel{position:absolute;right:0;top:52px;width:min(300px,calc(100vw - 30px));padding:10px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.panel a{display:block;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:700}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:#fff}.hero:before{position:absolute;inset:0;content:"";background-image:linear-gradient(rgba(15,23,42,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.03) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(#000,transparent 94%)}.hero-inner{position:relative;padding:58px 0 62px}.crumbs{display:flex;flex-wrap:wrap;gap:8px;color:#64748b;font-size:11px;font-weight:700}.crumbs span{color:#94a3b8}.eyebrow{margin:22px 0 0;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.hero h1{max-width:880px;margin:10px 0 0;color:var(--ink);font-size:clamp(38px,5vw,60px);line-height:1.03;letter-spacing:-.052em}.deck{max-width:820px;margin:18px 0 0;color:#526174;font-size:17px;line-height:1.8}.meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;color:#718096;font-size:10px;font-weight:700}.content{padding:64px 0}.grid{display:grid;grid-template-columns:1fr 320px;gap:34px;align-items:start}.article{display:grid;gap:18px}.box{padding:27px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--soft)}.box h2{margin:0 0 10px;color:var(--ink);font-size:25px;line-height:1.2;letter-spacing:-.025em}.box h3{margin:20px 0 7px;color:var(--ink);font-size:17px}.box p{margin:0;color:#5b687a;font-size:14px;line-height:1.78}.box p+p{margin-top:12px}.checks{display:grid;gap:9px;margin:17px 0 0;padding:0;list-style:none}.checks li{position:relative;padding-left:27px;color:#334155;font-size:13px}.checks li:before{position:absolute;left:0;top:1px;width:19px;height:19px;display:grid;place-items:center;content:"✓";border-radius:7px;background:#ecfdf5;color:#047857;font-size:11px;font-weight:900}.side{position:sticky;top:96px;display:grid;gap:14px}.side-card{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--soft)}.side-card h2{margin:0;color:var(--ink);font-size:17px}.side-card p{margin:8px 0 0;font-size:12px}.side-links{display:grid;gap:7px;margin-top:13px}.side-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border-radius:10px;background:#f8fafc;color:#1e3a8a;font-size:11px;font-weight:800}.status{padding:13px 14px;border:1px solid #bfdbfe;border-radius:15px;background:#eff6ff;color:#1e40af;font-size:11px;font-weight:700}.people{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.person{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.person img{width:78px;height:78px;object-fit:cover;border:2px solid #fff;border-radius:22px;box-shadow:0 6px 18px rgba(15,23,42,.14)}.person h3{margin:13px 0 4px;color:var(--ink);font-size:16px}.person p{margin:0;font-size:11.5px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.contact-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.contact-card small{display:block;color:#64748b;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-card strong{display:block;margin-top:4px;color:var(--ink);font-size:14px;word-break:break-word}.footer{margin-top:40px;padding:48px 0 24px;background:#070d1e;color:#9aa8bd}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:35px}.footer h2,.footer h3{margin:0 0 12px;color:#fff}.footer h2{font-size:17px}.footer h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.footer p,.footer li,.footer address{font-size:10.5px;line-height:1.72}.footer address{font-style:normal}.footer ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.footer-bottom{display:flex;justify-content:space-between;gap:18px;margin-top:30px;padding-top:18px;border-top:1px solid #1e293b;color:#66758b;font-size:9.5px}.back{position:fixed;right:16px;bottom:16px;z-index:80;width:44px;height:44px;display:grid;place-items:center;border:1px solid #475569;border-radius:14px;background:#0b132bef;color:#fff;box-shadow:var(--shadow)}
@media(max-width:900px){.links{display:none}.mobile{display:block}.grid{grid-template-columns:1fr}.side{position:static}.people{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.shell{width:calc(100% - 28px)}.hero-inner{padding:42px 0 48px}.hero h1{font-size:clamp(34px,11vw,45px)}.deck{font-size:15px}.content{padding:48px 0}.box{padding:22px}.people,.contact-grid,.footer-grid{grid-template-columns:1fr}.footer-bottom{display:grid;gap:6px}}

/* Lighthouse accessibility contrast */
.brand small{color:#526174}.crumbs span{color:#64748b}.meta{color:#526174}.footer-bottom{color:#94a3b8}

/* Mobile overflow guard - keep article content inside the viewport */
html,body{max-width:100%;overflow-x:hidden}
.grid,.article,.side,.box,.shell,.article-hero-grid,.article-hero-grid>*,.hero-photo,.answer,.toc,.editorial-note,.warning,.image-block,.source-list,.source-link,.related-list,.faq-list,.faq-item,.data-table{min-width:0;max-width:100%}
.data-table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
img,svg,video,iframe{max-width:100%;height:auto}
.box,.answer,.toc,.editorial-note,.warning,.source-link,.related-list a,.faq-item,.hero-callout{overflow-wrap:anywhere;word-break:normal}
@media(max-width:640px){
  .shell{width:min(100% - 28px,1120px)}
  .article-hero-grid,.grid,.article,.side{width:100%;min-width:0}
  .box,.answer,.toc,.warning{width:100%;max-width:100%}
  .source-link{align-items:flex-start;flex-wrap:wrap;gap:6px 12px}
  .source-link span{min-width:0;max-width:100%}
  .query-pills span{max-width:100%;overflow-wrap:anywhere}
  .byline-person{max-width:100%;min-width:0}
  .byline-person>span{min-width:0}
  .hero-photo{width:100%}
  .footer-main,.footer-main>*{min-width:0;max-width:100%}
  .hero-meta,.meta{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;width:100%;min-width:0}
  .hero-meta span,.meta span{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .entity-grid,.program-grid,.steps,.step-row,.step-row>*,.program-card,.entity-card{min-width:0;max-width:100%}
  .crumbs,.crumbs>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .footer-contact,.contact-row,.contact-row>*,.footer-links{min-width:0;max-width:100%}
  body .data-table{overflow-x:hidden!important}
  body .data-table table{width:100%!important;min-width:100%!important;table-layout:fixed}
  body .data-table th,body .data-table td{padding:10px 8px!important;font-size:9px!important;overflow-wrap:anywhere;word-break:normal}
}
@media(max-width:420px){
  body .hero-meta,body .meta{display:grid!important;grid-template-columns:1fr!important}
}
