/* Consent layer 40; contact shortcuts 20. Banner never changes document height. */
.privacy-banner-visible .contact-floats{visibility:hidden}
.footer-legal{grid-column:1/-1;border-top:1px solid #d6cfc1;padding-top:16px}
.footer-legal button{font:inherit;background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:.25em;min-height:44px;padding:0;cursor:pointer}
.footer-legal button:focus-visible{outline:3px solid #334b55;outline-offset:4px}
.privacy-banner{position:fixed;z-index:40;bottom:16px;left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:1120px;max-height:calc(100dvh - 32px);overflow:auto;background:#fbf8f0;color:#25323a;border:1px solid #b8b2a7;padding:24px 28px;box-shadow:0 8px 28px #25323a20;font:400 14px/1.6 'DM Sans',system-ui,sans-serif}
.privacy-banner[hidden],.privacy-banner [hidden],.map-placeholder[hidden],iframe[hidden]{display:none!important}
.privacy-banner h2{font:600 21px/1.35 'DM Sans',system-ui,sans-serif;margin:0 0 8px;letter-spacing:-.02em}.privacy-banner p{margin:0;color:#59615d;max-width:90ch}.privacy-banner a{color:#b33b38;text-decoration:underline;text-underline-offset:.25em}.privacy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.privacy-actions button,.privacy-link,.map-placeholder button{font:600 13px/1.4 'DM Sans',system-ui,sans-serif;min-height:44px;border:1px solid #59615d;border-radius:3px;padding:11px 16px;color:#25323a;background:#fbf8f0;cursor:pointer}.privacy-actions button:hover,.map-placeholder button:hover{border-color:#b33b38;color:#b33b38}.privacy-actions button:disabled{opacity:.6;cursor:wait}.privacy-actions button:active{transform:translateY(1px)}.privacy-options{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid #d6cfc1}.privacy-options label{display:flex;gap:12px;align-items:start;cursor:pointer}.privacy-options input{width:20px;height:20px;margin:3px 0 0;accent-color:#b33b38;flex-shrink:0}.privacy-options strong{display:block;font-size:14px}.privacy-options small{display:block;margin-top:5px;color:#59615d;font-size:12px;line-height:1.6}.privacy-banner .privacy-status{margin-top:10px;color:#8f2e2b;font-size:13px}.privacy-banner .privacy-status:empty{display:none}.privacy-banner :focus-visible,.privacy-link:focus-visible,.map-placeholder button:focus-visible{outline:3px solid #334b55;outline-offset:4px}.privacy-banner-visible .contact-float{bottom:max(20px,var(--consent-height,20px))}.privacy-link{padding:8px 0;min-height:44px;border:0;background:transparent;color:#b33b38;text-align:left;text-decoration:underline;text-underline-offset:.25em}.footer-legal{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;font-size:12px}.footer-legal a{display:inline-flex;align-items:center;min-height:44px}.map-placeholder{height:320px;padding:28px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px;background:#e8e7dd;color:#25323a}.map-placeholder strong{font:600 24px/1.3 'Barlow Condensed',sans-serif}.map-placeholder p{font:400 14px/1.7 'DM Sans',sans-serif!important;margin:0!important;padding:0!important}.map-placeholder a{font-size:14px;color:#b33b38;text-decoration:underline}
.legal-page{background:#f3eee4;color:#25323a;font:400 16px/1.8 'DM Sans',system-ui,sans-serif;margin:0}.legal-header{border-top:4px solid #b33b38;border-bottom:1px solid #d6cfc1;background:#fbf8f0;padding:20px max(20px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.legal-header img{width:220px;height:auto;display:block;mix-blend-mode:multiply}.legal-header a{color:#b33b38;font-size:14px;min-height:44px;display:inline-flex;align-items:center}.legal-document{max-width:800px;padding:48px 24px 80px;margin:auto}.legal-document h1{font:600 42px/1.15 'Barlow Condensed',sans-serif;margin:0 0 18px}.legal-document h2{font-size:22px;line-height:1.4;margin:36px 0 12px;font-weight:600}.legal-document p,.legal-document ul{margin:12px 0;color:#59615d}.legal-document a{color:#b33b38;text-underline-offset:.25em}.legal-document strong{color:#25323a}.legal-document table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}.legal-document th,.legal-document td{padding:14px 16px 14px 0;border-bottom:1px solid #d6cfc1;vertical-align:top}.legal-document .legal-table{overflow:auto}.legal-document caption{text-align:left;font-weight:600;padding:10px 0}.legal-document :focus-visible{outline:3px solid #334b55;outline-offset:4px}.legal-document address{font-style:normal}.legal-document .updated{font-size:13px}.legal-document footer{padding-top:32px;margin-top:32px;border-top:1px solid #d6cfc1}
@media(max-width:767px){.privacy-banner{bottom:12px;width:calc(100% - 24px);padding:20px;max-height:calc(100dvh - 24px);font-size:13px}.privacy-banner h2{font-size:19px}.privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.privacy-actions button{font-size:12px;white-space:normal;padding:10px}.privacy-options{grid-template-columns:1fr;gap:14px}.privacy-options label{min-height:44px}.privacy-actions [data-choice=accept]{grid-column:1/-1}.privacy-actions [data-choice=save]{grid-column:1/-1}.map-placeholder{height:320px;padding:24px}.legal-header img{width:180px}.legal-document{padding:32px 20px 80px}.legal-document h1{font-size:36px}.legal-document h2{font-size:20px}.legal-document th,.legal-document td{min-width:100px}.footer-legal{gap:4px 18px}}
