/* ws2611 cro2: sistema delle slide masterclass v18 (fondo nero, Inter Tight 800, giallo #FFE600). */
@font-face{font-family:'Inter Tight';src:url(InterTight.woff2) format('woff2');font-weight:100 900;font-display:swap}
:root{--y:#FFE600;--g:#b9b9b9}
*{box-sizing:border-box;margin:0;padding:0}
html{background:#000;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:#000;color:#fff;font:500 18px/1.4 'Inter Tight',Inter,'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.y{color:var(--y)}
.wrap{width:min(1240px,100%);margin:0 auto;padding:0 20px}
h1,h2,h3{font-weight:800;letter-spacing:-.032em;line-height:1}
h1{font-size:clamp(44px,13.6vw,54px)}
h2{font-size:38px;line-height:1.04}
h3{font-size:25px;line-height:1.1}
.sec{padding:72px 0}
.sub{margin-top:18px;font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.012em}
.tag{display:block;color:var(--y);font-weight:800;font-size:15px;letter-spacing:.03em;text-transform:uppercase}
.fine{font-size:14px;line-height:1.4;color:var(--g);margin-top:12px}
.fine a{color:#fff}
.dv{background:var(--y);color:#000;font-size:.72em;font-weight:800;padding:1px 5px;white-space:nowrap}
/* brand */
.brand{position:absolute;z-index:3;top:12px;left:20px;display:flex;align-items:center;gap:8px;font-weight:800;font-size:16px;letter-spacing:-.02em;text-decoration:none;text-shadow:0 1px 8px #000}
.brand b{color:var(--y)}
/* bottoni: giallo con testo nero */
.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;padding:12px 22px;border:0;border-radius:6px;background:var(--y);color:#000;font:800 19px/1.1 'Inter Tight',Arial,sans-serif;letter-spacing:-.015em;text-decoration:none;text-align:center;cursor:pointer}
.btn:hover{background:#fff}
.btn:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:2px}
.btn.alt{background:#fff}
.btn[disabled]{opacity:.6}
/* primo schermo con foto */
.hero{position:relative;overflow:hidden;background:#000}
.hero-ph{position:absolute;top:0;left:0;width:100%;height:440px}
.hero-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.hero-ph:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 40%,rgba(0,0,0,.82) 62%,#000 82%)}
.hero-in{position:relative;z-index:2;padding:224px 20px 28px}
.hero .tag{margin-bottom:8px;font-size:14px;text-transform:none;letter-spacing:-.005em}
.hero .sub{margin-top:10px;font-size:17px;line-height:1.24;color:#fff}
/* modulo */
.form{margin-top:12px;display:grid;gap:8px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.form input[type=text],.form input[type=email]{width:100%;height:50px;padding:0 14px;border:0;border-radius:6px;background:#fff;color:#000;font:600 16px 'Inter Tight',Arial,sans-serif}
.form input::placeholder{color:#5c5c5c}
.ck{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;line-height:1.28;font-weight:500}
.ck input{flex:none;width:20px;height:20px;margin-top:0;accent-color:var(--y)}
.ck a{color:#fff}
.ck.off{color:var(--g);font-size:13px}
.micro{font-size:13.5px;color:var(--g)}
/* righe tipo slide 8 */
.rows{list-style:none;margin-top:30px}
.rows li{padding:15px 0;border-top:1px solid #2c2c2c;font-size:27px;line-height:1.08;font-weight:800;letter-spacing:-.028em}
.rows small{display:block;font-size:14px;font-weight:600;letter-spacing:0;color:var(--g);margin-bottom:2px}
/* due colonne confronto */
.duo{display:grid;gap:30px;margin-top:30px}
.duo p{margin-top:10px}
.shot{border-radius:6px;width:100%}
.cap{font-size:14px;color:var(--g);margin-top:10px}
/* faq */
.faq{margin-top:26px}
.faq details{border-top:1px solid #2c2c2c}
.faq summary{list-style:none;cursor:pointer;padding:17px 34px 17px 0;font-size:21px;line-height:1.15;font-weight:800;letter-spacing:-.02em;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:'+';position:absolute;right:2px;top:12px;font-size:28px;color:var(--y)}
.faq details[open] summary:after{content:'–'}
.faq p{padding:0 0 18px;max-width:760px}
/* prezzo e numeri giganti */
.big{display:block;font-weight:800;letter-spacing:-.04em;line-height:.95;font-size:108px;color:var(--y);font-variant-numeric:tabular-nums}
.big.w{color:#fff}
/* vendita: primo schermo */
.when{margin-top:12px;font-size:30px;line-height:1.02;font-weight:800;letter-spacing:-.028em;color:var(--y)}
.hours{margin-top:5px;font-size:15.5px;line-height:1.25;font-weight:600}
.buy{display:flex;align-items:center;gap:12px;margin:12px 0 10px}
.buy .p{font-size:54px;line-height:1;font-weight:800;letter-spacing:-.04em;white-space:nowrap}
.buy small{font-size:13.5px;line-height:1.2;font-weight:600;color:#fff}
.left{font-weight:800;color:var(--y);font-variant-numeric:tabular-nums}
/* programma */
.days{display:grid;gap:34px;margin-top:30px}
.days h3{font-size:36px;margin-top:6px}
.days p{margin-top:10px}
.band img{width:100%;height:auto;aspect-ratio:1400/591;object-fit:cover}
/* scala dell'offerta, slide 29-38 */
.ladder{display:grid;gap:0;margin-top:24px}
.lad-nav{display:none}
.blk{padding-bottom:34px}
.blk>h3{position:sticky;top:0;z-index:2;background:var(--y);color:#000;padding:13px 14px;border-radius:6px;font-size:23px}
.item{margin-top:18px}
.item strong{display:block;font-size:21px;line-height:1.14;font-weight:800;letter-spacing:-.02em}
.item span{display:block;margin-top:3px;font-size:17px;line-height:1.3}
.blk picture{display:block;margin-top:16px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.pair picture{margin:0}
.cover{width:150px}
/* offerta */
.pass4{font-size:150px}
.offer-lines{margin-top:14px;font-size:21px;line-height:1.25;font-weight:700;letter-spacing:-.015em}
.offer-lines p+p{margin-top:6px}
.offer .btn{margin-top:18px;max-width:560px}
.alt-note{margin-top:20px;font-size:17px;line-height:1.32;max-width:640px}
.recap{list-style:none;margin-top:24px}
.recap li{display:grid;gap:2px;padding:12px 0;border-top:1px solid #2c2c2c;font-size:17px;line-height:1.28}
.recap b{color:var(--y);font-weight:800}
/* guarda */
.g-top{padding:52px 20px 12px}
.g-top h1{font-size:40px}
.video{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}
.video iframe,.video video{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-ph{position:absolute;inset:0}
.video-ph img{width:100%;height:100%;object-fit:cover}
.video-ph:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,0) 55%)}
.video-ph p{position:absolute;z-index:2;left:14px;bottom:12px;font-size:19px;font-weight:800;letter-spacing:-.02em}
.under{padding:14px 20px 0;font-size:15px;font-weight:700}
.offer{padding:24px 20px 36px}
.offer .big{margin-top:6px}
.closed .big{font-size:58px;color:#fff}
/* grazie */
.th{padding:64px 20px 24px}
.th h1{font-size:clamp(44px,14vw,56px)}
.th .sub{font-size:24px;line-height:1.12;font-weight:800;letter-spacing:-.02em;margin-top:14px}
.steps{list-style:none;padding:0 20px;display:grid;gap:22px}
.steps b.n{display:block;color:var(--y);font-size:15px;font-weight:800}
.steps h2{font-size:26px;margin-bottom:5px}
.steps .btn{margin-top:10px}
.steps p{font-size:17px;line-height:1.32}
.four{list-style:none;margin-top:8px}
.four li{padding:3px 0;font-size:17px}
/* chiusura e piede */
.close-s h2{font-size:42px}
.close-s .btn{margin-top:22px;max-width:560px}
.v2-sticky{position:fixed;z-index:50;left:0;right:0;bottom:0;display:none;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#000;border-top:2px solid var(--y)}
.v2-sticky.is-visible{display:block}
.v2-sticky .btn{min-height:50px;font-size:17px}
.foot{border-top:1px solid #2c2c2c;padding:26px 20px 90px;font-size:14px;color:var(--g)}
.foot div{width:min(1200px,100%);margin:0 auto}
.foot a{color:#fff}
.foot small{font-size:12px}
.prev-msg{font-size:14px;color:var(--y);font-weight:700}
/* banner consenso: stesso testo e stesse scelte, meno alto */
body #ws-ck{background:#000;border-top:2px solid var(--y);padding:9px 12px calc(9px + env(safe-area-inset-bottom));font:500 12px/1.3 'Inter Tight',Arial,sans-serif}
body #ws-ck p{margin:0 0 7px}
body #ws-ck a{color:#fff}
body #ws-ck .ws-ck-b{gap:6px;flex-wrap:wrap}
body #ws-ck button{min-height:38px;padding:6px 11px;border-radius:6px;border:1px solid #fff;background:#000;color:#fff;font:800 13px 'Inter Tight',Arial,sans-serif}
body #ws-ck button[data-v=am]{background:var(--y);border-color:var(--y);color:#000}
body #ws-ck details{width:auto}
body #ws-ck summary{min-height:0;padding:9px 2px;font-size:13px;font-weight:700}
body #ws-ck details[open]{width:100%}
body.ws-ck-open .foot{padding-bottom:170px}
[hidden]{display:none!important}
/* guarda: bottone nel primo schermo mobile */
[data-page=guarda] h2{font-size:30px}
.g-top{padding:44px 20px 8px}.g-top h1{font-size:35px}
.under{padding:10px 20px 0}
.offer{padding:14px 20px 28px}
.offer .big{font-size:84px;margin-top:2px}
.offer .offer-lines{font-size:16.5px;margin-top:8px;font-weight:600}.offer .offer-lines p+p{margin-top:2px}
.offer .btn{margin-top:12px}
/* varianti titolo */
.hero-b{display:none}html[data-hero=b] .hero-a{display:none}html[data-hero=b] .hero-b{display:block}
@media(max-width:374px){h1{font-size:44px}.big{font-size:88px}.when{font-size:26px}}
/* desktop */
@media(min-width:900px){
 body{font-size:21px}
 .wrap{padding:0 48px}
 h1{font-size:min(112px,7.8vw)}
 h2{font-size:72px}
 h3{font-size:34px}
 .sec{padding:120px 0}
 .sub{font-size:27px}
 .brand{left:48px;top:24px;font-size:20px}
 .hero{min-height:min(100vh,900px);display:flex;align-items:flex-end}
 .hero-ph{left:auto;right:0;width:56%;height:100%}
 .hero-v .hero-ph{width:44%}
 .hero-v .hero-ph img{object-position:50% 0}
 .hero-v .hero-ph:after{background:linear-gradient(90deg,#000 0%,rgba(0,0,0,0) 22%),linear-gradient(0deg,#000 8%,rgba(0,0,0,.85) 30%,rgba(0,0,0,0) 52%)}
 [data-page=guarda] h2{font-size:52px}
 .g-top h1{font-size:64px}
 .hero-ph img{object-position:60% 12%}
 .hero-ph:after{background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.6) 26%,rgba(0,0,0,0) 52%),linear-gradient(0deg,#000 0%,rgba(0,0,0,0) 30%)}
 .hero-in{width:min(1240px,100%);margin:0 auto;padding:96px 48px 44px}
 .hero .tag{font-size:21px;margin-bottom:14px}
 .hero .sub{font-size:26px;margin-top:16px;max-width:780px}
 .form{grid-template-columns:230px 300px 330px;margin-top:24px;max-width:880px}
 .form .ck{grid-column:1/-1}
 .form .micro{grid-column:1/-1}
 .ck{font-size:14.5px}.ck.off{font-size:14px}
 .btn{font-size:21px;min-height:62px}
 .form input[type=text],.form input[type=email]{height:62px;font-size:18px}
 .rows li{font-size:56px;padding:20px 0}
 .rows small{font-size:17px}
 .duo{grid-template-columns:1fr 1fr;gap:64px;align-items:center}
 .faq summary{font-size:30px;padding:24px 40px 24px 0}
 .faq summary:after{top:20px;font-size:36px}
 .big{font-size:240px}
 .pass4{font-size:300px}
 .when{font-size:52px;margin-top:20px}
 .hours{font-size:21px;margin-top:8px}
 .buy{margin:18px 0 12px;gap:16px}.buy .p{font-size:72px}.buy small{font-size:16px}
 .hero .btn{max-width:420px}
 .days{grid-template-columns:1fr 1fr;gap:64px}
 .days h3{font-size:64px}
 .ladder{grid-template-columns:400px 1fr;gap:64px;margin-top:48px}
 .lad-nav{display:block;position:sticky;top:24px;align-self:start;list-style:none}
 .lad-nav li{padding:13px 16px;border-bottom:1px solid #2c2c2c;font-size:23px;line-height:1.1;font-weight:800;letter-spacing:-.02em;border-radius:6px}
 .lad-nav li.on{background:var(--y);color:#000;border-color:var(--y)}
 .blk{padding-bottom:64px}
 .blk>h3{position:static;background:none;color:#fff;padding:0;font-size:64px}
 .item strong{font-size:30px}.item span{font-size:21px}
 .cover{width:230px}
 .offer-lines{font-size:32px}
 .alt-note{font-size:21px}
 .recap li{grid-template-columns:200px 1fr;font-size:21px}
 .g-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(330px,1fr);gap:40px;width:min(1400px,100%);margin:0 auto;padding:68px 40px 24px;align-items:start}
 .g-top{padding:0 0 14px}.g-top h1{font-size:64px}
 .under{padding:14px 0 0;font-size:18px}
 .offer{padding:64px 0 0}
 .offer .big{font-size:128px}
 .offer .offer-lines{font-size:21px}
 .g-grid .btn{font-size:20px}
 .th{padding:110px 48px 44px;width:min(1240px,100%);margin:0 auto}
 .th h1{font-size:min(112px,7.8vw)}.th .sub{font-size:44px}
 .steps{grid-template-columns:repeat(3,1fr);gap:40px;padding:0 48px;width:min(1240px,100%);margin:0 auto}
 .steps h2{font-size:38px}.steps p{font-size:19px}.four li{font-size:19px}
 .close-s h2{font-size:88px}
 .v2-sticky{display:none!important}
 .foot{padding-bottom:40px}
}
body[data-offer=loading] .offer,body[data-offer=loading] .v2-sticky{visibility:hidden}
/* revisione design 1/11 (design/revisione-0111.md) */
.ck,.ck.off,.fine,.micro,.cap,.foot,.foot small,.tag,.dv{font-size:16px;line-height:1.4}
.field{min-width:0}
.field label{display:block;font-size:16px;line-height:1.3;font-weight:700;margin-bottom:4px}
.form>input,.form>.btn{min-width:0}
.btn:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible,#ws-ck button:focus-visible{outline:3px solid var(--y);outline-offset:3px;box-shadow:0 0 0 2px #000}
.btn.alt{background:var(--y);color:#000}
.hero,#iscriviti,#posto,#offerta{scroll-margin-bottom:90px}
body #ws-ck{font-size:16px;line-height:1.4}
body #ws-ck .ws-ck-b{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body #ws-ck button{min-height:44px;font-size:16px}
body #ws-ck summary{min-height:44px;padding:10px 2px;font-size:16px;line-height:24px}
body #ws-ck label{min-height:44px;font-size:16px}
.hero-v .when{color:#fff}
@media(max-width:899px){
 .hours,.buy small,.rows small,.hero .tag,.under,.steps b.n,.prev-msg{font-size:16px;line-height:1.4}
 [data-page=masterclass] .hero-in{padding-top:184px}
 body #ws-ck{position:relative;inset:auto;width:100%}
 .blk>h3{position:static;background:transparent;color:#fff;padding:0 0 10px;border-bottom:2px solid var(--y);border-radius:0;font-size:30px}
 .foot{padding-bottom:calc(26px + var(--sticky-height,72px) + env(safe-area-inset-bottom))}
 body.ws-ck-open .foot{padding-bottom:calc(26px + var(--sticky-height,72px) + env(safe-area-inset-bottom))}
}
@media(min-width:900px){
 .form{width:100%;max-width:880px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.4fr);align-items:end}
 .ck,.ck.off{font-size:16px}
 .hero-v .fine{max-width:64ch;font-size:16px;line-height:1.4}
 .under{display:none}
}
/* banner su desktop in alto: in basso coprirebbe consensi e bottone a 1440×900 */
.steps b.n{font-size:16px}
@media(min-width:900px){
 body #ws-ck{top:0;bottom:auto;border-top:0;border-bottom:2px solid var(--y)}
 body.ws-ck-open[data-page=guarda] main,body.ws-ck-open[data-page=grazie] main{padding-top:116px}
}
/* telefoni bassi (375×667): il bottone resta nel primo schermo */
@media(max-width:899px) and (max-height:700px){
 [data-page=masterclass] .hero-in{padding-top:164px}
 .hero-v .hero-in{padding-top:200px}
}
@media(min-width:900px){body.ws-ck-open .hero-v .hero-in{padding-top:124px}}

/* ws2611 prezzo 0211 polish: 497 barrato leggibile (~50% di 397) */
[data-price-was]{
  display:inline-block;
  color:#9a9a9a;
  text-decoration:line-through;
  text-decoration-thickness:.14em;
  text-decoration-color:#9a9a9a;
  font-weight:700;
  letter-spacing:-.03em;
  line-height:1;
  opacity:1;
  vertical-align:baseline;
}
.price-row,.buy.price-row{flex-wrap:wrap;align-items:baseline}
/* hero buy: .p is 54px / 72px desktop → was ~50% */
.buy [data-price-was],.buy.has-was [data-price-was],.buy.price-row [data-price-was]{font-size:27px;margin-right:10px}
/* offer guarda: .big 84 / 128 → was ~50% */
.offer [data-price-was],.offer .price-row [data-price-was]{font-size:42px;margin-right:12px}
/* recap .big rows (not buy): .big 108 → was ~50% */
.price-row:not(.buy):not(.offer *) [data-price-was]{font-size:54px;margin-right:12px}
section .price-row [data-price-was]{font-size:54px;margin-right:12px}
@media(min-width:900px){
  .buy [data-price-was],.buy.has-was [data-price-was],.buy.price-row [data-price-was]{font-size:36px}
  .offer [data-price-was],.offer .price-row [data-price-was]{font-size:64px}
  section .price-row [data-price-was]{font-size:120px}
}

.df-timer{margin:10px 0 4px;min-height:0}
.df-timer[hidden],[data-df-fallback][hidden]{display:none!important}
