/* Google Map (click to load) */
.block-google-maps-large-block .map-block { position: relative; aspect-ratio: 16 / 9; min-height: 320px; overflow: hidden; border-radius: var(--radius-lg); background: var(--c-dark, #1a1a1a); background-image: linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px); background-size: 48px 48px; }
.block-google-maps-large-block .map-block__placeholder { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 1.25rem; padding: var(--gutter); text-align: center; color: var(--c-on-dark-muted, #b9b4ab); }
.block-google-maps-large-block .map-block__icon { display: inline-flex; width: 3rem; height: 3rem; color: var(--c-highlight, #c9a35b); }
.block-google-maps-large-block .map-block__icon svg { width: 100%; height: 100%; }
.block-google-maps-large-block .map-block__note { max-width: 36ch; font-size: var(--text-sm); }
.block-google-maps-large-block .map-block__external { font-size: var(--text-xs); letter-spacing: 0.1em; text-transform: uppercase; font-weight: 600; color: #fff; text-decoration-color: rgba(255, 255, 255, 0.4); }
.block-google-maps-large-block .map-block__external:hover { color: var(--c-highlight, #c9a35b); }
.block-google-maps-large-block .map-block iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.block-google-maps-large-block .map-block.is-loaded .map-block__placeholder { display: none; }
@media (max-width: 640px) {
    .block-google-maps-large-block .map-block { aspect-ratio: 4 / 3; }
}
