.location-map-section{margin:0 auto 6rem;scroll-margin-top:7rem}.location-map-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}.location-map-column,.location-map-details{min-width:0}.location-map-stage{position:relative;min-height:29rem;isolation:isolate;overflow:hidden;background:var(--olive);border-radius:8px}.location-map-stage iframe{position:absolute;inset:0;border:0;width:100%;height:100%;pointer-events:none}.location-map-stage[data-map-interactive=true] iframe{pointer-events:auto}.location-map-preview{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:29rem;height:100%;padding:clamp(1.5rem,4vw,3.5rem);overflow:hidden;color:var(--cream)}.location-map-pattern{position:absolute;inset:0;z-index:-1;background:linear-gradient(31deg,transparent 44%,#f5f3ef12 0,#f5f3ef12 45%,transparent 0),linear-gradient(108deg,transparent 65%,#d0a64e2b 0,#d0a64e2b 66%,transparent 0)}.location-map-pin{display:grid;place-items:center;width:4.5rem;height:4.5rem;margin-bottom:2rem;border:1px solid #f5f3ef66;border-radius:50%;color:var(--gold)}.location-map-preview .eyebrow{margin:0 0 1rem}.location-map-preview h2{color:var(--cream);font-size:clamp(2.7rem,4.8vw,4.6rem);line-height:1.05;text-transform:uppercase;max-width:100%;overflow-wrap:anywhere}.location-map-preview-caption{font-size:.875rem;line-height:1.5;margin-top:1.1rem}.location-map-controls{padding-top:1.25rem;min-width:0}.location-map-controls p{font-size:.8125rem;line-height:1.65}.location-map-controls p a,.privacy-map-settings a{color:var(--olive-dark);text-decoration:underline;text-underline-offset:3px}.location-map-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.location-map-actions .button{flex:1;white-space:normal;text-align:center;font-size:.8125rem;min-height:48px;padding:12px 14px;max-width:100%}.location-map-scroll{background:transparent;color:var(--olive-dark);border:0;text-decoration:underline;text-underline-offset:3px;min-height:44px;font:inherit;font-size:.8125rem;cursor:pointer;padding:8px 0}.location-map-status{margin-top:1rem;padding:12px 0;border-top:1px solid var(--sand)}.location-map-status button{display:block;border:1px solid;border-radius:6px;background:transparent;padding:10px 14px;margin-top:10px;font:inherit;min-height:44px;cursor:pointer}.location-map-interaction{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:1rem 1rem 3.2rem;z-index:1}.location-map-interaction .button{font-size:.875rem;box-shadow:0 2px 8px #0002}.location-map-details>.eyebrow{color:var(--olive);margin-bottom:1.25rem}.location-map-details>h2{color:var(--olive);font-size:clamp(2.25rem,3.4vw,3rem);line-height:1.05;margin:0 0 1.25rem;overflow-wrap:break-word}.location-map-address{font-size:1rem;line-height:1.6}.location-map-details>h3{font-size:1.125rem;font-weight:700;margin:1.75rem 0 .5rem}.map-opening-hours{font-size:1rem;margin:0}.map-opening-hours>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--sand)}.map-opening-hours dd{margin:0;text-align:right}.location-map-details .contact-links{font-size:.9375rem;margin-block:1.75rem}.location-map-details .contact-links svg{flex:0 0 18px;color:var(--olive)}.location-map-details .action-row{gap:.75rem}.location-map-directions{white-space:normal}@media(max-width:850px){.location-map-section{margin-bottom:3.5rem}.location-map-grid{grid-template-columns:minmax(0,1fr);gap:2.25rem}.location-map-details{order:-1}.location-map-preview,.location-map-stage{min-height:23rem}.location-map-preview{padding:2rem}.location-map-preview h2{font-size:clamp(2.7rem,8.5vw,4.6rem)}.location-map-details>h2{font-size:clamp(2.25rem,7vw,3rem)}}@media(max-width:380px){.location-map-actions{flex-direction:column}.location-map-actions .button{width:100%}.location-map-preview{padding:1.5rem}.location-map-details .action-row .button{width:100%}}.privacy-map-settings{padding:1rem;border:1px solid var(--sand);border-radius:.6rem;margin-block:1rem}.privacy-map-settings h3{margin-top:0}.privacy-map-state{font-weight:700;color:var(--olive-dark)}.privacy-map-revoke{white-space:normal;min-height:2.75rem;font-size:.875rem}.location-map-status[data-loaded=true]{visibility:hidden;pointer-events:none}