/* ============================================================
   AIcode Tool · landing — dark premium, iridescent (RGB del prodotto)
   ============================================================ */
:root{
  --bg:#08090d; --bg2:#0c0e13; --surface:#111319; --surface2:#161922;
  --line:#1e222c; --line2:#2b3040;
  --ink:#f1f4f9; --muted:#98a1b4; --faint:#616a7d;
  --c1:#2fe0e6; --c2:#7c5cff; --c3:#ff5ca8;
  --ok:#3ddc84; --am:#ffc24b; --no:#ff5a68;
  --irid:linear-gradient(100deg,#2fe0e6,#7c5cff 52%,#ff5ca8);
  --irid-soft:linear-gradient(100deg,rgba(47,224,230,.16),rgba(124,92,255,.16),rgba(255,92,168,.16));
  --display:'Bricolage Grotesque',system-ui,sans-serif;
  --body:'Inter',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --maxw:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
  background-image:
    radial-gradient(900px 480px at 84% -6%, rgba(124,92,255,.18), transparent 60%),
    radial-gradient(680px 420px at 4% 6%, rgba(47,224,230,.10), transparent 55%),
    radial-gradient(700px 500px at 60% 108%, rgba(255,92,168,.10), transparent 60%);
  background-attachment:fixed;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.025em;line-height:1.04;margin:0}
.mono{font-family:var(--mono)}
.hl{background:var(--irid);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.05em;margin:0 0 14px;
  background:var(--irid);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--body);
  font-weight:600;font-size:15px;padding:14px 22px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:.16s}
.btn-solid{background:var(--irid);color:#0a0b0f;box-shadow:0 10px 34px -12px rgba(124,92,255,.7)}
.btn-solid:hover{filter:brightness(1.08);transform:translateY(-1px)}
.btn-ghost{background:rgba(255,255,255,.02);border-color:var(--line2);color:var(--ink)}
.btn-ghost:hover{border-color:var(--c2);color:#fff}
.btn-sm{padding:10px 16px;font-size:14px;border-radius:10px}
.btn-block{width:100%}
.btn:focus-visible{outline:2px solid var(--c1);outline-offset:3px}

/* NAV */
.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:20px;padding:14px clamp(18px,5vw,44px);
  background:rgba(8,9,13,.72);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:800;font-size:19px;letter-spacing:-.02em}
.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--irid);
  color:#0a0b0f;font-family:var(--mono);font-size:14px;font-weight:700}
.brand-name{display:inline-flex;align-items:baseline;gap:6px}
.brand-tag{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--faint);letter-spacing:.04em}
.nav-links{display:flex;gap:24px;margin-left:auto;font-size:14.5px;color:var(--muted)}
.nav-links a:hover{color:var(--ink)}

/* HERO */
.hero{max-width:var(--maxw);margin:0 auto;padding:clamp(38px,6vw,80px) clamp(18px,5vw,44px) 56px;
  display:grid;grid-template-columns:1fr 1.08fr;gap:clamp(26px,4vw,54px);align-items:center}
