:root{
  --bg:#0A0A0B;--ink:#F3EEE5;--accent:#C9A96E;--accent2:#E3C896;--on-accent:#15120d;
  --display:'Instrument Serif',Georgia,serif;--body:'Geist',system-ui,sans-serif;
  --surface:color-mix(in srgb,var(--ink) 4.5%,var(--bg));
  --surface2:color-mix(in srgb,var(--ink) 9%,var(--bg));
  --line:color-mix(in srgb,var(--ink) 13%,transparent);
  --mute:color-mix(in srgb,var(--ink) 62%,transparent);
  --faint:color-mix(in srgb,var(--ink) 44%,transparent);
  --gutter:clamp(16px,4vw,40px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.lock{overflow:hidden}
img,video{max-width:100%;display:block}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.ic{width:1.15em;height:1.15em;flex:none}
.ic.filled{fill:currentColor}.ic.big{width:28px;height:28px;color:var(--accent)}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 var(--gutter)}
.mute{color:var(--faint)}.small{font-size:13px;color:var(--mute)}
.spot{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(640px 460px at var(--mx,70%) var(--my,18%),color-mix(in srgb,var(--accent) 13%,transparent),transparent 70%)}
main,.foot,.nav{position:relative;z-index:1}

/* tipografia */
h1,h2,h3{font-weight:400}
h1{font-family:var(--display);font-size:clamp(2.7rem,6.3vw,5.6rem);line-height:.98;letter-spacing:-.025em}
h2{font-family:var(--display);font-size:clamp(2.1rem,4.6vw,3.9rem);line-height:1;letter-spacing:-.02em}
h3{font-family:var(--display);font-size:1.7rem;line-height:1.1;letter-spacing:-.01em}
.lead{color:var(--mute);font-size:clamp(1rem,1.3vw,1.125rem);max-width:56ch;margin-top:20px}

/* bottoni e pillole */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:48px;padding:0 24px;border-radius:999px;font-weight:600;font-size:15px;white-space:nowrap;transition:transform .15s,background .2s,border-color .2s}
.btn:active{transform:scale(.97)}
.btn-sm{height:38px;padding:0 16px;font-size:14px}
.btn-gold{background:var(--accent);color:var(--on-accent)}
.btn-gold:hover{background:var(--accent2)}
.btn-ghost{border:1px solid var(--line);background:color-mix(in srgb,var(--ink) 4%,transparent)}
.btn-ghost:hover{border-color:color-mix(in srgb,var(--ink) 30%,transparent);background:color-mix(in srgb,var(--ink) 8%,transparent)}
.btn-block{width:100%}.btn:disabled{opacity:.7;cursor:default}
.pill{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500;line-height:1.2}
.pill.glass{background:color-mix(in srgb,var(--bg) 62%,transparent);border:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.pill.gold{background:var(--accent);color:var(--on-accent);font-weight:600}
.pill.white{background:#fff;color:#111;font-weight:600}
.pill.live{background:#e5302f;color:#fff;font-weight:700;letter-spacing:.04em}
.dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}
.dot.ok{background:#4ade80}.dot.live-dot{background:#ff4d4d;box-shadow:0 0 0 0 rgba(255,77,77,.6);animation:ping 2s infinite}
.pill.live .dot{background:#fff}
@keyframes ping{70%{box-shadow:0 0 0 7px rgba(255,77,77,0)}100%{box-shadow:0 0 0 0 rgba(255,77,77,0)}}
.round{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.18);color:#fff;backdrop-filter:blur(10px);transition:background .2s}
.round:hover{background:rgba(0,0,0,.8)}
.link{display:inline-flex;gap:6px;align-items:center;color:var(--accent);font-weight:600;font-size:14px}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:border-color .2s}
.nav.stuck{border-color:var(--line)}
.nav-in{display:flex;align-items:center;gap:20px;height:68px}
.brand{display:flex;align-items:center;gap:11px;flex:none}
.logo{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:13px;flex:none;letter-spacing:.02em}
.logo.sm{width:24px;height:24px;border-radius:8px;font-size:10px;display:inline-grid;vertical-align:middle}
.bname{font-family:var(--display);font-size:22px;letter-spacing:-.01em;white-space:nowrap}
.btag{font-size:12px;color:var(--accent2);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:999px;padding:2px 9px;white-space:nowrap}
.navlinks{display:flex;gap:26px;margin-left:auto;font-size:14.5px;color:var(--mute)}
.navlinks a{white-space:nowrap}
.navlinks a:hover{color:var(--ink)}
.nav-cta{margin-left:6px}
.burger{display:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);place-items:center;margin-left:auto}
.drawer{display:flex;flex-direction:column;gap:2px;padding:8px var(--gutter) 20px;border-top:1px solid var(--line);background:var(--bg)}
.drawer a:not(.btn){padding:13px 4px;color:var(--mute);border-bottom:1px solid var(--line)}
.drawer .btn{margin-top:14px}
.scrollbar{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}

/* hero */
.hero{overflow-x:clip;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(32px,6vw,88px);align-items:center;padding-top:clamp(40px,7vw,88px);padding-bottom:clamp(40px,6vw,72px)}
.badge{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent2);font-size:13.5px;margin-bottom:26px;max-width:100%}
.badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero-copy .lead{max-width:50ch}
.cmp{display:grid;gap:18px;max-width:520px;margin-top:34px}
.cmp-top{display:flex;justify-content:space-between;font-size:14px;margin-bottom:8px;color:var(--mute)}
.cmp-top b{font-weight:600;color:var(--ink)}
.after .cmp-top{color:var(--ink)}.after .cmp-top b{color:var(--accent)}
.bar{height:6px;border-radius:99px;background:var(--surface2);overflow:hidden}
.bar i{display:block;height:100%;width:0;border-radius:99px;background:var(--faint);transition:width 1.3s cubic-bezier(.2,.7,.2,1)}
.after .bar i{background:var(--accent)}
.cmp.in .bar i{width:var(--w)}
.cmp-row p{font-size:13.5px;color:var(--faint);margin-top:8px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.proof{display:flex;align-items:center;gap:14px;margin-top:30px;font-size:13.5px;color:var(--faint);max-width:460px}
.avatars{display:flex;flex:none}.avatars i{width:30px;height:30px;border-radius:50%;background:var(--surface2);border:2px solid var(--bg);margin-left:-9px;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:700}
.avatars i:first-child{margin-left:0}.avatars i.n{background:var(--accent);color:var(--on-accent)}
.hero-visual{position:relative;justify-self:center;width:100%;max-width:360px}
.hero-visual::before{content:"";position:absolute;inset:-12% -22%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent);z-index:-1;filter:blur(10px)}
.feed{position:absolute;left:-24%;bottom:9%;display:flex;flex-direction:column;gap:10px;z-index:3;width:max-content;max-width:260px}
.fchip{display:flex;gap:10px;align-items:center;padding:8px 14px 8px 8px;border-radius:16px;background:color-mix(in srgb,var(--bg) 78%,transparent);border:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);animation:chipIn .55s cubic-bezier(.2,.8,.2,1)}
.fchip img{width:38px;height:38px;border-radius:10px;object-fit:cover;background:var(--surface2)}
.fchip b{display:block;font-size:13px;font-weight:600;line-height:1.25}
.fchip span{display:flex;gap:5px;align-items:center;font-size:11.5px;color:var(--mute)}
.fchip span .ic{color:#ff5d73;width:12px;height:12px}
.fchip:nth-child(n+3){opacity:.55}
@keyframes chipIn{from{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:none}}

/* telefono */
.phone{width:100%;max-width:340px;margin:0 auto;padding:9px;border-radius:42px;background:linear-gradient(160deg,#2a2a2d,#0d0d0e);border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px -30px rgba(0,0,0,.8)}
.screen{position:relative;border-radius:33px;overflow:hidden;background:#000;aspect-ratio:9/17.5}
.screen.vid{aspect-ratio:9/16}
.screen.shot{background:#0b0b0c}.screen.shot.tall{aspect-ratio:9/19.5}
.screen video,.screen.shot>img{width:100%;height:100%;object-fit:cover}
.screen.shot>img#dash-img{object-fit:contain}
.screen.shot>img.swap{animation:swap .45s ease-out}
@keyframes swap{from{opacity:0;transform:scale(1.015)}to{opacity:1;transform:none}}
.vid-btns{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;gap:8px;z-index:3}
.vid-badge{position:absolute;left:10px;right:10px;bottom:12px;display:flex;justify-content:space-between;gap:8px;z-index:2;pointer-events:none;color:#fff}
.vid-badge .pill{font-size:11px;padding:5px 10px}
.zoom{position:absolute;right:10px;top:10px;display:inline-flex;gap:6px;align-items:center;padding:7px 12px;border-radius:999px;background:#fff;color:#111;font-size:12px;font-weight:600}

/* statistiche */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:0;padding-bottom:0}
.stat{padding:30px 24px 30px 0}
.stat+.stat{padding-left:28px;border-left:1px solid var(--line)}
.sv{font-family:var(--display);font-size:clamp(2.6rem,4.4vw,3.8rem);line-height:1;letter-spacing:-.02em}
.stat p{font-size:14px;color:var(--mute);margin-top:8px;max-width:22ch}

/* sezioni */
.sec{padding:clamp(64px,10vw,128px) 0;position:relative}
.sec.alt{background:var(--surface);border-block:1px solid var(--line)}
.sh{max-width:760px;margin-bottom:clamp(32px,5vw,56px)}
.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.tags li{padding:7px 14px;border-radius:999px;border:1px solid var(--line);font-size:13.5px;color:var(--mute)}
.tags li:first-child{border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent2)}
.panel{border:1px solid var(--line);background:var(--surface);border-radius:28px;padding:28px}
.sec.alt .panel{background:var(--bg)}

/* banner doppio */
.banner{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:clamp(36px,5vw,64px);padding-bottom:clamp(36px,5vw,64px)}
.banner .panel{display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:22px;padding:22px 26px}
.banner h3{font-size:1.45rem}.banner p{color:var(--mute);font-size:14px;margin-top:4px}
.banner .p-right{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}

/* dashboard */
.dash{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(32px,6vw,88px);align-items:start}
.steps{display:grid;gap:12px}
.step{display:flex;gap:18px;align-items:flex-start;padding:22px;border-radius:22px;border:1px solid var(--line);cursor:pointer;transition:border-color .25s,background .25s}
.step:hover{border-color:color-mix(in srgb,var(--ink) 28%,transparent)}
.step.active{border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:var(--surface)}
.sn{width:34px;height:34px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:14px;font-weight:600;border:1px solid var(--line);color:var(--mute);transition:.25s}
.step.active .sn{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.step h3{font-family:var(--body);font-weight:600;font-size:1.08rem;letter-spacing:-.005em}
.step p{color:var(--mute);font-size:14.5px;margin-top:6px;max-width:48ch}
.slabel{display:inline-block;margin-top:12px;font-size:12.5px;color:var(--accent2)}
.dash-stage{position:sticky;top:92px;display:grid;gap:14px;justify-items:center}
.urlbar{display:flex;align-items:center;gap:8px;max-width:340px;width:100%;padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:12.5px;color:var(--mute)}
.urlbar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.urlbar .ic{color:#4ade80}
.dash-meta{width:100%;max-width:340px;font-size:12.5px;color:var(--mute);display:grid;gap:8px}
.track{height:4px;background:var(--surface2);border-radius:9px;overflow:hidden}.track.big{height:8px}
.track i{display:block;height:100%;background:var(--accent);border-radius:9px;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.dash-tabs{display:none;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--gutter)*-1) 18px;padding:0 var(--gutter)}
.dash-tabs::-webkit-scrollbar{display:none}
.tab{flex:none;height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--line);font-size:13.5px;color:var(--mute);white-space:nowrap}
.tab.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}

/* live */
.live-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,6vw,80px);align-items:center}
.points{display:grid;gap:18px;margin-top:30px;max-width:520px}
.points li{display:flex;gap:14px;align-items:flex-start}
.points .ic{width:22px;height:22px;color:var(--accent);margin-top:2px}
.points b{display:block;font-weight:600}.points span{color:var(--mute);font-size:14.5px}
.tv-card{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));background:var(--bg);border-radius:30px;padding:12px;min-width:0}
.tv-head{display:flex;align-items:center;gap:12px;padding:6px 8px 14px;flex-wrap:wrap}
.tv-head div{display:flex;flex-direction:column;min-width:0;flex:1}
.tv-head b{font-size:14px;font-weight:600}.tv-head span:not(.pill):not(.tv-counts){font-size:12px;color:var(--faint)}
.tv-counts{font-size:12.5px;color:var(--mute);white-space:nowrap}
.tv-stage{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:16/11;background:#000;color:#fff}
.tv-inner{position:absolute;inset:0}
.tv-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:swap .5s ease-out}
.tv-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.05) 55%,rgba(0,0,0,.35))}
.tv-top{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:flex-end}
.tv-bottom{position:absolute;left:14px;right:14px;bottom:16px;display:grid;gap:8px;justify-items:start}
.tv-sub{font-family:var(--display);font-size:clamp(1.15rem,2.2vw,1.6rem);line-height:1.1;text-shadow:0 2px 14px rgba(0,0,0,.6)}
.tv-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:var(--mute);font-size:14px}
.prog-wrap{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.15)}
.prog{display:block;height:100%;background:var(--accent);transform-origin:left;animation:prog 3.6s linear forwards}
.tv-stage:hover .prog,.tvo .tv-stage:hover .prog{animation-play-state:paused}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hearts{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.fh{position:absolute;bottom:14%;animation:rise var(--d,3s) ease-in forwards;font-size:22px;display:block}
.fh .ic{width:1em;height:1em}
@keyframes rise{0%{transform:translateY(8px) scale(.6) rotate(0);opacity:0}15%{opacity:1}100%{transform:translateY(-190px) scale(1.25) rotate(var(--r));opacity:0}}
.tv-ctrl{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 6px 4px}
.dots{display:flex;gap:7px}.dt{width:8px;height:8px;border-radius:99px;background:var(--surface2);transition:.25s;padding:0}
.dt.on{width:26px;background:var(--accent)}
.tv-btns{display:flex;gap:8px;flex-wrap:wrap}

.duo{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:clamp(28px,4vw,48px)}
.col{display:flex;flex-direction:column;gap:12px}
.ptop{display:flex;justify-content:space-between;align-items:center;gap:10px}
.col h3{margin-top:10px;font-size:2rem}.col .sub{color:var(--faint);font-size:14.5px;margin-top:-6px}.col p:not(.sub){color:var(--mute);font-size:14.5px;max-width:52ch}
.mod-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:6px}
.mt{position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--surface2)}
.mt img{width:100%;height:100%;object-fit:cover}
.mt .del{position:absolute;right:5px;bottom:5px;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;display:grid;place-items:center;transition:.2s}
.mt .del:hover{background:#e5302f}
.mt.gone{border:1px dashed var(--line);background:none;display:grid;place-items:center;font-size:11px;color:var(--faint);animation:gone .35s}
@keyframes gone{from{transform:scale(1.1);opacity:0}}
.status{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:13px 16px;border-radius:16px;border:1px solid var(--line);font-size:13.5px;color:var(--mute);margin-top:auto;transition:.3s}
.status.ok{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--ink)}
.zip-box{border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;gap:14px}
.zip-meta{display:flex;justify-content:space-between;font-size:13px;color:var(--mute)}

