:root{--green:#075a46;--green-2:#0d765b;--green-3:#dff1e8;--ink:#15372f;--muted:#61746e;--cream:#f5f2e9;--paper:#fff;--gold:#f6c94a;--line:#d8e4de;--navy:#073b34;--shadow:0 20px 55px rgba(7,90,70,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#f7faf8;font-family:'Public Sans',sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{width:min(1240px,calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:10px 15px;background:#fff;transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:sticky;z-index:30;top:0;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-row{min-height:86px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand img{width:46px;height:46px;object-fit:contain}.brand small{display:block;color:var(--green-2);font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.13em;text-transform:uppercase}.brand strong{display:block;font:700 20px 'Fraunces',serif;letter-spacing:.02em}.site-header nav{display:flex;align-items:center;gap:25px}.site-header nav a{font-size:13px;font-weight:700}.site-header nav a:hover{color:var(--green-2)}.home-button{padding:11px 17px;border-radius:999px;background:var(--gold);color:#164738;font-size:13px;font-weight:800;box-shadow:0 8px 22px rgba(192,147,27,.2)}.menu-toggle{display:none;border:0;background:transparent;padding:7px}.menu-toggle span{display:block;width:25px;height:2px;margin:5px;background:var(--green)}
.hero{position:relative;overflow:hidden;padding:92px 0 82px;color:#fff;background:linear-gradient(135deg,#064c3c,#0a7256)}.hero::after{content:"";position:absolute;right:-100px;bottom:-220px;width:580px;height:580px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.02)}.hero-grid{position:absolute;inset:0;opacity:.1;background-image:linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,#000,transparent 76%)}.hero-content{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:75px;align-items:center}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:#8ee0c4;font:600 11px 'IBM Plex Mono',monospace;letter-spacing:.15em;text-transform:uppercase}.eyebrow span{width:30px;height:2px;background:currentColor}.eyebrow.dark{color:var(--green-2)}.eyebrow.light{color:#8ee0c4}h1,h2,h3{margin-top:0}h1,h2{font-family:'Fraunces',serif;letter-spacing:-.035em}h1{margin-bottom:24px;font-size:clamp(48px,5vw,76px);line-height:.98}h1 em,h2 em{color:var(--gold);font-weight:500}.lead{max-width:720px;margin:0;color:rgba(255,255,255,.76);font-size:17px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;padding:0 19px;border:1px solid rgba(255,255,255,.25);border-radius:8px;cursor:pointer;font-weight:800}.button.primary{border-color:var(--gold);background:var(--gold);color:#174638}.button.secondary{background:rgba(255,255,255,.08);color:#fff}.button:hover{transform:translateY(-2px)}.hero-note{padding:30px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(255,255,255,.09);box-shadow:0 24px 70px rgba(0,30,24,.2);backdrop-filter:blur(12px)}.note-kicker{color:#a9ead5;font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase}.hero-note h2{margin:10px 0 12px;font-size:31px}.hero-note p{margin:0;color:rgba(255,255,255,.72);font-size:14px}.security-note{margin-top:20px;padding:13px 14px;border-left:3px solid var(--gold);background:rgba(0,0,0,.12);font-size:12px}.security-note b{color:var(--gold)}
.summary-section{position:relative;z-index:3;margin-top:-30px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.summary-grid article{padding:24px 25px;border-right:1px solid var(--line)}.summary-grid article:last-child{border:0}.summary-grid span,.summary-grid small{display:block;color:var(--muted);font-size:11px}.summary-grid span{font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.summary-grid strong{display:block;margin:4px 0;color:var(--green);font:700 35px 'Fraunces',serif}.summary-grid .highlight{background:var(--green-3)}
.section{padding:92px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:35px}.section-heading>div{flex:1}.section-heading>p{max-width:430px;margin:0;color:var(--muted);font-size:14px}.section-heading h2,.results-grid h2{margin:0;font-size:clamp(38px,4vw,60px);line-height:1.05}.section-heading h2 em,.results-grid h2 em{color:var(--green-2)}.toolbar{display:grid;grid-template-columns:1.6fr .8fr .8fr;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.toolbar label>span{display:block;margin:0 0 7px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.toolbar input,.toolbar select{width:100%;height:45px;padding:0 13px;border:1px solid #cadbd3;border-radius:8px;outline:0;background:#fbfdfc;color:var(--ink)}.toolbar input:focus,.toolbar select:focus{border-color:var(--green-2);box-shadow:0 0 0 3px rgba(13,118,91,.1)}.result-count{margin:18px 2px;color:var(--muted);font-size:12px}.assessment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.assessment-card{display:flex;min-width:0;flex-direction:column;padding:25px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 8px 28px rgba(19,72,57,.055);transition:.2s}.assessment-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.type-badge,.status-badge{display:inline-flex;align-items:center;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.type-badge{padding:5px 9px;background:var(--green-3);color:var(--green)}.status-badge{gap:7px;color:#8a6210}.status-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:#e5ac35}.assessment-card h3{margin:17px 0 3px;font:700 25px 'Fraunces',serif;line-height:1.1}.agency{margin:0 0 13px;color:var(--green-2);font-size:11px;font-weight:700}.description{margin:0 0 20px;color:var(--muted);font-size:13px}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}.meta-grid div{padding:10px 11px;border-radius:8px;background:#f4f8f6}.meta-grid span{display:block;color:#7d8d88;font-size:9px;font-weight:700;text-transform:uppercase}.meta-grid strong{display:block;margin-top:2px;font-size:11px}.assessment-card details{margin-top:15px;border-top:1px solid var(--line)}.assessment-card summary{padding:14px 0 7px;cursor:pointer;color:var(--green-2);font-size:12px;font-weight:800}.assessment-card ul{margin:5px 0 12px;padding-left:18px;color:var(--muted);font-size:12px}.card-actions{display:flex;gap:9px;margin-top:16px}.portal-button,.disabled-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:8px;font-size:11px;font-weight:800}.portal-button{background:var(--green);color:#fff}.portal-button:hover{background:var(--green-2)}.disabled-button{background:#edf1ef;color:#83908c}.empty-filter{grid-column:1/-1;padding:50px;text-align:center;border:1px dashed #b9cbc3;border-radius:14px;color:var(--muted)}
.calendar-section{color:#fff;background:var(--navy)}.light-heading>p{color:rgba(255,255,255,.6)}.light-heading h2 em{color:var(--gold)}.quarter-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.12)}.quarter-grid article{min-height:265px;padding:30px 24px;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.quarter-grid article>span{color:#8ee0c4;font:600 11px 'IBM Plex Mono',monospace;letter-spacing:.1em}.quarter-grid h3{margin:24px 0 15px;font-size:18px}.quarter-grid ul{margin:0;padding-left:17px;color:rgba(255,255,255,.58);font-size:12px}.quarter-grid li{margin-bottom:8px}
.results-section{background:var(--cream)}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.results-lead{max-width:560px;color:var(--muted)}.empty-results{padding:35px;border:1px solid #d6d2c5;border-radius:16px;background:rgba(255,255,255,.58)}.empty-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--green-3);color:var(--green);font-size:22px;font-weight:800}.empty-results h3{margin:19px 0 8px;font-size:21px}.empty-results p,.empty-results ul{color:var(--muted);font-size:13px}.empty-results ul{padding-left:18px}
footer{padding:55px 0 22px;color:#fff;background:#032c26}.footer-row{display:flex;justify-content:space-between;gap:50px}.footer-row strong{font:700 21px 'Fraunces',serif}.footer-row p{margin:5px 0;color:rgba(255,255,255,.52);font-size:12px}.footer-row>div:last-child{display:flex;gap:25px;align-items:flex-start}.footer-row a{color:rgba(255,255,255,.68);font-size:12px}.footer-bottom{display:flex;justify-content:space-between;margin-top:35px;padding-top:18px;border-top:1px solid rgba(255,255,255,.11);color:rgba(255,255,255,.4);font-size:10px}
@media(max-width:980px){.site-header nav,.home-button{display:none}.menu-toggle{display:block}.site-header.open nav{position:absolute;top:100%;left:20px;right:20px;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.site-header.open nav a{padding:12px;border-bottom:1px solid var(--line)}.hero-content{grid-template-columns:1fr;gap:35px}.hero-note{max-width:620px}.summary-grid{grid-template-columns:1fr 1fr}.summary-grid article:nth-child(2){border-right:0}.summary-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.assessment-grid{grid-template-columns:1fr}.quarter-grid{grid-template-columns:1fr 1fr}.results-grid{gap:45px}}
@media(max-width:650px){.shell{width:calc(100% - 28px)}.nav-row{min-height:74px}.brand img{width:40px;height:40px}.brand strong{font-size:17px}.hero{padding:65px 0 58px}.hero-content{gap:24px}h1{font-size:43px}.lead{font-size:14px}.hero-note{padding:22px}.hero-note h2{font-size:25px}.hero-actions{flex-direction:column;align-items:stretch}.summary-section{margin-top:0;padding-top:14px}.summary-grid{grid-template-columns:1fr 1fr}.summary-grid article{padding:18px}.summary-grid strong{font-size:29px}.section{padding:68px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:18px}.section-heading h2,.results-grid h2{font-size:39px}.toolbar{grid-template-columns:1fr}.assessment-card{padding:20px}.meta-grid{grid-template-columns:1fr}.quarter-grid{grid-template-columns:1fr}.quarter-grid article{min-height:auto}.results-grid{grid-template-columns:1fr;gap:30px}.footer-row,.footer-bottom{flex-direction:column}.footer-row>div:last-child{gap:16px}.footer-bottom{gap:6px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
