/* =========================================================
   Magic Stunts — mano umana
   Ultimo foglio caricato sulle pagine pubbliche.
   Non tocca contenuti né funzioni: cambia solo il modo in cui
   il sito è messo insieme. Meno schede tutte uguali, meno
   ombre, meno tutto-al-centro; più impaginazione da stampa:
   titoli con le grazie, filetti sottili, foto appoggiate
   storte, spazi che respirano in modo irregolare.
   ========================================================= */

:root{
  /* i titoli prendono un carattere con le grazie: nessun file da
     scaricare, sono facce già presenti nei sistemi */
  --ff-title:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",
             "Noto Serif",Georgia,"Times New Roman",serif;
  /* angoli più asciutti e ombre quasi assenti */
  --r:8px;
  --r-s:5px;
  --sh:0 1px 2px rgba(30,24,16,.05);
  --sh-2:0 14px 34px -26px rgba(30,24,16,.55);
  --sh-3:0 14px 34px -26px rgba(0,0,0,.7);
  --hair:rgba(31,26,20,.14);
  --hair-dark:rgba(255,255,255,.12);
}

body{
  font-size:16.5px;line-height:1.66;
  /* carta appena screziata, non un fondo piatto */
  background-image:
    radial-gradient(rgba(120,100,70,.045) 1px,transparent 1px),
    radial-gradient(rgba(120,100,70,.03) 1px,transparent 1px);
  background-size:34px 34px,17px 17px;
  background-position:0 0,9px 9px;
}

/* ---------------- titoli ---------------- */
h1,h2,h3,.sec h2,.b-card h3,.svc h3,.way h3,.stp h3,.cta h2{
  font-family:var(--ff-title);
  font-weight:600;
  letter-spacing:-.006em;
  line-height:1.16;
}
h1,h2{letter-spacing:-.008em}
.home-hero h1,.page-hero h1,.hero h1,.splash .splash-title{font-family:var(--ff-title);font-weight:600;letter-spacing:-.01em}
.splash .splash-title{line-height:1.1}
.sec h2{font-size:clamp(1.55rem,4.4vw,2.35rem)}
.faq summary{font-family:var(--ff-title);font-weight:600;font-size:1.06rem}
.site-foot .f-brand b,.logo b{font-family:var(--ff-title);font-weight:600}

/* occhiello: non più maiuscoletto spaziato ma una nota scritta a mano */
.kicker{
  font-family:var(--ff-title);
  font-style:italic;font-weight:400;
  font-size:.98rem;letter-spacing:0;text-transform:none;
  color:var(--brand-ink);opacity:.9;margin-bottom:6px;
}
.kicker::before{width:18px;height:1px;opacity:.7;border-radius:0}
.sec-head.center .kicker::after{display:none}
.sec.dark .kicker,.page-hero .kicker{color:var(--brand-light)}

/* i testi lunghi non superano la misura leggibile */
.sec-head p,.lead,.home-hero p,.page-hero p{max-width:58ch}

/* ---------------- impaginazione: via il tutto-centrato ---------------- */
@media (min-width:900px){
  .sec-head.center{margin-left:0;margin-right:0;text-align:left}
  .home-hero-in{text-align:left;max-width:1180px}
  .home-hero p{margin-left:0}
  .home-hero .btn-row{justify-content:flex-start}
  .hero-logo{margin-left:0}
  /* ogni sezione respira in modo un po' diverso */
  .sec{padding:78px 20px}
  .sec.tinted{padding-top:70px;padding-bottom:82px}
  .sec.dark{padding-top:86px;padding-bottom:86px}
}

/* filetto sotto il titolo di sezione, come una riga tirata a mano */
.sec-head h2{position:relative;padding-bottom:14px}
.sec-head h2::after{
  content:"";position:absolute;left:0;bottom:0;width:56px;height:2px;
  background:var(--amber);opacity:.85;border-radius:2px;
}
.sec.dark .sec-head h2::after{background:var(--brand-light)}

