.contact-page-shell {
        width: 100%;
        max-width: 100%;
        overflow-x: clip;
        background: var(--theme-page-background, #fff);
    }

    .contact-page-shell .container,
    .contact-page-shell .row,
    .contact-page-shell [class*="col-"] {
        min-width: 0;
    }

    .contact-page-shell iframe,
    .contact-page-shell img,
    .contact-page-shell svg,
    .contact-page-shell video {
        max-width: 100%;
    }

    /* Hero Section */
    .hero-section {
        background: var(--theme-primary-fill, linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%));
        padding: 60px 0;
        text-align: center;
        color: var(--theme-banner-text, #fff);
        margin-bottom: 30px;
        position: relative;
        overflow-x: clip;
    }

    .hero-title {
        font-size: 2rem;
        font-weight: 700;
        margin-bottom: 10px;
    }

    .custom-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
        color: var(--theme-banner-muted-text, rgba(255,255,255,0.7));
    }
    
    .custom-breadcrumb .breadcrumb-item a {
        color: var(--theme-banner-muted-text, rgba(255,255,255,0.9));
        text-decoration: none;
    }

    .custom-breadcrumb .breadcrumb-item.active {
        color: var(--theme-banner-text, #fff);
    }

    /* Contact Cards */
    .contact-card, .contact-form-card {
        /* Gradient Border */
        border: 2px solid transparent;
        background: linear-gradient(var(--theme-surface-background, #fff), var(--theme-surface-background, #fff)) padding-box,
                    var(--theme-primary-fill, linear-gradient(135deg, var(--primary-color), var(--secondary-color))) border-box;
        border-radius: 16px;
        padding: 30px;
        height: 100%;
        transition: all 0.3s;
        box-shadow: 0 4px 6px rgba(0,0,0,0.02);
    }
    
    .contact-card {
        text-align: center;
    }

    .contact-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 20px rgba(0,0,0,0.05);
    }
    
    .contact-form-card {
        padding: 40px;
        box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    }

    .contact-icon-wrapper {
        width: 60px;
        height: 60px;
        background: rgba(var(--primary-rgb), 0.1);
        /* Fallback */
        background: var(--theme-surface-background-strong, #f8f9fa);
        color: var(--primary-color);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 24px;
        margin: 0 auto 20px;
    }

    .contact-title {
        font-weight: 700;
        margin-bottom: 10px;
        color: var(--theme-heading-text, #1f2937);
    }

    .contact-info {
        color: var(--theme-paragraph-text, #4b5563);
        margin-bottom: 0;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .contact-link {
        text-decoration: none;
        color: inherit;
        display: block;
        height: 100%;
    }

    /* Map */
    .map-container {
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 4px 15px rgba(0,0,0,0.05);
        height: 450px;
        background: #eee;
    }

    .map-container iframe {
        width: 100%;
        height: 100%;
        border: 0;
    }
    
    /* Form */
    .contact-form-card {
        padding: 40px;
        box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    }

    .form-control {
        padding: 12px 15px;
        border-radius: 8px;
        border: 1px solid var(--theme-surface-border, #eee);
        background-color: var(--theme-surface-background-strong, #fcfcfc);
        color: var(--theme-heading-text, #1f2937);
    }

    .form-control:focus {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.1);
        background-color: var(--theme-surface-background, #fff);
    }

    .form-control::placeholder {
        color: var(--theme-paragraph-text, #6b7280);
        opacity: .68;
    }
    
    .btn-submit {
        background: var(--theme-primary-button-bg, var(--primary-color));
        color: var(--theme-primary-button-text, #fff);
        border: none;
        padding: 12px 30px;
        border-radius: 8px;
        font-weight: 600;
        transition: all 0.3s;
        box-shadow: 0 4px 10px rgba(var(--primary-rgb), 0.2);
    }

    .btn-submit:hover {
        transform: translateY(-2px);
        box-shadow: 0 8px 20px rgba(var(--primary-rgb), 0.3);
        background: var(--theme-primary-button-hover-bg, var(--secondary-color));
        color: var(--theme-primary-button-hover-text, #fff);
    }
    
    /* Top Action Cards Gradient */
    .action-card-gradient {
        background: var(--theme-primary-fill, linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%));
        color: var(--theme-banner-text, #fff) !important;
        border: none;
        transition: transform 0.3s;
    }
    
    .action-card-gradient:hover {
        transform: translateY(-3px);
        color: var(--theme-banner-text, #fff) !important;
        box-shadow: 0 5px 15px rgba(var(--primary-rgb), 0.3);
    }
    
    .action-card-gradient i {
        color: var(--theme-banner-text, #fff) !important;
    }

    @media (max-width: 767.98px) {
        html,
        body {
            overflow-x: hidden;
        }

        .contact-page-shell {
            overflow-x: hidden;
        }

        .contact-page-shell .row {
            --bs-gutter-x: 1rem;
        }

        .contact-page-shell .contact-card,
        .contact-page-shell .contact-form-card {
            padding: 24px;
        }

        .contact-page-shell .map-container,
        .contact-page-shell .map-container > *,
        .contact-page-shell .map-container iframe {
            width: 100% !important;
            max-width: 100% !important;
        }

        .contact-page-shell .map-container {
            height: 320px;
        }
    }
.contact-glass-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, .05) 100%);
    backdrop-filter: blur(10px);
    border: 0;
}

.contact-social-button {
    width: 50px;
    height: 50px;
}
