/* Deliberately separate from decorative link/buttons: equal consent choices. */
.cr-cookie-dialog { box-sizing:border-box; width:calc(100% - 32px); max-width:660px; max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); padding:38px; border:1px solid #796849; border-radius:18px; background:#181a1e; color:#f5f1e8; box-shadow:0 26px 100px #0009; overflow:auto; overscroll-behavior:contain; }
.cr-cookie-dialog:not([open]) { display:none; }
.cr-cookie-dialog[open] { display:block; }
.cr-cookie-dialog::backdrop { background:rgb(8 9 12 / .76); backdrop-filter:blur(5px); }
body.cr-consent-open { overflow:hidden; }
.cr-cookie-dialog h2 { margin:0 36px 18px 0; font:400 clamp(28px,5vw,38px)/1.15 Georgia,serif; color:#f5f1e8; letter-spacing:-.025em; }
.cr-cookie-dialog p { font:400 14px/1.7 inherit; font-size:14px; line-height:1.7; color:#d0cbc2; margin:0 0 20px; }
.cr-cookie-dialog button { font:inherit; cursor:pointer; -webkit-appearance:none; appearance:none; }
.cr-cookie-dialog .cr-cookie-close { position:absolute; top:12px; right:12px; width:44px; height:44px; padding:0; border:0; border-radius:50%; color:#ece5d6; background:transparent; font-size:26px; }
.cr-cookie-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:24px; }
.cr-cookie-dialog .cr-cookie-button { min-height:48px; padding:12px 17px; border:1px solid #c5a561; border-radius:8px; background:#d3b676; color:#181a1e; line-height:1.4; font-size:13px; font-weight:600; transition:background .2s ease,border-color .2s ease; }
.cr-cookie-dialog .cr-cookie-button:hover { background:#f8f5ed; border-color:#d3b676; }
.cr-cookie-dialog .cr-cookie-settings { display:block; margin:10px auto 0; min-height:44px; padding:8px 12px; border:0; background:transparent; color:#e5c98e; font-size:14px; text-decoration:underline; text-underline-offset:5px; }
.cr-cookie-links { display:flex; flex-wrap:wrap; justify-content:center; column-gap:18px; margin-top:14px; }
.cr-cookie-links a { display:inline-flex; align-items:center; min-height:36px; font-size:12px; color:#e3ddd1; text-decoration:underline; text-underline-offset:4px; }
.cr-cookie-dialog :focus-visible,.cr-whatsapp:focus-visible,.cr-cookie-reopen:focus-visible { outline:2px solid #eed7a3; outline-offset:4px; }
.cr-cookie-options[hidden],.cr-footer-map-frame [hidden] { display:none!important; }
.cr-cookie-options { margin:20px 0; border-top:1px solid #ffffff24; }
.cr-cookie-option { padding:16px 0; border-bottom:1px solid #ffffff24; }
.cr-cookie-option strong,.cr-cookie-option label { font-size:14px; font-weight:600; color:#f5f1e8; }
.cr-cookie-option label { display:flex; justify-content:space-between; align-items:center; min-height:44px; gap:20px; cursor:pointer; }
.cr-cookie-option input { flex:none; width:23px; height:23px; margin:0 4px; accent-color:#d3b676; }
.cr-cookie-option p { margin:8px 0 0; font-size:13px; }
.cr-cookie-options > button { width:100%; margin-top:20px; }
.cr-cookie-reopen { display:inline-flex; align-items:center; min-height:44px; padding:6px 0; border:0; background:transparent; color:inherit; font:inherit; text-align:left; cursor:pointer; text-decoration:underline; text-underline-offset:5px; }
.cr-sal-badge { display:inline-flex; width:250px; max-width:100%; margin-top:18px; background:transparent; }
.cr-sal-badge img { display:block; width:250px; height:50px; object-fit:contain; }
body.cr-photography-theme .cr-footer-map-frame--consent { height:auto; min-height:240px; display:flex; flex-direction:column; }
body.cr-photography-theme .cr-footer-map-frame--consent iframe { position:relative; height:200px; width:100%; border:0; }
body.cr-photography-theme .cr-footer-map-frame--consent > a { position:relative; inset:auto; padding:16px 20px; background:#202229; margin-top:auto; }
.cr-map-placeholder { padding:24px 20px; font-size:13px; line-height:1.65; }
.cr-map-placeholder p { margin:0 0 12px; }
.cr-map-placeholder button { min-height:44px; border:1px solid #b69958; border-radius:6px; padding:9px 14px; background:transparent; color:#edcf92; font:inherit; cursor:pointer; }
.cr-whatsapp { position:fixed; right:max(22px,env(safe-area-inset-right)); bottom:calc(20px + env(safe-area-inset-bottom)); z-index:45; display:inline-flex; align-items:center; gap:10px; min-height:50px; padding:12px 18px; border:1px solid #bca26b; border-radius:30px; background:#222a27; color:#f3e7cb; box-shadow:0 8px 26px #0004; text-decoration:none; font-size:13px; line-height:1.2; transition:background .2s ease; }
.cr-whatsapp:hover { background:#35443c; color:#fff; }
.cr-consent-open .cr-whatsapp { visibility:hidden; }
.cr-legal-company { display:grid; gap:10px; }
.cr-legal-company div { display:grid; grid-template-columns:minmax(100px,180px) minmax(0,1fr); gap:16px; }
.cr-legal-company dt { font-weight:600; }
.cr-legal-company dd { margin:0; overflow-wrap:anywhere; }
.cr-legal-pending { color:#c6a15a; }
@media(max-width:600px) {
 .cr-cookie-dialog { padding:28px 22px 22px; max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px - env(safe-area-inset-bottom)); }
 .cr-cookie-actions { grid-template-columns:1fr; gap:10px; }
 .cr-cookie-links { column-gap:14px; }
 .cr-whatsapp { padding:13px; right:14px; bottom:calc(14px + env(safe-area-inset-bottom)); }
 .cr-whatsapp span { display:none; }
 .cr-legal-company div { grid-template-columns:1fr; gap:3px; }
}
@media(prefers-reduced-motion:reduce) { .cr-cookie-dialog button,.cr-whatsapp { transition:none!important; } }
