.consent-panel[hidden],.consent-categories[hidden],.consent-actions button[hidden]{display:none}
.consent-panel{position:fixed;z-index:10000;inset:auto 24px 24px;max-width:1180px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 32px;align-items:center;padding:30px;background:#0b3b2c;color:#fff;border:1px solid #bfd39d80;box-shadow:0 20px 70px #001b165c}
.consent-copy{min-width:0;padding-right:28px}.consent-kicker{display:block;color:#c1d99f;text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:800}
.consent-copy h2{margin:8px 0 12px;color:#fff;font-size:25px;line-height:1.2}.consent-copy p{margin:0;font-size:14px;line-height:1.7;color:#e4ece4}
.consent-copy .consent-details{margin-top:12px;font-size:12px}.consent-details a{text-decoration:underline;color:#d1e4b6}
.consent-close{position:absolute;top:12px;right:14px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff66;background:transparent;color:#fff;font:26px/1 Arial,sans-serif;cursor:pointer}
.consent-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-right:20px}
.consent-actions button{min-height:44px;padding:12px 16px;border:1px solid #c1d99f;background:transparent;color:#fff;font:600 13px/1.4 Arial,sans-serif;cursor:pointer}
.consent-actions button:hover,.consent-close:hover{background:#ffffff14}
.consent-categories{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ffffff30}
.consent-categories label{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;background:#144b38}
.consent-categories strong,.consent-categories small{display:block}.consent-categories strong{font-size:14px}.consent-categories small{margin-top:6px;color:#c6d7ce;font-size:12px;line-height:1.6}
.consent-categories input{flex-shrink:0;width:20px;height:20px;accent-color:#c1d99f}
.consent-panel a:focus-visible,.consent-panel button:focus-visible,.consent-panel input:focus-visible,.consent-settings:focus-visible{outline:3px solid #c1d99f;outline-offset:4px}
.site-footer .footer-legal{flex-wrap:wrap;align-items:center}.consent-settings{border:0;padding:0;background:none;color:inherit;font:inherit;line-height:1.5;cursor:pointer;text-decoration:underline}
@media(max-width:1000px){.consent-panel{grid-template-columns:1fr;gap:20px}.consent-actions{justify-content:flex-start;padding-right:0}.consent-categories{grid-row:auto}}
@media(max-width:560px){.consent-panel{inset:auto 10px 10px;padding:24px 18px;max-height:calc(100dvh - 20px);overflow:auto}.consent-copy{padding-right:20px}.consent-copy h2{font-size:22px}.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.consent-actions button{padding-inline:10px}.consent-categories{grid-template-columns:1fr}}

/* Palette del logo: bianco, verde e nero. */
.consent-panel { background:#fff; color:#111; border:1px solid #cbd9d1; border-top:4px solid #08714d; box-shadow:0 16px 56px #00000026; }
.consent-kicker { color:#08714d; }
.consent-copy h2 { color:#034832; }
.consent-copy p { color:#202521; }
.consent-details a { color:#08714d; }
.consent-close { background:#fff; color:#111; border-color:#a9bdb1; }
.consent-actions button { background:#fff; color:#034832; border-color:#08714d; }
.consent-actions button:hover,.consent-close:hover { background:#edf4ef; }
.consent-categories { background:#cbd9d1; }
.consent-categories label { background:#f2f6f3; }
.consent-categories small { color:#39463e; }
.consent-categories input { accent-color:#08714d; }
.consent-panel a:focus-visible,.consent-panel button:focus-visible,.consent-panel input:focus-visible { outline-color:#08714d; }
