.consent-banner,.consent-dialog{box-sizing:border-box;font-family:var(--font-sans,sans-serif);text-align:left}
.consent-banner{position:fixed;right:20px;bottom:20px;left:auto;z-index:9998;width:min(460px,calc(100vw - 32px));max-height:min(72dvh,620px);overflow:auto;padding:18px 18px 16px;background:rgba(17,17,15,.96);color:#F2F0EC;border:1px solid rgba(209,185,159,.24);border-radius:14px;box-shadow:0 22px 64px -30px rgba(0,0,0,.82),0 0 0 1px rgba(255,255,255,.025);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.consent-banner[hidden]{display:none}
.consent-banner h2{margin:0 0 8px;font:600 13px/1.2 var(--font-sans,sans-serif);letter-spacing:.18em;text-transform:uppercase;color:#D1B99F}
.consent-banner p{margin:0 0 14px;font:400 13.5px/1.55 var(--font-sans,sans-serif);color:#C7C1BA}
.consent-banner a{color:#F2F0EC;text-decoration:underline;text-decoration-color:rgba(242,240,236,.38);text-underline-offset:3px}
.consent-banner a:hover{color:#D1B99F;text-decoration-color:currentColor}
.consent-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.consent-actions button,.consent-footer-link{font:600 12px/1.1 var(--font-sans,sans-serif);letter-spacing:.07em;border-radius:999px;cursor:pointer;transition:background 160ms linear,border-color 160ms linear,color 160ms linear,transform 160ms ease}
.consent-banner .consent-actions button{min-height:40px;padding:10px 12px}
.consent-banner .consent-actions button[data-choice]{border:1px solid #F2F0EC;background:#F2F0EC;color:#11110F}
.consent-banner .consent-actions button[data-choice]:hover{background:#D1B99F;border-color:#D1B99F}
.consent-banner .consent-actions button[data-config]{border:1px solid rgba(209,185,159,.42);background:transparent;color:#D1B99F}
.consent-banner .consent-actions button[data-config]:hover{background:rgba(209,185,159,.10);border-color:#D1B99F;color:#F2F0EC}
.consent-actions button:active,.consent-footer-link:active{transform:translateY(1px)}
.consent-actions button:focus-visible,.consent-footer-link:focus-visible,.consent-dialog input:focus-visible{outline:2px solid #D1B99F;outline-offset:3px}
.consent-footer-control[hidden]{display:none!important}
.consent-footer-control{display:inline-flex;align-items:center;gap:20px}
.consent-footer-separator{width:1px;height:14px;background:rgba(242,240,236,.24)}
.consent-footer-link{appearance:none;border:0;padding:0;background:none;color:#A7A3A0;font:400 17px/1.5 var(--font-sans,sans-serif);letter-spacing:0;border-radius:0;cursor:pointer}
.consent-footer-link:hover{color:#D1B99F}
.consent-footer-link:focus-visible{outline:2px solid #D1B99F;outline-offset:4px}
.consent-dialog{width:min(500px,calc(100% - 24px));max-height:84dvh;overflow:auto;margin:auto;padding:22px;background:#F2F0EC;color:#2B2926;border:1px solid rgba(43,41,38,.18);border-radius:14px;box-shadow:0 28px 80px -34px rgba(0,0,0,.72)}
.consent-dialog::backdrop{background:rgba(17,17,15,.72);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.consent-dialog h2{margin:0 0 10px;font:600 20px/1.2 var(--font-sans,sans-serif);letter-spacing:-.01em;color:#2B2926}
.consent-dialog p{margin:10px 0;font:400 14px/1.6 var(--font-sans,sans-serif);color:#5A564F}
.consent-dialog a{color:#624228;text-decoration:underline;text-underline-offset:3px}
.consent-dialog label{display:flex;align-items:center;gap:12px;min-height:44px;margin:12px 0;padding:12px 14px;background:#EAE5DF;border:1px solid rgba(43,41,38,.10);border-radius:10px;cursor:pointer}
.consent-dialog input{appearance:auto;width:20px;height:20px;flex-shrink:0}
.consent-dialog .consent-actions{grid-template-columns:1fr;gap:8px;margin-top:16px}
.consent-dialog .consent-actions button{min-height:42px;padding:10px 14px;border:1px solid rgba(43,41,38,.28);background:#F2F0EC;color:#2B2926}
.consent-dialog .consent-actions button:hover{background:#E2D2C2;border-color:#826344}
.consent-dialog .consent-actions button[data-save]{background:#11110F;border-color:#11110F;color:#F2F0EC}
.consent-dialog .consent-actions button[data-save]:hover{background:#2B2926}
.legal-copy h2,.legal-copy h3{color:#2b2926;font-weight:600;line-height:1.3;margin:32px 0 12px}
.legal-copy h2{font-size:26px}.legal-copy h3{font-size:20px}
.legal-copy a{color:#624228;text-decoration:underline}
@media(max-width:540px){.consent-banner{right:12px;bottom:12px;width:calc(100vw - 24px);padding:16px 16px 14px;border-radius:12px}.consent-banner p{font-size:13px;line-height:1.5}.consent-actions{gap:7px}.consent-banner .consent-actions button{min-height:42px;padding:9px 8px;font-size:11.5px;letter-spacing:.045em}.consent-dialog{padding:18px}}
@media(max-width:350px){.consent-banner .consent-actions{grid-template-columns:1fr 1fr}.consent-banner .consent-actions button[data-config]{grid-column:1/-1}}
