:root{
  --ink:#1C2B29; --deep:#0C3B22; --trust:#1F7A44; --trust2:#23823C;
  --accent:#39B25A; --slate:#58716D; --warm:#F9FAF9; --mint:#E8F3EC;
  --surface:#EEF4F2; --line:#E1E8E3; --teal:#4FB9B4; --gold:#B7791F;
  --maxw:1200px;
  --h:'Plus Jakarta Sans', system-ui, sans-serif;
  --b:'Inter', system-ui, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--b);color:var(--ink);background:var(--warm);line-height:1.65;-webkit-font-smoothing:antialiased}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
h1,h2,h3,h4{font-family:var(--h);font-weight:700;line-height:1.14;color:var(--deep);letter-spacing:-.01em}
section{padding:90px 0}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.eyebrow{font-family:var(--h);font-weight:700;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--trust)}
.lead{font-size:19px;color:var(--slate);max-width:60ch}
a{color:inherit;text-decoration:none}
.btn{display:inline-block;font-family:var(--h);font-weight:700;font-size:15px;padding:13px 24px;border-radius:30px;transition:.18s;cursor:pointer;border:1.5px solid transparent}
.btn-primary{background:var(--deep);color:#fff}
.btn-primary:hover{background:var(--accent);color:#08240F}
.btn-ghost{border-color:var(--trust);color:var(--deep);background:transparent}
.btn-ghost:hover{background:var(--mint)}
.tag{display:inline-block;font-family:var(--h);font-weight:700;font-size:12px;letter-spacing:.5px;padding:5px 13px;border-radius:30px;background:var(--mint);color:var(--trust2)}

header.nav{position:sticky;top:0;z-index:50;background:rgba(249,250,249,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.navrow{display:flex;align-items:center;gap:18px;height:92px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--h);font-weight:800;font-size:20px;color:var(--deep);flex:0 0 auto}

.brandlogo{height:64px;width:auto;display:block}
footer .brandlogo{height:104px}
.brand .mark{width:30px;height:30px;border-radius:8px;background:var(--deep);display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px}
/* wireframe nav: logo left, links centred, CTA right */
.navlinks{display:flex;flex:1;align-items:center;justify-content:center;gap:26px}
.navlinks a{font-size:14.5px;font-weight:500;color:var(--ink);transition:.15s;white-space:nowrap}
.navlinks a:hover,.navlinks a.active{color:var(--trust)}
.navcta{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.menubtn{display:none;background:none;border:none;font-size:26px;color:var(--deep);cursor:pointer}

.pagehero{padding:72px 0 56px;background:var(--mint)}
.crumb{font-size:13px;color:var(--slate);margin-bottom:14px}
.crumb a:hover{color:var(--trust)}

.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px}
.grid{display:grid;gap:20px}
.cardhead{font-family:var(--h);font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--trust);margin-bottom:14px}
.flist{list-style:none}
.flist li{font-size:15px;padding:9px 0 9px 24px;position:relative;border-bottom:1px solid var(--line)}
.flist li:last-child{border-bottom:none}
.flist li::before{content:"";position:absolute;left:2px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--accent)}

.darkcard{background:var(--deep);border-radius:16px;padding:30px;color:#EAF4ED}
.darkcard .cardhead{color:#8FC9A4}

footer{background:var(--surface);color:var(--slate);padding:62px 0 40px;border-top:1px solid var(--line)}
.fh{font-family:var(--h);font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--deep);margin-bottom:14px}
footer .flink{display:block;font-size:14px;color:var(--slate);padding:5px 0;transition:.15s}
footer .flink:hover{color:var(--trust)}

/* ---- wireframe refinement helpers ---- */
/* evidence states: PASS / REVIEW / FLAG (synthetic, no scoring method exposed) */
.estate{display:inline-flex;align-items:center;gap:7px;font-family:var(--h);font-weight:700;font-size:12px;letter-spacing:.5px;padding:5px 12px;border-radius:30px}
.estate::before{content:"";width:8px;height:8px;border-radius:50%}
.e-pass{background:#E8F2EC;color:#1F7A44}
.e-pass::before{background:#1F7A44}
.e-review{background:#FBF1DF;color:#6b4e00}
.e-review::before{background:var(--gold)}
.e-flag{background:#FBEAE7;color:#9a3412}
.e-flag::before{background:#C2410C}
/* evidence card */
.ecard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 24px;box-shadow:0 14px 40px rgba(12,59,34,.08)}
.erow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}
.erow:last-child{border-bottom:none}
.erow .et{font-family:var(--h);font-weight:600;font-size:15px;color:var(--ink)}
.erow .es{font-size:12.5px;color:var(--slate)}
/* capability group */
.capgroup{margin-bottom:14px}
.capgrouphd{font-family:var(--h);font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--trust);margin:0 0 16px}
/* video slot: poster shows now; <video> stays commented until assets exist */
.vslot{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.vslot img,.vslot video{width:100%;display:block}
.section-num{font-family:var(--h);font-weight:800;font-size:12px;letter-spacing:1px;color:var(--accent)}

@media(max-width:920px){
  .navlinks{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;gap:0;background:var(--warm);border-bottom:1px solid var(--line);padding:8px 28px 18px}
  .navlinks.open{display:flex}
  .navlinks a{padding:11px 0;border-bottom:1px solid var(--line);width:100%}
  .navcta .btn{display:none}
  .menubtn{display:block}
  section{padding:60px 0}
  .twocol{grid-template-columns:1fr !important}
  h1{font-size:38px !important}
  h2{font-size:28px !important}
}
@media(max-width:560px){ .wrap{padding:0 18px} h1{font-size:32px !important} }

/* ---- Atmospheric section photography (representative; overlaid for readability) ---- */
.photobg{position:relative;background-size:cover;background-position:center;background-repeat:no-repeat}
.photobg>*{position:relative;z-index:1}
.photobg::before{content:"";position:absolute;inset:0;z-index:0;
  background:
   linear-gradient(180deg, rgba(247,250,248,.42), rgba(238,244,242,.55)),
   linear-gradient(0deg, rgba(31,122,68,.12), rgba(31,122,68,.12));}

/* ---- Shared form inputs + secondary button (promoted from homepage inline) ---- */
.fin{font-family:var(--b);font-size:15px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--warm,#FBFCFB);color:var(--ink)}
.fin:focus{outline:none;border-color:var(--accent)}
.btn-secondary{background:#fff;color:var(--deep);border-color:var(--line)}
.btn-secondary:hover{border-color:var(--accent);color:var(--trust)}
