:root{
  --ink:#18332d;--muted:#58706a;--cream:#fffaf0;--paper:#ffffff;--mint:#dcefe4;
  --coral:#e8785d;--sun:#f3c969;--line:#c9ddd1;--shadow:8px 8px 0 #b8d5c5;
  --radius:20px;--max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
img{display:block;width:100%;height:auto;border-radius:14px}
a{color:var(--ink);text-decoration-thickness:2px;text-underline-offset:3px;overflow-wrap:anywhere}
button,input,textarea,select{font:inherit}
button,.button{display:inline-block;border:2px solid var(--ink);border-radius:999px;padding:11px 18px;background:var(--coral);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}
button:hover,.button:hover{background:var(--ink);color:#fff}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--sun);outline-offset:3px}
.container{width:min(calc(100% - 32px),var(--max));margin:auto}
.site-header{min-height:60px;display:flex;align-items:center;gap:24px;border-bottom:2px solid var(--ink);background:var(--cream)}
.header-inner{width:min(calc(100% - 32px),var(--max));margin:auto;display:flex;align-items:center;gap:24px}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;text-decoration:none;line-height:1.1}
.logo svg{width:28px;height:28px;flex:none}
.nav{display:flex;justify-content:center;gap:18px;flex:1}
.nav a{font-size:.9rem;text-decoration:none;font-weight:700}
.header-cta{white-space:nowrap}
.menu-toggle{display:none}
.hero{padding:72px 0 64px;background:linear-gradient(135deg,var(--mint),#fff1d3)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:800;color:var(--coral)}
h1,h2,h3{line-height:1.08;overflow-wrap:anywhere;margin:0 0 16px}
h1{font-size:clamp(2.5rem,7vw,5.7rem);letter-spacing:-.06em}
h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.04em}
h3{font-size:1.35rem}
.lead{font-size:1.2rem;color:var(--muted);max-width:65ch}
.hero-art{box-shadow:var(--shadow);border:2px solid var(--ink);border-radius:var(--radius);overflow:hidden}
.hero-art img{border-radius:0}
section{padding:64px 0}
.section-heading{max-width:680px;margin-bottom:32px}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.card{min-width:0;background:var(--paper);border:2px solid var(--ink);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);transition:transform .2s ease}
.card:hover{transform:translate(-4px,-4px)}
.card img{aspect-ratio:16/10;object-fit:cover;margin-bottom:24px}
.card p{color:var(--muted)}
.card .button{margin-top:8px}
.support{background:var(--ink);color:#fff}
.support .lead,.support a{color:#e7f6ed}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}
.stat{border:2px solid currentColor;border-radius:14px;padding:16px}
.stat strong{display:block;font-size:1.7rem;margin-bottom:12px}
.article{padding:64px 0}
.article-header{max-width:850px;margin-bottom:40px}
.article-body{max-width:780px}
.article-body h2{font-size:2rem;margin-top:40px}
.article-body h3{margin-top:28px}
.article-body ul{padding-left:24px}
.notice{padding:20px;background:var(--mint);border-left:8px solid var(--coral);border-radius:10px}
.site-footer{padding:40px 0;background:#102820;color:#fff}
.site-footer a{color:#fff}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px}
.footer-grid h3{font-size:1rem}
.footer-grid ul{list-style:none;padding:0;margin:0}
.footer-grid li{margin:8px 0}
.cookie-banner{position:fixed;z-index:5;left:16px;right:16px;bottom:16px;background:#fff;border:2px solid var(--ink);border-radius:16px;padding:16px;box-shadow:var(--shadow);display:flex;gap:16px;align-items:center;justify-content:space-between}
.cookie-banner[hidden]{display:none}
.cookie-actions{display:flex;gap:8px;flex-wrap:wrap}
.cookie-actions button{padding:8px 13px;font-size:.85rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full{grid-column:1/-1}
label{font-weight:700}
input,textarea,select{border:2px solid var(--ink);border-radius:10px;padding:12px;background:#fff;color:var(--ink)}
textarea{min-height:160px;resize:vertical}
.is-invalid{border-color:#b22d29;background:#fff0ee;color:var(--ink)}
.form-message{margin-top:16px;font-weight:700}
.map{min-height:300px;border:2px solid var(--ink);border-radius:var(--radius);background:linear-gradient(135deg,#b5dfd1 25%,#f6d98a 25% 45%,#d8ecd8 45% 70%,#b5dfd1 70%);display:grid;place-items:center;text-align:center;padding:24px;box-shadow:var(--shadow)}
.small{font-size:.9rem;color:var(--muted)}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}
.table-wrap{overflow-x:auto}
@media(max-width:767px){
  .site-header{min-height:52px}.header-inner{gap:10px}.nav{display:none;position:absolute;z-index:4;top:52px;left:0;right:0;padding:16px;background:var(--cream);border-bottom:2px solid var(--ink);flex-direction:column}
  .nav.is-visible{display:flex}.menu-toggle{display:block;margin-left:auto;background:var(--ink);color:#fff;padding:6px 12px}.header-cta{display:none}
  .hero{padding:48px 0}.hero-grid,.split,.footer-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.stats{grid-template-columns:1fr}
  section,.article{padding:48px 0}.cookie-banner{display:block}.cookie-actions{margin-top:12px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
}
@media(max-width:399px){
  .container,.header-inner{width:calc(100% - 24px)}h1{font-size:2.65rem}.card{padding:12px}.cookie-banner{left:8px;right:8px;bottom:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}