/* ==========================================
   CONTACT PAGE RESPONSIVE STYLES
   ========================================== */

@media (max-width: 768px) {

    /* Hero Section */
    .hero {
        min-height: 15vh !important;
        padding: 2rem 1rem !important;
    }

    .hero h1 {
        font-size: 1.8rem !important;
    }

    /* Main Contact Grid - Stack Vertically */
    section[style*="grid-template-columns: 350px 1fr"]>div:first-child {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }

    /* Contact Info Panel */
    section div[style*="display: flex; flex-direction: column"] {
        order: 2;
    }

    /* Contact Form Panel */
    section div[style*="padding: 2.5rem"] {
        order: 1;
        padding: 1.5rem !important;
    }

    /* Form Grid - Stack Fields Vertically */
    form div[style*="grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }

    /* Form Header */
    div[style*="margin-bottom: 2.5rem"] h3 {
        font-size: 1.3rem !important;
    }

    div[style*="margin-bottom: 2.5rem"] p {
        font-size: 0.9rem !important;
    }

    /* Input Fields */
    input,
    select,
    textarea {
        font-size: 16px !important;
        /* Prevents zoom on iOS */
    }

    /* Contact Info Cards */
    div[style*="padding: 2rem; border-radius: 15px"] {
        padding: 1.5rem !important;
    }

    /* Icon Boxes */
    div[style*="width: 40px; height: 40px"] {
        width: 35px !important;
        height: 35px !important;
    }

    /* Text Sizes */
    h3 {
        font-size: 1.1rem !important;
    }

    h4 {
        font-size: 0.85rem !important;
    }

    h5 {
        font-size: 0.8rem !important;
    }

    /* Partner Box */
    div[style*="background: var(--primary-gradient)"] {
        padding: 1.5rem !important;
    }

    div[style*="background: var(--primary-gradient)"] h3 {
        font-size: 1rem !important;
    }

    div[style*="background: var(--primary-gradient)"] p {
        font-size: 0.8rem !important;
    }

    /* Map Section */
    div[style*="max-width: 1000px; margin: 4rem auto"] {
        margin: 3rem auto 0 auto !important;
        padding: 0 1rem !important;
    }

    .gmap_iframe,
    .gmap_canvas,
    .mapouter {
        height: 250px !important;
    }

    /* Button */
    .btn-primary {
        padding: 1rem !important;
        font-size: 0.9rem !important;
    }

    /* Success Message */
    div[style*="background: #e8f5e9"] {
        padding: 0.8rem 1rem !important;
        font-size: 0.85rem !important;
    }

    /* Form Footer Note */
    div[style*="margin-top: 2rem; padding-top: 1.5rem"] p {
        font-size: 0.8rem !important;
    }

    /* Section Padding */
    section[style*="padding: 4rem 0"] {
        padding: 2rem 0 !important;
    }

    /* Container Padding */
    .container {
        padding: 0 1rem !important;
    }
}

/* Small Mobile Devices */
@media (max-width: 480px) {
    .hero h1 {
        font-size: 1.5rem !important;
    }

    section div[style*="padding: 2.5rem"],
    section div[style*="padding: 1.5rem"] {
        padding: 1rem !important;
    }

    input,
    select,
    textarea {
        padding: 0.6rem 0.8rem !important;
    }

    .btn-primary {
        padding: 0.9rem !important;
    }
}