:root{
  --ink:#16232b; --muted:#5b6b74; --line:#e2eaea;
  --brand:#0e7c7b; --brand-d:#0a5c5b; --brand-l:#e6f2f1;
  --bg:#ffffff; --bg-alt:#f4f8f8; --max:1080px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--ink);background:var(--bg);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",Arial,sans-serif;
  line-height:1.6;-webkit-font-smoothing:antialiased;
}
a{color:var(--brand-d);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
/* header */
.nav{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);z-index:10}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:19px;color:var(--ink)}
.brand .dot{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--brand),var(--brand-d));
  display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:15px}
.nav nav a{margin-left:22px;color:var(--muted);font-weight:500;font-size:15px}
.nav nav a:hover{color:var(--ink);text-decoration:none}
/* hero */
.hero{background:linear-gradient(160deg,#0e7c7b 0%,#0a5c5b 100%);color:#fff;padding:76px 0 84px}
.hero h1{font-size:41px;line-height:1.18;margin:0 0 18px;font-weight:750;letter-spacing:-.5px;max-width:760px}
.hero p{font-size:19px;max-width:660px;color:#dff0ef;margin:0 0 30px}
.badge{display:inline-block;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);
  color:#eafffe;font-size:13px;font-weight:600;padding:6px 13px;border-radius:999px;margin-bottom:22px;letter-spacing:.3px}
.btn{display:inline-block;background:#fff;color:var(--brand-d);font-weight:650;padding:13px 24px;
  border-radius:10px;font-size:16px}
.btn:hover{text-decoration:none;background:#eafffe}
.btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5);margin-left:12px}
/* sections */
section{padding:66px 0}
.eyebrow{color:var(--brand);font-weight:700;font-size:13px;letter-spacing:1.3px;text-transform:uppercase;margin:0 0 10px}
h2{font-size:30px;margin:0 0 16px;letter-spacing:-.4px;font-weight:730}
.lead{color:var(--muted);font-size:18px;max-width:720px}
.alt{background:var(--bg-alt)}
/* steps */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px}
.alt .card{background:#fff}
.num{width:38px;height:38px;border-radius:10px;background:var(--brand-l);color:var(--brand-d);
  font-weight:750;display:flex;align-items:center;justify-content:center;font-size:17px;margin-bottom:16px}
.card h3{margin:0 0 8px;font-size:19px}
.card p{margin:0;color:var(--muted);font-size:15.5px}
/* feature list */
.feat{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 34px;margin-top:34px}
.feat .item{display:flex;gap:13px;align-items:flex-start}
.feat .tick{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--brand-l);color:var(--brand-d);
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;margin-top:3px}
.feat h4{margin:0 0 3px;font-size:16.5px}
.feat p{margin:0;color:var(--muted);font-size:15px}
/* cta */
.cta{background:linear-gradient(160deg,#0e7c7b,#0a5c5b);color:#fff;border-radius:20px;padding:46px 40px;text-align:center;margin:10px 0}
.cta h2{color:#fff}
.cta p{color:#dff0ef;max-width:560px;margin:0 auto 26px;font-size:17px}
/* footer */
footer{background:#0c1417;color:#9fb0b5;padding:48px 0 40px;font-size:14.5px}
footer .cols{display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px}
footer .brand{color:#fff}
footer a{color:#cfe0e0}
footer .legal{margin-top:30px;padding-top:20px;border-top:1px solid #1e2b30;color:#7f9096;font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
/* legal pages */
.doc{max-width:820px;margin:0 auto;padding:54px 24px 70px}
.doc h1{font-size:34px;margin:0 0 6px;letter-spacing:-.4px}
.doc .updated{color:var(--muted);font-size:14px;margin-bottom:34px}
.doc h2{font-size:21px;margin:34px 0 10px}
.doc p,.doc li{color:#33434c;font-size:16px}
.doc ul{padding-left:22px}
.doc .box{background:var(--bg-alt);border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin:22px 0}
.back{display:inline-block;margin-bottom:24px;color:var(--brand-d);font-weight:600}
@media(max-width:820px){.grid,.feat{grid-template-columns:1fr}.hero h1{font-size:32px}.nav nav{display:none}}
