.map-embed {
    position: relative;
    width: 100%;
    max-width: 880px;
    margin: 0 auto;
}

.map-embed iframe {
    width: 100%;
    height: 440px;
    border: 0;
    border-radius: var(--brand-radius);
    box-shadow: var(--brand-shadow-card);
    display: block;
}

.map-embed__placeholder {
    display: none;
    width: 100%;
    height: 440px;
    background: var(--brand-green-dark);
    color: var(--brand-white);
    border-radius: var(--brand-radius);
    padding: 32px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 18px;
}

.map-embed.is-blocked iframe { display: none; }
.map-embed.is-blocked .map-embed__placeholder { display: flex; }

.map-embed__link {
    color: var(--brand-green);
    text-decoration: underline;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

@media (max-width: 640px) {
    .map-embed iframe,
    .map-embed__placeholder { height: 320px; }
    .map-embed__placeholder { padding: 20px; }
}