/* customizer */
.cz{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:start}
.cz-ctrl{display:grid;gap:22px}
.fld{display:grid;gap:8px}.fld>span{font-size:13.5px;color:var(--mute)}
input,textarea{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px;outline:none;transition:border-color .2s}
input:focus,textarea:focus{border-color:var(--accent)}
textarea{resize:vertical;min-height:84px}
.fonts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fo{text-align:left;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:var(--surface);transition:.2s;min-width:0}
.fo:hover{border-color:color-mix(in srgb,var(--ink) 30%,transparent)}
.fo.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--bg))}
.fo small{display:block;font-size:11.5px;color:var(--faint)}.fo span{display:block;font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.seg{display:inline-flex;padding:4px;border-radius:999px;border:1px solid var(--line);background:var(--surface);width:fit-content}
.seg button{display:inline-flex;gap:8px;align-items:center;height:36px;padding:0 16px;border-radius:999px;font-size:14px;color:var(--mute)}
.seg button.on{background:var(--accent);color:var(--on-accent);font-weight:600}
.swatches{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.sw{width:34px;height:34px;border-radius:50%;background:var(--c);border:2px solid var(--bg);box-shadow:0 0 0 1px var(--line);transition:.2s}
.sw.on{box-shadow:0 0 0 2px var(--ink)}
input[type=color]{width:34px;height:34px;padding:0;border-radius:50%;border:0;background:none;overflow:hidden;cursor:pointer}
input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:0;border-radius:50%}
.covers{display:flex;gap:8px}
.cv{width:58px;height:58px;border-radius:14px;overflow:hidden;border:2px solid transparent;opacity:.65;transition:.2s;background:var(--surface2)}
.cv.on{border-color:var(--accent);opacity:1}.cv img{width:100%;height:100%;object-fit:cover}
.cz-view{position:sticky;top:92px}
.czp{--c:#C9A96E;--on-c:#111;background:#0c0c0d;aspect-ratio:9/17}
.czp>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.czp::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(8,8,9,.96) 8%,rgba(8,8,9,.35) 55%,rgba(8,8,9,.15))}
.czp[data-theme=light]::before{background:linear-gradient(to top,rgba(255,252,247,.97) 12%,rgba(255,252,247,.6) 55%,rgba(255,252,247,.15))}
.czp-in{position:absolute;left:0;right:0;bottom:0;padding:26px 22px 28px;z-index:2;text-align:center;color:#fff;display:grid;gap:8px;justify-items:center}
.czp[data-theme=light] .czp-in{color:#1a1814}
.czp-name{font-size:clamp(1.9rem,3.2vw,2.5rem);line-height:1;word-break:break-word}
.czp-date{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--c);margin-bottom:14px}
.czp-btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;width:100%;height:50px;border-radius:999px;background:var(--c);color:var(--on-c);font-weight:700;font-size:15px}
.flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:4}
.flash.go{animation:flash .35s ease-out}
@keyframes flash{0%{opacity:0}20%{opacity:.95}100%{opacity:0}}