.hero h1{font-size:clamp(38px,5.2vw,60px);font-weight:800;margin:6px 0 18px}
.lede{font-size:clamp(16px,1.5vw,18.5px);color:var(--muted);max-width:36ch;margin:0 0 28px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.ship{font-family:var(--mono);font-size:12.5px;color:var(--faint);margin:22px 0 0}
.hero-media{position:relative}
.hero-media img{width:100%;border-radius:20px;border:1px solid var(--line2);
  box-shadow:0 50px 100px -40px #000, 0 0 0 1px rgba(255,255,255,.03) inset}
.hero-glow{position:absolute;inset:-14% -8% -22% -8%;z-index:-1;border-radius:40px;filter:blur(60px);opacity:.5;
  background:var(--irid)}

/* STRIP */
.strip{max-width:var(--maxw);margin:0 auto;padding:20px clamp(18px,5vw,44px);display:flex;align-items:center;
  justify-content:center;gap:14px;flex-wrap:wrap;font-family:var(--mono);font-size:13px;color:var(--faint);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.strip b{color:var(--muted);font-weight:500}.strip .sep{color:var(--line2)}

/* section heads */
.sec-head{max-width:var(--maxw);margin:0 auto;padding:0 clamp(18px,5vw,44px)}
.sec-head.center{text-align:center}
.sec-head.center .sec-sub{margin-inline:auto}
.sec-head h2{font-size:clamp(28px,3.6vw,42px)}
.sec-sub{color:var(--muted);margin:14px 0 0;max-width:54ch}

/* DEMO */
.demo{padding:clamp(56px,8vw,100px) 0}
.demo-stage{max-width:var(--maxw);margin:44px auto 0;padding:0 clamp(18px,5vw,44px);
  display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center}
.term{background:linear-gradient(180deg,#0e1016,#0a0c11);border:1px solid var(--line2);border-radius:16px;overflow:hidden;
  box-shadow:0 40px 90px -44px #000}
.term-bar{display:flex;align-items:center;gap:7px;padding:12px 15px;border-bottom:1px solid var(--line);background:#0c0e13}
.tb-dot{width:11px;height:11px;border-radius:50%;background:#2b3040}
.tb-dot:nth-child(1){background:#ff5a6866}.tb-dot:nth-child(2){background:#ffc24b66}.tb-dot:nth-child(3){background:#3ddc8466}
.term-title{margin-left:10px;font-family:var(--mono);font-size:12.5px;color:var(--faint)}
.term-body{padding:18px;font-family:var(--mono);font-size:13.5px;line-height:1.85;min-height:198px}
.tl{margin:0;white-space:pre-wrap}
.tok-dim{color:var(--faint)}.tok-fn{color:var(--c1)}
.opt{color:var(--muted);border-radius:6px;padding:1px 6px;margin:0 -6px;transition:.15s}
.opt .num{color:var(--faint);margin-right:4px}
.opt.on{background:rgba(124,92,255,.16);color:var(--ink)}
.opt.on .num{color:var(--c2)}
.result{margin-top:10px;min-height:22px;font-weight:500}
.result.ok{color:var(--ok)}.result.am{color:var(--am)}.result.no{color:var(--no)}
.pad-col{display:flex;justify-content:center}
.pad{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;place-items:center}
.cap{position:relative;width:96px;height:96px;border-radius:16px;border:1px solid var(--line2);
  background:linear-gradient(180deg,#e9ebef,#c9cdd6);color:#15171d;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  box-shadow:0 6px 0 #14161c,0 14px 26px -10px #000;transition:transform .06s,box-shadow .06s;font-family:var(--body)}
.cap:hover{transform:translateY(-1px)}
.cap:active,.cap.press{transform:translateY(5px);box-shadow:0 1px 0 #14161c,0 5px 12px -6px #000}
.cap-n{font-family:var(--mono);font-size:26px;font-weight:700}
.cap-l{font-size:11px;color:#5a6072}
.cap-1 .cap-n{color:#18a558}.cap-2 .cap-n{color:#c98a12}.cap-3 .cap-n{color:#d23a48}
.cap:focus-visible{outline:2px solid var(--c1);outline-offset:3px}
.knob{position:relative;width:96px;height:96px;border-radius:50%;cursor:pointer;
  background:radial-gradient(circle at 38% 34%,#e9ebef,#b9bec9);border:1px solid var(--line2);
  box-shadow:0 8px 22px -8px #000,inset 0 2px 5px rgba(255,255,255,.5);display:grid;place-items:center;transition:transform .3s}
.knob-tick{position:absolute;top:9px;left:calc(50% - 2px);width:4px;height:15px;border-radius:2px;background:var(--irid)}
.knob-cap{font-family:var(--mono);font-size:11px;color:#5a6072}
.knob:focus-visible{outline:2px solid var(--c1);outline-offset:3px}

/* HOW */
.how{padding:clamp(40px,6vw,80px) 0}
.steps{max-width:var(--maxw);margin:44px auto 0;padding:0 clamp(18px,5vw,44px);list-style:none;
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 24px}
.step-n{font-family:var(--mono);font-size:13px;letter-spacing:.1em;
  background:var(--irid);-webkit-background-clip:text;background-clip:text;color:transparent}
.step h3{font-size:20px;margin:16px 0 10px}
.step p{color:var(--muted);font-size:15px;margin:0}
.c-ok{color:var(--ok)}.c-am{color:var(--am)}.c-no{color:var(--no)}

/* FEATURES */
.features{padding:clamp(50px,7vw,90px) 0}
.grid{max-width:var(--maxw);margin:44px auto 0;padding:0 clamp(18px,5vw,44px);
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feat{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 24px;transition:.18s}
.feat:hover{border-color:var(--line2);transform:translateY(-2px)}
.feat-ico{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;font-size:20px;
  background:var(--irid-soft);color:var(--c1);border:1px solid var(--line2);margin-bottom:16px}
.feat h3{font-size:18px;margin:0 0 8px}
.feat p{color:var(--muted);font-size:14.5px;margin:0}

/* PRODUCT */
.product{max-width:var(--maxw);margin:0 auto;padding:clamp(40px,6vw,80px) clamp(18px,5vw,44px);
  display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,4vw,60px);align-items:center}
.product-media img{width:100%;border-radius:20px;border:1px solid var(--line2);box-shadow:0 40px 90px -44px #000}
.product h2{font-size:clamp(26px,3.4vw,38px);margin:8px 0 20px}
.specs{list-style:none;padding:0;margin:0}
.specs li{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}
.specs span{color:var(--faint);font-family:var(--mono);font-size:13px}
.specs b{color:var(--ink);font-weight:500;text-align:right}

/* VIDEO */
.video{padding:clamp(40px,6vw,80px) 0}
.video-wrap{max-width:960px;margin:40px auto 0;padding:0 clamp(18px,5vw,44px);position:relative}
.video-wrap video{width:100%;border-radius:20px;border:1px solid var(--line2);display:block;
  box-shadow:0 50px 100px -46px #000;background:#000}
.video-wrap:before{content:"";position:absolute;inset:6px clamp(24px,5.5vw,50px);z-index:-1;border-radius:30px;
  filter:blur(50px);opacity:.4;background:var(--irid)}

/* PRICING */
.pricing{padding:clamp(50px,7vw,90px) clamp(18px,5vw,44px)}
.price-card{max-width:560px;margin:0 auto;background:linear-gradient(180deg,var(--surface2),var(--surface));
  border:1px solid var(--line2);border-radius:24px;padding:clamp(28px,4vw,44px);text-align:center;position:relative;
  box-shadow:0 50px 100px -50px #000}
.price-card:before{content:"";position:absolute;inset:-1px;border-radius:24px;padding:1px;pointer-events:none;
  background:var(--irid);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.5}
.price-head h2{font-size:clamp(26px,3.4vw,36px)}
.price-tag{display:flex;align-items:flex-start;justify-content:center;gap:4px;margin:24px 0 6px}
.price-tag .cur{font-family:var(--display);font-size:32px;color:var(--muted);margin-top:8px}
.price-tag .amt{font-family:var(--display);font-weight:800;font-size:84px;line-height:.9;
  background:var(--irid);-webkit-background-clip:text;background-clip:text;color:transparent}
.price-tag .per{align-self:flex-end;font-family:var(--mono);font-size:12px;color:var(--faint);margin-bottom:12px}
.incl{list-style:none;padding:0;margin:20px auto 26px;text-align:left;max-width:360px}
.incl li{padding:9px 0 9px 30px;position:relative;color:var(--muted);border-bottom:1px solid var(--line)}
.incl li:before{content:"✓";position:absolute;left:0;top:9px;color:var(--c1);font-weight:700}
.ship-badge{display:inline-block;margin:0 0 16px;padding:8px 16px;border-radius:100px;background:var(--irid-soft);
  border:1px solid var(--line2);color:var(--ink);font-size:13.5px}
.ship-badge b{background:var(--irid);-webkit-background-clip:text;background-clip:text;color:transparent}
.price-fine{font-size:12.5px;color:var(--faint);margin:16px 0 0}

/* FAQ */
.faq{padding:clamp(40px,6vw,80px) 0}
.acc{max-width:760px;margin:36px auto 0;padding:0 clamp(18px,5vw,44px)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-family:var(--display);font-weight:600;font-size:18px;position:relative}
.acc summary::-webkit-details-marker{display:none}
.acc summary:after{content:"+";position:absolute;right:6px;top:16px;font-size:24px;color:var(--c2);transition:.2s}
.acc details[open] summary:after{transform:rotate(45deg)}
.acc summary:hover{color:#fff}
.acc p{color:var(--muted);margin:0 0 22px;max-width:64ch}

/* RESERVED */
.reserved{padding:0 clamp(18px,5vw,44px) clamp(50px,7vw,90px)}
.reserved-inner{max-width:var(--maxw);margin:0 auto;background:var(--irid-soft);border:1px solid var(--line2);
  border-radius:20px;padding:clamp(26px,4vw,40px);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.reserved h2{font-size:clamp(22px,2.8vw,30px)}
.reserved p{color:var(--muted);margin:10px 0 0;max-width:46ch}

/* FOOTER */
.foot{border-top:1px solid var(--line);padding:44px clamp(18px,5vw,44px) 40px}
.foot-top{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.foot-links{display:flex;gap:22px;color:var(--muted);font-size:14px;flex-wrap:wrap}
.foot-links a:hover{color:var(--ink)}
.foot-fine{max-width:var(--maxw);margin:24px auto 0;color:var(--faint);font-size:12.5px;line-height:1.7}

/* MODAL */
.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:rgba(4,5,8,.72);backdrop-filter:blur(6px)}
.modal[hidden]{display:none}
.modal-card{width:100%;max-width:440px;background:var(--surface2);border:1px solid var(--line2);border-radius:20px;padding:30px;position:relative;box-shadow:0 40px 90px -40px #000}
.modal-x{position:absolute;top:16px;right:16px;background:transparent;border:0;color:var(--faint);font-size:16px;cursor:pointer}
.modal-x:hover{color:var(--ink)}
.modal-card h3{font-size:26px;margin:2px 0 10px}
.modal-p{color:var(--muted);font-size:15px;margin:0 0 20px}
.wait-form{display:flex;gap:10px;flex-wrap:wrap}
.wait-form input{flex:1;min-width:200px;background:var(--bg);border:1px solid var(--line2);border-radius:11px;padding:13px 14px;color:var(--ink);font-family:var(--body);font-size:15px}
.wait-form input:focus{outline:2px solid var(--c1);outline-offset:0}
.modal-note{font-size:13px;color:var(--ok);margin:14px 0 0;min-height:18px}

/* RESPONSIVE */
@media (max-width:920px){
  .hero{grid-template-columns:1fr}
  .hero-media{order:-1}
  .product{grid-template-columns:1fr}
  .demo-stage,.steps,.grid{grid-template-columns:1fr}
  .nav-links{display:none}
}
@media (max-width:520px){
  .pad{grid-template-columns:repeat(2,1fr)}
  .cap,.knob{width:84px;height:84px}
  .price-tag .amt{font-size:66px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
