/* ===== LANDING “L’universo: caso o progetto?” — Verso l’Alto APS · v0.4.0 =====
   Misure dal PDF di design (1920 px): cella 157,5 · cornice 14,5 · righe 2 px.
   Corpi: 132 / 96 / 54 / 36 px. Spaziature verticali calcolate da linea di base a linea di base
   con le metriche del font effettivamente caricato (--k e --am, aggiornate dal JS).
   Font: Beatrice (se i file sono presenti il plugin la carica da solo) altrimenti Archivo (OFL),
   tarato in larghezza per occupare lo stesso spazio di Beatrice (±3%). */
@font-face{font-family:"VLA Archivo";src:url("../fonts/archivo-wdth.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap;
 unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF}

.ld{--or:#FA3D00;--be:#E1D9C9;--vw:100vw;--S:min(var(--vw),1920px);--cols:12;--cell:calc(var(--S)/(var(--cols) + .184));
 --m:calc(var(--cell)*.092);--lw:max(1px,calc(var(--cell)*.0127));--top:0px;
 --sLG:.8381;--sMD:.6095;--sSM:.3427;--sXS:.2288;
 --k:.355;--am:.335; /* metriche di Archivo: k = altezza maiuscole − (ascendente − discendente)/2 ; am = (asc − disc)/2 */
 --Lp:calc(var(--sXS)*1.2212);--L3:calc(var(--sSM)*1.2229);--Ltt:calc(var(--sMD)*1.125);
 font-family:"Beatrice","VLA Archivo",Arial,sans-serif;font-weight:800;font-stretch:var(--stLG,112%);color:#fff;
 width:var(--vw)!important;max-width:none!important;margin:0 0 0 calc(50% - var(--vw)/2)!important;padding:0!important;
 overflow-x:clip;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:left;background:var(--or)}
@media (max-width:899px){.ld{--cols:6;--sLG:.57;--sMD:.42;--sSM:.34;--sXS:.3}}
@media (min-width:600px) and (max-width:899px){.ld{--sLG:.5;--sMD:.38;--sSM:.28;--sXS:.22;--sTT:.38}}  /* tablet e telefono orizzontale: cella limitata, corpi proporzionati */  /* testo corrente ≥ 18,7 px in grassetto su telefono: soglia WCAG del testo grande */
body.admin-bar .ld{--top:32px}
@media screen and (max-width:782px){body.admin-bar .ld{--top:46px}}
@media screen and (max-width:600px){body.admin-bar .ld{--top:0px}}
.ld *,.ld *::before,.ld *::after{box-sizing:border-box}
.ld h1,.ld h2,.ld h3,.ld h4,.ld p,.ld ul,.ld li{margin:0;padding:0;font:inherit;font-stretch:inherit;color:inherit;letter-spacing:0;text-transform:none;border:0;background:none}
.ld ul{list-style:none}
.ld img{display:block;max-width:none;height:auto;border:0;box-shadow:none}
.ld .sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.ld .defs{position:absolute;width:0;height:0;overflow:hidden}
.ld .wd{white-space:nowrap}
.ld .sm,.ld .ni p:not(.h){font-weight:var(--wSM,800);font-stretch:var(--stSM,114%)}
/* larghezza delle cornici di testo del PDF (gli a capo coincidono con il design) */
@media (min-width:900px){.ld .lead p{max-width:calc(var(--cell)*2.952)}.ld .venue p{max-width:calc(var(--cell)*5.08)}
 .ld .q h2,.ld .intro p{max-width:calc(var(--cell)*7.556)}.ld .ni p:not(.h){max-width:calc(var(--cell)*5.371)}}

/* sezioni: cornice arancio, griglia da 2 px */
.ld .s{position:relative;background:var(--or);--bg:var(--or);--ln:var(--be);--c1:#fff;--c0:transparent}
.ld .s.b{--bg:var(--be);--ln:var(--or);--c1:var(--or);color:var(--or)}
.ld .hero{z-index:2}  /* l'aloe e il pennello invadono la fascia beige, come nel PDF */
.ld .band{z-index:1}
.ld .stage,.ld .grid{width:calc(var(--cell)*var(--cols) + var(--lw));padding-bottom:var(--lw);margin:0 auto;position:relative;background-color:var(--bg);
 background-image:linear-gradient(var(--ln) var(--lw),transparent var(--lw)),linear-gradient(90deg,var(--ln) var(--lw),transparent var(--lw));
 background-size:var(--cell) var(--cell)}
.ld .stage{display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-auto-rows:var(--cell);isolation:isolate}
.ld.js .stage,.ld.js .grid{margin:0 0 0 var(--ml,0)}
.ld.js .pin{margin-top:0;margin-left:0;margin-right:0}
.ld .hero{padding-top:var(--m)}
.ld .hero .stage{grid-template-rows:repeat(11,var(--cell))}
.ld .band .stage{grid-template-rows:repeat(6,var(--cell))}
.ld .s+.s{margin-top:calc(var(--lw)*-1)}
.ld .bk{padding-bottom:var(--m)}
@media (max-width:899px){.ld .hero .stage,.ld .band .stage{grid-template-rows:none}}

/* banda scorrevole (78 px = .495 cella), si ferma al passaggio del mouse */
.ld .marq{height:var(--mq,calc(var(--cell)*.495));background:var(--be);color:var(--or);overflow:hidden;display:flex;align-items:center;white-space:nowrap}
.ld .track{display:flex;flex:none;width:max-content;animation:ldmq 46s linear infinite;font-size:calc(var(--cell)*var(--sXS))}
.ld .marq:hover .track{animation-play-state:paused}
.ld .track>div{display:flex;flex:none}
.ld .track span{padding-right:.3em}
.ld .track i{font-style:normal;font-family:Arial,sans-serif;font-size:.62em;margin:0 .45em;vertical-align:.12em}
@keyframes ldmq{to{transform:translateX(-50%)}}

/* caselle — livelli: fondo dei riquadri (0) < immagini (1) < testo (2), come nel PDF */
.ld .box{grid-column:var(--c);grid-row:var(--r);position:relative;min-width:0;
 --s:var(--sXS);--lh:1.2212;--gt:.2648;--pl:.232;
 font-size:calc(var(--cell)*var(--s));line-height:var(--lh);
 padding:calc(var(--gt)*var(--cell) - var(--s)*var(--cell)*(var(--lh)/2 - var(--k))) calc(var(--cell)*.15) calc(var(--cell)*.1) calc(var(--pl)*var(--cell));
 background:var(--bg);box-shadow:0 0 0 var(--lw) var(--ln)}
.ld .box>*{position:relative;z-index:2}
@media (max-width:899px){.ld .box{grid-column:var(--mc);grid-row:var(--mr)}}
/* la cornice parte dalla cella in alto a sinistra e cresce prima in orizzontale, poi in verticale */
.ld.js .box{background:none;box-shadow:none}
.ld.js .box::before{content:"";position:absolute;left:0;top:0;z-index:0;background:var(--bg);box-shadow:inset 0 0 0 var(--lw) var(--ln);
 width:calc(var(--cell) + var(--lw) + (100% - var(--cell)) * var(--fw,0));height:calc(var(--cell) + var(--lw) + (100% - var(--cell)) * var(--fh,0))}
/* prima che parta il JS (defer) il testo resta nascosto; se il JS non parte compare dopo 3 s */
.ld:not(.js) .box>*{animation:ld-wait 0s 3s both}
.ld:not(.js) .box{animation:ld-wait-box 0s 3s both}
@keyframes ld-wait{from{visibility:hidden}to{visibility:visible}}
@keyframes ld-wait-box{from{background:none;box-shadow:none}}

.ld .title{--s:var(--sLG);--lh:.8182;--gt:.4603;--pl:.349}
.ld .big{--s:var(--sMD);--lh:1.105;--gt:.4286;--pl:.349}
.ld .dates{--s:var(--sMD);--lh:1.12;--gt:.43;--pl:.349}
.ld .q{--s:var(--sSM);--lh:1.2229;--gt:.28}
.ld .dates .d{display:grid;grid-template-columns:var(--dcol,1.715em) 1fr} /* Beatrice: 1.507em come nel PDF */
.ld .logos{padding:calc(var(--cell)*.08) calc(var(--cell)*.22) calc(var(--cell)*.08) calc(var(--cell)*.1);display:flex;align-items:center}
.ld .logos img{width:100%;max-height:100%;object-fit:contain}

/* composizioni (ovali + mani): geometria esatta dal PDF, in celle */
.ld .comp{position:absolute;left:calc(var(--cell)*var(--ax));top:calc(var(--cell)*var(--ay));width:calc(var(--cell)*var(--aw));height:calc(var(--cell)*var(--ah));
 z-index:1;pointer-events:none;--ac:var(--cell);--dx:0px}
.ld .gap{display:none}
@media (max-width:899px){
 .ld .comp{position:relative;left:auto;top:auto;width:auto;height:auto;grid-column:var(--mc);grid-row:var(--mr);--dx:calc((var(--cell)*6 - var(--ac)*var(--aw))/2)}
 .ld .c1{--ac:calc(var(--cell)*.69)}
 .ld .c2{--ac:calc(var(--cell)*.9)}
 .ld .gap{display:block;grid-column:1/-1;grid-row:var(--mr)}}
.ld .it{position:absolute;left:calc(var(--dx) + var(--ac)*var(--x));top:calc(var(--ac)*var(--y));width:calc(var(--ac)*var(--w));height:calc(var(--ac)*var(--h));
 transform:rotate(var(--r0,0deg));will-change:transform;backface-visibility:hidden}
.ld .ov{border-radius:50%;overflow:hidden;background:#050505}
.ld .ov-nautilo{z-index:2}.ld .hw{z-index:3;transform-origin:var(--ox) var(--oy)}
.ld .it img{width:100%;height:100%}
.ld .hw img{transform-origin:var(--ox) var(--oy);will-change:transform}

/* programma: elenco di serate; cliccando, il contenuto si estende verso destra e la colonna destra scorre */
.ld .pg{position:relative;height:var(--pgH,auto)}
.ld .pp{z-index:1}
.ld .pg.open .pp{position:sticky;top:calc(var(--top) - var(--cell)*2)}   /* bloccato: etichetta e riga vuota escono in alto */
.ld.js .pan{display:contents}
.ld.js .pan:not(.open){display:none}
.ld:not(.js) .pp,.ld:not(.js) .fq{display:block}
.ld .lab h2{text-transform:uppercase}
.ld .tab,.ld .fqq,.ld .who,.ld .back{font-family:inherit;font-style:normal;letter-spacing:0;font-weight:800;font-stretch:inherit;color:inherit;text-align:left;cursor:pointer;border:0;border-radius:0;appearance:none;-webkit-appearance:none;margin:0}
.ld .tab{display:grid;grid-template-columns:calc(var(--cell)*1.768) calc(var(--cell)*3) 1fr;align-items:start;width:auto;height:auto}
.ld .tab>span{display:block}
.ld .tab::after{content:"\25B6";position:absolute;z-index:2;right:calc(var(--cell)*.3);top:calc(var(--gt)*var(--cell) - var(--s)*var(--cell)*(var(--lh)/2 - var(--k)) + var(--s)*var(--cell)*var(--lh)/2 - .2em);font-family:Arial,sans-serif;font-size:calc(var(--cell)*var(--s)*.62);transition:transform .4s cubic-bezier(.65,0,.35,1)}
.ld .pg.open .tab::after{content:none}
.ld .tab:hover::after{transform:translateX(4px)}
.ld .tab .tdt,.ld .tab .tti{padding-left:calc(var(--cell)*.232)}
.ld .tab .tti{font-weight:var(--wSM,800);font-stretch:var(--stSM,114%);padding-right:calc(var(--cell)*.75)}
.ld .pg.open .tab .tdt,.ld .pg.open .tab .tti{display:none}
.ld .tab.sel{--bg:var(--be);--c1:var(--or);color:var(--or)}
.ld .tab:not(.sel):hover .tk{text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:max(1px,.06em)}
.ld .tab:focus-visible,.ld .fqq:focus-visible,.ld .who:focus-visible,.ld .back:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.ld .tab:focus-visible,.ld .fqq:focus-visible{outline-offset:-8px}
.ld .pdt{--s:var(--sSM);--lh:1.2229;--gt:.28}
.ld .ptt{--s:var(--sTT,.5333);--lh:1.144;--gt:.43;--pl:.349;padding-right:calc(var(--cell)*.3)}
@media (max-width:899px){.ld .tab{grid-template-columns:auto 1fr}.ld .tab .tti{grid-column:1/-1;padding-left:0;margin-top:calc(var(--cell)*.06)}.ld .pg.open .tab .tti{display:none}.ld{--sTT:.42}}
.ld .nr{padding:calc(var(--cell)*.3206) calc(var(--cell)*.2) calc(var(--cell)*.32) calc(var(--cell)*.349)}
.ld .nv{height:100%;overflow:hidden}
@media (max-width:899px){.ld .nv{height:auto}}  /* il testo sparisce al margine interno, mai tagliato contro la linea */
.ld .ni{will-change:transform}
.ld .face{--fs:1;position:relative;width:calc(var(--cell)*1.9*var(--fs));height:calc(var(--cell)*2.1231*var(--fs))}
.ld .face i{position:absolute;left:50%;top:50%;width:calc(var(--cell)*1.7808*var(--fs));height:calc(var(--cell)*2.224*var(--fs));transform:translate(-50%,-50%) rotate(29.81deg);
 border-radius:50%;overflow:hidden;background:var(--be)}
.ld .face img{position:absolute;left:50%;top:50%;width:calc(var(--cell)*1.9*var(--fs));height:calc(var(--cell)*2.1231*var(--fs));transform:translate(-50%,-50%) rotate(-29.81deg);
 object-fit:cover;filter:grayscale(1)}
.ld .ni .h{font-size:calc(var(--cell)*var(--sSM));line-height:1.2229;font-weight:800;
 margin-top:calc(var(--cell)*(var(--Lp)/2 + var(--L3)/2 - var(--am)*(var(--sSM) - var(--sXS))))}
.ld .ni .rh{margin-top:calc(var(--cell)*(.5759 - var(--L3)/2 - var(--am)*var(--sSM)))}
.ld .ni p:not(.h){font-size:calc(var(--cell)*var(--sXS));line-height:1.2212;
 margin-top:calc(var(--cell)*(var(--Lp)/2 - var(--L3)/2 + var(--am)*(var(--sSM) - var(--sXS))))}
.ld .ul,.ld .ul .wd{text-decoration:underline;text-decoration-color:var(--c1);text-underline-offset:.18em;text-decoration-thickness:max(1px,.06em);transition:text-decoration-color .4s cubic-bezier(.65,0,.35,1)}
.ld.js .ul:not(.on),.ld.js .ul:not(.on) .wd{text-decoration-color:transparent}

/* profilo del relatore: si apre sopra la colonna destra, la casella cresce come le altre */
.ld .who{background:none;padding:0;font-size:inherit;line-height:inherit;font-weight:inherit;font-stretch:inherit}
.ld .who:hover .ul{text-decoration-thickness:max(2px,.1em)}
.ld .prof{position:absolute;inset:0;z-index:5;background:var(--be);color:var(--or);overflow:auto;
 padding:calc(var(--cell)*.3206) calc(var(--cell)*.2) calc(var(--cell)*.2) calc(var(--cell)*.349);box-shadow:inset 0 0 0 var(--lw) var(--or)}
.ld .prof[hidden]{display:none}
.ld .prof.on{animation:vla-grow 1.1s cubic-bezier(.65,0,.35,1) both}
.ld .prof.on>*{animation:vla-in .45s cubic-bezier(.65,0,.35,1) .85s both}
@keyframes vla-grow{0%{clip-path:inset(0 calc(100% - var(--cell)) calc(100% - var(--cell)) 0)}45%{clip-path:inset(0 0 calc(100% - var(--cell)) 0)}100%{clip-path:inset(0)}}
@keyframes vla-in{from{opacity:0}}
.ld .prof .face{--fs:.56}
.ld .prof .pn{font-size:calc(var(--cell)*var(--sSM));line-height:1.2229;margin-top:calc(var(--cell)*.12)}
.ld .prof p:not(.pn){font-size:calc(var(--cell)*var(--sXS));line-height:1.2212;font-weight:var(--wSM,800);font-stretch:var(--stSM,114%);max-width:calc(var(--cell)*4.3)}
.ld .prof .pr{margin:calc(var(--cell)*.06) 0 calc(var(--cell)*.2)}
.ld .back{background:none;padding:0;margin-top:calc(var(--cell)*.3);font-size:calc(var(--cell)*var(--sXS));text-decoration:underline;text-underline-offset:.18em}

/* FAQ: domande a fisarmonica, la risposta compare sotto la domanda */
.ld .fqq{display:grid;align-content:start;width:auto;height:auto;position:relative}
.ld .fqq i{position:absolute;right:calc(var(--cell)*.3);top:calc(var(--gt)*var(--cell) - var(--s)*var(--cell)*(var(--lh)/2 - var(--k)) + var(--s)*var(--cell)*var(--lh)/2 - .2em);width:.7em;height:.7em;font-size:calc(var(--cell)*var(--sXS))}
.ld .fqq i::before,.ld .fqq i::after{content:"";position:absolute;left:0;top:calc(50% - .07em);width:100%;height:.14em;background:currentColor;transition:transform .5s cubic-bezier(.65,0,.35,1)}
.ld .fqq i::after{transform:rotate(90deg)}
.ld .fqq[aria-expanded="true"] i::after{transform:rotate(0)}
.ld.js .fqa:not(.open){display:none}
.ld .fine .stage{grid-template-rows:repeat(3,var(--cell))}
@media (max-width:899px){.ld .fine .stage{grid-template-rows:none}}

/* sezioni aggiunte: pulsante Prenota, La serata, Prenota, Chi organizza */
@media (min-width:900px){.ld .stage[style*="--rows"]{grid-template-rows:repeat(var(--rows),var(--cell))}}
.ld a{color:inherit}
.ld .lk a,.ld .cal a{text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:max(1px,.06em)}
.ld .lk a:hover,.ld .cal a:hover{text-decoration-thickness:max(2px,.12em)}
.ld .lk a:focus-visible,.ld .cal a:focus-visible,.ld .cta:focus-visible,.ld .vf :focus-visible{outline:2px solid currentColor;outline-offset:3px}
.ld .cta{--bg:var(--be);--c1:var(--or);color:var(--or);text-decoration:none;display:block;cursor:pointer}
.ld .cta{display:flex!important;flex-direction:column;justify-content:center;padding-top:0!important;padding-bottom:0!important}
.ld .cta .ct{display:block;padding-right:calc(var(--cell)*.45)}
.ld .cta::after{content:""}
.ld .cta .ct::after{content:"\25B6";position:absolute;right:calc(var(--cell)*.3);top:50%;transform:translateY(-50%);font-family:Arial,sans-serif;font-size:.62em}
.ld .cta .cm{display:block;font-weight:var(--wCM,600);font-stretch:var(--stSM,114%)}
.ld .cta{transition:color .35s cubic-bezier(.65,0,.35,1)}
.ld .cta::after{content:"";position:absolute;inset:calc(var(--cell)*.07);border:max(2px,var(--lw)) solid var(--or);pointer-events:none;z-index:1}
.ld .cta:hover,.ld .cta:focus-visible{--bg:var(--or);--c1:var(--be);color:var(--be)}
.ld .cta:hover::after,.ld .cta:focus-visible::after{border-color:var(--be)}
.ld .cta:focus-visible{outline:none}
.ld .stp h3,.ld .dove h3,.ld .calb h3,.ld .org h3,.ld .cont h3{font-size:calc(var(--cell)*var(--sXS));line-height:1.2212}
.ld .stp,.ld .dove,.ld .calb,.ld .org,.ld .cont{--gt:.2648}
.ld .stp p,.ld .dove p,.ld .calb p,.ld .org p,.ld .cont p,.ld .bkt p{font-weight:var(--wTX,600);font-stretch:var(--stSM,114%);margin-top:calc(var(--cell)*.04);padding-right:calc(var(--cell)*.15)}
.ld .bkt h3{font-size:calc(var(--cell)*var(--sMD));line-height:1.105}
.ld .bkt{--gt:.43;--pl:.349}
.ld .bkt p{margin-top:calc(var(--cell)*.25)}
.ld .bkt .lk,.ld .lk{margin-top:calc(var(--cell)*.12)}
.ld .ni .cal{margin-top:calc(var(--cell)*.3)}
/* modulo di prenotazione (ripiego senza WordPress) e modulo WPForms esistente, con lo stesso stile */
.ld .bkf{--bg:var(--be);--c1:var(--or);color:var(--or);--pl:.349;padding-top:calc(var(--cell)*.3);padding-bottom:calc(var(--cell)*.3)}
.ld .vf{display:block;max-width:calc(var(--cell)*5)}
.ld .vf .fr{margin:0 0 calc(var(--cell)*.16);border:0;padding:0;min-width:0}
.ld .vf label,.ld .vf legend{display:block;font-size:calc(var(--cell)*var(--sXS));line-height:1.25;font-weight:800;margin-bottom:calc(var(--cell)*.04);padding:0}
.ld .vf input:not([type=checkbox]),.ld .vf textarea,.ld .wpforms-container input:not([type=checkbox]):not([type=radio]):not([type=submit]),.ld .wpforms-container textarea,.ld .wpforms-container select{
 display:block;width:100%;box-sizing:border-box;font-family:inherit;font-size:calc(var(--cell)*var(--sXS)*.78);font-weight:var(--wSM,800);font-stretch:var(--stSM,114%);
 color:var(--or);background:transparent;border:0;border-bottom:max(2px,var(--lw)) solid var(--or);border-radius:0;padding:calc(var(--cell)*.05) 0;box-shadow:none;outline:0;height:auto;max-width:none}
.ld .vf textarea,.ld .wpforms-container textarea{resize:none;min-height:calc(var(--cell)*.6)}
.ld .vf input:not([type=checkbox]):focus,.ld .vf textarea:focus,.ld .wpforms-container input:focus,.ld .wpforms-container textarea:focus{border-bottom-width:max(4px,calc(var(--lw)*2));outline:0}
.ld .vf .cks{display:flex;flex-direction:column;gap:calc(var(--cell)*.04)}
.ld .vf .ck{display:inline-flex;align-items:center;gap:.4em;font-weight:var(--wSM,800);font-stretch:var(--stSM,114%);cursor:pointer;margin:0}
.ld .vf .ck input{appearance:none;-webkit-appearance:none;width:max(20px,.8em);height:max(20px,.8em);margin:0;border:max(2px,var(--lw)) solid var(--or);border-radius:0;background:transparent;flex:none;cursor:pointer}
.ld .vf .ck input:checked{background:var(--or);box-shadow:inset 0 0 0 .18em var(--be)}
.ld .vf .pv{font-size:calc(var(--cell)*var(--sXS)*.62);line-height:1.3;font-weight:var(--wSM,800);font-stretch:var(--stSM,114%);margin:calc(var(--cell)*.1) 0 calc(var(--cell)*.18)}
.ld .vf .pv a{text-decoration:underline}
.ld .vf .go,.ld .wpforms-container .wpforms-submit,.ld .wpforms-container button[type=submit]{font-family:inherit;font-size:calc(var(--cell)*var(--sXS));font-weight:800;font-stretch:inherit;
 color:var(--be);background:var(--or);border:0;border-radius:0;padding:calc(var(--cell)*.14) calc(var(--cell)*.24);cursor:pointer;line-height:1.1;height:auto;box-shadow:none}
.ld .vf .go:hover,.ld .wpforms-container .wpforms-submit:hover{background:#c73200}
.ld .vf .st{font-weight:800;min-height:1.2em;margin:0}
.ld .vf [aria-invalid="true"]{border-bottom-style:dashed}
.ld .wpforms-container{--wpforms-field-background-color:transparent;--wpforms-field-text-color:var(--or);--wpforms-field-border-color:var(--or);--wpforms-field-border-size:2px;
 --wpforms-field-border-radius:0;--wpforms-label-color:var(--or);--wpforms-label-sublabel-color:var(--or);--wpforms-button-background-color:var(--or);--wpforms-button-text-color:var(--be);
 --wpforms-button-border-radius:0;margin:0!important;max-width:calc(var(--cell)*5)}
.ld .wpforms-container .wpforms-field{padding:0 0 calc(var(--cell)*.16)!important}
.ld .wpforms-container .wpforms-field-label{color:var(--or);font-family:inherit;font-size:calc(var(--cell)*var(--sXS)*.78);font-weight:800}
.ld .wpforms-container .wpforms-error,.ld .wpforms-container label.wpforms-error{color:#8a1c00;font-family:inherit;font-weight:800}
.ld .wpforms-confirmation-container-full{background:transparent!important;border:2px solid var(--or)!important;color:var(--or)!important;font-family:inherit;font-weight:800}
@media (max-width:899px){.ld .vf,.ld .wpforms-container{max-width:none}
 .ld .vf input:not([type=checkbox]),.ld .vf textarea,.ld .wpforms-container input,.ld .wpforms-container textarea{font-size:max(16px,calc(var(--cell)*var(--sXS)*.78))}  /* stesso corpo delle etichette, mai sotto 16 px (niente zoom su iPhone) */
 .ld .vf .go,.ld .wpforms-container .wpforms-submit{min-height:44px}
 .ld .vf .ck input{width:24px;height:24px}.ld .vf .ck{min-height:32px}}
/* pulsante Prenota fisso su telefono: compare quando quello dell'hero esce di vista, sparisce sul modulo */
.ld .fx{display:none}
@media (max-width:599px){.ld .fx{display:flex;align-items:center;justify-content:center;position:fixed;left:0;right:0;bottom:0;z-index:50;
 min-height:min(calc(var(--cell)*.9),60px);padding:0 16px env(safe-area-inset-bottom);background:var(--be);color:var(--or);font-size:calc(var(--cell)*var(--sXS));
 text-decoration:none;border-top:2px solid var(--or);box-shadow:inset 0 0 0 7px var(--be),inset 0 0 0 9px var(--or);transform:translateY(110%);transition:transform .45s cubic-bezier(.65,0,.35,1)}
 .ld .fx.on{transform:none}}
@media (max-width:599px) and (prefers-reduced-motion:reduce){.ld .fx{transition:none}}
@media (max-width:599px){html:has(.ld .fx.on){scroll-padding-bottom:calc(var(--vla-fxh,60px) + 12px)}}
/* bersagli touch e leggibilità su telefono */
@media (max-width:899px){
 .ld .who,.ld .cal a,.ld .lk a,.ld .back{display:inline-block;padding-block:12px;margin-block:-12px}
 .ld .vf input:not([type=checkbox]),.ld .vf textarea{min-height:44px}
 .ld .vf label,.ld .vf legend{font-size:max(14px,calc(var(--cell)*var(--sXS)))}
 .ld .vf .pv{font-size:max(14px,calc(var(--cell)*var(--sXS)*.62))}
 .ld .vf .ck{min-height:44px}}
/* controlli sul beige: bordi e anello di focus più scuri, per restare visibili (contrasto ≥ 3:1) */
.ld .bkf{--ui:#B32D00}
.ld .vf input:not([type=checkbox]),.ld .vf textarea,.ld .wpforms-container input:not([type=checkbox]):not([type=radio]):not([type=submit]),.ld .wpforms-container textarea{border-bottom-color:var(--ui)}
.ld .vf .ck input{border-color:var(--ui)}
.ld .bkf :focus-visible,.ld .s.b :focus-visible,.ld .cta:focus-visible,.ld .tab.sel:focus-visible{outline-color:#8A2300}

/* riempimento NETTO parola per parola — data-fx="hidden" (scelto) | "outline" | "beige" */
.ld[data-fx="beige"] .s.o{--c0:var(--be)}
.ld[data-fx="beige"] .s.b{--c0:#D3CAB6}
.ld.js .wd{--p:calc(var(--f,0)*100%);display:inline-block;background:linear-gradient(90deg,var(--c1) var(--p),var(--c0) var(--p));
 -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.ld[data-fx="outline"].js .wd{-webkit-text-stroke:.012em var(--c1)}
.ld.js .wd.on{background:none;-webkit-text-fill-color:currentColor;color:inherit;-webkit-text-stroke:0}

@media (prefers-reduced-motion:reduce){
 .ld .track{animation:none}
 .ld:not(.js) .box>*,.ld:not(.js) .box{animation:none}
 .ld.js .wd{background:none;-webkit-text-fill-color:currentColor;color:inherit;-webkit-text-stroke:0}
 .ld.js .box::before{width:calc(100% + var(--lw));height:calc(100% + var(--lw))}.ld.js .ni .face{opacity:1}.ld .prof.on,.ld .prof.on>*{animation:none}}

/* integrazione WordPress: titolo del tema nascosto (c'è già l'h1 della landing) */
body.vla-landing-page .entry-title,body.vla-landing-page .page-title,body.vla-landing-page .wp-block-post-title,
body.vla-landing-page .entry-header>h1,body.vla-landing-page .elementor-page-title{display:none}
/* temi a blocchi (FSE): la landing si allarga da sola a tutta pagina; qui si tolgono solo gli spazi verticali del modello attorno */
body.vla-landing-page .is-layout-constrained>.ld,body.vla-landing-page .is-layout-flow>.ld{max-width:none!important;margin-block:0!important}
body.vla-landing-page .wp-block-post-content:has(>.ld){margin-block:0!important;padding-block:0!important}
body.vla-landing-page :is(main,.wp-block-group):has(>.wp-block-post-content>.ld){padding-block:0!important;margin-block:0!important}
body.vla-landing-page main:has(.ld){margin-block-start:0!important;padding-block-start:0!important}
body.vla-landing-page .site-main,body.vla-landing-page .entry-content,body.vla-landing-page .wp-block-post-content,body.vla-landing-page .post-content{max-width:none!important;overflow:visible}

/* scroll morbido (Lenis) */
html.lenis,html.lenis body{height:auto}
html.lenis{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-smooth iframe{pointer-events:none}
.lenis.lenis-stopped{overflow:clip}

/* testi piccoli mai sotto i 12 px (900–1280 px) e bersagli tattili ampi su schermi touch */
.ld .vf .pv{font-size:max(12px,calc(var(--cell)*var(--sXS)*.62))}
.ld .vf label,.ld .vf legend{font-size:max(14px,calc(var(--cell)*var(--sXS)))}
.ld .track i{font-size:max(9px,.62em)}
@media (pointer:coarse){.ld .who,.ld .cal a,.ld .lk a,.ld .back,.ld .vf .pv a{display:inline-block;padding-block:12px;margin-block:-12px}}
.ld .vf .rq{font-size:max(12px,calc(var(--cell)*var(--sXS)*.62));font-weight:var(--wSM,800);font-stretch:var(--stSM,114%);margin:0 0 calc(var(--cell)*.12)}
.ld .nr .prg{position:absolute;left:0;bottom:0;height:calc(var(--lw)*2);width:100%;background:var(--ln);transform-origin:0 50%;transform:scaleX(0);z-index:3}
@media (max-width:899px){.ld .nr .prg{display:none}}
/* v0.9 — banda ferma al tocco; focus visibile sulle caselle del modulo */
.ld .marq.stop .track{animation-play-state:paused}
.ld .vf .ck input:focus-visible{outline:2px solid #8A2300;outline-offset:2px}
/* v0.9 — scala: titoletti informativi a 36, testo SemiBold, link ExtraBold; prenotazione su beige con riquadro arancio */
.ld .lk,.ld .lk a{font-weight:800}
.ld .bkt p{margin-top:calc(var(--cell)*.2)}
.ld .bk .bkt{--bg:var(--or);--c1:#fff;--ln:var(--be);color:#fff}
.ld .vf input:not([type=checkbox]),.ld .vf textarea{font-size:max(16px,calc(var(--cell)*var(--sXS)));font-weight:var(--wTX,600)}
.ld .vf .pv,.ld .vf .rq{font-size:max(12px,calc(var(--cell)*var(--sXS)*.32))}
/* v0.9 — revisione Leonardo */
.ld .lab{--s:var(--sSM);--lh:1.2229;--gt:.28}
.ld .ptt{--s:var(--sSM);--lh:1.2229;--gt:.28;--pl:.232}
.ld .tab .tti,.ld .ptt h3{text-wrap:balance}
.ld .tab{align-content:start}
.ld .ni .rh{font-size:calc(var(--cell)*var(--sXS))}
.ld .ni .nm{font-size:calc(var(--cell)*var(--sSM));line-height:1.2229}
.ld .back{margin-top:max(16px,calc(var(--cell)*.35));outline-offset:4px}
.ld .bkf{--pl:.232}
@media (min-width:900px){
 .ld .bk .vf{display:grid;grid-template-columns:1fr 1fr;column-gap:calc(var(--cell)*.35);max-width:none;padding-right:calc(var(--cell)*.232)}
 .ld .bk .vf .rq{grid-column:1/-1}
 .ld .bk .vf .vc{min-width:0}
}
.ld .ni .nm .who{font-size:inherit;line-height:inherit}
.ld .pdt{--s:var(--sXS);--lh:1.2212;--gt:.2648}
@media (max-width:899px){.ld br.dk{display:none}}
