:root {
  --amber:#FFB020;
}
* { box-sizing:border-box; margin:0; }
button, input, select, textarea { font-family:inherit; }
html { scroll-behavior:smooth; scrollbar-gutter:stable; }
body { background:var(--pine); color:var(--paper); font-family:'Plus Jakarta Sans',system-ui,sans-serif; -webkit-font-smoothing:antialiased; font-variant-ligatures:none; overflow-x:hidden; }
.wrap { max-width:1180px; margin:0 auto; padding:0 28px; }
.dot { display:inline-block; width:0.18em; height:0.18em; border-radius:50%; background:var(--green); margin-left:0.02em; vertical-align:baseline; }
a { color:inherit; text-decoration:none; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline:2px solid var(--green); outline-offset:2px; border-radius:4px; }
.navbg { position:sticky; top:0; z-index:50; background:rgba(14,20,17,0.82); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
nav { display:flex; align-items:center; gap:30px; padding:18px 0; }
.logo { font-weight:800; font-size:24px; letter-spacing:-0.04em; }
.nav-right { margin-left:auto; display:flex; align-items:center; gap:26px; }
.nav-right a { font-size:13.5px; font-weight:600; color:var(--mut); font-variant-ligatures:none; }
.nav-right a:hover, .nav-right a.active { color:var(--paper); }
.nav-right a.cta-sm { background:var(--green); color:var(--on-accent); font-weight:700; font-size:13.5px; line-height:1.4; padding:9px 20px; border-radius:var(--r-sm); cursor:pointer; transition:background .15s ease; }
.nav-right a.cta-sm:hover { background:var(--mint); }
@media (max-width:640px){ .nav-hide{ display:none; } }
.primary { display:inline-flex; align-items:center; gap:9px; background:var(--green); color:var(--on-accent); font-weight:800; font-size:15px; padding:15px 34px; border-radius:var(--r); box-shadow:0 0 44px rgba(11,216,115,0.24); cursor:pointer; transition:background .15s ease; }
.primary:hover { background:var(--mint); }
.primary.lg { font-size:16px; padding:16px 48px; box-shadow:0 0 44px rgba(11,216,115,0.28); }
h1 .grad { background:linear-gradient(120deg,var(--green),var(--mint)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.sub { color:#A8BCAD; font-size:clamp(16px,1.7vw,19px); line-height:1.55; }
.micro { font-size:12.5px; color:var(--mut); font-weight:600; }
.kicker { font-family:inherit; font-size:12px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; }
footer { background:var(--deep); border-top:1px solid var(--line); }
footer .row { display:flex; gap:20px; align-items:center; flex-wrap:wrap; padding:26px 0 40px; font-size:12px; color:var(--dim); font-weight:600; }
footer .logo { font-size:18px; color:var(--paper); }
footer .fl { display:flex; gap:18px; flex-wrap:wrap; }
footer .right { margin-left:auto; display:flex; gap:16px; flex-wrap:wrap; }
footer a { color:var(--dim); }
footer a:hover { color:var(--paper); }
