/* Banner dei cookie e finestra delle preferenze */
.ck-banner{position:fixed;left:16px;bottom:16px;z-index:9990;width:min(460px,calc(100vw - 32px));background:#fff;color:#1b2a3d;border:1px solid #e4eaf2;border-top:4px solid var(--gold,#c9a24b);border-radius:18px;padding:22px 22px 18px;box-shadow:0 30px 60px -20px rgba(11,31,58,.55);font:400 .93rem/1.55 var(--sans,system-ui,sans-serif);animation:ck-in .45s cubic-bezier(.2,.75,.25,1)}
@keyframes ck-in{from{opacity:0;transform:translateY(18px)}}
.ck-title{font-family:var(--serif,Georgia,serif);font-size:1.25rem;line-height:1.2;color:var(--navy,#0b1f3a);margin:0 26px .4em 0}
.ck-text{margin:0 0 .9em;color:#33425a}
.ck-text a{color:var(--navy,#0b1f3a);text-underline-offset:3px;font-weight:600}
.ck-x{position:absolute;right:10px;top:10px;width:34px;height:34px;display:grid;place-items:center;border:0;background:transparent;border-radius:50%;color:#33425a;cursor:pointer}
.ck-x:hover{background:#eef2f7}
.ck-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ck-btn{font:600 .92rem/1 var(--sans,system-ui,sans-serif);cursor:pointer;border-radius:999px;padding:.85em 1.5em;min-height:44px;transition:background .2s,color .2s,box-shadow .2s}
/* Rifiuta e Accetta hanno lo stesso aspetto: nessuna scelta è messa in evidenza */
.ck-main{background:var(--navy,#0b1f3a);color:#fff;border:2px solid var(--navy,#0b1f3a)}
.ck-main:hover{background:#fff;color:var(--navy,#0b1f3a)}
.ck-link{background:transparent;border:0;color:var(--navy,#0b1f3a);text-decoration:underline;text-underline-offset:3px;padding:.85em .6em}
.ck-btn:focus-visible,.ck-x:focus-visible,.ck-banner a:focus-visible,.ck-dlg a:focus-visible{outline:3px solid #7fb0e3;outline-offset:2px}

.ck-back{position:fixed;inset:0;z-index:9995;background:rgba(7,18,36,.62);display:grid;place-items:center;padding:16px;overflow:auto;animation:ck-fade .25s}
@keyframes ck-fade{from{opacity:0}}
.ck-dlg{width:min(560px,100%);background:#fff;color:#1b2a3d;border-radius:20px;border-top:4px solid var(--gold,#c9a24b);padding:26px 26px 22px;box-shadow:0 40px 80px -20px rgba(0,0,0,.6);font:400 .93rem/1.55 var(--sans,system-ui,sans-serif)}
.ck-dlg .ck-title{margin-right:0}
.ck-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:14px 0;border-top:1px solid #e4eaf2}
.ck-row p{margin:.2em 0 0;color:#4a5a72;font-size:.88rem}
.ck-row strong{color:var(--navy,#0b1f3a)}
.ck-always{flex:none;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#2f6b3f;background:#e6f3ea;border-radius:999px;padding:.4em .9em;margin-top:2px}
.ck-switch{position:relative;flex:none;width:52px;height:30px;margin-top:2px}
.ck-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:2}
.ck-switch i{position:absolute;inset:0;border-radius:999px;background:#b9c4d3;transition:background .2s}
.ck-switch i::after{content:"";position:absolute;left:3px;top:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.3);transition:transform .2s}
.ck-switch input:checked+i{background:var(--navy,#0b1f3a)}
.ck-switch input:checked+i::after{transform:translateX(22px)}
.ck-switch input:focus-visible+i{outline:3px solid #7fb0e3;outline-offset:2px}
html.ck-lock{overflow:hidden}

/* Pulsante «Preferenze cookie» nel piè di pagina: sembra un link */
.foot-cookie{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.foot-cookie:hover{color:var(--gold-2,#e3c77b)}

/* Avviso al posto della mappa quando non c'è il consenso */
.soci-map-consent{position:absolute;inset:0;z-index:700;display:grid;place-content:center;gap:14px;text-align:center;padding:24px;background:linear-gradient(160deg,#eef3f9,#dfe8f2);color:#1b2a3d}
.soci-map-consent[hidden]{display:none}
.soci-map-consent p{margin:0 auto;max-width:34em;font-size:.95rem}
.soci-map-consent .ck-actions{justify-content:center}

@media (max-width:560px){
  /* telefono: striscia compatta in basso (v2.9.9) */
  .ck-banner{left:8px;right:8px;bottom:8px;width:auto;padding:12px 14px 10px;border-radius:14px;border-top-width:3px;font-size:.8rem;line-height:1.4}
  .ck-title{font-size:1rem;margin:0 28px .25em 0}
  .ck-text{margin:0 0 .6em}
  .ck-x{right:4px;top:4px;width:30px;height:30px}
  .ck-actions{gap:6px;flex-wrap:nowrap}
  .ck-actions .ck-main{flex:1 1 0;min-height:40px;padding:.6em .5em;font-size:.85rem}
  .ck-link{min-height:40px;padding:.6em .3em;font-size:.8rem;white-space:nowrap}
}
@media (prefers-reduced-motion:reduce){.ck-banner,.ck-back{animation:none}}
@media print{.ck-banner,.ck-back{display:none}}
