/* FP Consenso - aspetto del banner. Usa le stesse variabili del sito, cosi' se cambia la palette
   cambia anche questo. Il riquadro sta in basso a sinistra e non copre tutta la pagina: un velo
   pieno su un sito istituzionale sembra un errore, e il contenuto sotto deve restare leggibile. */

.fpc{position:fixed;inset:0;z-index:9999;display:flex;align-items:flex-end;justify-content:flex-start;
     padding:clamp(14px,3vw,30px);pointer-events:none}
.fpc-velo{position:absolute;inset:0;background:rgba(16,16,14,.34);pointer-events:auto}
.fpc-box{position:relative;pointer-events:auto;width:min(560px,100%);max-height:86vh;overflow:auto;
     background:#faf7f0;color:#1d1d1b;border-top:3px solid #bf9a45;
     box-shadow:0 18px 50px rgba(0,0,0,.34);padding:clamp(20px,3vw,30px)}
.fpc-t{font-family:Cinzel,Georgia,serif;font-weight:500;font-size:1.22rem;line-height:1.2;margin:0 0 10px}
.fpc-p{font-size:.9rem;line-height:1.62;color:#3b3b36;margin:0}
.fpc-p a{color:#8a6d2c;text-underline-offset:3px}

.fpc-cat{margin-top:18px;border-top:1px solid rgba(29,29,27,.14)}
.fpc-riga{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;
     padding:14px 0;border-bottom:1px solid rgba(29,29,27,.14);cursor:pointer}
.fpc-fissa{cursor:default;opacity:.72}
.fpc-riga input{margin-top:3px;width:17px;height:17px;accent-color:#00382e;flex:none}
.fpc-riga b{display:block;font-size:.9rem;font-weight:600}
.fpc-riga em{display:block;font-style:normal;font-size:.84rem;line-height:1.55;color:#5a5a52;margin-top:3px}

/* Rifiuta e Accetta hanno lo stesso peso visivo: e' il requisito su cui cadono quasi tutti i
   banner, non una scelta estetica. Cambia solo il colore, non la dimensione ne' l'evidenza. */
.fpc-pulsanti{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.fpc-b{flex:1 1 150px;font:inherit;font-size:.86rem;font-weight:600;letter-spacing:.02em;
     padding:13px 18px;border:1px solid #1d1d1b;background:transparent;color:#1d1d1b;
     cursor:pointer;transition:background .15s,color .15s}
.fpc-b:hover{background:#1d1d1b;color:#faf7f0}
.fpc-si{background:#00382e;border-color:#00382e;color:#fff}
.fpc-si:hover{background:#1d1d1b;border-color:#1d1d1b}
.fpc-b:focus-visible{outline:2px solid #bf9a45;outline-offset:2px}

html.fpc-aperto{overflow:hidden}

@media (max-width:520px){
  .fpc{align-items:stretch;padding:0}
  .fpc-box{width:100%;max-height:100vh;align-self:flex-end}
  .fpc-b{flex:1 1 100%}
}
