/* Caratteri ospitati sul sito (Montserrat, licenza SIL OFL: assets/font/OFL.txt) */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300 600;font-display:swap;src:url(font/montserrat-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300 600;font-display:swap;src:url(font/montserrat-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* L'Oasi del Benessere: stile minimale, bianco, nero e oro */
:root{
  --bianco:#ffffff; --grigio:#f5f5f5; --avorio:#faf7f2; --crema:#f3ede6; --beige:#d9c7b0;
  --nero:#0a0a0a; --antracite:#222b35; --testo:#2b2b2b; --tenue:#6b6b6b; --linea:#e6e1da;
  --oro:#c49a3c; --oro-2:#c9a24d; --oro-scuro:#a9812c; --oro-pieno:#c9a04b;
  --font:'Montserrat',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--font);color:var(--testo);background:var(--bianco);line-height:1.75;font-size:.97rem;font-weight:300;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
strong{font-weight:600;color:var(--nero)}
h1,h2,h3,h4{font-family:var(--font);color:var(--nero);line-height:1.2}
h1,h2{font-weight:300;text-transform:uppercase;letter-spacing:.08em}
h3{font-weight:500;font-size:1.02rem;letter-spacing:.02em}
.contenitore{width:min(1160px,100% - 2.5rem);margin-inline:auto}
section{padding:4.5rem 0}

.etichetta-alta{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--oro);font-weight:500;margin-bottom:.9rem}

/* Barra avviso */
.barra-avviso{display:flex;flex-wrap:wrap;justify-content:center;gap:.15rem .55rem;background:var(--nero);color:#fff;text-decoration:none;font-size:.72rem;letter-spacing:.06em;padding:.6rem 1rem;text-align:center;line-height:1.4}
.barra-avviso strong{color:#fff;font-weight:600}
.barra-avviso .sottolineato{color:var(--oro-2);text-decoration:underline;text-underline-offset:3px}
.barra-avviso .sep{opacity:.5}
.barra-avviso:hover .sottolineato{color:#fff}

/* Navigazione */
.nav{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--linea)}
.nav .contenitore{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0}
.logo{display:inline-flex;align-items:center;line-height:0;text-decoration:none}
.logo img{height:38px;width:auto}
.nav-azioni{display:flex;align-items:center;gap:.6rem}
#menu ul{list-style:none}
#menu a{text-decoration:none;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--testo);font-weight:400}
#menu a:hover{color:var(--oro)}
.apri-menu{width:40px;height:40px;border:1px solid var(--nero);background:#fff;display:grid;place-content:center;gap:5px;cursor:pointer}
.apri-menu span{display:block;width:18px;height:1px;background:var(--nero);transition:transform .2s}
.menu-aperto .apri-menu span:first-child{transform:translateY(3px) rotate(45deg)}
.menu-aperto .apri-menu span:last-child{transform:translateY(-3px) rotate(-45deg)}
#menu{display:none}
.menu-aperto #menu{display:block;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--linea);box-shadow:0 12px 24px rgba(0,0,0,.05)}
.menu-aperto #menu ul{width:min(1160px,100% - 2.5rem);margin:0 auto;padding:.5rem 0 1rem}
.menu-aperto #menu li{border-top:1px solid var(--linea)}
.menu-aperto #menu a{display:block;padding:.95rem 0}

/* Pulsanti */
.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:.95rem 1.8rem;font-family:var(--font);font-size:.74rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-radius:0;transition:background .2s,color .2s,border-color .2s;line-height:1.3}
.btn-oro{background:var(--oro);color:#fff;border:1px solid var(--oro)}
.btn-oro:hover{background:var(--oro-scuro);border-color:var(--oro-scuro)}
.btn-linea{border:1px solid var(--nero);color:var(--nero);background:transparent}
.btn-linea:hover{background:var(--nero);color:#fff}
.btn-piccolo{padding:.6rem 1.05rem;font-size:.68rem}

/* Hero */
.hero{background:var(--grigio);padding:3.5rem 0 4rem;overflow:hidden}
.hero-griglia{display:grid;gap:2.5rem;align-items:center}
.hero-testo{text-align:center}
.hero h1{font-size:clamp(2rem,8.4vw,3.9rem);font-weight:300;letter-spacing:.1em;line-height:1.12}
.hero .bio{max-width:520px;margin:1.4rem auto 2.2rem;font-size:1.02rem;color:var(--testo)}
.azioni{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;max-width:360px;margin-inline:auto}
.nota{font-size:.8rem;color:var(--tenue);margin-top:1.4rem}
.nota a{text-decoration:underline;text-underline-offset:3px}

/* Motivo a bolle */
.hero-visivo,.decoro{position:relative;aspect-ratio:1;width:min(260px,72%);margin:0 auto}
.cerchio-goccia{position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0,#fff 35%,var(--avorio) 70%,var(--crema) 100%);display:grid;place-items:center;box-shadow:0 30px 60px rgba(34,43,53,.08),inset 0 0 0 1px rgba(196,154,60,.25)}
.cerchio-goccia img{width:30%;height:auto;opacity:.92}
.bolla{position:absolute;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.95) 0,rgba(255,255,255,.4) 22%,rgba(255,255,255,0) 45%),radial-gradient(circle at 50% 50%,rgba(255,255,255,0) 58%,rgba(34,43,53,.10) 72%,rgba(255,255,255,.6) 100%);border:1px solid rgba(34,43,53,.10)}
.b1{width:22%;height:22%;top:2%;right:6%}
.b2{width:12%;height:12%;top:20%;right:-2%}
.b3{width:16%;height:16%;bottom:4%;left:2%}
.b4{width:8%;height:8%;bottom:20%;left:-4%}
.b5{width:6%;height:6%;top:8%;left:16%}

/* Riga icone */
.punti-forza{padding:3rem 0;background:#fff;border-bottom:1px solid var(--linea)}
.icone-riga{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 1rem;text-align:center}
.icone-riga li{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--nero);font-weight:400;line-height:1.5;max-width:180px;margin-inline:auto}
.cerchio{width:64px;height:64px;border:1px solid var(--nero);border-radius:50%;display:grid;place-items:center;margin:0 auto .9rem;color:var(--nero)}
.cerchio svg{width:28px;height:28px}

/* Titoli sezione */
.titolo-sezione{text-align:center;max-width:640px;margin:0 auto 3rem}
.titolo-sezione h2{font-size:clamp(1.5rem,5.4vw,2.3rem)}
.titolo-sezione p:not(.etichetta-alta){color:var(--tenue);margin-top:1rem}
.titolo-sezione h2::after{content:"";display:block;width:48px;height:1px;background:var(--oro);margin:1.2rem auto 0}

/* Trattamenti */
.griglia{display:grid;gap:1px;background:var(--linea);border:1px solid var(--linea)}
.scheda{background:#fff;padding:2.2rem 1.8rem;position:relative}
.scheda h3{text-transform:uppercase;letter-spacing:.12em;font-size:.95rem;margin-bottom:.8rem}
.scheda p{color:var(--tenue);font-size:.92rem}
.etichetta{display:inline-block;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--oro);font-weight:500;margin-bottom:.9rem}
.prezzo{margin-top:1.1rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--nero)!important;font-weight:500}
.scheda-evidenza{background:var(--avorio)}

/* Laser */
.laser{background:var(--avorio)}
.pacchetti{display:grid;gap:1.5rem}
.pacchetto{background:#fff;padding:2.6rem 1.8rem;text-align:center;border:1px solid var(--linea)}
.pacchetto.evidenza{border-color:var(--oro)}
.pacchetto h3{text-transform:uppercase;letter-spacing:.14em;font-weight:400;font-size:1.15rem}
.pacchetto .sedute{color:var(--tenue);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin:.4rem 0 1.2rem}
.pacchetto .cifra{font-size:3rem;font-weight:300;color:var(--nero);letter-spacing:.02em;line-height:1}
.pacchetto ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin:1.6rem 0 2rem}
.pacchetto li{border:1px solid var(--beige);padding:.25rem .8rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.piede{text-align:center;margin-top:2.2rem;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase}

/* Listino */
.listino{background:#fff}
.listino-contenitore{max-width:960px;margin:0 auto}
.listino-vuoto{text-align:center;color:var(--tenue);font-size:.9rem;padding:2rem 1rem;border:1px solid var(--linea);background:var(--grigio)}
.listino-vuoto a{color:var(--nero);text-decoration:underline;text-underline-offset:3px}
.listino-schede{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--linea);margin:0 -1.25rem 2rem;padding:0 1.25rem;scroll-snap-type:x proximity}
.listino-schede::-webkit-scrollbar{display:none}
.listino-schede button{flex:0 0 auto;scroll-snap-align:center;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:.9rem 1rem;font-family:var(--font);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tenue);cursor:pointer;white-space:nowrap}
.listino-schede button[aria-selected="true"]{color:var(--nero);border-bottom-color:var(--oro);font-weight:500}
.listino-schede button:focus-visible{outline:1px solid var(--oro);outline-offset:-4px}
.listino-colonne{display:grid;gap:2rem}
.listino-colonna h4{font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;font-weight:600;padding-bottom:.7rem;border-bottom:1px solid var(--nero);margin-bottom:.4rem}
.listino-colonna ul{list-style:none}
.listino-colonna li{display:flex;align-items:baseline;gap:.5rem;padding:.7rem 0;border-bottom:1px solid var(--grigio);font-size:.9rem}
.listino-colonna .voce{color:var(--testo);flex:0 1 auto}
.listino-colonna .voce small{display:block;font-size:.74rem;color:var(--tenue)}
.listino-colonna .puntini{flex:1 1 1.5rem;min-width:1.5rem;border-bottom:1px dotted var(--beige);transform:translateY(-.3em)}
.listino-colonna .costo{flex:0 0 auto;font-weight:500;color:var(--nero);white-space:nowrap}
.listino-titolo{text-align:center;text-transform:uppercase;letter-spacing:.14em;font-weight:400;font-size:1rem;margin-bottom:.6rem}
.listino-intro{text-align:center;color:var(--tenue);font-size:.9rem;max-width:620px;margin:0 auto 2rem}
.listino-colonna h4.vuoto{border-bottom-color:transparent}
.listino-elenco{display:flex;flex-wrap:wrap;gap:.45rem;padding-top:.8rem}
.listino-elenco li{display:block!important;border:1px solid var(--beige)!important;padding:.25rem .8rem!important;font-size:.72rem!important;letter-spacing:.1em;text-transform:uppercase}
.listino-colonne:not(.doppie){max-width:640px;margin-inline:auto}
.listino-avviso{text-align:center;font-size:.74rem;color:var(--tenue);letter-spacing:.04em;margin-top:2.2rem}
.listino-banner{max-width:960px;margin:2.5rem auto 0;background:var(--avorio);border:1px solid var(--linea);padding:2.2rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.3rem}
.listino-banner p{font-size:1rem;max-width:520px;color:var(--testo);letter-spacing:.02em}
.listino-nota{margin-top:1.4rem;font-size:.8rem;color:var(--tenue);text-align:center}

/* Evento */
.evento{background:var(--grigio)}
.banner{background:var(--nero);color:#e9e6e1;padding:3rem 1.6rem;text-align:center;display:grid;gap:2rem;align-items:center;position:relative;overflow:hidden}
.banner::after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;border:1px solid rgba(201,162,77,.25);right:-140px;top:-140px}
.banner h2{color:#fff;font-size:clamp(1.5rem,5.4vw,2.3rem)}
.banner p{max-width:560px;margin:1rem auto 0}
.banner strong{color:#fff}
.data{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--oro-2);width:150px;height:150px;border-radius:50%;margin:0 auto}
.data .giorno{font-size:3.2rem;font-weight:300;color:#fff;line-height:1}
.data .mese{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--oro-2)}
.punti{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:1.6rem 0 2rem}
.punti li{border:1px solid rgba(255,255,255,.3);padding:.35rem .9rem;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}

/* Chi siamo */
.chi-sezione{background:var(--avorio)}
.chi{display:grid;gap:3rem;align-items:center}
.chi h2{font-size:clamp(1.5rem,5.4vw,2.2rem);margin-bottom:1.4rem}
.chi p:not(.etichetta-alta){color:var(--testo);margin-bottom:1rem}
.valori{list-style:none;display:flex;flex-wrap:wrap;gap:1.6rem;margin-top:1.8rem}
.valori li{font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500;color:var(--nero);display:flex;align-items:center;gap:.6rem}
.valori li::before{content:"";width:8px;height:8px;border-radius:50%;border:1px solid var(--oro)}

/* Contatti */
.contatti{background:#fff}
.contatti-griglia{display:grid;gap:2.5rem}
.info{list-style:none;display:grid;gap:1.6rem}
.info li{display:flex;gap:1.1rem;align-items:flex-start}
.info .cerchio{width:48px;height:48px;margin:0;flex:0 0 48px}
.info .cerchio svg{width:22px;height:22px}
.info strong{display:block;font-weight:600;letter-spacing:.22em;text-transform:uppercase;font-size:.68rem;color:var(--oro);margin-bottom:.2rem}
.info a{color:var(--nero);text-decoration:underline;text-underline-offset:3px}
.collegamenti{display:flex;flex-direction:column;gap:.7rem;margin-top:2.2rem}
.badge-google{margin-top:1.2rem;font-size:.82rem;color:var(--tenue)}
.badge-google .stella{color:var(--oro)}
.mappa{display:flex;flex-direction:column;gap:.8rem}
.mappa iframe{width:100%;min-height:340px;flex:1;border:0;background:var(--grigio);filter:grayscale(.85) contrast(1.02)}
.apri-mappa{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--nero);text-underline-offset:3px}

/* Piè di pagina */
footer{background:var(--antracite);color:#cfd3d8;padding:3.5rem 0 6rem;text-align:center;font-size:.86rem}
footer .logo{display:flex;justify-content:center;margin-bottom:1.4rem}
footer .logo img{height:54px;width:auto}
footer .etichetta-alta{color:var(--oro-2)}
footer p{margin-top:.4rem}
footer a{color:#fff;text-underline-offset:3px}
footer .telefoni{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem 1.4rem}
footer .telefoni span{white-space:nowrap}
footer .piccolo{font-size:.72rem;opacity:.6;margin-top:1.8rem;letter-spacing:.04em}

/* WhatsApp mobile */
.wa-flottante{position:fixed;right:16px;bottom:16px;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:50}
.wa-flottante svg{width:30px;height:30px}

@media (min-width:720px){
  section{padding:6.5rem 0}
  .logo img{height:48px}
  .azioni{flex-direction:row;max-width:none;justify-content:center}
  .icone-riga{grid-template-columns:repeat(4,1fr)}
  .griglia{grid-template-columns:repeat(2,1fr)}
  .pacchetti{grid-template-columns:repeat(2,1fr);max-width:880px;margin-inline:auto}
  .listino-colonne.doppie{grid-template-columns:1fr 1fr;gap:3rem}
  .listino-schede{justify-content:center;flex-wrap:wrap;margin-inline:0;padding:0}
  .listino-schede button{padding:.9rem .7rem;letter-spacing:.13em}
  .listino-banner{flex-direction:row;justify-content:space-between;text-align:left;padding:2.2rem 2.6rem}
  .banner{grid-template-columns:auto 1fr;text-align:left;padding:4rem 3.5rem;gap:3.5rem}
  .banner p{margin-left:0}
  .banner .punti{justify-content:flex-start}
  .data{width:180px;height:180px}
  .chi{grid-template-columns:.9fr 1.1fr;gap:5rem}
  .contatti-griglia{grid-template-columns:1fr 1fr;gap:4rem;align-items:stretch}
  .collegamenti{flex-direction:row;flex-wrap:wrap}
  .wa-flottante{display:none}
  .hero-visivo,.decoro{width:min(340px,80%)}
  footer{padding-bottom:3rem}
}
@media (min-width:1000px){
  .apri-menu{display:none}
  #menu{display:block}
  #menu ul{display:flex;gap:1.9rem}
  .hero{padding:5rem 0 5.5rem}
  .hero-griglia{grid-template-columns:1.15fr .85fr;gap:4rem}
  .hero-testo{text-align:left}
  .hero .bio{margin-left:0}
  .azioni{justify-content:flex-start}
  .hero-visivo{width:min(420px,100%)}
  .griglia{grid-template-columns:repeat(3,1fr)}
}

/* ============ Movimento ============ */
.nav{background:rgba(255,255,255,0);border-bottom-color:transparent;transition:background .5s ease,box-shadow .5s ease,border-color .5s ease}
.nav .contenitore{transition:padding .45s ease}
.logo img{transition:height .45s ease}
.nav.scorrendo,.menu-aperto .nav{background:rgba(255,255,255,.97);border-bottom-color:var(--linea);box-shadow:0 8px 30px rgba(10,10,10,.06)}
.nav.scorrendo .contenitore{padding:.5rem 0}
.nav.scorrendo .logo img{height:32px}
.hero{margin-top:-65px;padding-top:calc(3.5rem + 65px)}
#menu a{position:relative;padding-bottom:4px}
#menu a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--oro);transform:scaleX(0);transition:transform .45s cubic-bezier(.22,.61,.36,1)}
#menu a:hover::after,#menu a.attivo::after{transform:scaleX(1)}
#menu a.attivo{color:var(--nero)}
.menu-aperto #menu a::after{display:none}

/* Pulsanti: riempimento a scorrimento */
.btn{position:relative;isolation:isolate;overflow:hidden;transition:color .45s ease,border-color .45s ease,box-shadow .45s ease}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;transform:scaleX(0);transform-origin:right center;transition:transform .55s cubic-bezier(.22,.61,.36,1)}
.btn:hover::before,.btn:focus-visible::before{transform:scaleX(1);transform-origin:left center}
.btn-linea::before{background:var(--nero)}
.btn-linea:hover{background:transparent;color:#fff}
.btn-oro::before{background:var(--oro-scuro)}
.btn-oro:hover{background:var(--oro);box-shadow:0 10px 24px rgba(196,154,60,.28)}
.listino-banner .btn-oro,.banner .btn-oro{border-color:var(--oro)}

/* Schede: sollevamento */
.scheda,.pacchetto{transition:transform .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s ease}
.scheda:hover,.pacchetto:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(34,43,53,.06);z-index:1}

/* Indicatore schede listino */
.listino-schede{position:relative}
.listino-indicatore{position:absolute;left:0;top:0;height:2px;width:0;background:var(--oro);transition:transform .5s cubic-bezier(.22,.61,.36,1),width .5s cubic-bezier(.22,.61,.36,1);pointer-events:none}
.listino-schede.con-indicatore button[aria-selected="true"]{border-bottom-color:transparent}
.listino-schede button{transition:color .3s ease}
.listino-schede button:hover{color:var(--nero)}


@media (min-width:720px){.hero{margin-top:-75px;padding-top:calc(6.5rem + 75px)}}
@media (min-width:1000px){.hero{padding-top:calc(5rem + 75px)}}

@media (prefers-reduced-motion:no-preference){
  /* Comparsa allo scorrimento */
  .rivela{opacity:0;transform:translateY(16px);transition:opacity .9s ease var(--ritardo,0s),transform .9s cubic-bezier(.22,.61,.36,1) var(--ritardo,0s)}
  .rivela.visibile{opacity:1;transform:none}
  .scheda.rivela.visibile,.pacchetto.rivela.visibile{transition:opacity 1s cubic-bezier(.22,.61,.36,1) var(--ritardo,0s),transform .5s cubic-bezier(.22,.61,.36,1),box-shadow .5s ease}
  .scheda.rivela.visibile:hover,.pacchetto.rivela.visibile:hover{transform:translateY(-3px)}
  .titolo-sezione.rivela h2::after{transform:scaleX(0);transition:transform 1.2s cubic-bezier(.22,.61,.36,1) .45s}
  .titolo-sezione.rivela.visibile h2::after{transform:scaleX(1)}
  .banner.rivela{transform:translateY(16px)}
  .banner.rivela.visibile{transform:none}
  .senza-movimento .rivela{opacity:1!important;transform:none!important}

  /* Ingresso dell'hero */
  @keyframes entra-su{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
  @keyframes entra-spazio{from{opacity:0;letter-spacing:.24em}to{opacity:1;letter-spacing:.1em}}
  @keyframes entra-scala{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}
  @keyframes cade-goccia{0%{opacity:0;transform:translateY(-40px) scale(.9)}60%{opacity:1;transform:translateY(4px) scale(1)}100%{opacity:1;transform:none}}
  .hero-testo>*{animation:entra-su 1s cubic-bezier(.22,.61,.36,1) both}
  .hero-testo .etichetta-alta{animation-delay:.15s}
  .hero-testo h1{animation-delay:.3s}
  .hero-testo .bio{animation-delay:.65s}
  .hero-testo .azioni{animation-delay:.85s}
  .hero-testo .nota{animation-delay:1.05s}
  .hero-visivo{animation:entra-scala 1.4s cubic-bezier(.22,.61,.36,1) .2s both}
  
  .nav .logo{animation:entra-su .9s cubic-bezier(.22,.61,.36,1) both}



  /* Listino: cambio scheda */
  @keyframes pannello-entra{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
  @keyframes riga-entra{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
  .listino-pannello.entra{animation:pannello-entra .6s cubic-bezier(.22,.61,.36,1) both}
  .listino-pannello.entra li{animation:riga-entra .55s cubic-bezier(.22,.61,.36,1) both;animation-delay:calc(var(--i,0) * 35ms + .1s)}

}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation:none!important}
}

/* ============ Instagram in intestazione ============ */
.icona-ig{width:40px;height:40px;display:grid;place-items:center;color:var(--nero);border-radius:50%;transition:color .35s ease,background .35s ease}
.icona-ig svg{width:21px;height:21px}
.icona-ig:hover{color:var(--oro);background:rgba(196,154,60,.08)}
.nav-azioni{gap:.35rem}
@media (min-width:400px){.nav-azioni{gap:.6rem}}
@media (max-width:370px){.btn-piccolo{padding:.55rem .75rem}}
@media (min-width:1000px) and (max-width:1180px){#menu ul{gap:1.25rem}#menu a{letter-spacing:.14em}}

/* ============ Chi siamo: foto ============ */
.chi-foto{position:relative;margin:0 auto;width:min(420px,100%)}
.chi-foto img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;box-shadow:0 30px 60px rgba(34,43,53,.12)}
.chi-foto::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--oro);z-index:-1}
.chi-foto{isolation:isolate}

/* ============ Galleria ============ */
.galleria{background:#fff}
.galleria-griglia{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:1080px;margin:0 auto}
.galleria-elemento{margin:0}
.galleria-voce{display:block;position:relative;overflow:hidden;background:var(--grigio);aspect-ratio:4/5}
.galleria-voce img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.22,.61,.36,1),filter .8s ease}
.galleria-voce::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,0) 60%,rgba(10,10,10,.22));opacity:0;transition:opacity .6s ease}
.galleria-voce::before{content:"";position:absolute;z-index:1;right:14px;bottom:14px;width:34px;height:34px;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:
  linear-gradient(#fff,#fff) center/12px 1px no-repeat,linear-gradient(#fff,#fff) center/1px 12px no-repeat;opacity:0;transform:scale(.8);transition:opacity .5s ease,transform .5s ease}
.galleria-voce:hover img,.galleria-voce:focus-visible img{transform:scale(1.03)}
.galleria-voce:hover::after,.galleria-voce:focus-visible::after{opacity:1}
.galleria-voce:hover::before,.galleria-voce:focus-visible::before{opacity:1;transform:none}
.galleria-voce:focus-visible{outline:2px solid var(--oro);outline-offset:3px}
.galleria-ig{text-align:center;margin-top:2.5rem}
.galleria-ig a{display:inline-flex;align-items:center;gap:.6rem;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--nero);text-decoration:none;padding-bottom:.35rem;background:linear-gradient(var(--oro),var(--oro)) left bottom/0 1px no-repeat;transition:background-size .5s cubic-bezier(.22,.61,.36,1),color .3s}
.galleria-ig a:hover{background-size:100% 1px;color:var(--oro)}
.galleria-ig svg{width:18px;height:18px}
@media (min-width:720px){
  .galleria-griglia{grid-template-columns:repeat(3,1fr);gap:2rem}
}

/* ============ Visore foto ============ */
.visore-aperto,.visore-aperto body{overflow:hidden}
.visore{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.94);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .35s ease;touch-action:pan-y}
.visore.aperto{opacity:1}
.visore-quadro{margin:0;display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:min(92vw,720px)}
.visore-quadro img{max-height:78vh;max-width:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 30px 80px rgba(0,0,0,.5);transition:transform .2s ease}
.visore-quadro figcaption{color:#e9e6e1;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;text-align:center;padding:0 1rem}
.visore-contatore{position:absolute;top:22px;left:24px;color:var(--oro-2);font-size:.7rem;letter-spacing:.24em}
.visore-chiudi{position:absolute;top:12px;right:12px;width:48px;height:48px;background:none;border:1px solid rgba(255,255,255,.35);border-radius:50%;cursor:pointer;display:grid;place-content:center;transition:border-color .3s,transform .4s}
.visore-chiudi span{display:block;width:18px;height:1px;background:#fff}
.visore-chiudi span:first-child{transform:translateY(.5px) rotate(45deg)}
.visore-chiudi span:last-child{transform:translateY(-.5px) rotate(-45deg)}
.visore-chiudi:hover{border-color:var(--oro-2);transform:rotate(90deg)}
.visore-freccia{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(10,10,10,.35);color:#fff;cursor:pointer;display:grid;place-items:center;transition:border-color .3s,color .3s}
.visore-freccia svg{width:22px;height:22px}
.visore-freccia:hover{border-color:var(--oro-2);color:var(--oro-2)}
.visore-freccia.prec{left:10px}.visore-freccia.succ{right:10px}
@media (min-width:720px){.visore-freccia.prec{left:28px}.visore-freccia.succ{right:28px}.visore-freccia{width:56px;height:56px}}
@media (max-width:719px){.visore-freccia{top:auto;bottom:18px;transform:none}.visore-quadro img{max-height:72vh}}
@media (prefers-reduced-motion:no-preference){
  @keyframes visore-entra{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
  @keyframes visore-d{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:none}}
  @keyframes visore-s{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:none}}
  .visore-quadro.entra{animation:visore-entra .5s cubic-bezier(.22,.61,.36,1) both}
  .visore-quadro.entra-d{animation:visore-d .45s cubic-bezier(.22,.61,.36,1) both}
  .visore-quadro.entra-s{animation:visore-s .45s cubic-bezier(.22,.61,.36,1) both}
}

/* Nota pagamenti dilazionati */
.nota-pagamenti{display:flex;align-items:center;justify-content:center;gap:.7rem;margin:1.2rem auto 0;max-width:520px;font-size:.8rem;color:var(--tenue);letter-spacing:.02em;text-align:left}
.nota-pagamenti svg{flex:0 0 26px;width:26px;height:26px;padding:4px;border:1px solid var(--oro);border-radius:50%;color:var(--oro)}
.nota-pagamenti strong{font-weight:500;color:var(--nero)}
.listino .nota-pagamenti{margin-top:.8rem}
.visore[hidden]{display:none}

/* ============ Laser: macchina MeDioStar ============ */
.laser-griglia{display:grid;gap:2.5rem;align-items:center}
.macchina{margin:0 auto;width:min(340px,86%);text-align:center}
.macchina-cornice{position:relative;aspect-ratio:1/1;overflow:hidden;background:#dfe5ea}
.macchina-cornice::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.7);pointer-events:none}
.macchina-foto{width:100%;height:100%;object-fit:cover;display:block}
.macchina-lucentezza{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,rgba(255,255,255,0) 38%,rgba(255,255,255,.35) 50%,rgba(255,255,255,0) 62%) no-repeat;background-size:250% 100%;background-position:150% 0;opacity:0}
.macchina figcaption{margin-top:1.4rem}
.macchina figcaption .etichetta-alta{display:block;margin-bottom:.35rem}
.macchina .didascalia{display:block;font-size:.8rem;color:var(--tenue);max-width:280px;margin:0 auto}
@media (min-width:720px){.macchina{width:min(380px,60%)}}
@media (min-width:1000px){
  .laser-griglia{grid-template-columns:.85fr 1.6fr;gap:3.5rem}
  .laser-griglia .pacchetti{max-width:none;margin:0}
  .macchina{width:100%;max-width:380px}
}
@media (prefers-reduced-motion:no-preference){
  .macchina.rivela .macchina-foto{transform:scale(1.04);transition:transform 1.8s cubic-bezier(.22,.61,.36,1)}
  .macchina.rivela.visibile .macchina-foto{transform:none}
  @keyframes lucentezza{0%,72%{background-position:150% 0;opacity:0}76%{opacity:1}95%{opacity:1}100%{background-position:-60% 0;opacity:0}}
  .macchina-lucentezza{animation:lucentezza 12s cubic-bezier(.45,.05,.35,1) 2s infinite}
}
@media (prefers-reduced-motion:reduce){.macchina-lucentezza{display:none}}
.hero-visivo .b4,.hero-visivo .b5{display:none}