/* ---------------- bottoni: stampati, non lucidi ---------------- */
.btn{border-radius:4px;font-weight:600;letter-spacing:.01em}
.btn-lg{border-radius:4px}
.btn-primary{background-image:none;box-shadow:none}
.btn-primary:hover{background:var(--amber-2);box-shadow:none;transform:none}
.btn-ghost{border-width:1px;border-color:var(--hair);background:transparent}
.btn-ghost:hover{background:transparent;border-color:var(--amber);box-shadow:none}
.btn:active{transform:translateY(1px)}

/* ---------------- intestazione: barra sottile, niente pillola ---------------- */
@media (min-width:900px){
  .nav{padding:0;background:rgba(13,13,15,.96)}
  .nav-in{
    background:transparent;border:0;border-radius:0;
    backdrop-filter:none;-webkit-backdrop-filter:none;
    box-shadow:none;padding:10px 20px;min-height:64px;
  }
  .nav{border-bottom:1px solid var(--hair-dark)}
  .nav.scrolled{box-shadow:0 8px 24px -22px rgba(0,0,0,.9)}
  .nav.scrolled .nav-in{background:transparent;box-shadow:none}
  .nav-menu a{border-radius:0}
  .home-hero,.page-hero,.hero{margin-top:0;padding-top:52px}
}
.logo svg{border-radius:0;border:0;background:none;padding:0;width:34px;height:34px}
.logo:hover svg{background:none}
.nav-menu a:hover{background:transparent;color:var(--brand-light)}
.nav-menu a[aria-current="page"]::after{height:1px;border-radius:0}

/* ---------------- hero della home ---------------- */
.home-hero::after{background:linear-gradient(180deg,rgba(13,13,15,.55),rgba(13,13,15,.92))}
.hero-logo{filter:drop-shadow(0 10px 24px rgba(0,0,0,.55))}

/* ---------------- bento: schede piatte, niente sfumature ---------------- */
.b-card{
  border:1px solid var(--hair);border-radius:var(--r);box-shadow:none;
  background:var(--paper);padding:26px 24px;
}
.b-card:hover{transform:none;box-shadow:var(--sh-2);border-color:var(--line-2)}
.b-dark{background:var(--ink);border-color:var(--dark-line)}
.b-gold{background:var(--amber);border-color:transparent}
.b-gold p{opacity:.95}
.b-photo{border-radius:var(--r);box-shadow:none;border:1px solid var(--hair)}
.b-photo span::before{border-radius:0;height:1.5px}

/* numeri: da riquadri a dati stampati sotto un filetto */
.bento .num,.nums .num{
  background:transparent;border:0;border-top:1.5px solid var(--hair);
  border-radius:0;padding:16px 2px 8px;text-align:left;
}
.num b{font-family:var(--ff-title);font-weight:600;letter-spacing:-.01em;color:var(--brand-ink)}
.num span{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;margin-top:6px}
.sec.dark .num{border-top-color:var(--hair-dark)}

/* ---------------- servizi: colonne sfalsate, icone senza piastrella ---------------- */
@media (min-width:900px){
  .grid.g3{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 40px}
  .grid.g3 .svc:nth-child(odd){margin-top:26px}
  .grid.g3 .svc-wide{grid-column:1 / -1;margin-top:0}
}
.svc{
  background:transparent;border:0;border-top:1.5px solid var(--hair);
  border-radius:0;padding:22px 0 6px;
}
.svc:hover{transform:none;box-shadow:none}
.svc-ico{
  width:auto;height:auto;background:none;border-radius:0;margin-bottom:10px;
  display:block;color:var(--amber-2);
}
.svc-ico svg{width:30px;height:30px;stroke-width:1.4}
.svc h3{font-size:1.28rem;margin-bottom:8px}
.svc p{font-size:.95rem;line-height:1.68}
.svc ul{
  list-style:none;padding:0;margin:14px 0 0;font-size:.88rem;line-height:1.55;
  border-top:1px dashed var(--hair);padding-top:12px;
}
.svc ul li{padding:3px 0 3px 16px;position:relative}
.svc ul li::before{
  content:"";position:absolute;left:0;top:.82em;width:6px;height:1.5px;background:var(--amber);opacity:.8;
}
.svc-wide{border-top-width:2.5px}
.sec.dark .svc{background:transparent;border-top-color:var(--hair-dark)}
.sec.dark .svc-ico{background:none;color:var(--brand-light)}

