:root{
  --bg:#ffffff; --fg:#0a0a0a; --muted:#6b6b6b; --line:#e8e8e8;
  --field:#f5f5f5; --btn:#0a0a0a; --btn-fg:#ffffff;
  --dot:rgba(10,10,10,.18); --glass:rgba(255,255,255,.72); --glass-line:rgba(10,10,10,.08);
  --ok:#16a34a; --accent:#2563eb;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0a0a0a; --fg:#f2f2f2; --muted:#8a8a8a; --line:#1f1f1f;
    --field:#141414; --btn:#f2f2f2; --btn-fg:#0a0a0a;
    --dot:rgba(242,242,242,.16); --glass:rgba(20,20,20,.72); --glass-line:rgba(255,255,255,.08);
    --ok:#4ade80; --accent:#60a5fa;
  }
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--fg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.mono{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}

/* nav */
nav{position:sticky;top:0;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{display:flex;align-items:center;gap:10px;font-weight:600;letter-spacing:-.01em}
.logo svg{width:24px;height:24px;display:block}
nav ul{display:flex;align-items:center;gap:28px;list-style:none;font-size:14px;color:var(--muted)}
nav ul a:hover{color:var(--fg)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:999px;background:var(--btn);color:var(--btn-fg);font-size:14px;font-weight:500;border:0;cursor:pointer;font-family:inherit;transition:opacity .15s}
.btn:hover{opacity:.85}
.btn.sm{padding:8px 16px;font-size:13px}
.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}
.btn.ghost:hover{opacity:1;border-color:var(--fg)}

/* hero */
.hero{padding:120px 0 100px}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.035em;font-weight:600;max-width:14ch}
.hero p{margin-top:28px;font-size:1.15rem;color:var(--muted);max-width:38ch}
.hero .actions{display:flex;gap:12px;margin-top:40px;flex-wrap:wrap}

.visual{position:relative;height:460px;border-radius:20px;overflow:hidden;
  -webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 55%,transparent 100%);
          mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 55%,transparent 100%)}
.visual canvas{position:absolute;inset:0;width:100%;height:100%}
.card{position:absolute;left:50%;top:50%;width:min(360px,86%);transform:translate(-50%,-50%);
  background:var(--glass);border:1px solid var(--glass-line);border-radius:14px;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 30px 80px -30px rgba(0,0,0,.35);
  font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.7;
  transition:transform .15s ease-out;will-change:transform}
.card .bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--glass-line);color:var(--muted);font-size:11px}
.card .bar i{width:9px;height:9px;border-radius:50%;background:var(--line);display:inline-block}
.card .bar span{margin-left:auto}
.card .body{padding:14px 16px;min-height:188px}
.card .ln{display:flex;gap:10px;opacity:0;transform:translateY(4px);animation:in .35s ease forwards}
.card .ln .t{color:var(--muted);flex:none;width:56px}
.card .ok{color:var(--ok)}
.card .ac{color:var(--accent)}
.card .cur::after{content:"";display:inline-block;width:7px;height:13px;background:var(--fg);vertical-align:-2px;margin-left:2px;animation:blink 1s steps(2) infinite}
@keyframes in{to{opacity:1;transform:none}}
@keyframes blink{50%{opacity:0}}
.pill{position:absolute;padding:6px 10px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:12px;font-weight:500;display:flex;align-items:center;gap:6px;animation:float 6s ease-in-out infinite}
.pill i{width:7px;height:7px;border-radius:50%;background:var(--ok);display:inline-block;box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 25%,transparent)}
.p1{left:4%;top:12%;z-index:2}
.p2{right:3%;top:10%;animation-delay:-2s;z-index:2}
.p3{right:5%;bottom:10%;animation-delay:-4s;z-index:2}
@keyframes float{50%{transform:translateY(-8px)}}

/* sections */
section{border-top:1px solid var(--line);padding:88px 0}
.label{font-size:14px;font-weight:500;color:var(--muted);margin-bottom:40px}
h2.big{font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:-.025em;font-weight:600;line-height:1.15;margin-bottom:40px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 40px}
.grid h3{font-size:1.05rem;font-weight:600;letter-spacing:-.01em;margin-bottom:10px}
.grid p{font-size:.95rem;color:var(--muted)}

