/* CBRswissRR case study: stile proprio, separato dal resto del sito */
:root{--bg:#09090a;--a:#ff2a1a;--ink:#f2efe9;--mut:#8a8782;--line:rgba(242,239,233,.14);--asph:#121214;--g:clamp(18px,4.2vw,72px);
--d:'Anton','Impact',sans-serif;--b:'Barlow Semi Condensed','Helvetica Neue',Arial,sans-serif;--m:'Space Mono',ui-monospace,monospace}
*,*::before,*::after{box-sizing:border-box;margin:0}
html{background:var(--bg)}
body{background:var(--bg);color:var(--ink);font:400 clamp(17px,1.35vw,20px)/1.55 var(--b);overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--a);color:#fff}
:focus-visible{outline:2px solid var(--a);outline-offset:3px}
/* grana pellicola + avvio */
#grain{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:gr .9s steps(5) infinite}
@keyframes gr{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
#boot{position:fixed;inset:0;z-index:200;background:radial-gradient(70% 55% at 50% 52%,rgba(5,5,5,.62),rgba(5,5,5,.94));display:grid;place-items:center;transition:opacity .35s ease}
#boot .bg{width:clamp(130px,17vw,210px);display:flex;flex-direction:column;align-items:center}
#boot svg{width:100%;overflow:visible}
#boot .a0{fill:none;stroke:rgba(255,255,255,.18);stroke-width:2;stroke-linecap:round}
#boot .a1{fill:none;stroke:var(--a);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 5px rgba(255,42,26,.7))}
#boot line{stroke:#fff;stroke-width:2;stroke-linecap:round;transform-origin:60px 62px;transform:rotate(-120deg)}
#boot .rd{display:flex;align-items:baseline;gap:8px;margin-top:-6px}
#boot b{font:400 clamp(34px,4.6vw,58px)/1 var(--d);font-variant-numeric:tabular-nums;min-width:2.3ch;text-align:right}
#boot span{font:700 11px var(--m);letter-spacing:.24em;color:var(--mut)}
#boot.off{opacity:0;pointer-events:none}
/* barra e HUD */
.bar{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;justify-content:space-between;align-items:center;padding:16px var(--g);color:#fff;background:linear-gradient(180deg,rgba(9,9,10,.92),rgba(9,9,10,0));transition:background .35s,backdrop-filter .35s,padding .35s;font:700 12px var(--m);letter-spacing:.14em;text-transform:uppercase}
.bar .chap{display:flex;gap:12px;align-items:center}.bar .chap b{color:var(--a);mix-blend-mode:normal}
.langs{display:flex;gap:4px}.langs button{padding:4px 7px;opacity:.5;letter-spacing:.14em;font:700 12px var(--m)}.langs button[aria-pressed=true]{opacity:1;box-shadow:inset 0 -2px #fff}
.back:hover{opacity:.6}
#prog{position:fixed;top:0;left:0;right:0;height:3px;z-index:81;pointer-events:none}
#prog i{display:block;height:100%;background:var(--a);transform-origin:left;transform:scaleX(0);box-shadow:0 0 14px var(--a)}
#hud{position:fixed;left:var(--g);bottom:22px;z-index:70;display:flex;align-items:flex-end;gap:12px;mix-blend-mode:difference;color:#fff;pointer-events:none}
#hud svg{width:84px;height:50px;overflow:visible}#hud .arc{fill:none;stroke:rgba(255,255,255,.35);stroke-width:2;stroke-dasharray:2 5}
#hud line{stroke:var(--a);stroke-width:3;stroke-linecap:round;transform-origin:50px 55px;transform:rotate(-120deg)}
#hud b{font:400 34px/1 var(--d);font-variant-numeric:tabular-nums;display:block;min-width:2.4ch}#hud small{font:700 10px var(--m);letter-spacing:.2em;color:#bbb}
/* base sezioni */
section{position:relative}
.ch{padding:clamp(72px,9vw,140px) var(--g)}
.eyebrow{font:700 12px var(--m);letter-spacing:.3em;text-transform:uppercase;color:var(--a);display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:46px;height:2px;background:var(--a)}
.mega{font:400 clamp(60px,13.5vw,230px)/.86 var(--d);text-transform:uppercase;letter-spacing:-.005em}
.h1{font:400 clamp(48px,9.5vw,170px)/.88 var(--d);text-transform:uppercase}
.out{color:transparent;-webkit-text-stroke:2px var(--ink)}.red{color:var(--a)}
.ln{display:block;overflow:hidden;padding-bottom:.04em}.ln>span{display:block;transform:translateY(112%);transition:transform 1.1s cubic-bezier(.16,.84,.24,1);transition-delay:calc(var(--i,0)*.09s)}
.in .ln>span,.ln.in>span{transform:none}
.rv{opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1s cubic-bezier(.16,.84,.24,1);transition-delay:calc(var(--i,0)*.08s)}.rv.in{opacity:1;transform:none}
.kerb{height:16px;background:repeating-linear-gradient(90deg,var(--a) 0 44px,#f2efe9 44px 88px)}
/* immagini e segnaposto */
.media{position:relative;overflow:hidden;background:var(--asph)}
.media>.m{position:absolute;inset:-14% 0;background-size:cover;background-position:center;will-change:transform}
.ph{background:radial-gradient(120% 70% at 18% 115%,rgba(255,42,26,.38),transparent 60%),linear-gradient(112deg,transparent 41%,rgba(255,42,26,.2) 48%,transparent 52%),repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 2px,transparent 2px 10px),linear-gradient(180deg,#19191c,#0b0b0d)}
.ph::after{content:"";position:absolute;left:0;right:0;bottom:12%;height:3px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.4) 0 60px,transparent 60px 130px);opacity:.35}
.media.shade::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,9,10,.85),rgba(9,9,10,.1) 60%,rgba(9,9,10,.5))}
/* HERO */
.hero{height:100svh;min-height:620px;overflow:hidden;display:flex;align-items:flex-end;padding:0 var(--g) clamp(70px,11vh,120px)}
.hero .media{position:absolute;inset:0}.hero .media>.m{inset:-8% 0}
.streaks{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.streaks i{position:absolute;left:-30%;width:60%;height:2px;background:linear-gradient(90deg,transparent,var(--a),transparent);opacity:.7;transform:rotate(-12deg);animation:sk 3.2s linear infinite}
.streaks i:nth-child(1){top:22%;animation-delay:0s}.streaks i:nth-child(2){top:41%;animation-delay:-1.1s;width:80%}.streaks i:nth-child(3){top:63%;animation-delay:-2.2s}.streaks i:nth-child(4){top:78%;animation-delay:-.6s;width:45%}
@keyframes sk{from{transform:translateX(-20%) rotate(-12deg)}to{transform:translateX(260%) rotate(-12deg)}}
.hero-in{position:relative;width:100%}
.hero h1{display:flex;flex-direction:column;font-size:clamp(70px,min(21vw,25vh),380px)}
.hero h1 .ln:nth-child(2){padding-left:clamp(20px,9vw,170px)}.hero h1 .ln:nth-child(3){padding-left:clamp(0px,3vw,60px)}
.hero p.tag{max-width:520px;margin-top:26px;color:#cfcbc3;font-size:clamp(17px,1.5vw,22px)}
.cue{position:absolute;right:var(--g);bottom:clamp(70px,11vh,120px);display:flex;flex-direction:column;align-items:center;gap:12px;font:700 11px var(--m);letter-spacing:.3em;writing-mode:vertical-rl;color:var(--mut)}
.cue i{width:2px;height:70px;background:linear-gradient(var(--a),transparent);animation:cue 1.6s ease-in-out infinite;transform-origin:top}
@keyframes cue{0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}
/* ORIGINE */
.origin{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,5vw,90px);align-items:start}
.origin .media{position:sticky;top:12vh;aspect-ratio:3/4;max-height:76vh;width:100%}
.origin h2{margin:20px 0 clamp(26px,4vw,60px)}
.scrub{font-size:clamp(22px,2.7vw,40px);line-height:1.22;font-weight:500;color:rgba(242,239,233,.2);max-width:880px}
.scrub .w{transition:color .25s}.scrub .w.on{color:var(--ink)}
/* EVOLUZIONE (scorrimento orizzontale) */
.evo{height:calc(var(--n)*85vh + var(--sh,640px));background:linear-gradient(180deg,var(--bg),#0e0e10 50%,var(--bg))}
.evo-stick{position:sticky;top:0;height:auto;overflow:hidden;display:flex;flex-direction:column;gap:clamp(14px,2.6vh,34px);padding-top:64px;padding-bottom:40px}
.evo-head .h1{font-size:clamp(34px,min(6vw,9vh),100px)}
.evo-head{padding:0 var(--g)}.evo-head h2{margin-top:14px}
.evo-track{display:flex;gap:clamp(16px,3vw,44px);padding:0 var(--g);will-change:transform}
.evo-card{flex:0 0 min(80vw,760px);position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end;padding:clamp(18px,2vw,30px);border:1px solid var(--line);background:rgba(18,18,20,.7);min-height:clamp(200px,34vh,380px);max-height:42vh}
.evo-card .yr{position:absolute;right:14px;top:-.18em;font:400 clamp(110px,16vw,250px)/1 var(--d);color:transparent;-webkit-text-stroke:2px rgba(242,239,233,.16);pointer-events:none}
.evo-card .media{aspect-ratio:4/5;height:100%;min-height:160px;max-height:40vh}
.evo-card h3{font:400 clamp(28px,min(4vw,6vh),60px)/.95 var(--d);text-transform:uppercase;margin-bottom:12px}
.evo-card p{color:#bdb9b0;font-size:clamp(15px,1.2vw,18px)}
.evo-card .no{font:700 11px var(--m);letter-spacing:.25em;color:var(--a);margin-bottom:10px;display:block}
.evo-bar{margin:0 var(--g);height:3px;background:var(--line)}.evo-bar i{display:block;height:100%;background:var(--a);transform-origin:left;transform:scaleX(0)}
/* TAPPE */
.lap{display:grid;grid-template-columns:clamp(90px,14vw,220px) 1fr 1.1fr;gap:clamp(14px,3vw,50px);align-items:baseline;padding:clamp(22px,3vw,44px) 0;position:relative}
.lap::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--line)}
.lap::after{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:var(--a);transform:scaleX(0);transform-origin:left;transition:transform 1.3s cubic-bezier(.16,.84,.24,1)}
.lap.in::after{transform:scaleX(1)}
.lap .n{font:400 clamp(54px,9vw,150px)/.9 var(--d);color:transparent;-webkit-text-stroke:2px var(--ink);transition:color .5s}.lap.in .n{color:var(--ink)}
.lap h3{font:400 clamp(26px,3.6vw,54px)/1 var(--d);text-transform:uppercase}
.lap p{color:#bdb9b0}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(20px,4vw,60px);margin-top:clamp(70px,10vw,140px)}
.stat b{display:block;font:400 clamp(80px,13vw,220px)/.85 var(--d);color:var(--a);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.stat span{font:700 12px var(--m);letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}
/* CRESCITA */
.growth{background:#0c0c0e;overflow:hidden}
.growth-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,5vw,90px);align-items:center;margin-top:clamp(30px,5vw,70px)}
.growth p.lead{color:#bdb9b0;max-width:460px;margin:22px 0 30px}
.live{display:grid;gap:18px}
.live a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--line);transition:padding .3s,color .3s}
.live a:hover{padding-left:12px;color:var(--a)}
.live small{font:700 11px var(--m);letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}
.live b{font:400 clamp(44px,6vw,92px)/1 var(--d);font-variant-numeric:tabular-nums}
.chart{width:100%;height:auto;overflow:visible}
.chart .grid{stroke:var(--line);stroke-width:1}.chart text{font:700 12px var(--m);fill:var(--mut);letter-spacing:.1em}
.chart .l{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
.chart .l.ig{stroke:var(--a);filter:drop-shadow(0 0 10px rgba(255,42,26,.7))}.chart .l.tt{stroke:var(--ink)}
.chart circle{opacity:0;transition:opacity .4s}.chart circle.ig{fill:var(--a)}.chart circle.tt{fill:var(--ink)}
.key{display:flex;gap:22px;margin-top:14px;font:700 11px var(--m);letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.key i{display:inline-block;width:22px;height:4px;vertical-align:middle;margin-right:8px}
/* COLLABORAZIONI */
.mqs{margin:clamp(40px,6vw,90px) 0;overflow:hidden;transform:rotate(-2deg);border-block:1px solid var(--line);padding:14px 0;background:var(--bg)}
.mq{display:flex;width:max-content;gap:3vw;animation:mq 38s linear infinite}.mq+.mq{margin-top:10px;animation-direction:reverse;animation-duration:46s}
.mq span{font:400 clamp(46px,8vw,130px)/1 var(--d);text-transform:uppercase;white-space:nowrap}.mq span:nth-child(even){color:transparent;-webkit-text-stroke:2px var(--ink)}.mq span::after{content:"✦";color:var(--a);margin-left:3vw;font-size:.5em;vertical-align:middle}
@keyframes mq{to{transform:translateX(-50%)}}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(14px,2vw,28px)}
.card{position:relative;aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;overflow:hidden;border:1px solid var(--line);transition:transform .6s cubic-bezier(.16,.84,.24,1),border-color .3s}
.card:hover{transform:translateY(-10px);border-color:var(--a)}
.card .media{position:absolute;inset:0}.card>div:not(.media){position:relative;z-index:2}
.card h3{font:400 clamp(34px,3.6vw,56px)/.95 var(--d);text-transform:uppercase}.card p{color:#cfcbc3;font-size:16px;margin-top:8px}
/* DIETRO LE QUINTE */
.bts-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,28px);margin-top:clamp(36px,5vw,70px);align-items:start}
.bts-grid figure:nth-child(4n+1){grid-column:1/8}.bts-grid figure:nth-child(4n+2){grid-column:9/13;margin-top:12vw}
.bts-grid figure:nth-child(4n+3){grid-column:2/6}.bts-grid figure:nth-child(4n+4){grid-column:7/13;margin-top:-4vw}
.bts-grid .media{aspect-ratio:var(--r,4/3)}.bts-grid figure:nth-child(4n+2) .media,.bts-grid figure:nth-child(4n+3) .media{--r:4/5}
.bts-grid figcaption{margin-top:12px;font:700 11px var(--m);letter-spacing:.2em;text-transform:uppercase;color:var(--mut);display:flex;gap:14px}.bts-grid figcaption b{color:var(--a)}
/* OGGI */
.today{min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:clamp(100px,14vw,200px) var(--g)}
.today .media{position:absolute;inset:0}.today .media>.m{inset:-10% 0}
.today-in{position:relative;z-index:2;max-width:1400px}
.today h2{margin:18px 0 28px}.today p.t{max-width:620px;color:#d6d2ca;font-size:clamp(18px,1.6vw,24px)}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}
.btn-a{display:inline-flex;align-items:center;gap:14px;padding:18px 34px;background:var(--a);color:#fff;font:700 14px var(--m);letter-spacing:.2em;text-transform:uppercase;transition:transform .3s,box-shadow .3s;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%)}
.btn-a:hover{transform:translateX(6px);box-shadow:0 0 40px rgba(255,42,26,.6)}
.btn-o{display:inline-flex;align-items:center;padding:17px 28px;border:1px solid var(--ink);font:700 14px var(--m);letter-spacing:.2em;text-transform:uppercase;transition:background .3s,color .3s}.btn-o:hover{background:var(--ink);color:var(--bg)}
footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:28px var(--g) 90px;font:700 11px var(--m);letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
/* mobile */
@media(max-width:900px){
 .origin,.growth-grid{grid-template-columns:1fr}.origin .media{position:relative;top:0;aspect-ratio:4/5;max-height:none}
 .evo{height:auto;background:none}.evo-stick{position:static;height:auto;overflow:visible;padding:clamp(80px,14vw,140px) 0}.evo-track{flex-direction:column;transform:none!important}.evo-card{flex:none;grid-template-columns:1fr;max-height:none}.evo-card .media{max-height:none;aspect-ratio:4/3}.evo-stick{padding-top:clamp(80px,14vw,140px)}.evo-bar{display:none}
 .lap{grid-template-columns:90px 1fr}.lap p{grid-column:2}
 .bts-grid figure:nth-child(n){grid-column:1/13;margin-top:0}.bts-grid .media{--r:4/3!important}
 .hero h1 .ln:nth-child(n){padding-left:0}.cue{display:none}#hud{bottom:14px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}.rv{opacity:1;transform:none}.ln>span{transform:none}#boot{display:none}}

/* CONTATTI + bottoni social */
.contactband{padding:clamp(100px,14vw,200px) var(--g);overflow:hidden;background:radial-gradient(90% 70% at 85% 100%,rgba(255,42,26,.2),transparent 65%),#0b0b0d}
.contactband .streaks i{opacity:.4}
.contactband>*{position:relative}.contactband .mega{margin:18px 0 8px}
.soc-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.sbtn{display:inline-flex;align-items:center;gap:14px;padding:16px 24px 16px 18px;border:1px solid var(--line);background:rgba(18,18,20,.7);font:700 13px var(--m);letter-spacing:.18em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);transition:background .3s,border-color .3s,transform .35s cubic-bezier(.16,.84,.24,1),color .3s}
.sbtn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sbtn svg .f{fill:currentColor;stroke:none}
.sbtn em{font-style:normal;color:var(--a);transition:transform .3s,color .3s}
.sbtn:hover{background:var(--a);border-color:var(--a);color:#fff;transform:translateY(-4px)}.sbtn:hover em{color:#fff;transform:translate(3px,-3px)}

.bar.no-chap .chap{visibility:hidden}.bar.no-langs .langs{display:none}

/* barra senza sovrapposizioni, cambio capitolo morbido, ambiente che si sposta */
.bar.solid{background:rgba(9,9,10,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding-top:11px;padding-bottom:11px;border-bottom:1px solid var(--line)}
.bar .chap b,.bar .chap span{transition:opacity .23s,transform .23s}
.bar .chap.sw b,.bar .chap.sw span{opacity:0;transform:translateY(-8px)}
#ambient{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
#ambient i{position:absolute;left:0;top:0;width:60vmax;height:60vmax;border-radius:50%;filter:blur(90px);opacity:.28;transition:transform 2.2s cubic-bezier(.16,.84,.24,1)}
#ambient #amb1{background:radial-gradient(circle,#ff2a1a,transparent 65%)}
#ambient #amb2{background:radial-gradient(circle,#ff7a1a,transparent 65%);opacity:.16;width:45vmax;height:45vmax}
main,footer,.kerb{position:relative;z-index:1}
.growth{background:rgba(12,12,14,.55)}
.evo{background:linear-gradient(180deg,transparent,rgba(14,14,16,.6) 50%,transparent)}
.mega.rv,.h1.rv,.media.rv{filter:blur(12px);transition:opacity .9s ease,transform 1s cubic-bezier(.16,.84,.24,1),filter 1.1s ease;transition-delay:calc(var(--i,0)*.08s)}
.mega.rv.in,.h1.rv.in,.media.rv.in{filter:blur(0)}
.rv.fd{transition:none;filter:none}
.hero-in{will-change:opacity,transform,filter}
/* CONTATTI al centro, bottoni social */
.contactband{text-align:center;display:flex;flex-direction:column;align-items:center}
.contactband .eyebrow{justify-content:center}.contactband .eyebrow::after{content:"";width:46px;height:2px;background:var(--a)}
.contactband .mega{margin:20px 0 6px}
.contactband .cta-row{justify-content:center;margin-top:30px}
.soc-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(12px,1.6vw,22px);margin-top:clamp(30px,4vw,56px);width:100%}
.sbtn{--b:var(--a);position:relative;display:flex;align-items:center;gap:18px;min-width:min(100%,300px);padding:16px 26px 16px 16px;text-align:left;overflow:hidden;isolation:isolate;border-radius:18px;border:1px solid color-mix(in srgb,var(--b) 40%,rgba(255,255,255,.12));background:linear-gradient(135deg,color-mix(in srgb,var(--b) 14%,#121214),#0e0e10);font:inherit;text-transform:none;letter-spacing:0;clip-path:none;transition:transform .45s cubic-bezier(.16,.84,.24,1),box-shadow .45s,border-color .3s,background .3s}
.sbtn::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.2) 50%,transparent 70%);transform:translateX(-130%);transition:transform .8s cubic-bezier(.16,.84,.24,1)}
.sbtn::after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(90% 140% at 0 0,color-mix(in srgb,var(--b) 30%,transparent),transparent 60%);opacity:.7;transition:opacity .4s}
.sbtn .ic{flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--b) 18%,#0b0b0d);border:1px solid color-mix(in srgb,var(--b) 60%,transparent);color:var(--b);animation:ring 3.4s ease-in-out infinite;transition:transform .5s cubic-bezier(.16,.84,.24,1),background .3s,color .3s}
.sbtn .ic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sbtn .ic svg .f{fill:currentColor;stroke:none}
@keyframes ring{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--b) 45%,transparent)}55%{box-shadow:0 0 0 12px transparent}}
.sbtn .tx{display:block;flex:1}
.sbtn .tx b{display:block;font:400 clamp(24px,2.2vw,32px)/1 var(--d);text-transform:uppercase;letter-spacing:.02em}
.sbtn .tx small{display:block;margin-top:5px;font:700 11px var(--m);letter-spacing:.2em;color:var(--mut)}
.sbtn em{font-style:normal;font-size:22px;color:var(--b);transition:transform .35s cubic-bezier(.16,.84,.24,1)}
.sbtn:hover{transform:translateY(-8px) scale(1.02);border-color:var(--b);background:linear-gradient(135deg,color-mix(in srgb,var(--b) 24%,#121214),#101012);box-shadow:0 18px 60px color-mix(in srgb,var(--b) 38%,transparent);color:var(--ink)}
.sbtn:hover::before{transform:translateX(130%)}.sbtn:hover::after{opacity:1}
.sbtn:hover .ic{transform:rotate(-8deg) scale(1.12);background:var(--b);color:#0b0b0d}
.sbtn:hover em{transform:translate(5px,-5px)}
@media(max-width:700px){.sbtn{width:100%}}

/* puntatore pulito (solo con il mouse) */
body.cm,body.cm a,body.cm button{cursor:none}
.cdot,.cring{position:fixed;left:0;top:0;pointer-events:none;z-index:320;opacity:0;border-radius:50%;mix-blend-mode:difference;transition:opacity .3s}
.cdot{width:6px;height:6px;margin:-3px 0 0 -3px;background:#fff}
.cring{width:36px;height:36px;margin:-18px 0 0 -18px;border:1px solid rgba(255,255,255,.85);transition:opacity .3s,background .3s,border-color .3s}
.cring.on{background:rgba(255,255,255,.9);border-color:transparent}
.cring.down{border-color:#fff}
@media (hover:none),(pointer:coarse){.cdot,.cring{display:none}}
/* collaborazioni: velo scuro per leggere sempre il testo + ingrandimento al passaggio */
.card .media>.m{transition:transform 1.3s cubic-bezier(.16,.84,.24,1),filter .6s}
.card:hover .media>.m{transform:scale(1.16)}
.card .media.shade::after{background:linear-gradient(0deg,rgba(9,9,10,.96) 0%,rgba(9,9,10,.82) 32%,rgba(9,9,10,.4) 62%,rgba(9,9,10,.12) 100%);transition:opacity .5s}
.card:hover .media.shade::after{opacity:.85}
.card h3,.card p{text-shadow:0 2px 14px rgba(0,0,0,.85),0 0 3px rgba(0,0,0,.6)}
.card p{color:#e6e2da}

/* adattamento a tutti gli schermi */
.mqwrap{overflow:hidden}
.bar .back,.langs button{position:relative}
.bar .back::before,.langs button::before{content:"";position:absolute;inset:-12px -8px}
@media (max-width:520px){.sbtn .tx b{font-size:24px}.contactband .mega{font-size:clamp(54px,17vw,120px)}}

/* meno vuoto tra i capitoli */
.contactband{padding:clamp(80px,10vw,150px) var(--g)}
.growth-grid{margin-top:clamp(24px,3.5vw,50px)}
.mqs{margin:clamp(28px,4vw,60px) 0}
@media(max-width:900px){.evo-stick{padding-top:clamp(64px,10vw,110px);padding-bottom:0}}

body.cm,body.cm *,body.cm *::before,body.cm *::after{cursor:none!important}
