@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/cormorant-garamond-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:600;font-display:swap;src:url(fonts/cormorant-garamond-latin-600-italic.woff2) format("woff2")}
/* Layout: stile Apple (tanto bianco, titoli enormi centrati, prodotto al centro) con tipografia rinascimentale. Il "prodotto" è il sito del salone, mostrato in un telefono. */
:root{
  --bg:#f6f3ee; --alt:#ece6dc; --card:#ffffff; --fg:#14213d; --muted:#5d6475; --line:#ddd6cb;
  --gold:#a8783f; --gold-soft:#f3e7d5; --ok:#3f7a5e; --ok-soft:#e2efe7;
  --glow-1:#1f3d6b; --glow-2:#3a2d58; --glow-3:#5b4426; --band:#0f1b2e;
  --ink:#14213d; --on-ink:#f6f3ee; --wa-head:#008069; --wa-bg:#efeae2; --wa-in:#ffffff; --wa-out:#d9fdd3; --wa-text:#111b21; --wa-meta:#667781; --shadow:0 30px 80px -40px rgba(60,30,20,.4);
  --display:"Cormorant Garamond", "Iowan Old Style", Georgia, serif;
  --body:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "Segoe UI", Roboto, sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0c1524; --alt:#121e31; --card:#172640; --fg:#f1ede5; --muted:#a3abbd; --line:#22324c;
  --gold:#d9b27a; --gold-soft:#2b2a26; --ok:#8fd0ad; --ok-soft:#173326;
  --glow-1:#1f3d6b; --glow-2:#3a2d58; --glow-3:#5b4426; --band:#070e1a;
  --ink:#d9b27a; --on-ink:#0c1524; --wa-head:#202c33; --wa-bg:#0b141a; --wa-in:#202c33; --wa-out:#005c4b; --wa-text:#e9edef; --wa-meta:#8696a0; --shadow:0 30px 80px -40px rgba(0,0,0,.9); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0c1524; --alt:#121e31; --card:#172640; --fg:#f1ede5; --muted:#a3abbd; --line:#22324c;
  --gold:#d9b27a; --gold-soft:#2b2a26; --ok:#8fd0ad; --ok-soft:#173326;
  --glow-1:#1f3d6b; --glow-2:#3a2d58; --glow-3:#5b4426; --band:#070e1a;
  --ink:#d9b27a; --on-ink:#0c1524; --wa-head:#202c33; --wa-bg:#0b141a; --wa-in:#202c33; --wa-out:#005c4b; --wa-text:#e9edef; --wa-meta:#8696a0; --shadow:0 30px 80px -40px rgba(0,0,0,.9); color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:17px;line-height:1.5;margin:0;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{margin:0;text-wrap:balance}
h1,h2{font-family:var(--display);font-weight:500;letter-spacing:-.01em;line-height:1.02}
h1{font-size:clamp(3rem,9vw,6.4rem)}
h2{font-size:clamp(2.3rem,6vw,4.2rem)}
h1 em,h2 em{font-style:italic;color:var(--gold)}
h3{font-size:1.25rem;font-weight:600;letter-spacing:-.01em}
p{margin:0}
a{color:inherit}
.eyebrow{font-size:.95rem;font-weight:600;color:var(--gold)}
.sub{font-size:clamp(1.1rem,2.2vw,1.4rem);color:var(--muted);max-width:40rem;margin-inline:auto}
.center{text-align:center}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--ink);color:var(--on-ink);text-decoration:none;font:inherit;font-size:1rem;font-weight:500;padding:.8rem 1.5rem;border-radius:999px;border:0;cursor:pointer}
.more{color:var(--gold);text-decoration:none;font-weight:500;font-size:1rem}
.more::after{content:" ›"}
.more:hover{text-decoration:underline}
a:focus-visible,.btn:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

/* Header */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--line)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--band)}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;height:52px}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;font-family:var(--display);font-size:1.45rem;font-weight:600;letter-spacing:.01em}
.brand svg{width:40px;height:40px}
.hero-logo{width:84px;height:84px;margin-bottom:.4rem}
nav.links{display:flex;gap:1.6rem;align-items:center;font-size:.85rem}
nav.links a:not(.btn){text-decoration:none;color:var(--muted)}
nav.links a:not(.btn):hover{color:var(--fg)}
nav.links .btn{padding:.4rem .95rem;font-size:.82rem}
@media (max-width:640px){nav.links a:not(.btn){display:none}}

/* Logo ouroboros */
.ouro{color:var(--fg)}


/* Hero */
.hero{position:relative;overflow:hidden}
.hero .wrap{display:flex;flex-direction:column;align-items:center;gap:1.4rem;padding-block:4.5rem 0;text-align:center}
.hero .ctas{display:flex;flex-wrap:wrap;gap:1.4rem;align-items:center;justify-content:center;margin-top:.4rem}
.glow{position:absolute;inset:0;z-index:-1;pointer-events:none}
.glow i{position:absolute;border-radius:50%;filter:blur(80px)}
.glow i:nth-child(1){width:520px;height:520px;background:var(--glow-1);left:50%;top:38%;margin-left:-520px}
.glow i:nth-child(2){width:480px;height:480px;background:var(--glow-2);left:50%;top:48%;margin-left:20px}
.glow i:nth-child(3){width:420px;height:420px;background:var(--glow-3);left:50%;top:62%;margin-left:-220px}

