:root{--ink:#17353d;--ink2:#244951;--paper:#faf9f5;--cream:#f1efdf;--pale:#e5eee9;--border:#dfe4dd;--accent:#739d84;--accent2:#f0c676;--muted:#687a7c;--white:#fff;--radius:18px;--shadow:0 22px 70px rgba(10,37,38,.07)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,"Noto Sans",Arial,"DejaVu Sans",sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1, h2, h3, h4, p{margin-top:0}
h1, h2, h3{letter-spacing:-.035em;line-height:1.14}
h1{font-size:clamp(42px,5.8vw,83px);font-weight:700}
h2{font-size:clamp(30px,3vw,48px);font-weight:680}
h3{font-size:22px}
a{color:inherit;text-decoration:none}
button, input, textarea, select{font:inherit}
button{cursor:pointer}
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{outline:3px solid var(--accent2);outline-offset:3px}
p{line-height:1.75}
img{max-width:100%}
.container{width:min(1200px,calc(100% - 48px));margin:0 auto}
.narrow{max-width:740px}
.skip{position:absolute;top:-100px;left:0;background:white;z-index:1000;padding:12px}
.skip:focus{top:0}
.visually-hidden{position:absolute;overflow:hidden;width:1px;height:1px;white-space:nowrap;clip:rect(0,0,0,0)}
.header{background:#fffdf8;border-bottom:1px solid var(--border);position:relative;z-index:10}
.text-link:hover{color:#487765}
.btn-dark:hover{background:#315660}
.mobile-links{display:flex;flex-direction:column;padding:15px 0}
.mobile-links a{padding:8px 0;border-bottom:1px solid #eee}
.hero{background:linear-gradient(120deg,#f9f7ed,#eff2e6 85%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:680px;align-items:center;gap:64px;padding-top:40px;padding-bottom:55px}
.hero-content{padding:30px 0}
.eyebrow{font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.21em;color:#4d7e6a;display:flex;align-items:center;gap:14px}
.hero h1{max-width:720px;margin:25px 0 27px;line-height:1.05}
.hero-desc{font-size:17px;color:#53686b;max-width:520px}
.button-row{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}
.btn{display:inline-flex;gap:26px;align-items:center;justify-content:center;min-height:50px;padding:13px 23px;border-radius:9px;border:1px solid transparent;font-size:13px;font-weight:730;line-height:1.3;transition:.2s}
.btn-dark{background:var(--ink);color:#fff}
.btn-outline{border:1px solid #93aaa5;background:transparent;color:var(--ink)}
.btn-outline:hover{background:#e3eee6}
.btn-light{background:#f8f5e6;color:var(--ink)}
.hero-quote{display:flex;gap:16px;max-width:435px;margin-top:42px;border-top:1px solid #bacac3;padding-top:20px}
.hero-quote p{font-size:13px;font-style:italic;color:#677b77}
.hero-art{aspect-ratio:0.96;position:relative;border-radius:220px 220px 26px 26px;overflow:hidden;background:linear-gradient(135deg,#c9ded2,#6a9785 80%);display:flex;align-items:center;justify-content:center;box-shadow:0 28px 70px rgba(20,60,61,.18)}
.strip{background:#1e4549;color:#dae8df}
.section{padding:92px 0}
.section.compact{padding-top:55px}
.section-header{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:38px}
.section-header p:not(.eyebrow){max-width:350px;color:var(--muted);font-size:14px}
.section-header h2{margin-bottom:0}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.aid-card{border:1px solid var(--border);border-radius:16px;padding:32px;background:#fff;display:flex;flex-direction:column;min-height:310px}
.aid-card:hover{box-shadow:var(--shadow)}
.aid-card h3{margin:0 0 17px}
.aid-card p{color:#64767a;font-size:14px}
.text-link{display:inline-block;color:#285f57;font-size:13px;font-weight:740}
.closing h2 em{font-family:Georgia,serif;font-weight:400;color:#a4c7ad}
.card-meta, .muted{font-size:12px;color:#7c8787}
.closing{background:#d9e7db;padding:100px 0;text-align:center}
.closing h2{max-width:800px;margin:18px auto}
.closing p:not(.eyebrow){max-width:590px;margin:0 auto}
.closing .eyebrow{justify-content:center}
.footer{background:#112f37;color:#d7e6dd;padding:65px 0 24px}
.page-title{font-size:clamp(36px,4.5vw,59px);line-height:1.09;margin:12px 0 23px}
.section>.container>p{color:#607479;max-width:750px}
.subheading{font-size:28px;margin:50px 0 25px}
.filters{background:#f4f6ef;border:1px solid #e0e5dc;border-radius:14px;padding:20px;display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.filters label{min-width:140px;flex:1;font-size:12px;font-weight:730;color:#56716c}
.filters input, .filters select{margin-top:7px}
.filters .btn{height:46px}
.cards-after{margin-top:28px}
.status-tag{display:inline-block;color:#316a57;background:#e4efe5;border-radius:100px;font-size:10px;font-weight:800;letter-spacing:.05em;padding:5px 10px;width:max-content}
.form-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:38px;margin:25px 0;box-shadow:0 16px 30px #102f3206;display:flex;flex-direction:column;gap:19px}
.form-card label, .filters label{display:block}
.form-card label:not(.check){font-size:13px;font-weight:730;color:#3e595b}
.form-card input:not([type=checkbox]), .form-card select, .form-card textarea, .filters input, .filters select, .admin-action select{display:block;width:100%;padding:12px 15px;border:1px solid #ced8d0;border-radius:8px;background:#fbfcf8;color:var(--ink);min-width:0;min-height:45px}
.form-card input:not([type=checkbox]), .form-card select, .form-card textarea{margin-top:7px}
.form-card textarea{resize:vertical}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.check{display:flex!important;gap:12px;align-items:flex-start;font-weight:400!important;font-size:13px}
.check input{margin-top:5px;accent-color:var(--ink)}
.form-note{background:#ecf2ed;border-radius:9px;font-size:12px;color:#4d6566;padding:13px 16px;margin:0}
.honeypot{position:absolute;left:-9999px;opacity:0}
.notice{background:#e7efe6;border:1px solid #d6e4d9;border-radius:10px;padding:18px;color:#305d53;margin:24px 0}
.list-stack{display:flex;flex-direction:column;gap:12px}
.list-item{padding:20px 24px;border-radius:12px;background:#fff;border:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.list-item p{font-size:12px;margin:5px 0}
.linked:hover{border-color:#8cba9f}
.inline-actions{display:flex;gap:7px;flex-wrap:wrap}
.small-button{border:1px solid #c8d8cc;background:#f6faf5;color:var(--ink);border-radius:7px;padding:7px 10px;font-size:12px}
.logout-form{margin-top:35px}
.logout-form button{background:none;border:0;padding:0}
.detail-info{background:#fff;border:1px solid var(--border);padding:28px;border-radius:16px;margin:26px 0}
.detail-info p{margin-bottom:13px}
.detail-info p:last-child{margin-bottom:0}
.detail-chips{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.detail-kicker{margin-top:40px}
.safe-bottom{margin-top:40px;border-top:1px solid var(--border);padding-top:20px}
.empty-panel{background:#f0f3ec;padding:30px;border-radius:12px;border:1px dashed #c7d4ca;color:#607572;grid-column:1/-1}
.aid-hero{background:linear-gradient(130deg,#d4e9d5,#f3f4df);padding:88px 0 65px}
.aid-hero h1{max-width:900px}
.aid-hero p:not(.eyebrow){max-width:650px}
.aid-card{min-height:265px}
.card-top{display:flex;justify-content:space-between;margin-bottom:24px}
.card-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;margin-top:auto}
.aid-card .text-link{border-top:1px solid var(--border);padding-top:14px}
.lead{font-size:20px;color:#556e70}
.source-note{margin-top:35px;border-top:1px solid var(--border);padding-top:18px}
.source-note a{text-decoration:underline}
.success-illustration{font-size:40px;display:flex;align-items:center;justify-content:center;width:85px;height:85px;border-radius:50%;background:#d8ebdb;color:#42775e;margin-bottom:20px}
.site-admin{background:#f2f5f2}
.site-admin main{min-height:100vh}
.admin-layout{display:grid;grid-template-columns:275px 1fr;min-height:100vh}
.admin-sidebar{background:#15363e;color:#f4f6e9;padding:30px 20px;position:sticky;top:0;height:100vh;overflow:auto}
.admin-main{padding:35px max(22px,4vw);overflow:hidden}
.admin-top{display:flex;justify-content:space-between;border-bottom:1px solid #d7e1dc;margin-bottom:35px}
.admin-top .eyebrow{font-size:10px}
.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
.stat{border:1px solid #dfe6dd;background:#fff;border-radius:13px;padding:27px}
.stat p{color:#617775;font-size:12px}
.stat strong{font-size:42px;letter-spacing:-.05em}
.admin-tip{background:#e4eee7;padding:24px;margin-top:35px;border-radius:12px}
.admin-tip p{font-size:13px;margin:8px 0 0}
.admin-table-wrap{overflow:auto;background:#fff;border:1px solid #e3e8e5;border-radius:15px;margin-top:25px}
.admin-table{border-collapse:collapse;min-width:800px;width:100%;font-size:13px}
.admin-table th{background:#eff4ee;text-align:left;font-size:11px;padding:16px;color:#566963}
.admin-table td{padding:15px;border-bottom:1px solid #ecf0eb;vertical-align:top;max-width:400px;word-wrap:break-word}
.admin-table small{color:#81938c}
.admin-table details{max-width:250px}
.admin-table details p{white-space:pre-wrap}
.admin-action{margin-top:9px;display:flex;gap:6px}
.admin-action select{width:110px;min-height:35px;padding:5px}
.admin-action button{font-size:11px;background:#24534b;color:#fff;border:0;padding:8px;border-radius:6px}
@media (max-width:1160px){.hero-grid{gap:30px}}
@media (max-width:950px){.hero-grid{grid-template-columns:1fr 1fr;min-height:550px}
.hero-art{aspect-ratio:.82}
.grid-3{grid-template-columns:repeat(2,1fr)}
.admin-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:680px){.container{width:min(100% - 32px,1200px)}
.hero-grid{grid-template-columns:1fr;gap:14px;padding-top:25px;padding-bottom:40px}
.hero h1{font-size:clamp(41px,9.5vw,60px)}
.hero-art{max-height:370px;min-height:300px;aspect-ratio:1.5;border-radius:100px 100px 14px 14px}
.hero-content{padding:0}
.hero-quote{margin-top:20px}
.section, .closing{padding:64px 0}
.section-header{align-items:start;flex-direction:column;gap:10px}
.grid-3{grid-template-columns:1fr;gap:17px}
.form-card{padding:22px}
.form-grid{grid-template-columns:1fr}
.filters{flex-direction:column;align-items:stretch}
.filters label{width:100%}
.filters button{width:100%}
.list-item{align-items:flex-start;flex-direction:column}
.admin-layout{grid-template-columns:1fr}
.admin-sidebar{position:static;height:auto;padding:18px}
.admin-main{padding:22px}
.admin-grid{grid-template-columns:1fr 1fr;gap:10px}
.stat{padding:16px}
.stat strong{font-size:30px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.brand-logo img{display:block;height:46px;width:auto}
.footer-logo img{display:block;width:150px;height:auto}
@media (max-width:760px){.brand-logo img{height:36px}
.footer-logo img{width:124px}}
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-latin-wght-normal.woff2) format("woff2");unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}
@font-face{font-family:"Lora";font-style:normal;font-display:swap;font-weight:400 700;src:url(fonts/lora-latin-wght-normal.woff2) format("woff2");unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lora";font-style:normal;font-display:swap;font-weight:400 700;src:url(fonts/lora-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lora";font-style:normal;font-display:swap;font-weight:400 700;src:url(fonts/lora-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}
@font-face{font-family:"Lora";font-style:italic;font-display:swap;font-weight:400 700;src:url(fonts/lora-latin-wght-italic.woff2) format("woff2");unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lora";font-style:italic;font-display:swap;font-weight:400 700;src:url(fonts/lora-latin-ext-wght-italic.woff2) format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lora";font-style:italic;font-display:swap;font-weight:400 700;src:url(fonts/lora-cyrillic-wght-italic.woff2) format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}
:root{--green-950:#0F2A21; --green-900:#143A2D; --green-800:#1A4536; --green-700:#245A47; --green-600:#2F6E58;
  --green-100:#E3ECE6; --green-50:#F1F5F2;
  --terra:#C75136; --terra-700:#A9412A; --terra-300:#E9876C; --terra-100:#F7E4DC;
  --cream:#FBF7EF; --sand:#F4ECDF; --sand-2:#EADFCC; --gold:#B88A3B;
  --text:#1D2A25; --text-2:#46554E; --text-3:#6A776F; --line:#E2D9C8; --line-2:#D3C7B2; --white:#fff;
  --serif:"Lora",Georgia,"Times New Roman",serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --r-sm:3px; --r:4px; --r-lg:4px;
  --shadow:0 1px 2px rgba(20,58,45,.06),0 10px 30px rgba(20,58,45,.08);
  --wrap:1220px; --gutter:clamp(16px,4vw,40px);
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s5:48px; --s6:72px; --s7:clamp(64px,9vw,120px);
  
  --ink:var(--green-800); --ink2:var(--green-700); --paper:var(--cream); --pale:var(--green-100);
  --border:var(--line); --accent:var(--terra); --accent2:var(--gold); --muted:var(--text-3);}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1, h2, h3, h4{font-family:var(--serif);color:var(--green-900);font-weight:600;line-height:1.2;margin:0 0 .55em}
h1{font-size:clamp(34px,4.4vw,56px);line-height:1.1}
h2{font-size:clamp(28px,3vw,38px)}
h3{font-size:20px;line-height:1.35}
p{margin:0 0 1em}
a{color:var(--green-800)}
img{max-width:100%;display:block}
.container{width:min(var(--wrap),100% - 2*var(--gutter));margin-inline:auto}
:focus-visible{outline:3px solid var(--terra);outline-offset:2px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--green-900);color:#fff;padding:10px 16px;text-decoration:none;font-weight:600}
.skip:focus{top:12px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;border-radius:var(--r);border:2px solid transparent;font:600 16px/1.2 var(--sans);text-decoration:none;cursor:pointer}
.btn-sm{min-height:40px;padding:8px 16px;font-size:15px}
.btn-primary, .btn-dark{background:var(--green-800);color:#fff}
.btn-primary:hover, .btn-dark:hover{background:var(--green-950)}
.btn-accent{background:var(--terra);color:#fff}
.btn-accent:hover{background:var(--terra-700)}
.btn-light{background:#fff;color:var(--green-900);border-color:#fff}
.btn-light:hover{background:var(--cream)}
.btn-outline{background:#fff;color:var(--green-800);border-color:var(--green-800)}
.btn-outline:hover{background:var(--green-50)}
.btn-ghost{background:#fff;color:var(--green-800);border-color:var(--line-2)}
.btn-ghost:hover{border-color:var(--green-800)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.more{font-weight:600;color:var(--green-800);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.more:hover{color:var(--terra-700)}
.more::after{content:" ›"}
.utility{background:var(--green-900);color:#D6E4DB;font-size:14px}
.utility-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:40px}
.utility a{color:#fff;text-decoration:none}
.utility a:hover{text-decoration:underline}
.utility-right{display:flex;align-items:center;gap:22px}
.lang, .mobile-lang, .footer-lang{display:flex;gap:2px}
.lang a, .mobile-lang a, .footer-lang a{padding:3px 7px;font-weight:600;font-size:13px;text-decoration:none}
.lang a[aria-current]{background:#fff;color:var(--green-900)}
.masthead{background:#fff;border-bottom:3px solid var(--green-800);position:relative;z-index:50}
.masthead-inner{display:flex;align-items:center;gap:32px;min-height:88px}
.brand-logo{flex:none;display:block}
.brand-logo img{height:50px;width:auto}
.primary-nav{display:flex;margin-left:auto}
.primary-nav a{padding:10px 14px;color:var(--green-950);font-weight:600;font-size:16px;text-decoration:none}
.primary-nav a:hover{color:var(--terra-700);text-decoration:underline;text-underline-offset:6px}
.masthead-actions{display:flex;align-items:center;gap:10px}
.menu-toggle{display:none;width:46px;height:46px;border:2px solid var(--green-800);border-radius:var(--r);background:#fff;cursor:pointer;align-items:center;justify-content:center}
.menu-icon, .menu-icon::before, .menu-icon::after{display:block;width:20px;height:2px;background:var(--green-900);position:relative}
.menu-icon::before, .menu-icon::after{content:"";position:absolute;left:0}
.menu-icon::before{top:-6px}
.menu-icon::after{top:6px}
.menu-toggle[aria-expanded=true] .menu-icon{background:transparent}
.menu-toggle[aria-expanded=true] .menu-icon::before{transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-icon::after{transform:translateY(-6px) rotate(-45deg)}
.mobile-panel{border-top:1px solid var(--line);background:#fff;padding:8px 0 24px}
.mobile-links{display:grid}
.mobile-links a{padding:14px 0;border-bottom:1px solid var(--line);font-size:18px;font-weight:600;color:var(--green-950);text-decoration:none}
.mobile-lang{margin-top:18px}
.mobile-lang a{border:1px solid var(--line-2);color:var(--green-900);padding:8px 14px;margin-right:6px}
.mobile-lang a[aria-current]{background:var(--green-800);color:#fff;border-color:var(--green-800)}
.hero{position:relative;background:#fff;padding-bottom:40px}
.hero-media{display:block;position:relative;height:clamp(420px,68vh,720px);overflow:hidden;background:#222}
.hero-media img, .hero-media video{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.hero .container{position:relative}
.hero-box{position:relative;margin-top:-190px;max-width:640px;background:var(--green-800);color:#E8F0EB;padding:36px 40px 40px;border-top:6px solid var(--terra)}
.hero-box h1{color:#fff;margin-bottom:14px}
.hero-box p{font-size:18px;margin:0}
.hero-plain .hero-box{margin-top:0}
.media-toggle{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;background:rgba(0,0,0,.6);color:#fff;border:0;border-radius:var(--r);padding:8px 14px;font:600 14px var(--sans);cursor:pointer}
.media-toggle-icon{width:11px;height:12px;display:inline-block;background:linear-gradient(90deg,#fff 0 35%,transparent 35% 65%,#fff 65%)}
.media-toggle[aria-pressed=true] .media-toggle-icon{background:#fff;clip-path:polygon(0 0,100% 50%,0 100%)}
.quicklinks{background:#fff;padding-bottom:8px}
.quicklinks ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quicklinks li + li{border-left:1px solid var(--line)}
.quicklinks a{display:block;padding:20px 22px;text-decoration:none;height:100%}
.quicklinks li:first-child a{padding-left:0}
.quicklinks strong{display:block;font:600 18px/1.3 var(--serif);color:var(--green-900)}
.quicklinks strong::after{content:" ›";color:var(--terra)}
.quicklinks span{display:block;color:var(--text-3);font-size:15px;margin-top:2px}
.quicklinks a:hover strong{color:var(--terra-700);text-decoration:underline}
.section{padding:clamp(56px,7vw,96px) 0}
.section-alt{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-green{background:var(--green-800);color:#E3ECE6}
.section-green h2, .section-green h3{color:#fff}
.section-green a:not(.btn){color:#fff}
.section > .container > h2, .head-row{margin-bottom:32px}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:start}
.col-text > :last-child{margin-bottom:0}
.intro{font-size:19px;color:var(--text-2)}
.section-green .intro{color:#E3ECE6}
.note{font-size:14px;color:var(--text-3)}
.section-green .note{color:#B9CEC2}
.head-row{display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.head-row h2{margin:0}
.photo{margin:0}
.photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.facts{width:100%;border-collapse:collapse;margin:24px 0;font-size:16px}
.facts caption{text-align:left;font-weight:700;color:var(--green-900);padding-bottom:8px}
.facts th, .facts td{text-align:left;vertical-align:top;padding:10px 0;border-top:1px solid var(--line)}
.facts tr:last-child th, .facts tr:last-child td{border-bottom:1px solid var(--line)}
.facts th{width:32%;font-weight:600;color:var(--green-900);padding-right:16px}
.three{display:grid;grid-template-columns:repeat(3,1fr);border-top:3px solid var(--green-800)}
.three > div{padding:24px 28px 8px 0}
.three > div + div{padding-left:28px;border-left:1px solid var(--line)}
.three p{color:var(--text-2)}
.edu-detail{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);margin-top:56px}
.grades{margin:0}
.grades div{display:grid;grid-template-columns:42% 1fr;gap:16px;padding:12px 0;border-top:1px solid var(--line)}
.grades div:last-child{border-bottom:1px solid var(--line)}
.grades dt{font-weight:600;color:var(--green-900)}
.grades dd{margin:0;color:var(--text-2)}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{padding:6px 12px;border:1px solid var(--line-2);border-radius:var(--r-sm);font-size:15px;background:#fff}
.list{margin:0 0 16px;padding-left:20px}
.list li{margin:6px 0;padding-left:4px}
.list li::marker{color:var(--terra)}
.section-green .list li::marker{color:var(--terra-300)}
.list-2{columns:2;column-gap:32px}
.notice-box{border-left:4px solid var(--terra);background:#fff;padding:12px 16px;font-weight:600;color:var(--green-950)}
.link-list{list-style:none;padding:0;margin:0 0 16px}
.link-list li{padding:10px 0;border-top:1px solid var(--line)}
.link-list span{display:block;font-size:14px;color:var(--text-3)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;counter-reset:step}
.steps li{counter-increment:step;border-top:3px solid var(--green-800);padding-top:18px}
.steps li::before{content:counter(step) ".";display:block;font:600 30px/1 var(--serif);color:var(--terra);margin-bottom:12px}
.steps p{color:var(--text-2);margin:0;font-size:16px}
.news-list{list-style:none;margin:0;padding:0}
.news-list li{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:14px 0;border-top:1px solid var(--line)}
.news-list time{color:var(--text-3);font-size:15px}
.news-list a{font-weight:600;text-decoration:none}
.news-list a:hover{text-decoration:underline}
.empty-line{color:var(--text-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:0}
.faq-wrap{display:grid;grid-template-columns:1fr 2fr;gap:clamp(32px,5vw,72px)}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:16px 32px 16px 0;position:relative;font-weight:600;font-size:17px;color:var(--green-900);list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:13px;font-size:22px;color:var(--terra)}
.faq details[open] summary::after{content:"−"}
.faq details p{color:var(--text-2);margin:0;padding:0 32px 18px 0}
.contact-band{background:var(--cream);border-top:1px solid var(--line);padding:48px 0}
.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:32px}
.contact-inner h2{margin-bottom:8px}
.contact-inner p{margin:0;max-width:60ch;color:var(--text-2)}
.contact-actions{display:flex;align-items:center;gap:20px;flex:none}
.contact-mail{font-weight:700;font-size:18px}
.site-footer{background:var(--green-950);color:#BFD1C6;padding:56px 0 24px;font-size:15px}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:32px}
.footer-logo img{width:130px;height:auto}
.footer-about p{max-width:36ch}
.footer-mail{color:#fff;font-weight:600}
.footer-small{font-size:13px;color:#93A99C}
.footer-col{display:flex;flex-direction:column;gap:9px}
.footer-col h2{font:700 15px/1.3 var(--sans);color:#fff;margin:4px 0 6px}
.footer-col a{color:#BFD1C6;text-decoration:none}
.site-footer a:hover{color:#fff;text-decoration:underline}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#93A99C}
.footer-lang a{color:#BFD1C6}
.footer-lang a[aria-current]{color:var(--green-950);background:#fff}
.eyebrow{color:var(--terra-700)!important}
.form-card, .aid-card, .empty-panel, .notice{border-radius:var(--r);box-shadow:none!important}
.btn{border-radius:var(--r)!important}
input, select, textarea{font:inherit;border-radius:var(--r-sm)!important}
@media (max-width:1100px){.primary-nav{display:none}
.menu-toggle{display:inline-flex}
.masthead-actions{margin-left:auto}
.steps{grid-template-columns:repeat(2,1fr)}
.footer-grid{grid-template-columns:1fr 1fr 1fr}
.footer-about{grid-column:1/-1}}
@media (max-width:860px){.cols, .edu-detail, .faq-wrap{grid-template-columns:1fr}
.cols-reverse .photo{order:2}
.three{grid-template-columns:1fr}
.three > div, .three > div + div{padding:20px 0;border-left:0}
.three > div + div{border-top:1px solid var(--line)}
.quicklinks ul{grid-template-columns:1fr 1fr}
.quicklinks li{border-bottom:1px solid var(--line)}
.quicklinks li:nth-child(odd) a{padding-left:0}
.quicklinks li:nth-child(3){border-left:0}
.quicklinks ul{border-bottom:0}
.contact-inner{flex-direction:column;align-items:flex-start}
.utility-tagline{display:none}
.utility-inner{justify-content:flex-end}
.hero-box{margin-top:-80px}}
@media (max-width:640px){body{font-size:16px}
.masthead-inner{min-height:70px;gap:12px}
.brand-logo img{height:36px}
.masthead-actions .btn-ghost{display:none}
.utility .lang{display:none}
.hero-media{height:280px}
.hero .container{width:100%}
.hero-box{margin-top:0;padding:28px var(--gutter) 32px;border-top-width:5px}
.hero{padding-bottom:0}
.hero-box .btn{flex:1 1 100%}
.quicklinks{padding-top:8px}
.quicklinks ul{grid-template-columns:1fr}
.quicklinks li + li{border-left:0}
.quicklinks a, .quicklinks li:nth-child(odd) a{padding:16px 0}
.steps{grid-template-columns:1fr}
.list-2{columns:1}
.news-list li{grid-template-columns:1fr;gap:2px}
.grades div{grid-template-columns:1fr;gap:2px}
.footer-grid{grid-template-columns:1fr 1fr}
.footer-bottom{flex-direction:column;align-items:flex-start}
.contact-actions{flex-direction:column;align-items:flex-start}}
@media (prefers-reduced-motion:reduce){*, *::before, *::after{transition:none!important;animation:none!important}}
.page-head{background:var(--cream);border-bottom:1px solid var(--line);padding:28px 0 40px}
.crumbs ol{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;font-size:14px;color:var(--text-3)}
.crumbs li + li::before{content:"›";margin:0 8px;color:var(--text-3)}
.crumbs a{color:var(--green-800)}
.page-head h1{margin:0 0 12px}
.page-lead{font-size:19px;color:var(--text-2);max-width:68ch;margin:0}
.page-body{display:grid;grid-template-columns:240px 1fr;gap:clamp(32px,5vw,72px);padding:48px 0 80px;align-items:start}
.side-nav{border-top:3px solid var(--green-800);padding-top:14px;position:sticky;top:16px}
.side-nav h2{font:700 14px/1.3 var(--sans);color:var(--text-3);margin:0 0 8px}
.side-nav ul{list-style:none;margin:0;padding:0}
.side-nav a{display:block;padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--green-900);font-weight:500}
.side-nav a:hover{color:var(--terra-700)}
.side-nav a[aria-current]{font-weight:700;color:var(--terra-700)}
.prose{max-width:72ch}
.prose section{margin-bottom:36px}
.prose h2{font-size:26px;margin-bottom:12px}
.prose ul, .prose ol{padding-left:22px;margin:0 0 1em}
.prose li{margin:6px 0}
.prose li::marker{color:var(--terra)}
.prose ol li::marker{font-weight:700}
.prose .faq{margin-top:4px}
.prose-photo{margin-bottom:36px}
.contact-big{font-size:22px;font-weight:700}
.updated{font-size:14px;color:var(--text-3);border-top:1px solid var(--line);padding-top:12px;margin-top:40px}
.faq-more{margin-top:20px}
.eyebrow{display:none!important}
.section .container.narrow{max-width:760px}
.page-title{font-family:var(--serif);font-size:clamp(32px,4vw,46px)!important;color:var(--green-900);letter-spacing:0!important;margin:0 0 14px!important}
.section.compact{padding:40px 0 72px}
.form-card{background:#fff;border:1px solid var(--line)!important;padding:28px!important}
.form-card label, .filters label{font-weight:600;color:var(--green-950)}
.form-card input, .form-card select, .form-card textarea, .filters input, .filters select{border:1px solid var(--line-2)!important;background:#fff!important;min-height:44px}
.form-card .btn, .filters .btn{border-radius:var(--r)!important}
.notice{background:var(--green-50)!important;border:1px solid var(--green-100)!important;border-radius:var(--r)!important}
.aid-card{background:#fff!important;border:1px solid var(--line)!important}
.empty-panel{background:var(--cream)!important;border:1px solid var(--line);border-style:solid!important}
.text-link{color:var(--green-800);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.success-illustration{display:none}
@media (max-width:860px){.page-body{grid-template-columns:1fr}
.side-nav{position:static;order:2}}
.primary-nav a{padding:10px 10px;font-size:15.5px}
.main-col{min-width:0}
.main-col > h2{font-size:26px}
.mt{margin-top:40px}
.muted-inline{font-family:var(--sans);font-size:16px;font-weight:500;color:var(--text-3)}
.subject-list, .resource-list, .event-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.subject-list li, .resource-list li{padding:18px 0;border-bottom:1px solid var(--line)}
.subject-list a, .resource-list a{font:600 20px/1.3 var(--serif);color:var(--green-900);text-decoration:none}
.subject-list a:hover, .resource-list a:hover{color:var(--terra-700);text-decoration:underline}
.subject-list p, .resource-list p{margin:6px 0 0;color:var(--text-2)}
.meta{font-size:14px;color:var(--text-3)!important}
.band-block{margin-bottom:36px}
.band-block h2{font-size:24px}
.grade-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.grade-grid a{display:block;padding:14px 16px;border:1px solid var(--line-2);border-radius:var(--r);text-decoration:none;color:var(--green-900);background:#fff}
.grade-grid a:hover{border-color:var(--green-800);background:var(--green-50)}
.tags a{text-decoration:none;color:var(--green-900)}
.tags a:hover{text-decoration:underline}
.pager{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:28px 0}
.pager a{font-weight:600}
.filter-bar{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:12px;align-items:end;background:var(--cream);border:1px solid var(--line);padding:16px;margin-bottom:24px}
.filter-bar label{display:grid;gap:6px;font-size:14px;font-weight:600;color:var(--green-950);min-width:0}
.filter-bar input, .filter-bar select{width:100%;min-height:44px;border:1px solid var(--line-2);border-radius:var(--r-sm);padding:8px 10px;background:#fff;font:inherit;font-size:15px}
.filter-actions{grid-column:1/-1;display:flex;gap:16px;align-items:center}
.event-list li{display:grid;grid-template-columns:170px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.event-list time{font-weight:600;color:var(--green-800);font-variant-numeric:tabular-nums}
.event-list a{font:600 19px/1.3 var(--serif);color:var(--green-900);text-decoration:none}
.event-list span{display:block;font-size:14px;color:var(--text-3)}
.event-list.past a, .event-list.past time{color:var(--text-3)}
.badge{display:inline-block;vertical-align:middle;font:600 13px/1 var(--sans);padding:6px 9px;border-radius:var(--r-sm);border:1px solid}
.badge-pending{background:#FFF6DA;border-color:#EFDFA8;color:#4A3D12}
.badge-approved{background:var(--green-50);border-color:var(--green-100);color:var(--green-800)}
.badge-needs_info, .badge-needs_changes{background:var(--terra-100);border-color:#EFC7B8;color:var(--terra-700)}
.badge-rejected{background:#F3E3E3;border-color:#E2C2C2;color:#8A2B2B}
.btn-danger{background:#8A2B2B;color:#fff;border-color:#8A2B2B}
.btn-danger:hover{background:#6E2020}
.inline-form{display:inline}
.link-button{background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--green-800);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.link-button:hover{color:var(--terra-700)}
.account-block{margin:28px 0}
.account-block h2{font-size:24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.list-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.list-item p{margin:4px 0 0;color:var(--text-2);font-size:15px}
.review-form{display:grid;gap:6px;margin-top:8px}
.review-form input, .review-form select{font-size:13px;padding:5px 7px}
@media (max-width:1240px){.primary-nav{display:none}
.menu-toggle{display:inline-flex}
.masthead-actions{margin-left:auto}}
@media (max-width:860px){.filter-bar{grid-template-columns:1fr 1fr}
.filter-bar label:first-child{grid-column:1/-1}
.event-list li{grid-template-columns:1fr;gap:4px}}
fieldset{border:0;padding:0;margin:0 0 18px}
fieldset legend{font-weight:600;color:var(--green-950);margin-bottom:8px;padding:0}
.check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 16px}
.check-grid legend{grid-column:1/-1}
.slot-grid{overflow-x:auto}
.slot-grid table{border-collapse:collapse;min-width:420px}
.slot-grid th, .slot-grid td{padding:6px 8px;text-align:center;font-size:14px;border-bottom:1px solid var(--line)}
.slot-grid tbody th{text-align:left;font-weight:600;white-space:nowrap}
.slot-grid input{width:20px;height:20px;min-height:0;margin:0}
.consent{background:var(--cream,#FBF7EF);border:1px solid var(--line)!important;padding:14px 16px!important;border-radius:var(--r)}
.badge{display:inline-block;padding:2px 8px;border:1px solid var(--line);border-radius:var(--r);font-size:13px;font-weight:600;line-height:1.5;vertical-align:middle;white-space:nowrap}
.badge-ls-pending, .badge-ss-proposed, .badge-ds-submitted{background:#FFF6DA;border-color:#EFDFA8;color:#4A3D12}
.badge-ls-accepted, .badge-ls-scheduled, .badge-ss-confirmed{background:#E6EEF6;border-color:#C9D7E6;color:#1F3A5A}
.badge-ls-completed, .badge-ss-done, .badge-ds-verified{background:var(--green-50);border-color:var(--green-100);color:var(--green-800)}
.badge-ls-needs_info{background:var(--terra-100);border-color:#EFC7B8;color:var(--terra-700)}
.badge-ls-closed, .badge-ls-declined, .badge-ss-cancelled, .badge-ds-rejected{background:#EFEDE8;border-color:#DCD8CF;color:#555}
.safety-row{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;margin-top:28px;padding-top:16px;border-top:1px solid var(--line);font-size:15px}
.safety-row a, .safety-row .link-button{color:var(--text-2)}
.verified-note{border-left:4px solid var(--green-800);background:var(--green-50);padding:10px 14px;margin:0 0 20px}
.urgent-box{border-left:4px solid var(--terra-700)}
.session{padding:14px 0;border-bottom:1px solid var(--line)}
.session p{margin:6px 0 0}
.session details{margin-top:8px}
.session-head{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.compact-form{padding:16px!important;margin-top:10px}
.inline-actions{display:flex;gap:8px;margin-top:8px}
.cal-list{list-style:none;padding:0;margin:0 0 12px}
.cal-list li{padding:8px 0;border-bottom:1px solid var(--line)}
.honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.prio{font-weight:700}
.prio-urgent{color:#A12A1B}
.prio-high{color:var(--terra-700)}
.doc-row{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}
a.list-item:hover strong{text-decoration:underline}
fieldset{min-width:0}
.slot-grid table{min-width:0;width:100%}
@media (max-width:520px){.slot-grid th, .slot-grid td{padding:5px 2px;font-size:12px}
.slot-grid input{width:18px;height:18px}}
.admin-sidebar{min-height:100vh}
.result-box{border-left:4px solid var(--green-800);background:var(--green-50);padding:14px 18px;margin:0 0 20px;font-size:18px}
.quiz-form ol, .quiz-review{padding-left:22px}
.quiz-form li, .quiz-review li{margin:0 0 22px}
.quiz-form legend{font-weight:600;font-size:17px;margin-bottom:8px}
.quiz-review li.ok{border-left:3px solid var(--green-800);padding-left:12px}
.quiz-review li.wrong{border-left:3px solid var(--terra-700);padding-left:12px}
.report-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:24px 0}
.report-stats div{border:1px solid var(--line);padding:14px;background:#fff}
.report-stats dt{font-size:14px;color:var(--text-2)}
.report-stats dd{margin:4px 0 0;font-size:26px;font-family:Lora,Georgia,serif;color:var(--green-950)}
.news-list p{margin:4px 0 0}
.prose.wide{max-width:none}
.lang-tabs fieldset{border:1px solid var(--line)!important;padding:16px!important;margin-bottom:16px}
.text-row{border-bottom:1px solid var(--line);padding:14px 0}
.text-row code{font-size:13px;color:var(--text-2)}
@media print{.utility, .masthead, .site-footer, .crumbs, .no-print, .mobile-panel{display:none!important}
.page-head{padding:0!important;background:none!important}
body{background:#fff}}
.crumbs ol, .crumbs li + li::before{color:var(--text-2)}
.facts td a, .prose a, .note a, .source-note a{text-decoration:underline;text-underline-offset:2px}
.check a, .cal-list a, .account-block p a{text-decoration:underline;text-underline-offset:2px}
.admin-main .muted, .admin-main small, .admin-top span{color:#4A5852!important}
.signature{margin:18px 0 6px}
.signature img{height:auto;max-width:220px}
.footer-credit{display:inline-block;margin-top:4px;opacity:.85}
.badge-es-pending, .badge-cs-pending{background:#FFF6DA;border-color:#EFDFA8;color:#4A3D12}
.badge-es-accepted, .badge-cs-approved{background:var(--green-50);border-color:var(--green-100);color:var(--green-800)}
.badge-es-waitlist{background:#E6EEF6;border-color:#C9D7E6;color:#1F3A5A}
.badge-es-removed, .badge-es-left, .badge-es-declined, .badge-cs-rejected, .badge-cs-closed{background:#EFEDE8;border-color:#DCD8CF;color:#555}
.cal-list .btn{margin-left:8px;padding:6px 12px;min-height:0}
.prose a.list-item, .prose a.list-item *{text-decoration:none}
.prose .list-item{padding:20px 24px}
.prose a.list-item:hover strong{text-decoration:underline}
.footer-logo{display:inline-block;margin-bottom:18px}

/* ===================================================================== release components (2026-10) */
.filters{background:var(--cream);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:0 0 28px}
.filters label{font-size:15px;color:var(--green-950)}
.filters .btn{height:44px;min-height:44px}
.btn-block{width:100%}
.form-error{border-left:4px solid var(--terra);background:var(--terra-100);color:var(--terra-700);padding:10px 14px;font-weight:600}
.field-hint{display:block;font-weight:400;font-size:14px;color:var(--text-3);margin-top:6px}
.urgent-line{border-left:4px solid var(--terra);padding:8px 12px;background:#fff;font-weight:600;color:var(--green-950)}

/* auth and two-column forms */
.auth-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,4vw,56px);align-items:start}
.auth-grid > .form-card{margin:0}
.auth-side{border-top:3px solid var(--green-800);padding-top:16px}
.auth-side h2{font-size:22px}
.auth-side p{color:var(--text-2)}
.auth-alt{margin:0;font-size:15px}
.auth-alt a{text-decoration:underline;text-underline-offset:2px}
.steps-list{padding-left:22px;margin:0 0 16px}
.steps-list li{margin:0 0 8px}
.auth-section{min-height:70vh;display:flex;align-items:center}
.auth-wrap{display:flex;justify-content:center}
.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px}
.auth-card h1{font-size:32px}
.auth-lead{color:var(--text-2)}
.auth-mark{margin-bottom:16px}
.auth-card form{display:flex;flex-direction:column;gap:16px}
.auth-card label{font-weight:600;color:var(--green-950)}
.auth-card input{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--line-2);border-radius:var(--r-sm);min-height:44px;font:inherit}
.admin-auth{background:var(--cream)}

/* status pages */
.status-wrap{display:flex;justify-content:center}
.status-card{width:min(620px,100%);text-align:center;border:1px solid var(--line);background:#fff;padding:clamp(28px,5vw,48px)}
.status-card .btn-row{justify-content:center}
.status-icon{display:inline-flex;width:56px;height:56px;border-radius:50%;align-items:center;justify-content:center;background:var(--green-50);border:1px solid var(--green-100);color:var(--green-800);font:700 26px/1 var(--sans);margin-bottom:16px}
.status-icon-warn{background:var(--terra-100);border-color:#EFC7B8;color:var(--terra-700)}
.status-code{font:600 14px/1 var(--sans);letter-spacing:.08em;color:var(--text-3);margin:0 0 8px}
.status-card h1{font-size:clamp(26px,3vw,34px)}

/* aid portal */
.aid-steps{list-style:none;counter-reset:s;padding:0;margin:0 0 40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.aid-steps li{counter-increment:s;border-top:3px solid var(--green-800);padding-top:12px;display:flex;flex-direction:column;gap:4px}
.aid-steps li::before{content:counter(s);font:700 14px/1 var(--sans);color:var(--terra-700)}
.aid-steps strong{color:var(--green-900)}
.aid-steps span{color:var(--text-2);font-size:15px}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:24px}
.aid-card{min-height:0;padding:22px;gap:6px}
.aid-card h3{margin:0;font-size:20px}
.aid-card h3 a{text-decoration:none;color:var(--green-900)}
.aid-card h3 a:hover{color:var(--terra-700);text-decoration:underline}
.aid-card p{font-size:15px;color:var(--text-2);margin:0}
.aid-card-top{display:flex;gap:10px;align-items:center;font-size:14px}
.aid-card .aid-card-meta{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:14px;color:var(--text-3)}
.badge-need{background:var(--terra-100);border-color:#EFC7B8;color:var(--terra-700)}
.badge-offer{background:var(--green-50);border-color:var(--green-100);color:var(--green-800)}
.empty-panel{padding:24px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.empty-panel p{margin:0}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,4vw,56px);align-items:start}
.side-card{border:1px solid var(--line);background:#fff;padding:20px;position:sticky;top:16px}
.side-card .facts{margin-top:0}
.side-card .facts th{width:42%}

/* account */
.account-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:8px 0 24px}
.account-tiles a{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--text)}
.account-tiles a:hover{border-color:var(--green-800)}
.account-tiles strong{color:var(--green-900);display:flex;align-items:center;gap:8px}
.account-tiles span{font-size:14px;color:var(--text-3)}
.bell{display:inline-flex;align-items:center;gap:4px;position:relative}
.bell svg{display:block}
.bell-count{display:inline-flex;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--terra);color:#fff;font:700 12px/20px var(--sans);justify-content:center}
.badge-new{background:var(--terra-100);border-color:#EFC7B8;color:var(--terra-700)}
.state-line{padding:12px 16px;background:var(--cream);border:1px solid var(--line)}
.choice-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:24px 0}
.choice-card{border:1px solid var(--line);background:#fff;padding:20px;display:flex;flex-direction:column;gap:10px}
.choice-card h2{font-size:22px;margin:0}
.choice-card p{color:var(--text-2);margin:0}
.choice-card label{font-weight:600;color:var(--green-950)}
.choice-card input{display:block;width:100%;margin:6px 0 10px;padding:10px 12px;border:1px solid var(--line-2);min-height:44px;font:inherit}
.choice-card.is-current{border-color:var(--green-800);box-shadow:inset 0 3px 0 var(--green-800)}
.qr{width:220px;max-width:100%;background:#fff;border:1px solid var(--line);padding:8px;margin:16px 0}
.qr svg{display:block;width:100%;height:auto}
.secret{font:600 16px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--cream);padding:2px 6px;word-break:break-all}
.link-row{display:flex;flex-wrap:wrap;gap:8px 24px}
.check-list{border:0;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px 16px}
.check-list legend{font-weight:600;margin-bottom:8px;color:var(--green-950)}

/* notifications and messages */
.notif-list{list-style:none;padding:0;margin:0 0 24px;border-top:1px solid var(--line)}
.notif-list li{padding:14px 0 14px 14px;border-bottom:1px solid var(--line);border-left:3px solid transparent}
.notif-list li.is-new{border-left-color:var(--terra);background:var(--cream)}
.notif-list p{margin:4px 0;color:var(--text-2)}
.notif-list time{font-size:14px;color:var(--text-3)}
.thread{list-style:none;padding:0;margin:16px 0 24px;display:flex;flex-direction:column;gap:12px}
.msg{max-width:min(560px,88%);padding:12px 16px;border:1px solid var(--line);background:#fff}
.msg p{margin:0 0 6px;white-space:pre-wrap;overflow-wrap:anywhere}
.msg-mine{align-self:flex-end;background:var(--green-50);border-color:var(--green-100)}
.msg-theirs{align-self:flex-start}
.msg-meta{font-size:13px;color:var(--text-3)}
.msg-meta a{color:var(--text-3)}
.msg-flagged{border:2px solid var(--terra)}

/* experts, certificate */
.person-card{border:1px solid var(--line);background:#fff;padding:20px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.person-card h2{font-size:22px;margin:0}
.person-role{color:var(--text-2);margin:0}
.callout{margin-top:40px;padding:24px;background:var(--cream);border:1px solid var(--line)}
.badge-ex-pending{background:#FFF6DA;border-color:#EFDFA8;color:#4A3D12}
.badge-ex-verified{background:var(--green-50);border-color:var(--green-100);color:var(--green-800)}
.badge-ex-rejected{background:#EFEDE8;border-color:#DCD8CF;color:#555}
.certificate{border:1px solid var(--line-2);background:#fff;padding:clamp(28px,6vw,64px);margin-top:24px;text-align:center}
.cert-logo{width:220px;height:auto;margin:0 auto 32px}
.cert-kicker{font:600 14px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--terra-700)}
.cert-text{font-size:19px;max-width:56ch;margin:0 auto 24px}
.cert-facts{display:flex;justify-content:center;gap:40px;margin:0 0 32px}
.cert-facts dt{font-size:14px;color:var(--text-3)}
.cert-facts dd{margin:0;font:600 28px/1.2 var(--serif);color:var(--green-900)}
.cert-sign{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:24px}
.cert-sign span{border-top:1px solid var(--line-2);padding-top:4px;min-width:200px;font-size:14px;color:var(--text-3)}
.cert-verify{font-size:13px;color:var(--text-3);margin:0}
.cert-url{overflow-wrap:anywhere}

/* admin */
.admin-sidebar{background:var(--green-950);color:#E3ECE6;padding:24px 16px}
.admin-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;margin-bottom:24px}
.admin-brand span{display:flex;flex-direction:column;font:700 18px/1.1 var(--sans)}
.admin-brand small{font:500 12px/1.4 var(--sans);color:#B9CEC2}
.admin-nav{display:flex;flex-direction:column}
.admin-nav a{display:block;padding:7px 10px;color:#E3ECE6;text-decoration:none;font-size:15px;border-left:3px solid transparent}
.admin-nav a:hover{background:rgba(255,255,255,.06)}
.admin-nav a[aria-current=page]{border-left-color:var(--terra-300);background:rgba(255,255,255,.08);color:#fff}
.admin-nav-title{margin:18px 0 4px;padding:0 10px;font:700 12px/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#9DB5A8}
.admin-top{align-items:center;gap:16px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:24px;font-size:15px}
.admin-top-actions{display:flex;align-items:center;gap:16px}
.admin-top-actions form{margin:0}
.admin-h2{font-size:22px;margin:32px 0 12px}
.admin-grid{margin-top:0;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.admin-main .stat{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:var(--r);border:1px solid var(--line);background:#fff}
a.stat{text-decoration:none;color:inherit}
.stat span{font-size:14px;color:var(--text-2)}
.stat strong{font:600 34px/1.1 var(--serif);color:var(--green-900);letter-spacing:0}
a.stat:hover{border-color:var(--green-800)}
.stat-due{border-left:4px solid var(--terra)}
.admin-card{border:1px solid var(--line);background:#fff;padding:20px;margin:0 0 16px}
.admin-card header{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}
.alert-box{padding:14px 18px;margin:0 0 20px;background:var(--green-50);border:1px solid var(--green-100);display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.alert-box.danger{background:var(--terra-100);border-color:#EFC7B8;color:var(--terra-700)}
.admin-foot{margin-top:48px;font-size:13px;color:var(--text-2)}

@media (max-width:900px){
  .auth-grid,.detail-grid{grid-template-columns:1fr}
  .side-card{position:static}
  .aid-steps{grid-template-columns:1fr}
  .cert-facts{gap:20px}
}
@media print{.certificate{border:0;margin:0;padding:0}.no-print{display:none!important}}
.list-stack .list-item{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:14px 0}
.link-list .badge{display:inline-block;width:auto;color:var(--text)}
@media (max-width:900px){
  .admin-nav{flex-direction:row;flex-wrap:wrap;gap:6px}
  .admin-nav-title{display:none}
  .admin-nav a{border:1px solid rgba(255,255,255,.25);border-left-width:1px;padding:6px 10px;font-size:14px}
  .admin-nav a[aria-current=page]{border-color:var(--terra-300)}
}

/* home: full-width film hero (as on the earlier elmyolu.com) */
.hero-film{position:relative;min-height:650px;height:76vh;max-height:900px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:#324638 center/cover no-repeat;color:#fff}
.hero-film-video,.hero-film-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-film-video{object-fit:cover}
.hero-film-shade{background:linear-gradient(90deg,rgba(16,44,33,.88),rgba(16,44,33,.48) 60%,rgba(16,44,33,.15))}
.hero-film-copy{position:relative;z-index:1;padding-top:40px;padding-bottom:80px}
.hero-film-copy h1{color:#fff;font-size:clamp(40px,5.2vw,72px);line-height:1.08;max-width:15em;margin:0 0 24px;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.hero-film-copy p{max-width:36em;font-size:19px;line-height:1.7;color:#F3F4EE;margin:0}
.hero-film-copy .btn-row{align-items:center;gap:28px;margin-top:32px}
.hero-film-link{color:#fff;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:6px}
.hero-film-link:hover{border-bottom-color:#fff}
.hero-film-bottom{position:absolute;left:0;right:0;bottom:22px;z-index:2;display:flex;justify-content:flex-end}
.hero-film .media-toggle{position:static;border:1px solid rgba(255,255,255,.45);border-radius:25px;background:rgba(25,60,44,.5);padding:10px 18px}
@media (max-width:1000px){.hero-film{height:auto;min-height:650px}}
@media (max-width:700px){
  .hero-film{min-height:640px;justify-content:flex-start}
  .hero-film-copy{padding-top:56px}
  .hero-film-copy h1{font-size:40px}
  .hero-film-copy p{font-size:16px}
  .hero-film-copy .btn-row{flex-direction:column;align-items:flex-start;gap:20px}
  .hero-film-shade{background:linear-gradient(180deg,rgba(16,44,33,.85),rgba(16,44,33,.6) 70%,rgba(16,44,33,.75))}
}
@media (prefers-reduced-motion:reduce){.hero-film-video{display:none}}
