
:root{--bg:#0e1512;--panel:#16211c;--panel2:#1d2c25;--line:#2e4238;--ink:#eef2ec;--mut:#b9c6bb;--amber:#f2a541;--moss:#7fb069;--red:#d64545}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.75;font-size:17px}
a{color:var(--amber)}a:hover{color:#ffc766}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
header.site{border-bottom:3px solid var(--amber);background:#0a100e;position:sticky;top:0;z-index:50}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;flex-wrap:wrap}
.brand{font-size:26px;font-weight:700;letter-spacing:.2px;color:var(--ink);text-decoration:none}
.brand small{display:block;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);font-family:Arial,Helvetica,sans-serif}
.lang{font-family:Arial,Helvetica,sans-serif;font-size:13px;color:var(--mut)}
.lang b{color:var(--ink);border:1px solid var(--line);padding:4px 8px;border-radius:20px}
.lang span{opacity:.55;margin-left:6px}
nav.main{font-family:Arial,Helvetica,sans-serif;font-size:14px}
nav.main>ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
nav.main li{position:relative}
nav.main>ul>li>a,nav.main>ul>li>label.sub-label{display:block;padding:10px 12px;color:var(--ink);text-decoration:none;border-radius:6px 6px 0 0;cursor:pointer}
nav.main>ul>li>a:hover,nav.main>ul>li>label.sub-label:hover{background:var(--panel2)}
.nav-toggle,.sub-toggle{position:absolute;opacity:0;pointer-events:none}
.nav-burger{display:none}
.menu{display:none;position:absolute;left:0;top:100%;min-width:260px;background:var(--panel2);border:1px solid var(--line);border-top:3px solid var(--amber);list-style:none;margin:0;padding:8px 0;z-index:60;box-shadow:0 12px 30px rgba(0,0,0,.5)}
.menu a{display:block;padding:9px 16px;color:var(--ink);text-decoration:none}
.menu a:hover{background:#2a4034;color:#fff}
.nav-item:hover>.menu,.nav-item:focus-within>.menu{display:block}
.hero{padding:44px 0 30px;border-bottom:1px solid var(--line)}
.hero h1{font-size:46px;line-height:1.15;margin:0 0 14px;max-width:900px}
.hero p.lead{font-size:20px;color:#dbe5dc;max-width:880px}
.kicker{font-family:Arial,Helvetica,sans-serif;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);margin:0 0 10px}
.evidence{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 8px}
.evidence span{border:1px solid var(--line);background:var(--panel);padding:8px 12px;border-radius:6px;font-family:Arial,Helvetica,sans-serif;font-size:13px;color:#dbe5dc}
.evidence b{color:var(--amber)}
.cta{display:inline-block;background:var(--amber);color:#1a1200!important;font-family:Arial,Helvetica,sans-serif;font-weight:700;text-decoration:none;padding:14px 22px;border-radius:8px;margin:18px 0 6px}
.cta:hover{background:#ffc766}
.cta-note{font-size:14px;color:var(--mut);font-family:Arial,Helvetica,sans-serif}
.transect{display:flex;align-items:center;gap:10px;margin:28px 0;font-family:Arial,Helvetica,sans-serif;font-size:12px;letter-spacing:1.5px;color:var(--mut)}
.transect:before,.transect:after{content:"";flex:1;border-top:2px dashed var(--line)}
.transect i{width:11px;height:11px;border:2px solid var(--amber);border-radius:50%;display:inline-block;background:var(--bg)}
.transect b{color:var(--amber)}
main{padding:8px 0 40px}
h2{font-size:28px;line-height:1.3;margin:36px 0 10px}
h3{font-size:20px;margin:26px 0 8px}
p{margin:0 0 14px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin:20px 0}
.card{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--amber);padding:20px;border-radius:8px}
.card .n{font-family:Arial,Helvetica,sans-serif;color:var(--amber);font-weight:700;letter-spacing:1px;font-size:13px}
.card h3{margin:6px 0 8px}
.card p{color:var(--mut);font-size:16px}
.card a{font-family:Arial,Helvetica,sans-serif;font-weight:700}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:26px 0}
.stat{background:var(--panel2);border:1px solid var(--line);padding:20px;text-align:center;border-radius:8px}
.stat b{display:block;font-size:42px;color:var(--amber);line-height:1}
.stat span{font-family:Arial,Helvetica,sans-serif;font-size:13px;color:var(--mut)}
.steps{counter-reset:step;list-style:none;padding:0}
.steps li{counter-increment:step;background:var(--panel);border:1px solid var(--line);padding:16px 18px 16px 64px;margin:0 0 12px;border-radius:8px;position:relative}
.steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:16px;top:16px;font-family:Arial,Helvetica,sans-serif;font-weight:700;color:var(--amber);font-size:20px}
.check{list-style:none;padding:0}
.check li{padding:8px 0 8px 30px;position:relative;border-bottom:1px solid #22352b}
.check li:before{content:"\2713";position:absolute;left:4px;color:var(--moss);font-weight:700}
.diagram{background:var(--panel);border:1px dashed var(--amber);border-radius:10px;padding:22px;margin:20px 0}
.diagram p{font-family:Arial,Helvetica,sans-serif;font-size:14px;color:var(--mut)}
.diagram .scene{font-size:15px;color:#dbe5dc}
.callout{background:#241a05;border:1px solid var(--amber);border-radius:8px;padding:18px 20px;margin:22px 0}
.callout strong{color:var(--amber)}
form.enquiry{background:var(--panel);border:1px solid var(--line);padding:24px;border-radius:10px;margin:20px 0}
form.enquiry label{display:block;font-family:Arial,Helvetica,sans-serif;font-size:14px;margin:14px 0 4px}
form.enquiry input,form.enquiry select,form.enquiry textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:6px;background:#0e1512;color:var(--ink);font-size:16px}
form.enquiry button{background:var(--amber);border:0;padding:13px 22px;border-radius:8px;font-weight:700;cursor:pointer;margin-top:16px}
footer{border-top:3px solid var(--amber);padding:28px 0 40px;color:var(--mut);font-size:15px;background:#0a100e}
footer a{color:#dbe5dc}
.bread{font-family:Arial,Helvetica,sans-serif;font-size:13px;color:var(--mut);margin:18px 0 0}
.bread a{color:var(--mut)}
@media(max-width:900px){.hero h1{font-size:34px}.stats{grid-template-columns:repeat(2,1fr)}nav.main>ul{gap:0}nav.main>ul>li>a{padding:10px 8px}}
@media(max-width:560px){.stats{grid-template-columns:1fr}body{font-size:16px}.topbar{flex-direction:column;align-items:flex-start}}
@media(max-width:720px){
.nav-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:26px;line-height:1;cursor:pointer;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
nav.main{position:relative}
nav.main>ul{display:none}
#nav-toggle:checked~nav.main>ul{display:flex;flex-direction:column;flex-wrap:nowrap;position:absolute;left:0;right:0;top:100%;background:#0a100e;border-bottom:3px solid var(--amber);max-height:65vh;overflow-y:auto;z-index:60;gap:0;padding:6px 0}
nav.main>ul>li>a,nav.main>ul>li>label.sub-label{padding:12px 16px}
.nav-item>.menu{position:static;display:none;min-width:0;box-shadow:none;border:0;border-left:3px solid var(--amber)}
.nav-item:hover>.menu,.nav-item:focus-within>.menu{display:none}
.nav-item>.sub-toggle:checked~.menu{display:block}
.nav-item>.sub-toggle:checked~label.sub-label{background:var(--panel2)}
}

/* i18n lang dropdown (postprocess_switcher.py) */
.langdrop{display:inline-block;position:relative}
.langdrop summary{list-style:none;cursor:pointer;color:var(--ink);border:1px solid var(--line);padding:4px 10px;border-radius:20px;font-family:Arial,Helvetica,sans-serif;font-size:13px}
.langdrop summary::-webkit-details-marker{display:none}
.langdrop ul{display:none;position:absolute;right:0;top:calc(100% + 6px);margin:0;padding:6px 0;list-style:none;background:#16211c;border:1px solid var(--line);border-radius:8px;min-width:160px;z-index:70}
.langdrop[open] ul,.langdrop:hover ul{display:block}
.langdrop li a,.langdrop li span{display:block;padding:8px 16px;color:var(--ink);text-decoration:none;font-family:Arial,Helvetica,sans-serif;font-size:14px;white-space:nowrap}
.langdrop li a:hover{background:#2a4034;color:#fff}
.langdrop li span[aria-current]{color:var(--amber);font-weight:700}
