/* Pagine legali (privacy, cookie, termini): stessa lingua grafica del sito (blu, crema, sabbia, Georgia) e una colonna di
   lettura stretta. Si carica DOPO il foglio del sito, che da' a h2 e h3 misure da titolo di sezione: qui si riducono. */
.legale-pagina{background:var(--paper);border-top:1px solid var(--line);padding:clamp(44px,6vw,92px) 0 clamp(72px,9vw,136px)}
.legale-contenitore{width:min(800px,calc(100% - 40px));margin-inline:auto}
.legale{color:var(--ink);font-size:1.0625rem;line-height:1.75;overflow-wrap:break-word}
.legale p{max-width:none;margin:0 0 1.05em}
.legale a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;text-decoration-color:#103b7860;transition:text-decoration-color .2s}
.legale a:hover{text-decoration-color:currentColor}
.legale a:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:2px}
.legale strong{font-weight:600;color:var(--blue2)}
.legale em{font-style:italic}
.legale code,.legale kbd{font:500 .88em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#efe9dc;padding:.1em .4em;border-radius:3px;color:#40372a}

.legale__aggiornamento{margin:0 0 22px;color:#8a765d;font-size:.75rem;font-weight:600;letter-spacing:.22em;line-height:1.5;text-transform:uppercase}
.legale__apertura{margin:0 0 1.4em;font:400 clamp(1.3rem,2.1vw,1.65rem)/1.5 var(--serif);letter-spacing:-.012em;color:var(--blue2)}
.legale__nota{margin:0 0 2.4em;padding:22px 26px;background:var(--cream);border-left:3px solid var(--blue)}
.legale__nota p{margin:0}

.legale__sommario{margin:0 0 3.4em;padding:26px 28px 20px;border:1px solid var(--line);background:#fff}
.legale__sommario-titolo{margin:0 0 16px;color:#8a765d;font-size:.75rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.legale__sommario ol{margin:0;padding:0;list-style:none;columns:2;column-gap:40px;counter-reset:voce}
.legale__sommario li{counter-increment:voce;break-inside:avoid;margin:0 0 8px;font-size:.95rem;line-height:1.45}
.legale__sommario li::before{content:counter(voce) ".";display:inline-block;min-width:1.8em;color:#8a765d;font-variant-numeric:tabular-nums}
.legale__sommario a{color:var(--ink);text-decoration:none}
.legale__sommario a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:.2em}

.legale__sezione{margin:0 0 3.4em;scroll-margin-top:96px}
.legale .legale__titolo{margin:0 0 .75em;padding-top:1.25em;border-top:1px solid var(--line);font:400 clamp(1.55rem,2.5vw,2.15rem)/1.2 var(--serif);letter-spacing:-.022em;color:var(--blue)}
.legale .legale__sottotitolo{margin:1.8em 0 .55em;font:400 1.22rem/1.35 var(--serif);letter-spacing:-.01em;color:var(--blue2)}
.legale__elenco{margin:0 0 1.25em;padding:0 0 0 1.3em}
.legale__elenco li{margin:0 0 .7em;padding-left:.2em}
.legale__elenco li::marker{color:#8a765d}
.legale__elenco--numerato{list-style:decimal}
.legale__elenco--numerato li::marker{font-variant-numeric:tabular-nums;font-weight:600}

.legale__scheda{display:grid;grid-template-columns:minmax(150px,230px) 1fr;margin:1.3em 0 1.5em;border-top:1px solid var(--line)}
.legale__scheda dt,.legale__scheda dd{margin:0;padding:13px 0;border-bottom:1px solid var(--line)}
.legale__scheda dt{display:flex;align-items:center;padding-right:18px;color:#8a765d;font-size:.72rem;font-weight:600;letter-spacing:.15em;line-height:1.4;text-transform:uppercase}
.legale__scheda dd{color:var(--ink)}

/* Domande aperte per il titolare: restano visibili finche' non si risponde, come sul sito di prima */
.legale__conferma{margin:1.5em 0;padding:16px 20px 17px;background:#fbf4e4;border:1px dashed #c9a96b;border-radius:2px;color:#5a4a2c;font-size:.96rem;line-height:1.65}
.legale__conferma>strong:first-child{display:block;margin-bottom:6px;color:#8a6a2c;font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.legale__conferma--riga{display:inline-block;margin:0 0 0 .2em;padding:1px 10px;border-radius:999px;font-size:.84rem;line-height:1.55}
.legale__conferma--riga>strong:first-child{display:inline;margin:0;font-size:inherit;font-weight:700;letter-spacing:0;text-transform:none}

.legale__tabella{margin:1.5em 0 1.7em;overflow-x:auto;border:1px solid var(--line);-webkit-overflow-scrolling:touch;
  /* ombre ai lati che compaiono solo se la tabella scorre (tecnica delle «scroll shadows») */
  background:linear-gradient(to right,#fff 30%,#fff0) left center/40px 100% no-repeat local,
    linear-gradient(to left,#fff 30%,#fff0) right center/40px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%,#103b7826,#103b7800) left center/12px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%,#103b7826,#103b7800) right center/12px 100% no-repeat scroll,#fff}
.legale__dati{width:100%;min-width:600px;border-collapse:collapse;font-size:.93rem;line-height:1.55}
.legale__dati caption{padding:14px 16px;text-align:left;background:var(--cream);border-bottom:1px solid var(--line);color:#6d5f49;font-size:.8rem;font-weight:600;letter-spacing:.04em}
.legale__dati th,.legale__dati td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.legale__dati thead th{background:#faf7ef;color:#8a765d;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.legale__dati tbody th{font-weight:600;color:var(--blue2)}
.legale__dati tbody tr:last-child>*{border-bottom:0}
.legale__vuota td{text-align:center;color:var(--muted);font-style:italic}

@media (max-width:760px){
  .legale{font-size:1rem;line-height:1.7}
  .legale__nota{padding:18px 18px 18px 20px}
  .legale__sommario{padding:22px 20px 16px}
  .legale__sommario ol{columns:1}
  .legale__scheda{grid-template-columns:1fr}
  .legale__scheda dt{padding:12px 0 0;border-bottom:0}
  .legale__scheda dd{padding:2px 0 13px}
  .legale__conferma{padding:14px 16px 15px}
  .legale__sezione{scroll-margin-top:72px}
}

@media print{
  .site-header,.site-footer,.nav-drawer,.whatsapp-float,.whatsapp-recovery,.booking-dock,.blue-hero,.seo-breadcrumb,.legale__sommario{display:none!important}
  body{background:#fff}
  .legale-pagina{padding:0;border:0;background:#fff}
  .legale-contenitore{width:100%}
  .legale{font-size:11pt;line-height:1.5}
  .legale__sezione{break-inside:avoid-page}
  .legale a{color:inherit;text-decoration:none}
}