/* ospiti */
.guest-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,6vw,88px);align-items:center}
.gsteps{display:grid;gap:22px;margin-top:34px;position:relative}
.gsteps::before{content:"";position:absolute;left:16px;top:16px;bottom:16px;width:1px;background:var(--line)}
.gsteps li{display:flex;gap:16px;position:relative}
.gn{width:33px;height:33px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:700;font-size:14px;flex:none}
.gsteps b{display:block;font-weight:600}.gsteps span:not(.gn){color:var(--mute);font-size:14.5px}
.note{display:flex;gap:14px;align-items:flex-start;margin-top:30px;padding:16px 18px;border-radius:20px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:14.5px;color:var(--mute)}
.note .ic{color:#ff5d73;width:22px;height:22px;margin-top:2px}.note b{color:var(--ink);font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.guest-view{display:grid;gap:22px;justify-items:center}
.toast-in{position:absolute;left:50%;bottom:150px;transform:translate(-50%,10px);padding:7px 14px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:12px;font-weight:700;white-space:nowrap;opacity:0;transition:.3s;z-index:5}
.toast-in.on{opacity:1;transform:translate(-50%,0)}

/* calcolatore */
.roi{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border:1px solid var(--line);border-radius:32px;overflow:hidden;background:var(--surface)}
.roi-in{padding:clamp(24px,4vw,44px);display:grid;gap:30px}
.rl{display:flex;justify-content:space-between;font-size:14.5px;color:var(--mute);margin-bottom:12px}.rl b{color:var(--ink);font-weight:600}
input[type=range]{-webkit-appearance:none;appearance:none;padding:0;height:6px;border:0;border-radius:99px;--p:50%;background:linear-gradient(to right,var(--accent) var(--p),var(--surface2) var(--p))}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:6px solid var(--accent);cursor:grab}
input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:6px solid var(--accent);cursor:grab}
.roi-out{padding:clamp(24px,4vw,44px);display:flex;flex-direction:column;justify-content:center;gap:10px;background:color-mix(in srgb,var(--accent) 11%,var(--bg));border-left:1px solid var(--line)}
.roi-out>span{font-size:14.5px;color:var(--mute)}
.big{font-family:var(--display);font-size:clamp(3.2rem,6.4vw,5.6rem);line-height:1;letter-spacing:-.03em;color:var(--accent2)}

