/* ETERNITUM - Mobile Responsiveness Fixes */
/* Typography, spacing and touch-friendly improvements */

/* ===== iOS Input Zoom Fix ===== */
@media (max-width: 768px) {

    .form-control,
    .form-select,
    input[type="text"],
    input[type="email"],
    input[type="password"],
    textarea {
        font-size: 16px !important;
        /* Prevents iOS zoom on focus */
    }
}

/* ===== Mobile Typography & Spacing ===== */
@media (max-width: 768px) {

    /* Hero Section */
    .hero-section {
        padding: 160px 0 120px;
    }

    .hero-section h1 {
        font-size: 2.5rem !important;
        line-height: 1.2;
    }

    .hero-content-box {
        padding: 25px 20px !important;
    }

    .hero-sub,
    .hero-text.h5 {
        font-size: 1.1rem !important;
        line-height: 1.5;
    }

    /* Benefit Cards */
    .benefit-card {
        padding: 20px 15px !important;
        margin-bottom: 1rem;
    }

    .benefit-card h5 {
        font-size: 1rem;
    }

    .benefit-card p {
        font-size: 0.85rem;
    }

    /* Section Spacing */
    section {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    #featured {
        padding-top: 4rem !important;
    }

    /* Memorial Cards */
    .memorial-card-themed {
        margin-top: 50px;
    }

    .memorial-card-themed .card-title {
        font-size: 1.15rem;
    }

    .memorial-card-themed .card-epitaph {
        font-size: 0.8rem;
    }

    /* How It Works */
    .col-md-4.text-center h5 {
        font-size: 1.1rem;
    }

    .col-md-4.text-center p {
        font-size: 0.9rem;
    }

    /* Testimonials */
    .card.h-100.p-4 {
        padding: 1.25rem !important;
    }

    .card .text-muted.fst-italic {
        font-size: 0.9rem;
        line-height: 1.6;
    }

    /* Footer */
    footer {
        text-align: center;
    }

    footer .col-md-4,
    footer .col-md-2,
    footer .col-md-3 {
        margin-bottom: 2rem;
    }
}

/* ===== Small Mobile (< 576px) ===== */
@media (max-width: 576px) {

    .hero-section h1 {
        font-size: 4rem !important;
    }

    .btn-gold.btn-lg {
        padding: 12px 25px;
        font-size: 0.9rem;
    }

    .memorial-card-themed .card-img-wrapper {
        width: 80px;
        height: 80px;
        top: -40px;
    }

    .memorial-card-themed {
        margin-top: 45px;
        padding-top: 50px;
    }

    .sticky-save-bar span.text-muted {
        display: none !important;
    }
}

/* ===== Safe Area for Notched Phones ===== */
@supports (padding-top: env(safe-area-inset-top)) {
    .navbar {
        padding-top: calc(0.5rem + env(safe-area-inset-top));
    }

    .sticky-save-bar {
        padding-bottom: calc(12px + env(safe-area-inset-bottom));
    }
}

/* ===== Touch Friendly ===== */
@media (pointer: coarse) {

    .btn,
    .btn-gold,
    .nav-link,
    .dropdown-item {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }

    .tribute-option {
        min-height: 60px;
    }
}