/* v29 — terminal cursor blink on inputs (animation, no color) */
.contact-terminal__input:focus {
    caret-color: auto;
    animation: terminal-caret 1s step-end infinite;
}

@keyframes terminal-caret {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0; }
}

/* v29 — monospace body font override inside terminal (no color) */
.contact-terminal__body {
    font-family: 'Courier New', Courier, monospace;
}

.contact-us-flex__min {
    min-width: 0;
}

.contact-us-media__cover {
    object-fit: cover;
}

/* contact-editorial — dt label width responsive (TW md:w-40 has no BS flex util) */
@media (min-width: 768px) {
    .contact-editorial__dt {
        width: 10rem;
        flex-shrink: 0;
    }
}

/* contact-editorial — decorative background symbol (inherited text color + opacity) */
.contact-editorial__decor::before {
    content: '@';
    font-size: 40vw;
    font-weight: 900;
    opacity: 0.04;
    position: absolute;
    top: -10%;
    right: -5%;
    line-height: 1;
    pointer-events: none;
    user-select: none;
}

.google-map-with-numbered-steps-how-to-find-us__iframe { width: 100%; min-height: 400px; }
@media (min-width: 768px) { .google-map-with-numbered-steps-how-to-find-us__iframe { min-height: 600px; } }

.google-map-route-steps__layout > * {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

@media (min-width: 992px) {
    .google-map-route-steps__aside {
        width: calc(40% - 0.75rem);
    }

    .google-map-route-steps__media {
        width: calc(60% - 0.75rem);
    }
}

/* iframe-normalized */
.google-map-with-numbered-steps-how-to-find-us__iframe {
    width: 100%;
    max-width: 100%;
    height: 400px;
    min-height: 400px;
    display: block;
    border: 0;
    box-sizing: border-box;
    vertical-align: bottom;
}

@media (min-width: 768px) {
    .google-map-with-numbered-steps-how-to-find-us__iframe {
        height: 600px;
        min-height: 600px;
    }
}