/* ---------------- due strade ---------------- */
.way{
  border:1px solid var(--hair);border-radius:var(--r);box-shadow:none;padding:30px 26px 26px;
}
.way:hover{transform:none;box-shadow:var(--sh-2)}
.way-tag{
  background:none;border:0;border-bottom:1.5px solid var(--amber);border-radius:0;
  padding:0 0 5px;font-family:var(--ff-title);font-style:italic;font-weight:400;
  text-transform:none;letter-spacing:0;font-size:.95rem;
}
.way-ico{border:0;background:none;border-radius:0;width:auto;height:auto;margin:18px 0 12px}
.way-ico svg{width:32px;height:32px;stroke-width:1.4}
.way h3{font-size:clamp(1.35rem,3.2vw,1.7rem)}
.way-gold{background:var(--ink);border-color:var(--dark-line)}
.way-gold .way-tag{border-bottom-color:var(--brand-light)}
.way-list li::before{box-shadow:none;width:5px;height:5px}

/* ---------------- come si lavora: elenco numerato, non quattro scatole ---------------- */
.steps{gap:0}
@media (min-width:800px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 46px}}
@media (min-width:1100px){.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 34px}}
.stp{
  background:transparent;border:0;border-top:1.5px solid var(--hair);
  border-radius:0;padding:18px 0 22px;
}
.stp::before{
  font-family:var(--ff-title);font-style:italic;font-weight:400;
  font-size:1.5rem;letter-spacing:0;color:var(--amber-2);opacity:.85;
}
.stp h3{font-size:1.12rem;margin:6px 0 6px}
.stp p{font-size:.92rem;line-height:1.6}

