/* Privacy controls: local assets only; all choices use the same visual weight. */
[hidden]{display:none!important}
.consent-banner{position:fixed;z-index:5000;bottom:18px;left:18px;right:18px;max-width:1250px;margin:auto;background:var(--navy);color:var(--cream);border:1px solid #8c91a6;border-radius:12px;box-shadow:0 8px 45px #0005;padding:25px 28px;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;max-height:85dvh;overflow:auto}
.consent-banner h2,.consent-dialog h2{font:26px/1.25 var(--bold);margin:0 0 12px}
.consent-banner p{font:15px/1.55 var(--sans);margin:0;max-width:850px}
.consent-banner .consent-links{display:flex;gap:23px;margin-top:12px}
.consent-banner a{color:var(--yellow);text-decoration:underline;text-underline-offset:3px}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px}
.consent-banner .consent-actions{flex-direction:column;min-width:190px}
.consent-actions button{font:15px/1.4 var(--bold);padding:12px 17px;border:1px solid var(--navy);background:var(--cream);color:var(--navy);border-radius:5px;cursor:pointer;min-height:45px}
.consent-actions button:hover{background:var(--yellow)}
.consent-actions button:focus-visible,.consent-close:focus-visible,.privacy-settings-link:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.consent-dialog{background:var(--cream);color:var(--navy);border:1px solid var(--gold);border-radius:12px;padding:30px;width:min(670px,calc(100% - 28px));max-height:90dvh;overflow:auto}
.consent-dialog::backdrop{background:#131b35bb}
.consent-dialog p{font:15px/1.6 var(--sans);margin:10px 0 18px}
.consent-dialog a{text-decoration:underline}
.consent-necessary{padding:15px 0;border-top:1px solid #232d5830}
.consent-necessary>span{display:block;font-size:12px;margin-top:4px}
.consent-option{display:flex;gap:14px;padding:19px 0;border-top:1px solid #232d5830;cursor:pointer;align-items:flex-start}
.consent-option input{width:23px;height:23px;flex:none;accent-color:var(--navy);margin:2px 0}
.consent-option strong{display:block;font:18px/1.4 var(--bold);margin-bottom:6px}
.consent-option span span{display:block;font:14px/1.55 var(--sans)}
.consent-close{display:block;margin:20px auto 0;background:none;border:0;text-decoration:underline;color:var(--navy);font:14px/1.5 var(--sans);padding:8px;cursor:pointer}
.privacy-settings-link{font:inherit;background:none;border:0;color:inherit;padding:0;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.site-footer .privacy-settings-link{font-size:16px;margin-top:10px}
.privacy-page{max-width:940px}
.privacy-page h2{font:27px/1.3 var(--bold);margin:38px 0 17px}
.privacy-page p{font:18px/1.7 var(--sans)}
.privacy-page a{text-decoration:underline;overflow-wrap:anywhere}
.privacy-page .privacy-eyebrow{font:12px/1.4 var(--bold);letter-spacing:1px}
.map-intro .external-notice{display:block;max-width:560px;margin:15px auto;font:14px/1.55 var(--sans)}
.map-intro{height:auto;min-height:100%;padding:30px 20px}
.video-shell .video-load small{font:14px/1.4 var(--sans)}
.video-consent-note{font:14px/1.5 var(--sans);margin:13px 0}
.form-sensitive-note{background:#f7e08b55;border-left:3px solid var(--gold);padding:15px 18px;font:15px/1.5 var(--sans)}
@media(max-width:750px){.consent-banner{grid-template-columns:1fr;gap:16px;padding:20px;bottom:10px;left:10px;right:10px}.consent-banner h2{font-size:22px}.consent-banner .consent-actions{flex-direction:row}.consent-actions button{flex:1 1 150px}.consent-dialog{padding:22px}.privacy-page h2{font-size:24px}}
@media(max-width:750px){.privacy-page h1{font-size:32px;hyphens:auto;overflow-wrap:normal;word-break:normal}.consent-banner .consent-actions button{flex-basis:100%}.consent-dialog .consent-actions button{flex-basis:100%}}