/* pricing */
.pricing-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.pricing-head h2{margin-bottom:0}
.seg{display:inline-flex;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--field);position:relative}
.seg button{position:relative;z-index:1;padding:8px 16px;border:0;background:transparent;border-radius:999px;font:inherit;font-size:13px;font-weight:500;color:var(--muted);cursor:pointer;transition:color .2s}
.seg button.active{color:var(--btn-fg)}
.seg .ind{position:absolute;top:4px;left:4px;height:calc(100% - 8px);border-radius:999px;background:var(--btn);transition:transform .25s cubic-bezier(.4,0,.2,1),width .25s}
.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.benefits{border:1px solid var(--line);border-radius:16px;padding:28px 26px;display:flex;flex-direction:column;gap:18px}
.tag{font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.02em;display:flex;justify-content:space-between}
.benefits ul{list-style:none;display:grid;gap:9px;font-size:.95rem;color:var(--muted)}
.benefits li{display:flex;gap:10px}
.benefits li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:currentColor;margin-top:9px;opacity:.6}
.terms{display:grid;gap:10px;align-content:start}
.plan{position:relative;display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:transparent;color:var(--fg);font:inherit;cursor:pointer;transition:border-color .15s,background .15s}
.plan:hover{border-color:var(--muted)}
.plan.selected{border-color:var(--fg);background:var(--field)}
.plan .best{position:absolute;top:-9px;left:16px;padding:2px 8px;border-radius:999px;background:var(--btn);color:var(--btn-fg);font-size:10.5px;font-weight:600;letter-spacing:.02em}
.plan .dur{font-weight:500;display:flex;flex-direction:column;gap:2px}
.plan .dur em{font-style:normal;font-size:12px;color:var(--ok);font-weight:500}
.plan .amt{display:flex;align-items:baseline;gap:6px;letter-spacing:-.02em}
.plan .amt s{font-size:.85rem;color:var(--muted)}
.plan .amt b{font-size:1.5rem;font-weight:600}
.plan .amt small{font-size:.8rem;color:var(--muted)}
.checkout-row{display:flex;align-items:center;gap:20px;margin-top:20px;flex-wrap:wrap}
.fine{font-size:13px;color:var(--muted)}

/* modal */
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:50}
.overlay.show{opacity:1;pointer-events:auto}
.modal{position:relative;width:min(420px,100%);background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:32px 28px;display:grid;gap:14px;transform:translateY(8px);transition:transform .2s}
.overlay.show .modal{transform:none}
.modal .eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.modal h3{font-size:1.4rem;font-weight:600;letter-spacing:-.02em;line-height:1.2}
.modal p{color:var(--muted);font-size:13px}
.modal .btn{justify-content:center}
.modal .close{position:absolute;top:12px;right:14px;background:none;border:0;color:var(--muted);font-size:1.4rem;cursor:pointer;line-height:1}
.modal .copy{background:none;border:0;color:var(--muted);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* faq */
.qs{max-width:720px}
details{border-top:1px solid var(--line)}
details:last-child{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:500;display:flex;justify-content:space-between;align-items:center;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-weight:400;color:var(--muted);font-size:1.2rem;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 0 20px;color:var(--muted);font-size:.95rem;max-width:60ch}

/* cta */
.cta-block .wrap{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}
.cta-block h2{margin-bottom:0}

/* footer */
footer{border-top:1px solid var(--line);padding:40px 0 48px;font-size:13px;color:var(--muted)}
footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-start}
footer .logo{color:var(--fg);margin-bottom:10px}
footer address{font-style:normal;line-height:1.7}
footer .right{text-align:right;line-height:1.9}
footer .right a:hover{color:var(--fg)}

/* legal pages */
.doc{max-width:720px;margin:0 auto;padding:80px 24px 40px}
.doc .eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.doc h1{font-size:clamp(2rem,4vw,2.8rem);max-width:none;margin-bottom:10px}
.doc .updated{font-size:13px;color:var(--muted);margin-bottom:32px}
.doc .intro{font-size:1.1rem;color:var(--muted);padding-bottom:32px;border-bottom:1px solid var(--line)}
.doc h2{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;margin:40px 0 12px}
.doc p,.doc li{color:var(--muted);font-size:.98rem;margin-bottom:12px}
.doc b{color:var(--fg);font-weight:600}
.doc a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.doc ul{padding-left:20px;margin-bottom:12px}
.doc .addr{margin-top:12px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:var(--field);font-size:.95rem;line-height:1.7}
.doc .back{display:inline-block;margin-bottom:32px;font-size:14px;color:var(--muted)}
.doc .back:hover{color:var(--fg)}

@media (max-width:860px){
  .hero{padding:72px 0 64px}
  .hero .wrap,.cta-block .wrap{grid-template-columns:1fr}
  .visual{height:380px}
  .grid,.plans-grid{grid-template-columns:1fr}
  section{padding:64px 0}
  nav ul li.hide{display:none}
  footer .right{text-align:left}
  .card{font-size:11.5px}
}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .card .ln{opacity:1;transform:none}
}
