:root{
  --deep:#10352C; --deeper:#0A2620; --petrol:#1A5745; --petrol-lt:#6FBF9E;
  --brass:#D4A343; --brass-dk:#9C7526; --paper:#F6F8F5; --white:#FFFFFF;
  --ink:#0F1A16; --mute:#59665F; --hair:#DBE2DC; --sand:#EAF0EB;
  --maxw:74rem;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;}
p{margin:0;}
h1,h2,h3,h4{margin:0;font-weight:400;text-wrap:balance;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 2rem;}
@media(max-width:40rem){.wrap{padding:0 1.25rem;}}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(246,248,245,0.94);
  backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--hair);}
.nav .in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
  padding-top:0.85rem;padding-bottom:0.85rem;}
.nav .brand{font-family:"Newsreader",Georgia,serif;font-size:1.12rem;text-decoration:none;
  letter-spacing:-0.01em;white-space:nowrap;}
.nav .links{display:flex;gap:1.35rem;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.nav .links a{font-size:0.86rem;color:var(--mute);text-decoration:none;}
.nav .links a:hover{color:var(--petrol);}
.nav .btn{background:var(--brass);color:var(--ink);padding:0.5rem 1.05rem;border-radius:2px;
  font-size:0.86rem;text-decoration:none;font-weight:500;white-space:nowrap;}
@media(max-width:52rem){.nav .links a:not(.btn){display:none;}}

/* breadcrumb */
.crumb{padding:1.1rem 0 0;font-family:"IBM Plex Mono",monospace;font-size:0.68rem;
  letter-spacing:0.08em;text-transform:uppercase;color:var(--mute);}
.crumb a{text-decoration:none;color:var(--mute);}
.crumb a:hover{color:var(--petrol);}
.crumb span{color:var(--hair);margin:0 0.45rem;}

/* hero */
.hero{padding:3.4rem 0 3.8rem;background:var(--deep);color:#E4EFE8;border-bottom:none;}
.hero .kick{color:var(--petrol-lt);}
.hero h1{color:#FFFFFF;}
.hero .sub{color:#BFD5C8;}
.hero .bfs{color:var(--petrol-lt);}
.hero .btn.ghost{border-color:#3E6656;color:#E4EFE8;}
.kick{font-family:"IBM Plex Mono",monospace;font-size:0.7rem;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--petrol);margin-bottom:1.1rem;}
h1{font-family:"Newsreader",Georgia,serif;font-size:clamp(2.1rem,4.6vw,3.35rem);
  line-height:1.08;letter-spacing:-0.018em;max-width:22ch;}
.hero .sub{font-size:clamp(1.05rem,1.8vw,1.28rem);line-height:1.5;color:var(--mute);
  max-width:52ch;margin-top:1.3rem;}
.bfs{display:flex;gap:0.55rem;align-items:center;flex-wrap:wrap;margin-top:1.6rem;
  font-family:"IBM Plex Mono",monospace;font-size:0.74rem;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--petrol);}
.bfs b{font-weight:500;}
.bfs i{color:var(--brass);font-style:normal;}
.herobtns{display:flex;gap:0.8rem;flex-wrap:wrap;margin-top:2rem;}
.btn{background:var(--brass);color:var(--ink);padding:0.78rem 1.5rem;border-radius:2px;
  font-size:0.95rem;text-decoration:none;font-weight:500;display:inline-block;}
.btn.ghost{background:transparent;border:1px solid var(--hair);color:var(--ink);}
.btn:hover{opacity:0.9;}

/* sections */
section{padding:3.2rem 0;}
section+section{border-top:1px solid var(--hair);}
h2{font-family:"Newsreader",Georgia,serif;font-size:clamp(1.5rem,2.9vw,2.1rem);
  line-height:1.18;letter-spacing:-0.012em;max-width:26ch;margin-bottom:1.1rem;}
h3{font-family:"Newsreader",Georgia,serif;font-size:1.22rem;line-height:1.28;margin:1.9rem 0 0.6rem;}
.prose p{max-width:64ch;color:#25322C;}
.prose p+p{margin-top:0.95rem;}
.prose p.lede{font-size:1.08rem;color:var(--mute);}

ul.pl{margin:1rem 0 0;padding:0;list-style:none;display:grid;gap:0.6rem;}
ul.pl li{position:relative;padding-left:1.5rem;max-width:62ch;color:#25322C;}
ul.pl li::before{content:"";position:absolute;left:0.15rem;top:0.68em;width:6px;height:6px;
  border-radius:50%;background:var(--petrol);}
ul.pl li b{font-weight:600;}

/* stat strip */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;
  background:var(--hair);border:1px solid var(--hair);margin-top:1.8rem;}
.stats .s{background:var(--white);padding:1.3rem 1.4rem;}
.stats .s .n{font-family:"Newsreader",Georgia,serif;font-size:2rem;line-height:1;
  color:var(--petrol);font-variant-numeric:tabular-nums;}
.stats .s .l{font-family:"IBM Plex Mono",monospace;font-size:0.64rem;letter-spacing:0.09em;
  text-transform:uppercase;color:var(--mute);margin-top:0.65rem;line-height:1.5;}

/* numbered steps */
.steps{margin-top:1.6rem;}
.steps .st{display:grid;grid-template-columns:2.2rem 1fr;gap:1.1rem;padding:1.15rem 0;
  border-top:1px solid var(--hair);align-items:start;}
.steps .st:last-child{border-bottom:1px solid var(--hair);}
.steps .st .i{font-family:"IBM Plex Mono",monospace;font-size:0.8rem;color:var(--brass-dk);padding-top:0.2rem;}
.steps .st h4{font-size:1rem;font-weight:600;margin-bottom:0.3rem;}
.steps .st p{font-size:0.96rem;color:#25322C;max-width:60ch;}

/* callout */
.call{margin-top:1.6rem;padding:1.4rem 1.6rem;background:var(--sand);border-left:3px solid var(--petrol);}
.call .k{font-family:"IBM Plex Mono",monospace;font-size:0.66rem;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--petrol);display:block;margin-bottom:0.55rem;}
.call p{max-width:62ch;color:#25322C;}
.call p+p{margin-top:0.7rem;}

/* dark band */
.dark{background:var(--deep);color:#E4EFE8;border-top:none;}
.dark h2{color:#FFFFFF;}
.dark .prose p{color:#BFD5C8;}
.dark .kick{color:var(--petrol-lt);}
.dark ul.pl li{color:#BFD5C8;}
.dark ul.pl li::before{background:var(--petrol-lt);}
.dark .stats{background:#2A5145;border-color:#2A5145;}
.dark .stats .s{background:var(--deeper);}
.dark .stats .s .n{color:var(--petrol-lt);}
.dark .stats .s .l{color:#8FAB9D;}

/* faq */
.faq{margin-top:1.5rem;}
.faq .i{padding:1.35rem 0;border-top:1px solid var(--hair);}
.faq .i:last-child{border-bottom:1px solid var(--hair);}
.faq .i h3{font-size:1.1rem;margin:0 0 0.5rem;}
.faq .i p{font-size:0.97rem;color:#3B4A43;max-width:62ch;}
.faq .i p+p{margin-top:0.6rem;}

/* related links */
.rel{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;
  background:var(--hair);border:1px solid var(--hair);margin-top:1.6rem;}
.rel a{background:var(--white);padding:1.15rem 1.3rem;text-decoration:none;display:block;}
.rel a:hover{background:var(--sand);}
.rel a .t{display:block;font-family:"Newsreader",Georgia,serif;font-size:1.06rem;line-height:1.3;color:var(--ink);}
.rel a .d{display:block;font-size:0.87rem;color:var(--mute);margin-top:0.4rem;line-height:1.5;}

/* cta band */
.ctaband{background:var(--deep);color:#E4EFE8;padding:3.4rem 0;}
.ctaband h2{color:#FFFFFF;max-width:20ch;}
.ctaband p{color:#BFD5C8;max-width:56ch;margin-top:1rem;}
.ctaband .herobtns{margin-top:1.8rem;}
.ctaband .btn.ghost{border-color:#3E6656;color:#E4EFE8;}

footer{background:var(--deeper);color:#8FAB9D;padding:2.6rem 0;font-size:0.86rem;}
footer a{color:#BFD5C8;}
footer .fin{display:flex;flex-wrap:wrap;gap:1rem 2.4rem;justify-content:space-between;align-items:flex-start;}
footer .fl{display:flex;flex-wrap:wrap;gap:0.5rem 1.4rem;}
footer .fl a{text-decoration:none;font-size:0.84rem;}
footer .fl a:hover{color:#FFFFFF;}
