
:root{--ink:#E8EFED;--ink2:#a9bab6;--paper:#0C1513;--card:#111e1b;--line:#22332f;--teal:#5CCBBC;--teal2:#5CCBBC;--gold:#F3CE5B;--dark:#08100e}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Newsreader,Georgia,serif;-webkit-font-smoothing:antialiased}
a{color:var(--teal)}a:hover{color:var(--gold)}
.sans,nav,.btn,.kicker,.foot,.share,label,input,textarea,select,button,.banner{font-family:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif}.meta,.tag{font-family:'IBM Plex Mono',monospace}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}.narrow{max-width:720px}
header.top{background:var(--dark);color:#e9e4d8;position:sticky;top:0;z-index:20;border-bottom:3px solid var(--teal)}
header.top .wrap{display:flex;align-items:center;gap:22px;min-height:62px;flex-wrap:wrap}
.logo{color:#fff;text-decoration:none;font:700 21px Georgia,serif;letter-spacing:.2px}.logo i{color:var(--teal2);font-weight:400}
.logo small{display:block;font:500 10px 'Helvetica Neue',Arial,sans-serif;letter-spacing:2px;color:#9fb3b1;text-transform:uppercase}
nav{display:flex;gap:18px;margin-left:auto;align-items:center;flex-wrap:wrap}
nav a{color:#c9d6d3;text-decoration:none;font-size:14px;letter-spacing:.3px}nav a:hover,nav a.on{color:#fff;border-bottom:2px solid var(--teal2)}
.btn{display:inline-block;background:var(--teal);color:#0C1513!important;text-decoration:none;padding:11px 20px;border-radius:3px;font-weight:600;font-size:15px;border:0;cursor:pointer}
.btn:hover{background:#F3CE5B}.btn.ghost{background:transparent;border:1.5px solid currentColor;color:var(--teal)!important}
nav .btn{padding:8px 15px;font-size:13px}
.hero{padding:56px 0 30px;border-bottom:1px solid var(--line)}
.kicker{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--teal);font-weight:700}
h1{font-size:46px;line-height:1.1;margin:10px 0 14px;font-weight:600;color:#fff}h2{font-size:26px;margin:34px 0 10px}
.lead{font-size:20px;color:var(--ink2)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px;margin:34px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.card img{width:100%;aspect-ratio:1200/630;display:block;background:var(--dark)}
.card .in{padding:16px 18px 20px}.card h3{margin:6px 0 8px;font-size:20px;line-height:1.25}.card p{margin:0;color:var(--ink2);font-size:15.5px}
.meta{font-size:12.5px;color:#8fa29e;letter-spacing:.4px}
.tag{display:inline-block;font-size:10.5px;letter-spacing:1.6px;font-weight:700;color:var(--gold);text-transform:uppercase}
article .hero-img{width:100%;border-radius:4px;margin:18px 0 6px;display:block}
article .body{font-size:18.5px}article .body h2{font-size:24px}
.sources{border-top:1px solid var(--line);margin-top:30px;padding-top:12px;font-size:15px}.sources li{margin:6px 0}
.share{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:20px 0;font-size:13px}
.share a,.share button{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:7px 12px;border-radius:3px;text-decoration:none;font-size:13px;cursor:pointer}
.share a:hover,.share button:hover{border-color:var(--teal);color:var(--teal)}
.ctabox{background:#0D5A52;color:#e9e4d8;border-radius:4px;padding:28px;margin:40px 0;display:flex;gap:24px;align-items:center;flex-wrap:wrap;border-left:5px solid var(--teal2)}
.ctabox h3{margin:0 0 6px;font-size:23px;color:#fff}.ctabox p{margin:0;color:#d5ebe7}.ctabox .grow{flex:1;min-width:240px}
.ctabox img.qr{width:108px;height:108px;background:#fff;padding:6px;border-radius:3px}
.timeline{border-left:3px solid var(--teal);margin:24px 0;padding-left:22px}.timeline div{margin:0 0 18px;position:relative}
.timeline div:before{content:"";position:absolute;left:-30px;top:6px;width:13px;height:13px;border-radius:50%;background:var(--paper);border:3px solid var(--teal)}
.timeline b{font-family:'Helvetica Neue',Arial,sans-serif;color:var(--teal);display:block;font-size:14px;letter-spacing:1px}
form.brief{background:var(--card);border:1px solid var(--line);padding:26px;border-radius:4px;margin:26px 0}
label{display:block;font-size:13px;font-weight:600;margin:14px 0 5px;color:var(--ink2)}
input,textarea,select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:3px;font-size:15px;background:#0C1513;color:var(--ink)}
textarea{min-height:90px}
.steps{counter-reset:s;list-style:none;padding:0}.steps li{counter-increment:s;padding:10px 0 10px 50px;position:relative;border-bottom:1px dashed var(--line)}
.steps li:before{content:counter(s);position:absolute;left:0;top:8px;width:34px;height:34px;border-radius:50%;background:var(--teal);color:#0C1513;font:700 15px/34px 'Helvetica Neue',Arial;text-align:center}
.dl{display:flex;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);padding:14px;border-radius:4px;margin:12px 0}
.dl img{width:150px;border-radius:3px}.dl .grow{flex:1}
footer.foot{background:var(--dark);color:#9fb3b1;padding:34px 0;margin-top:60px;font-size:13.5px}
footer.foot a{color:#d9e3e1}footer.foot .cols{display:flex;gap:40px;flex-wrap:wrap;justify-content:space-between}
.banner{position:fixed;left:16px;right:16px;bottom:16px;max-width:620px;background:var(--dark);color:#e9e4d8;padding:16px 18px;border-radius:5px;box-shadow:0 10px 40px rgba(0,0,0,.35);z-index:50;font-size:14px;display:none;border-top:3px solid var(--teal2)}
.banner a{color:#9fe0d9}.banner .row{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.banner button{padding:8px 14px;border-radius:3px;border:1px solid #9fb3b1;background:transparent;color:#fff;cursor:pointer;font-size:13px}.banner button.yes{background:var(--teal);border-color:var(--teal);color:#0C1513}
.legal h2{font-size:21px}.legal{font-size:16.5px}
@media(max-width:700px){h1{font-size:32px}nav{gap:12px;width:100%;margin:0 0 10px}.dl{flex-direction:column;align-items:flex-start}}
