/* OFF Gallery — banner cookie. Colori e misure solo dai token di design. */
.offg-cookie{position:fixed;z-index:60;left:0;right:0;bottom:0;background:var(--carta);color:var(--inchiostro);border-top:var(--filetto);
  box-shadow:0 -18px 40px -24px rgba(17,16,16,.28);font:400 var(--t-base)/var(--lh-testo) var(--font-testi);
  max-height:calc(100dvh - 4rem);overflow:auto;overscroll-behavior:contain;animation:offg-cookie-su var(--d-base) var(--ease-uscita) both}
.offg-cookie[hidden]{display:none}
@media (min-width:760px){.offg-cookie{left:var(--margine);right:auto;bottom:var(--margine);width:min(36rem,calc(100vw - 2 * var(--margine)));border:var(--filetto)}}
@keyframes offg-cookie-su{from{opacity:0;transform:translateY(16px)}}
.offg-cookie__in{position:relative;padding:var(--s-3) var(--margine) var(--s-3)}
@media (min-width:760px){.offg-cookie__in{padding:var(--s-4) var(--s-4) var(--s-3)}}
.offg-cookie__titolo{font:350 var(--t-3)/var(--lh-titoli) var(--font-titoli);letter-spacing:-.012em;margin:0 2.75rem var(--s-2) 0;text-wrap:balance}
.offg-cookie__testo,.offg-cookie__nota{margin:0 0 var(--s-2);text-wrap:pretty}
.offg-cookie__nota{font-size:var(--t-small);color:var(--inchiostro-2);margin:var(--s-2) 0 0}
.offg-cookie a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.28em;text-decoration-color:var(--pietra-scura)}
.offg-cookie a:hover{color:var(--accento);text-decoration-color:var(--accento)}
.offg-cookie__azioni{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-2);align-items:center;margin-top:var(--s-3)}
/* Rifiuta e Accetta: stesso peso grafico (Garante 2021) */
.offg-cookie__btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap-min);padding:.7rem 1.4rem;flex:1 1 9rem;
  font:500 var(--t-base)/1.2 var(--font-testi);background:var(--inchiostro);color:var(--carta);border:1px solid var(--inchiostro);border-radius:var(--raggio);cursor:pointer;
  transition:background-color var(--d-micro),border-color var(--d-micro),color var(--d-micro)}
.offg-cookie__btn:hover{background:var(--accento);border-color:var(--accento);color:var(--carta)}
.offg-cookie__btn:active{background:var(--accento-scuro);border-color:var(--accento-scuro)}
.offg-cookie__btn--testo{flex:0 0 auto;background:transparent;color:var(--inchiostro);border-color:transparent;text-decoration:underline;text-underline-offset:.28em;text-decoration-thickness:1px;padding-inline:.5rem}
.offg-cookie__btn--testo:hover{background:transparent;border-color:transparent;color:var(--accento)}
.offg-cookie__btn[hidden]{display:none}
.offg-cookie__x{position:absolute;top:var(--s-1);right:var(--s-1);width:var(--tap-min);height:var(--tap-min);display:grid;place-items:center;background:none;border:0;color:var(--inchiostro);cursor:pointer}
.offg-cookie__x:hover{color:var(--accento)}
.offg-cookie :focus-visible,.offg-iframe :focus-visible,.offg-cookie-link:focus-visible{outline:var(--focus);outline-offset:var(--focus-offset)}
.offg-cookie__scelte fieldset{border:0;margin:0;padding:0}
.offg-cookie__scelte ul{list-style:none;margin:var(--s-2) 0 0;padding:0;border-top:var(--filetto)}
.offg-cookie__cat{display:flex;gap:var(--s-2);align-items:center;justify-content:space-between;padding:var(--s-2) 0;border-bottom:var(--filetto)}
.offg-cookie__cat-testo{display:grid;gap:.15rem;cursor:pointer}
.offg-cookie__cat-testo span{font-size:var(--t-small);color:var(--inchiostro-2)}
.offg-cookie__sempre{font-size:var(--t-small);color:var(--inchiostro-2);white-space:nowrap}
/* Interruttore: casella vera (accessibile), disegnata a filetto */
.offg-cookie__interruttore{appearance:none;-webkit-appearance:none;flex:none;width:3rem;height:1.6rem;margin:0;border:1px solid var(--inchiostro-2);background:var(--carta);position:relative;cursor:pointer;border-radius:var(--raggio);
  transition:background-color var(--d-micro),border-color var(--d-micro)}
.offg-cookie__interruttore::after{content:"";position:absolute;top:2px;left:2px;width:calc(1.6rem - 6px);height:calc(1.6rem - 6px);background:var(--inchiostro-2);transition:transform var(--d-base) var(--ease-uscita),background-color var(--d-micro)}
.offg-cookie__interruttore:checked{background:var(--inchiostro);border-color:var(--inchiostro)}
.offg-cookie__interruttore:checked::after{transform:translateX(1.4rem);background:var(--carta)}
.offg-cookie__cat{min-height:var(--tap-min)}
.offg-cookie__solo-lettori{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Pulsante "Gestisci le preferenze sui cookie" che sembra un link */
.offg-cookie-link{background:none;border:0;padding:.6rem 0;min-height:var(--tap-min);color:inherit;font:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.28em;cursor:pointer}
.offg-cookie-link:hover{color:var(--accento)}
.scuro .offg-cookie-link:hover,.piede .offg-cookie-link:hover{color:var(--accento-su-nero)}
.offg-cookie-piede{margin:var(--s-2) 0 0}
/* Mappe e video in attesa del consenso */
.offg-iframe{position:relative;background:var(--carta-2);border:var(--filetto);min-height:14rem;display:grid}
.offg-iframe[data-attivo]{background:none;border:0;display:block}
.offg-iframe iframe{display:block;width:100%;border:0;min-height:20rem}
.offg-iframe__anteprima{position:relative;display:grid;align-items:end;min-height:14rem}
.offg-iframe__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.offg-iframe__testo{position:relative;padding:var(--s-3);max-width:44ch}
.offg-iframe__testo p{margin:0 0 var(--s-2)}
.offg-iframe__ok{display:inline-flex;align-items:center;min-height:var(--tap-min);padding:.7rem 1.4rem;background:var(--inchiostro);color:var(--carta);border:1px solid var(--inchiostro);font:500 var(--t-base)/1.2 var(--font-testi);cursor:pointer;border-radius:var(--raggio);margin-right:var(--s-2)}
.offg-iframe__ok:hover{background:var(--accento);border-color:var(--accento)}
.offg-iframe__link{color:inherit}
@media (prefers-reduced-motion:reduce){.offg-cookie{animation:none}.offg-cookie__interruttore,.offg-cookie__interruttore::after{transition:none}}
@media (forced-colors:active){.offg-cookie__btn,.offg-cookie__interruttore{border:1px solid ButtonText}.offg-cookie__interruttore:checked::after{background:Highlight}}