/* CTA */
.cta-box{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,64px);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:36px;padding:clamp(22px,4.5vw,56px);background:linear-gradient(150deg,var(--surface),var(--bg))}
.cta-copy h2{margin-top:22px}
.trust{display:grid;gap:18px;margin-top:30px}
.trust li{display:flex;gap:14px}.trust .ic{width:22px;height:22px;color:#4ade80;margin-top:2px}
.trust b{display:block;font-weight:600}.trust span{color:var(--mute);font-size:14.5px}
.form{background:var(--bg);border:1px solid var(--line);border-radius:26px;padding:clamp(20px,3vw,32px);display:grid;gap:16px;align-content:start}
.form h3{font-size:1.9rem}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-btns{display:flex;gap:10px;flex-wrap:wrap}.form-btns .btn-gold{flex:1;min-width:210px}
.err{color:#ff8a80;font-size:14px}

/* footer e overlay */
.foot{border-top:1px solid var(--line);padding:30px 0;font-size:13px;color:var(--faint)}
.foot-in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
.foot a:not(.pill){color:var(--accent2)}.foot .pill{margin-right:6px}
.lb{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.92);display:grid;place-items:center;padding:20px}
.lb img{max-height:92vh;width:auto;border-radius:20px}
.lb .round{position:absolute;top:18px;right:18px}
.tvo{position:fixed;inset:0;z-index:110;background:#000;display:grid;grid-template-rows:auto 1fr auto;padding:16px;gap:14px;color:#fff}
.tvo-top{display:flex;justify-content:space-between;align-items:center}
.tv-stage.big{aspect-ratio:auto;border-radius:24px;min-height:0}
.tv-stage.big .tv-sub{font-size:clamp(1.6rem,4.4vw,3.6rem)}
.tv-stage.big .tv-bottom{left:clamp(18px,4vw,48px);bottom:clamp(22px,4vw,48px)}
.tvo-ctrl{display:flex;justify-content:center;gap:12px;align-items:center}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:var(--bg);padding:11px 18px;border-radius:999px;font-size:14px;font-weight:500;opacity:0;pointer-events:none;transition:.3s;z-index:200;max-width:92vw;text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* anteprima admin: clicca per modificare */
.is-preview [data-p]{cursor:pointer}
.is-preview [data-p]:hover{outline:2px dashed var(--accent);outline-offset:4px;border-radius:4px}

/* hero: entrata orchestrata, una volta sola */
.hero-copy>*,.hero-visual{animation:rise-in .8s cubic-bezier(.2,.7,.2,1) both}
.hero-copy>:nth-child(2){animation-delay:.08s}.hero-copy>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4){animation-delay:.24s}.hero-copy>:nth-child(5){animation-delay:.3s}.hero-copy>:nth-child(6){animation-delay:.36s}
.hero-visual{animation-delay:.2s}
@keyframes rise-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* responsive */
.hero>*,.dash>*,.live-grid>*,.duo>*,.cz>*,.guest-grid>*,.cta-box>*,.roi>*,.banner>*{min-width:0}
.ptop .pill{white-space:normal;text-align:right}
@media (max-width:1320px){.btag{display:none}.navlinks{gap:20px}}
@media (max-width:1180px){.feed{left:-8%}.navlinks,.nav-cta{display:none}.burger{display:grid}}
@media (max-width:900px){
  .navlinks,.nav-cta{display:none}.burger{display:grid}
  .hero,.live-grid,.cz,.guest-grid,.cta-box,.roi,.dash,.duo,.banner{grid-template-columns:minmax(0,1fr)}
  .hero-visual{max-width:320px;margin-top:8px}.feed{left:auto;right:-6px;bottom:6%;max-width:210px}
  .stats{grid-template-columns:1fr 1fr}.stat{padding:22px 16px 22px 0}.stat+.stat{padding-left:16px}.stat:nth-child(3){border-left:0;padding-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}
  .dash-tabs{display:flex}.step:not(.active){display:none}.step{min-height:0}.dash-stage{position:static}
  .cz-view{position:static}.roi-out{border-left:0;border-top:1px solid var(--line)}
  .banner .panel{flex-direction:column;align-items:flex-start}
}
@media (max-width:560px){
  .btn{height:50px}.cta-row .btn{flex:1 1 100%}.btag{display:none}
  .fonts{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}
  .mod-grid{grid-template-columns:repeat(5,1fr);gap:5px}.mt .del{width:26px;height:26px;right:3px;bottom:3px}
  .tv-stage{aspect-ratio:4/5}.feed{display:none}.tv-btns .btn-sm{flex:1}
  .foot-in{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero-copy>*,.hero-visual,.fchip,.tv-img,.screen.shot>img.swap,.fh,.dot.live-dot{animation:none!important}
  .bar i,.track i,.toast,.toast-in{transition:none!important}
}

/* ---------- blocchi e pagine ---------- */
.pagehead{padding-top:clamp(48px,8vw,104px);padding-bottom:clamp(8px,2vw,24px)}
.pagehead h1{font-size:clamp(2.4rem,5.4vw,4.6rem)}
.nav a[aria-current=page]{color:var(--ink)}
.blk{padding:clamp(36px,6vw,76px) 0;position:relative}
.blk.nopad{padding:0}
.blk.bg-soft{background:var(--surface);border-block:1px solid var(--line)}
.blk.bg-accent{background:color-mix(in srgb,var(--accent) 11%,var(--bg));border-block:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}
.blk h2{margin-bottom:22px}
.blk .sh{margin-bottom:clamp(24px,4vw,44px)}.blk .sh h2{margin-bottom:0}
.rich{font-size:clamp(1rem,1.2vw,1.1rem);color:var(--mute);line-height:1.7}
.rich>*+*{margin-top:1em}
.rich h2,.rich h3,.rich h4{font-family:var(--display);color:var(--ink);font-weight:400;line-height:1.1;margin-top:1.4em}
.rich h2{font-size:2rem}.rich h3{font-size:1.5rem}.rich h4{font-size:1.2rem}
.rich strong,.rich b{color:var(--ink);font-weight:600}
.rich a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.rich ul,.rich ol{padding-left:1.3em;list-style:revert}.rich li+li{margin-top:.4em}
.rich blockquote{border-left:3px solid var(--accent);padding-left:18px;color:var(--ink);font-family:var(--display);font-size:1.4rem;line-height:1.3}
.b-text{max-width:760px}.b-text.a-c{margin-inline:auto;text-align:center}
.b-img{margin:0}.b-img img{width:100%;border-radius:24px;cursor:zoom-in;max-height:80vh;object-fit:cover}
.b-img.sz-normal{max-width:860px;margin-inline:auto}
.b-img.sz-full{width:100vw;margin-left:calc(50% - 50vw)}.b-img.sz-full img{border-radius:0}
figcaption,.cap{font-size:13.5px;color:var(--faint);margin-top:10px;text-align:center}
.b-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,6vw,80px);align-items:center}
.b-split.rev .sp-img{order:2}
.sp-img img{width:100%;border-radius:28px;aspect-ratio:4/5;object-fit:cover}
.sp-tx .btn{margin-top:26px}
.b-gal{display:grid;gap:12px}.b-gal.c2{grid-template-columns:repeat(2,1fr)}.b-gal.c3{grid-template-columns:repeat(3,1fr)}.b-gal.c4{grid-template-columns:repeat(4,1fr)}
.b-gal figure{margin:0}.b-gal img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px;cursor:zoom-in;transition:transform .25s}
.b-gal img:hover{transform:scale(1.015)}
.b-cards{display:grid;gap:16px}.b-cards.c2{grid-template-columns:repeat(2,1fr)}.b-cards.c3{grid-template-columns:repeat(3,1fr)}.b-cards.c4{grid-template-columns:repeat(4,1fr)}
.card{border:1px solid var(--line);background:var(--surface);border-radius:24px;padding:26px}
.bg-soft .card{background:var(--bg)}
.ci{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);margin-bottom:18px;font-size:22px}
.ci .ic{width:24px;height:24px}.emo{font-size:24px;line-height:1}
.card h3{font-size:1.5rem;margin-bottom:8px}.card p{color:var(--mute);font-size:15px}
.b-video{max-width:960px;margin-inline:auto}.b-video video,.b-video .ratio{width:100%;border-radius:24px;overflow:hidden;background:#000}
.ratio{position:relative;aspect-ratio:16/9}.ratio.map{aspect-ratio:16/10}.ratio iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.b-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:clamp(24px,4vw,48px);border-radius:32px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 9%,var(--bg))}
.b-cta h2{margin:0;font-size:clamp(1.8rem,3.4vw,2.8rem)}.b-cta p{color:var(--mute);margin-top:10px;max-width:56ch}
.b-cta.dark{background:var(--surface2);border-color:var(--line)}
.btn-ink{background:var(--ink);color:var(--bg)}.btn-ink:hover{opacity:.88}
.b-faq{max-width:820px;margin-inline:auto}
.b-faq details{border-bottom:1px solid var(--line)}
.b-faq summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;font-weight:600;position:relative}
.b-faq summary::-webkit-details-marker{display:none}
.b-faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--accent);font-weight:400;transition:transform .2s}
.b-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.b-faq details p{color:var(--mute);padding:0 40px 22px 0;max-width:64ch}
.b-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.b-quotes blockquote{margin:0;padding:28px;border-radius:24px;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:20px;justify-content:space-between}
.bg-soft .b-quotes blockquote{background:var(--bg)}
.b-quotes p{font-family:var(--display);font-size:1.4rem;line-height:1.3}
.b-quotes footer{display:flex;flex-direction:column;font-size:14px}.b-quotes footer span{color:var(--faint)}
.b-nums{display:grid;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.b-nums.c2{grid-template-columns:repeat(2,1fr)}.b-nums.c3{grid-template-columns:repeat(3,1fr)}.b-nums.c4{grid-template-columns:repeat(4,1fr)}
.b-nums>div{padding:28px 24px 28px 0}.b-nums>div+div{padding-left:28px;border-left:1px solid var(--line)}
.b-nums p{font-size:14px;color:var(--mute);margin-top:8px;max-width:24ch}
.b-space hr{border:0;border-top:1px solid var(--line);margin:0;position:relative;top:50%}
.b-html{overflow-x:auto}
@media (max-width:900px){
  .b-split{grid-template-columns:minmax(0,1fr)}.b-split.rev .sp-img{order:0}.sp-img img{aspect-ratio:4/3}
  .b-cards.c3,.b-cards.c4{grid-template-columns:repeat(2,1fr)}.b-gal.c4{grid-template-columns:repeat(2,1fr)}
  .b-nums.c3,.b-nums.c4{grid-template-columns:repeat(2,1fr)}.b-nums>div:nth-child(3){border-left:0;padding-left:0}.b-nums>div:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:560px){.b-cards.c2,.b-cards.c3,.b-cards.c4{grid-template-columns:minmax(0,1fr)}.b-gal.c3{grid-template-columns:repeat(2,1fr)}.b-cta .btn{width:100%}}
/* --- CORREZIONI VIDEO FULLSCREEN E NOTIFICHE --- */

/* 1. Mantiene il video in verticale senza tagliarlo quando è a schermo intero */
#hero-video:fullscreen { object-fit: contain !important; background-color: #000 !important; }
#hero-video:-webkit-full-screen { object-fit: contain !important; background-color: #000 !important; }
#hero-video:-moz-full-screen { object-fit: contain !important; background-color: #000 !important; }

/* 2. Sposta le notifiche a sinistra e le rimpicciolisce del 15% */
.feed {
    left: -50% !important; 
    transform: scale(0.85) !important; 
    transform-origin: bottom right !important; 
}

/* 3. Aggiustamento notifiche per schermi medi (tablet) */
@media (max-width: 1060px) {
    .feed {
        left: -20% !important;
    }
}

/* --- ESPERIENZA UTENTE (aggiunte) --- */
::selection{background:color-mix(in srgb,var(--accent) 38%,transparent);color:var(--ink)}
.skip{position:fixed;left:12px;top:-60px;z-index:500;background:var(--accent);color:var(--on-accent);padding:10px 16px;border-radius:12px;font-weight:600;text-decoration:none;transition:top .2s}
.skip:focus{top:12px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.totop{position:fixed;right:18px;bottom:20px;z-index:60;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .2s,border-color .2s}
.totop[hidden]{display:none}
.totop:hover{transform:translateY(-3px);border-color:var(--accent)}
.totop .ic{width:20px;height:20px;transform:rotate(90deg)}
.stickycta{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:55;box-shadow:0 14px 40px rgba(0,0,0,.45);white-space:nowrap;display:none}
@media (max-width:760px){
  .stickycta:not([hidden]){display:inline-flex}
  .totop{bottom:76px;right:14px;width:42px;height:42px}
}
.btn{transition:transform .2s,box-shadow .25s,border-color .25s,background .25s}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.card{transition:transform .3s,border-color .3s,box-shadow .3s}
.card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 18px 50px rgba(0,0,0,.28)}
.b-img img,.sp-img img,.b-gal img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.b-img:hover img,.sp-img:hover img{transform:scale(1.025)}
@media print{.nav,.totop,.stickycta,.spot,.toast{display:none!important}body{background:#fff;color:#000}}
/* --- RIFINITURE LUXURY E CONVERSIONE --- */
.btn-gold {
  box-shadow: 0 8px 26px -6px color-mix(in srgb, var(--accent) 52%, transparent);
}
.btn-gold:hover {
  box-shadow: 0 12px 32px -4px color-mix(in srgb, var(--accent) 68%, transparent);
}
.round.pulse-audio {
  border-color: color-mix(in srgb, var(--accent) 65%, transparent);
  box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 55%, transparent);
  animation: pulseAudio 2.2s infinite;
}
@keyframes pulseAudio {
  70% { box-shadow: 0 0 0 8px transparent; }
  100% { box-shadow: 0 0 0 0 transparent; }
}
.ok-msg {
  color: #4ade80;
  background: color-mix(in srgb, #4ade80 10%, transparent);
  border: 1px solid color-mix(in srgb, #4ade80 35%, transparent);
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
}
