@font-face{font-family:'Bricolage Grotesque';src:url('/fonts/bricolage-grotesque.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('/fonts/dm-sans.woff2') format('woff2');font-style:normal;font-weight:100 1000;font-display:swap}
@font-face{font-family:'Instrument Sans';src:url('/fonts/instrument-sans.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--green:#19392a;--fern:#2d6b3f;--orange:#f2a34a;--ink:#1e3322;--muted:#526357;--soft:#f4f5f5;--line:#e4e9df;--control:#7b897e;--error:#c7363f;--white:#fff;--font-body:'DM Sans',Arial,sans-serif;--font-head:'Bricolage Grotesque','DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.55 var(--font-body)}body.menu-open{overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:var(--font-head);line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(2.75rem,5vw,4rem);font-weight:750}h2{font-size:clamp(2rem,3.5vw,2.75rem);font-weight:750}h3{font-size:clamp(1.25rem,1.9vw,1.55rem);font-weight:700}p{margin-bottom:1rem}ul,ol{padding-left:1.3rem}.container{width:min(1200px,calc(100% - 48px));margin-inline:auto}.section{padding:100px 0}.section-white{background:#fff}.section-gray{background:var(--soft)}.section-soft{background:#e9eee8}.section-dark{background:var(--green);color:#fff}.eyebrow{font:600 14px/1.4 'Instrument Sans',sans-serif;color:var(--fern);margin-bottom:17px}.section-dark .eyebrow{color:#b7d2ba}.section-lead{max-width:830px;color:var(--muted);font-size:18px;line-height:1.6}.section-dark .section-lead{color:#d8e4da}.caption,.microcopy,.hint{font:400 13px/1.55 'Instrument Sans',sans-serif;color:var(--muted)}.section-dark .microcopy{color:#d8e4da}.step-number{font:400 14px/1.4 'IBM Plex Mono',monospace;color:var(--fern)}.skip-link{position:absolute;left:16px;top:-80px;z-index:1000;padding:10px 16px;background:#fff;color:var(--green);border:2px solid var(--green)}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #c9781e;outline-offset:3px}#main,section[id]{scroll-margin-top:90px}
.site-header{position:relative;z-index:50;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;flex:none}.brand img{width:95px;height:64px;object-fit:contain}.desktop-nav,.header-actions{display:flex;align-items:center;gap:25px}.desktop-nav a,.login-link,.header-actions>a:not(.button){font:500 14px/1.4 'Instrument Sans',sans-serif}.desktop-nav a:hover,.login-link:hover{text-decoration:underline}.header-actions{margin-left:auto}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--green);border-radius:8px;background:var(--green);color:#fff;font-weight:700;line-height:1.2;text-align:center;white-space:normal;transition:background-color .15s,color .15s,border-color .15s}.button:hover{background:#285038;border-color:#285038;color:#fff;text-decoration:none}.button:active{background:#10261b}.button:disabled{opacity:.7;cursor:wait}.button-small{min-height:42px;padding:10px 18px;font-size:14px}.button-outline{background:transparent;color:var(--green)}.button-outline:hover{background:#e3ece2;color:var(--green)}.button-orange{background:var(--orange);border-color:var(--orange);color:#172d20}.button-orange:hover{background:#ffc076;border-color:#ffc076;color:#172d20}.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.actions>a:not(.button){font-weight:650}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{display:block;width:18px;height:2px;background:var(--green)}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px 24px 28px;box-shadow:0 12px 24px rgba(0,0,0,.08)}.mobile-menu[hidden]{display:none}.mobile-menu a{display:block;padding:12px 0;font-weight:600}.mobile-menu .button{margin-top:12px;padding:12px 20px;text-align:center}
.hero{padding:58px 0 36px}.hero-top{display:grid;grid-template-columns:1fr .85fr;gap:80px;align-items:end}.hero h1{max-width:710px;margin-bottom:18px}.hero-intro{padding-bottom:12px}.hero-intro>p:first-child{font-size:18px;line-height:1.55;max-width:490px}.hero-intro .microcopy{margin:12px 0 0}.hero-visual{margin-top:36px}.hero-visual img{display:block;width:100%;border-radius:16px;background:#fff;box-shadow:0 16px 36px rgba(17,47,31,.08)}.hero-visual .caption{margin:10px 0 0}.hero-points{display:flex;gap:30px;flex-wrap:wrap;margin-top:18px;color:var(--green);font:500 14px/1.4 'Instrument Sans',sans-serif}.hero-points span{white-space:nowrap}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.benefit{padding:30px;background:var(--soft);border-radius:16px}.benefit-icon{display:inline-grid;place-items:center;width:36px;height:36px;margin-bottom:18px;border:1px solid #cddbd0;border-radius:9px;color:var(--fern);font-size:20px}.benefit h3{font-size:22px;margin-bottom:10px}.benefit p{margin-bottom:0;color:var(--muted)}
.feature-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px;margin-top:96px}.feature-reverse .feature-copy{order:2}.feature-reverse .feature-image{order:1}.feature-copy{max-width:475px}.feature-copy h3{font-size:clamp(1.8rem,2.4vw,2.3rem);margin-bottom:18px}.feature-copy>p:not(.step-number){color:var(--muted);font-size:17px}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{position:relative;padding:0 0 14px 25px;color:var(--muted);font-size:15px}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--fern);font-weight:700}.feature-image{margin:0}.feature-image img{display:block;width:100%;max-height:560px;object-fit:contain;object-position:left center;border-radius:16px}.feature-image figcaption{margin-top:12px;font:400 13px/1.5 'Instrument Sans',sans-serif;color:var(--muted)}.feature-row+.button{margin-top:38px}
.process-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:42px 0 16px}.process-grid li>span,.access-steps li>span{display:block;font:400 24px/1 'IBM Plex Mono',monospace;color:var(--fern);margin-bottom:25px}.process-grid h3{font-size:20px;margin-bottom:8px}.process-grid p{color:var(--muted);font-size:15px}.process-note{margin:26px 0 0;color:var(--muted);font-size:14px}
.audience-grid{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:100px}.audience-photo{margin:0}.audience-photo img{display:block;width:100%;max-height:615px;object-fit:cover;border-radius:16px}.audience-photo figcaption{font:400 13px/1.5 'Instrument Sans',sans-serif;color:var(--muted);margin-top:12px}.audience-grid>div>p:not(.eyebrow){color:var(--muted);font-size:17px}.audience-items{margin-top:30px}.audience-items>div{padding:12px 0;border-top:1px solid #dce4dc}.audience-items h3{font-size:18px;margin-bottom:4px}.audience-items p{color:var(--muted);font-size:15px;margin-bottom:0}
.access-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin:50px 0 35px}.access-steps li>span{color:#f6b866;font-size:18px}.access-steps h3{font-size:21px}.access-steps p{color:#d8e4da;font-size:15px}.section-dark .button{margin-bottom:8px}
.faq-container{max-width:950px}.faq-list{margin-top:36px}.faq-list details{background:var(--soft);border-radius:12px;margin-bottom:10px;padding:0 20px}.faq-list summary{position:relative;list-style:none;cursor:pointer;padding:20px 36px 20px 0;font-weight:650}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:17px;font-size:24px;font-weight:400;line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list details[open]{background:#eaf0e9}.faq-list details p{max-width:800px;padding:0 20px 20px 0;margin:0;color:var(--muted)}
.final-cta{padding:80px 0}.final-cta .container{max-width:1200px}.final-cta h2{max-width:730px}.final-cta p:not(.microcopy){max-width:820px;font-size:18px}.final-cta .microcopy{margin:12px 0 0}
.footer{background:#fff;padding:68px 0 20px}.footer-grid{display:grid;grid-template-columns:2.2fr repeat(3,1fr);gap:48px}.footer-grid>div:first-child{max-width:330px}.footer-grid .brand img{width:115px;height:85px}.footer-tagline{font-weight:700;margin:2px 0 8px}.footer-grid p{color:var(--muted);font-size:14px}.footer-grid h2{font:700 14px/1.4 var(--font-body);letter-spacing:0}.footer-grid a:not(.brand){display:block;color:var(--muted);font-size:14px;margin:0 0 10px}.footer-bottom{border-top:1px solid var(--line);margin-top:50px;padding-top:18px;color:var(--muted);font-size:12px}
.simple-page{min-height:100vh;display:flex;flex-direction:column;background:var(--soft)}.simple-page main{flex:1}.simple-footer{text-align:center;font-size:12px;color:var(--muted);padding:20px}.back-link{display:inline-flex;min-height:44px;align-items:center;font-weight:600;font-size:14px}.form-page{padding:70px 0}.form-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start;margin-top:25px}.form-intro{padding-top:14px;max-width:485px}.form-intro h1{font-size:clamp(2.8rem,4.5vw,4rem);margin-bottom:24px}.form-intro p{color:var(--muted)}.form-intro .eyebrow{color:var(--fern)}.form-intro .form-lead{font-size:18px;line-height:1.6}.intro-list{list-style:none;padding:0;margin:38px 0 0}.intro-list li{position:relative;padding:0 0 22px 38px;font-size:18px}.intro-list li:before{content:'✓';position:absolute;left:0;top:2px;display:grid;place-items:center;width:22px;height:22px;border:2px solid var(--green);border-radius:50%;font-size:13px;color:var(--green)}.form-card{background:#fff;border-radius:16px;padding:34px}.form-card h2{font-size:28px;margin-bottom:14px}.form-card>p{color:var(--muted);font-size:16px;margin-bottom:30px}.field{margin-bottom:24px}.field label{display:block;font-weight:700;margin-bottom:8px}.field input,.field select,.portal-field input,.portal-field select,.portal-field textarea{display:block;width:100%;min-height:52px;padding:12px 14px;background:#fff;border:1px solid var(--control);border-radius:8px;color:var(--ink)}.field input::placeholder{color:var(--muted)}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%2319392a' stroke-width='1.5' d='m3 6 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:15px}.field .hint{margin:6px 0 0}.field-error{color:var(--error);font-size:14px;font-weight:600;margin:6px 0 0}.field [aria-invalid=true]{border-color:var(--error);border-width:2px}.form-alert{padding:15px 18px;margin-bottom:22px;border-radius:8px;border:1px solid var(--error);background:#fff0ee;color:#81212a}.form-alert[hidden],.field-error[hidden],.success-card[hidden],.form-layout[hidden]{display:none}.form-alert strong{display:block}.form-alert ul{margin:6px 0 0;padding-left:22px}.form-alert a{text-decoration:underline}.privacy-hint{font-size:14px;color:var(--muted);margin:34px 0 4px}.privacy-link{font-size:14px;margin:0 0 28px}.privacy-link a{text-decoration:underline}.privacy-link span{font-size:13px;color:var(--muted)}.submit-button{width:100%}.form-login{font-size:14px;margin:22px 0 0}.form-login a{text-decoration:underline}.success-card{max-width:740px;margin:45px auto;padding:45px;background:#fff;border-radius:16px}.success-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:22px;border:2px solid var(--green);border-radius:50%;color:var(--green);font-size:26px}.success-card h1{font-size:clamp(2.4rem,4vw,3.4rem)}.success-card h2{font-size:24px;margin-top:34px}.success-card li{margin-bottom:14px}.success-note{border-top:1px solid var(--line);padding-top:20px;font-size:14px;color:var(--muted)}.success-card .actions{margin-top:30px}
.legal-page{padding:70px 0 90px}.legal-container{max-width:820px}.legal-container h1{margin:30px 0}.legal-container h2{font-size:26px;margin:40px 0 12px}.legal-container p{color:var(--muted)}.draft-banner{background:#fff6e8;border:1px solid #e7bf89;border-radius:8px;padding:16px;color:#5b3910;margin:30px 0}.not-found{display:flex;align-items:center;padding:70px 0}.not-found .container{max-width:850px}.not-found h1{max-width:700px}.not-found p:not(.eyebrow){max-width:600px;font-size:18px;color:var(--muted)}.not-found .actions{margin-top:30px}
.portal-body{background:var(--soft)}.portal-header{background:#fff;border-bottom:1px solid var(--line)}.portal-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:80px}.portal-header-inner>div{display:flex;align-items:center;gap:18px}.portal-pill{font:600 13px/1.4 'Instrument Sans',sans-serif;padding:7px 10px;background:#eaf0e9;border-radius:99px;color:var(--green)}.portal-main{padding:65px 0 100px}.portal-login{max-width:500px;margin:40px auto;padding:38px;background:#fff;border-radius:16px}.portal-login h1{font-size:38px}.portal-login p{color:var(--muted)}.portal-field{margin-bottom:20px}.portal-field label{display:block;font-weight:700;margin-bottom:8px}.portal-field textarea{min-height:120px;resize:vertical}.portal-layout h1{margin-bottom:6px}.portal-layout>p{color:var(--muted)}.portal-toolbar{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:30px 0 20px}.portal-toolbar input{max-width:400px}.portal-toolbar select{max-width:220px}.portal-toolbar input,.portal-toolbar select{min-height:46px;padding:8px 12px;border:1px solid var(--control);border-radius:8px;background:#fff}.portal-table-wrap{overflow:auto;background:#fff;border-radius:12px;border:1px solid var(--line)}.portal-table{width:100%;border-collapse:collapse;min-width:800px}.portal-table th,.portal-table td{text-align:left;padding:17px 18px;border-bottom:1px solid var(--line);font-size:14px}.portal-table th{background:#eef1ed;font-weight:700}.portal-table tr:last-child td{border-bottom:0}.portal-table a{text-decoration:underline;font-weight:650}.portal-badge{display:inline-block;padding:5px 9px;border-radius:99px;background:#e8eee8;font-size:12px;font-weight:650}.portal-badge[data-status="IN_CONTACT"]{background:#e8f0fb;color:#264e7e}.portal-badge[data-status="APPROVED"]{background:#e4f2e8;color:#175528}.portal-badge[data-status="REJECTED"]{background:#fbeceb;color:#95252b}.portal-detail{background:#fff;padding:30px;border-radius:16px;border:1px solid var(--line);margin-top:25px}.portal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.portal-detail dt{font-size:13px;color:var(--muted)}.portal-detail dd{margin:0 0 15px;font-weight:600;overflow-wrap:anywhere}.portal-history{margin-top:26px;border-top:1px solid var(--line);padding-top:20px}.portal-history li{margin-bottom:12px}.portal-message{padding:15px;border-radius:8px;background:#fff6e8;border:1px solid #e7bf89;margin:20px 0}.portal-message[hidden],.portal-login[hidden],.portal-layout[hidden],.portal-detail[hidden]{display:none}.portal-logout{border:0;background:none;color:var(--green);font-weight:700;text-decoration:underline;min-height:44px}.portal-empty{padding:25px;color:var(--muted)}
@media(max-width:1050px){.desktop-nav{gap:14px}.desktop-nav a,.login-link{font-size:13px}.header-actions{gap:12px}.feature-row{gap:45px}.audience-grid{gap:50px}.footer-grid{gap:30px}}
@media(max-width:850px){.desktop-nav,.header-actions .login-link{display:none}.menu-toggle{display:flex}.hero-top{grid-template-columns:1fr;gap:12px}.hero h1{max-width:800px}.hero-intro{max-width:650px}.hero-visual{margin-top:20px}.benefit-grid{gap:12px}.benefit{padding:22px}.process-grid{grid-template-columns:repeat(2,1fr)}.form-layout{grid-template-columns:1fr;gap:35px}.form-intro{max-width:none}.form-intro .intro-list{display:flex;flex-wrap:wrap;gap:12px}.intro-list li{font-size:15px;padding-bottom:0}.footer-grid{grid-template-columns:2fr 1fr 1fr}}
@media(max-width:650px){.container{width:min(100% - 40px,520px)}.section{padding:60px 0}.site-header .header-inner{min-height:66px}.brand img{width:75px;height:54px}.header-actions{gap:8px}.button-small{min-height:40px;padding:8px 12px}.hero{padding:35px 0 28px}.hero h1{font-size:clamp(2.25rem,10vw,2.85rem)}.hero-intro>p:first-child{font-size:16px}.hero .actions{display:grid;grid-template-columns:1fr}.hero-visual{margin-top:25px}.hero-visual img{min-height:145px;object-fit:cover;object-position:center}.hero-points{gap:12px;display:grid;font-size:13px}.benefit-grid,.feature-row,.audience-grid,.access-steps,.footer-grid{grid-template-columns:1fr}.benefit-grid{margin-top:26px}.benefit{padding:24px}.feature-row{gap:22px;margin-top:58px}.feature-reverse .feature-copy,.feature-reverse .feature-image{order:initial}.feature-image img{max-height:none}.feature-copy h3{font-size:26px}.process-grid{grid-template-columns:1fr;gap:20px}.process-grid li>span{margin-bottom:10px}.process-grid h3{margin-bottom:4px}.process-grid p{margin-bottom:0}.audience-grid{gap:40px}.audience-photo img{max-height:390px}.audience-grid .audience-photo{order:2}.section-dark .section-lead{font-size:16px}.access-steps{gap:16px;margin:35px 0}.access-steps li>span{margin-bottom:7px}.access-steps h3{font-size:18px;margin-bottom:5px}.access-steps p{margin:0}.section-dark .button{width:100%}.faq-list details{padding:0 16px}.faq-list summary{font-size:15px}.final-cta .actions{display:grid}.final-cta .button{width:100%}.footer{padding:55px 0 20px}.footer-grid{gap:26px}.footer-grid>div:first-child{max-width:none}.footer-grid .brand img{width:100px;height:70px}.footer-grid a:not(.brand){margin-bottom:8px}.footer-bottom{margin-top:30px}.form-page,.legal-page{padding:30px 0 60px}.form-layout{margin-top:10px}.form-intro{padding:0}.form-intro h1{font-size:40px}.form-intro .form-lead{font-size:16px}.intro-list{display:none!important}.form-card{padding:24px 18px;margin-inline:-6px}.form-card h2{font-size:25px}.field{margin-bottom:20px}.success-card{padding:28px 22px;margin:24px -6px}.success-card h1{font-size:34px}.success-card .actions{display:grid}.success-card .button{width:100%}.legal-container h1{font-size:40px}.not-found{padding:65px 0}.not-found h1{font-size:40px}.not-found .actions{display:grid}.portal-main{padding:35px 0 80px}.portal-login{margin:20px auto;padding:25px 20px}.portal-login h1{font-size:32px}.portal-detail{padding:22px 18px}.portal-detail-grid{grid-template-columns:1fr}.portal-toolbar input,.portal-toolbar select{max-width:none;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.portal-pagination{display:flex;align-items:center;justify-content:flex-end;gap:15px;margin-top:18px}.portal-pagination .button{min-height:40px;padding:8px 14px}.portal-pagination span{font-size:14px;font-weight:650}@media(max-width:650px){.portal-pagination{justify-content:space-between;gap:8px}.portal-pagination .button{font-size:13px}}

@media(min-width:651px){.portal-toolbar input{width:400px}}

@media (prefers-reduced-motion: no-preference) {
  .fade-in-on-scroll { opacity: 0; transform: translateY(18px); transition: opacity 650ms ease, transform 650ms ease; }
  .fade-in-on-scroll.is-visible { opacity: 1; transform: translateY(0); }
}