/* Telefono con il sito del salone */
.stage{position:relative;width:100%;max-width:760px;height:560px;margin-top:2.5rem}
.phone{position:absolute;left:50%;top:0;width:290px;height:600px;margin-left:-145px;border-radius:48px;background:#111;padding:11px;box-shadow:var(--shadow),inset 0 0 0 2px #2b2b2e}
.phone::before{content:"";position:absolute;top:20px;left:50%;width:92px;height:26px;margin-left:-46px;border-radius:20px;background:#000;z-index:2}
.screen{position:relative;width:100%;height:100%;border-radius:38px;overflow:hidden;background:#fdf8f4;color:#2a211c}
.site{position:absolute;inset:0 0 auto 0;display:flex;flex-direction:column}
.site .bar{display:flex;justify-content:space-between;align-items:center;padding:52px 18px 10px;font-family:var(--display);font-size:1.15rem;font-weight:600}
.site .bar span{font-family:var(--body);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:#8b6f5c}
.art{height:250px;margin:0 12px;border-radius:22px;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 30% 20%,#f3c9a7 0,#d98f6a 35%,#8e4b3a 70%,#3d2220 100%)}
.art::before{content:"";position:absolute;inset:-20%;background:repeating-radial-gradient(circle at 70% 120%,rgba(255,235,210,.0) 0 14px,rgba(255,235,210,.22) 15px 17px,rgba(255,235,210,0) 18px 30px);mix-blend-mode:soft-light}
.art::after{content:"";position:absolute;left:18%;top:16%;width:64%;height:84%;border-radius:50% 50% 0 0;background:radial-gradient(60% 50% at 50% 30%,rgba(255,240,225,.55),transparent 70%)}
.site h4{font-family:var(--display);font-weight:500;font-size:1.75rem;line-height:1.02;margin:16px 18px 6px}
.site h4 em{color:#a0573f}
.site p{font-size:.72rem;color:#7c665a;margin:0 18px}
.site .cta{margin:14px 18px;padding:.6rem;border-radius:999px;background:#2a211c;color:#fdf8f4;font-size:.72rem;font-weight:600;text-align:center}
.site .list{margin:6px 12px;display:flex;flex-direction:column;gap:6px}
.site .row{display:flex;justify-content:space-between;padding:.6rem .8rem;border-radius:12px;background:#f4ebe3;font-size:.72rem}
.site .row b{font-weight:600}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:6px 12px 20px}
.tiles div{height:110px;border-radius:14px}
.tiles div:nth-child(1){background:linear-gradient(160deg,#e9d4c3,#b78a6e)}
.tiles div:nth-child(2){background:linear-gradient(200deg,#3e2c2a,#8a5d4e)}
.tiles div:nth-child(3){background:linear-gradient(140deg,#f1e2d6,#d4b39b)}
.tiles div:nth-child(4){background:linear-gradient(180deg,#c99279,#6d3e33)}

.float{position:absolute;display:flex;align-items:center;gap:.6rem;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:.7rem .95rem;box-shadow:var(--shadow);font-size:.85rem;text-align:left;z-index:3;max-width:240px}
.float small{display:block;color:var(--muted);font-size:.75rem}
.float .dot{flex:none;width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;font-size:.9rem}
.f1{left:0;top:70px}.f1 .dot{background:var(--gold-soft);color:var(--gold)}
.f2{right:0;top:190px}.f2 .dot{background:var(--ok-soft);color:var(--ok)}
.f3{left:30px;top:330px}.f3 .dot{background:var(--gold-soft);color:var(--gold)}
@media (max-width:700px){
  .stage{height:520px}
  .float{font-size:.78rem;max-width:200px}
  .f1{left:0;top:20px}.f2{right:0;top:250px}.f3{left:0;top:420px}
}

/* Nastro trattamenti */
.ribbon{overflow:hidden;border-block:1px solid var(--line);background:var(--bg);padding-block:1rem;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);position:relative;z-index:4}
.ribbon .track{display:flex;width:max-content;font-family:var(--display);font-size:1.5rem;font-style:italic;color:var(--muted)}
.ribbon .track span{display:flex;align-items:center;white-space:nowrap}
.ribbon .track span::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold);margin-inline:1.6rem}


/* Fasce di colore: blu notte (inverse) e champagne (accent) */
:root{--bg:#f6f3ee;--alt:#ece6dc;--card:#ffffff;--fg:#14213d;--muted:#5d6475;--line:#ddd6cb;--gold:#a8783f;--gold-soft:#f3e7d5;--ink:#14213d;--on-ink:#f6f3ee;--b-bg:#0f1b2e;--b-alt:#16243b;--b-card:#1a2a44;--b-fg:#f3efe7;--b-muted:#a9b1c2;--b-line:#2a3b58;--b-gold:#d9b27a;--b-gold-soft:#2b3346;--b-ink:#d9b27a;--b-on-ink:#0f1b2e;--a-bg:#d9b27a;--a-fg:#14213d;--a-muted:#4b4334;--glow-1:#1f3d6b;--glow-2:#3a2d58;--glow-3:#5b4426;--band:#0f1b2e}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--b-bg:#070e1a;--b-alt:#0d1626;--b-card:#111d31;--b-fg:#f3efe7;--b-muted:#a9b1c2;--b-line:#1c2a42;--b-gold:#d9b27a;--b-gold-soft:#2b3346;--b-ink:#d9b27a;--b-on-ink:#0f1b2e;--a-bg:#d9b27a;--a-fg:#14213d;--a-muted:#4b4334}}
:root[data-theme="dark"]{--b-bg:#070e1a;--b-alt:#0d1626;--b-card:#111d31;--b-fg:#f3efe7;--b-muted:#a9b1c2;--b-line:#1c2a42;--b-gold:#d9b27a;--b-gold-soft:#2b3346;--b-ink:#d9b27a;--b-on-ink:#0f1b2e;--a-bg:#d9b27a;--a-fg:#14213d;--a-muted:#4b4334}
.inverse{--bg:var(--b-bg);--alt:var(--b-alt);--card:var(--b-card);--fg:var(--b-fg);--muted:var(--b-muted);--line:var(--b-line);--gold:var(--b-gold);--gold-soft:var(--b-gold-soft);--ink:var(--b-ink);--on-ink:var(--b-on-ink);background:var(--bg);color:var(--fg)}
.accent{--bg:var(--a-bg);--card:var(--a-bg);--alt:var(--a-bg);--fg:var(--a-fg);--muted:var(--a-muted);--line:color-mix(in srgb,var(--a-fg) 20%,transparent);--gold:var(--a-fg);--gold-soft:color-mix(in srgb,var(--a-fg) 10%,transparent);--ink:var(--a-fg);--on-ink:var(--a-bg);background:var(--bg);color:var(--fg)}
.tile.inverse{background:var(--card)}
.plan.star.accent{border:0}

/* Foto */
.art img,.tiles img,.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.tiles div,.ph{position:relative;overflow:hidden}
.gallery .wrap{padding-block:4rem 1rem;display:flex;flex-direction:column;gap:.6rem}
.gallery .g{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:1rem;height:460px}
.gallery figure{margin:0;border-radius:28px;overflow:hidden;position:relative;min-width:0;background:radial-gradient(120% 90% at 30% 20%,#f3c9a7 0,#d98f6a 40%,#8e4b3a 85%)}
.gallery figure:nth-child(2){background:linear-gradient(200deg,#3e2c2a,#8a5d4e)}
.gallery figure:nth-child(3){background:linear-gradient(160deg,#e9d4c3,#b78a6e)}
.gallery img{width:100%;height:100%;object-fit:cover;display:block}
.gallery .credit{font-size:.75rem;color:var(--muted);text-align:right}
@media (max-width:760px){.gallery .g{grid-template-columns:1fr 1fr;height:auto}.gallery figure{aspect-ratio:3/4}.gallery figure:first-child{grid-column:span 2;aspect-ratio:4/3}}

/* Sezioni */
section.block .wrap{padding-block:6rem;display:flex;flex-direction:column;gap:3rem}
section.alt{background:var(--alt)}
.head{display:flex;flex-direction:column;gap:1rem;align-items:center;text-align:center}

/* Bento */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}
.tile{position:relative;overflow:hidden;background:var(--card);border-radius:28px;padding:2rem;display:flex;flex-direction:column;gap:.6rem;min-width:0}
.tile p{color:var(--muted)}
.tile .big{font-family:var(--display);font-size:2.2rem;line-height:1.05;font-weight:500}
.t1{grid-column:span 4}.t2{grid-column:span 2}.t3{grid-column:span 2}.t4{grid-column:span 4}
@media (max-width:860px){.t1,.t2,.t3,.t4{grid-column:span 6}}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:1rem}
.cal span{aspect-ratio:1;max-width:100%;border-radius:10px;background:var(--alt);display:grid;place-items:center;font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}
.cal span.on{background:var(--ink);color:var(--on-ink)}
.cal span.gold{background:var(--gold-soft);color:var(--gold);font-weight:600}
.book{margin-top:auto;display:flex;flex-direction:column;gap:.55rem;font-size:.82rem}
.book .svc{display:flex;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;border-radius:12px;background:var(--alt)}
.book .svc span{color:var(--muted)}
.book .days,.book .slots{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}
.book .slots{grid-template-columns:repeat(4,1fr)}
.book .days span,.book .slots span{display:flex;flex-direction:column;align-items:center;padding:.45rem .2rem;border-radius:10px;border:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums}
.book .days b{color:var(--fg);font-size:1rem}
.book .sel{background:var(--ink);border-color:var(--ink)!important;color:var(--on-ink)!important}
.book .sel b{color:var(--on-ink)!important}
.book .off{text-decoration:line-through;opacity:.5}
.book .go{text-align:center;padding:.6rem;border-radius:999px;background:var(--gold);color:var(--on-ink);font-weight:600}
.chat{margin-top:auto;border-radius:18px;overflow:hidden;border:1px solid var(--line);font-size:.8rem;line-height:1.35}
.chat-top{display:flex;align-items:center;gap:.55rem;padding:.55rem .75rem;background:var(--wa-head);color:#fff}
.chat-top b{display:block;font-size:.85rem}
.chat-top small{opacity:.8;font-size:.7rem}
.chat-top .av{width:1.9rem;height:1.9rem;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.25);font-size:.7rem;font-weight:700}
.chat-body{display:flex;flex-direction:column;gap:.35rem;padding:.7rem;background:var(--wa-bg)}
.chat .day{align-self:center;font-size:.68rem;padding:.15rem .55rem;border-radius:8px;background:var(--wa-in);color:var(--wa-meta)}
.msg{position:relative;max-width:88%;padding:.4rem .55rem .9rem;border-radius:10px;color:var(--wa-text);box-shadow:0 1px 1px rgba(0,0,0,.08)}
.msg.in{align-self:flex-start;background:var(--wa-in);border-top-left-radius:2px}
.msg.out{align-self:flex-end;background:var(--wa-out);border-top-right-radius:2px;min-width:5.2rem}
.msg i{position:absolute;right:.45rem;bottom:.15rem;font-style:normal;font-size:.62rem;color:var(--wa-meta)}
.msg i em{font-style:normal;color:#53bdeb}
.stars{font-size:1.6rem;letter-spacing:.1em;color:#e0a100;margin-top:auto}
.rating{font-family:var(--display);font-size:4.5rem;line-height:1;font-variant-numeric:tabular-nums}
.browser{margin-top:1rem;border-radius:16px;border:1px solid var(--line);overflow:hidden;background:var(--alt)}
.browser .chrome{display:flex;gap:6px;padding:.6rem .8rem;border-bottom:1px solid var(--line)}
.browser .chrome i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.browser .page{display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;padding:1.2rem;align-items:center}
.browser .page b{font-family:var(--display);font-size:1.8rem;font-weight:500;line-height:1}
.browser .page .ph{height:120px;border-radius:12px;background:radial-gradient(120% 90% at 30% 20%,#f3c9a7 0,#d98f6a 40%,#8e4b3a 80%)}
.browser .page .l{height:8px;border-radius:4px;background:var(--line);margin-top:.6rem}
.browser .page .l.s{width:60%}

/* Come funziona */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;list-style:none;margin:0;padding:0;counter-reset:s}
.steps li{display:flex;flex-direction:column;gap:.5rem;counter-increment:s;min-width:0;text-align:center;align-items:center}
.steps li::before{content:counter(s);font-family:var(--display);font-size:3.4rem;line-height:1;color:var(--gold);font-style:italic}
.steps p{color:var(--muted)}
@media (max-width:760px){.steps{grid-template-columns:1fr}}

/* Pacchetti */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.plan{background:var(--card);border-radius:28px;padding:2.2rem 1.8rem;display:flex;flex-direction:column;gap:1.1rem;min-width:0;border:1px solid var(--line)}
.plan.star{border:1.5px solid var(--gold);box-shadow:var(--shadow)}
.plan .top-row{display:flex;justify-content:space-between;align-items:center;min-height:1.6rem;gap:.5rem}
.plan .badge{font-size:.72rem;font-weight:600;color:var(--gold);background:var(--gold-soft);padding:.25rem .65rem;border-radius:999px}
.plan h3{font-family:var(--display);font-size:2rem;font-weight:500}
.price{font-size:2.4rem;font-weight:600;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.price small{font-size:.9rem;color:var(--muted);font-weight:400;letter-spacing:0}
.plan .for{color:var(--muted);font-size:.95rem}
.plan ul{list-style:none;margin:0;padding:1.1rem 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.65rem;flex:1}
.plan li{padding-left:1.5rem;position:relative;font-size:.95rem}
.plan li::before{content:"";position:absolute;left:.15rem;top:.45rem;width:.55rem;height:.3rem;border-left:1.8px solid var(--gold);border-bottom:1.8px solid var(--gold);transform:rotate(-45deg)}
.plan li.inc{color:var(--muted)}
.plan .btn{width:100%}
.plan .btn.light{background:var(--alt);color:var(--fg)}
.note{font-size:.9rem;color:var(--muted);text-align:center}
@media (max-width:920px){.plans{grid-template-columns:1fr;max-width:480px;margin-inline:auto;width:100%}}

/* Extra */
.extras{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.extra{background:var(--card);border-radius:24px;padding:1.6rem;display:flex;flex-direction:column;gap:.45rem;min-width:0}
.extra svg{width:28px;height:28px;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:.5rem}
.extra p{color:var(--muted);font-size:.92rem;flex:1}
.extra .cost{font-weight:600;font-variant-numeric:tabular-nums}
@media (max-width:920px){.extras{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.extras{grid-template-columns:1fr}}

/* Chiusura */
.final .wrap{padding-block:7rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center}
.final .big-logo{width:96px;height:96px}
.contact{display:flex;flex-wrap:wrap;gap:.8rem 1.4rem;align-items:center;justify-content:center;margin-top:.5rem}
.mail{user-select:all;color:var(--muted)}
.copy-btn{font:inherit;font-size:.82rem;background:none;border:1px solid var(--line);border-radius:999px;padding:.35rem .85rem;color:var(--muted);cursor:pointer}

footer{background:var(--alt)}
footer .wrap{padding-block:1.6rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.78rem;color:var(--muted)}
footer a{color:var(--muted)}

/* Movimento: la pagina è completa anche senza animazioni */
@media (prefers-reduced-motion:no-preference){
  .glow i{animation:drift 20s ease-in-out infinite alternate}
  .glow i:nth-child(2){animation-duration:26s;animation-delay:-8s}
  .glow i:nth-child(3){animation-duration:30s;animation-delay:-14s}
  @keyframes drift{50%{transform:translate(60px,-40px) scale(1.15)}100%{transform:translate(-50px,30px) scale(.92)}}
  .brand .ouro,.hero-logo{animation:turn 1.6s cubic-bezier(.2,.7,.2,1) both}
  @keyframes turn{from{transform:rotate(-120deg) scale(.85)}to{transform:none}}
  .final .big-logo{animation:spin 40s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}
  .rise{animation:rise 1s cubic-bezier(.2,.7,.2,1) both}
  .d1{animation-delay:.1s}.d2{animation-delay:.2s}.d3{animation-delay:.3s}.d4{animation-delay:.45s}
  @keyframes rise{from{transform:translateY(24px)}to{transform:none}}
  .site{animation:scrollsite 14s ease-in-out 1.2s infinite}
  @keyframes scrollsite{0%,18%{transform:translateY(0)}45%,65%{transform:translateY(-330px)}90%,100%{transform:translateY(0)}}
  .float{animation:bob 7s ease-in-out infinite}
  .f2{animation-delay:-2.5s}.f3{animation-delay:-4.5s}
  @keyframes bob{50%{transform:translateY(-10px)}}
  .ribbon .track{animation:scroll 45s linear infinite}
  @keyframes scroll{to{transform:translateX(-50%)}}
  .reveal{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
  .reveal.down{transform:translateY(40px)}
  .plan,.extra,.tile{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
  .plan:hover,.extra:hover,.tile:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
  .btn{transition:transform .2s,opacity .2s}
  .btn:hover{transform:scale(1.03)}
}

/* Schede pacchetti */
.plan{cursor:pointer}
.plan .more{background:none;border:0;padding:0;font:inherit;font-size:.92rem;font-weight:500;color:var(--gold);cursor:pointer;align-self:flex-start;display:inline-flex;gap:.3rem;align-items:center}
.plan .more:hover{text-decoration:underline;text-underline-offset:3px}
dialog.sheet{border:0;padding:0;margin:auto;width:min(640px,calc(100vw - 32px));max-height:min(88vh,860px);border-radius:28px;background:var(--card);color:var(--fg);box-shadow:0 40px 120px -30px rgba(0,0,0,.8);overflow:hidden}
dialog.sheet[open]{display:flex;flex-direction:column;animation:sheetIn .35s cubic-bezier(.2,.7,.2,1)}
dialog.sheet::backdrop{background:rgba(0,0,0,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.sheet .s-x:focus:not(:focus-visible){outline:none}
@keyframes sheetIn{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
.sheet .s-body{overflow-y:auto;padding:2.2rem 2rem 1.5rem;-webkit-overflow-scrolling:touch}
.sheet .s-x{position:absolute;top:1rem;right:1rem;width:2.4rem;height:2.4rem;border-radius:50%;border:0;background:var(--alt);color:var(--fg);font-size:1.3rem;line-height:1;cursor:pointer;z-index:1}
.sheet .s-name{font-family:var(--display);font-size:2.4rem;font-weight:500;line-height:1.05;margin:.3rem 0 .2rem}
.sheet .s-price{font-size:1.6rem;font-weight:600;margin:.4rem 0 .9rem}
.sheet .s-price small{font-size:.9rem;font-weight:400;color:var(--muted)}
.sheet .s-lead{font-size:1.1rem;margin:0 0 .4rem}
.sheet .s-for{color:var(--muted);margin:0}
.sheet h4{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:1.8rem 0 .8rem}
.sheet .s-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}
.sheet .s-list li{padding-left:1.7rem;position:relative;display:flex;flex-direction:column;gap:.15rem}
.sheet .s-list li::before{content:"";position:absolute;left:.2rem;top:.45rem;width:.6rem;height:.32rem;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.sheet .s-list span{color:var(--muted);font-size:.95rem}
.sheet .s-steps{margin:0;padding:0;list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:.7rem}
.sheet .s-steps li{counter-increment:s;display:flex;gap:.8rem;align-items:baseline}
.sheet .s-steps li::before{content:counter(s);flex:none;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--alt);display:inline-grid;place-items:center;font-size:.8rem;font-weight:600}
.sheet .s-note{margin:1.6rem 0 0;padding:1rem 1.1rem;border-radius:16px;background:var(--alt);font-size:.93rem;color:var(--muted)}
.sheet .s-foot{display:flex;gap:.8rem;align-items:center;justify-content:space-between;padding:1rem 2rem calc(1rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--card)}
.sheet .s-foot strong{font-size:1.1rem}
.sheet .s-foot small{color:var(--muted);font-weight:400}
@media (max-width:640px){dialog.sheet{width:100vw;max-width:100vw;max-height:92vh;margin:auto 0 0;border-radius:24px 24px 0 0}
 dialog.sheet[open]{animation-name:sheetUp}.sheet .s-body{padding:2rem 1.3rem 1.2rem}.sheet .s-foot{padding-inline:1.3rem}.sheet .s-name{font-size:2rem}}
@keyframes sheetUp{from{transform:translateY(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){dialog.sheet[open]{animation:none}}

/* Modifiche dal piano marketing */
mark.todo{background:#f5c451;color:#1c1d20;border-radius:6px;padding:0 .3rem;font-weight:600}
.founders{display:flex;gap:1rem 1.6rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:0 auto 1.6rem;padding:1.3rem 1.6rem;border-radius:24px;border:1px dashed var(--line);background:var(--alt)}
.founders strong{display:block;font-size:1.05rem}
.founders p{margin:.2rem 0 0;color:var(--muted);font-size:.95rem;max-width:44rem}
.founders .tag{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.about{display:grid;grid-template-columns:auto 1fr;gap:2.2rem;align-items:center;max-width:820px;margin:0 auto}
.about .face{width:150px;height:150px;border-radius:50%;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--display);font-size:3rem;color:var(--muted);overflow:hidden}
.about .face img{width:100%;height:100%;object-fit:cover}
.about h2{font-size:clamp(2rem,4.5vw,3rem);text-align:left}
.about p{color:var(--muted);margin:.6rem 0 0}
.about .facts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;list-style:none;padding:0}
.about .facts li{font-size:.85rem;padding:.35rem .8rem;border-radius:999px;background:var(--card);border:1px solid var(--line)}
@media (max-width:640px){.about{grid-template-columns:1fr;text-align:center;justify-items:center}.about h2{text-align:center}.about .facts{justify-content:center}}
.faq{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:.7rem}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:0 1.4rem}
.faq summary{cursor:pointer;list-style:none;padding:1.15rem 0;font-weight:600;display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:400;font-size:1.4rem;line-height:1;color:var(--muted);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 1.2rem;color:var(--muted)}
.req{width:100%;max-width:560px;display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem;text-align:left}
.req label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600}
.req input{font:inherit;font-weight:400;font-size:1rem;padding:.8rem 1rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--fg) 25%,transparent);background:color-mix(in srgb,var(--bg) 70%,#fff);color:var(--fg)}
.req .full{grid-column:1/-1}
.req .btn{grid-column:1/-1;justify-self:center;margin-top:.4rem}
.req .hp{position:absolute;left:-9999px}
.req small{grid-column:1/-1;text-align:center;color:var(--muted);font-weight:400}
.or{color:var(--muted);font-size:.9rem;margin-top:.6rem}
@media (max-width:560px){.req{grid-template-columns:1fr}}
footer .meta{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
/* Palette Antracite */
:root:root:root{--bg:#1c1d20;--alt:#232428;--card:#2a2b30;--fg:#f2f2f3;--muted:#a2a4aa;--line:#35373c;--gold:#ffffff;--gold-soft:#2f3035;--ink:#f2f2f3;--on-ink:#1c1d20;--b-bg:#121316;--b-alt:#18191c;--b-card:#1f2024;--b-fg:#f5f6f7;--b-muted:#a2a4aa;--b-line:#2c2e33;--b-gold:#ffffff;--b-gold-soft:#26282c;--b-ink:#ffffff;--b-on-ink:#121316;--a-bg:#e9ebee;--a-fg:#1d1f22;--a-muted:#565a61;--glow-1:#4a4e55;--glow-2:#3c3f45;--glow-3:#55595f;--band:#121316;--ok:#8fd0ad;--ok-soft:#173326;--wa-head:#202c33;--wa-bg:#0b141a;--wa-in:#202c33;--wa-out:#005c4b;--wa-text:#e9edef;--wa-meta:#8696a0;--shadow:0 30px 80px -40px rgba(0,0,0,.9);color-scheme:dark}

/* ===== v2: sito multipagina ===== */
a{color:inherit}
.topbar{display:block;text-align:center;font-size:.82rem;padding:.55rem 16px;background:var(--a-bg);color:var(--a-fg);text-decoration:none;font-weight:500}
.topbar b{font-weight:700}
.topbar:hover{text-decoration:underline}
nav.links a[aria-current="page"]{color:var(--fg)}
.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--fg);border-radius:999px;font:inherit;font-size:.82rem;padding:.35rem .85rem;cursor:pointer}
.mnav{display:none}
@media (max-width:900px){nav.links a:not(.btn){display:none}.menu-toggle{display:inline-flex}}
.mnav.open{display:flex;flex-direction:column;gap:.2rem;padding:.6rem 16px 1rem;border-top:1px solid var(--line)}
.mnav a{text-decoration:none;padding:.6rem 0;color:var(--fg);border-bottom:1px solid var(--line)}
.badges{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;list-style:none;padding:0;margin:0}
.badges li{font-size:.82rem;padding:.4rem .85rem;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:color-mix(in srgb,var(--card) 60%,transparent)}
.badges li::before{content:"✓ ";color:var(--gold)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:1.6rem;display:flex;flex-direction:column;gap:.5rem;min-width:0}
.card .n{font-family:var(--display);font-style:italic;font-size:2.2rem;line-height:1;color:var(--gold)}
.card p{color:var(--muted);margin:0;font-size:.95rem}
.card h3{font-size:1.1rem}
.card .ic{width:30px;height:30px;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.card .tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.3rem}
.card .tags span{font-size:.75rem;padding:.2rem .55rem;border-radius:999px;background:var(--alt);color:var(--muted)}
.slider{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.6rem;scrollbar-width:thin}
.slider>*{scroll-snap-align:start}
.slider-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.slider-nav .count{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.9rem}
.slider-nav button{width:2.6rem;height:2.6rem;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);font-size:1.1rem;cursor:pointer}
.cta-band{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:32px;padding:clamp(1.6rem,4vw,3rem)}
.cta-band h2{font-size:clamp(2rem,4.5vw,3.2rem);text-align:left;margin:0 0 .9rem;line-height:1.08}
.cta-band p{color:var(--muted)}
.cta-band ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.55rem}
.cta-band li::before{content:"→ ";color:var(--gold)}
@media (max-width:760px){.cta-band{grid-template-columns:1fr}}
.srv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.srv{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:1.8rem;display:flex;flex-direction:column;gap:.8rem;position:relative}
.srv .num{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}
.srv h3{font-family:var(--display);font-weight:500;font-size:1.9rem}
.srv .price{font-size:1.5rem;font-weight:600}
.srv .price small{font-size:.85rem;font-weight:400;color:var(--muted)}
.srv ul{list-style:none;margin:0;padding:.9rem 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.5rem;flex:1}
.srv li{padding-left:1.4rem;position:relative;font-size:.93rem}
.srv li::before{content:"";position:absolute;left:.1rem;top:.45rem;width:.55rem;height:.3rem;border-left:1.8px solid var(--gold);border-bottom:1.8px solid var(--gold);transform:rotate(-45deg)}
.srv .acts{display:flex;flex-direction:column;gap:.6rem}
.srv .acts .btn{width:100%}
.srv.flag{border:1.5px solid var(--gold)}
.srv .flagtag{position:absolute;top:1.2rem;right:1.2rem;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:var(--gold);color:var(--bg);padding:.25rem .6rem;border-radius:999px}
.compare{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.compare td{padding:.9rem 0;border-bottom:1px solid var(--line)}
.compare td:last-child{text-align:right;font-weight:600}
.compare tr.total td{border-bottom:0;font-size:1.15rem}
.compare tr.ours td{color:var(--gold);font-size:1.3rem}
.save{display:inline-block;margin-top:1rem;padding:.4rem .9rem;border-radius:999px;background:var(--gold);color:var(--bg);font-weight:700;font-size:.9rem}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.ba>div{border-radius:28px;padding:2rem;border:1px solid var(--line)}
.ba .before{background:transparent}
.ba .after{background:var(--card)}
.ba h3{font-family:var(--display);font-weight:500;font-size:1.8rem;margin-bottom:1rem}
.ba ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.7rem}
.ba .before li{color:var(--muted)}
.ba .before li::before{content:"✕  ";color:var(--muted)}
.ba .after li::before{content:"✓  ";color:var(--gold)}
@media (max-width:700px){.ba{grid-template-columns:1fr}}
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;counter-reset:t}
.timeline li{counter-increment:t;border-top:2px solid var(--line);padding-top:1rem;display:flex;flex-direction:column;gap:.35rem}
.timeline li::before{content:"0" counter(t);font-size:.8rem;color:var(--gold);font-weight:700;letter-spacing:.08em}
.timeline p{color:var(--muted);margin:0;font-size:.92rem}
.timeline .when{font-size:.78rem;color:var(--muted);font-style:italic}
.guar{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.guar .g{border-radius:28px;padding:1.8rem;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:.6rem}
.guar .seal{width:54px;height:54px;border-radius:50%;border:1.5px solid var(--gold);display:grid;place-items:center;font-family:var(--display);font-style:italic;font-size:1.4rem;color:var(--gold)}
.guar h3{font-family:var(--display);font-weight:500;font-size:1.6rem}
.guar p{color:var(--muted);margin:0}
.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem}
.work{display:flex;flex-direction:column;gap:.8rem;text-decoration:none}
.work .shot{aspect-ratio:4/3;border-radius:22px;overflow:hidden;position:relative;border:1px solid var(--line)}
.work .demo{position:absolute;top:.8rem;left:.8rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px;background:rgba(0,0,0,.65);color:#fff;z-index:2}
.work h3{font-size:1.1rem}
.work p{color:var(--muted);margin:0;font-size:.93rem}
.mock{position:absolute;inset:0;display:flex;flex-direction:column}
.mock .mb{height:22px;display:flex;gap:5px;align-items:center;padding:0 10px;background:rgba(0,0,0,.25)}
.mock .mb i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5)}
.mock .mc{flex:1;padding:1.2rem 1.3rem;display:flex;flex-direction:column;gap:.5rem;overflow:hidden}
.mock .mt{font-family:var(--display);font-size:1.7rem;line-height:1.05}
.mock .ms{font-size:.72rem;opacity:.75}
.mock .mbtn{align-self:flex-start;font-size:.68rem;padding:.35rem .8rem;border-radius:999px;margin-top:.2rem}
.mock .mrow{display:flex;justify-content:space-between;font-size:.7rem;border-bottom:1px solid currentColor;padding:.3rem 0;opacity:.85}
.mock .mimg{flex:1;border-radius:12px;background-size:cover;background-position:center;min-height:60px}
.m-salon{background:#f6f1ea;color:#2b2420}.m-salon .mbtn{background:#2b2420;color:#f6f1ea}
.m-food{background:#14322b;color:#f3e9d2}.m-food .mbtn{background:#e0b25a;color:#14322b}.m-food .mt{font-style:italic}
.m-studio{background:#eef3f8;color:#13304d}.m-studio .mbtn{background:#2f6fb0;color:#fff}
.m-shop{background:#1f1b2e;color:#f1ecff}.m-shop .mbtn{background:#c9b8ff;color:#1f1b2e}
.m-bnb{background:#fbf6ee;color:#3a2f22}.m-bnb .mbtn{background:#b5653b;color:#fff}
.m-gym{background:#111;color:#f4f4f4}.m-gym .mbtn{background:#d7ff3a;color:#111}.m-gym .mt{text-transform:uppercase;font-family:var(--body);font-weight:800;letter-spacing:-.02em}
.note-demo{font-size:.85rem;color:var(--muted);text-align:center}
.cap{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}
.cap .big{font-family:var(--display);font-size:clamp(4rem,12vw,8rem);line-height:.9}
.faq-tabs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
.faq-tabs button{font:inherit;font-size:.88rem;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
.faq-tabs button[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.faq details[hidden]{display:none}
.page-hero .wrap{padding-block:5rem 3rem;display:flex;flex-direction:column;gap:1.2rem;align-items:center;text-align:center}
.page-hero h1{font-size:clamp(2.6rem,7vw,5rem)}
.page-hero .sub{max-width:42rem}
.page-hero .ctas{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;justify-content:center}
.price-tag{font-size:1.1rem;color:var(--muted)}
.price-tag b{color:var(--fg);font-size:1.5rem}
.checklist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.8rem 2rem}
.checklist li{padding-left:1.7rem;position:relative}
.checklist li::before{content:"";position:absolute;left:.2rem;top:.45rem;width:.6rem;height:.32rem;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.checklist li span{display:block;color:var(--muted);font-size:.92rem}
.two{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.two h2{text-align:left;margin:.3rem 0 .9rem;line-height:1.08}
.two p{color:var(--muted)}
@media (max-width:760px){.two{grid-template-columns:1fr;gap:1.5rem}}
.fine{font-size:.85rem;color:var(--muted);text-align:center;max-width:44rem;margin:0 auto}
/* form */
.form{width:100%;max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:1rem;text-align:left}
.form label,.form fieldset{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;font-weight:600;border:0;padding:0;margin:0}
.form legend{font-weight:600;margin-bottom:.4rem;padding:0}
.form input,.form select,.form textarea{font:inherit;font-weight:400;font-size:1rem;padding:.85rem 1rem;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--fg);width:100%}
.form textarea{min-height:110px;resize:vertical}
.form .opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.5rem}
.form .opt{flex-direction:row;align-items:center;gap:.7rem;font-weight:400;padding:.8rem 1rem;border-radius:14px;border:1px solid var(--line);background:var(--card);cursor:pointer}
.form .opt input{width:auto;margin:0;accent-color:var(--gold)}
.form .opt:has(input:checked){border-color:var(--gold)}
.form .row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:560px){.form .row2{grid-template-columns:1fr}}
.form .hp{position:absolute;left:-9999px}
.form small{font-weight:400;color:var(--muted)}
.form .actions{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}
.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}
.steps-bar{display:flex;align-items:center;gap:.8rem;font-size:.85rem;color:var(--muted)}
.steps-bar .track{flex:1;height:4px;border-radius:4px;background:var(--line);overflow:hidden}
.steps-bar .track i{display:block;height:100%;background:var(--gold);width:0;transition:width .3s}
.wiz-step[hidden]{display:none}
.plan-out{width:100%;max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:28px;padding:clamp(1.4rem,4vw,2.6rem);display:flex;flex-direction:column;gap:1.4rem}
.plan-out h3{font-family:var(--display);font-weight:500;font-size:1.7rem}
.plan-out h4{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem}
.plan-out ul,.plan-out ol{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.4rem}
.plan-out .rec{border-radius:20px;background:var(--alt);padding:1.2rem 1.3rem}
.placeholder-out{border:1px dashed var(--line);border-radius:28px;padding:2.5rem;text-align:center;color:var(--muted);max-width:760px;margin:0 auto;width:100%}
.contact-ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.contact-ways .card{align-items:flex-start}
/* chat widget */
.bot-btn{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;border-radius:999px;border:0;background:var(--fg);color:var(--bg);font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;box-shadow:0 12px 40px -10px rgba(0,0,0,.7)}
.bot-btn svg{width:18px;height:18px}
.bot{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:41;width:min(370px,calc(100vw - 32px));max-height:min(560px,calc(100vh - 120px));display:none;flex-direction:column;border-radius:24px;overflow:hidden;background:var(--card);border:1px solid var(--line);box-shadow:0 30px 80px -20px rgba(0,0,0,.85)}
.bot.open{display:flex}
.bot-head{display:flex;align-items:center;gap:.7rem;padding:.9rem 1rem;border-bottom:1px solid var(--line)}
.bot-head b{display:block;font-size:.95rem}
.bot-head small{color:var(--muted);font-size:.75rem}
.bot-head button{margin-left:auto;background:none;border:0;color:var(--muted);font-size:1.3rem;cursor:pointer}
.bot-head .ouro{width:28px;height:28px}
.bot-body{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem}
.bm{max-width:85%;padding:.6rem .85rem;border-radius:16px;font-size:.92rem;line-height:1.4}
.bm.a{background:var(--alt);align-self:flex-start;border-bottom-left-radius:4px}
.bm.u{background:var(--fg);color:var(--bg);align-self:flex-end;border-bottom-right-radius:4px}
.bm a{color:inherit;font-weight:600}
.bm.typing{opacity:.55;letter-spacing:.15em}
.bot-chips{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 1rem .6rem}
.bot-chips button{font:inherit;font-size:.78rem;padding:.35rem .7rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--fg);cursor:pointer}
.bot-form{display:flex;gap:.4rem;padding:.7rem;border-top:1px solid var(--line)}
.bot-form input{flex:1;font:inherit;font-size:.92rem;padding:.6rem .8rem;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--fg);min-width:0}
.bot-form button{font:inherit;border:0;border-radius:999px;padding:.6rem .9rem;background:var(--fg);color:var(--bg);font-weight:600;cursor:pointer}
/* footer v2 */
footer.foot{background:var(--b-bg);color:var(--b-fg);border-top:1px solid var(--b-line)}
footer.foot .wrap{padding-block:3.5rem 2rem;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem}
footer.foot h4{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--b-muted);margin:0 0 .8rem;font-weight:600}
footer.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;font-size:.9rem}
footer.foot a{color:var(--b-fg);text-decoration:none;opacity:.85}
footer.foot a:hover{opacity:1;text-decoration:underline}
footer.foot .fabout p{color:var(--b-muted);font-size:.9rem;margin:.6rem 0}
footer.foot .legal{grid-column:1/-1;border-top:1px solid var(--b-line);padding-top:1.4rem;display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;justify-content:space-between;font-size:.8rem;color:var(--b-muted)}
@media (max-width:760px){footer.foot .wrap{grid-template-columns:1fr 1fr}footer.foot .fabout{grid-column:1/-1}}
.glow{overflow:hidden}
.page-hero{position:relative;isolation:isolate;overflow:hidden}
/* ===== v3: grafica e componenti ===== */
:root{--ease:cubic-bezier(.2,.7,.2,1)}
.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;pointer-events:none}
.progress i{display:block;height:100%;width:100%;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,#8a8d94,#fff)}
/* header */
header.top{transition:background .3s,border-color .3s}
header.top.scrolled{background:color-mix(in srgb,var(--bg) 62%,transparent)}
nav.links{gap:1.4rem}
.dd{position:relative}
.dd>a::after{content:"";display:inline-block;width:.38em;height:.38em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.2em) rotate(45deg);margin-left:.45em;opacity:.7}
.dd-menu{position:absolute;top:100%;left:-1rem;margin-top:.6rem;min-width:290px;padding:.5rem;border-radius:20px;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--line);box-shadow:0 30px 70px -20px rgba(0,0,0,.8);display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .2s,visibility .2s}
.dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:.8rem}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{opacity:1;visibility:visible;transform:none}
nav.links .dd-menu a{display:flex!important;flex-direction:column;padding:.65rem .85rem;border-radius:12px;color:var(--fg)!important}
nav.links .dd-menu a:hover{background:var(--alt)}
.dd-menu b{font-weight:600;font-size:.9rem}
.dd-menu small{color:var(--muted);font-size:.78rem}
nav.links .dd-menu .dd-all{border-top:1px solid var(--line);border-radius:0 0 12px 12px;margin-top:.3rem;font-size:.82rem;color:var(--muted)!important}
nav.links a.lang{font-size:.75rem;font-weight:700;letter-spacing:.06em;border:1px solid var(--line);border-radius:999px;padding:.25rem .6rem;color:var(--fg)}
@media (max-width:900px){nav.links .dd{display:none}nav.links a.lang{display:inline-flex!important}}
/* hero */
.hero,.page-hero{isolation:isolate}
.silk{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.9;pointer-events:none}
.grain{position:absolute;inset:-50%;z-index:-1;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 8s steps(10) infinite}
@keyframes grain{0%,100%{transform:translate(0,0)}20%{transform:translate(-5%,4%)}40%{transform:translate(4%,-6%)}60%{transform:translate(-3%,7%)}80%{transform:translate(6%,2%)}}
.hero::after,.page-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;z-index:-1;background:linear-gradient(transparent,var(--bg));pointer-events:none}
.eyebrow.pill{display:inline-flex;align-items:center;gap:.55rem;padding:.4rem .95rem;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 55%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.82rem;color:var(--fg)}
.live{width:7px;height:7px;border-radius:50%;background:#7ee0a6;box-shadow:0 0 0 0 rgba(126,224,166,.6);animation:live 2.2s infinite}
@keyframes live{70%{box-shadow:0 0 0 9px rgba(126,224,166,0)}100%{box-shadow:0 0 0 0 rgba(126,224,166,0)}}
.hero h1{font-size:clamp(3.1rem,9.5vw,7.2rem);line-height:.98;letter-spacing:-.02em}
.hero h1 em{color:#b8bbc1}
.split .w{display:inline-block;opacity:0;transform:translateY(.45em) rotate(2deg);filter:blur(8px);animation:wordin .9s var(--ease) forwards}
@keyframes wordin{to{opacity:1;transform:none;filter:none}}
.hero .ctas .btn.ghost,.page-hero .btn.ghost{background:color-mix(in srgb,var(--card) 40%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn.shine{position:relative;overflow:hidden}
.btn.shine::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:shine 4.5s 2s infinite}
@keyframes shine{0%{left:-60%}25%,100%{left:130%}}
.htabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;width:100%;max-width:860px;margin-top:1.2rem}
.htab{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;text-align:left;padding:1rem 1.1rem;border-radius:18px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 45%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);text-decoration:none;transition:border-color .3s,transform .3s var(--ease),background .3s}
.htab:hover{border-color:color-mix(in srgb,var(--fg) 45%,transparent);transform:translateY(-3px);background:color-mix(in srgb,var(--card) 70%,transparent)}
.htab .n{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.08em}
.htab b{font-size:.98rem;font-weight:600}
.htab small{font-size:.8rem;color:var(--muted)}
.htab .go{position:absolute;right:1rem;top:1rem;color:var(--muted);transition:transform .3s var(--ease)}
.htab:hover .go{transform:translateX(4px);color:var(--fg)}
@media (max-width:700px){.htabs{grid-template-columns:1fr}}
/* spotlight su card */
.card,.srv,.sslide,.guar .g,.htab,.addons,.cta-band{--mx:50%;--my:50%}
.card::before,.sslide::before,.guar .g::before,.srv::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(255,255,255,.07),transparent 45%);opacity:0;transition:opacity .3s}
.card:hover::before,.sslide:hover::before,.guar .g:hover::before,.srv:hover::before{opacity:1}
.card,.guar .g{position:relative;transition:transform .4s var(--ease),border-color .3s}
.card:hover,.guar .g:hover{border-color:color-mix(in srgb,var(--fg) 25%,transparent)}
.glass{background:color-mix(in srgb,var(--card) 70%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
/* slider servizi */
.sslider{grid-auto-columns:minmax(300px,1fr)}
@media (min-width:1000px){.sslider{grid-auto-columns:calc((100% - 2rem)/3)}}
.sslide{position:relative;background:var(--card);border:1px solid var(--line);border-radius:28px;padding:2rem 1.8rem;display:flex;flex-direction:column;gap:.7rem;min-height:100%}
.sslide .num{font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.06em}
.sslide h3{font-family:var(--display);font-weight:500;font-size:2.2rem;line-height:1}
.sslide .price{font-size:1.6rem;font-weight:600;margin:0}
.sslide .price small{font-size:.85rem;font-weight:400;color:var(--muted)}
.sslide .for{color:var(--muted);margin:0;font-size:.93rem}
.sslide ul{list-style:none;margin:.3rem 0 0;padding:1rem 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.55rem;flex:1}
.sslide li{padding-left:1.4rem;position:relative;font-size:.93rem}
.sslide li::before{content:"";position:absolute;left:.1rem;top:.45rem;width:.55rem;height:.3rem;border-left:1.8px solid var(--gold);border-bottom:1.8px solid var(--gold);transform:rotate(-45deg)}
.sslide .acts{display:flex;flex-direction:column;gap:.7rem;margin-top:.8rem}
.sslide .acts .btn{width:100%}
.sslide .acts .more{align-self:center}
.sslide.flag{background:linear-gradient(160deg,#f5f6f7,#d9dbdf);color:#16171a;border-color:transparent}
.sslide.flag .for,.sslide.flag .num,.sslide.flag .price small{color:#4d5058}
.sslide.flag ul{border-color:#c4c7cc}
.sslide.flag li::before{border-color:#16171a}
.sslide.flag .btn{background:#16171a;color:#f5f6f7}
.sslide.flag .more{color:#16171a}
.sslide .flagtag{position:absolute;top:1.4rem;right:1.4rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.28rem .65rem;border-radius:999px;background:#16171a;color:#f5f6f7}
.ctas-row{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center}
.ctas-row.center{justify-content:center}
.checklist.one{grid-template-columns:1fr}
/* add-on social */
.addons{position:relative;background:var(--card);border:1px solid var(--line);border-radius:28px;padding:1.8rem;display:flex;flex-direction:column}
.addons h3{font-family:var(--display);font-weight:500;font-size:1.6rem;margin-bottom:.6rem}
.addon{display:grid;grid-template-columns:1fr auto;gap:.15rem 1rem;padding:.95rem 0;border-top:1px solid var(--line)}
.addon span{font-weight:600;font-variant-numeric:tabular-nums}
.addon small{grid-column:1/-1;color:var(--muted);font-size:.85rem}
/* lavori: inclinazione */
.work .shot{transition:transform .5s var(--ease),box-shadow .5s;transform-style:preserve-3d;will-change:transform}
.work:hover .shot{box-shadow:0 40px 80px -30px rgba(0,0,0,.9)}
/* timeline animata */
.timeline li{border-top:0;position:relative}
.timeline li::after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--line)}
.timeline li>*:first-child{margin-top:0}
.timeline li .bar{position:absolute;top:0;left:0;height:2px;width:100%;background:var(--fg);transform:scaleX(0);transform-origin:0 50%;transition:transform 1s var(--ease);z-index:1}
.timeline.on li .bar{transform:scaleX(1)}
/* contatti */
.contact-ways .way{text-decoration:none;color:inherit}
a.card.way:hover{transform:translateY(-4px)}
.next{max-width:760px;margin:0 auto;text-align:center}
.next h3{font-family:var(--display);font-weight:500;font-size:1.7rem;margin-bottom:.4rem}
.next p{color:var(--muted);margin:0}
.form.brief{background:var(--card);border:1px solid var(--line);border-radius:32px;padding:clamp(1.4rem,4vw,2.6rem);max-width:720px}
.form.brief .opt{background:var(--alt)}
/* testi legali */
.legal-text{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:.4rem}
.legal-text h2{font-family:var(--body);font-size:1.1rem;font-weight:600;margin-top:1.4rem;letter-spacing:0}
.legal-text p{color:var(--muted);margin:0}
/* footer, cookie, aiuto */
.legal-links{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center}
.linkish{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
footer.foot .linkish{color:var(--b-muted);text-decoration:none}
footer.foot .linkish:hover{color:var(--b-fg);text-decoration:underline}
.langs a[aria-current]{font-weight:700}
.cookie-d{border:1px solid var(--line);border-radius:24px;background:var(--card);color:var(--fg);max-width:420px;padding:1.6rem}
.cookie-d::backdrop{background:rgba(0,0,0,.55);backdrop-filter:blur(4px)}
.cookie-d h3{font-family:var(--display);font-weight:500;font-size:1.6rem;margin-bottom:.5rem}
.cookie-d p{color:var(--muted)}
.help-pill{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:39;display:flex;align-items:center;gap:.6rem;padding:.45rem .5rem .45rem 1rem;border-radius:999px;background:color-mix(in srgb,var(--b-card) 85%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--b-line);color:var(--b-fg);font-size:.82rem;box-shadow:0 12px 40px -10px rgba(0,0,0,.7);opacity:0;transform:translateY(12px);transition:opacity .4s,transform .4s;pointer-events:none}
.help-pill.on{opacity:1;transform:none;pointer-events:auto}
.help-pill a{background:#25d366;color:#08140c;text-decoration:none;font-weight:600;padding:.4rem .8rem;border-radius:999px}
@media (max-width:640px){.help-pill span{display:none}.help-pill{padding:.35rem}}
.count-up{font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:reduce){.grain,.live,.btn.shine::after{animation:none}.split .w{opacity:1;transform:none;filter:none;animation:none}}
@media (max-width:440px){nav.links a.lang{display:none!important}}
.two .price-tag{margin:1rem 0}
.faq{counter-reset:q}
.faq summary::before{counter-increment:q;content:counter(q,decimal-leading-zero);font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums;margin-right:.9rem;font-weight:500}
.faq summary{justify-content:flex-start}
.faq summary::before{flex:none;align-self:center}
.faq summary::after{margin-left:auto}
.stats{border-block:1px solid var(--line);position:relative}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-block:2.4rem}
.stat{display:flex;flex-direction:column;gap:.35rem;padding:0 1.4rem;border-left:1px solid var(--line)}
.stat:first-child{border-left:0;padding-left:0}
.stat b{font-variant-numeric:lining-nums tabular-nums;font-family:var(--display);font-weight:500;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1;letter-spacing:-.02em}
.stat>span{color:var(--muted);font-size:.88rem;max-width:15rem}
@media (max-width:760px){.stats .wrap{grid-template-columns:1fr 1fr;gap:1.6rem 0}.stat:nth-child(3){border-left:0;padding-left:0}}
/* ===== scena: computer + telefono ===== */
.scene{position:relative;width:100%;max-width:1000px;height:600px;margin-top:3rem;perspective:1600px}
.scene img{display:block;width:100%;height:100%;object-fit:cover}
.browser{position:absolute;left:0;top:40px;width:72%;height:470px;border-radius:16px;overflow:hidden;background:#0f0d0c;border:1px solid rgba(255,255,255,.12);box-shadow:0 60px 120px -40px rgba(0,0,0,.95),0 0 0 1px rgba(0,0,0,.4);transform:rotateY(10deg) rotateX(2deg);transform-origin:left center;transition:transform .8s var(--ease)}
.bw-top{height:34px;display:flex;align-items:center;gap:6px;padding:0 12px;background:#1b1918;border-bottom:1px solid rgba(255,255,255,.06)}
.bw-top i{width:10px;height:10px;border-radius:50%;background:#3a3633}
.bw-top i:nth-child(1){background:#ff5f57}.bw-top i:nth-child(2){background:#febc2e}.bw-top i:nth-child(3){background:#28c840}
.bw-url{margin:0 auto;font-size:.68rem;color:#a39a92;background:#262321;padding:.2rem 2.2rem;border-radius:7px;letter-spacing:.02em}
.bw-page{height:calc(100% - 34px);background:#f6efe7;color:#22180f;overflow:hidden;font-family:var(--body)}
.bw-nav{display:flex;align-items:center;gap:1.1rem;padding:.9rem 1.4rem;font-size:.62rem;color:#6d5a4a}
.bw-nav b{font-family:var(--display);font-size:1.05rem;letter-spacing:.32em;color:#22180f;margin-right:auto;font-weight:600}
.bw-nav em{font-style:normal;background:#22180f;color:#f6efe7;padding:.35rem .8rem;border-radius:999px}
.bw-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:1rem;padding:.4rem 1.4rem 1rem;align-items:center}
.bw-copy small{font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:#a07a55}
.bw-copy h5{font-family:var(--display);font-weight:500;font-size:2.15rem;line-height:.98;margin:.4rem 0 .5rem;color:#22180f}
.bw-copy h5 i{color:#a5643f}
.bw-copy p{font-size:.62rem;color:#6d5a4a;margin:0 0 .8rem;max-width:20em}
.bw-btns{display:flex;gap:.5rem;font-size:.58rem;align-items:center}
.bw-btns em{font-style:normal;background:#22180f;color:#f6efe7;padding:.45rem .85rem;border-radius:999px}
.bw-btns span{border-bottom:1px solid #22180f}
.bw-img{height:200px;border-radius:120px 120px 14px 14px;overflow:hidden;background:#d8c3ae}
.bw-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;padding:0 1.4rem}
.bw-cards div{background:#fff;border-radius:12px;overflow:hidden;font-size:.58rem;padding-bottom:.55rem;box-shadow:0 10px 24px -14px rgba(60,30,10,.4)}
.bw-cards img{height:78px!important}
.bw-cards b{display:block;margin:.45rem .6rem .1rem;font-size:.64rem}
.bw-cards span{margin:0 .6rem;color:#8b7461}
/* iPhone */
.iphone{position:absolute;right:4%;top:0;width:282px;height:580px;border-radius:52px;padding:10px;background:linear-gradient(145deg,#5d5f63,#1d1e21 30%,#2c2d31 70%,#76787d);box-shadow:0 70px 120px -30px rgba(0,0,0,.95),inset 0 0 0 1px rgba(255,255,255,.18);transform:rotateY(-8deg) rotateX(3deg);transition:transform .8s var(--ease);z-index:2}
.iphone>i{position:absolute;width:3px;border-radius:2px;background:#3d3e42}
.iphone .btn-a{left:-3px;top:110px;height:28px}.iphone .btn-b{left:-3px;top:155px;height:52px}.iphone .btn-c{right:-3px;top:170px;height:78px}
.ip-screen{position:relative;width:100%;height:100%;border-radius:43px;overflow:hidden;background:#120e0b;color:#f3e9de}
.ip-screen::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,rgba(255,255,255,.10),transparent 32%);pointer-events:none;z-index:6}
.ip-status{position:absolute;top:0;left:0;right:0;height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 24px 0 30px;z-index:5;font-size:.72rem;background:linear-gradient(#120e0b 62%,#120e0b00)}
.island{position:absolute;left:50%;top:10px;width:88px;height:25px;margin-left:-44px;border-radius:20px;background:#000}
.sig{display:flex;gap:2px;align-items:flex-end}.sig i{width:3px;background:#f3e9de;border-radius:1px}.sig i:nth-child(1){height:4px}.sig i:nth-child(2){height:6px}.sig i:nth-child(3){height:8px}.sig i:nth-child(4){height:10px}
.ps{position:absolute;left:0;right:0;top:0;padding-top:46px;animation:psScroll 22s ease-in-out 1.5s infinite}
@keyframes psScroll{0%,10%{transform:translateY(0)}30%,40%{transform:translateY(-330px)}58%,68%{transform:translateY(-640px)}85%,92%{transform:translateY(-860px)}100%{transform:translateY(0)}}
.ps-nav{display:flex;justify-content:space-between;align-items:center;padding:8px 18px 12px}
.ps-nav b{font-family:var(--display);letter-spacing:.32em;font-size:1rem;font-weight:600}
.ps-burger{display:flex;flex-direction:column;gap:4px}.ps-burger i{width:18px;height:1.5px;background:#f3e9de}
.ps-hero{position:relative;height:300px;margin:0 10px;border-radius:26px;overflow:hidden}
.ps-hero img{position:absolute;inset:0;transform:scale(1.08);animation:kb 14s ease-in-out infinite alternate}
@keyframes kb{to{transform:scale(1.18) translate(-3%,-2%)}}
.ps-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(18,14,11,.92))}
.ps-hero-in{position:absolute;left:16px;right:16px;bottom:16px;z-index:2}
.ps-hero-in small{font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;color:#d9b48a}
.ps-hero-in h5{font-family:var(--display);font-weight:500;font-size:1.85rem;line-height:.98;margin:.3rem 0 .7rem;color:#fff}
.ps-hero-in h5 i{color:#e3c29b}
.ps-pill{display:inline-block;font-size:.62rem;font-weight:600;padding:.45rem .9rem;border-radius:999px;background:#e3c29b;color:#1a120c}
.ps-tabs{display:flex;gap:6px;padding:16px 14px 10px;font-size:.62rem}
.ps-tabs span{padding:.35rem .7rem;border-radius:999px;border:1px solid rgba(243,233,222,.18);color:#c9b8a7}
.ps-tabs .on{background:#f3e9de;color:#1a120c;border-color:transparent}
.ps-svc{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;margin:0 14px 8px;padding:8px;border-radius:16px;background:rgba(255,255,255,.05);font-size:.68rem}
.ps-th{width:44px;height:44px;border-radius:12px;overflow:hidden;background:#3a2b22}
.ps-svc b{display:block;font-weight:600}.ps-svc small{color:#a8978a;font-size:.58rem}
.ps-svc em{font-style:normal;font-weight:600;color:#e3c29b}
.ps-book{margin:14px 14px 0;padding:14px;border-radius:20px;background:linear-gradient(160deg,#2a1f18,#1b1410);border:1px solid rgba(227,194,155,.18)}
.ps-book>b{font-family:var(--display);font-weight:500;font-size:1.1rem}
.ps-days{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:10px 0 8px}
.ps-days span{display:flex;flex-direction:column;align-items:center;padding:.4rem 0;border-radius:12px;background:rgba(255,255,255,.05);font-size:.52rem;color:#a8978a}
.ps-days span i{font-style:normal;font-size:.85rem;font-weight:600;color:#f3e9de}
.ps-days .on{background:#e3c29b;color:#1a120c}.ps-days .on i{color:#1a120c}
.ps-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.ps-slots span{text-align:center;font-size:.58rem;padding:.38rem 0;border-radius:9px;border:1px solid rgba(243,233,222,.14)}
.ps-slots .off{opacity:.35;text-decoration:line-through}
.ps-slots .on{background:#f3e9de;color:#1a120c;font-weight:600}
.ps-confirm{margin-top:10px;text-align:center;font-size:.62rem;font-weight:600;padding:.55rem;border-radius:999px;background:#e3c29b;color:#1a120c}
.ps-gal{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:16px 14px 0}
.ps-gal img{height:100px;border-radius:14px}
.ps-gal img:nth-child(1){grid-row:span 2;height:206px}
.ps-where{margin:16px 14px 0;padding:12px;border-radius:18px;background:rgba(255,255,255,.05);font-size:.66rem}
.ps-map{height:78px;border-radius:12px;margin-bottom:8px;position:relative;background:#2a221d;background-image:linear-gradient(30deg,transparent 46%,rgba(255,255,255,.07) 47% 53%,transparent 54%),linear-gradient(120deg,transparent 46%,rgba(255,255,255,.07) 47% 53%,transparent 54%),radial-gradient(circle at 30% 70%,rgba(120,150,110,.25),transparent 30%);background-size:60px 60px,90px 90px,100% 100%}
.ps-map i{position:absolute;left:55%;top:38%;width:12px;height:12px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#e3c29b;box-shadow:0 0 0 6px rgba(227,194,155,.2)}
.ps-where b{display:block}.ps-where small{color:#a8978a;display:flex;align-items:center;gap:5px}
.ps-where i.open{width:6px;height:6px;border-radius:50%;background:#6fd39a;display:inline-block}
.ps-foot{text-align:center;font-size:.55rem;letter-spacing:.2em;color:#6f6157;padding:18px 0 90px}
.ps-chat{position:absolute;left:12px;right:12px;bottom:66px;z-index:4;display:flex;gap:8px;align-items:flex-start;padding:9px 10px;border-radius:16px;background:rgba(36,28,22,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(227,194,155,.2);font-size:.6rem;opacity:0;transform:translateY(10px);animation:chatpop 22s ease-in-out 1.5s infinite}
.ps-chat p{margin:0;line-height:1.35}
.ps-av{flex:none;width:20px;height:20px;border-radius:50%;background:#e3c29b;color:#1a120c;display:grid;place-items:center;font-weight:700;font-size:.6rem}
@keyframes chatpop{0%,40%{opacity:0;transform:translateY(10px)}45%,62%{opacity:1;transform:none}67%,100%{opacity:0;transform:translateY(10px)}}
.ps-bar{position:absolute;left:10px;right:10px;bottom:12px;z-index:5;display:flex;gap:6px;padding:6px;border-radius:999px;background:rgba(30,23,18,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);font-size:.64rem;font-weight:600}
.ps-bar span{flex:1;text-align:center;padding:.55rem;border-radius:999px;color:#f3e9de}
.ps-bar em{flex:1.4;font-style:normal;text-align:center;padding:.55rem;border-radius:999px;background:#f3e9de;color:#1a120c}
.scene .float{position:absolute;z-index:4;max-width:290px;background:color-mix(in srgb,var(--card) 80%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.scene .f1{left:auto;right:calc(4% + 250px);top:330px}
.scene .f2{right:-1%;left:auto;top:120px}
.scene .f3{left:3%;top:470px}
.scene .f2 .dot{background:var(--gold-soft);color:var(--gold)}
.scene:hover .browser{transform:rotateY(4deg) rotateX(1deg)}
.scene:hover .iphone{transform:rotateY(-3deg) rotateX(1deg) translateY(-6px)}
@media (max-width:860px){
  .scene{height:620px;max-width:420px}
  .browser{display:none}
  .iphone{right:50%;margin-right:-141px;transform:none}
  .scene .f1{left:0;right:auto;top:360px}
  .scene .f2{right:0;top:90px}
  .scene .f3{left:0;top:200px}
}
@media (max-width:600px){.scene .f3{display:none}.scene .float{max-width:200px;font-size:.72rem;padding:.5rem .7rem}.scene .float .dot{width:1.6rem;height:1.6rem}.scene .f2{right:-6px;top:150px}.scene .f1{left:-6px;top:auto;bottom:70px}}
@media (prefers-reduced-motion:reduce){.ps,.ps-hero img,.ps-chat{animation:none}.ps-chat{opacity:1;transform:none}}

/* ---------- home: esplora (card verso le pagine) ---------- */
.xgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem}
.xcard{position:relative;display:flex;flex-direction:column;gap:.55rem;min-height:250px;padding:1.7rem 1.6rem;border-radius:22px;
  background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.09);
  color:inherit;text-decoration:none;overflow:hidden;isolation:isolate;transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .45s}
.xcard.x-wide{grid-column:span 2}
.xcard::before{content:"";position:absolute;inset:-1px;z-index:-1;background:radial-gradient(420px circle at var(--mx,80%) var(--my,0%),rgba(255,255,255,.10),transparent 55%);opacity:.6;transition:opacity .3s}
.xcard::after{content:"";position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;z-index:-1;
  background:conic-gradient(from 0deg,rgba(184,187,193,.0),rgba(184,187,193,.18),rgba(184,187,193,0));filter:blur(18px);animation:xspin 14s linear infinite}
@keyframes xspin{to{transform:rotate(360deg)}}
.xcard:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.22);box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.xcard:hover::before{opacity:1}
.xcard .xn{font:500 .78rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;opacity:.45}
.xcard .ic{width:34px;height:34px;margin:.4rem 0 .2rem;stroke:currentColor;fill:none;stroke-width:1.5;opacity:.9}
.xcard h3{font-size:clamp(1.4rem,2.2vw,1.9rem);margin:0}
.xcard p{margin:0;opacity:.72;max-width:44ch}
.xcard .xgo{margin-top:auto;padding-top:1rem;font-weight:600;font-size:.95rem;display:inline-flex;gap:.5rem;align-items:center}
.xcard .xgo i{font-style:normal;transition:transform .3s}
.xcard:hover .xgo i{transform:translateX(6px)}
@media (max-width:900px){.xgrid{grid-template-columns:1fr 1fr}.xcard.x-wide{grid-column:span 2}}
@media (max-width:600px){.xgrid{grid-template-columns:1fr}.xcard.x-wide{grid-column:auto}.xcard{min-height:0}}
@media (prefers-reduced-motion:reduce){.xcard::after{animation:none}}
/* servizi: 4 in riga, il pacchetto completo sotto a tutta larghezza */
.srv-grid{grid-template-columns:repeat(4,1fr)}
.srv.flag{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1.4fr auto;column-gap:2rem;align-items:center;background:linear-gradient(120deg,rgba(255,255,255,.07),rgba(255,255,255,.015))}
.srv.flag .flagtag,.srv.flag .num{grid-column:1}
.srv.flag ul{grid-column:2;grid-row:1/span 4;columns:2;margin:0}
.srv.flag .acts{grid-column:3;grid-row:1/span 4}
@media (max-width:1000px){.srv-grid{grid-template-columns:1fr 1fr}.srv.flag{grid-template-columns:1fr}.srv.flag ul,.srv.flag .acts{grid-column:auto;grid-row:auto}}
@media (max-width:600px){.srv-grid{grid-template-columns:1fr}.srv.flag ul{columns:1}}

/* ---------- lavori: card con tavole di presentazione dei siti demo ---------- */
.wk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.6rem 1.6rem;margin-top:2.6rem}
.wk{display:flex;flex-direction:column;color:inherit;text-decoration:none;padding-bottom:1.4rem;border-bottom:1px solid var(--line)}
.wk-shot{position:relative;overflow:hidden;border-radius:6px;background:#e3e3de;margin-bottom:1.1rem}
.wk-shot img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.wk:hover .wk-shot img{transform:scale(1.045)}
.wk-shot .demo{position:absolute;right:10px;top:10px;font:600 .6rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;background:rgba(18,19,22,.82);color:#fff;padding:.4rem .6rem;border-radius:999px}
.wk-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.wk-tags{font:700 .66rem/1.3 var(--body);letter-spacing:.12em;text-transform:uppercase}
.wk-arr{font-size:1rem;transition:transform .3s}.wk:hover .wk-arr{transform:translate(3px,-3px)}
.wk h3{font-size:1.75rem;margin:.7rem 0 .4rem}
.wk p{margin:0;color:var(--muted);font-size:.95rem}
@media (max-width:980px){.wk-grid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.wk-grid{grid-template-columns:1fr}}

/* =========================================================
   Impaginazione "editoriale" (struttura come Vondur):
   testi allineati a sinistra, occhiello con linea, righe numerate con filetti
   ========================================================= */
.eyebrow:not(.pill){display:inline-flex;align-items:center;gap:.8rem;font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.eyebrow:not(.pill)::before{content:"";width:34px;height:1px;background:currentColor;opacity:.8}
.head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1.1rem 4rem;align-items:end;text-align:left;justify-items:start}
.head .eyebrow{grid-column:1/-1}
.head h2{margin:0;max-width:16ch}
.head .sub{margin:0 0 .4rem;max-width:34rem}
.head:not(:has(.sub)) h2{max-width:22ch}
.duo{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:3rem 5rem;align-items:start}
.duo .head{grid-template-columns:1fr;position:sticky;top:110px}
.duo .head .sub{margin-top:.6rem}
.rows{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.rows .card{all:unset;display:grid;grid-template-columns:3.2rem 1fr;gap:.3rem 1rem;padding:1.7rem 0;border-bottom:1px solid var(--line)}
.rows .card .n{grid-row:1/span 2;font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:.45rem}
.rows .card h3{margin:0;font-size:1.55rem}
.rows .card p{margin:0;color:var(--muted)}
.duo .faq{margin-top:0}
.duo .faq-tabs{justify-content:flex-start}
@media (max-width:900px){.head,.duo{grid-template-columns:1fr;gap:1.4rem}.duo .head{position:static}}

/* hero: testo a sinistra, scena a destra, servizi in una barra in fondo */
.hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;justify-items:start;text-align:left;gap:1.3rem 2.5rem;padding-block:4.5rem 0}
.hero .wrap>*{grid-column:1}
.hero .hero-logo{display:none}
.hero h1{font-size:clamp(2.9rem,5.6vw,5.4rem)}
.hero .sub{max-width:34rem}
.hero .ctas,.hero .badges{justify-content:flex-start}
.hero .scene{grid-column:2;grid-row:1/span 6;zoom:.62;margin:0;align-self:center}
.hero .htabs{grid-column:1/-1;max-width:none;grid-template-columns:repeat(3,1fr);gap:0;margin-top:3rem;border-top:1px solid var(--line)}
.hero .htab{border:0;border-radius:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:1.3rem 1.4rem 1.6rem;border-left:1px solid var(--line)}
.hero .htab:first-child{border-left:0;padding-left:0}
.hero .htab:hover{transform:none;background:color-mix(in srgb,var(--card) 35%,transparent)}
@media (max-width:1000px){
  .hero .wrap{grid-template-columns:1fr}
  .hero .scene{grid-column:1;grid-row:auto;zoom:1;margin-top:1.5rem;justify-self:center}
  .hero .htabs{grid-template-columns:1fr;margin-top:1.5rem}
  .hero .htab,.hero .htab:first-child{border-left:0;border-bottom:1px solid var(--line);padding:1rem 0}
}

/* pagine interne: titolo a sinistra */
.page-hero .wrap{align-items:flex-start;text-align:left;padding-block:6rem 3.5rem}
.page-hero .ctas{justify-content:flex-start}
.page-hero h1{max-width:15ch}

/* fascia chiara per i lavori, come i portfolio su fondo chiaro */
.block.accent .note-demo .btn.ghost{border-color:color-mix(in srgb,var(--fg) 30%,transparent);color:var(--fg)}
.rows .card h3{font-family:var(--display);font-weight:500;font-size:1.85rem;line-height:1.1}
.duo .faq{gap:0;border-top:1px solid var(--line)}
.duo .faq details{background:none;border:0;border-radius:0;border-bottom:1px solid var(--line);box-shadow:none}
.duo .faq summary{padding-left:0;padding-right:0}
.duo .faq details p{padding-left:0}
.wk h3{font-family:var(--display);font-weight:500;font-size:2rem}
@media (max-width:1000px){.hero .htabs{order:2}}
.page-hero .sub{margin-left:0;margin-right:0}
.lav .wk-grid{grid-template-columns:1fr 1fr;gap:3rem 2rem;margin-top:0}
@media (max-width:620px){.lav .wk-grid{grid-template-columns:1fr}}
/* hero: sito demo vero che scorre nel computer e nel telefono */
.live-page{position:relative;padding:0;background:#16201d}
.live-screen{background:#16201d}
.scene img.sshot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0;animation:livescroll 26s cubic-bezier(.65,0,.35,1) 1.2s infinite}
.scene img.sshot.m{top:0;animation-duration:30s;animation-delay:2s}
.live-screen .ip-status{background:linear-gradient(rgba(10,14,13,.75),transparent);color:#fff}
@keyframes livescroll{0%,12%{object-position:50% 0}30%,40%{object-position:50% 33%}58%,68%{object-position:50% 66%}84%,90%{object-position:50% 100%}100%{object-position:50% 0}}
@media (prefers-reduced-motion:reduce){.scene img.sshot{animation:none}}
/* pacchetti: titoli tra i gruppi, opzione zero anticipo, regole */
.plans-h{margin:3.2rem 0 1.4rem}.plans-h:first-of-type{margin-top:2.4rem}
.plans-h h2{font-family:var(--display);font-weight:500;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.1;margin:.6rem 0 0}
.plans-h h2 em{font-style:italic;color:var(--muted)}
.plan .for+.more{margin-top:-.3rem}
.zero{margin-top:1.4rem;display:flex;gap:1.6rem;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:1.8rem 2rem;border-radius:28px;border:1px dashed color-mix(in srgb,var(--gold) 55%,transparent);background:color-mix(in srgb,var(--gold) 7%,transparent)}
.zero>div{flex:1 1 420px;display:flex;flex-direction:column;gap:.5rem}
.zero .tag{align-self:flex-start;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.zero strong{font-family:var(--display);font-weight:500;font-size:1.7rem}
.zero p{margin:0;color:var(--muted)}
.terms{list-style:none;margin:1.6rem 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}
@media (max-width:1000px){.terms{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.terms{grid-template-columns:1fr}}
.terms li{padding:1rem 1.1rem;border-radius:18px;border:1px solid var(--line);font-size:.92rem;color:var(--muted)}
.terms b{display:block;color:var(--ink,inherit);font-weight:600;margin-bottom:.2rem}
@media (max-width:860px){.plans-h{margin-top:2.4rem}}
/* v4: orario nei messaggi inviati leggibile (contrasto AA) con qualunque tema */
.msg.out i{color:color-mix(in srgb,var(--wa-text) 85%,var(--wa-out))}

/* Fix sovrapposizioni hero: barra di stato del telefono piena e immagine che parte sotto; notifica assistente fuori dal titolo del telefono. */
.live-screen .ip-status{background:#0d1211;color:#fff}
.scene img.sshot.m{top:46px;height:calc(100% - 46px)}
.scene .f2{right:calc(4% + 230px);left:auto;top:95px}
@media (max-width:860px){.scene .f2{right:auto;left:0;top:90px}}
@media (max-width:600px){.scene .f2{left:-6px;right:auto;top:150px}}
