/* ---- styles.css ---- */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{color-scheme:dark;--bg:#151918;--bg-deep:#0e1211;--surface:#202624;--surface-2:#29312c;--line:#3b443e;--text:#f4f5ed;--muted:#b8c0b6;--lime:#c4de52;--lime-deep:#a8c836;font-family:'DM Sans',Arial,sans-serif;font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.55}
button,input,select,textarea{font:inherit}
button,a,select{outline-offset:4px}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
em{font-style:normal;color:var(--lime)}
.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}
.skip-link{position:absolute;left:1rem;top:-5rem;z-index:20;padding:.7rem 1rem;background:var(--lime);color:var(--bg-deep)}
.skip-link:focus{top:1rem}
.shell{width:min(100% - 64px,1320px);margin-inline:auto}
.site-header{position:absolute;z-index:10;top:0;left:0;right:0;border-bottom:1px solid rgba(255,255,255,.16);background:rgba(14,18,17,.4);backdrop-filter:blur(14px)}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.wordmark{font-family:Georgia,'Times New Roman',serif;letter-spacing:.025em;font-size:30px;line-height:1;white-space:nowrap}
.wordmark-divider{display:inline-block;height:22px;width:1px;background:#84907f;margin:0 14px;vertical-align:-2px}
.wordmark-product{font-family:Manrope,Arial,sans-serif;font-size:17px;font-weight:800;color:var(--lime);letter-spacing:.02em}
.desktop-nav{display:flex;align-items:center;gap:32px;margin-left:auto}
.desktop-nav a{font-size:14px;font-weight:600;color:#d9ded5;transition:color .2s}
.desktop-nav a:hover,.text-link:hover,.site-footer a:hover{color:var(--lime)}
.header-actions{display:flex;align-items:center;gap:12px}
.language-picker{position:relative}
.language-picker select{appearance:none;background:transparent;color:var(--text);border:1px solid #667167;border-radius:3px;padding:10px 27px 10px 11px;min-height:44px;font-size:13px;font-weight:700}
.language-picker::after{content:'⌄';position:absolute;right:10px;top:7px;pointer-events:none;color:var(--lime)}
.language-picker option{background:var(--bg)}
.header-cta{display:flex;align-items:center;gap:16px;padding:10px 14px;border:1px solid var(--lime);border-radius:3px;color:var(--lime);font-size:13px;font-weight:700;min-height:44px}
.header-cta:hover{background:var(--lime);color:var(--bg-deep)}
.hero{position:relative;min-height:800px;display:flex;align-items:center;overflow:hidden;background:#101613}
.hero-image{position:absolute;top:0;right:0;width:59%;height:100%;background-image:url('assets/img/vite-germogli-pulita.webp');background-repeat:no-repeat;background-size:cover;background-position:64% center;filter:saturate(.86) contrast(1.06)}
.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#101613 0%,#101613 37%,rgba(16,22,19,.96) 45%,rgba(16,22,19,.28) 74%,rgba(16,22,19,.08) 100%),linear-gradient(0deg,#101613 0%,transparent 18%,transparent 80%,rgba(16,22,19,.2) 100%)}
.hero-inner{position:relative;z-index:1;min-height:800px;display:flex;align-items:center}
.hero-copy{width:min(690px,60%);padding-top:76px;padding-bottom:70px}
.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 27px;color:var(--lime);font-size:12px;font-weight:800;line-height:1.35;letter-spacing:.15em;text-transform:uppercase}
.eyebrow-line{display:block;width:26px;height:1px;flex:none;background:var(--lime)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Manrope,Arial,sans-serif}
h1{max-width:790px;margin-bottom:27px;font-size:clamp(57px,5.8vw,88px);line-height:1.07;letter-spacing:-.073em;font-weight:600}
h1 em{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.07em;font-style:italic;font-weight:400;letter-spacing:-.064em;line-height:1.12}
.hero-lead{max-width:585px;margin-bottom:15px;color:#f1f3e9;font-size:21px;line-height:1.45;font-weight:600}
.hero-support{max-width:540px;color:#b8c4b8;font-size:16px;line-height:1.65}
.hero-actions{display:flex;align-items:center;gap:30px;margin-top:32px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:55px;padding:14px 21px;border-radius:3px;font-size:14px;line-height:1.2;font-weight:800;transition:background .2s,border-color .2s,color .2s,transform .2s;text-align:left}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--lime);border:1px solid var(--lime);color:#142019}
.button-primary:hover{background:#d5ed70;border-color:#d5ed70}
.button-outline{border:1px solid var(--lime);color:var(--lime)}
.button-outline:hover{background:var(--lime);color:#142019}
.text-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;font-weight:700;color:#e4e9de}
.hero-note{position:absolute;bottom:34px;right:0;display:flex;align-items:center;gap:9px;padding:9px 0 9px 16px;background:rgba(17,23,19,.72);border-left:1px solid var(--lime);font-size:13px;font-weight:600;color:#e5e9de;backdrop-filter:blur(6px)}
.small-dot{width:5px;height:5px;background:var(--lime);border-radius:50%}
.fact-strip{background:#c4de52;color:#1a2519}
.fact-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr}
.fact-grid>div{display:flex;align-items:center;gap:18px;min-height:118px;padding:20px 28px;border-right:1px solid rgba(20,35,22,.23)}
.fact-grid>div:first-child{padding-left:0}.fact-grid>div:last-child{border:0}
.fact-grid strong{font-family:Manrope,Arial,sans-serif;font-size:39px;line-height:1;font-weight:700;letter-spacing:-.07em;white-space:nowrap}
.fact-grid span{max-width:240px;font-size:13px;line-height:1.4;font-weight:700}
.video-section{padding:100px 0;background:#171d19;border-bottom:1px solid #343f35}
.video-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:8%;align-items:center}
.video-grid h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,4vw,58px);line-height:1.13;font-weight:600;letter-spacing:-.055em;margin-bottom:19px}
.video-grid h2 em{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:1.08em;font-weight:400}
.video-grid p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.6}
.video-grid .video-context{font-size:13px!important;color:#9eae9d!important;margin-top:18px;line-height:1.5!important}
.video-choices{display:flex;gap:8px;margin-top:23px;flex-wrap:wrap}
.video-choices button{display:flex;gap:12px;align-items:center;padding:10px 13px;min-height:45px;background:transparent;border:1px solid #657263;border-radius:2px;color:#d9e2d7;font-size:13px;font-weight:700}
.video-choices button:hover,.video-choices button.is-active{border-color:var(--lime);color:var(--lime);background:#263227}
.video-choices small{font-size:12px;color:#aabb9f}
.video-poster{position:relative;aspect-ratio:16/9;background:#0b120d url('assets/img/copertina-vsl.webp') no-repeat 60% center;background-size:cover;border:1px solid #485d3e;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.25)}
.video-poster::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,15,11,.48),transparent);pointer-events:none}
.video-poster video{display:none;position:absolute;inset:0;width:100%;height:100%;background:#000}
.video-poster.is-playing video{display:block}
.video-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;width:100%;height:100%;border:0;background:transparent;color:#fff;font-size:14px;font-weight:700;text-shadow:0 2px 8px #000}
.video-overlay:hover .video-play{background:var(--lime);color:#182319;transform:scale(1.05)}
.video-play{display:flex;align-items:center;justify-content:center;width:74px;height:74px;padding-left:4px;border:1px solid var(--lime);border-radius:50%;background:rgba(17,26,18,.75);color:var(--lime);font-size:24px;transition:transform .2s,background .2s,color .2s}
.video-poster.is-playing .video-overlay{display:none}
.section{padding:126px 0;scroll-margin-top:0}
.section h2{font-size:clamp(38px,4vw,60px);line-height:1.14;font-weight:600;letter-spacing:-.055em;margin-bottom:28px}
.section h2 em{font-family:Georgia,'Times New Roman',serif;font-size:1.08em;font-style:italic;font-weight:400}
.section p{color:var(--muted)}
.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}
.section-intro{max-width:565px}
.section-intro>p:last-child{max-width:510px;font-size:18px;line-height:1.65}
.problem-section{background:#191e1b}
.problem-list{border-top:1px solid var(--line)}
.problem-item{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:26px 4px 26px 0;border-bottom:1px solid var(--line)}
.item-num{padding-top:4px;font-family:Manrope,Arial,sans-serif;font-size:14px;font-weight:700;color:var(--lime)}
.problem-item h3{font-size:20px;line-height:1.25;letter-spacing:-.03em;margin-bottom:7px}
.problem-item p{font-size:15px;line-height:1.6;margin:0;max-width:450px}
.method-section{background:#111714}
.method-heading{display:grid;grid-template-columns:1.25fr .6fr;gap:8%;align-items:end;margin-bottom:46px}
.method-heading h2{max-width:740px;margin-bottom:0}
.method-heading>p{margin-bottom:5px;font-size:17px;line-height:1.65}
.method-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.method-cards article{min-height:270px;padding:26px 28px;background:#222b25;border:1px solid #354338;display:flex;flex-direction:column}
.step-number{display:block;margin-bottom:auto;color:var(--lime);font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:.05em}
.method-cards h3{font-size:24px;letter-spacing:-.04em;margin-bottom:7px}
.method-cards p{margin:0;font-size:15px;line-height:1.6}
.comparison-section{background:#1b211d}
.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}
.comparison-grid>div:first-child>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:560px;margin-bottom:30px}
.comparison-panel{padding:30px;background:#222b25;border:1px solid #516048;box-shadow:0 30px 90px rgba(0,0,0,.15)}
.panel-heading{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--lime);padding-bottom:23px;border-bottom:1px solid #55634e}
.panel-icon{font-size:26px;line-height:1}
.compare-lanes{padding:18px 0 24px;border-bottom:1px solid #55634e}
.compare-lanes>div{display:flex;align-items:center;gap:18px;padding:9px 0}
.compare-lanes span{display:flex;align-items:center;justify-content:center;width:44px;height:35px;border:1px solid #637159;color:var(--lime);font-weight:800;font-size:12px}
.compare-lanes strong{font-size:16px;font-weight:600}
.measure-heading{margin-top:25px;margin-bottom:11px;color:#dce5d5;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.measure-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;margin:0;padding:0}
.measure-list li{color:#bdc7b9;font-size:14px;line-height:1.5;padding-left:15px;position:relative}
.measure-list li::before{content:'';position:absolute;left:0;top:.56em;width:5px;height:5px;background:var(--lime)}
.contact-section{background:#111714}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:start}
.contact-copy{padding-top:22px}
.contact-copy>p:not(.eyebrow):not(.founder){font-size:18px;line-height:1.65;max-width:500px}
.founder{margin-top:80px;padding-top:22px;border-top:1px solid #3c473e;max-width:300px;font-family:Georgia,'Times New Roman',serif;font-size:23px;color:var(--text)!important}
.founder small{display:block;margin-top:4px;font-family:'DM Sans',Arial,sans-serif;font-size:13px;font-weight:600;color:var(--muted)}
.contact-form{padding:33px;background:#242c26;border:1px solid #485348}
.form-heading{margin-bottom:23px}.form-heading h3{font-size:27px;line-height:1.2;letter-spacing:-.04em;margin-bottom:6px}.form-heading p{margin:0;font-size:14px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:#dbe3d8}
.form-grid input,.form-grid textarea{width:100%;min-height:44px;padding:10px 11px;border:1px solid #59665a;border-radius:2px;background:#161d18;color:var(--text);resize:vertical}
.form-grid input:focus,.form-grid textarea:focus{outline:2px solid var(--lime);outline-offset:1px}
.form-grid .field-full{grid-column:1/-1}
.form-button{margin-top:22px;width:100%}
.form-feedback{min-height:1em;margin:10px 0 0;font-size:13px;color:var(--lime)!important}
.site-footer{background:#0b100d;border-top:1px solid #334034;padding:28px 0}
.footer-inner{display:flex;gap:28px;align-items:center;color:#adb9ae;font-size:13px}
.footer-wordmark{font-family:Georgia,'Times New Roman',serif;color:var(--text);font-size:22px;letter-spacing:.03em}
.footer-inner a{margin-left:auto;font-weight:700}
@media(max-width:1100px){.desktop-nav{display:none}.hero-copy{width:min(660px,70%)}.hero-image{width:68%}.hero-vignette{background:linear-gradient(90deg,#101613 0%,#101613 30%,rgba(16,22,19,.89) 56%,rgba(16,22,19,.15) 100%)}.section-grid,.comparison-grid,.contact-grid{gap:6%}}
@media(max-width:760px){.shell{width:min(100% - 36px,620px)}.header-inner{min-height:70px;gap:8px}.wordmark{font-size:24px}.wordmark-divider{height:17px;margin:0 8px}.wordmark-product{font-size:13px}.header-cta{display:none}.language-picker select{min-height:40px;padding:8px 25px 8px 9px}.hero,.hero-inner{min-height:750px}.hero-image{width:100%;height:460px;top:0;background-size:cover;background-position:68% center;opacity:.9}.hero-vignette{background:linear-gradient(0deg,#101613 0%,#101613 21%,rgba(16,22,19,.92) 40%,rgba(16,22,19,.35) 80%,rgba(16,22,19,.4) 100%),linear-gradient(90deg,#101613 0%,transparent 100%)}.hero-inner{align-items:end}.hero-copy{width:100%;padding-top:210px;padding-bottom:92px}.hero .eyebrow{margin-bottom:18px}.hero h1{font-size:clamp(45px,10.3vw,71px);margin-bottom:19px}.hero-lead{font-size:17px}.hero-support{font-size:15px}.hero-actions{margin-top:24px;gap:16px}.button{min-height:51px}.hero-note{bottom:22px;right:auto;left:0;font-size:11px}.fact-grid{grid-template-columns:1fr}.fact-grid>div{min-height:75px;gap:16px;padding:14px 0;border-right:0;border-bottom:1px solid rgba(20,35,22,.23)}.fact-grid>div:last-child{border:0}.fact-grid strong{font-size:31px;width:95px}.fact-grid span{max-width:none;font-size:12px}.video-section{padding:75px 0}.video-grid{grid-template-columns:1fr;gap:27px}.video-grid h2{font-size:clamp(38px,8vw,54px)}.video-grid p:not(.eyebrow){font-size:16px}.section{padding:82px 0}.section-grid,.method-heading,.comparison-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.section h2{font-size:clamp(38px,8vw,54px)}.section-intro>p:last-child,.comparison-grid>div:first-child>p:not(.eyebrow),.contact-copy>p:not(.eyebrow):not(.founder){font-size:16px}.problem-item{padding:20px 0;grid-template-columns:36px 1fr}.problem-item h3{font-size:18px}.method-heading{margin-bottom:28px}.method-heading>p{font-size:16px}.method-cards{grid-template-columns:1fr;gap:10px}.method-cards article{min-height:190px}.step-number{margin-bottom:24px}.comparison-panel{padding:22px}.contact-copy{padding-top:0}.founder{margin-top:28px}.contact-form{padding:21px}.footer-inner{flex-wrap:wrap;gap:6px 16px}.footer-inner a{margin-left:auto}}
@media(max-width:460px){.hero{min-height:780px}.hero-inner{min-height:780px}.hero-copy{padding-top:180px}.hero h1{font-size:46px}.hero-actions .button{width:100%}.text-link{padding:8px 0}.form-grid{grid-template-columns:1fr}.measure-list{grid-template-columns:1fr}.contact-form{padding:19px}.footer-inner{display:grid;grid-template-columns:1fr auto}.footer-inner>span:nth-child(2){grid-column:1/-1;grid-row:2}.footer-inner a{grid-column:2;grid-row:1}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button{transition:none}}

/* ---- variante-b.css ---- */
/* Variante B · immersiva: fotografia a tutta larghezza, tipografia ampia e superfici scure. */
body.variant-b{--bg:#101712;--bg-deep:#0b100c;--surface:#1d2b20;--surface-2:#26372a;--line:#405644;--lime:#d0e65a;--muted:#b9c8bb;background:var(--bg)}
.variant-b .site-header{background:linear-gradient(180deg,rgba(5,11,7,.86),rgba(5,11,7,.42));border-bottom:1px solid rgba(225,238,211,.22)}
.variant-b .wordmark{font-size:32px;letter-spacing:.05em}
.variant-b .hero,.variant-b .hero-inner{min-height:920px}
.variant-b .hero{background:#0a140b}
.variant-b .hero-image{width:100%;height:100%;background-size:cover;background-position:62% center;filter:saturate(.9) contrast(1.04)}
.variant-b .hero-vignette{background:linear-gradient(90deg,rgba(6,12,7,.86) 0%,rgba(6,12,7,.67) 31%,rgba(6,12,7,.13) 78%),linear-gradient(0deg,rgba(6,12,7,.9) 0%,rgba(6,12,7,.15) 44%,rgba(6,12,7,.16) 100%)}
.variant-b .hero-inner{align-items:flex-end}
.variant-b .hero-copy{width:min(910px,74%);padding-top:175px;padding-bottom:118px}
.variant-b h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(73px,7.3vw,119px);font-weight:400;line-height:.98;letter-spacing:-.067em;margin-bottom:34px}
.variant-b h1 em{font-size:1.02em;line-height:1.03}
.variant-b .hero-lead{max-width:650px;font-size:22px}
.variant-b .hero-support{max-width:600px;color:#d4dfd0}
.variant-b .hero-actions{margin-top:36px}
.variant-b .hero-note{bottom:45px;right:0}
.variant-b .fact-strip{background:#0f1b12;color:#eff7e9;border-top:1px solid #728a57;border-bottom:1px solid #728a57}
.variant-b .fact-grid>div{border-right-color:#405944}
.variant-b .fact-grid strong{color:var(--lime)}
.variant-b .fact-grid span{color:#d2dfcb}
.variant-b .section h2,.variant-b .video-grid h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.05em}
.variant-b .section h2 em,.variant-b .video-grid h2 em{font-size:1em}
.variant-b .video-section{background:#1b2a1d;padding:112px 0 0}
.variant-b .video-grid{display:block;width:100%;max-width:none;margin:0}
.variant-b .video-grid>div:first-child{width:min(100% - 64px,1320px);margin-inline:auto;padding-bottom:52px}
.variant-b .video-poster{display:block;width:100%;aspect-ratio:16/9;margin:0;border:0;border-radius:0;box-shadow:none;background-position:60% center}
.variant-b .video-poster::before{background:linear-gradient(180deg,rgba(7,17,9,.34),transparent 32%,rgba(7,17,9,.12))}
.variant-b .video-poster video{object-fit:contain}
.variant-b .video-play{width:102px;height:102px;font-size:31px;padding-left:6px;background:rgba(10,21,11,.82);backdrop-filter:blur(8px)}
.variant-b .video-grid h2{font-size:clamp(42px,4vw,62px)}
.variant-b .video-grid h2,.variant-b .video-grid p:not(.eyebrow){max-width:790px}
.variant-b .problem-section{background:#111b14;padding-bottom:0}
.variant-b .editorial-photo{position:relative;margin:0;overflow:hidden;width:100%;border:0;background:#142016}
.variant-b .editorial-photo img{display:block;width:100%;height:100%;object-fit:cover}
.variant-b .editorial-photo::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,var(--photo-fade-top) 0%,transparent 22%,transparent 76%,var(--photo-fade-bottom) 100%)}
.variant-b .problem-photo{--photo-fade-top:#111b14;--photo-fade-bottom:#0d160f;margin-top:80px;height:clamp(460px,51vw,740px)}
.variant-b .problem-photo img{object-position:63% center}
.variant-b .problem-item{padding-top:31px;padding-bottom:31px}
.variant-b .problem-item h3{font-size:22px}
.variant-b .method-section{background:#0d160f;padding-bottom:0}
.variant-b .method-cards{gap:16px}
.variant-b .method-cards article{background:transparent;border-color:#5b7353;min-height:300px;padding:31px}
.variant-b .method-photo{--photo-fade-top:#0d160f;--photo-fade-bottom:#172219;height:clamp(430px,46vw,670px);margin-top:85px}
.variant-b .method-photo img{object-position:center 58%}
.variant-b .step-number{font-size:19px}
.variant-b .comparison-section{background:#172219}
.variant-b .comparison-panel{background:#d0e65a;border-color:#d0e65a;color:#182719;box-shadow:0 34px 100px rgba(0,0,0,.26)}
.variant-b .panel-heading{color:#263e24;border-bottom-color:#879d4b}
.variant-b .compare-lanes{border-bottom-color:#879d4b}
.variant-b .compare-lanes span{border-color:#698340;color:#294024}
.variant-b .compare-lanes strong{color:#1c2a1e}
.variant-b .measure-heading{color:#324c2c}
.variant-b .measure-list li{color:#30452f}
.variant-b .measure-list li::before{background:#294c28}
.variant-b .contact-section{background:#0d160f}
.variant-b .contact-form{background:#1b2a1e;border-color:#4d624c}
.variant-b .site-footer{background:#09100a}
@media(max-width:1050px){.variant-b .hero-copy{width:min(760px,80%)}.variant-b h1{font-size:clamp(66px,8vw,100px)}}
@media(max-width:760px){.variant-b .hero,.variant-b .hero-inner{min-height:830px}.variant-b .hero-image{height:100%;background-size:cover;background-position:61% center}.variant-b .hero-vignette{background:linear-gradient(0deg,#081009 0%,rgba(8,16,9,.92) 26%,rgba(8,16,9,.52) 65%,rgba(8,16,9,.24) 100%)}.variant-b .hero-inner{align-items:flex-end}.variant-b .hero-copy{width:100%;padding-top:225px;padding-bottom:105px}.variant-b h1{font-size:clamp(54px,11vw,77px);margin-bottom:20px}.variant-b .hero-lead{font-size:18px}.variant-b .hero-support{font-size:15px}.variant-b .hero-note{bottom:22px;left:0;right:auto}.variant-b .fact-grid>div{border-right:0}.variant-b .video-grid{grid-template-columns:1fr}.variant-b .video-grid>div:first-child,.variant-b .video-poster{grid-column:auto;grid-row:auto}.variant-b .problem-photo{height:530px;margin-top:58px}.variant-b .method-photo{height:490px;margin-top:55px}.variant-b .method-cards article{min-height:210px}}
@media(max-width:460px){.variant-b .hero,.variant-b .hero-inner{min-height:780px}.variant-b .hero-copy{padding-top:170px}.variant-b h1{font-size:53px}.variant-b .hero-note{font-size:10px}}
@media(max-width:760px){.variant-b .video-section{padding-top:76px}.variant-b .video-grid>div:first-child{width:min(100% - 36px,620px);padding-bottom:30px}.variant-b .video-play{width:72px;height:72px;font-size:22px;padding-left:4px}}

/* ---- variante-b-nera.css ---- */
/* Variante immersiva quasi nera · neri profondi, bordi discreti, immagini ancora leggibili. */
body.variant-b-black{--bg:#030504;--bg-deep:#020302;--surface:#080d09;--surface-2:#0b130d;--line:#243329;--lime:#d0e65a;--muted:#b0bdb0;background:#030504}
.variant-b-black .site-header{background:linear-gradient(180deg,rgba(1,3,2,.97),rgba(1,3,2,.62));border-bottom-color:#283629}
.variant-b-black .hero{background:#010301}
.variant-b-black .hero-image{filter:brightness(.69) saturate(.72) contrast(1.14)}
.variant-b-black .hero-vignette{background:linear-gradient(90deg,rgba(1,3,2,.97) 0%,rgba(1,3,2,.82) 31%,rgba(1,3,2,.21) 83%),linear-gradient(0deg,rgba(1,3,2,.99) 0%,rgba(1,3,2,.28) 52%,rgba(1,3,2,.34) 100%)}
.variant-b-black .hero-note{background:rgba(2,6,3,.92)}
.variant-b-black .fact-strip{background:#050805;border-top-color:#344b31;border-bottom-color:#344b31}
.variant-b-black .fact-grid>div{border-right-color:#203324}
.variant-b-black .video-section{background:#060a07;border-bottom-color:#1d2b20}
.variant-b-black .video-poster{border-color:#304632}
.variant-b-black .video-choices button{border-color:#3e5340}
.variant-b-black .video-choices button:hover,.variant-b-black .video-choices button.is-active{background:#101b11;border-color:var(--lime)}
.variant-b-black .problem-section{background:#030705}
.variant-b-black .problem-list,.variant-b-black .problem-item{border-color:#26382a}
.variant-b-black .editorial-photo{border-color:#2a402c;background:#050a06}
.variant-b-black .problem-photo{--photo-fade-top:#030705;--photo-fade-bottom:#050805}
.variant-b-black .problem-photo img{filter:brightness(.79) saturate(.8)}
.variant-b-black .method-section{background:#050805}
.variant-b-black .method-cards article{background:#080e09;border-color:#2b402e}
.variant-b-black .method-photo img{filter:brightness(.87) saturate(.9)}
.variant-b-black .method-photo{--photo-fade-top:#050805;--photo-fade-bottom:#030705}
.variant-b-black .comparison-section{background:#030705}
.variant-b-black .comparison-panel{background:#0a110b;border-color:#536d47;color:#f1f6ec;box-shadow:0 38px 110px rgba(0,0,0,.55)}
.variant-b-black .comparison-panel .panel-heading{color:var(--lime);border-bottom-color:#354c35}
.variant-b-black .comparison-panel .compare-lanes{border-bottom-color:#354c35}
.variant-b-black .comparison-panel .compare-lanes span{color:var(--lime);border-color:#506c4c}
.variant-b-black .comparison-panel .compare-lanes strong{color:#eff5e9}
.variant-b-black .comparison-panel .measure-heading{color:var(--lime)}
.variant-b-black .comparison-panel .measure-list li{color:#c5d1c4}
.variant-b-black .comparison-panel .measure-list li::before{background:var(--lime)}
.variant-b-black .contact-section{background:#050805}
.variant-b-black .contact-form{background:#0a120c;border-color:#2b402f}
.variant-b-black .form-grid input,.variant-b-black .form-grid textarea{background:#030704;border-color:#3b503d}
.variant-b-black .site-footer{background:#020402;border-top-color:#1b2b1d}
@media(max-width:760px){.variant-b-black .hero-vignette{background:linear-gradient(0deg,#010301 0%,rgba(1,3,2,.97) 30%,rgba(1,3,2,.64) 70%,rgba(1,3,2,.4) 100%)}.variant-b-black .fact-grid>div{border-right:0;border-bottom-color:#203324}}

/* ---- variante-b-nera-fx.css ---- */
/* Variante B nera · livello immersivo: intro, reveal allo scroll, parallasse e hover.
   Tutti gli stati nascosti dipendono da html.fx, che viene aggiunto solo se il visitatore non chiede movimento ridotto. */
:root{--ease-out:cubic-bezier(.19,1,.22,1);--ease-io:cubic-bezier(.77,0,.18,1);--lime-glow:rgba(208,230,90,.16);--rv-t:opacity 1.1s var(--ease-out) var(--d,0s),translate 1.3s var(--ease-out) var(--d,0s)}
html.lenis,html.lenis body{height:auto}
html.lenis{scroll-behavior:auto}
.lenis.lenis-stopped{overflow:hidden}
::selection{background:var(--lime);color:#071007}

/* Ingresso pagina: il body appare quando gli effetti sono pronti (fallback nel <head>). */
.fx body{opacity:0}
.fx.fx-ready body{opacity:1;transition:opacity .9s var(--ease-out)}

/* Grana cinematografica e barra di avanzamento */
.variant-b-black::after{content:'';position:fixed;inset:-100%;z-index:90;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:fx-grain 1.2s steps(5) infinite}
@keyframes fx-grain{0%{transform:translate(0,0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-6%,-2%)}80%{transform:translate(5%,4%)}100%{transform:translate(0,0)}}
.fx-progress{position:fixed;top:0;left:0;right:0;z-index:95;height:2px;background:linear-gradient(90deg,#8fae2c,var(--lime) 70%,#f2ffc2);transform-origin:0 50%;transform:scaleX(0);box-shadow:0 0 14px rgba(208,230,90,.55);pointer-events:none}

/* Header fisso: trasparente sulla hero, vetro scuro dopo lo scroll, si nasconde scendendo */
.variant-b-black .site-header{position:fixed;transition:transform .7s var(--ease-out),background .5s,border-color .5s,box-shadow .5s}
.variant-b-black .header-inner{transition:min-height .5s var(--ease-out)}
.variant-b-black .site-header.is-scrolled{background:rgba(3,6,4,.74);backdrop-filter:blur(18px) saturate(1.25);-webkit-backdrop-filter:blur(18px) saturate(1.25);border-bottom-color:rgba(208,230,90,.14);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.variant-b-black .site-header.is-scrolled .header-inner{min-height:66px}
.variant-b-black .site-header.is-hidden{transform:translateY(-102%)}
.variant-b-black .wordmark{transition:letter-spacing .6s var(--ease-out)}
.variant-b-black .wordmark:hover{letter-spacing:.09em}
.variant-b-black .wordmark-divider{transition:transform .6s var(--ease-out),background .3s}
.variant-b-black .wordmark:hover .wordmark-divider{transform:rotate(18deg);background:var(--lime)}
.variant-b-black .desktop-nav a{position:relative;padding:6px 0}
.variant-b-black .desktop-nav a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:100% 50%;transition:transform .55s var(--ease-out)}
.variant-b-black .desktop-nav a:hover::after,.variant-b-black .desktop-nav a.is-active::after{transform:scaleX(1);transform-origin:0 50%}
.variant-b-black .desktop-nav a.is-active{color:var(--lime)}

/* Pulsanti: riempimento che sale, freccia che scatta, effetto magnetico via JS (transform) */
.variant-b-black .button,.variant-b-black .header-cta{position:relative;overflow:hidden;isolation:isolate;transition:color .45s var(--ease-out),border-color .3s,transform .6s var(--ease-out),box-shadow .5s,var(--rv-t)}
.variant-b-black .button:hover{transform:none}
.variant-b-black .button::before,.variant-b-black .header-cta::before{content:'';position:absolute;inset:-1px;z-index:-1;border-radius:inherit;transform:translateY(101%);transition:transform .6s var(--ease-out)}
.variant-b-black .button:hover::before,.variant-b-black .header-cta:hover::before,.variant-b-black .button:focus-visible::before,.variant-b-black .header-cta:focus-visible::before{transform:none}
.variant-b-black .button-primary::before{background:#f1fbc4}
.variant-b-black .button-primary:hover{background:var(--lime);border-color:#f1fbc4;box-shadow:0 14px 44px rgba(208,230,90,.28)}
.variant-b-black .button-outline::before,.variant-b-black .header-cta::before{background:var(--lime)}
.variant-b-black .button-outline:hover,.variant-b-black .header-cta:hover{background:transparent;color:#0b140c}
.variant-b-black .button>span[aria-hidden],.variant-b-black .header-cta>span[aria-hidden]{display:inline-block;transition:transform .55s var(--ease-out)}
.variant-b-black .button:hover>span[aria-hidden],.variant-b-black .header-cta:hover>span[aria-hidden]{transform:translate(3px,-3px) rotate(45deg)}
.variant-b-black .text-link>span[aria-hidden]{display:inline-block;transition:transform .4s var(--ease-out)}
.variant-b-black .text-link:hover>span[aria-hidden]{animation:fx-nudge 1s var(--ease-out) infinite}
@keyframes fx-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.variant-b-black .text-link span:first-child{background:linear-gradient(var(--lime),var(--lime)) 0 100%/0 1px no-repeat;padding-bottom:3px;transition:background-size .55s var(--ease-out)}
.variant-b-black .text-link:hover span:first-child{background-size:100% 1px}

/* Hero: zoom d'ingresso, parallasse (translate via JS), polline luminoso */
.variant-b-black .hero,.variant-b-black .hero-inner{min-height:max(920px,100svh)}
.variant-b-black .hero h1{max-width:none;font-size:clamp(52px,5.4vw,88px);line-height:1.02}
@media(max-width:1050px){.variant-b-black .hero h1{font-size:clamp(50px,7vw,74px)}}
@media(max-width:760px){.variant-b-black .hero h1{font-size:clamp(42px,10vw,60px)}}
@media(max-width:460px){.variant-b-black .hero h1{font-size:42px}}
.variant-b-black .hero-image{will-change:transform;scale:1.08}
.fx .variant-b-black .hero-image{animation:fx-hero-zoom 3.2s var(--ease-out) both}
@keyframes fx-hero-zoom{from{scale:1.32;opacity:0}to{scale:1.08;opacity:1}}
.fx-pollen{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen}
.variant-b-black .hero-inner{z-index:2;will-change:transform,opacity}
.variant-b-black .hero h1 em .wi{padding-bottom:.24em;margin-bottom:-.24em;background:linear-gradient(100deg,var(--lime) 0 42%,#f7ffd6 50%,var(--lime) 58% 100%) 100% 0/260% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fx-sheen 7s ease-in-out calc(2.6s + var(--i,0)*.09s) infinite}
@keyframes fx-sheen{0%,62%{background-position:100% 0}88%,100%{background-position:0 0}}
.variant-b-black .hero-note{transition:border-color .4s,background .4s,var(--rv-t)}
.variant-b-black .hero-note .small-dot{box-shadow:0 0 0 0 rgba(208,230,90,.6);animation:fx-ping 2.4s var(--ease-out) infinite}
@keyframes fx-ping{0%{box-shadow:0 0 0 0 rgba(208,230,90,.55)}80%,100%{box-shadow:0 0 0 9px rgba(208,230,90,0)}}
.fx-scroll-cue{position:absolute;left:50%;bottom:0;z-index:2;width:1px;height:74px;overflow:hidden;background:rgba(240,246,232,.16);pointer-events:none}
.fx-scroll-cue::after{content:'';position:absolute;left:0;top:-50%;width:1px;height:50%;background:var(--lime);animation:fx-cue 2.2s var(--ease-io) infinite}
@keyframes fx-cue{0%{transform:translateY(0)}100%{transform:translateY(300%)}}

/* Titoli divisi in parole con maschera */
.split .w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .1em .26em 0;margin:0 -.1em -.26em 0}
.split .wi{display:inline-block;padding-right:.04em;margin-right:-.04em}
.fx .split .wi{transform:translate3d(0,112%,0) rotate(5deg);transform-origin:0 100%;transition:transform 1.25s var(--ease-out);transition-delay:calc(var(--d,0s) + var(--i,0)*48ms)}
.fx .split.is-in .wi{transform:none}

/* Reveal generici: usano la proprietà translate, così transform resta libero per hover e tilt */
.fx [data-rv]{transition:opacity 1.1s var(--ease-out) var(--d,0s),translate 1.3s var(--ease-out) var(--d,0s),clip-path 1.6s var(--ease-io) var(--d,0s),scale 1.6s var(--ease-out) var(--d,0s)}
.fx [data-rv="up"]:not(.is-in){opacity:0;translate:0 52px}
.fx [data-rv="fade"]:not(.is-in){opacity:0}
.fx [data-rv="left"]:not(.is-in){opacity:0;translate:-46px 0}
.fx [data-rv="right"]:not(.is-in){opacity:0;translate:46px 0}
.fx [data-rv="clip"]{clip-path:inset(0 0 0 0)}
.fx [data-rv="clip"]:not(.is-in){clip-path:inset(16% 12% 16% 12%)}
.fx [data-rv="zoom"]:not(.is-in){opacity:0;scale:.94}
.fx .eyebrow[data-rv] .eyebrow-line{transform-origin:0 50%;transition:transform 1.1s var(--ease-out) calc(var(--d,0s) + .2s)}
.fx .eyebrow[data-rv]:not(.is-in) .eyebrow-line{transform:scaleX(0)}

/* Icone SVG (al posto dei simboli Unicode che iOS mostra come emoji) */
.variant-b-black .ico{display:block;flex:none}
.variant-b-black .button>span[aria-hidden],.variant-b-black .text-link>span[aria-hidden],.variant-b-black .header-cta>span[aria-hidden]{display:inline-flex;align-items:center}
.variant-b-black .video-play .ico{width:.95em;height:.95em}
.variant-b-black .video-play{padding-left:4px}
.variant-b-black .panel-icon{display:inline-flex}
.variant-b-black .panel-icon .ico{width:24px;height:24px}

/* Fact strip: numeri che contano e riflesso che scorre */
.variant-b-black .fact-strip{position:relative;overflow:hidden}
.variant-b-black .fact-strip::before{content:'';position:absolute;top:-1px;left:0;width:36%;height:1px;background:linear-gradient(90deg,transparent,var(--lime),transparent);animation:fx-scan 6s var(--ease-io) infinite}
@keyframes fx-scan{0%{transform:translateX(-100%)}100%{transform:translateX(300%)}}
.variant-b-black .fact-grid>div{position:relative;transition:background .5s,var(--rv-t)}
.variant-b-black .fact-grid>div::after{content:'';position:absolute;inset:0;background:radial-gradient(260px circle at var(--mx,30%) var(--my,50%),var(--lime-glow),transparent 70%);opacity:0;transition:opacity .5s;pointer-events:none}
.variant-b-black .fact-grid>div:hover::after{opacity:1}
.variant-b-black .fact-grid strong{font-variant-numeric:tabular-nums;transition:transform .6s var(--ease-out),text-shadow .6s}
.variant-b-black .fact-grid>div:hover strong{transform:translateX(4px);text-shadow:0 0 28px rgba(208,230,90,.45)}

/* Video: copertina con zoom lento, play magnetico con onde */
.variant-b-black .video-poster{background-image:none;isolation:isolate}
.variant-b-black .video-poster::after{content:'';position:absolute;inset:0;z-index:-1;background:#0b120d url('assets/img/copertina-vsl.webp') no-repeat 60% center/cover;scale:1.08;translate:0 var(--vy,0px);transition:scale 1.8s var(--ease-out)}
.variant-b-black .video-poster:hover::after{scale:1.14}
.variant-b-black .video-poster::before{z-index:0}
.variant-b-black .video-overlay{z-index:1}
.variant-b-black .video-poster video{z-index:2}
.variant-b-black .video-play{position:relative;transition:transform .7s var(--ease-out),background .35s,color .35s}
.variant-b-black .video-play::before,.variant-b-black .video-play::after{content:'';position:absolute;inset:-1px;border:1px solid var(--lime);border-radius:50%;opacity:0;animation:fx-wave 3s var(--ease-out) infinite;pointer-events:none}
.variant-b-black .video-play::after{animation-delay:1.5s}
@keyframes fx-wave{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(1.9)}}
.variant-b-black .video-overlay:hover .video-play{transform:scale(1.08)}
.variant-b-black .video-overlay>span:last-child{letter-spacing:.02em;transition:letter-spacing .6s var(--ease-out)}
.variant-b-black .video-overlay:hover>span:last-child{letter-spacing:.12em}
.variant-b-black .video-choices button{transition:border-color .3s,background .3s,color .3s,transform .4s var(--ease-out)}
.variant-b-black .video-choices button:hover{transform:translateY(-2px)}

/* Problema: righe che si accendono al passaggio */
.variant-b-black .problem-item{position:relative;isolation:isolate;transition:padding .6s var(--ease-out),var(--rv-t)}
.variant-b-black .problem-item::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(208,230,90,.09),rgba(208,230,90,0) 80%);transform:scaleX(0);transform-origin:0 50%;transition:transform .8s var(--ease-out)}
.variant-b-black .problem-item::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:0 50%;transition:transform .9s var(--ease-out)}
.variant-b-black .problem-item:hover{padding-left:16px}
.variant-b-black .problem-item:hover::before,.variant-b-black .problem-item:hover::after{transform:scaleX(1)}
.variant-b-black .problem-item .item-num{transition:transform .6s var(--ease-out),text-shadow .6s}
.variant-b-black .problem-item:hover .item-num{transform:scale(1.35);text-shadow:0 0 18px rgba(208,230,90,.6)}
.variant-b-black .problem-item h3{transition:color .4s}
.variant-b-black .problem-item:hover h3{color:var(--lime)}

/* Sezioni: .photo-section ha la foto come sfondo "fisso" (sticky) con zoom lento via JS, .plain-section ha sfondo pieno */
.variant-b-black .photo-section{position:relative;isolation:isolate;overflow:clip;padding:160px 0;background:#030504}
.variant-b-black .plain-section{padding:140px 0;background:#050805}
.variant-b-black .photo-section>.shell{position:relative;z-index:1}
.variant-b-black .editorial-photo{position:absolute;inset:0;z-index:0;width:auto;height:auto;margin:0;overflow:clip;background:#030504;clip-path:none}
.variant-b-black .editorial-photo img{position:sticky;top:0;width:100%;height:100vh;height:100lvh;object-fit:cover;will-change:transform;transform:scale(var(--pz,1.1));transform-origin:50% 45%}
.variant-b-black .editorial-photo::before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(520px circle at var(--lx,50%) var(--ly,40%),rgba(208,230,90,.1),transparent 70%);mix-blend-mode:screen;opacity:0;transition:opacity .8s}
.variant-b-black .photo-section:hover .editorial-photo::before{opacity:1}
.variant-b-black .editorial-photo::after{z-index:1;background:linear-gradient(180deg,#050805 0%,rgba(3,5,4,.35) 16%,rgba(3,5,4,.35) 84%,#050805 100%),linear-gradient(90deg,rgba(3,5,4,.92) 0%,rgba(3,5,4,.74) 45%,rgba(3,5,4,.5) 100%)}
.variant-b-black .photo-filari img{object-position:center 60%;filter:brightness(.95) saturate(.9)}
.variant-b-black .photo-spalliera img{object-position:center 58%}
.variant-b-black .photo-alba img{object-position:30% center;filter:brightness(.8) saturate(.75) sepia(.12)}
.variant-b-black .photo-gemme img{object-position:70% center;filter:brightness(1.05) saturate(.9)}
.variant-b-black .photo-section p{color:#c9d4c8}
.fx .variant-b-black .editorial-photo[data-rv]{transition:opacity 1.6s var(--ease-out)}

/* Metodo: card con tilt 3D e luce che segue il puntatore */
.variant-b-black .method-cards{perspective:1400px}
.variant-b-black .method-cards article,.variant-b-black .comparison-panel,.variant-b-black .contact-form{position:relative;isolation:isolate}
.variant-b-black .method-cards article{overflow:hidden;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .9s var(--ease-out),border-color .5s,background .5s,opacity 1.1s var(--ease-out) var(--d,0s),translate 1.3s var(--ease-out) var(--d,0s)}
.variant-b-black .method-cards article.is-tilting{transition:transform .18s linear,border-color .5s,background .5s}
.variant-b-black .method-cards article>*{position:relative;z-index:1}
.fx-spot::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(460px circle at var(--mx,50%) var(--my,50%),rgba(208,230,90,.15),transparent 45%);opacity:0;transition:opacity .5s}
.fx-spot:hover::before{opacity:1}
.variant-b-black .method-cards article::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--lime);transform:scaleX(0);transform-origin:0 50%;transition:transform .9s var(--ease-out)}
.variant-b-black .method-cards article:hover{border-color:rgba(208,230,90,.55);background:#0c150d}
.variant-b-black .method-cards article:hover::after{transform:scaleX(1)}
.variant-b-black .method-cards .step-number{transition:transform .7s var(--ease-out),letter-spacing .7s var(--ease-out)}
.variant-b-black .method-cards article:hover .step-number{transform:translateX(6px);letter-spacing:.14em}
.variant-b-black .method-cards h3{transition:transform .7s var(--ease-out)}
.variant-b-black .method-cards article:hover h3{transform:translateY(-4px)}

/* Confronto: pannello con luce, corsie e rilievi in sequenza */
.variant-b-black .comparison-panel>*{position:relative;z-index:1}
.variant-b-black .comparison-panel{transition:border-color .5s,box-shadow .6s,opacity 1.1s var(--ease-out) var(--d,0s),translate 1.3s var(--ease-out) var(--d,0s),scale 1.6s var(--ease-out) var(--d,0s)}
.variant-b-black .comparison-panel:hover{border-color:#86a35a;box-shadow:0 38px 110px rgba(0,0,0,.55),0 0 0 1px rgba(208,230,90,.08),0 0 80px rgba(208,230,90,.08)}
.variant-b-black .panel-icon{display:inline-block;animation:fx-spin 16s linear infinite}
@keyframes fx-spin{to{transform:rotate(360deg)}}
.variant-b-black .compare-lanes>div{transition:transform .5s var(--ease-out),opacity 1s var(--ease-out) var(--d,0s),translate 1.2s var(--ease-out) var(--d,0s)}
.variant-b-black .compare-lanes>div:hover{transform:translateX(8px)}
.variant-b-black .comparison-panel .compare-lanes span{transition:background .35s,color .35s,border-color .35s}
.variant-b-black .comparison-panel .compare-lanes>div:hover span{background:var(--lime);color:#0b140c;border-color:var(--lime)}
.variant-b-black .comparison-panel .measure-list li::before{transition:transform .5s var(--ease-out)}
.variant-b-black .comparison-panel .measure-list li:hover::before{transform:scale(1.8) rotate(45deg)}

/* Contatti: campi che si accendono, firma che si disegna */
.variant-b-black .form-grid label>span{transition:color .3s,transform .4s var(--ease-out);transform-origin:0 50%}
.variant-b-black .form-grid label:focus-within>span{color:var(--lime);transform:translateX(3px)}
.variant-b-black .form-grid input,.variant-b-black .form-grid textarea{transition:border-color .3s,box-shadow .4s,background .3s}
.variant-b-black .form-grid input:hover,.variant-b-black .form-grid textarea:hover{border-color:#6c8a5a}
.variant-b-black .form-grid input:focus,.variant-b-black .form-grid textarea:focus{outline:0;border-color:var(--lime);background:#050b06;box-shadow:0 0 0 4px rgba(208,230,90,.12),0 10px 30px rgba(0,0,0,.35)}
.variant-b-black .contact-form>*{position:relative;z-index:1}
.variant-b-black .founder{position:relative;border-top-color:transparent}
.variant-b-black .founder::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:linear-gradient(90deg,var(--lime),#3c473e 60%);transform-origin:0 50%;transition:transform 1.6s var(--ease-io) calc(var(--d,0s) + .3s)}
.fx .variant-b-black .founder:not(.is-in)::before{transform:scaleX(0)}

.variant-b-black .footer-inner a{transition:color .3s,transform .5s var(--ease-out)}
.variant-b-black .footer-inner a:hover{transform:translateY(-3px)}

@media(max-width:760px){
  .variant-b-black .hero,.variant-b-black .hero-inner{min-height:max(780px,100svh)}
  .fx-scroll-cue{display:none}
  .variant-b-black .problem-item:hover{padding-left:0}
  .fx [data-rv="up"]:not(.is-in){translate:0 34px}
  .fx [data-rv="clip"]:not(.is-in){clip-path:inset(10% 6% 10% 6%)}
  .variant-b-black .photo-section{padding:100px 0}
  .variant-b-black .plain-section{padding:88px 0}
  .variant-b-black .editorial-photo::after{background:linear-gradient(180deg,#050805 0%,rgba(3,5,4,.62) 12%,rgba(3,5,4,.8) 50%,#050805 100%)}
  .variant-b-black::after{animation:none;opacity:.045}
}
@media(max-width:460px){.variant-b-black .hero,.variant-b-black .hero-inner{min-height:max(740px,100svh)}}
/* Su schermi piccoli e touch le animazioni allo scroll sono brevi, con ritardi minimi, per non restare indietro scorrendo veloce */
@media(max-width:760px),(hover:none){
  .fx [data-rv]:not(.hero [data-rv]){transition-duration:.55s!important;transition-delay:calc(var(--d,0s)*.25)!important}
  .fx [data-rv="up"]:not(.is-in):not(.hero [data-rv]){translate:0 22px}
  .fx .split:not(#hero-title) .wi{transition-duration:.6s;transition-delay:calc(var(--d,0s)*.25 + var(--i,0)*14ms)}
  .fx .eyebrow[data-rv]:not(.hero [data-rv]) .eyebrow-line{transition-duration:.5s;transition-delay:.05s}
  .variant-b-black .founder::before{transition-duration:.8s;transition-delay:.1s}
}
@media(hover:none){
  .variant-b-black .method-cards article::after{transform:scaleX(.18)}
  .variant-b-black .method-cards article.is-in::after{transform:scaleX(1);transition-delay:calc(var(--d,0s) + .5s)}
}
@media(prefers-reduced-motion:reduce){
  .variant-b-black::after,.fx-scroll-cue::after,.variant-b-black .panel-icon,.variant-b-black .video-play::before,.variant-b-black .video-play::after,.variant-b-black .fact-strip::before,.variant-b-black .hero-note .small-dot,.variant-b-black .hero h1 em .wi{animation:none}
  .variant-b-black .hero h1 em .wi{color:var(--lime);background:none}
}

/* ---- variante-b-nera-sezioni.css ---- */
/* Variante B nera · blocchi della landing D25 costruiti sul testo del docx.
   Stesso linguaggio grafico della variante: neri profondi, Georgia per i titoli, DM Sans per il testo, accento lime. */

.variant-b-black strong{color:#f4f7ee;font-weight:700}
.variant-b-black .section p,.variant-b-black .video-section p{line-height:1.7}

/* Header: la CTA riporta il testo del primo pulsante del docx */
.variant-b-black .header-cta{gap:12px;white-space:nowrap}
.variant-b-black .header-cta>span:first-child{display:inline}
@media(max-width:1100px){.variant-b-black .header-cta{display:none}}

/* Logo D25 */
.variant-b-black .wordmark{display:inline-flex;align-items:center}
.variant-b-black .wordmark-logo{display:block;width:44px;height:44px;transition:transform .8s var(--ease-out),filter .6s}
.variant-b-black .wordmark:hover .wordmark-logo{transform:rotate(-8deg) scale(1.08);filter:drop-shadow(0 0 10px rgba(208,230,90,.45))}
.variant-b-black .site-header.is-scrolled .wordmark-logo{width:38px;height:38px}
.variant-b-black .hero-logo{display:block;width:120px;height:120px;margin:0 0 26px -6px;filter:drop-shadow(0 0 26px rgba(208,230,90,.28))}
.fx .variant-b-black .hero-logo.is-in{animation:fx-logo-float 7s ease-in-out 2s infinite}
@keyframes fx-logo-float{0%,100%{translate:0 0}50%{translate:0 -6px}}

/* Hero */
.variant-b-black .hero-kicker{display:flex;gap:14px;max-width:560px;margin:0 0 30px;color:#dfe8d6;font-size:15px;font-weight:600;line-height:1.55}
.variant-b-black .hero-kicker::before{content:'';flex:none;width:26px;height:1px;margin-top:.8em;background:var(--lime)}
.variant-b-black .hero-lead{max-width:640px}
.variant-b-black .hero-copy{padding-top:130px}

/* Frasi in evidenza e testo */
.variant-b-black .statement{max-width:980px;margin:0 0 34px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(26px,2.6vw,38px);line-height:1.3;letter-spacing:-.025em;color:#eef3e8}
.variant-b-black .statement em{font-style:italic;color:var(--lime)}
.variant-b-black .statement strong{font-weight:400;color:#fff;background:linear-gradient(transparent 62%,rgba(208,230,90,.22) 62%)}
.variant-b-black .statement .label{display:block;margin-bottom:18px;background:none;color:var(--lime);font-family:'DM Sans',Arial,sans-serif;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.variant-b-black .statement-xl{font-size:clamp(28px,3.2vw,48px);line-height:1.22}
.variant-b-black .statement-wide{max-width:1100px;margin:110px 0 0;padding-top:48px;border-top:1px solid rgba(208,230,90,.18)}
.variant-b-black .lead-text{max-width:720px;font-size:19px;color:#d6e0d3!important}
.variant-b-black .prose p{max-width:640px;margin-bottom:22px;font-size:17px}
.variant-b-black .prose p:last-child{margin-bottom:0}
.variant-b-black .two-col{display:grid;grid-template-columns:1fr 1fr;gap:6%;margin-top:56px}
.variant-b-black .two-col p{margin:0;font-size:17px}
.variant-b-black .section-title-wide{max-width:1080px;margin-bottom:56px}
.variant-b-black .sticky-col{position:sticky;top:120px;align-self:start}

/* Video */
.variant-b-black .video-section{padding:130px 0 120px;background:#050805}
.variant-b-black .video-grid>.video-intro{padding-bottom:64px}
.variant-b-black .video-grid .video-intro .statement{max-width:1000px;font-size:clamp(26px,2.6vw,38px);color:#eef3e8}
.variant-b-black .video-grid .video-intro .lead-text{max-width:760px;font-size:19px}
.variant-b-black .video-play{width:112px;height:112px;font-size:30px}
.variant-b-black .cta-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:56px}

/* Testimonianze: segnaposto del docx, ben riconoscibili finché non arrivano quelle reali */
.variant-b-black .testimonial{position:relative;isolation:isolate;overflow:hidden;max-width:880px;margin-top:80px;padding:34px 38px;border:1px dashed rgba(208,230,90,.5);background:rgba(5,9,6,.62);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.variant-b-black .testimonial>*{position:relative;z-index:1}
.variant-b-black .testimonial-badge{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:6px 10px;border:1px solid rgba(208,230,90,.35);color:var(--lime)!important;font-size:11px!important;font-weight:800;letter-spacing:.12em;line-height:1.3!important;text-transform:uppercase}
.variant-b-black .testimonial-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--lime);animation:fx-ping 2.4s var(--ease-out) infinite}
.variant-b-black .testimonial h3{margin:0 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2vw,30px);font-weight:400;line-height:1.25;letter-spacing:-.02em}
.variant-b-black .testimonial p{margin:0;font-size:15px;font-style:italic;color:#aebcae!important}
.variant-b-black .testimonial .testimonial-meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px;padding-top:16px;border-top:1px solid rgba(208,230,90,.16);font-style:normal;font-size:13px;font-weight:700;color:#dfe7da!important}

/* Perché gestire il risveglio: elenco con spunte */
.variant-b-black .why-section .section-grid{gap:8%}
.variant-b-black .check-list{border-top:1px solid rgba(208,230,90,.18)}
.variant-b-black .check-item{position:relative;display:grid;grid-template-columns:40px 1fr;gap:16px;padding:26px 0;border-bottom:1px solid rgba(208,230,90,.18);transition:padding .6s var(--ease-out),var(--rv-t)}
.variant-b-black .check-item::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(208,230,90,.08),transparent 80%);transform:scaleX(0);transform-origin:0 50%;transition:transform .8s var(--ease-out)}
.variant-b-black .check-item:hover{padding-left:14px}
.variant-b-black .check-item:hover::before{transform:scaleX(1)}
.variant-b-black .check-item p{margin:0;font-size:16px;color:#b9c6b8}
.variant-b-black .check-item strong{display:block;margin-bottom:4px;font-family:Manrope,Arial,sans-serif;font-size:19px;letter-spacing:-.02em;transition:color .4s}
.variant-b-black .check-item:hover strong{color:var(--lime)}
.variant-b-black .check-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border:1px solid rgba(208,230,90,.55);border-radius:50%;color:var(--lime);transition:background .35s,color .35s,transform .6s var(--ease-out)}
.variant-b-black .check-icon .ico{width:15px;height:15px}
.variant-b-black .check-item:hover .check-icon{background:var(--lime);color:#0b140c;transform:rotate(-8deg) scale(1.08)}

/* CTA intermedie */
.variant-b-black .cta-band{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;margin-top:90px;padding:44px 0 0;border-top:1px solid rgba(208,230,90,.18)}
.variant-b-black .cta-band p{max-width:720px;margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2vw,28px);line-height:1.35;color:#eef3e8!important}

/* Tabella di confronto */
.variant-b-black .compare-table{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(208,230,90,.28);background:rgba(4,8,5,.7);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 38px 110px rgba(0,0,0,.5)}
.variant-b-black .compare-table>*{position:relative;z-index:1}
.variant-b-black .compare-row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(208,230,90,.16)}
.variant-b-black .compare-row:first-child{border-top:0}
.variant-b-black .compare-cell{display:flex;gap:16px;align-items:flex-start;padding:26px 30px}
.variant-b-black .compare-cell+.compare-cell{border-left:1px solid rgba(208,230,90,.16)}
.variant-b-black .compare-cell p{margin:0;font-size:16px;color:#c3cfc2!important}
.variant-b-black .compare-cell.is-d25{background:rgba(208,230,90,.05)}
.variant-b-black .compare-cell.is-d25 p{color:#eef3e8!important}
.variant-b-black .compare-head .compare-cell{padding-top:22px;padding-bottom:22px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#dfe7da}
.variant-b-black .compare-head .is-d25{color:var(--lime)}
.variant-b-black .compare-label{display:none}
.variant-b-black .compare-row:not(.compare-head){transition:background .4s,var(--rv-t)}
.variant-b-black .compare-row:not(.compare-head):hover{background:rgba(208,230,90,.04)}
.variant-b-black .compare-row:hover .check-icon{background:var(--lime);color:#0b140c}
.variant-b-black .market-col{align-items:start;margin-top:70px}
.variant-b-black .pull-quote{position:relative;margin:0;padding-left:34px;border-left:2px solid var(--lime);font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2.1vw,30px);font-style:italic;line-height:1.35;color:#f1f6ea}

/* D25 nasce da una domanda semplice */
.variant-b-black .story-section h2:not(.claim){font-size:clamp(34px,3.4vw,52px)}
.variant-b-black .claim{max-width:1180px;margin:120px 0 60px!important;font-family:Manrope,Arial,sans-serif!important;font-size:clamp(34px,4.6vw,72px)!important;font-weight:800!important;line-height:1.02!important;letter-spacing:-.045em!important;text-transform:uppercase}
.variant-b-black .claim em{font-family:Manrope,Arial,sans-serif!important;font-style:normal!important;font-size:1em!important;color:var(--lime)}
.variant-b-black .story-grid{align-items:start}
.variant-b-black .question-list{display:grid;gap:26px}
.variant-b-black .question{position:relative;margin:0;padding:26px 0 0 0;border-top:1px solid rgba(208,230,90,.2);font-family:Georgia,'Times New Roman',serif;font-size:clamp(21px,1.9vw,27px);font-style:italic;line-height:1.35;color:#eef3e8!important}
.variant-b-black .question::before{content:'';position:absolute;top:-1px;left:0;width:48px;height:2px;background:var(--lime)}

/* Metodo */
.variant-b-black .method-section h2{margin-bottom:56px}
.variant-b-black .method-cards h3{text-transform:uppercase;letter-spacing:.02em;font-size:22px;margin-top:28px}
.variant-b-black .method-cards .step-body{font-size:15.5px;line-height:1.65}
.variant-b-black .method-cards .step-body::first-letter{text-transform:uppercase}
.variant-b-black .method-cards article{min-height:360px}

/* Contatto */
.variant-b-black .contact-section .contact-grid{grid-template-columns:1fr 1fr;gap:6%;align-items:start}
.variant-b-black .contact-copy{padding-top:0}
.variant-b-black .contact-copy p{font-size:16.5px}
.variant-b-black .contact-copy .lead-text{font-size:19px}
.variant-b-black .form-pointer{padding-top:18px;border-top:1px solid rgba(208,230,90,.2);font-weight:700;color:var(--lime)!important}
.variant-b-black .contact-side{position:sticky;top:110px}
.variant-b-black .contact-section .contact-form{background:rgba(6,11,7,.72);border-color:rgba(208,230,90,.24);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2)}
.variant-b-black .contact-section .form-grid input,.variant-b-black .contact-section .form-grid textarea{background:rgba(2,5,3,.8)}
.variant-b-black .signoff{margin-top:34px}
.variant-b-black .signoff p{margin:0;color:#c9d4c8!important}
.variant-b-black .signoff .signoff-name{margin-top:10px;font-family:Georgia,'Times New Roman',serif;font-size:28px;font-style:italic;color:#f4f7ee!important}
.variant-b-black .signoff .signoff-role{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--lime)!important}

.variant-b-black .footer-inner{justify-content:space-between}

/* Tablet */
@media(max-width:1050px){
  .variant-b-black .two-col{gap:5%}
  .variant-b-black .compare-cell{padding:22px}
  .variant-b-black .contact-section .contact-grid{grid-template-columns:1fr;gap:48px}
  .variant-b-black .contact-side{position:static}
  .variant-b-black .method-cards{grid-template-columns:1fr}
  .variant-b-black .method-cards article{min-height:0}
}

/* Mobile */
@media(max-width:760px){
  .variant-b-black .hero-copy{padding-top:130px}
  .variant-b-black .hero-kicker{font-size:14px;margin-bottom:22px}
  .variant-b-black .hero-logo{width:92px;height:92px;margin-bottom:20px}
  .variant-b-black .wordmark-logo{width:36px;height:36px}
  .variant-b-black .video-section{padding:84px 0 80px}
  .variant-b-black .video-grid>.video-intro{padding-bottom:36px}
  .variant-b-black .video-play{width:78px;height:78px;font-size:22px}
  .variant-b-black .cta-row{margin-top:36px}
  .variant-b-black .cta-row .button,.variant-b-black .cta-band .button{width:100%}
  .variant-b-black .statement-wide{margin-top:70px;padding-top:34px}
  .variant-b-black .two-col{grid-template-columns:1fr;gap:22px;margin-top:36px}
  .variant-b-black .sticky-col{position:static}
  .variant-b-black .section-title-wide{margin-bottom:36px}
  .variant-b-black .testimonial{margin-top:56px;padding:24px 22px}
  .variant-b-black .check-item{grid-template-columns:34px 1fr;gap:12px;padding:22px 0}
  .variant-b-black .check-item:hover{padding-left:0}
  .variant-b-black .check-item strong{font-size:17px}
  .variant-b-black .cta-band{grid-template-columns:1fr;gap:24px;margin-top:60px;padding-top:32px}
  .variant-b-black .compare-head{display:none}
  .variant-b-black .compare-row{grid-template-columns:1fr;border-top:1px solid rgba(208,230,90,.28)}
  .variant-b-black .compare-row:nth-child(2){border-top:0}
  .variant-b-black .compare-cell{padding:20px}
  .variant-b-black .compare-cell+.compare-cell{border-left:0;border-top:1px dashed rgba(208,230,90,.16)}
  .variant-b-black .compare-label{display:block;margin-bottom:6px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#9fb09c}
  .variant-b-black .is-d25 .compare-label{color:var(--lime)}
  .variant-b-black .market-col{margin-top:44px}
  .variant-b-black .pull-quote{padding-left:22px}
  .variant-b-black .claim{margin:80px 0 40px!important}
  .variant-b-black .signoff .signoff-name{font-size:24px}
}
