/* =========================================================================
   Odontoiatriko - foglio di stile principale
   Larghezza piena della finestra, corpo del testo al massimo 1470px.
   ========================================================================= */

:root{
  --larghezza: 1470px;
  --larghezza-testo: 1470px;
  /* Ampiezza del corpo del testo. E' volutamente pari alla larghezza massima
     del contenitore: il testo occupa tutta l'ampiezza disponibile.
     Per righe piu' corte (piu' comode da leggere) basta abbassare questo
     valore, per esempio a 90ch: cambia l'intero sito. */
  --lettura: var(--larghezza-testo);

  --inchiostro: #0d1b24;
  --inchiostro-2: #16293a;
  --inchiostro-3: #243747;
  --oro: #f9ad05;
  --oro-chiaro: #ffc23d;
  --oro-scuro: #c98a00;
  --rosso: #e02b20;
  --verde: #1f9d55;

  --carta: #ffffff;
  --carta-2: #f5f7f9;
  --carta-3: #eceff3;
  --testo: #1b2b36;
  --testo-tenue: #5b6b78;
  --bordo: #dde3e9;

  --raggio: 14px;
  --raggio-s: 8px;
  --ombra: 0 2px 4px rgba(13,27,36,.04), 0 12px 32px rgba(13,27,36,.08);
  --ombra-alta: 0 8px 20px rgba(13,27,36,.10), 0 24px 60px rgba(13,27,36,.14);
  --transizione: .22s cubic-bezier(.4,0,.2,1);

  --font: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:90px; }

body{
  margin:0;
  width:100%;
  overflow-x:clip;              /* clip, non hidden: hidden romperebbe l'intestazione appiccicata */
  font-family:var(--font);
  font-size:clamp(16px,.55vw + 14.4px,18px);
  line-height:1.7;
  color:var(--testo);
  background:var(--carta);
  -webkit-font-smoothing:antialiased;
}

img,svg,video{ max-width:100%; height:auto; display:block; }
figure{ margin:0 0 1.5rem; }        /* i browser mettono 40px laterali per impostazione predefinita */

a{ color:var(--inchiostro-2); text-decoration-thickness:1px; text-underline-offset:.18em; }
a:hover{ color:var(--oro-scuro); }

h1,h2,h3,h4,h5,h6{
  font-family:var(--font);
  line-height:1.2;
  margin:0 0 .6em;
  color:var(--inchiostro);
  font-weight:700;
  letter-spacing:-.015em;
  text-wrap:balance;
}
h1{ font-size:clamp(2rem,3.4vw,3.35rem); font-weight:800; }
h2{ font-size:clamp(1.6rem,2.3vw,2.5rem); font-weight:700; }
h3{ font-size:clamp(1.28rem,1.5vw,1.72rem); }
h4{ font-size:clamp(1.1rem,1.1vw,1.3rem); }
p{ margin:0 0 1.15em; }
strong,b{ font-weight:600; color:var(--inchiostro); }

ul,ol{ margin:0 0 1.3em; padding-left:1.3em; }
li{ margin-bottom:.5em; }

blockquote{
  margin:2rem 0; padding:1.2rem 1.6rem;
  border-left:4px solid var(--oro);
  background:var(--carta-2);
  border-radius:0 var(--raggio-s) var(--raggio-s) 0;
  font-style:italic;
}

hr{ border:0; border-top:1px solid var(--bordo); margin:3rem 0; }

table{ width:100%; border-collapse:collapse; margin:0 0 1.5rem; }
th,td{ padding:.7rem .9rem; border:1px solid var(--bordo); text-align:left; }
th{ background:var(--carta-2); font-weight:600; }

/* --------------------------------------------------------------- struttura */

.contenitore{
  width:100%;
  max-width:var(--larghezza);
  margin-inline:auto;
  padding-inline:clamp(18px,4vw,48px);
}
/* anche le pagine di articolo usano l'ampiezza piena richiesta */
.contenitore--stretto{ max-width:var(--larghezza-testo); }