/* ---------------- foto: stampe appoggiate sul tavolo ---------------- */
.gallery{gap:26px 22px}
.shot{
  background:var(--paper);border:0;border-radius:2px;
  padding:10px 10px 0;box-shadow:0 10px 26px -20px rgba(30,24,16,.8);
  aspect-ratio:auto;overflow:visible;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.shot img{border-radius:1px;aspect-ratio:4/3;object-fit:cover}
.shot:hover{transform:rotate(0deg) translateY(-3px);box-shadow:0 18px 40px -24px rgba(30,24,16,.9)}
.shot:hover img{transform:none}
.gallery .shot:nth-child(3n+1){transform:rotate(-.7deg)}
.gallery .shot:nth-child(3n+2){transform:rotate(.5deg)}
.gallery .shot:nth-child(3n+3){transform:rotate(-.35deg)}
.shot figcaption{
  position:static;background:none;color:var(--muted);
  font-family:var(--ff-title);font-style:italic;font-weight:400;
  font-size:.9rem;padding:10px 2px 12px;
}
/* la foto grande dentro le sezioni resta piena, solo un filo storta */
.zone .shot{padding:10px;transform:rotate(-.6deg)}
.sec.dark .shot{background:var(--ink-2)}
.sec.dark .shot figcaption{color:var(--on-dark-2)}

/* ---------------- FAQ: elenco, non fisarmonica a scatole ---------------- */
.faq{gap:0;max-width:780px}
.faq details{
  background:transparent;border:0;border-top:1px solid var(--hair);
  border-radius:0;padding:0;
}
.faq details:last-child{border-bottom:1px solid var(--hair)}
.faq summary{padding:18px 0}
.faq summary::after{font-family:var(--ff-title);font-weight:400;font-size:1.5rem;opacity:.75}
.faq p{padding:0 0 20px;font-size:.95rem;line-height:1.7;max-width:62ch}

/* ---------------- richiamo finale: un manifesto, non un banner ---------------- */
.cta{
  background:var(--ink);color:var(--on-dark);border-radius:var(--r);
  padding:54px 26px;text-align:center;border:1px solid var(--dark-line);
  position:relative;
}
.cta::before{
  content:"";position:absolute;left:50%;top:26px;transform:translateX(-50%);
  width:48px;height:1.5px;background:var(--brand-light);opacity:.9;
}
.cta h2{color:var(--on-dark);font-size:clamp(1.6rem,4.4vw,2.4rem)}
.cta h2::after{display:none}
.cta p{color:var(--on-dark-2);opacity:1}
.cta .btn{background:transparent;border:1px solid var(--hair-dark);color:var(--on-dark)}
.cta .btn:hover{background:rgba(255,255,255,.06);color:var(--on-dark)}
.cta .btn-light{background:var(--amber);color:var(--amber-on);border-color:transparent}
.cta .btn-light:hover{background:var(--brand-light);color:#1a1408}

/* ---------------- contatti e schede varie ---------------- */
.ctc{
  background:transparent;border:0;border-top:1.5px solid var(--hair);border-radius:0;
  padding:18px 2px;
}
.ctc:hover{border-color:var(--amber)}
.ctc b{font-family:var(--ff-title);font-weight:600;font-size:1.05rem}

/* ---------------- configuratori: stessa mano, funzioni intatte ---------------- */
.card,.preview-card,.preset,.cat,.ev-quote,.card-lite,.pay-card{
  border-radius:var(--r);box-shadow:none;border-color:var(--hair);
}
.ev-type,.ev-item,.preset{border-radius:var(--r);box-shadow:none}
.ev-type:hover{transform:none;border-color:var(--amber)}
.ev-type.is-on{box-shadow:none}
.ev-quote h3,.ev-cat h3{
  font-family:var(--ff-title);font-style:italic;font-weight:400;
  font-size:1rem;letter-spacing:0;text-transform:none;color:var(--brand-ink);
}
.ev-type b,.ev-txt b{font-family:var(--ff-title);font-weight:600}
.ev-tot strong,.q-total strong,.ev-type em{font-family:var(--ff-title)}
.ev-quote{box-shadow:var(--sh-2)}

/* ---------------- piè di pagina ---------------- */
.site-foot{border-top:1px solid var(--hair-dark)}
.site-foot h4{
  font-family:var(--ff-title);font-style:italic;font-weight:400;
  text-transform:none;letter-spacing:0;font-size:1rem;color:var(--brand-light);
}
.foot-bottom{border-top:1px solid var(--hair-dark)}
.social a{border-radius:0}

/* ---------------- meno effetti, più calma ---------------- */
.rise{transform:translateY(14px)}
.shot,.b-card,.way,.svc{will-change:auto}

@media (max-width:899px){
  body{font-size:16px}
  .sec{padding:46px 16px}
  .svc{padding:20px 0 4px}
  .gallery .shot{transform:none}
  .cta{padding:40px 20px}
}

/* ---------------- una sottolineatura tirata a mano ---------------- */
.splash .splash-title .hl{
  color:var(--brand-light);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8.5c34-4 68-5.5 100-4.5s58 3.5 96 1' fill='none' stroke='%23e7d59e' stroke-width='2.2' stroke-linecap='round' opacity='.85'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:0 88%;background-size:100% .5em;
  padding-bottom:.06em;
}

/* i trattini degli elenchi, come segnati a penna */
.way-list li::before{
  border-radius:0;width:9px;height:1.5px;top:.72em;background:var(--amber);
}
.way-gold .way-list li::before{background:var(--brand-light)}

/* piccoli scarti fra le sezioni: niente ritmo da macchina */
@media (min-width:900px){
  .sec + .sec{padding-top:64px}
  .sec.tinted + .sec{padding-top:88px}
}

/* =========================================================
   CORREZIONI
   ========================================================= */

/* --- apertura: il marchio poggia su un'ombra morbida --- */
.splash-logo-wrap{
  display:block;position:relative;width:min(320px,62vw);margin:0 auto 14px;
}
@media (min-width:900px){ .splash-logo-wrap{width:min(380px,32vw)} }
.splash-logo-wrap .splash-logo{width:100%;margin:0}

/* Il marchio è centrato dentro il file SVG (viewBox ricentrata sul disegno,
   che era spostato dell'11,2% a sinistra della tela): qui non serve più
   nessuna correzione, e l'ombra torna simmetrica. */
.splash-logo-wrap::after{
  content:"";position:absolute;left:12%;right:12%;bottom:-14px;height:26px;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.72),rgba(0,0,0,0) 72%);
  filter:blur(3px);z-index:-1;
  opacity:0;animation:fadeUp .9s .18s forwards;
}
.splash-logo{
  filter:
    drop-shadow(0 20px 26px rgba(0,0,0,.92))
    drop-shadow(0 6px 12px rgba(0,0,0,.8))
    drop-shadow(0 0 46px rgba(var(--brand-rgb),.42));
}

