:root{color:#123047;font-synthesis:none;--ink:#123047;--ink-soft:#496273;--green:#16a085;--amber:#d99a29;--line:#d9e0dc;--paper:#f7f8f5;--white:#fff;--shadow:0 20px 70px #1230471f;background:#f7f8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);margin:0}button,input,select{font:inherit}button,a{transition:all .2s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--amber);outline-offset:3px}.app-shell{min-height:100vh;overflow:hidden}.site-header{border-bottom:1px solid var(--line);z-index:2;background:#f7f8f5eb;justify-content:space-between;align-items:center;height:76px;padding:0 clamp(1.25rem,5vw,5rem);display:flex;position:relative}.brand{color:var(--ink);letter-spacing:-.04em;align-items:center;gap:.65rem;font-size:1.1rem;font-weight:800;text-decoration:none;display:flex}.brand span:last-child span{color:var(--green)}.brand-mark{background:var(--ink);color:#fff;justify-content:center;align-items:center;width:32px;height:32px;font-family:Georgia,serif;font-size:1.3rem;display:inline-flex}.header-note,.header-link{color:var(--ink-soft);letter-spacing:.14em;text-transform:uppercase;font-size:.65rem}.header-note{align-items:center;gap:.55rem;display:flex}.live-dot,.verified-dot,.neutral-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.live-dot,.verified-dot{background:var(--green)}.header-link{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:12px 0;font-weight:700}.hero{background:var(--ink);color:#fff;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);min-height:600px;padding:clamp(4rem,9vw,8rem) clamp(1.25rem,9vw,10rem);display:grid;position:relative}.hero:after{content:"";pointer-events:none;background:linear-gradient(130deg,#0000 20%,#16a08533,#0000 70%);position:absolute;inset:0}.hero-copy,.hero-aside{z-index:1;position:relative}.kicker{color:var(--green);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.66rem;font-weight:800}.hero h1,.section-heading h2,.principles h2{letter-spacing:-.07em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,7vw,6.8rem);font-weight:400;line-height:.9}.hero h1 em,.section-heading h2 em,.principles h2 em{color:var(--green);font-style:italic}.hero-intro{color:#d3e2df;max-width:530px;margin:2rem 0;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.button{cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.8rem;min-height:48px;padding:.8rem 1.2rem;font-size:.78rem;font-weight:800;text-decoration:none;display:inline-flex}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#11896f;transform:translateY(-2px)}.button.secondary{color:var(--ink);border-color:var(--line);background:#fff}.trust-note{color:#b9d2cb;font-size:.75rem;line-height:1.35}.trust-note span{color:var(--amber);font-size:1.1rem}.trust-note small{color:#75928c}.hero-aside{justify-content:center;align-items:center;display:flex}.signal-card{color:var(--ink);z-index:1;background:#fff;flex-direction:column;width:100%;max-width:245px;padding:2rem;display:flex;position:relative;transform:rotate(3deg)}.signal-label{color:var(--green);letter-spacing:.16em;font-size:.6rem;font-weight:800}.signal-card strong{letter-spacing:-.1em;margin:1.2rem 0 .6rem;font-family:Georgia,serif;font-size:8rem;font-weight:400;line-height:.85}.signal-card>span:not(.signal-label){color:var(--ink-soft);font-size:.9rem}.signal-rule{background:var(--ink);height:1px;margin:2rem 0 1rem}.signal-card small{color:var(--ink-soft);letter-spacing:.06em;font-size:.65rem}.orbit{border:1px solid #16a08559;border-radius:50%;width:280px;height:280px;position:absolute}.orbit-one{top:15%;right:5%}.orbit-two{width:390px;height:390px;top:5%;right:-2%}.radar-section,.principles{max-width:1320px;margin:0 auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3rem)}.section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3.5rem;display:flex}.section-heading h2,.principles h2{font-size:clamp(2.7rem,5vw,5rem)}.section-copy{color:var(--ink-soft);max-width:310px;line-height:1.6}.category-rail{border-bottom:1px solid var(--line);scrollbar-width:none;gap:.25rem;padding-bottom:0;display:flex;overflow-x:auto}.category-rail button{color:var(--ink-soft);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:1rem .9rem;font-size:.78rem;font-weight:700}.category-rail button:hover,.category-rail button.active{border-bottom-color:var(--green);color:var(--ink)}.category-rail button span{color:#94a2a0;margin-left:.35rem;font-size:.65rem}.filter-bar{grid-template-columns:2fr repeat(3,1fr);align-items:end;gap:1rem;padding:1.5rem 0;display:grid}.filter-bar label{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:.45rem;font-size:.64rem;display:flex}.filter-bar input,.filter-bar select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:0;min-height:44px;padding:.65rem .8rem}.search-field{position:relative}.search-field>span{font-size:1.25rem;position:absolute;bottom:12px;left:.8rem}.search-field input{padding-left:2.3rem!important}.results-line{border-top:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;align-items:center;padding:1rem 0;font-size:.72rem;display:flex}.results-line strong{color:var(--ink);font-size:1rem}.legend{align-items:center;gap:.4rem;display:flex}.neutral-dot{background:#a6b4b0;margin-left:.8rem}.opportunity-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.opportunity-card{border:1px solid var(--line);background:#fff;flex-direction:column;min-height:270px;padding:1.35rem;display:flex}.opportunity-card:hover{border-color:var(--green);transform:translateY(-3px);box-shadow:0 10px 30px #12304714}.card-topline,.card-footer,.card-facts{justify-content:space-between;align-items:center;display:flex}.eyebrow{color:var(--green);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-weight:800}.status-badge{letter-spacing:.04em;align-items:center;gap:.4rem;font-size:.62rem;font-weight:800;display:inline-flex}.status-dot{background:#9aa9a5;border-radius:50%;width:7px;height:7px}.status-badge.verified{color:#117e69}.status-badge.verified .status-dot{background:var(--green)}.status-badge.unverified,.status-badge.stale{color:#7b6a44}.status-badge.expired{color:#9a5960}.opportunity-card h3{letter-spacing:-.035em;margin:1.4rem 0 .5rem;font-family:Georgia,serif;font-size:1.45rem;font-weight:400;line-height:1.05}.funder{color:var(--ink-soft);margin:0;font-size:.8rem}.card-facts{border-top:1px solid var(--line);gap:1rem;margin-top:auto;padding:1rem 0}.card-facts span{color:var(--ink-soft);flex-direction:column;gap:.2rem;font-size:.75rem;display:flex}.card-facts b{color:#8b9a96;letter-spacing:.08em;text-transform:uppercase;font-size:.58rem}.deadline{color:#9a6b14}.muted{color:#a1aaa7;text-decoration:line-through}.card-footer{border-top:1px solid var(--line);color:var(--ink-soft);padding-top:1rem;font-size:.72rem}.text-button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:.72rem;font-weight:800}.text-button:hover{color:var(--green)}.empty-state{border:1px dashed var(--line);text-align:center;background:#fff;flex-direction:column;gap:.5rem;padding:3rem;display:flex}.empty-state span{color:var(--ink-soft)}.principles{border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr;gap:5rem;display:grid}.principle-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.principle-grid article{border-top:2px solid var(--green);padding-top:1rem}.principle-grid span{color:var(--green);font-size:.7rem;font-weight:800}.principle-grid h3{margin:1.5rem 0 .5rem;font-family:Georgia,serif;font-size:1.3rem;font-weight:400}.principle-grid p{color:var(--ink-soft);margin:0;font-size:.85rem;line-height:1.6}.site-footer{border-top:1px solid var(--line);color:#8d9b97;letter-spacing:.1em;justify-content:space-between;padding:1.5rem clamp(1.25rem,5vw,5rem);font-size:.6rem;display:flex}.modal-backdrop{z-index:10;background:#123047a6;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.detail-panel{box-shadow:var(--shadow);background:#fff;width:100%;max-width:680px;max-height:90vh;padding:clamp(1.5rem,4vw,3rem);overflow:auto}.detail-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.detail-head h2{letter-spacing:-.06em;margin:.7rem 0 0;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:400;line-height:1}.icon-button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:2rem;line-height:1}.detail-meta{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:1rem;padding:1.3rem 0;display:flex}.mono{font-family:monospace;font-size:.7rem}.detail-excerpt{color:var(--ink-soft);font-size:1rem;line-height:1.65}.warning{border-left:3px solid var(--amber);background:#fff8e8;flex-direction:column;gap:.25rem;margin:1.5rem 0;padding:1rem;display:flex}.warning strong{color:#8e671b;font-size:.76rem}.warning span{color:#6e685b;font-size:.8rem}.detail-section{border-top:1px solid var(--line);padding-top:1.2rem}.detail-section h3{letter-spacing:.1em;text-transform:uppercase;font-size:.75rem}.requirements{margin:0;padding:0;list-style:none}.requirements li{border-top:1px solid var(--line);align-items:flex-start;gap:1rem;padding:1rem 0;display:flex}.requirement-state{color:var(--green);min-width:88px;font-size:.62rem;font-weight:800}.requirement-state.unverified,.requirement-state.stale{color:#8a6e2d}.requirement-state.failed{color:#a04e5a}.requirements strong{font-size:.85rem}.requirements p{color:var(--ink-soft);margin:.3rem 0 0;font-size:.78rem}.detail-note{color:#806321;border:1px solid #e5c77f;padding:.8rem;font-size:.8rem}.detail-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.5rem;display:flex}@media (width<=900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-aside{justify-content:flex-start;margin-top:4rem}.opportunity-grid{grid-template-columns:repeat(2,1fr)}.principles{grid-template-columns:1fr;gap:3rem}}@media (width<=640px){.site-header{height:64px}.header-note{display:none}.hero{padding:4rem 1.25rem 5rem}.hero h1{font-size:4rem}.hero-aside{margin-top:2.5rem}.signal-card{max-width:100%;transform:rotate(0)}.orbit{display:none}.section-heading{flex-direction:column;align-items:flex-start;margin-bottom:2rem}.filter-bar{grid-template-columns:1fr 1fr}.filter-bar .search-field{grid-column:1/-1}.opportunity-grid,.principle-grid{grid-template-columns:1fr}.site-footer{flex-direction:column;gap:.7rem}.detail-actions .button{flex:1}.detail-head h2{font-size:2.3rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.opportunity-card:hover,.button.primary:hover{transform:none}}.auth-frame{background:var(--ink);justify-content:center;align-items:center;min-height:100vh;padding:1.25rem;display:flex}.auth-card{background:var(--paper);box-shadow:var(--shadow);width:100%;max-width:460px;padding:clamp(1.5rem,5vw,3rem)}.auth-content{padding-top:3rem}.auth-content h1{letter-spacing:-.06em;margin:.5rem 0;font-family:Georgia,serif;font-size:clamp(2.8rem,8vw,4.5rem);font-weight:400;line-height:1}.auth-copy{color:var(--ink-soft);line-height:1.6}.auth-content form{gap:1rem;margin-top:2rem;display:grid}.auth-content label{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;gap:.4rem;font-size:.72rem;font-weight:700;display:grid}.auth-content input{border:1px solid var(--line);color:var(--ink);background:#fff;min-height:48px;padding:.7rem}.auth-content .button{border:0;width:100%}.auth-warning,.auth-message{border-left:3px solid var(--amber);color:#6e685b;background:#fff8e8;margin-top:2rem;padding:1rem;line-height:1.5}.auth-links{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.auth-links button,.session-bar button{color:var(--ink);cursor:pointer;background:0 0;border:0;min-height:44px;padding:.5rem;font-size:.75rem;font-weight:800}.auth-links button:hover,.session-bar button:hover{color:var(--green)}.session-bar{background:var(--ink);color:#d3e2df;justify-content:flex-end;align-items:center;padding:.35rem 1.25rem;font-size:.75rem;display:flex}.session-bar button{color:#fff}:root{--green:#087f6b;--amber:#9a6b14}.app-shell{overflow:visible}.text-button,.icon-button,.header-link{min-width:44px;min-height:44px}.text-button{align-items:center;display:inline-flex}.icon-button{justify-content:center;align-items:center;display:inline-flex}.card-source{color:var(--ink-soft);margin-top:.3rem;font-size:.62rem;display:block}.source-note{color:var(--ink-soft);font-size:.78rem;line-height:1.4}.hero{overflow:clip}.hero .kicker,.hero h1 em,.trust-note span{color:#7ad8c5}.brand{min-height:44px}.category-rail button span,.card-facts b,.muted,.site-footer{color:#52645f}.eligibility-label{color:#52636c}.card-status{flex-direction:column;align-items:flex-end;gap:.18rem;display:flex}.source-badge{color:#5d6870;letter-spacing:.02em;text-align:right;font-size:.56rem;font-weight:800}.eligibility-label{color:#52636c;letter-spacing:.04em;text-transform:uppercase;font-size:.52rem}.documents-panel{border-top:1px solid var(--line);max-width:1320px;margin:0 auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3rem)}.documents-heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.documents-heading h2{letter-spacing:-.06em;margin:0;font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,5rem);font-weight:400;line-height:1}.documents-heading em{color:var(--green);font-style:italic}.upload-control{position:relative}.upload-control input{cursor:pointer;opacity:0;position:absolute;inset:0}.document-list{margin:1.5rem 0 0;padding:0;list-style:none}.document-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.document-list li span{flex-direction:column;gap:.25rem;display:flex}.document-list small{color:var(--ink-soft)}.auth-logo{width:100%;max-width:100%;height:auto;display:block}
