/* Patsa Legal: banner cookie, pannello preferenze, pagine legali */
.patsa-cb,.patsa-cp{--patsa-ink:#141414;--patsa-paper:#fff;--patsa-line:#d9d6d0;--patsa-muted:#5c5852;font-family:inherit;color:var(--patsa-ink);box-sizing:border-box}
.patsa-cb *,.patsa-cp *{box-sizing:border-box}
.patsa-cb[hidden],.patsa-cp[hidden]{display:none!important}

.patsa-cb{position:fixed;z-index:2147483000;left:16px;right:16px;bottom:16px;max-width:880px;margin:0 auto;background:var(--patsa-paper);border:1px solid var(--patsa-line);box-shadow:0 10px 40px rgba(0,0,0,.18);padding:20px 22px 18px}
.patsa-cb__title{margin:0 0 6px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
.patsa-cb__text{margin:0 28px 14px 0;font-size:14px;line-height:1.55;color:var(--patsa-muted)}
.patsa-cb__text a{color:var(--patsa-ink);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.patsa-cb__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
.patsa-cb__btn{appearance:none;cursor:pointer;min-width:132px;padding:11px 18px;font:inherit;font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:var(--patsa-ink);color:#fff;border:1px solid var(--patsa-ink);border-radius:0;line-height:1.2}
.patsa-cb__btn:hover,.patsa-cb__btn:focus-visible{background:#3a3733;border-color:#3a3733;color:#fff}
.patsa-cb__link{appearance:none;cursor:pointer;margin-right:auto;padding:11px 2px;font:inherit;font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:none;border:0;color:var(--patsa-ink);text-decoration:underline;text-underline-offset:3px}
.patsa-cb__close{position:absolute;top:8px;right:10px;appearance:none;cursor:pointer;width:32px;height:32px;padding:0;font-size:24px;line-height:32px;background:none;border:0;color:var(--patsa-ink)}
.patsa-cb button:focus-visible,.patsa-cp button:focus-visible,.patsa-cp input:focus-visible{outline:2px solid var(--patsa-ink);outline-offset:2px}

.patsa-cp{position:fixed;z-index:2147483001;inset:0;background:rgba(20,20,20,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.patsa-cp__box{position:relative;width:100%;max-width:560px;max-height:calc(100vh - 32px);overflow:auto;background:var(--patsa-paper);padding:26px 24px 20px;border:1px solid var(--patsa-line)}
.patsa-cp__title{margin:0 0 8px;font-size:15px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
.patsa-cp__intro{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--patsa-muted)}
.patsa-cp__cat{border-top:1px solid var(--patsa-line);padding:14px 0}
.patsa-cp__head{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer}
.patsa-cp__name{font-size:14px;font-weight:500}
.patsa-cp__always{font-size:12px;color:var(--patsa-muted)}
.patsa-cp__desc{margin:6px 0 0;font-size:13px;line-height:1.5;color:var(--patsa-muted)}
.patsa-cp__toggle{appearance:none;-webkit-appearance:none;position:relative;flex:0 0 auto;width:42px;height:24px;margin:0;border-radius:12px;background:#cfcac3;cursor:pointer;transition:background .15s}
.patsa-cp__toggle::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}
.patsa-cp__toggle:checked{background:var(--patsa-ink)}
.patsa-cp__toggle:checked::after{transform:translateX(18px)}
.patsa-cp__actions{border-top:1px solid var(--patsa-line);padding-top:16px;justify-content:stretch}
.patsa-cp__actions .patsa-cb__btn{flex:1 1 140px}

@media (max-width:600px){
	.patsa-cb{left:0;right:0;bottom:0;padding:18px 16px 16px;border-left:0;border-right:0}
	.patsa-cb__text{font-size:13px}
	.patsa-cb__actions{justify-content:stretch}
	.patsa-cb__btn{flex:1 1 40%;min-width:0}
	.patsa-cb__link{flex:1 1 100%;margin:0;text-align:center;order:3}
}

/* link legali nel footer (al posto dei pulsanti iubenda) */
.patsa-legal-link{display:inline-block;margin:0 8px;font-size:12px;color:inherit;text-decoration:underline;text-underline-offset:2px}

/* pagine legali */
.patsa-doc{max-width:820px;margin:0 auto;font-size:15px;line-height:1.65}
.patsa-doc h2{margin:2em 0 .6em;font-size:1.25em}
.patsa-doc h3{margin:1.4em 0 .4em;font-size:1.05em}
.patsa-doc p,.patsa-doc li{margin:0 0 .7em}
.patsa-doc .patsa-doc__meta{color:#5c5852;font-size:13px}
.patsa-doc .patsa-doc__box{border:1px solid #d9d6d0;padding:14px 16px;margin:1em 0}
.patsa-doc table{width:100%;border-collapse:collapse;margin:.6em 0 1.4em;font-size:13px}
.patsa-doc th,.patsa-doc td{border:1px solid #d9d6d0;padding:8px 10px;text-align:left;vertical-align:top}
.patsa-doc th{background:#f4f2ee;font-weight:500}
.patsa-doc .patsa-prefs-btn{display:inline-block;padding:10px 16px;background:#141414;color:#fff;text-decoration:none;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
@media (max-width:600px){.patsa-doc table{display:block;overflow-x:auto}}

/* Protezione dagli stili globali del tema (Astra/Elementor applicano sfondo e padding a tutti i button e checkbox) */
#patsa-cookie-banner .patsa-cb__close,#patsa-cookie-prefs .patsa-cb__close{background:transparent!important;color:#141414!important;border:0!important;box-shadow:none!important;padding:0!important;width:32px!important;height:32px!important;min-height:0!important;line-height:32px!important;font-size:24px!important}
#patsa-cookie-banner .patsa-cb__link{background:transparent!important;color:#141414!important;border:0!important;box-shadow:none!important;padding:11px 2px!important;min-height:0!important;text-decoration:underline!important}
#patsa-cookie-banner .patsa-cb__btn,#patsa-cookie-prefs .patsa-cb__btn{background:#141414!important;color:#fff!important;border:1px solid #141414!important;box-shadow:none!important;border-radius:0!important;padding:11px 18px!important;font-size:12px!important;line-height:1.2!important;min-height:0!important}
#patsa-cookie-banner .patsa-cb__btn:hover,#patsa-cookie-prefs .patsa-cb__btn:hover{background:#3a3733!important;border-color:#3a3733!important}
#patsa-cookie-prefs .patsa-cp__toggle{appearance:none!important;-webkit-appearance:none!important;width:42px!important;height:24px!important;min-width:42px!important;margin:0!important;padding:0!important;border:0!important;border-radius:12px!important;background:#cfcac3!important;box-shadow:none!important;outline-offset:2px}
#patsa-cookie-prefs .patsa-cp__toggle:checked{background:#141414!important}
#patsa-cookie-prefs .patsa-cp__toggle::before{display:none!important;content:none!important}