/* --- hero: l'occhiello si stacca dal titolo --- */
.home-hero .kicker{margin-bottom:20px;display:inline-flex}
.home-hero h1{margin-top:6px}
@media (min-width:900px){
  .home-hero .kicker{margin-bottom:26px}
  .home-hero h1{margin-top:10px}
}

/* --- niente riquadri attorno alle icone, in nessuna variante --- */
.svc-ico,.way-ico,.sec.dark .svc-ico,.way-gold .way-ico,.b-card .svc-ico{
  background:none !important;border:0 !important;border-radius:0 !important;
  width:auto;height:auto;display:block;
}
.way-gold .way-ico svg{stroke:var(--brand-light)}

/* --- i due box: si deve capire che sono configuratori --- */
.way-badge{
  display:inline-block;margin-top:10px;font-size:.76rem;letter-spacing:.06em;
  text-transform:uppercase;font-weight:700;color:var(--brand-ink);
}
.way-gold .way-badge{color:var(--brand-light)}
.way-demo{
  margin:16px 0 20px;padding:14px;border-radius:10px;
  background:var(--sand);border:1px solid var(--hair);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}
.way-gold .way-demo{
  background:rgba(255,255,255,.045);border-color:var(--hair-dark);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.wd-head{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;margin-bottom:10px}
.wd-head i{width:8px;height:8px;border-radius:50%;background:var(--amber);flex:0 0 auto}
.way-gold .wd-head{color:var(--on-dark)}
.way-gold .wd-head i{background:var(--brand-light)}

.wd-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.wd-chips span{
  font-size:.72rem;font-weight:600;padding:4px 9px;border-radius:999px;
  border:1px solid var(--hair);color:var(--muted);
}
.way-gold .wd-chips span{border-color:var(--hair-dark);color:var(--on-dark-2)}
.wd-chips span.on{background:var(--amber);border-color:var(--amber);color:var(--amber-on)}
.way-gold .wd-chips span.on{background:var(--brand-light);border-color:var(--brand-light);color:#1a1408}

.wd-row{display:flex;align-items:center;gap:10px;font-size:.76rem;color:var(--muted);margin-bottom:12px}
.way-gold .wd-row{color:var(--on-dark-2)}
.wd-range{flex:1;height:4px;border-radius:2px;background:var(--line);position:relative;display:block}
.way-gold .wd-range{background:rgba(255,255,255,.16)}
.wd-range b{position:absolute;left:0;top:0;bottom:0;width:58%;background:var(--amber);border-radius:2px}
.way-gold .wd-range b{background:var(--brand-light)}
.wd-range::after{
  content:"";position:absolute;left:58%;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;
  border-radius:50%;background:var(--paper);border:2px solid var(--amber);
}
.way-gold .wd-range::after{background:var(--ink);border-color:var(--brand-light)}

.wd-line{display:flex;align-items:center;gap:8px;font-size:.8rem;padding:5px 0;color:var(--txt)}
.way-gold .wd-line{color:var(--on-dark-2)}
.wd-check{
  width:15px;height:15px;border-radius:4px;border:1.5px solid var(--line-2);flex:0 0 auto;position:relative;
}
.way-gold .wd-check{border-color:rgba(255,255,255,.28)}
.wd-check.on{background:var(--amber);border-color:var(--amber)}
.way-gold .wd-check.on{background:var(--brand-light);border-color:var(--brand-light)}
.wd-check.on::after{
  content:"";position:absolute;left:4px;top:0;width:4px;height:8px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(42deg);
}
.way-gold .wd-check.on::after{border-color:#1a1408}
.wd-qty{
  min-width:20px;height:20px;border-radius:5px;display:inline-grid;place-items:center;
  background:rgba(var(--brand-rgb),.16);color:var(--brand-ink);font-size:.72rem;font-weight:750;
}

.wd-tot{
  display:flex;justify-content:space-between;align-items:baseline;gap:10px;
  margin-top:12px;padding-top:10px;border-top:1px dashed var(--hair);
  font-size:.76rem;color:var(--muted);
}
.way-gold .wd-tot{border-top-color:var(--hair-dark);color:var(--on-dark-2)}
.wd-tot b{
  font-family:var(--ff-title);font-size:1.3rem;color:var(--brand-ink);
  font-variant-numeric:tabular-nums;
}
.way-gold .wd-tot b{color:var(--brand-light)}

/* il palchetto disegnato dentro il box del service */
.wd-stage{display:block;width:100%;height:auto;margin:2px 0 10px}
.wd-deck{fill:var(--ink);opacity:.85}
.wd-truss{fill:none;stroke:var(--ink);stroke-width:3;opacity:.55}
.wd-lamp{fill:var(--amber)}
.wd-led{fill:rgba(var(--brand-rgb),.22);stroke:var(--amber);stroke-width:1.5}
.wd-box{fill:var(--ink);opacity:.7}

/* la scheda intera si comporta da pulsante: bordo che si accende */
.way{cursor:default}
.way:hover .way-demo{border-color:rgba(var(--brand-rgb),.45)}

@media (max-width:620px){
  .way{padding:24px 18px 20px}
  .way-demo{padding:12px;margin:14px 0 16px}
  .wd-chips span{font-size:.68rem;padding:3px 8px}
  .wd-tot b{font-size:1.15rem}
}

/* il pulsante d'azione nel menu deve leggersi: il colore dei link del menu
   vinceva su quello del bottone */
.nav-menu a.btn-primary{color:var(--amber-on)}
.nav-menu a.btn-primary:hover{color:var(--amber-on);background:var(--amber-2)}

/* nei due box niente cifre: si dice solo che il totale è sempre in vista */
.wd-tot em{
  font-family:var(--ff-title);font-style:italic;font-weight:400;
  font-size:.95rem;color:var(--brand-ink);
}
.way-gold .wd-tot em{color:var(--brand-light)}

/* ---------------- il palco può anche non servire ---------------- */
.switch.sw-lead{
  display:flex;gap:10px;align-items:flex-start;
  border:1px dashed var(--line-2);border-radius:8px;padding:12px 14px;margin-bottom:16px;
  background:var(--sand);
}
.switch.sw-lead span b{font-weight:700}
.dims.no-stage .switch.sw-lead{
  border-style:solid;border-color:var(--amber);background:var(--amber-soft);
}
/* le misure restano sempre leggibili e modificabili: sono il riferimento
   dell'area di lavoro anche quando il palco non va montato */
.dims.no-stage .dim-row output{color:var(--brand-ink)}

/* ---------------- voci che si noleggiano a coppie ---------------- */
.item-p .pair-tag{
  display:inline-block;margin-left:8px;font-size:.68rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--brand-ink);
  border:1px solid rgba(var(--brand-rgb),.35);border-radius:999px;padding:1px 7px;
  vertical-align:1px;
}


/* =========================================================
   MENO ATTRITO
   Nessun colore, font o fotografia cambiati: si toglie solo
   quello che sta fra chi apre il sito e quello che cerca.
   ========================================================= */

/* --- intestazione: una riga, non quattro ---------------------------------
   Il claim andava a capo e trascinava con sé l'altezza del menu. Ora si
   accorcia con i puntini invece di occupare una seconda riga. */
.logo em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(38vw,340px)}
.logo b{white-space:nowrap}
@media (max-width:520px){ .logo em{display:none} }   /* sul telefono non ci sta: meglio niente */

/* --- pagine-strumento: si aprono sullo strumento -------------------------
   /preventivo e /eventi non sono brochure. La presentazione resta, ma come
   fascia: prima il primo controllo stava a 818 px su uno schermo da 1000. */
body.tool .hero{padding:20px 18px 22px}
body.tool .hero h1{font-size:clamp(1.3rem,3vw,1.9rem);line-height:1.15}
body.tool .hero h1 br{display:none}                  /* una riga sola, non due */
body.tool .hero .eyebrow{margin-bottom:10px;font-size:.68rem}
body.tool .hero .lead{
  margin-top:8px;font-size:.94rem;max-width:70ch;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
body.tool .hero-cta{margin-top:14px}
body.tool .hero-facts{margin-top:14px;font-size:.82rem;gap:6px 18px}
@media (max-width:760px){
  body.tool .hero{padding:16px 14px 18px}
  body.tool .hero .lead{display:none}                /* sul telefono è quattro righe fra te e il palco */
  body.tool .hero-facts{margin-top:10px}
}

/* --- striscia promozionale: un'informazione, non un secondo sito --------- */
.promo{padding-top:8px;padding-bottom:8px;font-size:.9rem}
.promo-txt span{font-size:.84rem}
@media (max-width:760px){
  .promo{padding-top:7px;padding-bottom:7px}
  .promo-txt span{display:none}                      /* resta il titolo e il codice */
  .promo-cta{padding:7px 12px;font-size:.82rem}
}

/* --- avviso cookie: si legge in due righe e si chiude ------------------- */
.cookie{padding:13px 15px;max-width:430px}
.cookie h3{font-size:.92rem;margin-bottom:4px}
.cookie p{font-size:.8rem;line-height:1.5}
.cookie-btns{margin-top:10px;gap:6px}
.cookie-btns .btn{flex:0 1 auto;min-width:0;padding:8px 16px;font-size:.86rem}

/* --- il pulsante della pagina corrente non deve sparire -------------------
   La regola per la voce di menu attiva toglie lo sfondo, ed essendo scritta
   per i link di testo colpiva anche i due pulsanti: su /preventivo
   "Configura palco" era testo scuro su fondo scuro, cioè illeggibile.
   Qui i pulsanti tornano pulsanti anche sulla pagina in cui ci si trova. */
.nav-menu a.btn[aria-current="page"]{background:var(--amber);color:var(--amber-on)}
.nav-menu a.btn[aria-current="page"]::after{display:none}

/* --- apertura: si esce da qualsiasi punto ------------------------------- */
.splash{cursor:pointer}
.splash .splash-in,.splash .splash-cta{cursor:auto}

/* --- variante: avviso cookie come striscia, non come scheda ---------------
   Il testo resta per intero (è un'informativa, non si taglia), ma si dispone
   su una riga sola con i pulsanti a destra. Su telefono diventa una fascia a
   tutta larghezza appoggiata sopra la barra dei contatti. */
.cookie{
  display:flex;align-items:center;gap:14px;
  left:0;right:0;bottom:74px;max-width:none;width:auto;
  border-radius:0;border-left:0;border-right:0;border-bottom:0;
  padding:10px 14px;
}
.cookie h3{display:none}                     /* il dialogo è già etichettato per lo screen reader */
.cookie p{margin:0;flex:1;font-size:.76rem;line-height:1.45}
.cookie-btns{margin:0;flex:0 0 auto;flex-wrap:nowrap;gap:8px}
.cookie-btns .btn{padding:8px 14px;font-size:.82rem;white-space:nowrap}

@media (min-width:900px){
  .cookie{
    left:20px;right:20px;bottom:20px;
    border:1px solid var(--gold-line);border-radius:var(--r);
    padding:11px 16px;
  }
  .cookie p{font-size:.8rem}
}
@media (max-width:520px){
  .cookie{flex-wrap:wrap;gap:8px;padding:10px 12px}
  .cookie p{flex:1 1 100%;font-size:.72rem}
  .cookie-btns{flex:1 1 100%}
  .cookie-btns .btn{flex:1}
}


/* --- il marchio vero nell'intestazione, non un'icona segnaposto ----------
   Era una casetta stilizzata generica (nessun brand ce l'ha in un cerchio
   d'oro): ora è /logo.svg, lo stesso file dello splash e dell'hero, solo
   più piccolo. Le vecchie regole .logo svg restano nei fogli (non fanno più
   match, non c'entrano nulla di rotto) perché toccare tre file per una
   riga morta non vale il rischio su un sito in produzione. */
.logo-mark{display:block;height:34px;width:auto;flex:0 0 auto}
@media (min-width:900px){ .logo-mark{height:40px} }