/* ============ Risultati ============ */
.risultati{background:var(--grigio)}
.risultati-griglia{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;max-width:1080px;margin:0 auto}
.risultato{flex:1 1 100%;max-width:440px;background:#fff;border:1px solid var(--linea);display:flex;flex-direction:column;transition:box-shadow .5s ease}
.risultato:hover{box-shadow:0 14px 30px rgba(34,43,53,.06)}
.prima-dopo{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#fff}
.prima-dopo figure{margin:0;position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--grigio)}
.prima-dopo img{width:100%;height:100%;object-fit:cover;display:block}
.prima-dopo figcaption{position:absolute;left:10px;bottom:10px;background:rgba(255,255,255,.92);color:var(--nero);font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;padding:.3rem .6rem;font-weight:500;line-height:1}
.prima-dopo figure:last-child figcaption{background:var(--nero);color:#fff}
.risultato-testo{padding:1.5rem 1.4rem 1.6rem;display:flex;flex-direction:column;flex:1}
.risultato-testo .etichetta{margin-bottom:.5rem}
.risultato-testo h3{text-transform:uppercase;letter-spacing:.12em;font-size:.92rem;margin-bottom:.6rem}
.risultato-testo p:not(.etichetta){color:var(--tenue);font-size:.88rem}
.risultato-testo .sedute-ris{margin-top:.8rem;font-size:.7rem!important;letter-spacing:.18em;text-transform:uppercase;color:var(--nero)!important;font-weight:500}
.link-oro{margin-top:auto;padding-top:1.1rem;align-self:flex-start;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--oro);text-decoration:none;font-weight:500;background:linear-gradient(var(--oro),var(--oro)) left calc(100% - 0px)/0 1px no-repeat;padding-bottom:.25rem;transition:background-size .45s ease,color .3s}
.link-oro::after{content:" →"}
.link-oro:hover{background-size:100% 1px;color:var(--oro-scuro)}
.risultati-nota{text-align:center;margin-top:2.2rem;font-size:.74rem;color:var(--tenue);letter-spacing:.04em}
@media (min-width:720px){.risultato{flex:0 1 calc(50% - .75rem)}}
@media (min-width:1000px){.risultato{flex:0 1 calc(33.333% - 1rem)}}
@media (min-width:1000px) and (max-width:1240px){#menu ul{gap:1rem}#menu a{letter-spacing:.12em;font-size:.7rem}}
#menu a{white-space:nowrap}
@media (min-width:1000px) and (max-width:1099px){
  #menu{display:none}.apri-menu{display:grid}
  .menu-aperto #menu{display:block}.menu-aperto #menu ul{display:block}
}
@media (min-width:1100px) and (max-width:1320px){#menu ul{gap:1.1rem}#menu a{letter-spacing:.12em;font-size:.7rem}}

/* ============ Recensioni ============ */
.recensioni{background:var(--avorio)}
.recensioni-media{font-size:.9rem;color:var(--testo)!important;letter-spacing:.04em}
.recensioni-media .stella{color:var(--oro)}
.recensioni-griglia{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -1.25rem;padding:0 1.25rem .5rem}
.recensioni-griglia::-webkit-scrollbar{display:none}
.recensione{flex:0 0 84%;scroll-snap-align:center;height:auto;align-self:stretch;background:#fff;border:1px solid var(--linea);padding:2rem 1.7rem;display:flex;flex-direction:column;gap:1.1rem;margin:0}
.stelle{display:flex;gap:4px;color:var(--oro)}
.stelle svg{width:15px;height:15px;fill:currentColor;stroke:none;display:block}
.recensione blockquote{margin:0;flex:1}
.recensione blockquote p{font-size:.9rem;line-height:1.8;color:var(--testo)}
.recensione footer{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;margin-top:auto;padding:1rem 0 0;background:none;color:var(--nero);text-align:left;font-size:inherit;border-top:1px solid var(--oro)}
.recensione .autore{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#0a0a0a}
.recensione .fonte{font-size:.68rem;letter-spacing:.08em;color:var(--tenue)}
.recensioni-punti{display:flex;justify-content:center;gap:8px;margin-top:1.2rem}
.recensioni-punti span{width:6px;height:6px;border-radius:50%;border:1px solid var(--oro);transition:background .3s}
.recensioni-punti span.attivo{background:var(--oro)}
.recensioni-link{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 2.2rem;margin-top:2rem}
.recensioni-link .link-oro{margin-top:0;padding-top:0;align-self:auto}
@media (min-width:720px){
  .recensioni-griglia{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr;gap:1.5rem;overflow:visible;margin:0 auto;padding:0;max-width:1080px}
  .recensione{flex:none}
  .recensioni-punti{display:none}
}
@media (min-width:1000px){.recensioni-griglia{grid-template-columns:repeat(3,1fr)}}

/* ============ Acquista online ============ */
.acquista{background:#fff}
.acquista-schede{display:flex;justify-content:center;gap:0;margin:0 auto 2.5rem;border:1px solid var(--nero);width:max-content}
.acquista-schede button{background:#fff;border:0;padding:.85rem 2.4rem;font-family:var(--font);font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--nero);cursor:pointer;transition:background .35s,color .35s}
.acquista-schede button[aria-selected="true"]{background:var(--nero);color:#fff}
.acquista-schede[hidden]{display:none}
.acquista-gruppo{text-align:center;font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500;margin:0 0 1.5rem}
.con-schede .acquista-gruppo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.acquista-pannello+.acquista-pannello{margin-top:3rem}
.con-schede .acquista-pannello+.acquista-pannello{margin-top:0}
.prodotti-griglia{display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem;max-width:1080px;margin:0 auto}
.prodotto{flex:1 1 100%;max-width:340px;border:1px solid var(--linea);background:#fff;padding:2rem 1.6rem;text-align:center;display:flex;flex-direction:column;align-items:center;transition:box-shadow .5s ease,border-color .5s}
.prodotto:hover{box-shadow:0 14px 30px rgba(34,43,53,.06)}
.prodotto-evidenza{border-color:var(--oro);background:var(--avorio)}
.prodotto .etichetta{margin-bottom:.6rem}
.prodotto h3{text-transform:uppercase;letter-spacing:.1em;font-size:.88rem;font-weight:500;min-height:2.4em;display:flex;align-items:center}
.prodotto-sedute{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tenue);margin-top:.3rem}
.prodotto-prezzo{font-size:2.3rem;font-weight:300;color:var(--nero);line-height:1;margin-top:1.1rem}
.prodotto-rate{font-size:.78rem;color:var(--tenue);margin-top:.5rem}
.form-paypal{margin-top:auto;padding-top:1.4rem;width:100%}
.form-paypal .btn{width:100%;cursor:pointer;font-family:var(--font)}
.acquista-note{max-width:640px;margin:2.8rem auto 0;text-align:center;display:grid;gap:.6rem;font-size:.78rem;color:var(--tenue)}
.paypal-marchio{display:flex;align-items:center;justify-content:center;gap:.6rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--testo);margin-bottom:.4rem}
.paypal-marchio img{height:20px;width:auto}
.acquista-note .nota-pagamenti{margin-top:.4rem}
.acquista-esito{max-width:640px;margin:0 auto 2.2rem;border:1px solid var(--oro);background:var(--avorio);padding:1.4rem 1.6rem;text-align:center;font-size:.92rem}
.acquista-esito.annullato{border-color:var(--linea);background:var(--grigio)}
.acquista-esito a{color:var(--nero);text-underline-offset:3px}
.acquista-esito[hidden]{display:none}
@media (min-width:720px){.prodotto{flex:0 1 calc(50% - .6rem)}}
@media (min-width:1000px){.prodotto{flex:0 1 calc(33.333% - .8rem)}}
@media (prefers-reduced-motion:no-preference){
  .acquista-pannello.entra{animation:pannello-entra .6s cubic-bezier(.22,.61,.36,1) both}
}

/* ============ Laser: vantaggi MeDioStar ============ */
.vantaggi{list-style:none;margin:3.5rem 0 0;padding:2.5rem 0 0;border-top:1px solid var(--linea);display:grid;grid-template-columns:1fr;gap:2rem 2.5rem}
.vantaggi li{display:grid;grid-template-columns:44px 1fr;column-gap:1rem;align-items:start}
.vantaggio-icona{grid-row:span 2;width:44px;height:44px;border:1px solid var(--oro);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--oro)}
.vantaggio-icona svg{width:22px;height:22px}
.vantaggi h3{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--nero);margin:.25rem 0 .3rem;line-height:1.4}
.vantaggi p{font-size:.85rem;color:var(--tenue);line-height:1.6;margin:0}
@media (min-width:560px){.vantaggi{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.vantaggi{grid-template-columns:repeat(3,1fr);gap:2.6rem 3rem}}
@media (prefers-reduced-motion:no-preference){.vantaggi > li.rivela{transform:none}}

/* ============ Contrasti oro pieno ============ */
/* --oro-pieno #9b6e26: bianco su oro 4,5:1 (WCAG AA anche per il testo piccolo).
   --oro-scuro #a9812c: cifre grandi su bianco 3,6:1 (AA testo grande). */

/* Alternanza sezioni bianco / grigio, bordi netti */
.punti-forza{border-bottom:0}
#trattamenti{background:var(--grigio)}
.laser{background:#fff}
.risultati{background:var(--grigio)}
.listino{background:#fff}
.acquista{background:var(--grigio)}
.evento{background:#fff}
.chi-sezione{background:var(--grigio)}
.galleria{background:#fff}
.recensioni{background:var(--grigio)}
.contatti{background:#fff}
.scheda-evidenza{background:var(--avorio)}
.listino-banner{background:var(--grigio);border-color:var(--grigio)}

/* Fascia oro a tutta larghezza */
.fascia-oro{background:var(--oro-pieno);color:#fff;text-align:center;padding:4.5rem 0}
.fascia-oro .contenitore{max-width:980px}
.fascia-oro .etichetta-alta{color:#fff;opacity:.9;margin-bottom:1.3rem}
.fascia-oro h2{text-wrap:balance;color:#fff;font-weight:300;text-transform:none;letter-spacing:.005em;font-size:clamp(1.85rem,5.6vw,3.3rem);line-height:1.18}
.fascia-oro p:not(.etichetta-alta){max-width:560px;margin:1.3rem auto 2.2rem;font-size:1rem;font-weight:400;color:#fff;letter-spacing:.02em}
.btn-bianco{border:1px solid #fff;color:#fff;background:transparent;font-weight:600}
.btn-bianco::before{background:#fff}
.btn-bianco:hover,.btn-bianco:focus-visible{color:var(--oro-pieno)}
.btn-bianco:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (min-width:720px){.fascia-oro{padding:6rem 0}}

/* Vantaggi laser: schede piene oro alternate a schede bianche */
.vantaggi{border-top:0;padding-top:0;gap:1rem}
.vantaggi li{background:#fff;border:1px solid var(--linea);padding:1.6rem 1.5rem;grid-template-columns:48px 1fr;column-gap:1.1rem;align-items:center;min-height:100%}
.vantaggio-icona{width:48px;height:48px}
.vantaggi h3{font-weight:600;letter-spacing:.14em;font-size:.74rem;margin:0 0 .3rem;align-self:end}
.vantaggi p{align-self:start}
.vantaggi li:nth-child(odd){background:var(--oro-pieno);border-color:var(--oro-pieno)}
.vantaggi li:nth-child(odd) .vantaggio-icona{border-color:#fff;color:#fff}
.vantaggi li:nth-child(odd) h3,.vantaggi li:nth-child(odd) p{color:#fff}
@media (min-width:560px) and (max-width:999px){
  /* 2 colonne: scacchiera G B / B G / G B */
  .vantaggi li:nth-child(3){background:#fff;border-color:var(--linea)}
  .vantaggi li:nth-child(3) .vantaggio-icona{border-color:var(--oro);color:var(--oro)}
  .vantaggi li:nth-child(3) h3{color:var(--nero)}
  .vantaggi li:nth-child(3) p{color:var(--tenue)}
  .vantaggi li:nth-child(4){background:var(--oro-pieno);border-color:var(--oro-pieno)}
  .vantaggi li:nth-child(4) .vantaggio-icona{border-color:#fff;color:#fff}
  .vantaggi li:nth-child(4) h3,.vantaggi li:nth-child(4) p{color:#fff}
}
@media (min-width:1000px){.vantaggi{gap:1.2rem}}

/* Cifre marcate in oro */
.pacchetto .cifra{color:var(--oro-scuro);font-weight:500;font-size:3.3rem;letter-spacing:0}
.prodotto-prezzo{color:var(--oro-scuro);font-weight:500;font-size:2.5rem}
.recensioni-media strong{display:inline-block;vertical-align:-.12em;font-size:2.6rem;font-weight:500;color:var(--oro-scuro);line-height:1;margin:0 .15rem;letter-spacing:0}
.recensioni-media .stella{font-size:1.1rem}
.risultato-testo .sedute-ris{color:var(--nero)!important;font-weight:600}
.cifra-oro{color:var(--oro-scuro);font-weight:600;font-size:1.05rem;letter-spacing:.06em}

/* Tipografia: etichette e titoli delle schede in semibold */
.scheda h3,.prodotto h3,.risultato-testo h3{font-weight:600}
.pacchetto h3{font-weight:500}

/* Oro più chiaro e luminoso (richiesta 22/10): leggera luce e testo più leggibile */
.fascia-oro{background:linear-gradient(135deg,#d2ab55 0%,#c9a04b 45%,#bf9441 100%)}
.fascia-oro, .vantaggi li:nth-child(odd), .vantaggi li:nth-child(4){text-shadow:0 1px 2px rgba(90,60,10,.25)}
.vantaggi li:nth-child(odd) p{font-weight:500}
.btn-bianco:hover,.btn-bianco:focus-visible{color:#9b6e26}

/* ===== Note legali: piè di pagina, banner cookie, mappa su consenso, pagine legali ===== */
footer .dati-legali{font-size:.74rem;opacity:.75;margin-top:1.6rem;letter-spacing:.03em;line-height:1.7}
footer .link-legali{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem 1.2rem;margin-top:.9rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
footer .link-legali a{color:#fff;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s}
footer .link-legali a:hover,footer .link-legali a:focus-visible{border-bottom-color:var(--oro-2)}
footer .link-legali button{background:none;border:0;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:#fff;cursor:pointer;border-bottom:1px solid transparent}
footer .link-legali button:hover,footer .link-legali button:focus-visible{border-bottom-color:var(--oro-2)}
footer .piccolo{margin-top:1rem}
.da-completare{background:#fff3b0;color:#7a4b00;padding:0 .25em;font-weight:600;outline:1px dashed #c49a3c}
footer .da-completare{color:#5a3700}

.acquista-note .accetta-condizioni{font-size:.74rem;color:var(--tenue);margin-top:.2rem}
.acquista-note .accetta-condizioni a{color:var(--oro-scuro);text-underline-offset:3px}

.banner-cookie{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:200;max-width:560px;margin-inline:auto;background:#fff;color:var(--testo);border:1px solid var(--linea);border-top:2px solid var(--oro);box-shadow:0 18px 50px rgba(10,10,10,.16);padding:1.4rem 1.5rem 1.3rem;font-size:.82rem;line-height:1.65}
.banner-cookie[hidden]{display:none}
.banner-cookie h2{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--oro-scuro);font-weight:500;margin-bottom:.5rem}
.banner-cookie p{margin:0}
.banner-cookie a{color:var(--oro-scuro);text-underline-offset:3px}
.banner-cookie .azioni{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1.1rem}
.banner-cookie .btn{width:100%;cursor:pointer;padding:.85rem 1rem}
.banner-cookie .btn-scelta{background:#fff;color:var(--nero);border:1px solid var(--nero)}
.banner-cookie .btn-scelta::before{background:var(--nero)}
.banner-cookie .btn-scelta:hover,.banner-cookie .btn-scelta:focus-visible{color:#fff}
.banner-cookie .btn:focus-visible{outline:2px solid var(--oro);outline-offset:2px}

.mappa-segnaposto{flex:1;min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:2rem 1.5rem;background:var(--avorio);border:1px solid var(--linea);color:var(--tenue);font-size:.84rem}
.mappa-segnaposto svg{width:38px;height:38px;color:var(--oro)}
.mappa-segnaposto p{max-width:320px;margin:0}
.mappa-segnaposto .btn{cursor:pointer}
.mappa-segnaposto .piccolo{font-size:.72rem}
.mappa-segnaposto .piccolo a{color:var(--oro-scuro)}

.pagina-legale{background:#fff;padding:3.5rem 0 5rem}
.pagina-legale .contenitore{max-width:820px}
.pagina-legale .titolo-sezione{text-align:left;margin-bottom:2.2rem}
.pagina-legale h1{font-size:clamp(1.6rem,4vw,2.3rem);font-weight:300;letter-spacing:.02em;margin-top:.4rem}
.pagina-legale .aggiornata{font-size:.78rem;color:var(--tenue);margin-top:.6rem}
.pagina-legale h2{font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--nero);margin:2.4rem 0 .8rem;padding-top:1.2rem;border-top:1px solid var(--linea)}
.pagina-legale h3{font-size:.95rem;font-weight:500;margin:1.4rem 0 .5rem}
.pagina-legale p,.pagina-legale li{font-size:.92rem;color:var(--testo)}
.pagina-legale p+p{margin-top:.7rem}
.pagina-legale ul,.pagina-legale ol{padding-left:1.3rem;margin:.6rem 0;display:grid;gap:.35rem}
.pagina-legale a{color:var(--oro-scuro);text-underline-offset:3px;word-break:break-word}
.pagina-legale .riquadro{background:var(--avorio);border-left:2px solid var(--oro);padding:1.1rem 1.3rem;margin:1rem 0}
.pagina-legale .modulo-recesso{border:1px dashed var(--oro);padding:1.4rem 1.5rem;margin-top:1rem;background:#fff}
.pagina-legale table{width:100%;border-collapse:collapse;font-size:.86rem;margin:.8rem 0}
.pagina-legale th,.pagina-legale td{text-align:left;vertical-align:top;padding:.65rem .7rem;border-bottom:1px solid var(--linea)}
.pagina-legale th{font-weight:500;color:var(--nero);background:var(--avorio)}
.tabella-scorri{overflow-x:auto}
.pagina-legale .indice{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-top:1rem}
.pagina-legale .indice a{text-decoration:none}
.pagina-legale .torna{margin-top:3rem}
.nav-legale .contenitore{justify-content:space-between}
@media print{.banner-cookie,.nav,.wa-flottante,footer .link-legali{display:none!important}}

/* =====================================================================
   Sito multipagina (23/10): menu con sottomenu, testate delle pagine,
   home snella, marchi, nastro loghi, movimento misurato, hover oro 0,3 s
   ===================================================================== */
body{overflow-x:clip}

/* Menu: sottomenu Trattamenti (Viso / Corpo) */
#menu .con-sottomenu{position:relative}
#menu .freccia{display:inline-block;width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-3px) rotate(45deg);margin-left:.5rem}
#menu .sottomenu{display:block;list-style:none}
#menu .sottomenu a{text-transform:uppercase}
@media (min-width:1000px){
  #menu .sottomenu{position:absolute;top:calc(100% + .6rem);left:-1.2rem;min-width:190px;background:#fff;border:1px solid var(--linea);border-top:2px solid var(--oro);box-shadow:0 14px 30px rgba(10,10,10,.08);padding:.5rem 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease,visibility 0s linear .3s;z-index:5}
  #menu .con-sottomenu::after{content:"";position:absolute;left:0;right:0;top:100%;height:.8rem}
  #menu .con-sottomenu:hover .sottomenu,#menu .con-sottomenu:focus-within .sottomenu{opacity:1;visibility:visible;transform:none;transition:opacity .3s ease,transform .3s ease,visibility 0s}
  #menu .sottomenu a{display:block;padding:.6rem 1.2rem;font-size:.7rem}
  #menu .sottomenu a::after{display:none}
  #menu .sottomenu a:hover,#menu .sottomenu a.attivo{color:var(--oro-scuro);background:var(--avorio)}
}
.menu-aperto #menu .sottomenu{position:static;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;padding:0 0 .4rem 1.2rem}
.menu-aperto #menu .sottomenu li{border-top:0}
.menu-aperto #menu .sottomenu a{padding:.55rem 0;font-size:.7rem;color:var(--tenue)}
.menu-aperto #menu .freccia{display:none}
#menu a.attivo{color:var(--oro-scuro)}

/* Intestazione: si compatta scorrendo, si nasconde scendendo e ricompare risalendo */
.nav{transition:background .3s ease,box-shadow .3s ease,border-color .3s ease,transform .4s cubic-bezier(.22,.61,.36,1)}
.nav.nascosta{transform:translateY(-100%);box-shadow:none}

/* Hover oro, 0,3 s */
.btn{transition:color .3s ease,border-color .3s ease,box-shadow .3s ease}
.btn::before{transition:transform .3s cubic-bezier(.22,.61,.36,1)}
.btn-linea::before{background:var(--oro-pieno)}
.btn-linea:hover,.btn-linea:focus-visible{border-color:var(--oro-pieno);color:#fff}
#menu a{transition:color .3s ease}
#menu a::after{transition:transform .3s ease}
#menu a:hover{color:var(--oro-scuro)}
.link-oro{transition:background-size .3s ease,color .3s ease}
.icona-ig{transition:color .3s ease,background .3s ease}
.scheda,.pacchetto,.prodotto,.risultato,.recensione,.scopri-voce{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.scheda:hover{box-shadow:inset 0 0 0 1px var(--oro),0 14px 30px rgba(34,43,53,.06)}
.pacchetto:hover,.prodotto:hover,.risultato:hover,.recensione:hover,.scopri-voce:hover{border-color:var(--oro)}

/* Comparsa allo scorrimento: 24 px, 0,6 s, piccola cascata (80 ms, impostata in movimento.js) */
@media (prefers-reduced-motion:no-preference){
  .rivela{opacity:0;transform:translateY(24px);transition:opacity .6s ease var(--ritardo,0s),transform .6s cubic-bezier(.22,.61,.36,1) var(--ritardo,0s)}
  .rivela.visibile{opacity:1;transform:none}
  .scheda.rivela.visibile,.pacchetto.rivela.visibile,.scopri-voce.rivela.visibile,.prodotto.rivela.visibile,.risultato.rivela.visibile{transition:opacity .6s ease var(--ritardo,0s),transform .3s ease,box-shadow .3s ease,border-color .3s ease}
  .scheda.rivela.visibile:hover,.pacchetto.rivela.visibile:hover,.scopri-voce.rivela.visibile:hover{transform:translateY(-3px)}
  .titolo-sezione.rivela h2::after{transition:transform .6s cubic-bezier(.22,.61,.36,1) .2s}
  .banner.rivela{transform:translateY(24px)}
  .senza-movimento .rivela{opacity:1!important;transform:none!important}
}

/* Angolo arrotondato grande (una foto per sezione) */
:root{--angolo:clamp(56px,9vw,128px)}
.chi-foto img,.chi-foto::before,.macchina-cornice,.marchio-foto,.marchio-visivo{border-bottom-left-radius:var(--angolo)}
.macchina-cornice::after{border-bottom-left-radius:calc(var(--angolo) - 12px)}

/* Testata delle pagine interne */
.testata-pagina{background:var(--avorio);margin-top:-65px;padding:calc(2.4rem + 65px) 0 3.2rem;border-bottom-left-radius:var(--angolo)}
.testata-pagina .contenitore{text-align:center;max-width:860px}
.testata-pagina h1{font-size:clamp(1.75rem,6.4vw,3rem);font-weight:300;letter-spacing:.1em;line-height:1.15}
.testata-pagina h1::after{content:"";display:block;width:48px;height:1px;background:var(--oro);margin:1.2rem auto 0}
.testata-intro{color:var(--tenue);max-width:600px;margin:1.1rem auto 0}
.briciole{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .55rem;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tenue);margin-bottom:1.6rem}
.briciole a{color:var(--tenue);text-decoration:none;transition:color .3s ease}
.briciole a:hover{color:var(--oro-scuro)}
.briciole [aria-current]{color:var(--nero)}
.testata-pagina + section{background:#fff}
@media (min-width:720px){.testata-pagina{margin-top:-75px;padding:calc(3.6rem + 75px) 0 4.4rem}}
main.pagina-legale{padding-top:3.5rem}

/* Sezioni delle pagine interne */
.sezione-schede{background:#fff}
.listino-completo{text-align:center;margin-top:1.8rem}
.listino-completo .link-oro{padding-top:0}
.laser-acquista{text-align:center;margin-top:2.6rem}
.rimando{padding:2.6rem 0;background:#fff;border-top:1px solid var(--linea)}
.rimando p{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.4rem 2rem;text-align:center;font-size:.9rem;color:var(--tenue)}
.rimando .link-oro{margin-top:0;padding-top:0;align-self:auto}
.azioni-sx{margin-top:1.8rem}

/* Home: Scopri l'Oasi */
.scopri{background:#fff}
.scopri-griglia{display:grid;grid-template-columns:1fr;gap:1.2rem;max-width:1080px;margin:0 auto}
.scopri-voce{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);text-decoration:none;color:inherit}
.scopri-foto{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--grigio)}
.scopri-foto img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.scopri-voce:hover .scopri-foto img,.scopri-voce:focus-visible .scopri-foto img{transform:scale(1.03)}
.scopri-testo{display:flex;flex-direction:column;flex:1;padding:1.5rem 1.4rem 1.6rem}
.scopri-testo .etichetta{margin-bottom:.5rem}
.scopri-titolo{font-size:.95rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--nero);line-height:1.3;margin-bottom:.55rem}
.scopri-descr{color:var(--tenue);font-size:.88rem;line-height:1.65}
.scopri-voce .link-oro{margin-top:auto;padding-top:1.1rem}
.scopri-voce:hover .link-oro,.scopri-voce:focus-visible .link-oro{background-size:100% 1px;color:var(--oro-scuro)}
.scopri-voce:focus-visible{outline:2px solid var(--oro);outline-offset:3px}
@media (min-width:720px){.scopri-griglia{grid-template-columns:repeat(2,1fr);gap:1.5rem}}
@media (min-width:1000px){.scopri-griglia{grid-template-columns:repeat(3,1fr);gap:1.6rem}}

/* Home: marchio in evidenza */
.marchi-home{background:var(--grigio)}
.marchio-evidenza{display:grid;gap:2.6rem;align-items:center}
.marchio-foto{margin:0 auto;width:min(440px,100%);aspect-ratio:1;overflow:hidden;background:#dfe5ea}
.marchio-foto img{width:100%;height:100%;object-fit:cover}
.marchio-evidenza h2{font-size:clamp(1.5rem,5.4vw,2.2rem);margin-bottom:1.6rem}
.marchio-evidenza p:not(.etichetta-alta){margin-bottom:.9rem}
.marchio-logo{height:52px;width:auto;margin:0 0 1.3rem}
@media (min-width:1000px){.marchio-evidenza{grid-template-columns:.9fr 1.1fr;gap:5rem}}

/* Home: contatti brevi */
.contatti-brevi{background:#fff}
.contatti-brevi .info{max-width:1000px;margin:0 auto}
.contatti-brevi .collegamenti{justify-content:center;align-items:center}
@media (min-width:720px){.contatti-brevi .info{grid-template-columns:repeat(3,1fr);gap:2rem}}

/* Caroselli (marchi e video): componente unico in carosello.js */
.carosello{position:relative}
.carosello-pista{overflow-x:auto;overflow-y:hidden;scroll-behavior:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y;cursor:grab}
.carosello-pista::-webkit-scrollbar{display:none}
.carosello.trascina .carosello-pista{cursor:grabbing}
.carosello.trascina a{pointer-events:none}
.carosello-traccia{display:flex;width:max-content;list-style:none;margin:0;padding:0;user-select:none;-webkit-user-select:none}
.carosello-traccia img{-webkit-user-drag:none;user-select:none}
.carosello-frecce{display:flex;justify-content:center;gap:.9rem;margin-top:1.4rem}
.carosello-freccia{width:46px;height:46px;border-radius:50%;border:1px solid var(--oro-pieno);background:#fff;color:var(--oro-scuro);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .3s ease,color .3s ease,transform .3s ease}
.carosello-freccia svg{width:18px;height:18px}
.carosello-freccia.indietro svg{transform:scaleX(-1)}
.carosello-freccia:hover,.carosello-freccia:focus-visible{background:var(--oro-pieno);color:#fff}
.carosello-freccia:focus-visible{outline:2px solid var(--oro-scuro);outline-offset:3px}
.carosello-freccia:active{transform:scale(.94)}
@media (max-width:700px),(pointer:coarse){.carosello-freccia{width:36px;height:36px}.carosello-freccia svg{width:14px;height:14px}.carosello-frecce{margin-top:1rem}}

/* Nastro dei marchi */
.nastro-marchi{background:#fff;padding:2.6rem 0 2.6rem;border-top:1px solid var(--linea)}
.nastro-marchi .etichetta-alta{text-align:center;margin-bottom:1.6rem}
.nastro-marchi .etichetta-alta a{text-decoration:none;transition:color .3s ease}
.nastro-marchi .etichetta-alta a:hover{color:var(--oro-scuro)}
.carosello-marchi .carosello-pista{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.carosello-marchi .carosello-traccia{align-items:center}
.carosello-marchi li{padding:.6rem clamp(1.3rem,3vw,2.3rem)}
.carosello-marchi a{display:block;line-height:0}
.carosello-marchi img{height:44px;width:auto;max-width:none;opacity:.55;transition:opacity .3s ease}
.carosello-marchi img.largo{height:28px}
.carosello-marchi a:hover img,.carosello-marchi a:focus-visible img{opacity:1}
@media (max-width:600px){.carosello-marchi img{height:36px}.carosello-marchi img.largo{height:23px}}

/* Carosello video dei macchinari */
.tecnologie-video{background:var(--avorio);padding:clamp(3.5rem,7vw,5.5rem) 0}
.tecnologie-video .titolo-sezione{margin-bottom:2.2rem}
.carosello-video .carosello-traccia{padding:0 0 .4rem}
.video-voce{width:clamp(270px,78vw,420px);padding:0 clamp(.5rem,1.2vw,.9rem)}
.video-voce figure{margin:0}
.video-cornice{position:relative;aspect-ratio:16/9;background:#0b0b0c;border-radius:18px;border-bottom-left-radius:56px;overflow:hidden;border:1px solid var(--linea);transition:box-shadow .3s ease}
.video-voce:hover .video-cornice{box-shadow:0 0 0 1px var(--oro-pieno),0 14px 30px -18px rgba(0,0,0,.45)}
.video-cornice video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.video-voce figcaption{padding:1rem .2rem 0;text-align:center}
.video-nome{display:block;font-size:.82rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--nero)}
.video-riga{display:block;font-size:.85rem;color:var(--tenue);margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.video-play{position:absolute;inset:0;margin:auto;width:62px;height:62px;border-radius:50%;border:1px solid var(--oro-pieno);background:rgba(255,255,255,.92);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}
.video-play[hidden]{display:none}
.video-play span{width:0;height:0;border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent var(--oro-scuro);margin-left:4px}
.video-play:hover{transform:scale(1.06)}

/* Marchi collegati (pagine trattamenti e laser) */
.marchi-correlati{background:var(--grigio);padding:3rem 0}
.marchi-correlati .etichetta-alta{text-align:center;margin-bottom:1.6rem}
.marchi-correlati ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.marchi-correlati a{display:flex;flex-direction:column;align-items:center;gap:.9rem;min-width:180px;padding:1.4rem 1.6rem;background:#fff;border:1px solid var(--linea);text-decoration:none;transition:border-color .3s ease}
.marchi-correlati a:hover{border-color:var(--oro)}
.marchi-correlati img{height:40px;width:auto}
.marchi-correlati img.largo{height:26px}
.marchi-correlati span{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tenue)}

/* Pagina Marchi */
.marchi-pagina{background:#fff}
.marchi-elenco{display:grid;gap:4rem}
.marchio-scheda{display:grid;gap:2rem;align-items:center;scroll-margin-top:110px}
.marchio-visivo{margin:0;aspect-ratio:4/3;background:var(--grigio);display:grid;place-items:center;overflow:hidden;width:100%}
.marchio-visivo img{max-width:52%;max-height:40%;width:auto;height:auto}
.marchio-visivo img.largo{max-width:66%}
.marchio-visivo.con-foto{background:#dfe5ea}
.marchio-visivo.con-foto img{max-width:none;max-height:none;width:100%;height:100%;object-fit:cover}
.marchio-visivo.oro{background:linear-gradient(135deg,#d2ab55 0%,#c9a04b 45%,#bf9441 100%)}
.marchio-visivo.oro img{filter:brightness(0) invert(1)}
.marchio-testo h2{font-size:clamp(1.45rem,4.6vw,2.1rem);margin-bottom:.5rem}
.marchio-azienda{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tenue);margin-bottom:1.2rem}
.marchio-testo p:not(.etichetta-alta):not(.marchio-azienda):not(.da-noi-titolo){margin-bottom:.8rem}
.marchio-testo .marchio-logo{height:40px;margin-bottom:1.1rem}
.da-noi-titolo{font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--oro-scuro);font-weight:500;margin-top:1.3rem}
.da-noi{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 .4rem}
.da-noi a{display:inline-block;border:1px solid var(--beige);padding:.3rem .85rem;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--nero);text-decoration:none;transition:border-color .3s ease,color .3s ease}
.da-noi a:hover,.da-noi a:focus-visible{border-color:var(--oro);color:var(--oro-scuro)}
.marchio-testo > .link-oro{display:inline-block;margin-top:1rem}
@media (min-width:900px){
  .marchi-elenco{gap:5.5rem}
  .marchio-scheda{grid-template-columns:1fr 1.1fr;gap:4.5rem}
  .marchio-scheda:nth-child(even) .marchio-visivo{order:2}
}

/* Piè di pagina: collegamenti alle pagine */
footer .link-pagine{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1.3rem;margin-top:1.5rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}
footer .link-pagine a{color:#fff;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}
footer .link-pagine a:hover,footer .link-pagine a:focus-visible{border-bottom-color:var(--oro-2)}
footer .logo a{display:inline-block;line-height:0}

/* ---- Risultati v2: caroselli compatti (foto del centro + protocolli Hypodermical) ---- */
.risultati-nostri{background:#fff;padding:clamp(3rem,6vw,4.5rem) 0 clamp(2.5rem,5vw,3.5rem)}
.risultati-hypo{background:var(--grigio);padding:clamp(3rem,6vw,4.5rem) 0}
.risultati-nostri .titolo-sezione,.risultati-hypo .titolo-sezione{margin-bottom:1.8rem}
.carosello-ris .carosello-traccia{padding:.3rem 0 .4rem}
.ris-voce{width:240px;padding:0 .55rem}
.ris-voce figure{margin:0}
.carosello-ris .galleria-voce{display:block;aspect-ratio:540/840;background:#fff;border:1px solid var(--linea);transition:border-color .3s ease,box-shadow .3s ease}
.carosello-ris .galleria-voce:hover{border-color:var(--oro-pieno);box-shadow:0 12px 26px -16px rgba(34,43,53,.35)}
.carosello-ris picture{display:block;width:100%;height:100%}
.carosello-ris .galleria-voce img{width:100%;height:100%;object-fit:cover;pointer-events:none}
.carosello-ris .galleria-voce:hover img,.carosello-ris .galleria-voce:focus-visible img{transform:none}
.carosello-ris .galleria-voce::after{display:none}
.carosello-ris .galleria-voce::before{right:10px;bottom:10px;width:28px;height:28px;background-color:rgba(34,43,53,.4)}
.ris-voce figcaption{margin-top:.7rem;text-align:center;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--nero);font-weight:500}
.hypo-voce{width:270px}
.hypo-scheda{background:#fff;border:1px solid var(--linea);height:100%;display:flex;flex-direction:column}
.hypo-coppia{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.carosello-hypo .galleria-voce{aspect-ratio:4/5;border:0;position:relative}
.pd-etichetta{position:absolute;left:6px;top:6px;background:#fff;border:1px solid var(--oro-pieno);color:var(--nero);font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;padding:.25rem .45rem;line-height:1;font-weight:600}
.galleria-voce:last-child .pd-etichetta{background:var(--oro-pieno);color:#fff}
.hypo-testo{padding:.9rem 1rem 1rem;text-align:center}
.hypo-testo .etichetta{margin-bottom:.3rem}
.hypo-titolo{font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--nero);margin:0}
.hypo-sedute{font-size:.72rem;color:var(--tenue);margin-top:.3rem}
.risultati-hypo .risultati-nota{margin-top:1.4rem}
.ris-cta{text-align:center;margin-top:1.2rem}
@media (min-width:700px){.ris-voce{width:270px;padding:0 .7rem}.hypo-voce{width:300px}}

/* ---- Piè di pagina v2: compatto ---- */
footer{padding:2.8rem 0 5.5rem;font-size:.8rem}
footer .logo{margin-bottom:1.6rem}
footer .logo img{height:46px}
.piede-contatti{display:flex;justify-content:center;gap:clamp(1rem,5vw,2.2rem);flex-wrap:nowrap}
.piede-icona{display:flex;flex-direction:column;align-items:center;gap:.45rem;text-decoration:none;color:#fff}
.piede-cerchio{width:44px;height:44px;border-radius:50%;border:1px solid var(--oro-pieno);display:grid;place-items:center;color:var(--oro-2);transition:background-color .3s ease,color .3s ease}
.piede-cerchio svg{width:19px;height:19px}
.piede-icona:hover .piede-cerchio,.piede-icona:focus-visible .piede-cerchio{background:var(--oro-pieno);color:#fff}
.piede-testo{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:#cfd3d8}
footer .piede-tel{margin-top:1.4rem;font-size:.78rem;letter-spacing:.04em}
footer .piede-tel a{text-decoration:none;border-bottom:1px solid rgba(201,160,75,.5)}
footer .dati-legali{margin-top:1.4rem;font-size:.68rem;line-height:1.75;opacity:.62}
footer .dati-legali a{color:inherit}
footer .link-legali{margin-top:1.1rem;gap:.3rem 1rem;font-size:.6rem;letter-spacing:.12em}
footer .piccolo{margin-top:.9rem;font-size:.64rem;opacity:.5}
@media (min-width:1024px){footer{padding-bottom:3rem}}

/* ---- Home, mobile: schede "Scopri" compatte (foto a sinistra, testo a destra) per una pagina meno lunga ---- */
@media (max-width:719px){
  .scopri-griglia{gap:.8rem}
  .scopri-voce{flex-direction:row;align-items:stretch}
  .scopri-foto{flex:0 0 42%;aspect-ratio:4/3;align-self:center}
  .scopri-testo{padding:.8rem .9rem .85rem}
  .scopri-testo .etichetta{margin-bottom:.25rem;font-size:.58rem}
  .scopri-titolo{font-size:.78rem;margin-bottom:.3rem}
  .scopri-descr{font-size:.76rem;line-height:1.45}
  .scopri-voce .link-oro{padding-top:.45rem;font-size:.6rem}
}