.fascia{ width:100%; padding-block:clamp(3rem,5.5vw,5.5rem); }
.fascia--compatta{ padding-block:clamp(2rem,3.5vw,3.2rem); }
.fascia--chiara{ background:var(--carta-2); }
.fascia--scura{ background:var(--inchiostro); color:#dfe7ee; }
.fascia--scura h1,.fascia--scura h2,.fascia--scura h3,.fascia--scura h4{ color:#fff; }
.fascia--scura strong{ color:#fff; }
.fascia--scura a{ color:var(--oro-chiaro); }

.salta-al-contenuto{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--oro); color:var(--inchiostro); padding:.8rem 1.4rem; font-weight:600;
}
.salta-al-contenuto:focus{ left:0; }

/* ----------------------------------------------------------- intestazione */

.barra-servizio{
  background:var(--inchiostro);
  color:#a9bac7;
  font-size:.86rem;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.barra-servizio .contenitore{
  display:flex; gap:1.5rem; justify-content:flex-end; align-items:center;
  min-height:40px; flex-wrap:wrap;
}
.barra-servizio a{ color:var(--oro); text-decoration:none; font-weight:500; white-space:nowrap; }
.barra-servizio a:hover{ color:var(--oro-chiaro); text-decoration:underline; }
.barra-servizio svg{ width:15px; height:15px; display:inline-block; vertical-align:-2px; margin-right:.35em; }

.testata{
  position:sticky; top:0; z-index:100;
  background:var(--inchiostro-3);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.testata .contenitore{
  display:flex; align-items:center; justify-content:space-between; gap:2rem;
  min-height:78px;
}
.marchio{ display:flex; align-items:center; flex-shrink:0; }
.marchio img{ width:auto; height:44px; max-height:44px; }

.menu{ display:flex; align-items:center; gap:.2rem; list-style:none; margin:0; padding:0; }
.menu > li{ position:relative; margin:0; }
.menu > li > a{
  display:block; padding:.65rem .85rem; border-radius:var(--raggio-s);
  color:var(--oro); font-weight:600; font-size:.94rem; text-decoration:none;
  text-transform:uppercase; letter-spacing:.02em; white-space:nowrap;
  transition:var(--transizione);
}
.menu > li > a:hover,.menu > li > a[aria-current="page"]{ background:rgba(255,255,255,.09); color:#fff; }

.sottomenu{
  position:absolute; top:100%; left:0; min-width:290px;
  background:var(--inchiostro-3); border:1px solid rgba(255,255,255,.12);
  border-radius:var(--raggio-s); box-shadow:var(--ombra-alta);
  list-style:none; margin:0; padding:.4rem; z-index:110;
  opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:var(--transizione);
}
.menu > li:hover .sottomenu,.menu > li:focus-within .sottomenu{ opacity:1; visibility:visible; transform:translateY(0); }
.sottomenu a{
  display:block; padding:.6rem .8rem; border-radius:6px;
  color:#dbe4eb; font-size:.9rem; text-decoration:none; line-height:1.35;
}
.sottomenu a:hover{ background:var(--oro); color:var(--inchiostro); }
.sottomenu li{ margin:0; }

.apri-menu{
  display:none; background:none; border:0; cursor:pointer; padding:.5rem;
  color:var(--oro);
}
.apri-menu svg{ width:30px; height:30px; }

/* --------------------------------------------------------------- pulsanti */

.bottone{
  display:inline-flex; align-items:center; justify-content:center; gap:.55em;
  padding:.92em 1.9em;
  background:var(--oro); color:var(--inchiostro) !important;
  font-weight:700; font-size:1rem; line-height:1.25; text-align:center;
  border:2px solid var(--oro); border-radius:999px; text-decoration:none !important;
  cursor:pointer; transition:var(--transizione);
  box-shadow:0 6px 18px rgba(249,173,5,.28);
}
.bottone:hover{ background:var(--oro-chiaro); border-color:var(--oro-chiaro); transform:translateY(-2px); box-shadow:0 10px 26px rgba(249,173,5,.4); color:var(--inchiostro) !important; }
.bottone--vuoto{ background:transparent; color:#fff !important; border-color:rgba(255,255,255,.7); box-shadow:none; }
.bottone--vuoto:hover{ background:#fff; color:var(--inchiostro) !important; border-color:#fff; }
.bottone--scuro{ background:var(--inchiostro); border-color:var(--inchiostro); color:#fff !important; box-shadow:0 6px 18px rgba(13,27,36,.25); }
.bottone--scuro:hover{ background:var(--inchiostro-2); border-color:var(--inchiostro-2); color:#fff !important; }
.bottone--largo{ width:100%; }
.bottone svg{ width:1.1em; height:1.1em; }

/* ------------------------------------------------------------------- eroe */

.eroe{
  position:relative; width:100%;
  display:flex; align-items:center;
  min-height:clamp(360px,44vw,560px);
  padding-block:clamp(3rem,6vw,6rem);
  background:var(--inchiostro) center/cover no-repeat;
  color:#fff; isolation:isolate; overflow:hidden;
}
.eroe::before{
  content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(105deg,rgba(13,27,36,.93) 0%,rgba(13,27,36,.78) 48%,rgba(13,27,36,.62) 100%);
}
.eroe--senza-foto{ background:linear-gradient(135deg,#0d1b24 0%,#1b3a4f 55%,#24506b 100%); }
.eroe--senza-foto::before{ background:radial-gradient(1100px 520px at 12% 8%,rgba(249,173,5,.16),transparent 62%); }
.eroe--corto{ min-height:clamp(230px,24vw,320px); }

.eroe__testo{ max-width:1000px; }
.eroe h1{ color:#fff; margin-bottom:.4em; }
.eroe h2{ color:var(--oro); font-size:clamp(1.15rem,1.7vw,1.75rem); font-weight:600; line-height:1.4; margin-bottom:.7em; }
.eroe p{ font-size:clamp(1.02rem,1.15vw,1.2rem); color:#d9e3ea; max-width:74ch; }
/* su fondo scuro il grassetto deve ereditare il colore, non quello dell'inchiostro */
.eroe strong,.eroe b,.richiamo strong,.richiamo b{ color:inherit; }
.eroe__azioni{ display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.9rem; }
.eroe__briciole{ margin-bottom:1.4rem; }

.occhiello{
  display:inline-block; margin-bottom:1rem;
  padding:.4em 1em; border-radius:999px;
  background:rgba(249,173,5,.16); border:1px solid rgba(249,173,5,.42);
  color:var(--oro-chiaro); font-size:.8rem; font-weight:600;
  text-transform:uppercase; letter-spacing:.09em;
}
.fascia--chiara .occhiello,.fascia:not(.fascia--scura) .occhiello{
  background:rgba(249,173,5,.14); border-color:rgba(201,138,0,.35); color:var(--oro-scuro);
}

/* -------------------------------------------------------------- briciole */

.briciole{ font-size:.85rem; color:var(--testo-tenue); }
.briciole ol{ display:flex; flex-wrap:wrap; gap:.45em; list-style:none; margin:0; padding:0; }
.briciole li{ margin:0; display:flex; align-items:center; gap:.45em; }
.briciole li+li::before{ content:"›"; opacity:.55; }
.briciole a{ color:inherit; text-decoration:none; }
.briciole a:hover{ text-decoration:underline; }
.eroe .briciole,.eroe .briciole a{ color:#a9bcc9; }

/* ------------------------------------------------------- corpo editoriale */

.prosa{ max-width:var(--larghezza-testo); }
.prosa > h2{ margin-top:2.2em; }
.prosa > h3{ margin-top:1.8em; }
.prosa > h2:first-child,.prosa > h3:first-child{ margin-top:0; }
.prosa img{ border-radius:var(--raggio); margin:1.8rem 0; box-shadow:var(--ombra); }
.prosa a{ color:var(--oro-scuro); font-weight:500; }

/* Blocchi di testo lunghi: la riga resta leggibile anche a 1470px */
.prosa--lettura > p,
.prosa--lettura > ul,
.prosa--lettura > ol,
.prosa--lettura > blockquote{ max-width:var(--lettura); }
.prosa--lettura.prosa--centrata > *{ margin-inline:auto; }

.risalto{
  background:var(--carta-2); border:1px solid var(--bordo); border-left:5px solid var(--oro);
  border-radius:var(--raggio); padding:clamp(1.3rem,2.2vw,2.1rem);
  margin:2rem 0;
}

/* ---------------------------------------------------------------- griglie */

.griglia{ display:grid; gap:clamp(1.2rem,2vw,2rem); }
.griglia--2{ grid-template-columns:repeat(auto-fit,minmax(340px,1fr)); }
.griglia--3{ grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }
.griglia--4{ grid-template-columns:repeat(auto-fit,minmax(265px,1fr)); }

.scheda{
  display:flex; flex-direction:column;
  background:var(--carta); border:1px solid var(--bordo); border-radius:var(--raggio);
  overflow:hidden; transition:var(--transizione); height:100%;
}
.scheda:hover{ transform:translateY(-4px); box-shadow:var(--ombra-alta); border-color:#c9d3dc; }
.scheda__foto{ aspect-ratio:16/9; width:100%; overflow:hidden; background:var(--carta-3); }
.scheda__foto img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.scheda:hover .scheda__foto img{ transform:scale(1.04); }
.scheda__corpo{ padding:1.4rem 1.5rem 1.6rem; display:flex; flex-direction:column; flex:1; }
.scheda__meta{ font-size:.8rem; color:var(--testo-tenue); text-transform:uppercase; letter-spacing:.06em; margin-bottom:.55rem; }
.scheda__titolo{ font-size:1.16rem; line-height:1.32; margin:0 0 .6rem; }
.scheda__titolo a{ color:var(--inchiostro); text-decoration:none; }
.scheda__titolo a:hover{ color:var(--oro-scuro); }
.scheda__testo{ color:var(--testo-tenue); font-size:.95rem; margin:0 0 1.1rem; flex:1; }
.scheda__link{ font-weight:600; font-size:.92rem; color:var(--oro-scuro); text-decoration:none; display:inline-flex; align-items:center; gap:.4em; }
.scheda__link:hover{ gap:.7em; }

.scheda--servizio{ border-top:4px solid var(--oro); }
.scheda--icona .scheda__corpo{ padding-top:1.7rem; }
.icona-tonda{
  width:52px; height:52px; border-radius:14px; margin-bottom:1rem;
  display:grid; place-items:center;
  background:rgba(249,173,5,.15); color:var(--oro-scuro);
}
.icona-tonda svg{ width:26px; height:26px; }

/* --------------------------------------------------------------- vantaggi */

.vantaggi{ list-style:none; padding:0; margin:0; display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }
.vantaggi li{
  display:flex; gap:.85rem; align-items:flex-start; margin:0;
  padding:1.1rem 1.3rem; background:var(--carta); border:1px solid var(--bordo); border-radius:var(--raggio);
}
.vantaggi svg{ flex-shrink:0; width:22px; height:22px; color:var(--verde); margin-top:.2em; }

.numeri{ display:grid; gap:1.4rem; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); }
.numero{ text-align:center; padding:1.4rem 1rem; }
.numero__cifra{ font-size:clamp(2.1rem,3vw,3rem); font-weight:800; color:var(--oro); line-height:1; margin-bottom:.35rem; }
.numero__testo{ font-size:.94rem; color:var(--testo-tenue); }
.fascia--scura .numero__testo{ color:#b9c7d2; }

/* ---------------------------------------------------------------- moduli */

.modulo-contatto{
  background:var(--carta); border:1px solid var(--bordo); border-radius:var(--raggio);
  padding:clamp(1.5rem,2.6vw,2.6rem); box-shadow:var(--ombra);
  max-width:760px; margin-inline:auto;
}
.fascia--scura .modulo-contatto{ background:#fff; color:var(--testo); }
.modulo-contatto h3{ margin-top:0; }
.campo{ margin-bottom:1.15rem; }
.campo label{ display:block; font-weight:600; font-size:.92rem; margin-bottom:.4rem; color:var(--inchiostro); }
.campo .obbl{ color:var(--rosso); }
.campo input,.campo textarea,.campo select{
  width:100%; padding:.82em 1em; font:inherit; font-size:1rem; color:var(--testo);
  background:var(--carta-2); border:1.5px solid var(--bordo); border-radius:var(--raggio-s);
  transition:var(--transizione);
}
.campo input:focus,.campo textarea:focus,.campo select:focus{
  outline:none; border-color:var(--oro); background:#fff; box-shadow:0 0 0 4px rgba(249,173,5,.16);
}
.campo textarea{ min-height:130px; resize:vertical; }
.campo-doppio{ display:grid; gap:1.15rem; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }
.campo-scelta{ display:flex; gap:.65rem; align-items:flex-start; font-size:.93rem; }
.campo-scelta input{ width:auto; margin-top:.28em; flex-shrink:0; }
.nota-modulo{ font-size:.84rem; color:var(--testo-tenue); margin-top:1rem; }
.trappola{ position:absolute; left:-9999px; opacity:0; height:0; overflow:hidden; }
.esito{ margin-top:1rem; padding:.9rem 1.1rem; border-radius:var(--raggio-s); font-size:.94rem; display:none; }
.esito--ok{ background:#e8f6ee; border:1px solid #b6e0c8; color:#14603a; display:block; }
.esito--ko{ background:#fdecea; border:1px solid #f5c2bd; color:#8f1c13; display:block; }

/* -------------------------------------------------------------- articoli */

.elenco-articoli{ display:grid; gap:clamp(1.4rem,2.2vw,2.2rem); grid-template-columns:repeat(auto-fill,minmax(330px,1fr)); }

.articolo-testata{ margin-bottom:2rem; }
.articolo-meta{ display:flex; flex-wrap:wrap; gap:1.2rem; font-size:.88rem; color:#b9c7d2; margin-top:1.2rem; }
.articolo-meta svg{ width:15px; height:15px; vertical-align:-2px; margin-right:.35em; }
.articolo-foto{ border-radius:var(--raggio); overflow:hidden; box-shadow:var(--ombra); margin-bottom:2.2rem; text-align:center; background:var(--carta-2); }
/* molte foto in evidenza sono verticali: senza limite occuperebbero due schermate */
.articolo-foto img{ max-height:min(72vh,620px); width:auto; max-width:100%; margin-inline:auto; }

.etichette{ display:flex; flex-wrap:wrap; gap:.5rem; list-style:none; padding:0; margin:0; }
.etichette li{ margin:0; }
.etichetta{
  display:inline-block; padding:.32em .85em; border-radius:999px;
  background:var(--carta-2); border:1px solid var(--bordo);
  font-size:.8rem; color:var(--testo-tenue); text-decoration:none;
}
.etichetta:hover{ background:var(--oro); border-color:var(--oro); color:var(--inchiostro); }

.paginazione{ display:flex; flex-wrap:wrap; gap:.5rem; justify-content:center; margin-top:3rem; }
.paginazione a,.paginazione span{
  min-width:44px; padding:.6em .9em; text-align:center;
  border:1px solid var(--bordo); border-radius:var(--raggio-s);
  text-decoration:none; color:var(--testo); font-weight:600; font-size:.95rem;
}
.paginazione a:hover{ background:var(--carta-2); border-color:var(--oro); }
.paginazione .corrente{ background:var(--oro); border-color:var(--oro); color:var(--inchiostro); }

/* --------------------------------------------------------- richiamo finale */

.richiamo{
  background:linear-gradient(120deg,var(--inchiostro) 0%,var(--inchiostro-3) 100%);
  color:#fff; border-radius:var(--raggio); overflow:hidden; position:relative;
  padding:clamp(2rem,4vw,3.4rem);
}
.richiamo::after{
  content:""; position:absolute; right:-90px; top:-90px; width:340px; height:340px;
  background:radial-gradient(circle,rgba(249,173,5,.24),transparent 68%); pointer-events:none;
}
.richiamo h2{ color:#fff; }
.richiamo p{ color:#cfdae3; max-width:70ch; }
.richiamo__azioni{ display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.7rem; }

/* -------------------------------------------------------------- pie' pagina */

.pie{ background:var(--inchiostro); color:#a9bac7; padding-block:clamp(2.6rem,4vw,4rem) 0; font-size:.94rem; }
.pie h3{ color:#fff; font-size:1.05rem; margin-bottom:1.1rem; letter-spacing:.02em; }
.pie a{ color:#c3d0da; text-decoration:none; }
.pie a:hover{ color:var(--oro); text-decoration:underline; }
.pie ul{ list-style:none; padding:0; margin:0; }
.pie li{ margin-bottom:.55em; }
.pie__griglia{ display:grid; gap:2.4rem; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.pie__marchio img{ height:52px; width:auto; margin-bottom:1.2rem; }
.pie__social{ display:flex; gap:.7rem; margin-top:1.2rem; }
.pie__social a{
  width:40px; height:40px; border-radius:50%; display:grid; place-items:center;
  background:rgba(255,255,255,.08); color:#c3d0da; transition:var(--transizione);
}
.pie__social a:hover{ background:var(--oro); color:var(--inchiostro); }
.pie__social svg{ width:19px; height:19px; }
.pie address{ font-style:normal; line-height:1.75; }
.pie__coda{
  margin-top:2.8rem; padding-block:1.3rem; border-top:1px solid rgba(255,255,255,.1);
  display:flex; flex-wrap:wrap; gap:1rem; justify-content:space-between; font-size:.86rem; color:#8296a4;
}

/* ----------------------------------------------------------- barra mobile */

.barra-azione{
  position:fixed; left:0; right:0; bottom:0; z-index:95;
  display:none; gap:.6rem; padding:.6rem;
  background:rgba(13,27,36,.97); border-top:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(6px);
}
.barra-azione .bottone{ flex:1; padding:.78em 1rem; font-size:.92rem; }

/* --------------------------------------------------------------- utilita' */

.centrato{ text-align:center; }
.centrato .prosa{ margin-inline:auto; }
.solo-lettori{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.intestazione-fascia{ max-width:820px; margin:0 auto clamp(2rem,3.4vw,3rem); text-align:center; }
.intestazione-fascia p{ color:var(--testo-tenue); font-size:1.05rem; }
.fascia--scura .intestazione-fascia p{ color:#b9c7d2; }

/* --------------------------------------------------------------- risposte */

@media (max-width:1040px){
  .apri-menu{ display:block; }
  .testata{ position:sticky; }
  .navigazione{
    position:fixed; inset:0 0 0 auto; width:min(88vw,380px); z-index:120;
    background:var(--inchiostro); padding:5.2rem 1.4rem 2rem; overflow-y:auto;
    transform:translateX(100%); transition:transform .28s ease; visibility:hidden;
  }
  .navigazione[data-aperto="true"]{ transform:translateX(0); visibility:visible; }
  .menu{ flex-direction:column; align-items:stretch; gap:.15rem; }
  .menu > li > a{ padding:.85rem .9rem; font-size:1rem; }
  .sottomenu{
    position:static; opacity:1; visibility:visible; transform:none; box-shadow:none;
    background:rgba(255,255,255,.04); border:0; margin:.2rem 0 .5rem .8rem; padding:.2rem;
  }
  .velo{ position:fixed; inset:0; background:rgba(4,12,18,.6); z-index:115; opacity:0; visibility:hidden; transition:var(--transizione); }
  .velo[data-aperto="true"]{ opacity:1; visibility:visible; }
  .chiudi-menu{ position:absolute; top:1.1rem; right:1.1rem; background:none; border:0; color:var(--oro); cursor:pointer; padding:.4rem; }
  .chiudi-menu svg{ width:28px; height:28px; }
  .barra-azione{ display:flex; }
  body{ padding-bottom:66px; }
}

@media (min-width:1041px){
  .chiudi-menu,.velo{ display:none; }
}

@media (max-width:640px){
  .barra-servizio .contenitore{ justify-content:center; gap:1rem; }
  .eroe{ min-height:auto; }
  .eroe__azioni .bottone{ width:100%; }
}

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

@media print{
  .testata,.barra-servizio,.pie,.barra-azione,.richiamo,.modulo-contatto{ display:none !important; }
  body{ font-size:11pt; }
}
