/* Promaxis — thème clair (mockup validé 16.09.2026) */


:root{
  --navy:#0A0F1F; --navy-2:#1C2A4A; --navy-line:rgba(255,255,255,.12);
  --text:#475569; --muted:#64748B; --band-text:#AAB6C8;
  --gold:#D4AF37; --gold-hover:#C39E2A; --gold-ink:#B8922A;
  --blue:#5FB0DF; --blue-icon:#3A8BC4; --link:#2175A6;
  --bg:#FFFFFF; --alt:#F2F5F9; --line:#E6EBF2; --field:#D5DDE8;
  --f-body:"Atkinson Hyperlegible Next","Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-head:var(--f-body);
  --shadow-card:0 1px 2px rgba(10,15,31,.04),0 10px 28px rgba(10,15,31,.06);
  --radius:12px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.65 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5,h6,p,figure,blockquote{margin:0}
h1 em,h2 em,h3 em,h4 em{font-style:normal}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.narrow{max-width:820px;margin-left:auto;margin-right:auto}
.eyebrow{font:700 13px/1.5 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}
.band .eyebrow{color:var(--gold)}
.h-sec{font:700 clamp(28px,3.2vw,40px)/1.15 var(--f-head);color:var(--navy);letter-spacing:-.01em;text-wrap:balance}
.h-sub{font:700 clamp(22px,2.3vw,28px)/1.25 var(--f-head);color:var(--navy);text-wrap:balance}
.lead{font-size:18px;color:var(--text)}
.sec-head{display:grid;gap:14px;justify-items:center;text-align:center;max-width:840px;margin:0 auto 52px}
.sec-head.left{justify-items:start;text-align:left;margin-left:0}
.sec-head p,.sec-head .rich{max-width:680px}
.ico{width:24px;height:24px;flex:none}
:focus-visible{outline:2px solid var(--blue-icon);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:8px 14px;border-radius:6px;z-index:100}
.skip:focus{left:8px}

/* texte riche */
.rich{display:grid;gap:14px}
.rich a{color:var(--link);text-decoration:underline;text-underline-offset:2px}
.rich strong,.rich b{color:var(--navy);font-weight:700}
.rich ul,.rich ol{margin:0;padding-left:1.25em;display:grid;gap:6px}
.rich blockquote{border-left:3px solid var(--gold);padding:4px 0 4px 16px;color:var(--navy);font-style:italic}
.rich h2,.rich h3,.rich h4{font-family:var(--f-head);color:var(--navy);line-height:1.25;margin-top:10px}
.rich h2{font-size:clamp(24px,2.4vw,30px)}.rich h3{font-size:22px}.rich h4{font-size:19px}
.center .rich,.rich.center{justify-items:center;text-align:center}
.band .rich,.band .lead{color:var(--band-text)}
.band .rich strong{color:#fff}
.band .rich a{color:var(--gold)}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.rich table,.table-wrap table{border-collapse:collapse;width:100%;font-size:15.5px;min-width:560px}
.table-wrap th,.table-wrap td,.rich th,.rich td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.table-wrap th,.rich th{background:var(--alt);color:var(--navy);font-weight:700}
.table-wrap tr:last-child td{border-bottom:0}
.table-wrap tr.hl td{background:#FBF7EA;color:var(--navy);font-weight:700}

/* boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 16px/1.2 var(--f-body);padding:16px 26px;border-radius:8px;border:1.5px solid transparent;transition:background .2s,color .2s,border-color .2s;cursor:pointer;text-align:center}
.btn .ico{width:18px;height:18px;transition:transform .2s}
.btn:hover .ico{transform:translateX(3px)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-2)}
.btn-gold{background:var(--gold);color:var(--navy)}
.btn-gold:hover{background:var(--gold-hover)}
.btn-line{border-color:var(--navy);color:var(--navy);background:transparent}
.btn-line:hover{background:var(--navy);color:#fff}
.band .btn-line{border-color:rgba(255,255,255,.5);color:#fff}
.band .btn-line:hover{background:#fff;color:var(--navy)}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.center .actions,.actions.center{justify-content:center}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:28px;height:78px}
.hdr .logo img{height:44px;width:auto}
.nav{display:flex;gap:26px;margin:0 auto;font:500 15.5px/1 var(--f-body);color:var(--navy);align-items:center}
.nav > a,.nav .dd > button{position:relative;padding:10px 0;background:none;border:0;font:inherit;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.nav .dd > button .ico{width:16px;height:16px;transition:transform .2s}
.nav > a:hover,.nav .dd > button:hover,.nav a[aria-current]{color:var(--link)}
.nav > a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--gold);border-radius:2px}
.dd{position:relative}
.dd-panel{position:absolute;top:100%;left:-18px;min-width:250px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 40px rgba(10,15,31,.12);padding:8px;display:grid;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s}
.dd-panel a{padding:10px 12px;border-radius:8px;font-size:15px;line-height:1.3}
.dd-panel a:hover{background:var(--alt);color:var(--link)}
.dd:hover .dd-panel,.dd:focus-within .dd-panel{opacity:1;visibility:visible;transform:none}
.dd:hover > button .ico{transform:rotate(180deg)}
.hdr .btn{padding:13px 20px;font-size:15px;white-space:nowrap}
.burger{display:none;margin-left:8px;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);align-items:center;justify-content:center;cursor:pointer}
.mnav{display:none}

/* hero */
.hero{background:linear-gradient(180deg,#FFFFFF 0%,#F4F7FB 100%);overflow:clip}
.hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;padding-top:72px;padding-bottom:84px}
.hero.solo .wrap{grid-template-columns:1fr;max-width:920px;text-align:center;justify-items:center}
.hero-copy{display:grid;gap:22px;align-content:start}
.hero.solo .hero-copy{justify-items:center}
.hero .h-hero{font:700 clamp(34px,4vw,54px)/1.08 var(--f-head);color:var(--navy);letter-spacing:-.02em;text-wrap:balance}
.hero .rich{max-width:560px}
.hero.solo .rich{max-width:720px}
.hero-copy .actions{margin-top:6px}
.hero-art{position:relative}
.hero-art::before{content:"";position:absolute;inset:8% 4% 2% 10%;background:radial-gradient(closest-side,rgba(95,176,223,.22),rgba(95,176,223,0));z-index:0}
.hero-art{position:sticky;top:110px}
.hero-art img{position:relative;z-index:1;width:100%;max-height:560px;object-fit:contain}
.float-card{position:absolute;z-index:2;left:2%;top:4%;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 34px rgba(10,15,31,.10);padding:16px 20px;display:grid;gap:2px}
.float-card small{font-size:13px;color:var(--muted)}
.float-card strong{font:700 30px/1.1 var(--f-head);color:var(--navy);font-variant-numeric:tabular-nums}
.hero-points{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:15px;color:var(--navy)}
.hero-points li{display:flex;gap:8px;align-items:center}
.hero-points .ico{width:18px;height:18px;color:var(--blue-icon)}

/* sections */
.sec{padding:96px 0}
.sec.alt{background:var(--alt)}
.sec.tight{padding:64px 0}
.band{background:var(--navy);color:#fff}
.band .h-sec,.band .h-sub{color:#fff}
.stack{display:grid;gap:40px}

/* bande résultats (accueil) */
.results{padding:64px 0 56px}
.results .sec-head{margin-bottom:40px}
.results .h-sec{font-size:clamp(24px,2.6vw,32px)}
.results .sec-head .sub{font:400 17px/1.5 var(--f-body);color:var(--band-text)}
.results .more{display:flex;justify-content:center;margin-top:44px}
.results .more a{display:inline-flex;gap:8px;align-items:center;color:var(--gold);font-weight:700}
.results .more .ico{width:18px;height:18px}
.media-list > .media:nth-child(even) .media-art{order:2}
@media (max-width:980px){.media-list > .media:nth-child(even) .media-art{order:0}}

/* cartes */
.cards{display:grid;gap:24px}
.cards.c2{grid-template-columns:repeat(2,1fr)}
.cards.c3{grid-template-columns:repeat(3,1fr)}
.cards.c4{grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:32px 30px;display:grid;gap:12px;align-content:start}
.card > .ico{width:38px;height:38px;color:var(--blue-icon);stroke-width:1.5;margin-bottom:8px}
.card h3,.card h4,.card .card-t{font:700 20px/1.3 var(--f-head);color:var(--navy)}
.card p,.card .rich{font-size:16px;line-height:1.6}
.card .num{font:700 34px/1 var(--f-head);color:var(--navy);font-variant-numeric:tabular-nums}
.card .card-link{margin-top:auto;padding-top:6px;display:inline-flex;gap:8px;align-items:center;font-weight:700;color:var(--link)}
.card .card-link .ico{width:18px;height:18px}
.cards.c4 .card{padding:28px 24px}
.cards.c4 .card h3,.cards.c4 .card h4{font-size:19px}
.cards.c4 .card p{font-size:15.5px}
.after{display:flex;justify-content:center;margin-top:44px}
.band .card{background:rgba(255,255,255,.04);border-color:var(--navy-line);box-shadow:none}
.band .card h3,.band .card h4,.band .card .card-t{color:#fff}
.band .card p,.band .card .rich{color:var(--band-text)}
.band .card > .ico{color:var(--blue)}

/* chiffres */
.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.stats.n3{grid-template-columns:repeat(3,1fr)}
.stats.n2{grid-template-columns:repeat(2,1fr)}
.stat{padding:6px 28px;display:grid;gap:10px;align-content:start;border-left:1px solid var(--navy-line)}
.stat:first-child{border-left:0;padding-left:0}
.stat-top{display:flex;align-items:center;gap:12px}
.stat-top .ico{color:var(--blue);width:30px;height:30px;stroke-width:1.6}
.stat-num{font:700 32px/1.05 var(--f-head);color:var(--gold);font-variant-numeric:tabular-nums}
.stat h3,.stat .stat-t{font:700 18px/1.3 var(--f-head);color:#fff}
.stat p,.stat .rich{font-size:15px;line-height:1.55;color:var(--band-text)}
.stat ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:6px;font-size:14.5px;color:#fff;font-variant-numeric:tabular-nums}
.stat li{display:flex;gap:10px;align-items:baseline}
.stat li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none;transform:translateY(-2px)}
.counters{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px;padding-top:40px;border-top:1px solid var(--line)}
.counter{display:grid;gap:4px;text-align:center}
.counter strong{font:700 36px/1 var(--f-head);color:var(--navy);font-variant-numeric:tabular-nums}
.counter span{font-size:15px;color:var(--muted)}

/* étapes */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:step}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:26px 24px;display:grid;gap:10px;align-content:start;position:relative}
.step .step-n{font:700 14px/1 var(--f-body);letter-spacing:.1em;color:var(--gold-ink)}
.step .step-t{font:700 20px/1.25 var(--f-head);color:var(--navy)}
.step::after{content:"";position:absolute;top:36px;right:-14px;width:8px;height:8px;border-top:2px solid var(--blue-icon);border-right:2px solid var(--blue-icon);transform:rotate(45deg)}
.step:last-child::after{display:none}

/* média + texte */
.media-list{display:grid;gap:88px}
.media{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.media.flip .media-art{order:2}
.media-art{background:radial-gradient(120% 90% at 50% 40%,#FFFFFF 0%,#EEF2F7 75%);border:1px solid var(--line);border-radius:20px;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;padding:6%}
.media-art img{width:100%;height:100%;object-fit:contain}
.media-art.photo{background:none;border:0;aspect-ratio:auto}
.media-art.photo img{width:100%;border-radius:16px;box-shadow:var(--shadow-card)}
.media-copy{display:grid;gap:18px;align-content:start}
.media-copy h2,.media-copy h3,.media-copy h4{font:700 clamp(24px,2.4vw,30px)/1.2 var(--f-head);color:var(--navy)}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.checks li{display:flex;gap:12px;align-items:flex-start;color:var(--navy);font-weight:500}
.checks .ico{width:22px;height:22px;color:var(--blue-icon);margin-top:2px}
.band .checks li{color:#fff}
.band .checks .ico{color:var(--gold)}
.proof{border-left:3px solid var(--gold);padding-left:14px;color:var(--navy);font-weight:700}
.media-copy .actions{margin-top:4px}

/* témoignages */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.quote{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:28px;display:grid;gap:18px;align-content:space-between}
.quote .ico{width:28px;height:28px;color:var(--gold)}
.quote p{color:var(--navy);font-size:16.5px;line-height:1.6}
.quote footer{display:flex;gap:12px;align-items:center}
.quote footer img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.quote footer strong{display:block;color:var(--navy);font-size:15.5px}
.quote footer span{font-size:14px;color:var(--muted)}

/* FAQ */
.faq{display:grid;border-top:1px solid var(--line);max-width:880px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 4px;font:700 18px/1.4 var(--f-head);color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{width:22px;height:22px;color:var(--blue-icon);transition:transform .2s}
.faq details[open] summary .ico{transform:rotate(45deg)}
.faq .rich{padding:0 4px 22px;font-size:16.5px}

/* CTA */
.cta{position:relative;overflow:hidden}
.cta .wrap{display:grid;grid-template-columns:1fr 1fr;min-height:400px}
.cta-copy{padding:72px 56px 72px 0;display:grid;gap:18px;align-content:center;border-right:1px solid var(--navy-line);position:relative;z-index:2}
.cta-copy .actions{margin-top:10px}
.cta-art{position:absolute;inset:0 0 0 45%;z-index:1}
.cta-art img{width:100%;height:100%;object-fit:cover;object-position:70% 40%}
.cta-art::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(10,15,31,0) 35%);z-index:1}
.cta.with-form .wrap{grid-template-columns:1fr 1fr;gap:56px;align-items:start;padding-top:72px;padding-bottom:72px}
.cta.with-form .cta-copy{padding:30px 0 0;border:0;align-content:start}

/* formulaires */
.form-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 44px rgba(10,15,31,.10);padding:30px;display:grid;gap:14px;color:var(--text)}
.form-card .form-t{font:700 21px/1.3 var(--f-head);color:var(--navy)}
.form{display:grid;gap:12px}
.form label{display:grid;gap:6px;font-size:14.5px;font-weight:600;color:var(--navy)}
.form input,.form textarea,.form select{font:400 16px/1.3 var(--f-body);color:var(--navy);min-height:48px;padding:12px 14px;border:1px solid var(--field);border-radius:8px;background:#fff;width:100%}
.form textarea{min-height:110px;resize:vertical}
.form input::placeholder,.form textarea::placeholder{color:var(--muted)}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--blue-icon);outline-offset:0;border-color:transparent}
.form .btn{width:100%;margin-top:4px}
.form-note{font-size:13.5px;color:var(--muted);text-align:center}

/* logos */
.logos-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 52px}
.logos-row img{height:52px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .25s,opacity .25s}
.logos-row img:hover{filter:none;opacity:1}
.logos .badges{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px 56px;margin-bottom:44px}
.logos .badges img{height:84px;width:auto;filter:grayscale(1);opacity:.8;transition:filter .25s,opacity .25s}
.logos .badges img:hover{filter:none;opacity:1}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:64px;align-items:center;width:max-content;animation:slide 60s linear infinite}
.marquee-track img{height:30px;width:auto;opacity:.6;filter:grayscale(1)}
.marquee-track img.tall{height:44px}
@keyframes slide{to{transform:translateX(-50%)}}

/* blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column}
.post img{aspect-ratio:768/403;object-fit:cover;width:100%}
.post-body{padding:22px 24px 26px;display:grid;gap:12px;flex:1;align-content:start}
.post time,.post .meta{font-size:14px;color:var(--muted)}
.post h3,.post h2{font:700 19px/1.35 var(--f-head);color:var(--navy);text-wrap:balance}
.post p{font-size:15.5px}
.post .read{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:6px;font:700 13.5px/1 var(--f-body);letter-spacing:.08em;color:var(--link);text-transform:uppercase}
.post .read .ico{width:16px;height:16px}

/* statistiche hero landing */
.hero-stats{display:flex;flex-wrap:wrap;gap:14px 36px;margin-top:4px}
.hero-stats div{display:grid;gap:2px}
.hero-stats strong{font:700 28px/1 var(--f-head);color:var(--navy);font-variant-numeric:tabular-nums}
.hero-stats span{font-size:14px;color:var(--muted)}

/* vetrina siti */


.show-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--alt);border-bottom:1px solid var(--line)}
.show-bar i{width:9px;height:9px;border-radius:50%;background:#D5DDE8}
.show-bar span{margin-left:8px;font-size:13px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}



.show-card figcaption{padding:12px 14px;font-size:14px;color:var(--muted)}

/* bottoni dentro card bianche nelle bande */
.band .form-card .btn-line{border-color:var(--navy);color:var(--navy)}
.band .form-card .btn-line:hover{background:var(--navy);color:#fff}

/* contact */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:start}
.contact-grid .card .btn{justify-self:start}
@media (max-width:980px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:600px){.form .cards.c2{grid-template-columns:1fr}}

/* filtres blog */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 auto 40px}
.chip{padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-weight:600;font-size:15px}
.chip:first-child{background:var(--navy);border-color:var(--navy);color:#fff}
.chip:hover{border-color:var(--navy)}

/* article */
.article{max-width:760px;margin:0 auto}
.article .rich{font-size:18px;line-height:1.75;gap:18px}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14.5px;color:var(--muted)}
.note{background:var(--alt);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;font-size:15.5px}
.author{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow-card)}
.author img{height:34px;width:auto}

/* footer */
.ftr{border-top:1px solid var(--line);background:#fff}
.ftr .wrap{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:56px;padding-top:72px;padding-bottom:64px}
.ftr h3{font:700 20px/1.3 var(--f-head);color:var(--navy);margin-bottom:18px}
.ftr .logo{height:42px;width:auto;margin-bottom:22px}
.contact-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:16px}
.contact-list li{display:flex;gap:12px;align-items:flex-start}
.contact-list .ico{width:20px;height:20px;color:var(--blue-icon);margin-top:3px}
.socials{display:flex;gap:10px;margin-top:22px}
.socials a{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--navy)}
.socials a:hover{border-color:var(--navy)}
.socials .ico{width:18px;height:18px}
.svc-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;font-size:15.5px}
.svc-links a:hover{color:var(--link)}
.legal{background:var(--navy);color:var(--band-text);font-size:14px}
.legal .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px}
.legal a:hover{color:#fff}

/* barre d'aperçu locale */






/* responsive */
@media (max-width:1180px){.nav{gap:18px;font-size:14.5px}.hdr .wrap{gap:18px}}
@media (max-width:1100px){.cards.c4,.steps{grid-template-columns:repeat(2,1fr)}.step::after{display:none}.quotes{grid-template-columns:repeat(2,1fr)}}
@media (max-width:1024px){
  .nav{display:none}.hdr .btn{margin-left:auto}.burger{display:inline-flex}
  .mnav{display:block;position:fixed;inset:66px 0 0 0;background:#fff;z-index:49;overflow-y:auto;padding:18px 20px 40px;transform:translateX(100%);transition:transform .25s;border-top:1px solid var(--line)}
  .mnav.open{transform:none}
  .mnav a{display:block;padding:14px 4px;border-bottom:1px solid var(--line);font-size:17px;color:var(--navy);font-weight:600}
  .mnav .sub a{font-weight:400;padding-left:18px;font-size:16px;color:var(--text)}
  .mnav .grp{padding:16px 4px 4px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink);font-weight:700}
}
@media (max-width:980px){
  .hero .wrap{grid-template-columns:1fr;padding-top:48px;padding-bottom:56px}
  .hero-art img{width:100%;margin:0}
  .stats,.stats.n3{grid-template-columns:repeat(2,1fr);row-gap:36px}
  .stat:nth-child(3){border-left:0;padding-left:0}
  .cards.c3,.cards.c2,.quotes{grid-template-columns:1fr}
  .media{grid-template-columns:1fr;gap:28px}.media.flip .media-art{order:0}
  .cta .wrap,.cta.with-form .wrap{grid-template-columns:1fr}
  .cta-copy{border-right:0;padding:56px 0 260px}
  .cta.with-form .cta-copy{padding:0}
  .cta-art{inset:auto 0 0 0;height:300px}
  .cta-art::before{background:linear-gradient(180deg,var(--navy) 0%,rgba(10,15,31,0) 45%)}
  .posts{grid-template-columns:1fr}
  .counters{grid-template-columns:repeat(2,1fr);row-gap:28px}
  .ftr .wrap{grid-template-columns:1fr;gap:44px}
}
@media (max-width:600px){
  body{font-size:16.5px}
  .wrap{padding:0 20px}
  .hdr .wrap{height:66px}.hdr .logo img{height:34px}.hdr .btn{padding:10px 12px;font-size:13.5px}.hdr .btn .ico{display:none}
  .sec{padding:64px 0}
  .sec-head{margin-bottom:36px}
  .stats,.stats.n3,.stats.n2{grid-template-columns:1fr}.stat{border-left:0;padding:0 0 28px;border-bottom:1px solid var(--navy-line)}.stat:last-child{border-bottom:0}
  .cards.c4,.steps{grid-template-columns:1fr}
  .card{padding:26px 22px}
  .media-list{gap:64px}
  .svc-links{grid-template-columns:1fr}
  .form-card{padding:22px}
  .faq summary{font-size:16.5px}
  
}

/* icone originali del live ricolorate */
.ico-live{display:inline-grid;place-items:center;width:40px;height:40px;color:var(--blue-icon);flex:none}
.ico-live svg{width:100%;height:100%}
.ico-live svg:not([fill="none"]){fill:currentColor}
.card > .ico-live{width:42px;height:42px;margin-bottom:6px}
.band .ico-live{color:var(--blue)}
.checks .ico-live{width:18px;height:18px;margin-top:4px}
.hero-points .ico-live{width:16px;height:16px}

/* parole evidenziate (colori del live) */
mark{background:none;color:var(--gold-ink);font-weight:700}
mark[data-c="green"]{color:#15803D}
mark[data-c="red"]{color:#B91C1C}
mark[data-c="blue"]{color:var(--link)}
.band mark{color:var(--gold)}
.band mark[data-c="green"]{color:#4ADE80}
.band mark[data-c="red"]{color:#FCA5A5}
.band mark[data-c="blue"]{color:var(--blue)}

/* allineamenti */
.t-center{text-align:center;justify-items:center;margin-left:auto;margin-right:auto}
.rich.t-center{max-width:760px}
.narrow.t-center .actions{justify-content:center}
.cols{display:grid;gap:32px;align-items:start}
.cols.c2{grid-template-columns:repeat(2,1fr)}.cols.c3{grid-template-columns:repeat(3,1fr)}.cols.c4{grid-template-columns:repeat(4,1fr)}
.card-img{border-radius:10px}

/* confronto: cosa perde / cosa vince */
.versus{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.vs{border-radius:16px;padding:32px 30px;display:grid;gap:16px;align-content:start}
.vs .card-t{font:700 24px/1.25 var(--f-head)}
.vs-bad{background:#FFF5F5;border:1px solid #F5C2C2}
.vs-bad .card-t{color:#B42318}
.vs-bad .checks li{color:#5B2323}
.vs-bad .ico-live{color:#DC2626}
.vs-bad .proof{border-color:#DC2626;color:#7A1C1C}
.vs-good{background:var(--navy);border:1px solid rgba(212,175,55,.55);box-shadow:0 18px 40px rgba(10,15,31,.18)}
.vs-good .card-t{color:var(--gold)}
.vs-good .checks li{color:#fff}
.vs-good .ico-live{color:var(--gold)}
.vs-good .rich,.vs-good .proof{color:var(--band-text)}
.vs-good .proof strong,.vs-good strong{color:#fff}

/* passaggi con etichetta tempo */
.step-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.step .step-n{font:700 30px/1 var(--f-head);letter-spacing:0;color:var(--gold-ink)}
.step-meta{font-size:13px;color:var(--muted);letter-spacing:.04em}
.band .step{background:rgba(255,255,255,.04);border-color:var(--navy-line);box-shadow:none}
.band .step-t{color:#fff}.band .step .step-n{color:var(--gold)}.band .step-meta{color:var(--band-text)}
.band .step::after{border-color:var(--gold)}
.band .counters{border-top-color:var(--navy-line)}
.band .counter strong{color:var(--gold)}.band .counter span{color:var(--band-text)}
.band .quote{background:rgba(255,255,255,.04);border-color:var(--navy-line);box-shadow:none}
.band .quote p{color:#fff}.band .quote footer strong{color:#fff}.band .quote footer span{color:var(--band-text)}
.band .card-link{color:var(--gold)}
.band .num{color:var(--gold)}

/* ruota branding che gira */
[data-scroll-rotate]{transition:transform .12s linear;will-change:transform}

@media (max-width:980px){.versus,.cols.c2,.cols.c3,.cols.c4{grid-template-columns:1fr}.hero-art{position:relative;top:0}}



/* à propos */
.ap-hero .wrap{align-items:center}
.radar{width:100%;max-width:560px;margin:0 auto;aspect-ratio:1/1}
.radar svg{width:100%;height:100%;display:block;font-family:var(--f-body)}
.ap-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.ap-split-head{display:grid;gap:18px;position:sticky;top:110px}
.ap-body{display:grid;gap:18px}
.band .ap-body strong{color:#fff}
.band mark,.h-sec mark{background:none}
.h-sec mark{color:inherit;font-weight:inherit}
.band .h-sec mark{color:var(--gold)}
.credo{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.credo li{display:grid;grid-template-columns:56px 1fr;gap:18px;padding:26px 0;border-top:1px solid var(--line)}
.credo-n{font:700 28px/1 var(--f-head);color:var(--gold-ink)}
.credo h3{font:700 20px/1.3 var(--f-head);color:var(--navy);margin-bottom:6px}
.credo p{font-size:16px}
.founders{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}
.founder{display:grid;grid-template-columns:140px 1fr;gap:22px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow-card)}
.founder-img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 22%;border-radius:12px;box-shadow:0 6px 18px rgba(10,15,31,.14)}
.founder-ph{aspect-ratio:4/5;border-radius:12px;background:linear-gradient(160deg,#1c2a4a,var(--navy));display:grid;place-items:center;color:var(--gold);font:700 44px/1 var(--f-head)}
.founder h3,.promax h3{font:700 22px/1.25 var(--f-head);color:var(--navy);margin:4px 0}
.founder p:last-child,.promax-body p:last-child{font-size:15.5px;margin-top:8px}
.profile-scope{font-size:14px;color:var(--muted)}
.promax{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:center;background:var(--navy);border:1px solid rgba(212,175,55,.5);border-radius:18px;padding:26px 32px;margin-bottom:40px;box-shadow:0 18px 40px rgba(10,15,31,.16)}
.promax-art{background:radial-gradient(70% 60% at 50% 45%,#22335a,var(--navy));border-radius:14px;display:grid;place-items:center;height:260px}
.promax-art{overflow:hidden}
.promax-art img{height:236px;width:auto;max-width:100%;object-fit:contain}
.promax .eyebrow{color:var(--gold)}.promax h3{color:#fff}.promax .profile-scope{color:var(--band-text)}.promax-body p:last-child{color:var(--band-text)}
.roles{border-top:1px solid var(--line)}
.role{border-bottom:1px solid var(--line)}
.role summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:10px 1fr auto auto 28px;gap:18px;align-items:center;padding:20px 6px}
.role summary::-webkit-details-marker{display:none}
.role summary:hover .role-name{color:var(--link)}
.role-dot{width:9px;height:9px;border-radius:50%;background:var(--gold)}
.role-name{font:700 19px/1.3 var(--f-head);color:var(--navy)}
.role-tag{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--link);border:1px solid rgba(33,117,166,.35);padding:5px 10px;border-radius:6px;white-space:nowrap}
.role-chev .ico{width:22px;height:22px;color:var(--blue-icon);transition:transform .2s}
.role[open] .role-chev .ico{transform:rotate(180deg)}
.role-avatars{display:flex}
.avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:2px solid #fff;margin-left:-8px;box-shadow:0 2px 6px rgba(10,15,31,.15)}
.avatar:first-child{margin-left:0}
.avatar-pm{object-fit:contain;background:var(--navy);padding:2px}
.avatar-in{display:inline-grid;place-items:center;background:var(--navy);color:var(--gold);font:700 12px/1 var(--f-body)}
.role-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:4px 6px 28px 34px}
.profile{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow-card)}
.profile-img{width:150px;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-radius:10px}
.profile-body{display:grid;gap:6px}
.profile-body h4{font:700 20px/1.25 var(--f-head);color:var(--navy)}
.profile-body p:last-child{font-size:15px;line-height:1.6}
.workflow{list-style:none;margin:0 auto;padding:0;max-width:920px;display:grid;gap:0;position:relative}
.workflow::before{content:"";position:absolute;left:27px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--gold),rgba(212,175,55,.2))}
.wf{display:grid;grid-template-columns:56px 1fr;gap:22px;padding:14px 0;position:relative}
.wf-n{width:56px;height:56px;border-radius:50%;background:var(--navy);color:var(--gold);display:grid;place-items:center;font:700 18px/1 var(--f-head);position:relative;z-index:1;box-shadow:0 0 0 6px var(--alt)}
.wf-body{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 22px;box-shadow:var(--shadow-card);display:grid;gap:8px}
.wf-body h3{font:700 19px/1.3 var(--f-head);color:var(--navy)}
.wf-body p{font-size:15.5px}
.cta-bg{position:absolute;inset:0;z-index:0;opacity:.35}
.cta-bg img{width:100%;height:100%;object-fit:cover}
.cta.with-form .wrap{position:relative;z-index:1}
@media (max-width:980px){.ap-split,.credo,.founders,.role-panel{grid-template-columns:1fr}.ap-split-head{position:relative;top:0}.promax{grid-template-columns:1fr;text-align:center}.promax-art{height:220px}
 .role summary{grid-template-columns:10px 1fr 28px}.role-avatars,.role-tag{display:none}.role-panel{padding-left:6px}}
@media (max-width:600px){.founder,.profile{grid-template-columns:1fr}.profile-img{width:100%}.founder-ph{max-width:180px}.founder-img{max-width:260px}}


/* à propos · méthode (ruota) */
.method{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.wheel{position:relative;max-width:440px;width:100%;margin:0 auto;aspect-ratio:1/1}
.wheel svg{width:100%;height:100%;overflow:visible}
.w-base{fill:none;stroke:var(--line);stroke-width:2}
.w-spin{fill:none;stroke:rgba(58,139,196,.35);stroke-width:1.5;stroke-dasharray:4 10;transform-origin:200px 200px;animation:wspin 28s linear infinite}
@keyframes wspin{to{transform:rotate(360deg)}}
.w-arc{fill:none;stroke:var(--gold);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.6,0,.2,1)}
.w-dot{transform-origin:200px 200px;transition:transform .9s cubic-bezier(.6,0,.2,1)}
.w-dot circle{fill:var(--gold);filter:drop-shadow(0 0 6px rgba(212,175,55,.8))}
.wn{cursor:pointer}
.wn > circle{fill:#fff;stroke:var(--line);stroke-width:2;transition:fill .4s,stroke .4s}
.wn > text{font:700 18px var(--f-head);fill:var(--muted);transition:fill .4s}
.wn.done > circle{stroke:var(--gold)}.wn.done > text{fill:var(--gold-ink)}
.wn.on > circle{fill:var(--navy);stroke:var(--gold);stroke-width:3}.wn.on > text{fill:var(--gold)}
.w-center{position:absolute;inset:30%;display:grid;place-content:center;text-align:center;gap:4px}
.w-n{font:700 44px/1 var(--f-head);color:var(--gold-ink)}
.w-t{font:700 17px/1.25 var(--f-head);color:var(--navy);text-wrap:balance}
.msteps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mstep{border:1px solid var(--line);border-radius:14px;background:#fff;transition:box-shadow .3s,border-color .3s}
.mstep button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:16px;align-items:center;width:100%;padding:18px 22px}
.mstep button:focus-visible{outline:2px solid var(--blue-icon);outline-offset:2px;border-radius:14px}
.ms-n{font:700 18px/1 var(--f-head);color:var(--muted);width:32px;transition:color .3s}
.ms-t{font:700 19px/1.3 var(--f-head);color:var(--navy)}
.ms-d{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease}
.ms-d p{overflow:hidden;padding:0 22px 0 70px;font-size:16px}
.mstep.on{border-color:rgba(212,175,55,.6);box-shadow:0 14px 34px rgba(10,15,31,.08)}
.mstep.on .ms-n{color:var(--gold-ink)}
.mstep.on .ms-d{grid-template-rows:1fr}
.mstep.on .ms-d p{padding-bottom:20px}

/* à propos · credo (scroll) */
.credo-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.credo-aside{position:sticky;top:120px;display:grid;gap:22px}
.credo-big{display:flex;align-items:baseline;gap:6px}
.credo-cur{font:700 clamp(84px,10vw,140px)/.9 var(--f-head);color:transparent;background:linear-gradient(180deg,#E8C766,var(--gold));-webkit-background-clip:text;background-clip:text}
.credo-tot{font:700 22px/1 var(--f-head);color:var(--muted)}
.credo-bar{height:3px;background:var(--line);border-radius:3px;overflow:hidden;max-width:260px}
.credo-bar i{display:block;height:100%;width:20%;background:var(--gold);transition:width .5s ease}
.credo2{list-style:none;margin:0;padding:0}
.cr{display:grid;grid-template-columns:84px 1fr;gap:22px;padding:34px 0 34px 28px;border-left:2px solid var(--line);position:relative;transition:opacity .4s}
.cr::before{content:"";position:absolute;left:-2px;top:0;width:2px;height:0;background:var(--gold);transition:height .6s ease}
.cr-n{font:700 52px/1 var(--f-head);color:transparent;-webkit-text-stroke:1.5px var(--gold);transition:color .4s}
.cr h3{font:700 23px/1.3 var(--f-head);color:var(--navy);margin-bottom:8px}
.cr p{font-size:17px}
.js .cr{opacity:.45}
.js .cr.on{opacity:1}
.cr.on::before{height:100%}
.cr.on .cr-n{color:var(--gold)}
@media (max-width:980px){.method,.credo-wrap{grid-template-columns:1fr}.credo-aside{position:relative;top:0}.credo-cur{font-size:72px}.js .cr{opacity:1}.cr{grid-template-columns:60px 1fr;padding-left:18px}.cr-n{font-size:40px}}
@media (prefers-reduced-motion:reduce){.w-spin{animation:none}.js .cr{opacity:1}}


/* home v4 · movimento */
.float-art img{animation:floaty 6s ease-in-out infinite}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.float-card strong span{font-variant-numeric:tabular-nums}
.converge{position:relative;height:150px;margin:6px auto 0;max-width:1136px}
.converge svg{width:100%;height:100%;overflow:visible}
.converge path{fill:none;stroke:var(--gold);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:6 8;opacity:.9}
.js-reveal .converge path{stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 1.4s ease}
.js-reveal .converge.in path{stroke-dasharray:420;stroke-dashoffset:0}
.converge-dot{position:absolute;left:50%;bottom:4px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(212,175,55,.6);animation:pulse 2.2s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(212,175,55,.55)}100%{box-shadow:0 0 0 18px rgba(212,175,55,0)}}
.converge + .after{margin-top:18px}
.js-reveal .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.js-reveal .reveal.in{opacity:1;transform:none}
.cards .reveal:nth-child(2){transition-delay:.12s}.cards .reveal:nth-child(3){transition-delay:.24s}
.pillars .wn-ico{color:var(--blue-icon);fill:currentColor;transition:color .4s}
.pillars .wn.on .wn-ico{color:var(--gold)}
.pillars .w-n .ico-live{width:52px;height:52px;color:var(--gold-ink)}
.pillars .ms-n{width:36px}.pillars .ms-n .ico-live{width:28px;height:28px}
.pillars .mstep.on .ms-n .ico-live{color:var(--gold-ink)}
.pillars .ms-d p{padding-left:74px}
/* siti veri */
.media-art.real{background:radial-gradient(120% 90% at 50% 40%,#FFFFFF 0%,#E7EDF5 80%);padding:0;overflow:visible}
.browsers{position:relative;width:100%;height:100%}
.bframe{position:absolute;margin:0;width:56%;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 22px 48px rgba(10,15,31,.18)}
.bframe .show-bar{padding:8px 10px}.bframe .show-bar span{font-size:11px}
.bshot{height:300px;overflow:hidden}
.bshot img{width:100%;height:100%;object-fit:cover;object-position:top;animation:siteScroll 16s ease-in-out infinite alternate}
.bf0{left:4%;top:12%;transform:rotate(-5deg);z-index:1}.bf0 .bshot img{animation-delay:-4s}
.bf2{right:4%;top:12%;transform:rotate(5deg);z-index:1}.bf2 .bshot img{animation-delay:-9s}
.bf1{left:22%;top:4%;z-index:2;width:56%}.bf1 .bshot{height:340px}
@keyframes siteScroll{0%,8%{object-position:top}92%,100%{object-position:bottom}}
/* ruota branding */
.media-art.wheel-art{background:radial-gradient(120% 90% at 50% 40%,#FFFFFF 0%,#EEF2F7 75%)}
.brand-wheel{width:88%;height:auto;max-height:100%;object-fit:contain}
@media (max-width:980px){.converge{display:none}.bshot{height:220px}.bf1 .bshot{height:250px}}
@media (prefers-reduced-motion:reduce){.float-art img,.bshot img,.converge-dot{animation:none}.js-reveal .reveal{opacity:1;transform:none}.js-reveal .converge path{stroke-dashoffset:0}}


/* home · laptop + telefono con conversione */
.media-art.devices-art{background:radial-gradient(120% 90% at 50% 35%,#FFFFFF 0%,#E6ECF4 80%);padding:0;overflow:visible}
.devices{position:relative;width:100%;height:100%}
.laptop{position:absolute;left:6%;top:12%;width:76%}
.lt-screen{position:relative;background:#0A0F1F;border-radius:12px 12px 4px 4px;padding:3.2% 3.2% 3.6%;box-shadow:0 26px 50px rgba(10,15,31,.22)}
.lt-site{aspect-ratio:16/10;overflow:hidden;border-radius:3px;background:#fff}
.lt-site img{width:100%;height:100%;object-fit:cover;object-position:top;animation:siteScroll 18s ease-in-out infinite alternate}
.lt-base{height:14px;margin:0 -7%;background:linear-gradient(180deg,#D9DEE6,#AEB6C2);border-radius:0 0 14px 14px;position:relative}
.lt-base::before{content:"";position:absolute;left:42%;right:42%;top:0;height:5px;background:#9AA3AF;border-radius:0 0 6px 6px}
.heat{position:absolute;border-radius:50%;mix-blend-mode:multiply;filter:blur(6px);animation:heat 3.2s ease-in-out infinite}
.heat.h1{left:38%;top:40%;width:26%;height:26%;background:radial-gradient(circle,rgba(239,68,68,.75),rgba(250,204,21,.45) 45%,rgba(250,204,21,0) 70%)}
.heat.h2{left:14%;top:22%;width:16%;height:16%;background:radial-gradient(circle,rgba(250,204,21,.6),rgba(250,204,21,0) 70%);animation-delay:-1s}
.heat.h3{left:62%;top:58%;width:14%;height:14%;background:radial-gradient(circle,rgba(239,68,68,.55),rgba(250,204,21,0) 70%);animation-delay:-2s}
@keyframes heat{0%,100%{transform:scale(.85);opacity:.75}50%{transform:scale(1.12);opacity:1}}
.cursor{position:absolute;left:49%;top:50%;width:22px;height:22px;animation:cursorMove 5s ease-in-out infinite}
.cursor svg{width:100%;height:100%;fill:#fff;stroke:#0A0F1F;stroke-width:1.5;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}
.ripple{position:absolute;left:-10px;top:-10px;width:24px;height:24px;border-radius:50%;border:2px solid var(--gold);opacity:0;animation:ripple 5s ease-out infinite}
@keyframes cursorMove{0%{transform:translate(60px,40px)}40%{transform:translate(0,0)}100%{transform:translate(0,0)}}
@keyframes ripple{0%,40%{opacity:0;transform:scale(.3)}45%{opacity:1;transform:scale(.6)}70%{opacity:0;transform:scale(2.2)}100%{opacity:0}}
.phone{position:absolute;right:5%;bottom:8%;width:23%;aspect-ratio:9/19;background:#0A0F1F;border-radius:22px;padding:7px;box-shadow:0 24px 44px rgba(10,15,31,.28)}
.ph-notch{position:absolute;left:36%;right:36%;top:9px;height:9px;background:#0A0F1F;border-radius:0 0 8px 8px;z-index:2}
.ph-site{width:100%;height:100%;border-radius:16px;overflow:hidden;background:#fff}
.ph-site img{width:100%;height:100%;object-fit:cover;object-position:50% 0;animation:siteScroll 14s ease-in-out infinite alternate;animation-delay:-5s}
.conv-card{position:absolute;left:2%;bottom:6%;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;box-shadow:0 16px 36px rgba(10,15,31,.14);display:grid;gap:2px;animation:floaty 6s ease-in-out infinite}
.conv-card small{font-size:12px;color:var(--muted)}
.conv-card strong{font:700 26px/1 var(--f-head);color:var(--navy)}
.conv-line{width:120px;height:36px}
.conv-line path{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:160;stroke-dashoffset:160;animation:drawLine 3.5s ease-in-out infinite}
@keyframes drawLine{0%{stroke-dashoffset:160}50%,100%{stroke-dashoffset:0}}

/* home · ruota branding apribile */
.media-art.wheel-art{background:radial-gradient(120% 90% at 50% 34%,#FFFFFF 0%,#EDF2F8 78%);padding:14px 22px 22px;aspect-ratio:auto;display:block;overflow:visible}
.bwheel{display:grid;justify-items:center;gap:6px}
.brand-wheel2{width:min(100%,380px);height:auto;aspect-ratio:1;overflow:visible;display:block}
.bw-ring{transform-origin:300px 300px;transition:transform .15s linear}
.bw-seg{transform-origin:300px 300px;cursor:pointer;outline:none;transition:transform .75s cubic-bezier(.2,.9,.25,1.2),opacity .5s ease}
.bw-seg path{transition:stroke-width .4s}
.bwheel.has-on .bw-seg{opacity:.58}
.bwheel .bw-seg.on{opacity:1;transform:translate(var(--tx),var(--ty))}
.bw-seg.on > path{stroke:#FFFFFF;stroke-width:3}
.bw-seg:focus-visible > path{stroke:#D4AF37;stroke-width:4}
.bw-lbl{font:700 14px var(--f-body);letter-spacing:.03em;text-transform:uppercase;pointer-events:none}
.bw-outer{transform-origin:300px 300px;animation:wspin 40s linear infinite}
.bw-inner{transform-origin:300px 300px;animation:wspin 22s linear infinite reverse}
.bw-orbit{transform-origin:300px 300px;animation:wspin 9s linear infinite}
.bw-title{font:700 44px var(--f-head);fill:var(--navy);letter-spacing:-.01em}
.bw-title.gold{fill:#B8922A}
.bw-step{font:700 17px var(--f-body);letter-spacing:.14em;fill:#B8922A}
.bw-info{width:100%;display:grid;gap:14px}
.bw-panels{display:grid}
.bw-p{grid-area:1/1;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;background:#FFFFFF;border:1px solid var(--line);border-radius:16px;padding:18px 20px;box-shadow:0 14px 34px rgba(10,15,31,.07);
  opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .45s ease,transform .55s cubic-bezier(.2,.9,.25,1),visibility 0s .45s}
.bw-p.on{opacity:1;visibility:visible;transform:none;transition:opacity .45s ease .12s,transform .55s cubic-bezier(.2,.9,.25,1) .12s,visibility 0s}
.bw-k{font:700 30px/1 var(--f-head);color:var(--gold-ink);letter-spacing:-.02em;padding-top:2px}
.bw-p h4{font:700 17px/1.3 var(--f-head);color:var(--navy);margin:0 0 6px}
.bw-p p{margin:0;font-size:15px;line-height:1.6;color:var(--text)}
.bw-dots{display:flex;justify-content:center;gap:8px}
.bw-dots button{position:relative;width:26px;height:6px;border-radius:3px;border:0;padding:0;background:#D5DDE8;cursor:pointer;overflow:hidden;transition:width .4s}
.bw-dots button.on{width:46px;background:rgba(212,175,55,.35)}
.bw-dots button.on::after{content:"";position:absolute;inset:0;background:var(--gold);border-radius:3px}
.bwheel.auto .bw-dots button.on::after{transform-origin:left;animation:bwfill 5s linear forwards}
.bw-dots button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@keyframes bwfill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (max-width:600px){.media-art.wheel-art{padding:10px 14px 16px}.bw-p{padding:14px 16px;gap:12px}.bw-k{font-size:24px}.bw-p p{font-size:14px}}

/* home · reel con play */
.media-art.reel-art{background:radial-gradient(120% 90% at 50% 40%,#FFFFFF 0%,#E8EEF6 80%);overflow:visible;padding:0;position:relative}
.reel{position:absolute;inset:0;display:grid;place-items:center}
.reel-phone{position:relative;height:90%;width:auto;aspect-ratio:9/19;background:#0A0F1F;border-radius:30px;padding:9px;box-shadow:0 28px 54px rgba(10,15,31,.28);overflow:hidden}
.reel-video{width:100%;height:100%;object-fit:cover;border-radius:22px;background:#0A0F1F;display:block}
.reel-play{position:absolute;left:50%;top:50%;width:74px;height:74px;margin:-37px 0 0 -37px;border-radius:50%;border:0;cursor:pointer;background:rgba(255,255,255,.92);box-shadow:0 0 0 0 rgba(212,175,55,.6);animation:pulse 2s ease-out infinite;display:grid;place-items:center;z-index:3}
.reel-play svg{width:34px;height:34px;fill:var(--navy);margin-left:4px}
.reel-play:hover{transform:scale(1.06)}
.reel.playing .reel-play,.viral.playing .reel-play{opacity:0;pointer-events:none;transition:opacity .3s}
.reel-ui{position:absolute;right:16px;bottom:34px;display:grid;gap:10px;z-index:2}
.reel-stat{display:grid;justify-items:center;gap:2px;color:#fff;font-size:12px;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.reel-stat .ico{width:26px;height:26px;fill:none;stroke:#fff}
.reel.playing .reel-stat:first-child .ico{fill:#EF4444;stroke:#EF4444;animation:beat .8s ease-in-out infinite}
@keyframes beat{0%,100%{transform:scale(1)}50%{transform:scale(1.22)}}
.reel-bar{position:absolute;left:18px;right:18px;bottom:18px;height:3px;background:rgba(255,255,255,.3);border-radius:3px;z-index:2}
.reel-bar i{display:block;height:100%;width:0;background:var(--gold);border-radius:3px}
.reel-hearts{position:absolute;inset:0;pointer-events:none;z-index:2}
.reel-hearts span{position:absolute;bottom:60px;right:30px;color:#EF4444;font-size:22px;animation:floatHeart 2.4s ease-out forwards}
@keyframes floatHeart{0%{transform:translate(0,0) scale(.6);opacity:0}15%{opacity:1}100%{transform:translate(var(--x),-260px) scale(1.2);opacity:0}}
.bubble{position:absolute;width:62px;height:62px;border-radius:50%;background:#fff;box-shadow:0 14px 30px rgba(10,15,31,.14);display:grid;place-items:center;animation:floaty 5s ease-in-out infinite;z-index:1}
.bubble .ico{width:28px;height:28px;color:var(--blue-icon)}
.bubble.b1{left:10%;top:16%}.bubble.b1 .ico{color:#EF4444}
.bubble.b2{left:6%;top:56%;animation-delay:-1.5s}
.bubble.b3{right:9%;top:22%;animation-delay:-3s}
.bubble.b4{right:6%;top:62%;animation-delay:-2s}.bubble.b4 .ico{color:var(--gold-ink)}
.reel.playing .bubble{animation-duration:2.2s}
@media (prefers-reduced-motion:reduce){.lt-site img,.ph-site img,.heat,.cursor,.ripple,.conv-card,.conv-line path,.bw-seg,.bw-outer,.bw-inner,.bw-orbit,.bubble,.reel-play{animation:none}.conv-line path{stroke-dashoffset:0}}


/* home · campagnes ROI+: flussi dalle piattaforme */
.media-art.ad-art,.media-art.seo-art{padding:0;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 48% 40%,#FFFFFF 0%,#EDF2F8 80%)}
.ad-anim,.seo-anim{position:absolute;inset:0}
.ad-svg,.seo-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.ad-flow{animation:iaflow .9s linear infinite}
@keyframes adflow{to{stroke-dashoffset:-26}}
.ad-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 2.7s ease-out infinite;animation-delay:var(--d)}
.ad-spin-r{transform-origin:350px 300px;animation:wspin 30s linear infinite reverse}
.ad-sweep{transform-origin:350px 300px;animation:wspin 3.2s linear infinite}
.ad-rot{animation:wspin 3s linear infinite}
.ad-live{transform-box:fill-box;transform-origin:center;animation:adlive 1.4s ease-in-out infinite}
@keyframes adlive{50%{transform:scale(1.5);opacity:.5}}
.ad-line{stroke-dasharray:100;animation:addraw 6s ease-in-out infinite}
@keyframes addraw{0%{stroke-dashoffset:100;opacity:1}45%,88%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.ad-area{animation:adarea 6s ease-in-out infinite}
@keyframes adarea{0%,20%{opacity:0}50%,88%{opacity:1}100%{opacity:0}}
.ad-end{transform-box:fill-box;transform-origin:center;animation:adend 6s ease-in-out infinite}
@keyframes adend{0%,42%{transform:scale(0)}50%{transform:scale(1.4)}56%,88%{transform:scale(1)}100%{transform:scale(0)}}
.ad-down{animation:addown 1.6s ease-in-out infinite}
@keyframes addown{50%{transform:translateY(5px)}}
.ad-roi{font:800 30px var(--f-head);letter-spacing:-.01em}
.ad-pill{font:700 15px var(--f-body)}
.ad-h{font:700 17px var(--f-head)}
.ad-small{font:700 13px var(--f-body)}
.ad-kpi{font:800 26px var(--f-head);letter-spacing:-.02em}
/* home · SEO: classico, Maps, GEO */
.seo-caret{animation:seoblink .9s steps(1) infinite}
@keyframes seoblink{50%{opacity:0}}
.seo-halo{transform-box:fill-box;transform-origin:center;animation:seohalo 2s ease-out infinite}
@keyframes seohalo{0%{transform:scale(.6);opacity:.6}100%{transform:scale(2.2);opacity:0}}
.seo-q{font:600 20px var(--f-body)}
.seo-pill{font:700 13.5px var(--f-body)}
.seo-url{font:600 12.5px var(--f-body)}
.seo-title{font:700 16px var(--f-head)}
.seo-fav{font:800 11px var(--f-body)}
.seo-rank{font:800 15px var(--f-body)}
.seo-biz{font:700 15px var(--f-head)}
.seo-meta{font:800 13px var(--f-body)}
.seo-meta2{font:600 13px var(--f-body)}
.seo-cite{font:700 13px var(--f-body)}
.seo-cite-n{font:800 12px var(--f-body)}
.seo-ok{font:700 14px var(--f-body)}
.ad-anim.paused *,.seo-anim.paused *{animation-play-state:paused !important}
@media (prefers-reduced-motion:reduce){.ad-anim *,.seo-anim *{animation:none !important}}

/* home · solutions IA: imbuto che si riempie */
.media-art.ia-art{padding:0;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 48% 40%,#FFFFFF 0%,#EDF2F8 80%)}
.ia-anim{position:absolute;inset:0}
.ia-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.ia-ring{transform-origin:380px 300px;animation:wspin 80s linear infinite}
.ia-spin{transform-origin:380px 78px;animation:wspin 12s linear infinite}
.ia-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 4.8s ease-out infinite;animation-delay:var(--d)}
.ia-twinkle{transform-box:fill-box;transform-origin:center;animation:iatw 2.2s ease-in-out infinite}
@keyframes iatw{0%,100%{transform:scale(.6) rotate(0);opacity:.5}50%{transform:scale(1.1) rotate(45deg);opacity:1}}
.ia-flow{animation:iaflow .9s linear infinite}
@keyframes iaflow{to{stroke-dashoffset:-22}}
.ia-wave{animation:iawave 2.6s linear infinite}
@keyframes iawave{to{transform:translateX(-60px)}}
.ia-wave2{animation:iawave2 3.6s linear infinite}
@keyframes iawave2{from{transform:translateX(-80px)}to{transform:translateX(0)}}
.ia-level{transition:transform 6.5s cubic-bezier(.25,.7,.3,1) .3s}
.js-reveal .media:not(.in) .ia-level{transform:translateY(250px)}
.ia-bob{animation:iabob 3.6s ease-in-out infinite alternate}
@keyframes iabob{to{transform:translateY(8px)}}
.ia-lbl{font:700 16px var(--f-body)}
.ia-chip-t{font:700 16.5px var(--f-body)}
.ia-orb-t{font:800 27px var(--f-head);letter-spacing:.02em}
.ia-badge-t{font:700 17px var(--f-body)}
.ia-plus{font:800 18px var(--f-body)}
.ia-anim.paused *{animation-play-state:paused !important}
@media (prefers-reduced-motion:reduce){.ia-anim *{animation:none !important;transition:none !important}}

/* home · marketing viral animato in SVG */
.media-art.viral-art{padding:0;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 50% 45%,#FFFFFF 0%,#EDF2F8 80%)}
.viral2{position:absolute;inset:0}
.vr-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.vr-spin{transform-origin:400px 300px;animation:wspin 50s linear infinite}
.vr-spin-r{transform-origin:400px 300px;animation:wspin 70s linear infinite reverse}
.vr-spin-r2{transform-origin:400px 300px;animation:wspin 34s linear infinite reverse}
.vr-flow{animation:vrflow 1.1s linear infinite}
@keyframes vrflow{to{stroke-dashoffset:-32}}
.vr-dash{transform-box:fill-box;transform-origin:center;animation:wspin 14s linear infinite}
.vr-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 4.2s ease-out infinite;animation-delay:var(--d)}
@keyframes vrping{0%{transform:scale(1);opacity:.7}45%,100%{transform:scale(1.55);opacity:0}}
.vr-frame{animation:vrflow 2.4s linear infinite}
.vr-feed{animation:vrfeed 12s cubic-bezier(.7,0,.2,1) infinite}
@keyframes vrfeed{0%,22%{transform:translateY(0)}25%,47%{transform:translateY(-306px)}50%,72%{transform:translateY(-612px)}75%,97%{transform:translateY(-918px)}100%{transform:translateY(-918px)}}
.vr-eq{transform-box:fill-box;transform-origin:bottom;animation:vreq .9s ease-in-out infinite alternate;animation-delay:var(--d)}
@keyframes vreq{from{transform:scaleY(.25)}to{transform:scaleY(1)}}
.vr-like{transform-box:fill-box;transform-origin:center;animation:beat 1.6s ease-in-out infinite}
.vr-prog{transform-box:fill-box;transform-origin:left;animation:vrprog 3s linear infinite}
@keyframes vrprog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.vr-rise{opacity:0;animation:vrrise 4.4s ease-out infinite;animation-delay:var(--d)}
@keyframes vrrise{0%{transform:translate(0,0) scale(.5);opacity:0}12%{opacity:1}100%{transform:translate(26px,-150px) scale(1.15);opacity:0}}
.vr-chip{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrchip 7.8s cubic-bezier(.2,.9,.25,1.2) infinite;animation-delay:var(--d)}
@keyframes vrchip{0%{transform:scale(.6) translateY(10px);opacity:0}6%,30%{transform:none;opacity:1}38%,100%{transform:translateY(-10px);opacity:0}}
.vr-big{font:800 24px var(--f-head);letter-spacing:-.02em}
.vr-sm{font:600 10px var(--f-body)}
.vr-tab{font:700 9.5px var(--f-body)}
.vr-cnt{font:700 8.5px var(--f-body)}
.vr-user{font:700 9px var(--f-body)}
.vr-av{font:800 9px var(--f-body)}
.vr-chip-t{font:700 14px var(--f-body)}
.viral2 .reel-play{width:clamp(48px,11%,66px);height:auto;aspect-ratio:1;margin:0;transform:translate(-50%,-50%);top:47%}
.viral2 .reel-play:hover{transform:translate(-50%,-50%) scale(1.06)}
.viral2 .reel-play svg{width:46%;height:46%}
.viral2.boost .reel-play{opacity:0;pointer-events:none;transition:opacity .3s}
.viral2.boost .vr-feed{animation-play-state:paused}
.viral2.boost .vr-flow{animation-duration:.45s}
.viral2.boost .vr-ping{animation-duration:1.4s}
.viral2.boost .vr-prog{animation:vrprog 7s linear forwards}
.viral2.boost .vr-like{animation-duration:.6s}
.viral2 .reel-hearts span{right:auto;bottom:auto;font-size:20px}
.viral2.paused *{animation-play-state:paused !important}
@media (prefers-reduced-motion:reduce){.viral2 *,.bw-seg,.bw-p,.bw-dots button::after{animation:none !important;transition:none !important}.vr-rise,.vr-chip{opacity:0}.vr-ping{opacity:0}}

/* griglie a numero fisso di elementi */
.counters.n2{grid-template-columns:repeat(2,1fr)}.counters.n3,.steps.n3{grid-template-columns:repeat(3,1fr)}.steps.n2{grid-template-columns:repeat(2,1fr)}
@media (max-width:980px){.steps.n3{grid-template-columns:1fr}.step::after{display:none}}
@media (max-width:600px){.counters.n3,.counters.n2{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.marquee-track{flex-wrap:wrap;width:auto;justify-content:center}.marquee-track [aria-hidden]{display:none}}

/* home · mobile come il desktop: immagine nella hero al primo schermo, hero compatta */
@media (max-width:600px){
  .home-hero .wrap{padding-top:24px;padding-bottom:34px;gap:14px}
  .home-hero .hero-copy{gap:12px}
  .home-hero .eyebrow{font-size:11.5px;letter-spacing:.08em;line-height:1.45}
  .home-hero .h-hero{font-size:31px;line-height:1.08}
  .home-hero .rich.lead{font-size:16px;line-height:1.5}
  .home-hero .rich.lead p+p{margin-top:6px}
  .home-hero .actions{margin-top:2px}
  .home-hero .btn{padding:13px 20px;font-size:15.5px}
  .home-hero .hero-art img{max-height:230px}
  .home-hero .float-card{left:0;top:0;padding:9px 13px;border-radius:12px}
  .home-hero .float-card small{font-size:11.5px}
  .home-hero .float-card strong{font-size:22px}
}

/* footer · fascia sommet con la montagna del brand */
.legal.summit{position:relative;background:#01091D;min-height:420px;display:flex;align-items:flex-end;overflow:hidden}
.summit-art{position:absolute;top:0;right:0;bottom:0;width:min(72%,1040px)}
.summit-art svg{width:100%;height:100%;display:block}
.summit-art::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#01091D 0%,rgba(1,9,29,0) 38%);z-index:1;pointer-events:none}
.legal.summit .wrap{position:relative;z-index:2;width:100%;padding-top:40px;padding-bottom:30px}
.summit-copy{display:grid;gap:10px;justify-items:start;max-width:420px}
.summit-copy .logo{height:clamp(84px,9vw,132px);width:auto;margin:0}
.summit-copy span{color:var(--band-text)}
.sm-glow,.sm-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:100}
.sm-glow{stroke:#D4AF37;stroke-width:16;opacity:.28}
.sm-line{stroke:#FFE9A6;stroke-width:4.5}
.sm-dot{fill:#FFF3C8;opacity:0;transform-box:fill-box;transform-origin:center}
.sm-top{fill:none;stroke:#FFE9A6;stroke-width:3;opacity:0;transform-box:fill-box;transform-origin:center}
.summit.on .sm-glow,.summit.on .sm-line{animation:smdraw 9s ease-in-out infinite}
.summit.on .sm-dot{animation:smdot 9s ease-out infinite;animation-delay:var(--d)}
.summit.on .sm-top{animation:smtop 9s ease-out infinite}
@keyframes smdraw{0%{stroke-dashoffset:100;opacity:0}6%{opacity:1}52%{stroke-dashoffset:0}86%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes smdot{0%{opacity:0;transform:scale(.4)}5%{opacity:1;transform:scale(1.5)}12%,70%{opacity:.95;transform:scale(1)}82%,100%{opacity:0}}
@keyframes smtop{0%,50%{opacity:0;transform:scale(.3)}56%{opacity:1;transform:scale(1)}72%{opacity:0;transform:scale(3.2)}100%{opacity:0}}
.cta-revenu .cta-art picture{display:contents}
@media (max-width:980px){
  .cta-revenu .cta-copy{padding-bottom:330px}
  .cta-revenu .cta-art{height:360px}
  .cta-revenu .cta-art::before{background:linear-gradient(180deg,var(--navy) 0%,rgba(10,15,31,0) 22%)}
  .cta-revenu .cta-art img{object-position:50% 50%}
  .legal.summit{display:block;min-height:0}
  .summit-art{position:relative;width:100%;aspect-ratio:1400/790;height:auto}
  .summit-art svg{position:absolute;inset:0}
  .summit-art::before{background:linear-gradient(180deg,#01091D 0%,rgba(1,9,29,0) 22%,rgba(1,9,29,0) 80%,#01091D 100%)}
  .legal.summit .wrap{padding-top:6px;padding-bottom:26px}
}
@media (prefers-reduced-motion:reduce){.sm-glow,.sm-line{stroke-dashoffset:0;animation:none !important}.sm-dot{opacity:.9;animation:none !important}.sm-top{animation:none !important}}
#cta-revenu,#pied{scroll-margin-top:96px}

/* home · mobile: certificati e blog in slider, 4 risultati affiancati */
.badges-marquee{-webkit-mask-image:none;mask-image:none;overflow:visible}
.badges-marquee .marquee-track{animation:none;width:auto;flex-wrap:wrap;justify-content:center;margin:0 auto 44px}
.badges-marquee .dup{display:none}
.slider-dots{display:none}
@media (max-width:600px){
  .badges-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);margin-bottom:34px}
  .badges-marquee .marquee-track{flex-wrap:nowrap;width:max-content;gap:34px;margin:0;animation:slide 26s linear infinite}
  .badges-marquee .dup{display:contents}
  .logos .badges-marquee .badges img{height:70px}
  .posts-slider .posts{display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -20px;padding:4px 20px 18px;scroll-padding:0 20px;scrollbar-width:none}
  .posts-slider .posts::-webkit-scrollbar{display:none}
  .posts-slider .post{flex:0 0 84%;scroll-snap-align:start}
  .slider-dots{display:flex;justify-content:center;gap:8px;margin-top:4px}
  .slider-dots i{width:8px;height:8px;border-radius:4px;background:#D5DDE8;transition:width .3s,background .3s}
  .slider-dots i.on{width:24px;background:var(--gold)}
  .results .stats{grid-template-columns:repeat(4,1fr);column-gap:6px;row-gap:0;align-items:stretch}
  .results .stat{display:contents}
  .results .stat > *{grid-row:auto}
  .results .stat:nth-child(1) > *{grid-column:1}.results .stat:nth-child(2) > *{grid-column:2}
  .results .stat:nth-child(3) > *{grid-column:3}.results .stat:nth-child(4) > *{grid-column:4}
  .results .stat .stat-num{grid-row:1;font-size:15.5px;line-height:1.15;padding:12px 6px 4px;border-radius:12px 12px 0 0;cursor:pointer;overflow-wrap:anywhere;letter-spacing:-.01em;background:rgba(255,255,255,.04);text-align:center}
  .results .stat .stat-t{grid-row:2;font-size:11.5px;line-height:1.25;padding:2px 6px 12px;border-radius:0 0 12px 12px;cursor:pointer;background:rgba(255,255,255,.04);border-bottom:3px solid transparent;text-align:center;color:var(--band-text)}
  .results .stat.on .stat-num,.results .stat.on .stat-t{background:rgba(212,175,55,.14)}
  .results .stat.on .stat-t{border-bottom-color:var(--gold);color:#fff}
  .results .stat p,.results .stat ul{display:none}
  .results .stat.on p{display:block;grid-column:1 / -1;grid-row:3;margin-top:18px;font-size:15px;line-height:1.5;animation:statIn .45s ease}
  .results .stat.on ul{display:grid;grid-column:1 / -1;grid-row:4;margin-top:10px;font-size:15px;gap:7px;animation:statIn .45s ease}
  .results .stat li::before{width:6px;height:6px}
}
@keyframes statIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* anim · pannello comune */
.media-art.anim-art{padding:0;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 48% 40%,#FFFFFF 0%,#EDF2F8 80%)}
.anim{position:absolute;inset:0}
.anim > svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.anim.paused *{animation-play-state:paused !important}

/* pagine v2 · componenti della home su tutte le pagine */
.cta.pic .cta-art picture{display:contents}
.js-reveal .cards .card.reveal{transition-delay:calc(var(--i,0) * 120ms)}
.cards .card{transition:transform .35s ease,box-shadow .35s ease,opacity .7s ease}
.cards .card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(10,15,31,.10)}
.pillars .ms-body{overflow:hidden;padding:0 22px 0 74px;font-size:16px}
.pillars .ms-body p{padding:0 !important}
.pillars .ms-body p + p{margin-top:8px}
.mstep.on .ms-body{padding-bottom:20px}
.band .pillars .mstep{background:#0F1730;border-color:var(--navy-line)}
.band .pillars .ms-t{color:#fff}.band .pillars .ms-body{color:var(--band-text)}
.band .pillars .w-t{color:#fff}.band .pillars .wn > circle{fill:#0F1730;stroke:var(--navy-line)}
/* processo: timeline che si accende */
.steps.timeline{position:relative;margin-top:34px}
.steps.timeline::before{content:"";position:absolute;left:12px;right:12px;top:-22px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gold),var(--blue));transform:scaleX(0);transform-origin:left;transition:transform 1.8s cubic-bezier(.6,0,.2,1)}
.steps.timeline.in::before{transform:scaleX(1)}
.steps.timeline .step::before{content:"";position:absolute;top:-29px;left:24px;width:17px;height:17px;border-radius:50%;background:#fff;border:3px solid var(--line);box-sizing:border-box;transition:background .4s ease,border-color .4s ease;transition-delay:calc(var(--i) * .45s)}
.steps.timeline.in .step::before{background:var(--gold);border-color:var(--gold)}
.steps.timeline.in .step{animation:stepGlow calc(var(--n,4) * 2.2s) ease-in-out infinite;animation-delay:calc(1.8s + var(--i) * 2.2s)}
@keyframes stepGlow{0%,26%,100%{border-color:var(--line);box-shadow:var(--shadow-card);transform:none}6%,18%{border-color:rgba(212,175,55,.75);box-shadow:0 18px 40px rgba(212,175,55,.18);transform:translateY(-4px)}}
.band .steps.timeline .step::before{background:#0F1730;border-color:var(--navy-line)}
.band .steps.timeline.in .step::before{background:var(--gold);border-color:var(--gold)}
@media (max-width:1100px){.steps.timeline::before{display:none}.steps.timeline .step::before{display:none}.steps.timeline{margin-top:0}}
@media (prefers-reduced-motion:reduce){.steps.timeline.in .step{animation:none}.cards .card:hover{transform:none}}
@media (max-width:980px){
  .cta.pic .cta-copy{padding-bottom:330px}
  .cta.pic .cta-art{height:360px}
  .cta.pic .cta-art::before{background:linear-gradient(180deg,var(--navy) 0%,rgba(10,15,31,0) 22%)}
  .cta.pic .cta-art img{object-position:50% 50%}
  .pillars .ms-body{padding-left:22px}
  .hero:not(.home-hero):not(.solo) .wrap{gap:14px}
  .hero:not(.home-hero):not(.solo) .hero-copy{display:contents}
  .hero:not(.home-hero):not(.solo) .hero-copy > *{order:3}
  .hero:not(.home-hero):not(.solo) .hero-copy > .eyebrow,.hero:not(.home-hero):not(.solo) .hero-copy > .h-hero{order:1}
  .hero:not(.home-hero):not(.solo) .hero-art{order:2;position:relative;top:0}
  .hero:not(.home-hero):not(.solo) .hero-art img{max-height:250px}
  .ap-hero .radar{order:4;margin-top:10px}   /* à propos: prima il testo della hero, poi la mappa */
}
@media (max-width:600px){
  .hero:not(.home-hero) .wrap{padding-top:24px;padding-bottom:36px}
  .hero:not(.home-hero) .eyebrow{font-size:11.5px;letter-spacing:.08em;line-height:1.45}
  .hero:not(.home-hero) .h-hero{font-size:30px;line-height:1.1}
  .hero:not(.home-hero) .rich.lead{font-size:16px;line-height:1.55}
  .hero:not(.home-hero) .hero-art img{max-height:220px}
  .results .stat .rich{display:none}
  .results .stat.on .rich{display:block;grid-column:1 / -1;grid-row:3;margin-top:18px;font-size:15px;line-height:1.5;animation:statIn .45s ease}
  .results .stats.n3{grid-template-columns:repeat(3,1fr)}
  .results .stats.n2{grid-template-columns:repeat(2,1fr)}
  .steps.timeline.compact{grid-template-columns:repeat(var(--n),1fr);gap:6px}
  .steps.timeline.compact .step{padding:14px 6px;text-align:center;justify-items:center;gap:6px}
  .steps.timeline.compact .step-top{justify-content:center}
  .steps.timeline.compact .step .step-n{font-size:20px}
  .steps.timeline.compact .step .step-t{font-size:11.5px;line-height:1.25;overflow-wrap:anywhere}
  .steps.timeline:not(.compact){grid-template-columns:1fr;padding-left:26px;position:relative}
  .steps.timeline:not(.compact)::before{display:block;left:7px;right:auto;top:8px;bottom:8px;width:3px;height:auto;transform:scaleY(0);transform-origin:top}
  .steps.timeline:not(.compact).in::before{transform:scaleY(1)}
  .steps.timeline:not(.compact) .step::before{display:block;top:30px;left:-27px}
  .quotes-slider .quotes{display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -20px;padding:4px 20px 18px;scrollbar-width:none}
  .quotes-slider .quotes::-webkit-scrollbar{display:none}
  .quotes-slider .quote{flex:0 0 86%;scroll-snap-align:start}
  .logos-row{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:none}
  .logos-row img{scroll-snap-align:start;flex:none}
  .quotes-slider .slider-dots{display:flex;justify-content:center;gap:8px;margin-top:4px}
  .quotes-slider .slider-dots i{width:8px;height:8px;border-radius:4px;background:#D5DDE8;transition:width .3s,background .3s}
  .quotes-slider .slider-dots i.on{width:24px;background:var(--gold)}
}

/* righe "diagnostic offert": scheda del rapporto (punteggio, assi, perdite, potenziale) */
.media-art.diag-art{padding:0;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 50% 40%,#FFFFFF 0%,#E9EFF7 80%)}
.diag{position:absolute;inset:0;display:grid;place-items:center}
.dg-glow{position:absolute;width:76%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(212,175,55,.30),rgba(212,175,55,0));animation:dgGlow 5s ease-in-out infinite}
.dg-card{position:relative;width:90%;aspect-ratio:1.22;background:linear-gradient(155deg,#1B2B55 0%,#0A0F1F 70%);border-radius:20px;border:1.5px solid rgba(212,175,55,.55);box-shadow:0 30px 60px rgba(10,15,31,.30);padding:3.4% 5%;display:grid;grid-template-rows:auto auto auto auto;gap:2.2cqw;overflow:hidden;animation:dgFloat 6s ease-in-out infinite;container-type:inline-size}
.dg-top{display:flex;align-items:center;gap:3cqw}
.dg-logo{width:11.5cqw;aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none;box-shadow:0 0 0 3px rgba(212,175,55,.25)}
.dg-logo svg{width:64%;height:64%}
.dg-head{display:flex;flex-direction:column;gap:.5cqw;flex:1;min-width:0}
.dg-head b{font:800 5.2cqw/1 var(--f-head);color:#fff;letter-spacing:-.01em}
.dg-head i{font:600 3.3cqw/1.2 var(--f-body);font-style:normal;color:var(--band-text);letter-spacing:.04em}
.dg-lock{width:8.5cqw;aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(212,175,55,.6);display:grid;place-items:center;flex:none}
.dg-lock svg{width:58%;height:58%}
.dg-mid{display:grid;grid-template-columns:26% 1fr;gap:5cqw;align-items:center}
.dg-gauge{position:relative;aspect-ratio:1;display:grid;place-content:center;text-align:center;line-height:1}
.dg-gauge svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.dg-track{fill:none;stroke:rgba(255,255,255,.12);stroke-width:10}
.dg-run{fill:none;stroke:#D4AF37;stroke-width:10;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;animation:dgRun 9s ease-in-out infinite}
.dg-gauge strong{font:800 8.6cqw/1 var(--f-head);color:#fff;letter-spacing:-.02em}
.dg-gauge small{font:700 3.1cqw/1 var(--f-body);color:var(--band-text);margin-top:.6cqw}
.dg-sc{display:flex;flex-direction:column;gap:1.2cqw;min-width:0}
.dg-sc-l{font:700 3.5cqw/1 var(--f-body);color:#F0D98A;letter-spacing:.09em;text-transform:uppercase}
.dg-axes{list-style:none;margin:0;padding:0;display:grid;gap:1.3cqw}
.dg-axes li{display:grid;grid-template-columns:38% 1fr auto;align-items:center;gap:2.4cqw}
.dg-ax{font:600 3.4cqw/1.1 var(--f-body);color:#E8EDF6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dg-axes b{font:800 3.4cqw/1 var(--f-head);color:#fff;font-variant-numeric:tabular-nums}
.dg-bar{height:2.2cqw;border-radius:9px;background:rgba(255,255,255,.10);overflow:hidden}
.dg-bar i{display:block;height:100%;width:var(--v,40%);background:linear-gradient(90deg,#E4685B,#D4AF37);transform:scaleX(0);transform-origin:left;animation:dgBar 9s ease infinite;animation-delay:calc(.5s + var(--i) * .55s)}
.dg-money{display:grid;grid-template-columns:1fr 1fr;gap:2.6cqw}
.dg-loss,.dg-gain{border-radius:10px;padding:1.7cqw 2.4cqw;display:flex;flex-direction:column;gap:.5cqw;min-width:0}
.dg-loss{background:rgba(228,104,91,.14);border:1px solid rgba(228,104,91,.42)}
.dg-gain{background:rgba(212,175,55,.14);border:1px solid rgba(212,175,55,.5)}
.dg-loss span,.dg-gain span{font:700 2.9cqw/1 var(--f-body);letter-spacing:.07em;text-transform:uppercase;color:var(--band-text)}
.dg-loss b,.dg-gain b{font:800 4.2cqw/1 var(--f-head);white-space:nowrap;letter-spacing:-.01em}
.dg-loss b{color:#F0A79D}.dg-gain b{color:#F0D98A}
.dg-loss i,.dg-gain i{font:700 2.9cqw/1 var(--f-body);font-style:normal;color:var(--band-text)}
.dg-gain b{opacity:0;animation:dgGain 9s ease infinite}
.dg-price{display:flex;align-items:baseline;justify-content:flex-end;gap:3cqw}
.dg-old{position:relative;font:700 3.6cqw/1 var(--f-body);color:var(--band-text)}
.dg-old::after{content:"";position:absolute;left:-6%;right:-6%;top:50%;height:2px;background:#EF4444;transform:scaleX(0);transform-origin:left;animation:dgStrike 9s ease infinite}
.dg-new{font:800 6.2cqw/1 var(--f-head);color:#F0D98A;letter-spacing:-.02em;transform-origin:right bottom;animation:dgPop 9s cubic-bezier(.2,.9,.25,1.3) infinite}
.dg-scan{position:absolute;left:0;right:0;top:0;height:26%;background:linear-gradient(180deg,rgba(95,176,223,0),rgba(95,176,223,.14),rgba(95,176,223,0));animation:dgScan 4.5s linear infinite;pointer-events:none}
@keyframes dgGlow{0%,100%{transform:scale(.9);opacity:.8}50%{transform:scale(1.06);opacity:1}}
@keyframes dgFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes dgRun{0%{stroke-dashoffset:100}55%,92%{stroke-dashoffset:calc(100 - var(--v))}100%{stroke-dashoffset:100}}
@keyframes dgBar{0%{transform:scaleX(0)}14%,86%{transform:scaleX(1)}94%,100%{transform:scaleX(0)}}
@keyframes dgGain{0%,44%{opacity:0;transform:translateY(6%)}52%,90%{opacity:1;transform:none}100%{opacity:0}}
@keyframes dgStrike{0%,56%{transform:scaleX(0)}62%,92%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes dgPop{0%,60%{transform:scale(.4);opacity:0}67%{transform:scale(1.14);opacity:1}73%,92%{transform:scale(1);opacity:1}100%{transform:scale(.9);opacity:0}}
@keyframes dgScan{0%{transform:translateY(-100%)}100%{transform:translateY(400%)}}
/* su telefono la scheda si adatta al contenuto e i testi restano leggibili */
@media (max-width:980px){
.media-art.diag-art{aspect-ratio:auto;padding:16px 0}
.diag{position:relative;inset:auto;width:100%}
.dg-card{width:94%;aspect-ratio:auto;gap:12px;padding:16px;container-type:normal}
.dg-logo{width:38px}.dg-lock{width:29px}
.dg-head b{font-size:18px}.dg-head i{font-size:12.5px}
.dg-mid{grid-template-columns:92px 1fr;gap:10px 14px;align-items:center}
.dg-gauge strong{font-size:32px}.dg-gauge small{font-size:12px;margin-top:2px}
.dg-sc{display:contents}
.dg-sc-l{grid-column:2;grid-row:1;align-self:center;font-size:12.5px}
.dg-axes{grid-column:1/-1;grid-row:2;width:100%}
.dg-axes{gap:7px}.dg-axes li{gap:8px}.dg-ax{font-size:13.5px}.dg-axes b{font-size:13.5px}.dg-bar{height:9px}
.dg-money{gap:10px}.dg-loss,.dg-gain{padding:8px 10px;gap:2px}
.dg-loss span,.dg-gain span{font-size:11.5px}.dg-loss b,.dg-gain b{font-size:17px}.dg-loss i,.dg-gain i{font-size:11.5px}
.dg-price{gap:12px}.dg-old{font-size:13.5px}.dg-new{font-size:26px}
}
@media (prefers-reduced-motion:reduce){.diag *{animation:none !important}.dg-run{stroke-dashoffset:calc(100 - var(--v))}.dg-bar i{transform:none}.dg-gain b{opacity:1}.dg-new{opacity:1;transform:none}.dg-old::after{transform:none}}
/* hero con animazione */
.hero-anim .hero-art .media-art{box-shadow:0 30px 70px rgba(10,15,31,.10)}
.hero-anim .hero-art::before{display:none}

/* CTA senza immagine (seconde CTA della pagina) */
.cta-plain .narrow{margin:0 auto}
.cta-plain .actions{justify-content:center}

/* città v2 */
.numbered .ms-n{font:700 18px/1 var(--f-head);width:32px}
.numbered .w-n{font:700 44px/1 var(--f-head);color:var(--gold-ink)}
.band .cards .card-t{color:#fff}
.band .counters{margin-top:40px}

.counter strong span{font:inherit;color:inherit;letter-spacing:inherit}
.stat-num span{font:inherit;color:inherit}

/* === anim:start === */
/* anim · brand_identity */
.bi-cap{font:700 13px var(--f-body);letter-spacing:.12em}
.bi-word{font:800 15px var(--f-head);letter-spacing:.2em}
.bi-tag{font:600 13px var(--f-body)}
.bi-sw{font:700 13px var(--f-body)}
.bi-aa{font:700 60px var(--f-head);letter-spacing:-.02em}
.bi-t1{font:800 18px var(--f-head)}
.bi-t2{font:600 15px var(--f-body)}
.bi-app{font:700 15px var(--f-body)}
.bi-card{font:800 12px var(--f-head);letter-spacing:.12em}
.bi-ico{font:700 12px var(--f-body)}
.bi-sign{font:800 12px var(--f-head);letter-spacing:.05em}
.anim-brand_identity.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-brand_identity *{animation:none!important}}
/* anim · chatbot_chat */
.anim-chatbot_chat .cb-dot{transform-box:fill-box;transform-origin:center;animation:cbdot 1s ease-in-out infinite;animation-delay:var(--d)}
@keyframes cbdot{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-5px);opacity:1}}
.anim-chatbot_chat .cb-twinkle{transform-box:fill-box;transform-origin:center;animation:cbtw 2.4s ease-in-out infinite}
@keyframes cbtw{0%,100%{transform:scale(.7) rotate(0);opacity:.7}50%{transform:scale(1.1) rotate(45deg);opacity:1}}
.anim-chatbot_chat .cb-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 2.4s ease-out infinite}
.anim-chatbot_chat .cb-msg{font:600 15px var(--f-body)}
.anim-chatbot_chat .cb-name{font:700 16px var(--f-head)}
.anim-chatbot_chat .cb-on{font:700 13px var(--f-body)}
.anim-chatbot_chat .cb-ph{font:600 14px var(--f-body)}
.anim-chatbot_chat .cb-logo{font:700 15px var(--f-head)}
.anim-chatbot_chat .cb-mark{font:800 14px var(--f-head)}
.anim-chatbot_chat .cb-chip{font:700 15px var(--f-body)}
.anim-chatbot_chat .cb-sub{font:600 13px var(--f-body)}
.anim-chatbot_chat .cb-bt{font:700 15px var(--f-body)}
.anim-chatbot_chat .cb-247{font:800 18px var(--f-head);letter-spacing:.01em}
.anim-chatbot_chat .cb-h{font:700 17px var(--f-head)}
.anim-chatbot_chat .cb-eyb{font:800 12.5px var(--f-body);letter-spacing:.08em}
.anim-chatbot_chat .cb-slot{font:700 14px var(--f-body);letter-spacing:.08em}
.anim-chatbot_chat .cb-ini{font:800 13px var(--f-body)}
.anim-chatbot_chat .cb-pill{font:700 14px var(--f-body)}
.anim-chatbot_chat .cb-ok{font:700 13.5px var(--f-body)}
.anim-chatbot_chat.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-chatbot_chat *{animation:none!important}
.anim-chatbot_chat .cb-in{opacity:1!important;transform:none!important}.anim-chatbot_chat .cb-out{opacity:0!important}
.anim-chatbot_chat .cb-morph{width:222px!important;height:60px!important;rx:16px!important;fill:#FFFBEF!important}}
/* anim · community_replies */
.cr-name{font:700 16px var(--f-body)}
.cr-sub{font:600 13px var(--f-body)}
.cr-mono{font:800 15px var(--f-head);letter-spacing:.02em}
.cr-mono-s{font:800 12px var(--f-head)}
.cr-cap{font:600 14px var(--f-body)}
.cr-act{font:700 13px var(--f-body)}
.cr-ini{font:700 14px var(--f-body)}
.cr-who{font:700 13px var(--f-body)}
.cr-msg{font:600 14px var(--f-body)}
.cr-stat{font:700 14px var(--f-body)}
.cr-badge{font:800 13px var(--f-body)}
.cr-g{font:700 13px var(--f-body)}
.cr-glow{animation:crglow 2.6s ease-in-out infinite alternate}
@keyframes crglow{from{opacity:.55}to{opacity:1}}
.cr-dot{transform-box:fill-box;transform-origin:center;animation:crdot 1s ease-in-out infinite;animation-delay:var(--d)}
@keyframes crdot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
.anim-community_replies.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-community_replies *{animation:none!important}}
/* anim · content_calendar */
.cc-title{font:700 17px var(--f-head)}
.cc-h{font:700 16px var(--f-head)}
.cc-day{font:700 14px var(--f-body)}
.cc-fmt{font:700 14px var(--f-body)}
.cc-hour{font:600 13px var(--f-body)}
.cc-pub{font:700 13px var(--f-body)}
.cc-step{font:700 14px var(--f-body)}
.cc-ping{transform-box:fill-box;transform-origin:center;animation:vrping 2.4s ease-out infinite}
.anim-content_calendar.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-content_calendar *{animation:none!important}}
/* anim · ecommerce_cart */
.anim-ecommerce_cart .ec-sec{transform-origin:210px 216px;animation:wspin 60s steps(60) infinite}
.anim-ecommerce_cart .ec-live{transform-box:fill-box;transform-origin:center;animation:ecpulse 1.8s ease-in-out infinite}
@keyframes ecpulse{50%{transform:scale(1.45);opacity:.55}}
.anim-ecommerce_cart .ec-h{font:700 16px var(--f-head)}
.anim-ecommerce_cart .ec-brand{font:700 15px var(--f-head)}
.anim-ecommerce_cart .ec-name{font:700 20px var(--f-head)}
.anim-ecommerce_cart .ec-price{font:800 22px var(--f-head);letter-spacing:-.01em}
.anim-ecommerce_cart .ec-btn{font:700 16px var(--f-body)}
.anim-ecommerce_cart .ec-l{font:700 14px var(--f-body)}
.anim-ecommerce_cart .ec-s{font:700 13px var(--f-body)}
.anim-ecommerce_cart .ec-n{font:800 13px var(--f-body)}
.anim-ecommerce_cart .ec-pan{font:600 15px var(--f-body);letter-spacing:.06em}
.anim-ecommerce_cart .ec-hold{font:700 12px var(--f-body);letter-spacing:.12em}
.anim-ecommerce_cart .ec-dial{font:700 12px var(--f-head);letter-spacing:.16em}
.anim-ecommerce_cart .ec-ok{font:700 17px var(--f-head)}
.anim-ecommerce_cart .ec-plus{font:800 16px var(--f-body)}
.anim-ecommerce_cart.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-ecommerce_cart *{animation:none!important}}
/* anim · email_sequence */
.es-l{font:700 16.5px var(--f-body)}
.es-la{font:800 17px var(--f-body)}
.es-d{font:700 16px var(--f-body)}
.es-p{font:700 13px var(--f-body)}
.es-date{font:600 13px var(--f-body)}
.es-time{font:700 44px var(--f-head);letter-spacing:-.01em}
.es-tt{font:700 13.5px var(--f-body)}
.es-ts{font:600 12.5px var(--f-body)}
.es-flow{animation:es-flow 1s linear infinite}
@keyframes es-flow{to{stroke-dashoffset:-22}}
.es-tw{transform-box:fill-box;transform-origin:center;animation:es-tw 1.8s ease-in-out infinite}
@keyframes es-tw{0%,100%{transform:scale(.55) rotate(0);opacity:.5}50%{transform:scale(1.1) rotate(45deg);opacity:1}}
.es-live{transform-box:fill-box;transform-origin:center;animation:es-live 1.6s ease-in-out infinite}
@keyframes es-live{50%{transform:scale(.6);opacity:.45}}
.anim-email_sequence.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-email_sequence *{animation:none!important}}
/* anim · gads_serp */
.anim-gads_serp .gs-q{font:600 19px var(--f-body)}
.anim-gads_serp .gs-caret{animation:gs-blink .9s steps(1) infinite}
@keyframes gs-blink{50%{opacity:0}}
.anim-gads_serp .gs-site{font:700 14px var(--f-head)}
.anim-gads_serp .gs-url{font:600 12.5px var(--f-body)}
.anim-gads_serp .gs-fav{font:800 13px var(--f-head)}
.anim-gads_serp .gs-spon{font:700 13px var(--f-body);letter-spacing:.01em}
.anim-gads_serp .gs-title{font:700 16px var(--f-head)}
.anim-gads_serp .gs-link{font:700 13px var(--f-body)}
.anim-gads_serp .gs-h{font:700 16px var(--f-head)}
.anim-gads_serp .gs-chip{font:700 14px var(--f-body)}
.anim-gads_serp .gs-sub{font:600 13px var(--f-body)}
.anim-gads_serp .gs-row{font:700 15px var(--f-body)}
.anim-gads_serp .gs-pill{font:700 14px var(--f-body)}
.anim-gads_serp .gs-lab{font:700 13px var(--f-body);letter-spacing:.06em}
.anim-gads_serp .gs-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 3.2s ease-out infinite;animation-delay:var(--d,0s)}
.anim-gads_serp .gs-skel{animation:gs-skel 1.4s ease-in-out infinite alternate}
@keyframes gs-skel{to{opacity:.45}}
.anim-gads_serp .gs-live{transform-box:fill-box;transform-origin:center;animation:gs-live 1.6s ease-in-out infinite}
@keyframes gs-live{50%{transform:scale(.6);opacity:.45}}
.anim-gads_serp.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-gads_serp *{animation:none!important}}
/* anim · linkedin_leads */
.anim-linkedin_leads .li-h{font:700 17px var(--f-head)}
.anim-linkedin_leads .li-h2{font:700 16px var(--f-head)}
.anim-linkedin_leads .li-ft{font:700 15px var(--f-head)}
.anim-linkedin_leads .li-lbl{font:700 12.5px var(--f-body)}
.anim-linkedin_leads .li-val{font:700 14px var(--f-body)}
.anim-linkedin_leads .li-ok{font:700 14px var(--f-body)}
.anim-linkedin_leads .li-sm{font:700 12px var(--f-body)}
.anim-linkedin_leads .li-fv{font:600 13.5px var(--f-body)}
.anim-linkedin_leads .li-btn{font:700 15px var(--f-body)}
.anim-linkedin_leads .li-col{font:700 13px var(--f-body)}
.anim-linkedin_leads .li-name{font:700 14px var(--f-body)}
.anim-linkedin_leads .li-av{font:800 12px var(--f-body)}
.anim-linkedin_leads .li-score{font:800 15px var(--f-body)}
.li-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 2.4s ease-out infinite;animation-delay:var(--d,0s)}
.li-live{transform-box:fill-box;transform-origin:center;animation:lilive 1.4s ease-in-out infinite}
@keyframes lilive{50%{transform:scale(1.5);opacity:.45}}
.li-rot{transform-box:fill-box;transform-origin:center;animation:wspin 4s linear infinite}
.anim-linkedin_leads.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-linkedin_leads *{animation:none!important}}
/* anim · maintenance_uptime */
.anim-maintenance_uptime .mu-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 2s ease-out infinite}
.anim-maintenance_uptime .mu-field{transform-origin:556px 368px;animation:wspin 24s linear infinite}
.anim-maintenance_uptime .mu-rot{animation:wspin 2.4s linear infinite}
.anim-maintenance_uptime .mu-dom{font:700 17px var(--f-head)}
.anim-maintenance_uptime .mu-h{font:700 17px var(--f-head)}
.anim-maintenance_uptime .mu-pill{font:700 15px var(--f-body)}
.anim-maintenance_uptime .mu-task{font:700 15px var(--f-body)}
.anim-maintenance_uptime .mu-s{font:700 13px var(--f-body)}
.anim-maintenance_uptime .mu-p14{font:700 14px var(--f-body)}
.anim-maintenance_uptime .mu-ok{font:700 17px var(--f-head)}
.anim-maintenance_uptime.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-maintenance_uptime *{animation:none!important}}
/* anim · meta_feed */
.anim-meta_feed .mf-core{font:700 14px var(--f-head)}
.anim-meta_feed .mf-pill{font:700 15px var(--f-body)}
.anim-meta_feed .mf-h{font:700 15px var(--f-head)}
.anim-meta_feed .mf-sub{font:600 13px var(--f-body)}
.anim-meta_feed .mf-chip{font:700 14px var(--f-body)}
.anim-meta_feed .mf-name{font:700 13px var(--f-head)}
.anim-meta_feed .mf-sm{font:600 12px var(--f-body)}
.anim-meta_feed .mf-btn{font:700 13px var(--f-body)}
.anim-meta_feed .mf-time{font:700 12px var(--f-body)}
.anim-meta_feed .mf-ini{font:800 13px var(--f-head)}
.anim-meta_feed .mf-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 3s ease-out infinite;animation-delay:var(--d,0s)}
.anim-meta_feed .mf-bping{transform-box:fill-box;transform-origin:center;opacity:0;animation:mf-bping 2.4s ease-out infinite}
@keyframes mf-bping{0%,62%{transform:scale(1);opacity:0}66%{opacity:.8}100%{transform:scale(1.12,1.45);opacity:0}}
.anim-meta_feed .mf-spin{transform-origin:156px 230px;animation:wspin 40s linear infinite}
.anim-meta_feed .mf-flow{animation:mf-flow 1s linear infinite}
@keyframes mf-flow{to{stroke-dashoffset:-22}}
.anim-meta_feed .mf-led{animation:mf-led 1.3s steps(1) infinite;animation-delay:var(--d,0s)}
@keyframes mf-led{50%{opacity:.25}}
.anim-meta_feed .mf-breathe{transform-box:fill-box;transform-origin:center;animation:mf-breathe 3.2s ease-in-out infinite alternate}
@keyframes mf-breathe{from{opacity:.55;transform:scale(.92)}to{opacity:1;transform:scale(1.05)}}
.anim-meta_feed .mf-shine{animation:mf-shine 4.2s cubic-bezier(.5,0,.3,1) infinite}
@keyframes mf-shine{0%,35%{transform:translateX(-120px)}75%,100%{transform:translateX(260px)}}
.anim-meta_feed .mf-btnpulse{transform-box:fill-box;transform-origin:center;animation:mf-btn 2.4s ease-in-out infinite}
@keyframes mf-btn{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.06)}}
.anim-meta_feed.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-meta_feed *{animation:none!important}}
/* anim · newsletter_inbox */
.nl-h{font:700 16px var(--f-body)}
.nl-s{font:700 14.5px var(--f-body)}
.nl-s2{font:600 14.5px var(--f-body)}
.nl-sub{font:600 13px var(--f-body)}
.nl-m{font:600 12px var(--f-body)}
.nl-new{font:700 12px var(--f-body)}
.nl-av{font:800 13px var(--f-body)}
.nl-rs{font:700 15px var(--f-body)}
.nl-t{font:700 18px var(--f-head)}
.nl-wm{font:800 12px var(--f-body);letter-spacing:.14em}
.nl-b{font:700 15px var(--f-body)}
.nl-c{font:700 14px var(--f-body)}
.nl-e{font:600 14px var(--f-body)}
.nl-shine{animation:nl-shine 3.2s ease-in-out infinite}
@keyframes nl-shine{0%,55%{transform:translateX(-160px)}100%{transform:translateX(560px)}}
.anim-newsletter_inbox.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-newsletter_inbox *{animation:none!important}}
/* anim · sales_funnel */
.anim-sales_funnel .sf-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 2.4s ease-out infinite}
.anim-sales_funnel .sf-flow{animation:sfflow 1s linear infinite}
@keyframes sfflow{to{stroke-dashoffset:-20}}
.anim-sales_funnel .sf-lbl{font:700 16px var(--f-head)}
.anim-sales_funnel .sf-title{font:700 17px var(--f-head)}
.anim-sales_funnel .sf-s{font:700 13px var(--f-body)}
.anim-sales_funnel .sf-verb{font:700 13px var(--f-body)}
.anim-sales_funnel .sf-tray{font:700 15px var(--f-head)}
.anim-sales_funnel.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-sales_funnel *{animation:none!important}}
/* anim · seo_classic */
.anim-seo_classic .sc-q{font:600 19px var(--f-body)}
.anim-seo_classic .sc-caret{animation:sc-blink .9s steps(1) infinite}
@keyframes sc-blink{50%{opacity:0}}
.anim-seo_classic .sc-fav{font:800 13px var(--f-head)}
.anim-seo_classic .sc-url{font:600 12.5px var(--f-body)}
.anim-seo_classic .sc-title{font:700 16px var(--f-head)}
.anim-seo_classic .sc-snip{font:600 13px var(--f-body)}
.anim-seo_classic .sc-num{font:800 15px var(--f-body)}
.anim-seo_classic .sc-rank{font:800 16px var(--f-body)}
.anim-seo_classic .sc-pill{font:700 13.5px var(--f-body)}
.anim-seo_classic .sc-lab{font:700 15px var(--f-body)}
.anim-seo_classic .sc-sub{font:600 13px var(--f-body)}
.anim-seo_classic .sc-h{font:700 16px var(--f-head)}
.anim-seo_classic .sc-cwv{font:700 13px var(--f-body)}
.anim-seo_classic.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-seo_classic *{animation:none!important}
.anim-seo_classic .sc-in{opacity:1!important}.anim-seo_classic .sc-out{opacity:0!important}.anim-seo_classic .sc-fix{transform:none!important}
.anim-seo_classic .sc-qclip{width:200px!important}.anim-seo_classic .sc-bar{width:244px!important;opacity:1!important}
.anim-seo_classic .sc-track{width:168px!important;opacity:1!important}}
/* anim · seo_geo */
.anim-seo_geo .sg-q{font:600 15px var(--f-body)}
.anim-seo_geo .sg-ph{font:600 14px var(--f-body)}
.anim-seo_geo .sg-caret{animation:sg-blink .9s steps(1) infinite}
@keyframes sg-blink{50%{opacity:0}}
.anim-seo_geo .sg-name{font:700 16px var(--f-head)}
.anim-seo_geo .sg-sub{font:600 13px var(--f-body)}
.anim-seo_geo .sg-biz{font:700 15px var(--f-head)}
.anim-seo_geo .sg-n{font:800 12px var(--f-body)}
.anim-seo_geo .sg-lab{font:800 12px var(--f-body);letter-spacing:.1em}
.anim-seo_geo .sg-url{font:700 13px var(--f-body)}
.anim-seo_geo .sg-url2{font:600 12.5px var(--f-body)}
.anim-seo_geo .sg-fav{font:800 13px var(--f-head)}
.anim-seo_geo .sg-faq{font:700 14px var(--f-body)}
.anim-seo_geo .sg-ok{font:700 15px var(--f-body)}
.anim-seo_geo .sg-pill{font:700 13.5px var(--f-body)}
.anim-seo_geo .sg-dot{transform-box:fill-box;transform-origin:center;animation:sg-dot 1s ease-in-out infinite;animation-delay:var(--d)}
@keyframes sg-dot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.anim-seo_geo .sg-tw{transform-box:fill-box;transform-origin:center;animation:sg-tw 2.6s ease-in-out infinite}
@keyframes sg-tw{0%,100%{transform:scale(.55) rotate(0);opacity:.45}50%{transform:scale(1) rotate(45deg);opacity:1}}
.anim-seo_geo.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-seo_geo *{animation:none!important}
.anim-seo_geo .sg-in{opacity:1!important}.anim-seo_geo .sg-out{opacity:0!important}.anim-seo_geo .sg-fix{transform:none!important}
.anim-seo_geo .sg-bar{width:var(--w)!important;opacity:1!important}.anim-seo_geo .sg-nclip{width:212px!important}
.anim-seo_geo .sg-hl{width:238px!important}.anim-seo_geo .sg-lclip{width:182px!important}}
/* anim · seo_local */
.anim-seo_local .sl-q{font:600 20px var(--f-body)}
.anim-seo_local .sl-caret{animation:sl-blink .9s steps(1) infinite}
@keyframes sl-blink{50%{opacity:0}}
.anim-seo_local .sl-loc{font:700 13.5px var(--f-body)}
.anim-seo_local .sl-pill{font:700 13.5px var(--f-body)}
.anim-seo_local .sl-biz{font:700 15px var(--f-head)}
.anim-seo_local .sl-fav{font:800 15px var(--f-head)}
.anim-seo_local .sl-rate{font:800 13px var(--f-body)}
.anim-seo_local .sl-meta{font:600 13px var(--f-body)}
.anim-seo_local .sl-rank{font:800 16px var(--f-body)}
.anim-seo_local .sl-chip{font:700 14px var(--f-body)}
.anim-seo_local .sl-tag{font:700 13px var(--f-body)}
.anim-seo_local .sl-lake{font:700 12.5px var(--f-body);letter-spacing:.22em}
.anim-seo_local .sl-lab{font:800 12.5px var(--f-body);letter-spacing:.08em}
.anim-seo_local .sl-item{font:700 14px var(--f-body)}
.anim-seo_local .sl-halo{transform-box:fill-box;transform-origin:center;animation:sl-halo 2s ease-out infinite}
@keyframes sl-halo{0%{transform:scale(.6);opacity:.6}100%{transform:scale(2.4);opacity:0}}
.anim-seo_local .sl-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 2.4s ease-out infinite}
.anim-seo_local.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-seo_local *{animation:none!important}
.anim-seo_local .sl-in{opacity:1!important}.anim-seo_local .sl-out{opacity:0!important}.anim-seo_local .sl-fix{transform:none!important}
.anim-seo_local .sl-qclip{width:236px!important}.anim-seo_local .sl-route{stroke-dashoffset:0!important}}
/* anim · tiktok_ads */
.anim-tiktok_ads .tt-h{font:700 16px var(--f-head)}
.anim-tiktok_ads .tt-s{font:700 13px var(--f-body)}
.anim-tiktok_ads .tt-pill{font:700 15px var(--f-body)}
.anim-tiktok_ads .tt-cap{font:800 17px var(--f-head)}
.anim-tiktok_ads .tt-tab{font:700 13px var(--f-body)}
.anim-tiktok_ads .tt-user{font:700 13px var(--f-body)}
.anim-tiktok_ads .tt-sm{font:700 12px var(--f-body)}
.anim-tiktok_ads .tt-cta{font:700 13px var(--f-body)}
.anim-tiktok_ads .tt-av{font:800 14px var(--f-body)}
.tt-ping{transform-box:fill-box;transform-origin:center;opacity:0;animation:vrping 3.2s ease-out infinite;animation-delay:var(--d,0s)}
.tt-disc{transform-box:fill-box;transform-origin:center;animation:wspin 3.6s linear infinite}
.tt-spin{transform-box:fill-box;transform-origin:center;animation:wspin 36s linear infinite}
.tt-spin-r{transform-box:fill-box;transform-origin:center;animation:wspin 24s linear infinite reverse}
.tt-flow{animation:ttflow 1s linear infinite}
@keyframes ttflow{to{stroke-dashoffset:-22}}
.tt-orb{animation:ttorb 5s ease-in-out infinite alternate}
@keyframes ttorb{to{transform:translate(26px,-34px)}}
.tt-orb2{animation:ttorb2 6s ease-in-out infinite alternate}
@keyframes ttorb2{to{transform:translate(-22px,30px)}}
.tt-arc{transform-box:fill-box;transform-origin:center;animation:wspin 2.4s linear infinite}
.tt-rise{transform-box:fill-box;opacity:0;animation:ttrise 3s ease-out infinite;animation-delay:var(--d,0s)}
@keyframes ttrise{0%{opacity:0;transform:translateY(0)}25%{opacity:.9}100%{opacity:0;transform:translateY(-70px)}}
.tt-blink{transform-box:fill-box;transform-origin:center;animation:ttblink 1.1s ease-in-out infinite}
@keyframes ttblink{50%{opacity:.35;transform:scale(.7)}}
.anim-tiktok_ads.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-tiktok_ads *{animation:none!important}}
/* anim · workflow_nodes */
.anim-workflow_nodes .wf-live{transform-box:fill-box;transform-origin:center;animation:wflive 1.6s ease-in-out infinite}
@keyframes wflive{50%{transform:scale(1.45);opacity:.55}}
.anim-workflow_nodes .wf-lbl{font:700 16px var(--f-body)}
.anim-workflow_nodes .wf-man{font:700 15px var(--f-body)}
.anim-workflow_nodes .wf-chip{font:700 16px var(--f-body)}
.anim-workflow_nodes .wf-cap{font:700 13px var(--f-body)}
.anim-workflow_nodes.paused *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.anim-workflow_nodes *{animation:none!important}
.anim-workflow_nodes .wf-in{opacity:1!important;transform:none!important}.anim-workflow_nodes .wf-out{opacity:0!important}
.anim-workflow_nodes .wf-draw{stroke-dashoffset:0!important}.anim-workflow_nodes .wf-mant{fill:#94A3B8!important}.anim-workflow_nodes .wf-copy{stroke:#EF4444!important}.anim-workflow_nodes .wf-mant-bg{fill:#FDECEC!important}.anim-workflow_nodes .wf-bar{width:530px!important}}

/* hero · palco navy cinematografico (pagine soluzione) */
.hero.hero-stage .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
.hero.hero-stage .hero-art{position:sticky;top:96px;align-self:start}
.hero.hero-stage .hero-art::before{display:none}
.hstage{position:relative;width:100%;aspect-ratio:4/5;max-height:calc(100vh - 124px);border-radius:28px;overflow:hidden;background:#070B18;
  box-shadow:0 44px 90px rgba(10,15,31,.30),inset 0 0 0 1px rgba(212,175,55,.22);
  transform:perspective(1400px) rotateY(calc(var(--mx,0) * 3.5deg)) rotateX(calc(var(--my,0) * -2.5deg));transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.hstage .hs-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.hstage .hs-d1,.hstage .hs-d2,.hstage .hs-d3{transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.hstage .hs-d1{transform:translate(calc(var(--mx,0) * -10px),calc(var(--my,0) * -8px))}
.hstage .hs-d2{transform:translate(calc(var(--mx,0) * 14px),calc(var(--my,0) * 10px))}
.hstage .hs-d3{transform:translate(calc(var(--mx,0) * 30px),calc(var(--my,0) * 22px))}
.hs-orbit{transform-origin:400px 500px;animation:wspin 60s linear infinite}
.hs-orbit2{transform-origin:400px 500px;animation:wspin 90s linear infinite reverse}
.hs-glow{transform-box:fill-box;transform-origin:center;animation:hsBreathe 7s ease-in-out infinite}
.hs-glow.b{animation-delay:-3.5s}
@keyframes hsBreathe{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}
.hs-p{animation:hsRise var(--dur,9s) linear infinite;animation-delay:var(--d,0s)}
@keyframes hsRise{0%{transform:translateY(40px);opacity:0}15%{opacity:1}85%{opacity:.9}100%{transform:translateY(-160px);opacity:0}}
.hs-sweep{animation:hsSweep 9s ease-in-out infinite}
@keyframes hsSweep{0%,55%{transform:translateX(-900px)}85%,100%{transform:translateX(900px)}}
.hs-float{animation:hsFloat 6s ease-in-out infinite}
.hs-float.b{animation-duration:7.5s;animation-delay:-2s}
.hs-float.c{animation-duration:9s;animation-delay:-4s}
@keyframes hsFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hstage.paused *{animation-play-state:paused !important}
@media (max-width:980px){
  .hero.hero-stage .wrap{grid-template-columns:1fr}
  .hero.hero-stage .hero-art{position:relative;top:0}
  .hstage{aspect-ratio:1/1;max-height:none;border-radius:22px;transform:none}
}
@media (prefers-reduced-motion:reduce){.hstage,.hstage *{animation:none !important;transition:none !important}}
/* hero · agence_branding_lausanne */
.hbr-chip{font:700 18px var(--f-body)}
.hbr-word{font:800 26px var(--f-head);letter-spacing:.1em}
.hbr-tag{font:600 15px var(--f-body)}
.hbr-sign{font:800 17px var(--f-head);letter-spacing:.08em}
.hbr-url{font:700 15px var(--f-body)}
.hbr-aa{font:800 34px var(--f-head)}
.hbr-q{font:800 26px var(--f-head)}
.hbr-note-t{font:800 20px var(--f-body)}
.hbr-note-s{font:600 15px var(--f-body)}
.hbr-row{animation:hbrRow 16s linear infinite}
.hbr-row.r{animation-direction:reverse;animation-duration:22s}
@keyframes hbrRow{to{transform:translateX(-360px)}}
.hbr-swing{transform-box:fill-box;transform-origin:50% 0;animation:hbrSwing 4.5s ease-in-out infinite}
@keyframes hbrSwing{0%,100%{transform:rotate(-2.2deg)}50%{transform:rotate(2.2deg)}}
.hbr-glow{transform-box:fill-box;transform-origin:center;animation:hbrGlow 2.6s ease-in-out infinite}
@keyframes hbrGlow{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.03)}}
.hbr-blink{animation:hbrBlink 1.6s ease-in-out infinite}
.hbr-blink.b{animation-delay:-.8s}
@keyframes hbrBlink{50%{opacity:.25}}
.hbr-dot{animation:hbrBlink 1.1s ease-in-out infinite}
/* hero · agence_google_ads_lausanne */
.gl-q{font:700 25px var(--f-body)}
.gl-pill{font:800 15px var(--f-body);letter-spacing:.03em}
.gl-card-t{font:800 29px var(--f-head);letter-spacing:-.01em}
.gl-s{font:600 16px var(--f-body)}
.gl-btn{font:800 18px var(--f-body)}
.gl-note-t{font:800 22px var(--f-body)}
.gl-t{font:800 20px var(--f-head)}
.gl-bid{transform-box:fill-box;transform-origin:left center;animation:glBid 1.3s ease-in-out infinite}
@keyframes glBid{0%,100%{transform:scaleX(.35)}40%{transform:scaleX(.95)}70%{transform:scaleX(.6)}}
.gl-bob{animation:glBob 2.6s ease-in-out infinite}
@keyframes glBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.gl-caret{animation:glCaret 1s steps(1) infinite}
@keyframes glCaret{50%{opacity:0}}
.gl-ring{transform-box:fill-box;transform-origin:center;animation:glRing 1.2s ease-in-out infinite}
@keyframes glRing{0%,50%,100%{transform:rotate(0)}10%,30%{transform:rotate(-14deg)}20%,40%{transform:rotate(14deg)}}
.gl-wave{transform-box:fill-box;transform-origin:center;animation:glWave 1.2s ease-out infinite}
.gl-wave.b{animation-delay:.4s}
@keyframes glWave{0%{opacity:.9;transform:scale(.7)}100%{opacity:0;transform:scale(1.5)}}
.gl-coin{animation:glCoin 7s linear infinite}
.gl-coin.b{animation-duration:9s;animation-delay:-3s}
.gl-coin.c{animation-duration:8s;animation-delay:-5.5s}
@keyframes glCoin{0%{transform:translateY(40px);opacity:0}20%{opacity:.5}80%{opacity:.35}100%{transform:translateY(-120px);opacity:0}}
/* hero · agence_seo_orientee_performance */
.sop-lbl{font:800 15px var(--f-body);letter-spacing:.06em}
.sop-q{font:600 20px var(--f-body)}
.sop-t{font:800 25px var(--f-head);letter-spacing:-.01em}
.sop-s{font:600 15px var(--f-body)}
.sop-n{font:800 28px var(--f-head)}
.sop-nt{font:800 20px var(--f-body)}
.sop-ns{font:600 15px var(--f-body)}
.sop-row{animation:sopShim 3.2s ease-in-out infinite}
.sop-row.b{animation-delay:-1.1s}.sop-row.c{animation-delay:-2.2s}
@keyframes sopShim{0%,100%{opacity:.55}50%{opacity:1}}
.sop-glow{transform-box:fill-box;transform-origin:center;animation:sopGlow 2.2s ease-in-out infinite}
@keyframes sopGlow{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.03)}}
.sop-dim{animation:sopDim 1.8s ease-in-out infinite}
@keyframes sopDim{0%,100%{opacity:.45}50%{opacity:.8}}
.sop-rays{animation:wspin 40s linear infinite}
.sop-dot{animation:sopBlink 1.1s ease-in-out infinite}
@keyframes sopBlink{50%{opacity:.25}}
/* hero · automatisation_ia_processus_taches_repetitives_pme */
.au-pill{font:800 17px var(--f-body);letter-spacing:.02em}
.au-lab{font:700 17px var(--f-body)}
.au-gate{font:900 20px var(--f-head);letter-spacing:.06em}
.au-hg{font:800 18px var(--f-body)}
.au-big{font:900 40px var(--f-head);letter-spacing:-.02em}
.au-small{font:700 15px var(--f-body)}
.au-card-t{font:800 21px var(--f-head)}
.au-card-s{font:600 16px var(--f-body)}
.au-chip{font:600 16px var(--f-body)}
.au-belt{stroke-dasharray:16 20;animation:auBelt .9s linear infinite}
@keyframes auBelt{to{stroke-dashoffset:-36}}
.au-roll{transform-box:fill-box;transform-origin:center;animation:wspin 1.2s linear infinite}
.au-scan{animation:auScan 1.6s ease-in-out infinite alternate}
@keyframes auScan{from{transform:translateY(0)}to{transform:translateY(90px)}}
.au-wob{transform-box:fill-box;transform-origin:50% 100%;animation:auWob .5s ease-in-out infinite alternate}
@keyframes auWob{from{transform:rotate(-1.4deg)}to{transform:rotate(1.4deg)}}
.au-ping{transform-box:fill-box;transform-origin:center;animation:auPing 1.6s ease-out infinite}
@keyframes auPing{0%{transform:scale(1);opacity:.9}70%,100%{transform:scale(1.8);opacity:0}}
.au-drip{stroke-dasharray:5 7;animation:auBelt .5s linear infinite}
.au-glow{transform-box:fill-box;transform-origin:center;animation:auGlow 2.4s ease-in-out infinite}
@keyframes auGlow{0%,100%{opacity:.5}50%{opacity:1}}
/* hero · blog */
.bl-pill{font:800 15px var(--f-body);letter-spacing:.06em}
.bl-tag{font:800 15px var(--f-body)}
.bl-more{font:700 15px var(--f-body)}
.bl-node{font:700 17px var(--f-body)}
.bl-nt{font:800 21px var(--f-body)}
.bl-ns{font:600 15px var(--f-body)}
.bl-chip{font:600 16px var(--f-body)}
.bl-beam{animation:blBeam 4s ease-in-out infinite}
@keyframes blBeam{0%,100%{opacity:.55}50%{opacity:1}}
.bl-halo{transform-box:fill-box;transform-origin:center;animation:blHalo 2.6s ease-in-out infinite}
@keyframes blHalo{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}
.bl-tw{transform-box:fill-box;transform-origin:center;animation:blTw 1.8s ease-in-out infinite}
.bl-tw.b{animation-delay:-.6s}.bl-tw.c{animation-delay:-1.2s}
@keyframes blTw{0%,100%{opacity:.25;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}
.bl-dot{animation:blBlink 1.2s ease-in-out infinite}
@keyframes blBlink{50%{opacity:.25}}
/* hero · chatbot_agent_ia */
.ca-pill{font:800 17px var(--f-body);letter-spacing:.02em}
.ca-msg{font:700 18px var(--f-body)}
.ca-meta{font:600 15px var(--f-body)}
.ca-rep{font:800 15px var(--f-body)}
.ca-tag{font:800 13px var(--f-body);letter-spacing:.08em}
.ca-ini{font:800 17px var(--f-body)}
.ca-card-t{font:800 25px var(--f-head);letter-spacing:-.01em}
.ca-card-s{font:600 16px var(--f-body)}
.ca-res-t{font:800 22px var(--f-head)}
.ca-res-b{font:900 20px var(--f-head)}
.ca-chip{font:600 16px var(--f-body)}
.ca-tw{animation:caTw 2.6s ease-in-out infinite;animation-delay:var(--d)}
@keyframes caTw{0%,100%{opacity:1}50%{opacity:.25}}
.ca-win{animation:caWin 5s steps(1) infinite;animation-delay:var(--d)}
@keyframes caWin{0%,70%{opacity:1}72%,86%{opacity:.25}88%,100%{opacity:1}}
.ca-shim{animation:caShim 4s ease-in-out infinite alternate}
@keyframes caShim{from{transform:translateX(-14px)}to{transform:translateX(14px)}}
.ca-dial{transform-origin:400px 428px;animation:wspin 14s linear infinite}
.ca-ring{transform-origin:400px 428px;animation:wspin 80s linear infinite reverse}
.ca-halo{transform-box:fill-box;transform-origin:center;animation:caHalo 2.8s ease-in-out infinite}
@keyframes caHalo{0%,100%{opacity:.6;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}
.ca-eye{transform-box:fill-box;transform-origin:center;animation:caBlink 4.2s ease-in-out infinite}
@keyframes caBlink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.12)}}
.ca-ping{transform-box:fill-box;transform-origin:center;animation:caPing 2s ease-out infinite}
@keyframes caPing{0%{transform:scale(1);opacity:.8}70%,100%{transform:scale(2.2);opacity:0}}
.ca-dots circle{animation:caDot 1s ease-in-out infinite}
.ca-dots circle:nth-child(2){animation-delay:.15s}.ca-dots circle:nth-child(3){animation-delay:.3s}
@keyframes caDot{0%,100%{opacity:.3}50%{opacity:1}}
/* hero · chatgpt_ads_suisse */
.hc-t{font:700 22px var(--f-head)}
.hc-s{font:600 16px var(--f-body)}
.hc-q{font:700 21px var(--f-body)}
.hc-pill{font:800 15px var(--f-body);letter-spacing:.04em}
.hc-card-t{font:800 27px var(--f-head);letter-spacing:-.01em}
.hc-btn{font:800 19px var(--f-body)}
.hc-chip{font:600 17px var(--f-body)}
.hc-note-t{font:800 20px var(--f-body)}
.hc-note-s{font:600 15px var(--f-body)}
.hc-glow{transform-box:fill-box;transform-origin:center;animation:hcGlow 2.4s ease-in-out infinite}
@keyframes hcGlow{0%,100%{opacity:.45;transform:scale(1)}50%{opacity:.95;transform:scale(1.04)}}
.hc-dot{animation:hcBlink 1.1s ease-in-out infinite}
@keyframes hcBlink{50%{opacity:.25}}
.hc-live{transform-box:fill-box;transform-origin:center;animation:vrping 2.2s ease-out infinite}
/* hero · copywriting */
.cw-h{font:800 40px var(--f-body);letter-spacing:-.01em}
.cw-p{font:700 17px var(--f-body)}
.cw-btn{font:800 20px var(--f-body)}
.cw-btn0{font:700 18px var(--f-body)}
.cw-m{font:700 16px var(--f-body)}
.cw-nt{font:800 20px var(--f-body)}
.cw-ns{font:600 15px var(--f-body)}
.cw-heat{transform-box:fill-box;transform-origin:center;animation:cwHeat 2.6s ease-in-out infinite}
.cw-heat.b{animation-delay:-.9s}.cw-heat.c{animation-delay:-1.7s}
@keyframes cwHeat{0%,100%{opacity:.8;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
.cw-glow{animation:cwGlow 2.2s ease-in-out infinite}
@keyframes cwGlow{0%,100%{opacity:.35}50%{opacity:.9}}
.cw-dot{animation:cwBlink 1.2s ease-in-out infinite}
@keyframes cwBlink{50%{opacity:.25}}
.cw-drift{animation:cwDrift 7s ease-in-out infinite}
.cw-drift.b{animation-delay:-2.5s}.cw-drift.c{animation-delay:-5s}
@keyframes cwDrift{0%,100%{transform:translate(0,0)}50%{transform:translate(10px,-8px)}}
/* hero · creation_de_contenu */
.hcc-slate{font:800 24px var(--f-head);letter-spacing:.14em}
.hcc-chip{font:700 18px var(--f-body)}
.hcc-tag{font:800 16px var(--f-body);letter-spacing:.02em}
.hcc-pill{font:800 15px var(--f-body)}
.hcc-note-t{font:800 20px var(--f-body)}
.hcc-note-s{font:600 15px var(--f-body)}
.hcc-lbl{font:700 15px var(--f-body);letter-spacing:.16em}
.hcc-wave{animation:hccWave 5s linear infinite}
.hcc-wave.b{animation-duration:8s;animation-direction:reverse}
@keyframes hccWave{to{transform:translateX(-80px)}}
.hcc-reel{transform-box:fill-box;transform-origin:center;animation:wspin 3s linear infinite}
.hcc-rec{animation:hccBlink 1.2s ease-in-out infinite}
@keyframes hccBlink{50%{opacity:.2}}
.hcc-bub{animation:hccBub var(--dur,6s) linear infinite;animation-delay:var(--d,0s)}
@keyframes hccBub{0%{transform:translateY(0);opacity:0}15%{opacity:.7}90%{opacity:.5}100%{transform:translateY(-230px);opacity:0}}
.hcc-ray{animation:hccRay 6s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes hccRay{0%,100%{opacity:.25}50%{opacity:1}}
.hcc-cone{animation:hccCone 3.2s ease-in-out infinite}
@keyframes hccCone{0%,100%{opacity:.7}50%{opacity:1}}
.hcc-glow{transform-box:fill-box;transform-origin:center;animation:hccGlow 2.4s ease-in-out infinite}
@keyframes hccGlow{0%,100%{opacity:.45;transform:scale(1)}50%{opacity:1;transform:scale(1.035)}}
.hcc-dot{animation:hccBlink 1.1s ease-in-out infinite}
/* hero · creation_site_e_commerce */
.se-pill{font:800 16px var(--f-body);letter-spacing:.02em}
.se-t{font:800 20px var(--f-body)}
.se-s{font:600 15px var(--f-body)}
.se-btn{font:800 19px var(--f-body)}
.se-tag{font:800 15px var(--f-body)}
.se-spin{transform-box:fill-box;transform-origin:center;animation:wspin 14s linear infinite}
.se-tw{transform-box:fill-box;transform-origin:center;animation:seTw 2.2s ease-in-out infinite}
@keyframes seTw{0%,100%{transform:scale(.4);opacity:.2}50%{transform:scale(1.1);opacity:1}}
.se-pulse{transform-box:fill-box;transform-origin:center;animation:sePulse 1.4s ease-out infinite}
@keyframes sePulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.08,1.5);opacity:0}}
.se-live{transform-box:fill-box;transform-origin:center;animation:sePing 2s ease-out infinite}
@keyframes sePing{0%{transform:scale(1);opacity:.8}60%,100%{transform:scale(2.4);opacity:0}}
.se-dot{animation:seBlink 1.1s ease-in-out infinite}
@keyframes seBlink{50%{opacity:.25}}
.se-flip{animation:seFlip .7s linear infinite}
@keyframes seFlip{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.18)}}
.se-sheen{animation:seSheen 4s ease-in-out infinite}
@keyframes seSheen{0%,100%{opacity:.04}50%{opacity:.16}}
/* hero · creation_site_internet_lausanne */
.sl-url{font:600 15px var(--f-body)}
.sl-brand{font:800 17px var(--f-head);letter-spacing:.01em}
.sl-h{font:800 28px var(--f-head);letter-spacing:-.01em}
.sl-btn{font:800 18px var(--f-body)}
.sl-pill{font:800 16px var(--f-body);letter-spacing:.02em}
.sl-t{font:800 20px var(--f-body)}
.sl-s{font:600 15px var(--f-body)}
.sl-day{font:700 15px var(--f-body)}
.sl-pulse{transform-box:fill-box;transform-origin:center;animation:slPulse 1.6s ease-out infinite}
@keyframes slPulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.1,1.42);opacity:0}}
.sl-blink{animation:slBlink 1s steps(1) infinite}
@keyframes slBlink{50%{opacity:0}}
.sl-dot{animation:slBlink2 1.1s ease-in-out infinite}
@keyframes slBlink2{50%{opacity:.25}}
.sl-live{transform-box:fill-box;transform-origin:center;animation:slPing 2s ease-out infinite}
@keyframes slPing{0%{transform:scale(1);opacity:.8}60%,100%{transform:scale(2.4);opacity:0}}
.sl-shine{animation:slShine 3.2s ease-in-out infinite}
@keyframes slShine{0%,100%{opacity:.25}50%{opacity:.8}}
/* hero · creation_site_vitrine */
.sv-url{font:600 15px var(--f-body)}
.sv-sign{font:800 25px var(--f-head);letter-spacing:.16em}
.sv-h{font:800 28px var(--f-head);letter-spacing:-.01em}
.sv-btn{font:800 18px var(--f-body)}
.sv-tag{font:800 15px var(--f-body);letter-spacing:.06em}
.sv-pill{font:800 16px var(--f-body);letter-spacing:.02em}
.sv-t{font:800 20px var(--f-body)}
.sv-s{font:600 15px var(--f-body)}
.sv-call{font:800 19px var(--f-body)}
.sv-ph{font:700 17px var(--f-body)}
.sv-bulb{animation:svTw 2.4s ease-in-out infinite}
@keyframes svTw{0%,100%{opacity:1}50%{opacity:.45}}
.sv-walk{animation:svBob .5s ease-in-out infinite alternate}
@keyframes svBob{to{transform:translateY(-4px)}}
.sv-leg{transform-box:fill-box;transform-origin:50% 0;animation:svLeg .5s ease-in-out infinite alternate}
.sv-leg.b{animation-direction:alternate-reverse}
@keyframes svLeg{from{transform:rotate(16deg)}to{transform:rotate(-16deg)}}
.sv-ring{transform-box:fill-box;transform-origin:center;animation:svRing 1.2s ease-out infinite}
@keyframes svRing{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.7);opacity:0}}
.sv-wave{animation:svWave .9s ease-in-out infinite}
.sv-wave.b{animation-delay:-.45s}
@keyframes svWave{0%,100%{opacity:.15}50%{opacity:1}}
.sv-glow{animation:svGlow 2.6s ease-in-out infinite}
@keyframes svGlow{0%,100%{opacity:.35}50%{opacity:.8}}
.sv-live{transform-box:fill-box;transform-origin:center;animation:svPing 2s ease-out infinite}
@keyframes svPing{0%{transform:scale(1);opacity:.8}60%,100%{transform:scale(2.4);opacity:0}}
.sv-star{animation:svGlow 3.4s ease-in-out infinite}
/* hero · creation_tunnel_de_vente */
.tv-lbl{font:800 20px var(--f-body)}
.tv-chip{font:700 18px var(--f-body)}
.tv-nt{font:800 20px var(--f-body)}
.tv-ns{font:600 15px var(--f-body)}
.tv-lost{font:700 16px var(--f-body)}
.tv-pulse{animation:tvPulse 2.2s ease-in-out infinite}
.tv-pulse.b{animation-delay:-.55s}.tv-pulse.c{animation-delay:-1.1s}.tv-pulse.d{animation-delay:-1.65s}
@keyframes tvPulse{0%,100%{opacity:.55}50%{opacity:1}}
.tv-cone{animation:tvCone 5s ease-in-out infinite}
@keyframes tvCone{0%,100%{opacity:.55}50%{opacity:1}}
.tv-ping{transform-box:fill-box;transform-origin:center;animation:tvPing 2.6s ease-out infinite}
.tv-ping.b{animation-delay:-.9s}.tv-ping.c{animation-delay:-1.7s}
@keyframes tvPing{0%{transform:scale(1);opacity:.7}60%,100%{transform:scale(1.35);opacity:0}}
.tv-dot{animation:tvBlink 1.3s ease-in-out infinite}
.tv-fall{animation:tvFall 2.4s ease-in infinite;animation-delay:var(--d)}
@keyframes tvFall{0%{transform:translate(0,0);opacity:0}25%{opacity:.9}100%{transform:translate(var(--dx),120px);opacity:0}}
@keyframes tvBlink{50%{opacity:.25}}
/* hero · email_marketing */
.em-chip{font:800 17px var(--f-body)}
.em-h{font:800 21px var(--f-head);letter-spacing:-.01em}
.em-tab{font:800 15px var(--f-body)}
.em-from{font:800 16px var(--f-body)}
.em-sub{font:600 15px var(--f-body)}
.em-brand{font:800 15px var(--f-body);letter-spacing:.14em}
.em-title{font:800 23px var(--f-head);letter-spacing:-.01em}
.em-btn{font:800 19px var(--f-body)}
.em-spam{font:800 20px var(--f-body)}
.em-card-t{font:800 18px var(--f-body)}
.em-note-t{font:800 20px var(--f-body)}
.em-note-s{font:600 15px var(--f-body)}
.em-av{font:800 15px var(--f-body)}
.em-ring{animation:emRing 1.6s linear infinite}
@keyframes emRing{to{stroke-dashoffset:-60}}
.em-ring2{animation:emRing 2.4s linear infinite reverse}
.em-glow{transform-box:fill-box;transform-origin:center;animation:emGlow 2s ease-in-out infinite}
@keyframes emGlow{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
.em-dot{animation:emBlink 1.1s ease-in-out infinite}
@keyframes emBlink{50%{opacity:.25}}
.em-live{transform-box:fill-box;transform-origin:center;animation:vrping 2.2s ease-out infinite}
/* hero · etude_de_cas */
.ec-tab{font:800 15px var(--f-body);letter-spacing:.08em}
.ec-cov{font:800 36px var(--f-head);letter-spacing:-.01em}
.ec-covs{font:600 19px var(--f-body)}
.ec-name{font:800 24px var(--f-head)}
.ec-s{font:600 16px var(--f-body)}
.ec-leg{font:700 15px var(--f-body)}
.ec-step{font:700 16px var(--f-body)}
.ec-kpi{font:700 15px var(--f-body)}
.ec-seal{font:800 17px var(--f-body);letter-spacing:.03em}
.ec-nt{font:800 21px var(--f-body)}
.ec-ns{font:600 15px var(--f-body)}
.ec-chip{font:600 16px var(--f-body)}
.ec-pulse{transform-box:fill-box;transform-origin:center;animation:ecPulse 1.8s ease-in-out infinite}
@keyframes ecPulse{0%,100%{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}
.ec-spin{transform-box:fill-box;transform-origin:center;animation:wspin 3.2s linear infinite}
.ec-dot{animation:ecBlink 1.2s ease-in-out infinite}
@keyframes ecBlink{50%{opacity:.25}}
/* hero · facebook_ads_instagram_ads_suisse */
.fb-name{font:800 17px var(--f-body)}
.fb-s{font:600 15px var(--f-body)}
.fb-btn{font:800 18px var(--f-body)}
.fb-chip{font:800 17px var(--f-body)}
.fb-card-t{font:800 24px var(--f-head);letter-spacing:-.01em}
.fb-card-s{font:700 16px var(--f-body)}
.fb-swipe{animation:fbSwipe .75s cubic-bezier(.5,0,.8,.6) infinite}
@keyframes fbSwipe{0%{transform:translateY(0);opacity:0}15%{opacity:.9}70%{opacity:.9}100%{transform:translateY(-300px);opacity:0}}
.fb-streak{animation:fbStreak .35s linear infinite}
@keyframes fbStreak{to{stroke-dashoffset:-100}}
.fb-spin{transform-box:fill-box;transform-origin:center;animation:fbSpin 30s linear infinite}
@keyframes fbSpin{to{transform:rotate(360deg)}}
.fb-live{transform-box:fill-box;transform-origin:center;animation:fbPing 2.2s ease-out infinite}
@keyframes fbPing{0%{transform:scale(1);opacity:.8}60%,100%{transform:scale(1.9);opacity:0}}
/* hero · geo_aeo_referencement_ia_lausanne */
.ga-q{font:700 20px var(--f-body)}
.ga-a{font:600 18px var(--f-body)}
.ga-ab{font:800 18px var(--f-body)}
.ga-pill{font:800 15px var(--f-body);letter-spacing:.05em}
.ga-ct{font:800 27px var(--f-head);letter-spacing:-.01em}
.ga-cs{font:600 16px var(--f-body)}
.ga-cite{font:800 15px var(--f-body)}
.ga-badge{font:800 18px var(--f-body)}
.ga-mono{font:800 19px var(--f-body)}
.ga-halo{transform-box:fill-box;transform-origin:center;animation:gaHalo 3.2s ease-in-out infinite}
.ga-halo.b{animation-delay:-1.1s}.ga-halo.c{animation-delay:-2.2s}
@keyframes gaHalo{0%,100%{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}
.ga-glow{animation:gaGlow 2.4s ease-in-out infinite}
@keyframes gaGlow{0%,100%{opacity:.3}50%{opacity:.85}}
.ga-flow{stroke-dasharray:5 15;animation:gaFlow 1.1s linear infinite}
@keyframes gaFlow{to{stroke-dashoffset:-40}}
.ga-dot{animation:gaBlink 1.2s ease-in-out infinite}
.ga-dot.b{animation-delay:.2s}.ga-dot.c{animation-delay:.4s}
@keyframes gaBlink{0%,100%{opacity:.2}50%{opacity:1}}
.ga-rise{animation:gaRise 3.6s ease-out infinite}
.ga-rise.b{animation-delay:-1.2s}.ga-rise.c{animation-delay:-2.4s}
@keyframes gaRise{0%{transform:translateY(10px);opacity:0}18%{opacity:1}100%{transform:translateY(-120px);opacity:0}}
.ga-spin{transform-box:fill-box;transform-origin:center;animation:gaSpin 14s linear infinite}
@keyframes gaSpin{to{transform:rotate(360deg)}}
/* hero · gestion_reseaux_sociaux_community */
.gcm-t{font:800 18px var(--f-head)}
.gcm-s{font:600 15px var(--f-body)}
.gcm-b{font:700 16px var(--f-body)}
.gcm-av{font:800 15px var(--f-head)}
.gcm-cap{font:800 17px var(--f-body)}
.gcm-chip{font:700 17px var(--f-body)}
.gcm-num{font:800 27px var(--f-head)}
.gcm-ct{font:800 21px var(--f-head)}
.gcm-cs{font:600 15px var(--f-body)}
.gcm-ping{transform-box:fill-box;transform-origin:center;animation:gcmPing 1.6s ease-out infinite}
@keyframes gcmPing{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.3);opacity:0}}
.gcm-shake{transform-box:fill-box;transform-origin:center;animation:gcmShake 1.8s ease-in-out infinite}
.gcm-shake.b{animation-delay:-.6s}.gcm-shake.c{animation-delay:-1.2s}
@keyframes gcmShake{0%,62%,100%{transform:rotate(0)}68%{transform:rotate(-3deg)}74%{transform:rotate(3deg)}80%{transform:rotate(-2deg)}86%{transform:rotate(1deg)}}
.gcm-spin{transform-box:fill-box;transform-origin:center;animation:gcmSpin 7s linear infinite}
@keyframes gcmSpin{to{transform:rotate(360deg)}}
.gcm-beat{transform-box:fill-box;transform-origin:center;animation:gcmBeat 1.2s ease-in-out infinite}
@keyframes gcmBeat{0%,100%{transform:scale(1)}25%{transform:scale(1.1)}45%{transform:scale(.97)}}
.gcm-rise{animation:gcmRise 2.6s ease-out infinite;animation-delay:var(--d,0s)}
@keyframes gcmRise{0%{transform:translate(0,0) scale(.4);opacity:0}15%{opacity:1}100%{transform:translate(var(--x,0px),-95px) scale(1.1);opacity:0}}
.gcm-blink{animation:gcmBlink 1.1s ease-in-out infinite}
@keyframes gcmBlink{50%{opacity:.3}}
/* hero · ia_pour_pme_suisse */
.ip-pill{font:800 17px var(--f-body);letter-spacing:.03em}
.ip-lab{font:700 18px var(--f-body)}
.ip-core-t{font:800 16px var(--f-body);letter-spacing:.08em}
.ip-card-t{font:800 22px var(--f-head);letter-spacing:-.01em}
.ip-card-s{font:600 15px var(--f-body)}
.ip-chip{font:600 16px var(--f-body)}
.ip-flow{stroke-dasharray:6 16;animation:ipFlow 1s linear infinite}
.ip-flow.out{animation-direction:reverse}
@keyframes ipFlow{to{stroke-dashoffset:-22}}
.ip-orb{stroke-dasharray:4 14;animation:ipFlow 2.4s linear infinite}
.ip-halo{transform-box:fill-box;transform-origin:center;animation:ipHalo 2.6s ease-in-out infinite}
@keyframes ipHalo{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
.ip-gem{transform-box:fill-box;transform-origin:center;animation:ipGem 2.6s ease-in-out infinite}
@keyframes ipGem{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
.ip-r1{transform-origin:400px 482px;animation:wspin 16s linear infinite}
.ip-r2{transform-origin:400px 482px;animation:wspin 26s linear infinite reverse}
.ip-ping{transform-box:fill-box;transform-origin:center;animation:ipPing 2.2s ease-out infinite}
@keyframes ipPing{0%{transform:scale(1);opacity:.8}70%,100%{transform:scale(1.35);opacity:0}}
.ip-spin{transform-box:fill-box;transform-origin:center;animation:wspin 1.1s linear infinite}
.ip-bar{transform-box:fill-box;transform-origin:bottom;animation:ipBar 1.8s ease-in-out infinite alternate}
@keyframes ipBar{from{transform:scaleY(.55)}to{transform:scaleY(1)}}
/* hero · linkedin_ads */
.li-chip{font:800 17px var(--f-body)}
.li-lab{font:800 16px var(--f-body)}
.li-t{font:800 25px var(--f-head);letter-spacing:-.01em}
.li-s{font:600 16px var(--f-body)}
.li-ping{transform-box:fill-box;transform-origin:center;animation:vrping 2.4s ease-out infinite;animation-delay:var(--d,0s)}
.li-spin{transform-box:fill-box;transform-origin:center;animation:wspin 14s linear infinite}
.li-net{animation:liNet 2.6s linear infinite}
@keyframes liNet{to{stroke-dashoffset:-40}}
.li-dot{animation:liBlink 1.2s ease-in-out infinite}
@keyframes liBlink{50%{opacity:.3}}
.li-glow{transform-box:fill-box;transform-origin:center;animation:liGlow 2.4s ease-in-out infinite}
@keyframes liGlow{0%,100%{opacity:.5;transform:scale(.98)}50%{opacity:1;transform:scale(1.01)}}
/* hero · merci */
.mr-pill{font:800 15px var(--f-body);letter-spacing:.08em}
.mr-h{font:800 24px var(--f-head)}
.mr-btn{font:800 20px var(--f-body)}
.mr-title{font:800 33px var(--f-head);letter-spacing:-.01em}
.mr-sub{font:600 18px var(--f-body)}
.mr-st{font:800 18px var(--f-body)}
.mr-ss{font:600 15px var(--f-body)}
.mr-num{font:800 15px var(--f-body)}
.mr-nt{font:800 20px var(--f-body)}
.mr-ns{font:600 15px var(--f-body)}
.mr-day{font:700 15px var(--f-body)}
.mr-ring{font:800 17px var(--f-body)}
.mr-halo{transform-box:fill-box;transform-origin:center;animation:mrHalo 2.4s ease-in-out infinite}
@keyframes mrHalo{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}
.mr-tw{transform-box:fill-box;transform-origin:center;animation:mrTw 1.7s ease-in-out infinite}
.mr-tw.b{animation-delay:-.55s}.mr-tw.c{animation-delay:-1.1s}
@keyframes mrTw{0%,100%{opacity:.2;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}
.mr-cf{transform-box:fill-box;transform-origin:center;animation:wspin 1.1s linear infinite}
.mr-cf.b{animation-duration:.8s;animation-direction:reverse}
.mr-dot{animation:mrBlink 1.2s ease-in-out infinite}
@keyframes mrBlink{50%{opacity:.25}}
/* hero · publicite_en_ligne */
.pl-t{font:800 20px var(--f-head)}
.pl-lab{font:700 16px var(--f-body)}
.pl-chip{font:800 17px var(--f-body)}
.pl-card-t{font:800 27px var(--f-head);letter-spacing:-.01em}
.pl-card-s{font:600 16px var(--f-body)}
.pl-spin{transform-origin:400px 470px;animation:plSpin 7s linear infinite}
.pl-spin.r{animation-duration:11s;animation-direction:reverse}
@keyframes plSpin{to{transform:rotate(360deg)}}
.pl-beam{animation:plBeam .9s linear infinite}
@keyframes plBeam{to{stroke-dashoffset:-36}}
.pl-dot{animation:plBlink 1.1s ease-in-out infinite}
@keyframes plBlink{50%{opacity:.25}}
.pl-ghost{animation:plGhost 5s ease-in-out infinite}
.pl-ghost.b{animation-duration:6.5s;animation-delay:-2s}
@keyframes plGhost{0%,100%{opacity:.18;transform:translateY(0)}50%{opacity:.4;transform:translateY(-14px)}}
/* hero · referencement_lausanne */
.rlz-chip{font:700 17px var(--f-body)}
.rlz-q{font:700 19px var(--f-body)}
.rlz-t{font:800 23px var(--f-head);letter-spacing:-.01em}
.rlz-s{font:600 15px var(--f-body)}
.rlz-n{font:800 30px var(--f-head)}
.rlz-lbl{font:800 15px var(--f-body);letter-spacing:.18em}
.rlz-nt{font:800 20px var(--f-body)}
.rlz-w1{animation:rlzWin 4.2s ease-in-out infinite}
.rlz-w2{animation:rlzWin 5.6s ease-in-out infinite;animation-delay:-2s}
.rlz-w3{animation:rlzWin 3.4s ease-in-out infinite;animation-delay:-1.3s}
@keyframes rlzWin{0%,100%{opacity:.9}45%{opacity:.35}60%{opacity:1}}
.rlz-ref{animation:rlzRef 3s ease-in-out infinite}
.rlz-ref.b{animation-duration:4.4s;animation-delay:-1.5s}
@keyframes rlzRef{0%,100%{transform:translateX(0);opacity:.8}50%{transform:translateX(9px);opacity:.35}}
.rlz-boat{animation:rlzBoat 26s linear infinite}
@keyframes rlzBoat{0%{transform:translateX(-160px)}100%{transform:translateX(960px)}}
.rlz-scan{animation:rlzScan 2.6s linear infinite}
@keyframes rlzScan{0%{transform:translateY(0);opacity:0}15%{opacity:.9}100%{transform:translateY(-150px);opacity:0}}
.rlz-glow{transform-box:fill-box;transform-origin:center;animation:rlzGlow 2.2s ease-in-out infinite}
@keyframes rlzGlow{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.03)}}
.rlz-dot{animation:rlzBlink 1.1s ease-in-out infinite}
@keyframes rlzBlink{50%{opacity:.25}}
/* hero · referencement_local_google_mybusiness */
.rgm-q{font:600 20px var(--f-body)}
.rgm-t{font:800 23px var(--f-head);letter-spacing:-.01em}
.rgm-s{font:600 15px var(--f-body)}
.rgm-b{font:800 17px var(--f-body)}
.rgm-nt{font:800 19px var(--f-body)}
.rgm-lbl{font:800 15px var(--f-body);letter-spacing:.18em}
.rgm-ring{transform-box:fill-box;transform-origin:center;animation:rgmRing 1s ease-in-out infinite}
@keyframes rgmRing{0%,50%,100%{transform:rotate(0)}10%,30%{transform:rotate(-14deg)}20%,40%{transform:rotate(14deg)}}
.rgm-wave{animation:rgmWave 1.2s ease-out infinite}
.rgm-wave.b{animation-delay:-.6s}
@keyframes rgmWave{0%{opacity:0}30%{opacity:1}100%{opacity:0}}
.rgm-pulse{transform-box:fill-box;transform-origin:center;animation:rgmPulse 2s ease-out infinite}
.rgm-pulse.b{animation-delay:-1s}
@keyframes rgmPulse{0%{transform:scale(.2);opacity:.9}100%{transform:scale(1);opacity:0}}
.rgm-lake{animation:rgmLake 5s ease-in-out infinite}
@keyframes rgmLake{0%,100%{transform:translateX(0);opacity:.7}50%{transform:translateX(12px);opacity:.3}}
.rgm-glow{transform-box:fill-box;transform-origin:center;animation:rgmGlow 2.2s ease-in-out infinite}
@keyframes rgmGlow{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.03)}}
.rgm-dot{animation:rgmBlink 1.1s ease-in-out infinite}
@keyframes rgmBlink{50%{opacity:.25}}
/* hero · reseaux_sociaux */
.rsx-name{font:800 19px var(--f-head)}
.rsx-s{font:600 15px var(--f-body)}
.rsx-av{font:800 15px var(--f-head)}
.rsx-shop{font:800 27px var(--f-head);letter-spacing:-.01em}
.rsx-sub{font:600 16px var(--f-body)}
.rsx-chip{font:700 17px var(--f-body)}
.rsx-pill{font:800 15px var(--f-body);letter-spacing:.03em}
.rsx-ct{font:800 17px var(--f-body)}
.rsx-cs{font:600 15px var(--f-body)}
.rsx-flow{animation:rsxFlow 1.1s linear infinite}
@keyframes rsxFlow{to{stroke-dashoffset:-26}}
.rsx-halo{transform-box:fill-box;transform-origin:center;animation:rsxHalo 2.2s ease-in-out infinite}
@keyframes rsxHalo{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.95;transform:scale(1.025)}}
.rsx-spin{transform-box:fill-box;transform-origin:center;animation:rsxSpin 9s linear infinite}
@keyframes rsxSpin{to{transform:rotate(360deg)}}
.rsx-beat{transform-box:fill-box;transform-origin:center;animation:rsxBeat 1.4s ease-in-out infinite}
@keyframes rsxBeat{0%,100%{transform:scale(1)}28%{transform:scale(1.22)}}
.rsx-ping{transform-box:fill-box;transform-origin:center;animation:rsxPing 1.9s ease-out infinite}
@keyframes rsxPing{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.4);opacity:0}}
.rsx-shim{animation:rsxShim 3.2s ease-in-out infinite}
.rsx-shim.b{animation-delay:-1.1s}
@keyframes rsxShim{0%,100%{opacity:.5}50%{opacity:1}}
/* hero · tiktok_ads */
.tk-t{font:800 20px var(--f-head)}
.tk-chip{font:800 17px var(--f-body)}
.tk-tab{font:700 17px var(--f-body)}
.tk-hook{font:800 30px var(--f-head);letter-spacing:-.01em}
.tk-user{font:800 17px var(--f-body)}
.tk-pill{font:800 15px var(--f-body)}
.tk-btn{font:800 19px var(--f-body)}
.tk-note-t{font:800 20px var(--f-body)}
.tk-note-s{font:600 15px var(--f-body)}
.tk-glow{transform-box:fill-box;transform-origin:center;animation:tkGlow 2.2s ease-in-out infinite}
@keyframes tkGlow{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.015)}}
.tk-live{transform-box:fill-box;transform-origin:center;animation:vrping 2.2s ease-out infinite}
.tk-dot{animation:tkBlink 1.1s ease-in-out infinite}
@keyframes tkBlink{50%{opacity:.25}}
.tk-disc{transform-box:fill-box;transform-origin:center;animation:wspin 4s linear infinite}
.tk-tw{transform-box:fill-box;transform-origin:center;animation:tkTw 1.8s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes tkTw{0%,100%{opacity:.2;transform:scale(.6)}50%{opacity:1;transform:scale(1.1)}}
/* === anim:end === */

.stat p.stat-t{font:700 18px/1.3 var(--f-head);color:#fff;margin:0}
@media (max-width:600px){.results .stat p.stat-t{display:block}}

/* menu: sotto-voci come sul live */
.dd-panel{min-width:290px;max-height:calc(100vh - 110px);overflow-y:auto}
.dd-panel a.parent{font-weight:600;color:var(--navy)}
.dd-panel a.child{position:relative;padding:7px 12px 7px 30px;font-size:14px;color:var(--text)}
.dd-panel a.child::before{content:"";position:absolute;left:16px;top:50%;width:6px;height:6px;border-left:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:translateY(-70%)}
.dd-panel a.child:hover{color:var(--link)}
@media (max-width:1024px){.mnav .sub a.child{padding:11px 4px 11px 36px;font-size:15px;color:var(--muted);border-bottom-style:dashed}}
/* schede con bottone diagnostic / audit / estimation */
.card .card-actions{margin-top:auto;padding-top:10px;display:flex;flex-wrap:wrap;gap:10px}
.card .card-actions .btn{white-space:normal;text-align:left}
.band .card .card-actions .btn-navy{background:var(--gold);color:var(--navy);border-color:var(--gold)}
/* footer: banda dorata con i link legali sotto la montagna */
.legal-gold{background:linear-gradient(90deg,#C9A12F 0%,#E2C15A 50%,#C9A12F 100%);color:var(--navy);font-size:14.5px;font-weight:600}
.legal-gold .wrap{display:flex;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}
.legal-gold a{color:var(--navy);text-decoration:underline;text-decoration-color:rgba(10,15,31,.35);text-underline-offset:3px}
.legal-gold a:hover{text-decoration-color:var(--navy)}
.legal.summit{min-height:440px}
.legal.summit .wrap{padding-bottom:48px}
@media (max-width:980px){.legal.summit .wrap{padding-top:0;padding-bottom:30px}.summit-copy .logo{height:96px}.legal-gold .wrap{justify-content:center;text-align:center}}

/* hero: l'immagine, l'animazione o il modulo restano accanto al testo mentre si scorre (desktop) */
@media (min-width:981px){
  .hero .wrap{align-items:start}
  .hero:not(.solo):not(.home-hero) .hero-art,.hero .form-card{position:sticky;top:96px;align-self:start}
}

/* footer · logo in alto allineato alla vetta, social sotto */
.legal.summit{align-items:flex-start}
.legal.summit .wrap{padding-top:clamp(30px,3vw,46px);padding-bottom:64px}
.summit-copy{gap:24px}
.summit-copy .logo{height:clamp(54px,4.4vw,68px)}
.summit-socials{display:flex;gap:12px}
.summit-socials a{width:44px;height:44px;border-radius:50%;border:1px solid rgba(212,175,55,.5);display:grid;place-items:center;color:#FFFFFF;transition:background .2s,color .2s,border-color .2s}
.summit-socials a:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.summit-socials .ico{width:18px;height:18px}
@media (max-width:980px){.legal.summit .wrap{padding-top:4px;padding-bottom:36px}.summit-copy{gap:18px}.summit-copy .logo{height:54px}}

/* barra di chiamata solo su telefono (come sul live) */
.call-bar{display:none}
@media (max-width:980px){
  .call-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 18px;border-radius:14px;background:var(--gold);color:var(--navy);font:800 16px/1.2 var(--f-body);box-shadow:0 14px 30px rgba(10,15,31,.28)}
  .call-bar .ico{width:20px;height:20px}
  body:has(.call-bar) .legal-gold{padding-bottom:78px}
  
}
@media (max-width:980px){.converge + .after.converge-cta{margin-top:30px}}

/* footer · modulo corto "aperçu de votre site" */
.ftr-preview{background:#FFFFFF;border-top:1px solid var(--line);padding-top:56px}
.fp-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:24px 40px;align-items:center;padding:34px 38px;border-radius:22px;
  background:radial-gradient(120% 140% at 0% 0%,#1C2E57 0%,#0A0F1F 60%);border:1px solid rgba(212,175,55,.35);box-shadow:0 26px 60px rgba(10,15,31,.18)}
.fp-card h3{font:700 clamp(21px,1.9vw,27px)/1.3 var(--f-head);color:#FFFFFF;text-wrap:balance;margin:0}
.fp-card h3 span{color:var(--gold)}
.fp-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px}
.fp-form input{height:52px;min-width:0;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#FFFFFF;font:500 16px var(--f-body)}
.fp-form input::placeholder{color:#AAB6C8}
.fp-form input:focus{outline:none;border-color:var(--gold);background:rgba(255,255,255,.12)}
.fp-form .btn{height:52px;white-space:nowrap}
.ftr-preview + .ftr{border-top:0}
@media (max-width:1180px){.fp-card{grid-template-columns:1fr}}
@media (max-width:700px){.ftr-preview{padding-top:40px}.fp-card{padding:26px 20px;border-radius:18px}.fp-form{grid-template-columns:1fr}.fp-form .btn{width:100%}}

/* footer montagna: logo più grande, meno vuoto sotto */
.summit-copy .logo{height:clamp(80px,7.2vw,108px)}
.summit-copy{gap:26px}
.summit-socials a{width:50px;height:50px}
.summit-socials .ico{width:20px;height:20px}
.legal.summit{min-height:380px}
@media (max-width:980px){.summit-copy .logo{height:74px}.summit-socials a{width:46px;height:46px}}

/* ruote del metodo: binario di scorrimento */
.method-track{position:relative}

.head-actions{margin:-12px 0 44px}

/* racconti delle pagine fondo funnel: respiro e bottone staccato dal testo */
.narrow.stack .rich p{margin-bottom:14px}
.narrow.stack > .actions{margin-top:30px}
.narrow.stack > .actions .btn{padding:17px 30px}
.wrap > .rich + .actions,.narrow > .rich + .actions,.wrap > .rich + .after{margin-top:40px}
.wrap > .rich.t-center p + p{margin-top:12px}

/* schede con bottone: bottoni allineati tra loro in fondo alla scheda */
.card:has(.card-actions){display:flex;flex-direction:column;gap:12px}
.card:has(.card-actions) .checks{margin-bottom:6px}
.card .card-actions{margin-top:auto}
/* racconto che vende: più grande, più scuro, più spazio */
.rich.story{max-width:780px;font-size:clamp(18px,1.35vw,20px);line-height:1.75;color:#1E293B;font-weight:500}
.rich.story p + p{margin-top:16px}
.rich.story strong{color:var(--navy);font-weight:800}
.rich.story mark[data-c="gold"]{color:#9A7419;font-weight:800}
.band .rich.story{color:#E3E9F1}
.band .rich.story strong{color:#FFFFFF}
.band .rich.story mark[data-c="gold"]{color:var(--gold)}
@media (max-width:600px){.rich.story{font-size:17.5px;line-height:1.7}}
@media (min-width:981px){.card .card-actions .btn{white-space:nowrap}}
/* racconto: ritmo regolare tra i paragrafi (niente somma di margini) */
.rich.story{display:grid;gap:20px}
.rich.story p,.rich.story p + p{margin:0}
.rich.story.story.story p{margin:0}

/* stat allineate riga per riga: numeri, titoli e testi alla stessa altezza in tutte le colonne */
@media (min-width:601px){
  .stats{grid-template-rows:auto;align-items:stretch}
  .stats > .stat{display:grid;grid-row:span 4;grid-template-rows:subgrid;align-content:start;row-gap:10px}
  .stats > .stat > .stat-num{align-self:end}
  .stats > .stat > .stat-t{align-self:start}
}

/* schede numeri allineate: numero, titolo e testo sulla stessa riga in tutte le schede */
.cards.stat-cards > .card{grid-row:span 3;display:grid;grid-template-rows:subgrid;row-gap:10px;align-content:start}
.cards.stat-cards > .card > .num{font:800 clamp(34px,3vw,42px)/1 var(--f-head);color:var(--gold-ink);align-self:end;margin:0}
.cards.stat-cards > .card > .card-t{align-self:start}
.band .cards.stat-cards > .card > .num{color:var(--gold)}
@media (max-width:980px){.cards.stat-cards > .card{grid-row:auto;grid-template-rows:none}}

/* === mobile: priorità assoluta === */
@media (max-width:640px){
  /* tabelle -> schede */
  .table-wrap{overflow:visible;border:0;background:none;border-radius:0}
  .rtable,.rich table.rtable,.table-wrap table.rtable{min-width:0;display:block;font-size:15.5px}
  .rtable thead,.rtable tr.t-head{display:none}
  .rtable tbody{display:grid;gap:12px}
  .rtable tr{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px 16px;box-shadow:0 6px 18px rgba(10,15,31,.05)}
  .rtable tr.hl{border-color:rgba(212,175,55,.7);background:#FFFBEF}
  .rtable td,.rtable th{display:grid;grid-template-columns:minmax(96px,38%) 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);background:none !important;text-align:left}
  .rtable tr > :last-child{border-bottom:0}
  .rtable td::before,.rtable th::before{content:attr(data-label);font-weight:700;color:var(--navy);font-size:13.5px}
  .rtable td:not([data-label]),.rtable th:not([data-label]){grid-template-columns:1fr}
  .rtable td:not([data-label])::before,.rtable th:not([data-label])::before{content:none}
  /* processo compatto: titoli leggibili */
  .steps.timeline.compact .step .step-t{font-size:13.5px;line-height:1.25;overflow-wrap:normal;hyphens:auto}
  /* testi piccoli */
  .proof,.rich.proof{font-size:15px}
  .dg-old{font-size:max(14px,4.6cqw)}
  /* zone da toccare di almeno 44 px */
  .hdr .btn{min-height:44px}
  .hdr .logo{padding:5px 0;display:inline-flex;align-items:center}
  .svc-links a{display:block;padding:11px 0}
  .svc-links{gap:0 24px}
  .contact-list a{display:inline-block;padding:10px 0}
  .legal-gold a{display:inline-block;padding:10px 2px}
  .chip,button.chip{min-height:44px}
  .card .card-actions .btn,.actions .btn,.after .btn{min-height:48px}
  .bw-dots button{height:26px;padding:10px 0;background-clip:content-box}
  .bw-dots button.on::after{inset:10px 0}
  .fp-form input{height:50px}
}
@media (max-width:640px){
  .rtable,.rich table.rtable,.table-wrap table.rtable{min-width:0 !important;width:100% !important}
  .article > *,.stack > *{min-width:0}
  .proof *,.rich.proof *{font-size:inherit !important}
  .bw-dots{gap:0}
  .bw-dots button{width:42px;padding:10px 8px}
  .bw-dots button.on{width:62px}
  .bw-dots button.on::after{inset:10px 8px}
}
@media (max-width:640px){.bw-dots button{height:44px;padding:19px 8px}.bw-dots button.on::after{inset:19px 8px}}
@media (max-width:640px){
  .steps.timeline.compact{gap:5px}
  .steps.timeline.compact .step{padding:12px 3px}
  .steps.timeline.compact .step .step-t{font-size:13px;hyphens:manual;overflow-wrap:normal;word-break:normal}
  .results .stat .stat-num{white-space:nowrap;font-size:clamp(12px,3.7vw,15.5px);letter-spacing:-.02em}
  .svc-links{grid-template-columns:1fr 1fr;column-gap:16px}
  .svc-links a{font-size:15px;line-height:1.3}
}
/* testi su fondo navy sempre chiari; bottone oro sempre con testo navy */
.band .rich h2,.band .rich h3,.band .rich h4,.band .rich h5{color:#FFFFFF}
.more a.btn-gold,.band a.btn-gold,a.btn.btn-gold{color:var(--navy)}
.band .rich b,.band .card b,.band .checks b{color:#FFFFFF}
.vs-good .proof b,.vs-good .proof strong,.vs-good .rich b,.vs-good .rich strong{color:#FFFFFF}
/* hero con modulo o colonna laterale: su telefono titolo e testo prima, modulo dopo */
@media (max-width:980px){
  .hero:not(.home-hero):not(.solo) .wrap > .form-card,.hero:not(.home-hero):not(.solo) .wrap > .stack{order:4;position:relative;top:0;margin-top:10px}
}
@media (max-width:640px){.steps.timeline.compact .step .step-t{font-size:13.5px;letter-spacing:-.01em}}

/* numeri su telefono come nella home */
.mtabs{display:none}
@media (max-width:600px){
  .mtabs{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:6px;margin-bottom:14px}
  .mtab{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:4px;align-content:start;justify-items:center;text-align:center;padding:12px 3px 10px;min-height:64px;border-radius:12px;background:rgba(10,15,31,.045);border-bottom:3px solid transparent;transition:background .3s,border-color .3s}
  .mtab:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .mt-num{font:800 clamp(13px,3.9vw,16px)/1.1 var(--f-head);color:var(--gold-ink);white-space:nowrap;letter-spacing:-.02em}
  .mt-num span{font:inherit;color:inherit}
  .mt-t{font:700 12px/1.25 var(--f-body);color:var(--muted);hyphens:auto;overflow-wrap:break-word;max-width:100%}
  .mtab.on{background:rgba(212,175,55,.15);border-bottom-color:var(--gold)}
  .mtab.on .mt-t{color:var(--navy)}
  .band .mtab{background:rgba(255,255,255,.05)}
  .band .mt-num{color:var(--gold)}
  .band .mt-t{color:var(--band-text)}
  .band .mtab.on .mt-t{color:#FFFFFF}
  .has-mtabs{display:block !important}
  .has-mtabs > *{display:none !important}
  .has-mtabs > .m-on{display:grid !important;animation:statIn .45s ease}
  .has-mtabs > .m-on > .stat-num,.has-mtabs > .m-on > .num,.has-mtabs > .m-on > .stat-t,.has-mtabs > .m-on > .card-t{display:none !important}
  .has-mtabs > .m-on.card{padding:20px 20px 22px}
  /* compteurs affiancati */
  .counters,.counters.n2,.counters.n3{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;margin-top:28px;padding-top:22px}
  .counter{padding:0 2px}
  .counter strong{font-size:clamp(18px,5.4vw,24px);white-space:nowrap;letter-spacing:-.02em}
  .counter span{font-size:13.5px;line-height:1.3}
}

/* === popup:start === */
/* finestre dei 4 obiettivi del menu */
.pmx-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px}
.pmx-modal[hidden]{display:none}
.pmx-modal-bg{position:absolute;inset:0;background:rgba(6,10,22,.72);backdrop-filter:blur(3px);animation:pmxFade .25s ease}
.pmx-modal-box{position:relative;width:min(680px,100%);max-height:calc(100vh - 36px);display:flex;animation:pmxUp .3s cubic-bezier(.2,.9,.25,1)}
.pmx-modal-box > .pmx-quiz{width:100%;display:flex}
@keyframes pmxFade{from{opacity:0}to{opacity:1}}
@keyframes pmxUp{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
body.pmx-locked{overflow:hidden}
.pmx-quiz{font-family:var(--f-body);-webkit-font-smoothing:antialiased;line-height:1.4}
.pmx-quiz .W{width:100%;max-width:680px;margin:0 auto}
.pmx-quiz .K{background:linear-gradient(170deg,#0f1629,#0a0f1f);border:1px solid rgba(212,175,55,.12);border-radius:20px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.5);display:flex;flex-direction:column;max-height:92vh}
.pmx-quiz .H{padding:12px 18px;border-bottom:1px solid rgba(212,175,55,.12);display:flex;align-items:center;justify-content:space-between;background:rgba(212,175,55,.02)}
.pmx-quiz .SB{display:flex;align-items:center;padding:14px 18px 4px}
.pmx-quiz .sd{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;border:2px solid transparent;transition:all .3s;flex-shrink:0}
.pmx-quiz .sd.on{background:linear-gradient(135deg,#d4af37,#b8941f);color:#0a0f1f;border-color:#d4af37}
.pmx-quiz .sd.ok{background:rgba(212,175,55,.12);color:#d4af37;border-color:rgba(212,175,55,.2);font-size:9px}
.pmx-quiz .sd.off{background:rgba(255,255,255,.04);color:#64748b;border-color:rgba(255,255,255,.06)}
.pmx-quiz .sl{flex:1;height:2px;background:rgba(255,255,255,.05);overflow:hidden}
.pmx-quiz .sl i{display:block;height:100%;width:0;background:linear-gradient(90deg,#d4af37,#e8cc6e);transition:width .4s}
.pmx-quiz .sl.ok i{width:100%}
.pmx-quiz .BD{padding:14px 18px 18px;overflow-y:auto;flex:1;min-height:0}
.pmx-quiz .sc{display:none;animation:.3s both pmxS}
.pmx-quiz .sc.on{display:block}
@keyframes pmxS{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.pmx-quiz .K{max-height:calc(100vh - 36px)}
@media (max-width:600px){.pmx-modal{padding:10px}.pmx-quiz .BD{padding:12px 14px 16px}.pmx-quiz .H{padding:10px 14px}}
/* simulatori in popup: scatola che scorre dentro lo schermo, bottone di chiusura sempre visibile */
.pmx-panel-sim .pmx-modal-box{width:min(680px,100%);display:block}
.pmx-sim-scroll{max-height:calc(100vh - 36px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.pmx-x{position:absolute;top:-16px;right:-16px;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(10,15,31,.78);color:#fff;font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center}
.pmx-x:hover{background:#0A0F1F;border-color:#D4AF37;color:#F0D98A}
@media (max-width:600px){.pmx-sim-scroll{max-height:calc(100vh - 60px)}.pmx-panel-sim .pmx-modal-box{margin-top:24px}.pmx-x{top:-20px;right:-4px}}
@media (prefers-reduced-motion:reduce){.pmx-modal-bg,.pmx-modal-box{animation:none}}
/* === popup:end === */

/* messaggio se l'invio di un modulo non riesce */
.form-err{grid-column:1/-1;margin:4px 0 0;padding:10px 12px;border-radius:10px;background:#FDECEC;color:#9B1C1C;font-weight:600;font-size:14.5px;line-height:1.45}
.chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

/* === pannelli (18 set 2026): scaricati al clic, fondo pieno, a schermo intero su telefono === */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
html.pmx-wait,html.pmx-wait a{cursor:progress}
.pmx-modal-bg{background:rgba(6,10,22,.86);backdrop-filter:blur(6px)}
.pmx-modal-box{background:#0B1226;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.pmx-panel-quiz .pmx-modal-box{overflow:hidden}
.pmx-panel-step .pmx-modal-box{width:min(560px,100%);overflow:hidden;border:1px solid rgba(212,175,55,.28)}
.pmx-step{position:relative;width:100%;padding:28px 30px 30px;color:#E8EDF6;background:linear-gradient(170deg,#111C3A 0%,#0A0F1F 75%);--ps:.5;max-height:calc(100vh - 36px);overflow-y:auto}
.ps-x{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:transparent;color:#AAB6C8;font-size:17px;cursor:pointer;display:grid;place-items:center}
.ps-x:hover{border-color:#D4AF37;color:#F0D98A}
.ps-kicker{margin:0 48px 8px 0;font-size:14px;line-height:1.45;color:#8FC3E6}
.ps-title{margin:0 48px 14px 0;font:800 27px/1.18 var(--f-head);color:#F0D98A;letter-spacing:-.01em;text-wrap:balance}
.ps-badge{display:inline-block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#8FC3E6;border:1px solid rgba(95,176,223,.35);border-radius:999px;padding:6px 12px;margin-bottom:18px}
.ps-bar{height:6px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden}
.ps-bar i{display:block;height:100%;width:calc(var(--ps) * 100%);background:linear-gradient(90deg,#D4AF37,#F0D98A);transition:width .35s ease}
.ps-count{margin:8px 0 20px;font-size:13.5px;color:#AAB6C8}.ps-count b{color:#fff}
.ps-step{border:0;margin:0;padding:0;display:grid;gap:14px;min-width:0;animation:psIn .3s ease both}
.ps-step[hidden]{display:none}
@keyframes psIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.ps-f{display:grid;gap:7px;font-size:14.5px;font-weight:600;color:#E8EDF6}
.ps-f b{color:#F0A79D;font-weight:700}
.ps-f input{min-height:52px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;padding:0 15px;font:500 16px var(--f-body);width:100%}
.ps-f input::placeholder{color:#7C8AA5}
.ps-f input:focus{outline:2px solid #D4AF37;outline-offset:1px;border-color:transparent;background:rgba(255,255,255,.09)}
.ps-go{width:100%;justify-content:center;min-height:54px;margin-top:6px;font-size:16px}
.ps-actions{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}
.ps-actions .ps-go{margin-top:0}
.ps-back{background:none;border:0;color:#AAB6C8;font:600 15px var(--f-body);cursor:pointer;padding:12px 10px;min-height:52px;border-radius:10px}
.ps-back:hover{color:#fff;background:rgba(255,255,255,.06)}
.pmx-step .form-err{background:rgba(228,104,91,.16);color:#F7C2BA}
.pmx-panel-sim .pmx-modal-box{background:transparent;box-shadow:none;border-radius:0}
@media (max-width:600px){
  .pmx-modal{padding:0;place-items:stretch}
  .pmx-modal-box,.pmx-panel-step .pmx-modal-box{width:100%;height:100dvh;max-height:none;border-radius:0;border:0;animation:psSheet .28s ease both}
  .pmx-step{max-height:none;min-height:100dvh;padding:22px 18px calc(28px + env(safe-area-inset-bottom))}
  .ps-title{font-size:24px}
  .pmx-panel-quiz .pmx-quiz,.pmx-panel-quiz .pmx-quiz .W{height:100%}
  .pmx-panel-quiz .pmx-quiz .K{max-height:100dvh;height:100dvh;border-radius:0;border:0}
  .pmx-panel-sim .pmx-modal-box{background:#0A0F1F}
  .pmx-panel-sim .pmx-sim-scroll,.pmx-panel-sim .pmx-modal-box > div{max-height:100dvh}
  .pmx-panel-sim .pmx-x{top:8px;right:8px}
}
@keyframes psSheet{from{transform:translateY(24px);opacity:.4}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.ps-step,.pmx-modal-box{animation:none}.ps-bar i{transition:none}}
/* simulatori: X dentro la testata (senza coprire il badge), a schermo intero su telefono */
.pmx-panel-sim .pmx-x{top:9px;right:10px;width:40px;height:40px}
.pmx-panel-sim [id^="pmx-"] .H{padding-right:62px!important}
@media (max-width:600px){
  .pmx-panel-sim .pmx-modal-box{margin-top:0!important;height:100dvh}
  .pmx-panel-sim .pmx-sim-scroll{height:100dvh;max-height:none!important;border-radius:0;box-shadow:none;overflow:hidden}
  .pmx-panel-sim [id^="pmx-"],.pmx-panel-sim [id^="pmx-"] .W{height:100%}
  .pmx-panel-sim [id^="pmx-"] .K{height:100dvh!important;max-height:none!important;border-radius:0!important;border:0!important}
  .pmx-panel-sim .pmx-x{top:5px;right:6px}
}
/* diagnostico: esclusività solo per marketing e acquisizione */
.ps-excl{border:1px solid rgba(95,176,223,.28);background:rgba(95,176,223,.07);border-radius:14px;padding:12px 14px;margin-bottom:18px;display:grid;gap:8px}
.ps-excl .ps-badge{margin:0;justify-self:start}
.ps-note{margin:0;font-size:14px;line-height:1.5;color:#C9D6E8}
/* ruota « méthode / piliers » su telefono: ruota + elenco completo agganciati insieme, riempiono lo schermo */
@media (max-width:980px){
  .method.m-sticky{gap:14px;align-content:start;justify-items:center}
  .method.m-sticky .wheel{width:var(--wsize,60vw);max-width:none;container-type:inline-size}
  .method.m-sticky .w-center{inset:26%;gap:2px}
  .method.m-sticky .w-n{font-size:clamp(20px,17cqw,44px)}
  .method.m-sticky .w-n .ico-live{width:clamp(22px,17cqw,52px);height:clamp(22px,17cqw,52px)}
  .method.m-sticky .w-t{font-size:clamp(11px,7.2cqw,17px);line-height:1.15}
  .method.m-sticky .msteps{width:100%;gap:8px;min-height:var(--listmax,auto);align-content:start}
  .method.m-sticky .mstep button{padding:12px 16px;gap:12px}
  .method.m-sticky .ms-t{font-size:16.5px}
  .method.m-sticky .ms-body,.method.m-sticky .ms-d p{padding-left:16px!important;padding-right:16px;font-size:15px;line-height:1.5}
  .method.m-sticky .ms-body p + p{margin-top:6px}
  .method.m-sticky.m-measure .ms-d{transition:none!important}
  .method.m-sticky .wn{cursor:pointer}
}
/* telefoni bassi (es. iPhone SE): elenco più compatto perché ruota ed elenco stiano insieme nello schermo */
@media (max-width:980px) and (max-height:760px){
  .method.m-sticky{gap:10px}
  .method.m-sticky .msteps{gap:6px}
  .method.m-sticky .mstep button{padding:9px 14px}
  .method.m-sticky .ms-t{font-size:15.5px}
  .method.m-sticky .ms-body,.method.m-sticky .ms-d p{font-size:14px;line-height:1.45}
  .method.m-sticky .mstep.on .ms-body,.method.m-sticky .mstep.on .ms-d p{padding-bottom:12px}
}
/* ruota su telefono: elenco più compatto per lasciare più spazio alla ruota */
@media (max-width:980px){
  .method.m-sticky{gap:10px}
  .method.m-sticky .msteps{gap:6px}
  .method.m-sticky .mstep button{padding:9px 14px;gap:10px}
  .method.m-sticky .ms-n .ico-live{width:22px;height:22px}
  .method.m-sticky .ms-t{font-size:15.5px;line-height:1.25}
  .method.m-sticky .ms-body,.method.m-sticky .ms-d p{font-size:14.5px;line-height:1.45}
  .method.m-sticky .mstep.on .ms-body,.method.m-sticky .mstep.on .ms-d p{padding-bottom:12px}
  .method.m-sticky .ms-body p + p{margin-top:4px}
}
@media (max-width:980px) and (max-height:760px){
  .method.m-sticky .mstep button{padding:7px 12px}
  .method.m-sticky .ms-t{font-size:15px}
  .method.m-sticky .ms-body,.method.m-sticky .ms-d p{font-size:14px;line-height:1.4}
}
/* centro della ruota: dissolvenza breve quando cambia la leva */
.w-center{transition:opacity .17s ease,transform .17s ease}
.w-center.w-fade{opacity:0;transform:scale(.94)}
@media (prefers-reduced-motion:reduce){.w-center{transition:none}}
/* ruota su telefono: righe delle leve ferme, testo della leva attiva in una scheda sotto (dissolvenza, niente scatti) */
.m-detail{display:none}
@media (max-width:980px){
  .method.m-sticky .ms-d{display:none}
  .method.m-sticky .msteps{min-height:0}
  .method.m-sticky .mstep.on{border-color:rgba(212,175,55,.75);box-shadow:0 8px 22px rgba(10,15,31,.07);background:#FFFCF3}
  .method.m-sticky .m-detail{display:block;width:100%;box-sizing:border-box;border:1px solid rgba(212,175,55,.45);border-radius:14px;background:#fff;padding:12px 16px;color:var(--muted);font-size:14.5px;line-height:1.45;transition:opacity .16s ease,transform .16s ease}
  .method.m-sticky .m-detail.d-fade{opacity:0;transform:translateY(6px)}
  .method.m-sticky .m-detail .ms-body,.method.m-sticky .m-detail p{padding:0!important;margin:0;overflow:visible;font-size:inherit;line-height:inherit}
  .method.m-sticky .m-detail p + p{margin-top:6px}
  .band .method.m-sticky .m-detail{background:#0F1730;border-color:var(--navy-line);color:var(--band-text)}
  .band .method.m-sticky .mstep.on{background:#121B38}
}
@media (max-width:980px) and (max-height:760px){.method.m-sticky .m-detail{font-size:14px;line-height:1.4;padding:10px 14px}}
@media (prefers-reduced-motion:reduce){.method.m-sticky .m-detail{transition:none}}
/* === leve « méthode » su telefono: schede che si impilano scorrendo (al posto della ruota) === */
@media (max-width:980px){
  .method.m-stack{display:block}
  .method.m-stack .wheel{display:none}
  .method.m-stack .msteps{display:block}
  .method.m-stack .mstep{position:sticky;top:calc(var(--hh,64px) + 16px + var(--i) * 14px);margin:0 0 22px;background:#fff;border:1px solid rgba(212,175,55,.55);border-radius:20px;box-shadow:0 12px 32px rgba(10,15,31,.10),0 -2px 12px rgba(10,15,31,.05);transform-origin:50% 0;will-change:transform}
  .method.m-stack .mstep:last-child{margin-bottom:0}
  .method.m-stack .mstep button{cursor:default;padding:20px 20px 12px;gap:12px;align-items:center}
  .method.m-stack .ms-n{color:var(--gold-ink)}
  .method.m-stack .ms-n .ico-live{width:30px;height:30px;color:var(--gold-ink)}
  .method.m-stack .ms-t{font-size:19px;line-height:1.25}
  .method.m-stack .ms-count{margin-left:auto;padding-left:8px;font:700 12px/1 var(--f-body);letter-spacing:.1em;color:var(--gold-ink);white-space:nowrap}
  .method.m-stack .ms-d{grid-template-rows:1fr;transition:none}
  .method.m-stack .ms-body{padding:0 20px 20px!important;font-size:15.5px;line-height:1.55}
  .method.m-stack .ms-body p{padding:0!important}
  .method.m-stack .ms-d > p{padding:0 20px 20px 66px!important;font-size:15.5px;line-height:1.55}
  .method.m-stack .ms-body p.ms-res,.method.m-stack .ms-d > p.ms-res{margin-top:12px;padding:10px 12px!important;border-radius:12px;background:#FBF3DC;color:#6B5418;font-weight:700}
  .band .method.m-stack .mstep{background:#0F1730;border-color:var(--navy-line)}
  .band .method.m-stack .ms-body p.ms-res{background:rgba(212,175,55,.14);color:#F0D98A}
}
@media (prefers-reduced-motion:reduce){.method.m-stack .mstep{position:relative;top:auto}}

/* blog su WordPress: schede dinamiche, categoria attiva, grafici degli articoli */
.posts .post[hidden]{display:none!important}
.band .chip:first-child,.band .chip[aria-current="page"]{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.band .chips.has-current .chip:first-child{background:#fff;border-color:var(--line);color:var(--navy)}
.article figure.chart{margin:0}
.article figure.chart svg{display:block;width:100%;height:auto;border-radius:12px}

/* racconti: la domanda breve rilancia la lettura, la frase finale chiude (testi identici, solo impaginazione) */
.rich.story .st-q{font-weight:800;color:var(--navy);font-size:1.1em;line-height:1.4;padding-left:14px;border-left:3px solid var(--gold);margin-top:6px}
.rich.story .st-end{font-weight:800;color:var(--navy)}
.band .rich.story .st-q,.band .rich.story .st-end{color:#fff}
/* loghi dei clienti: leggibili, non sbiaditi */
.logos-row img{opacity:1;height:76px}

/* siti realizzati (landing création site web): come lo slider del live — tre per riga, il sito scorre nella cornice,
   da solo sul telefono, al passaggio del mouse sul computer; frecce oro e avanzamento automatico */
.show-wrap{position:relative}
.showcase{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 18px}
.showcase::-webkit-scrollbar{display:none}
.show-card{flex:0 0 calc(33.333% - 16px);min-width:270px;margin:0;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-card);overflow:hidden;display:grid}
.show-bar i:nth-child(1){background:#FF5F56}.show-bar i:nth-child(2){background:#FFBD2E}.show-bar i:nth-child(3){background:#27C93F}
.show-shot{position:relative;aspect-ratio:4/3;overflow:hidden;background:#fff;container-type:size}
.show-shot img{position:absolute;top:0;left:0;width:100%;height:auto;display:block;transition:transform 7s cubic-bezier(.25,.1,.25,1);will-change:transform}
.show-card:hover .show-shot img{transform:translateY(calc(-100% + 100cqh))}
@keyframes show-scroll{0%,12%{transform:translateY(0)}88%,100%{transform:translateY(calc(-100% + 100cqh))}}
@media (hover:none){.show-shot img{animation:show-scroll 14s ease-in-out infinite alternate}}
.show-arrow{position:absolute;top:42%;z-index:2;width:46px;height:46px;border:0;border-radius:50%;background:var(--gold);color:var(--navy);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 20px rgba(10,15,31,.18)}
.show-arrow.prev{left:-12px}.show-arrow.next{right:-12px}
@media (max-width:900px){.show-card{flex-basis:calc(50% - 12px)}}
@media (max-width:600px){.show-card{flex-basis:86%}.show-arrow{width:40px;height:40px;font-size:24px}.show-arrow.prev{left:-4px}.show-arrow.next{right:-4px}}
@media (prefers-reduced-motion:reduce){.show-shot img{transition:none;animation:none}}
/* allineamenti: passi riga per riga (numero, titolo, testo alla stessa altezza), riga d'indirizzo sottile, bottoni affiancati nelle CTA */
@media (min-width:761px){.steps > .step:not(:has(> :nth-child(4))){grid-row:span 3;grid-template-rows:subgrid;row-gap:10px;align-content:start}}
.sec.slim{padding:30px 0}
.cta-copy .actions .btn{padding:14px 18px}
/* elenco « ce qui est inclus » sotto un titolo: una scheda compatta al centro, non due colonne sparse su tutta la larghezza */
.sec-head + .cols.c2:has(> .stack > .checks:only-child){max-width:880px;margin-left:auto;margin-right:auto;padding:30px 34px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-card);gap:12px 40px}
.sec-head h2 + h3.h-sec{font-size:clamp(20px,1.8vw,24px);margin-top:4px}
@media (max-width:760px){.sec-head + .cols.c2:has(> .stack > .checks:only-child){padding:22px 20px}}
/* elenco con icone dentro un blocco centrato (es. stelle « Note de 5/5 »): centrato anche lui */
.stack.t-center > .checks{justify-self:center}
/* valutazione a stelle: oro, centrate */
.stars{color:var(--gold);font-size:28px;letter-spacing:2px;line-height:1;text-align:center;margin:0}
/* armonia delle schede: nella stessa griglia icona, titolo, testo e bottone alla stessa altezza da una scheda all'altra */
@media (min-width:761px){.cards.rows > .card{grid-row:span var(--rows);grid-template-rows:subgrid;row-gap:12px;align-content:start}}
/* lettura guidata: testi lunghi e articoli — le frasi si accendono scorrendo, barra oro a sinistra (senza JS o con « riduci animazioni »: testo normale) */
.js-read .lecture{position:relative;padding-left:24px}
.js-read .lecture::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:3px;background:var(--line)}
.js-read .lecture > .read-bar{position:absolute;left:0;top:6px;width:3px;max-height:calc(100% - 12px);height:0;border-radius:3px;background:var(--gold);transition:height .25s linear;pointer-events:none}
.js-read .lecture.t-center,.js-read .t-center > .lecture{padding-left:0}
.js-read .lecture.t-center::before,.js-read .lecture.t-center > .read-bar,.js-read .t-center > .lecture::before,.js-read .t-center > .lecture > .read-bar{display:none}
.js-read .rich.lecture p,.js-read .rich.lecture li,.js-read .lecture .rich p,.js-read .lecture .rich li,.js-read .lecture .rich blockquote{transition:color .45s ease}
.js-read .rich.lecture p:not(.on),.js-read .rich.lecture li:not(.on),.js-read .lecture .rich p:not(.on),.js-read .lecture .rich li:not(.on),.js-read .lecture .rich blockquote:not(.on){color:#B4BFCE}
.js-read .rich.lecture :is(p,li):not(.on) *,.js-read .lecture .rich :is(p,li,blockquote):not(.on) *{color:inherit}
.js-read .band .rich.lecture p:not(.on),.js-read .band .rich.lecture li:not(.on){color:rgba(227,233,241,.35)}
.js-read .band .lecture::before{background:rgba(255,255,255,.14)}
.js-read .band .rich.lecture p.on,.js-read .band .rich.lecture li.on{color:#E3E9F1}
@media (max-width:760px){.js-read .lecture{padding-left:16px}}
/* titolo che segue la ruota / le schede impilate nella stessa sezione: respiro prima della nuova idea */
.method-track + .h-sec,.method + .h-sec{margin-top:64px}
/* grafici degli articoli: su fondo navy come nella home (contrasto), barre oro e blu Promaxis */
.article figure.chart{background:#0D1526;border-radius:16px;padding:16px;box-shadow:0 12px 30px rgba(10,15,31,.14)}
.article .note:has(> figure.chart:only-child){background:none;border:0;padding:0;box-shadow:none}

/* tabelle degli articoli: nello stile delle schede del sito — contenitore bianco arrotondato, intestazione navy sfumata con filo oro,
   righe ariose, prima colonna e cifre in evidenza, fonte in piccolo sotto; su telefono una scheda per riga con titolo su fascia navy */
.article .table-wrap{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-card);overflow:hidden;overflow-x:auto}
.article .table-wrap table{font-family:var(--f-body);font-size:15.5px;border-collapse:separate;border-spacing:0}
.article .table-wrap thead tr,.article .table-wrap tr.t-head{background-color:#0F1830;background-image:linear-gradient(90deg,#0A0F1F 0%,#1B2744 100%)}
.article .table-wrap thead th,.article .table-wrap tr.t-head > *{background:transparent;color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:16px 20px;border-bottom:2px solid var(--gold)}
.article .table-wrap thead th:first-child,.article .table-wrap tr.t-head > :first-child{color:var(--gold)}
.article .table-wrap td{padding:16px 20px;border-bottom:1px solid #EEF1F5;color:#334155;line-height:1.55;background:#fff;transition:background .2s}
.article .table-wrap tbody tr:last-child td{border-bottom:0}
.article .table-wrap tbody tr:hover td{background:#F8FAFC}
.article .table-wrap td:first-child{color:var(--navy);font-weight:700}
.article .table-wrap td.t-val{color:var(--navy);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.article .table-wrap tr.hl td{background:#FFF8E6}
.article .table-wrap tr.hl td:first-child{box-shadow:inset 4px 0 0 var(--gold)}
.article .table-wrap caption{caption-side:bottom;text-align:left;padding:12px 20px 14px;font-size:13.5px;line-height:1.5;color:var(--muted);background:#FAFBFC;border-top:1px solid #EEF1F5}
@media (max-width:760px){
  /* telefono: una scheda per riga, sobria — titolo navy, etichette piccole e grigie, un solo filo oro in alto */
  .article .table-wrap{border:0;box-shadow:none;border-radius:0;background:none;overflow:visible}
  .article .rtable tbody{gap:12px}
  .article .rtable tr{border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:14px;padding:6px 0;overflow:hidden;box-shadow:0 6px 18px rgba(10,15,31,.05);background:#fff}
  .article .rtable tr > *{display:block;padding:8px 16px;border:0;white-space:normal;background:none !important;color:#334155;font-weight:400}
  .article .rtable tr > *::before{display:block;margin-bottom:2px;font-size:12px;letter-spacing:.02em;text-transform:none;color:#64748B;font-weight:600}
  .article .rtable tr > :first-child{color:var(--navy);font-weight:700;font-size:16.5px;line-height:1.35;padding:12px 16px;margin:-6px 0 4px;background:#EAF2FA !important;border-bottom:1px solid #D6E4F2}   /* un tocco di blu Promaxis sul titolo */
  .article .rtable tr > :first-child::before{color:#3A6A93}
  .article .rtable tr > :first-child::before{content:attr(data-label)}
  .article .rtable tr > :first-child:not([data-label])::before{content:none}
  .article .rtable td.t-val{color:var(--navy);font-weight:700}
  .article .rtable tr.hl{background:#FFFBEF}
  .article .rtable caption{display:block;padding:10px 4px 0;background:none;border:0;font-size:13px}
}

/* telefono: contatore « 01 / 04 » delle schede impilate leggibile (min 13,5 px) */
.method.m-stack .ms-count{font-size:13.5px}
/* link lunghi nei testi (indirizzi web interi, frasi linkate): vanno a capo, mai più larghi dello schermo */
.rich a,.article a{white-space:normal;overflow-wrap:anywhere}
.rich,.article,.card,.faq{overflow-wrap:anywhere}   /* indirizzi web scritti nel testo: vanno a capo invece di allargare la pagina */
/* assistente Promax: testi leggibili (min 14 px), risposte su più righe, link visibili, campo di testo a 16 px (niente zoom su iPhone) */
.pmx-chat .pmx-bubble{font-size:14.5px !important;line-height:1.5 !important;white-space:pre-line}
.pmx-chat .pmx-bubble a{color:#8FC5EA;text-decoration:underline;overflow-wrap:anywhere}
.pmx-chat .pmx-choice-btn{font-size:14px !important}
.pmx-chat input,.pmx-chat textarea{font-size:16px !important}
/* voci di elenco che sono link interni (come sul live): leggibili come testo, sottolineatura oro discreta */
.checks a{color:inherit;text-decoration:underline;text-decoration-color:rgba(212,175,55,.7);text-underline-offset:3px}
/* À propos: « (externe) » alla fine della descrizione dei collaboratori */
.profile-body p .ext{font-weight:600;color:var(--muted);white-space:nowrap}

/* hero-stats 2x2 su telefono (4 cifre: niente 3+1), voluto dall'utente il 19 set 2026 */
@media (max-width:600px){.hero-stats:has(> div:nth-child(4)){display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-card);overflow:hidden}.hero-stats:has(> div:nth-child(4)) > div{padding:16px 16px 15px;gap:6px}.hero-stats:has(> div:nth-child(4)) > div:nth-child(odd){border-right:1px solid var(--line)}.hero-stats:has(> div:nth-child(4)) > div:nth-child(n+3){border-top:1px solid var(--line)}.hero-stats:has(> div:nth-child(4)) span{font-size:13.5px;line-height:1.3}}

/* === 19 set 2026 · header, menu telefono, torna su, bot Promax (richieste dell'utente) === */
/* header: logo +13 % con respiro; il logo non si schiaccia mai (prima su telefoni stretti si riduceva in larghezza) */
.hdr .wrap{height:86px}
.hdr .logo{flex:0 0 auto}
.hdr .logo img{height:50px;width:auto}
.burger{flex:0 0 44px}
.hdr .btn{flex:0 1 auto;min-width:0}
@media (max-width:1024px){.mnav{top:86px}}
@media (min-width:1025px) and (max-width:1120px){.nav{gap:14px;font-size:14px}.hdr .wrap{gap:14px}.hdr .btn{padding:12px 16px;font-size:14.5px}}
@media (max-width:600px){
  .hdr .wrap{height:72px;gap:12px}
  .hdr .logo{padding:0}
  .hdr .logo img{height:38px}
  .mnav{top:72px}
}
@media (max-width:400px){.hdr .wrap{gap:10px}.hdr .logo img{height:37px}.burger{margin-left:6px}}
@media (max-width:370px){.hdr .logo img{height:35px}.hdr .btn{font-size:12.5px;padding:10px 9px}}
/* menu telefono: solo le voci principali, i gruppi si aprono al tocco */
.mnav .mgrp{border-bottom:1px solid var(--line)}
.mnav .mgrp summary{display:flex;align-items:center;justify-content:space-between;padding:14px 4px;font-size:17px;font-weight:600;color:var(--navy);cursor:pointer;list-style:none}
.mnav .mgrp summary::-webkit-details-marker{display:none}
.mnav .mgrp summary .ico{width:20px;height:20px;color:var(--gold-ink);transition:transform .2s}
.mnav .mgrp[open] summary .ico{transform:rotate(180deg)}
.mnav .mgrp[open] summary{color:var(--gold-ink)}
.mnav .mgrp .sub{padding-bottom:6px}
.mnav .mgrp .sub a:last-child{border-bottom:0}
/* torna su: compare dopo un po' di scorrimento, sopra il pulsante di Promax */
.to-top{position:fixed;z-index:10000;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--navy);display:grid;place-items:center;box-shadow:0 6px 18px rgba(10,15,31,.16);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s,transform .25s,visibility .25s,border-color .2s,color .2s}
.to-top.on{opacity:1;visibility:visible;transform:none}
.to-top .ico{width:20px;height:20px}
.to-top:hover{border-color:var(--gold);color:var(--gold-ink)}
.to-top:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
body:has(.pmx-toggle.open) .to-top,body:has(.mnav.open) .to-top{opacity:0;visibility:hidden}
@media (prefers-reduced-motion:reduce){.to-top{transition:none}}
/* bot Promax: la faccia della mascotte sul pulsante, anello oro, pallino verde « en ligne » */
.pmx-toggle{padding:0 !important;background:#0F1830 !important;border:2px solid #D4AF37 !important;box-shadow:0 6px 18px rgba(10,15,31,.28) !important;animation:pmx-pulse-gold 2.6s infinite !important}
.pmx-toggle.open{animation:none !important}
.pmx-toggle .pmx-face{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.pmx-toggle.open .pmx-face{display:none}
.pmx-toggle:has(.pmx-face) svg.pmx-icon-chat{display:none !important}
.pmx-toggle svg{fill:#fff !important}
.pmx-toggle::after{content:"";position:absolute;right:0;bottom:1px;width:13px;height:13px;border-radius:50%;background:#22C55E;border:2px solid #fff}
.pmx-toggle.open::after{display:none}
@media (min-width:761px){.pmx-cta-bubble{right:92px !important}}
@keyframes pmx-pulse-gold{0%{box-shadow:0 6px 18px rgba(10,15,31,.28),0 0 0 0 rgba(212,175,55,.45)}70%{box-shadow:0 6px 18px rgba(10,15,31,.28),0 0 0 12px rgba(212,175,55,0)}100%{box-shadow:0 6px 18px rgba(10,15,31,.28),0 0 0 0 rgba(212,175,55,0)}}
@media (prefers-reduced-motion:reduce){.pmx-toggle{animation:none !important}}
/* posizioni dei pulsanti fissi, tutte qui (il bot non le forza più in linea): Promax in basso a destra, « torna su » sopra di lui,
   la chat sopra il pulsante; più in alto quando c'è la barra « Un appel rapide » (telefono) o il banner dei cookie */
/* « html body » batte la vecchia regola del CSS aggiuntivo di WordPress (.pmx-toggle{bottom:80px !important}) */
html body .pmx-toggle{right:24px !important;bottom:24px !important;width:56px !important;height:56px !important}
.to-top{right:30px;bottom:92px}
.pmx-chat{right:24px !important;bottom:92px !important}
body:has(#pcc-banner:not([style*="none"])) .pmx-toggle{bottom:72px !important}
body:has(#pcc-banner:not([style*="none"])) .to-top{bottom:140px}
body:has(#pcc-banner:not([style*="none"])) .pmx-chat{bottom:140px !important}
body:has(#pcc-banner:not([style*="none"])) .pmx-cta-bubble{bottom:84px !important}
@media (max-width:760px){
  html body .pmx-toggle{right:16px !important;bottom:calc(16px + env(safe-area-inset-bottom,0px)) !important;width:52px !important;height:52px !important}
  .to-top{right:21px;bottom:calc(80px + env(safe-area-inset-bottom,0px));width:42px;height:42px}
  .pmx-chat{right:12px !important;bottom:calc(80px + env(safe-area-inset-bottom,0px)) !important}
  .pmx-cta-bubble{right:8px !important;bottom:calc(76px + env(safe-area-inset-bottom,0px)) !important}
  body:has(.call-bar) .pmx-toggle{bottom:calc(86px + env(safe-area-inset-bottom,0px)) !important}
  body:has(.call-bar) .to-top,body:has(.call-bar) .pmx-chat{bottom:calc(150px + env(safe-area-inset-bottom,0px)) !important}
  body:has(.call-bar) .pmx-cta-bubble{bottom:calc(146px + env(safe-area-inset-bottom,0px)) !important}
  body:has(#pcc-banner:not([style*="none"])) .pmx-toggle{bottom:calc(126px + env(safe-area-inset-bottom,0px)) !important}
  body:has(#pcc-banner:not([style*="none"])) .to-top,body:has(#pcc-banner:not([style*="none"])) .pmx-chat{bottom:calc(190px + env(safe-area-inset-bottom,0px)) !important}
  body:has(#pcc-banner:not([style*="none"])) .pmx-cta-bubble{bottom:calc(186px + env(safe-area-inset-bottom,0px)) !important}
}
