/**
 * Shared responsive tweaks for public landing pages
 * (intro, contact, aboutbfs, about, privacy — not admin maps).
 */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    overflow-x: hidden;
}

img,
video {
    max-width: 100%;
    height: auto;
}

/* Comfortable tap targets on touch devices */
@media (hover: none) and (pointer: coarse) {
    a.intro-btn,
    a.contact-button,
    button.contact-submit,
    .aboutbfs-actions .contact-button,
    .btn-nav {
        min-height: 48px;
    }
}

@supports (padding: max(0px)) {
    body.intro-page,
    body.contact-page,
    .about-container {
        padding-left: max(0px, env(safe-area-inset-left));
        padding-right: max(0px, env(safe-area-inset-right));
    }
}

@media (max-width: 640px) {
    /* Prevent iOS zoom on focus */
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="tel"],
    input[type="number"],
    textarea,
    select {
        font-size: 16px !important;
    }
}
