:root{--navy:#0d1d38;--navy2:#152d50;--blue:#35bdd4;--paper:#f4f7fb;--ink:#15243a;--muted:#687a90;--line:#dce5ef;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{width:min(calc(100% - 44px),1180px);margin-inline:auto}.skip-link{position:absolute;top:-80px;left:16px;z-index:100;background:#fff;padding:10px 16px}.skip-link:focus{top:0}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.site-header{background:var(--navy);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}.nav-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:12px;font-weight:800;letter-spacing:-.02em}.brand-mark{width:42px;height:42px;border:1px solid rgba(255,255,255,.26);display:grid;place-items:center;border-radius:10px;font-size:21px;letter-spacing:-.1em;padding-right:3px}.brand-mark span{color:var(--blue)}.site-header nav{display:flex;align-items:center;gap:26px;font-size:13px;color:#d2ddeb}.site-header nav a:hover,.site-header nav button:hover{color:#fff}.site-header nav form{margin:0}.site-header nav button{background:none;border:0;color:#d2ddeb;padding:0}.main-content{min-height:calc(100vh - 146px);padding-bottom:90px}.site-footer{background:#08172d;color:#8296b0}.footer-inner{display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:11px}
.eyebrow,.panel-kicker{display:block;color:#1592b1;text-transform:uppercase;letter-spacing:.19em;font-size:10px;font-weight:850}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;background:var(--navy);border:0;border-radius:8px;color:#fff;font-size:13px;font-weight:750;transition:transform .2s,background .2s}.button:hover{background:#265080;transform:translateY(-2px)}.dot{color:var(--blue)}.note,.quiet{color:#7789a0;font-size:12px;line-height:1.7}.note a{text-decoration:underline;color:#176187}.validation{color:#a6263f;font-size:13px;margin:0 0 16px}.validation ul{padding-left:18px}.validation-summary-valid{display:none}.success{border:1px solid #99dcc7;background:#ecfaf3;color:#136448;border-radius:8px;padding:13px 17px;margin-bottom:20px}
.landing{min-height:550px;display:grid;grid-template-columns:1fr .85fr;gap:60px;align-items:center}.landing-copy h1,.auth-copy h1{font-size:clamp(50px,6vw,84px);line-height:1.08;letter-spacing:-.065em;margin:24px 0}.landing-copy h1 em,.auth-copy h1 em{font-style:normal;color:#299fc7}.landing-copy>p{max-width:560px;font-size:18px;color:#5b6e86;line-height:1.8}.landing-actions{margin-top:30px}.landing-art{aspect-ratio:1;position:relative;display:grid;place-items:center;max-width:460px;justify-self:center;width:100%}.ring{position:absolute;border:1px solid #c5d4e5;border-radius:50%}.ring-one{inset:4%}.ring-two{inset:18%;border-style:dashed}.core{position:relative;z-index:2;width:40%;aspect-ratio:1;display:grid;place-items:center;border-radius:25px;background:linear-gradient(145deg,#1b3c64,#0d1e39);color:#fff;box-shadow:0 28px 55px #203a5d33;font-size:75px;letter-spacing:-.13em;font-weight:850;padding-right:12px}.core span{color:var(--blue)}.art-caption{position:absolute;bottom:0;letter-spacing:.2em;color:#7890ac;font-size:9px;font-weight:800}.info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.info-row>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:27px}.info-row span{font-size:11px;color:#2187ae;font-weight:800}.info-row h2{font-size:20px;letter-spacing:-.03em;margin:18px 0 8px}.info-row p{font-size:13px;color:#728299;margin:0}
.auth-shell{min-height:650px;display:grid;grid-template-columns:1fr 430px;align-items:center;gap:75px}.auth-copy h1{font-size:clamp(45px,5vw,70px)}.auth-copy>p{max-width:480px;color:#61758e;font-size:16px;line-height:1.8}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:30px;box-shadow:0 18px 45px rgba(19,47,79,.05)}.panel h2{font-size:26px;letter-spacing:-.04em;line-height:1.2;margin:15px 0 13px}.panel p{color:#61748a;font-size:14px;line-height:1.75}.auth-panel{padding:38px}.auth-panel h2{font-size:31px;margin:18px 0 22px}.panel form{display:grid;gap:7px}.panel label{font-size:12px;font-weight:750;margin-top:9px}.panel input,.panel textarea,.panel select{width:100%;border:1px solid #cad7e5;background:#fbfcfe;border-radius:8px;padding:11px 13px;min-height:45px;color:var(--ink)}.panel textarea{resize:vertical}.panel .button{margin-top:16px}.one-time-secret{padding:16px;border-radius:8px;background:#edf5fa;color:#0e3e62;word-break:break-all;font-family:ui-monospace,Consolas,monospace;font-size:14px;border:1px solid #c4dce9;margin:14px 0}.secret-panel{margin:20px 0}
.page-heading{padding:65px 0 42px}.page-heading h1{font-size:clamp(42px,5vw,63px);letter-spacing:-.06em;line-height:1.12;margin:17px 0 13px}.page-heading>p{color:#6c7d93;font-size:16px}.project-panel{max-width:700px}.rights{display:inline-flex;gap:8px;padding:9px 13px;background:#e9f6f9;color:#236a81;border-radius:8px;font-size:13px;margin:8px 0 15px}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.admin-grid .panel{height:100%}.admin-grid h2{font-size:23px}.table-panel{margin-top:22px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px;min-width:610px}th,td{padding:12px 9px;border-bottom:1px solid #e8edf3;text-align:left;vertical-align:middle}th{color:#647994;font-size:10px;letter-spacing:.08em;text-transform:uppercase}td form{display:inline}.small-button{border:1px solid #e5b4ba;background:#fff4f4;color:#9d293b;border-radius:6px;padding:6px 8px;font-size:11px;font-weight:750}.small-button:hover{background:#ffe4e4}
.legal-panel{max-width:850px}.legal-panel h2{margin-top:30px;font-size:21px}.legal-panel h2:first-child{margin-top:0}.legal-panel address{font-style:normal;line-height:1.8}.legal-panel p{line-height:1.8}.legal-panel a{text-decoration:underline;color:#176187}.footer-inner a:hover{color:#fff}
.project-list{margin-top:34px}.project-list>h2{font-size:28px;letter-spacing:-.04em}.project-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.project-cards .panel{display:flex;flex-direction:column}.project-cards h3{font-size:20px;letter-spacing:-.03em;margin:14px 0 5px}.project-cards p{flex:1}.project-cards .button{align-self:flex-start;margin-top:8px}.table-panel td a{color:#176187;text-decoration:underline;overflow-wrap:anywhere}.table-panel td span{overflow-wrap:anywhere}
@media(max-width:900px){.landing,.auth-shell{grid-template-columns:1fr;gap:0;padding:65px 0}.landing-art{width:min(100%,350px);margin-top:25px}.auth-copy{margin-bottom:28px}.admin-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.wrap{width:min(calc(100% - 32px),1180px)}.nav-inner{min-height:70px}.site-header nav{gap:13px;font-size:12px}.brand>span:last-child{display:none}.landing{min-height:0}.landing-copy h1{font-size:clamp(45px,11vw,60px)}.landing-copy>p{font-size:16px}.info-row,.admin-grid{grid-template-columns:1fr}.auth-copy h1{font-size:clamp(42px,10vw,58px)}.auth-shell{padding:55px 0}.auth-panel{padding:26px}.page-heading{padding:49px 0 30px}.footer-inner{flex-wrap:wrap}.panel{padding:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.project-picks{border:1px solid var(--line);border-radius:10px;padding:12px;margin:14px 0 0;min-width:0}.project-picks legend{font-size:12px;font-weight:800;color:var(--navy);padding:0 5px}.panel .check-row{display:flex;align-items:center;gap:8px;margin:4px 0;font-size:12px}.panel .check-row input{width:17px;height:17px;min-height:17px;flex:none;padding:0}.project-pick{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,1fr);gap:10px;align-items:center;border-top:1px solid var(--line);padding:9px 0}.project-pick select{min-width:0}.project-edit{padding:18px 0;border-top:1px solid var(--line);grid-template-columns:minmax(150px,1fr) minmax(220px,2fr);column-gap:16px;align-items:end}.project-edit label{display:grid;gap:6px}.project-edit .note{grid-column:1/-1;overflow-wrap:anywhere;margin:0}.project-edit .small-button{justify-self:start}.project-cards .panel .note{flex:0;margin-top:auto}.project-cards .panel .button{margin-top:10px}.small-button{border-color:#b6d2e6;background:#eef7fd;color:#145179}.small-button:hover{background:#dceffa}@media(max-width:620px){.project-pick,.project-edit{grid-template-columns:1fr}}
.user-grants{padding:20px 0;border-top:1px solid var(--line)}.user-grants h3{margin:0;font-size:18px}
