/* Consent choices share the same visual weight and remain available in every locale. */
.consent-banner[hidden]{display:none}
.consent-banner{position:fixed;inset-inline:16px;inset-block-end:max(16px,env(safe-area-inset-bottom));z-index:140;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);align-items:center;gap:24px;max-width:1160px;max-height:calc(100dvh - 32px);margin-inline:auto;padding:22px 24px;border:1px solid #b9d5dc;border-radius:14px;background:#fff;color:var(--ink,#13313b);box-shadow:0 12px 48px #073e5030;overflow:auto;overscroll-behavior:contain}
.consent-banner-copy,.consent-banner-controls,.consent-dialog-body{min-width:0}
.consent-banner h2{margin:0 0 9px;font-size:1.12rem;line-height:1.3;letter-spacing:0}
.consent-banner p{margin:0;font-size:.88rem;line-height:1.55;color:var(--muted,#5c7178)}
.consent-banner .consent-reassurance{margin-top:9px;font-size:.82rem;color:var(--ink,#13313b)}
.consent-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}
.consent-choice{min-width:0;min-height:46px;padding:11px 13px;border:1.5px solid #087d99;border-radius:7px;background:#fff;color:#073e50;font:inherit;font-size:.88rem;font-weight:750;line-height:1.35;text-align:center;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.consent-choice:hover{background:#e9f6f8}
.consent-choice:focus-visible,.consent-close:focus-visible,.consent-links a:focus-visible,.consent-links button:focus-visible,.privacy-footer a:focus-visible,.privacy-footer button:focus-visible,.privacy-content a:focus-visible,.privacy-content button:focus-visible,.consent-policy-link:focus-visible{outline:3px solid #087d99;outline-offset:4px}
.consent-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:5px 18px;margin-top:9px}
.consent-links a,.consent-policy-link{display:inline-flex;align-items:center;min-height:40px;color:#08718a;font-size:.82rem;text-decoration:underline;text-underline-offset:3px}
.consent-links .text-button,.consent-dialog .text-button{white-space:normal;text-align:start}
.consent-dialog{width:min(680px,calc(100% - 32px));max-width:680px;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #c6dce1;border-radius:15px;background:#fff;color:var(--ink,#13313b);overflow:auto;overscroll-behavior:contain}
.consent-dialog::backdrop{background:#052d3b99}
.consent-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid var(--line,#d8e6e8)}
.consent-dialog-header h2{margin:4px 0 0;font-size:1.35rem;line-height:1.3;overflow-wrap:anywhere}
.consent-close{flex-shrink:0;min-height:42px;padding:8px 12px;border:1px solid #bed4da;border-radius:6px;background:#fff;color:var(--ink,#13313b);font:inherit;font-size:.82rem;cursor:pointer}
.consent-close:hover{background:#f0f7f8}
.consent-dialog-body{padding:22px 26px 26px}
.consent-dialog-body p{margin:0 0 16px;font-size:.9rem;line-height:1.65;color:var(--muted,#5c7178)}
.consent-details{margin:18px 0;padding:0}
.consent-details>div{padding:16px 0;border-block-start:1px solid var(--line,#d8e6e8)}
.consent-details dt{font-size:.95rem;font-weight:750;line-height:1.4}
.consent-details dd{margin:7px 0 0;color:var(--muted,#5c7178);font-size:.88rem;line-height:1.65}
.consent-dialog-body .consent-state{color:var(--ink,#13313b);font-weight:650}
.consent-state:empty,.consent-feedback:empty{display:none}
.consent-dialog-body .consent-feedback{margin:14px 0 0;color:var(--ink,#13313b);font-size:.82rem}
.consent-policy-link{margin-top:10px}
.privacy-footer{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;min-width:0}
.privacy-footer a,.privacy-footer .text-button{display:inline-flex;align-items:center;min-height:44px;margin:0;color:inherit;font-size:.82rem;line-height:1.5;white-space:normal;text-align:start;text-decoration:underline;text-underline-offset:3px}
.site-footer .privacy-footer{color:#c8dfe5}
.site-footer .privacy-footer a:hover,.site-footer .privacy-footer .text-button:hover{color:#7de7f3}
.site-footer .privacy-footer a:focus-visible,.site-footer .privacy-footer button:focus-visible{outline-color:#7de7f3}
.privacy-hero p{max-width:760px}
.privacy-content{max-width:850px}
.privacy-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 24px;margin-bottom:36px;border:1px solid #c5dfe4;border-radius:10px;background:#f1f8f9}
.privacy-summary p{margin:0;color:var(--ink,#13313b);font-size:.95rem}
.privacy-content .text-button{white-space:normal;text-align:start;min-height:44px}
.privacy-summary .text-button{flex-shrink:0;max-width:42%}
.privacy-content>section{padding:28px 0;border-block-end:1px solid var(--line,#d8e6e8)}
.privacy-content>section:last-child{border:0;padding-bottom:0}
.privacy-content h2{margin:0 0 15px;font-size:1.35rem;line-height:1.35}
.privacy-content h3{margin:24px 0 10px;font-size:1rem;line-height:1.4}
.privacy-content p{margin:0 0 15px;font-size:.95rem;line-height:1.75}
.privacy-content a{color:#08718a;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.privacy-email{display:inline-block;font-weight:650}
@media(max-width:760px){
.consent-banner{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px;inset-inline:10px;inset-block-end:max(10px,env(safe-area-inset-bottom));max-height:calc(100dvh - 20px);border-radius:11px}
.consent-banner h2{font-size:1.04rem}.consent-banner p{font-size:.82rem}.consent-banner .consent-reassurance{font-size:.78rem}
.consent-choice{font-size:.82rem;padding:10px;min-height:46px}.consent-actions{gap:10px}
.consent-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}
.consent-dialog-header{padding:18px;gap:12px}.consent-dialog-header h2{font-size:1.15rem}
.consent-dialog-body{padding:18px}.consent-dialog-body p,.consent-details dd{font-size:.85rem}
.privacy-summary{display:block;padding:18px}.privacy-summary .text-button{max-width:100%;margin-top:8px}
.privacy-content h2{font-size:1.2rem}.privacy-content p{font-size:.9rem}.privacy-content>section{padding:24px 0}
}
@media print{.consent-banner,.consent-dialog,.privacy-footer button,.privacy-content button{display:none!important}}

