/* ===================== PAGINE LEGALI: privacy, cookie, termini =====================
   Pagine di testo da leggere: colore carta, colonna stretta, titolo in Fraunces come il resto del sito.
   Un riquadro «In breve» in alto, poi le voci; in fondo i link alle altre due pagine e i dati della società. */
:root{
  --paper:#ece8e1;
  --ink:#141414;
  --ease-out:cubic-bezier(.19,1,.22,1);
  --glow:90,160,255;
  --blue:rgb(28,88,205);
  --label:rgb(45,80,135);
  --pad:clamp(18px,3vw,40px);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:var(--ink);background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
.serif{font-family:Fraunces,"Cooper Black",Georgia,serif;font-weight:900;font-optical-sizing:auto;font-variation-settings:"SOFT" 100,"WONK" 1}
.mono{font-family:"IBM Plex Mono",ui-monospace,monospace;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
a{color:inherit}

/* ----- barra in alto, come nella Gallery ----- */
.top{
  display:flex;align-items:center;justify-content:space-between;
  padding:calc(22px + env(safe-area-inset-top,0px)) var(--pad) 22px;
}
.logo{font-size:26px;letter-spacing:-.02em;line-height:1;text-decoration:none}
.pill{
  font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;text-decoration:none;
  border-radius:999px;padding:10px 18px;
  background:linear-gradient(180deg,#fff,rgba(var(--glow),.06)) #fff;color:var(--ink);
  box-shadow:0 0 0 1px rgba(var(--glow),.22),0 0 18px rgba(var(--glow),.18);
  transition:box-shadow .3s,background .3s;
}
.pill:hover,.pill:focus-visible{outline:none;box-shadow:0 0 0 1px rgba(var(--glow),.45),0 0 34px rgba(var(--glow),.40);background:linear-gradient(180deg,#fff,rgba(var(--glow),.12)) #fff}
.pill[aria-current="page"]{background:linear-gradient(180deg,#26262b,var(--ink));color:#fff;box-shadow:0 0 0 1px rgba(var(--glow),.55),0 0 22px rgba(var(--glow),.4)}

/* ----- testo ----- */
.doc{width:min(720px,100%);margin:0 auto;padding:clamp(32px,8vh,96px) var(--pad) 40px}
.doc__k{display:block;font-size:11px;color:var(--label);margin-bottom:14px}
.doc__t{font-size:clamp(52px,11vw,128px);line-height:.9;letter-spacing:-.045em;margin:0 0 .22em -.03em}
.doc__lead{font-size:clamp(18px,2vw,21px);line-height:1.45;font-weight:500;margin:0 0 clamp(36px,6vh,56px);max-width:600px}

/* riquadro «In breve»: le tre cose da sapere, prima del dettaglio */
.brief{
  border-radius:24px;padding:clamp(24px,4vw,40px);margin:0 0 clamp(44px,8vh,72px);
  background:linear-gradient(180deg,#fff,rgba(var(--glow),.08)) #fff;
  box-shadow:0 0 0 1px rgba(var(--glow),.18),0 0 40px rgba(var(--glow),.12);
}
.brief .mono{display:block;font-size:10.5px;color:var(--label);margin-bottom:14px}
.brief ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.brief li{position:relative;padding-left:26px;font-size:17px;line-height:1.45;font-weight:500}
.brief li::before{content:"";position:absolute;left:2px;top:.55em;width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 12px rgba(var(--glow),.8)}

.doc section{padding-top:28px;margin-top:28px;border-top:1px solid rgba(var(--glow),.4)}
.doc section:first-of-type{border-top:0;margin-top:0;padding-top:0}
.doc h2{font-size:clamp(24px,3vw,32px);line-height:1.08;letter-spacing:-.02em;margin:0 0 14px}
.doc p,.doc li{font-size:16.5px;line-height:1.62}
.doc p{margin:0 0 14px}
.doc ul{margin:0 0 14px;padding-left:1.2em}
.doc li{margin-bottom:6px}
.doc li::marker{color:var(--blue)}
.doc b{font-weight:600}
.doc a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.doc a:hover{text-shadow:0 0 16px rgba(var(--glow),.6)}

/* tabella semplice (cookie e tempi di conservazione): su telefono diventa a schede */
.tab{width:100%;border-collapse:collapse;margin:6px 0 18px;font-size:15px;line-height:1.5}
.tab th{text-align:left;font-family:"IBM Plex Mono",ui-monospace,monospace;font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;color:var(--label);padding:0 12px 10px 0;border-bottom:1px solid rgba(var(--glow),.45)}
.tab td{vertical-align:top;padding:12px 12px 12px 0;border-bottom:1px solid rgba(20,20,20,.1)}
.tab td:first-child{font-weight:600}
.tab code{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:13px;background:rgba(var(--glow),.12);padding:1px 6px;border-radius:6px}

.doc__upd{margin-top:40px;font-size:11px;color:var(--label)}

/* pagina Cookie, «La tua scelta»: una riga per Statistiche (Google Analytics) e una per Pubblicità (Google Ads);
   i pulsanti cambiano il consenso (js/consenso.js), quello scelto è scuro */
.scelta__r{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:16px 0;border-top:1px solid rgba(20,20,20,.1)}
.scelta__t{flex:1 1 260px}
.scelta__t b{display:block;font-size:17px}
.scelta__t span{display:block;font-size:15px;line-height:1.5;opacity:.75}
.scelta__b{display:flex;flex-wrap:wrap;gap:10px}
button.pill{border:0;font-family:inherit;cursor:pointer;min-width:120px}
button.pill[aria-pressed="true"]{background:linear-gradient(180deg,#26262b,var(--ink));color:#fff;box-shadow:0 0 0 1px rgba(var(--glow),.55),0 0 22px rgba(var(--glow),.4)}

/* ----- fondo: le altre pagine e i dati della società ----- */
.foot{
  width:min(720px,100%);margin:0 auto;padding:0 var(--pad) calc(40px + env(safe-area-inset-bottom,0px));
}
.foot__nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}
.foot__co{
  border-radius:24px;background:var(--ink);color:#fff;padding:clamp(24px,4vw,36px);
  box-shadow:0 0 0 1px rgba(var(--glow),.35),0 0 50px rgba(var(--glow),.2);
  font-size:14.5px;line-height:1.6;
}
.foot__co b{display:block;font-family:Fraunces,Georgia,serif;font-weight:900;font-variation-settings:"SOFT" 100,"WONK" 1;font-size:28px;letter-spacing:-.03em;line-height:1;margin-bottom:12px}
.foot__co a{color:#fff;text-underline-offset:3px}

@media (max-width:720px){
  .logo{font-size:22px}
  .pill{padding:9px 14px;font-size:12px}
  .doc p,.doc li{font-size:16px}
  .brief li{font-size:16px}
  .tab thead{display:none}
  .tab,.tab tbody,.tab tr,.tab td{display:block;width:100%}
  .tab tr{padding:12px 0;border-bottom:1px solid rgba(20,20,20,.12)}
  .tab td{border:0;padding:3px 0}
  .tab td[data-l]::before{content:attr(data-l);display:block;font-family:"IBM Plex Mono",ui-monospace,monospace;font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:9.5px;color:var(--label);margin-top:6px}
}
