:root{
  --teal:#0E7C72; --teal-deep:#0A5A53; --ink:#0C2B2E; --mint:#DFF2EE;
  --red:#E8253C; --bg:#F6FAF9; --card:#FFFFFF; --line:#D8E8E5;
  --text:#22423F; --muted:#5E7B78;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);line-height:1.6;}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px;}
h1,h2,h3{font-family:'Archivo',sans-serif;color:var(--ink);letter-spacing:-0.015em;}
.eyebrow{font-family:'Spline Sans Mono',monospace;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin-bottom:14px;}
section{padding:56px 0;}

header{position:sticky;top:0;z-index:60;background:rgba(246,250,249,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.brandbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
.brand-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--teal),var(--teal-deep));color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Archivo',sans-serif;font-weight:800;font-size:.78rem;flex:0 0 auto;}
.brand-name{font-family:'Archivo',sans-serif;font-weight:800;color:var(--ink);font-size:1.02rem;line-height:1.1;}
.brand-name small{display:block;font-family:'Spline Sans Mono',monospace;font-weight:400;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-top:3px;}
nav{display:flex;align-items:center;gap:4px;}
nav a{text-decoration:none;font-size:.9rem;font-weight:500;color:var(--text);padding:8px 12px;border-radius:8px;}
nav a:hover{background:var(--mint);color:var(--teal-deep);}
nav a.nav-cta{background:var(--teal);color:#fff;font-weight:600;margin-left:6px;}
nav a.nav-cta:hover{background:var(--teal-deep);color:#fff;}
.menu-btn{display:none;font-family:'Spline Sans Mono',monospace;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;background:none;border:1px solid var(--line);border-radius:8px;padding:9px 14px;color:var(--ink);cursor:pointer;align-items:center;gap:8px;}
.bars{display:inline-flex;flex-direction:column;gap:3px;}
.bars i{width:14px;height:2px;background:var(--ink);display:block;}

.page-hero{background:linear-gradient(160deg,var(--ink) 0%,#0F3A38 60%,var(--teal-deep) 100%);color:#fff;padding:58px 0 52px;}
.page-hero .eyebrow{color:#5FD3C4;}
.page-hero h1{color:#fff;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.12;max-width:760px;margin-bottom:14px;}
.page-hero p{max-width:620px;color:#C6E2DD;font-size:1rem;}

.btn{display:inline-block;background:var(--red);color:#fff;font-family:'Archivo',sans-serif;font-weight:700;padding:14px 30px;border-radius:999px;text-decoration:none;font-size:.95rem;border:none;cursor:pointer;transition:transform .15s ease;}
.btn:hover{transform:translateY(-2px);}
.btn.teal{background:var(--teal);}
.btn.small{padding:11px 22px;font-size:.85rem;}

.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:32px;}
.panel.dark{background:var(--ink);color:#fff;border:none;}
.panel.dark h2,.panel.dark h3{color:#fff;}
.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start;}

.field{margin-bottom:16px;}
.field label{display:block;font-family:'Spline Sans Mono',monospace;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:7px;}
.panel.dark .field label{color:#9FC9C3;}
.field input,.field select,.field textarea{width:100%;padding:13px 15px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);font-family:'Inter',sans-serif;font-size:1rem;}
.panel.dark .field input,.panel.dark .field select{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--teal);}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.field-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;}

.out{background:var(--mint);border-radius:14px;padding:20px;}
.panel.dark .out{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);}
.out-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:.9rem;border-bottom:1px solid rgba(12,43,46,.1);}
.panel.dark .out-row{border-bottom:1px solid rgba(255,255,255,.08);}
.out-row:last-child{border-bottom:none;}
.out-row strong{font-family:'Archivo',sans-serif;color:var(--teal-deep);}
.panel.dark .out-row strong{color:#5FD3C4;}
.out-row.total strong{font-size:1.15rem;color:var(--ink);}
.panel.dark .out-row.total strong{color:#fff;}
.note{font-family:'Spline Sans Mono',monospace;font-size:.64rem;letter-spacing:.08em;color:var(--muted);margin-top:16px;}
.panel.dark .note{color:#7FA9A4;}

footer{background:var(--ink);color:#8FB8B2;padding:48px 0 34px;margin-top:64px;}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;}
.foot-grid h4{font-family:'Spline Sans Mono',monospace;font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:#5FD3C4;margin-bottom:12px;}
.foot-grid p,.foot-grid a{font-size:.85rem;color:#B9D9D4;text-decoration:none;display:block;padding:3px 0;}
.foot-grid a:hover{color:#fff;}
.foot-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:18px;font-family:'Spline Sans Mono',monospace;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;}

@media (max-width:900px){
  .tool-grid,.foot-grid,.field-row-3{grid-template-columns:1fr;}
  nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ink);flex-direction:column;align-items:stretch;padding:14px 18px 20px;gap:2px;box-shadow:0 18px 30px rgba(0,0,0,.35);}
  nav.open{display:flex;}
  nav a{color:#DFF2EE;padding:13px 12px;border-radius:10px;}
  nav a:hover{background:rgba(255,255,255,.08);color:#fff;}
  nav a.nav-cta{margin:10px 0 0;text-align:center;}
  .menu-btn{display:inline-flex;}
  section{padding:44px 0;}
  .panel{padding:24px 20px;}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important;}}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:6px;}
