/* Responsive Styles for BrandStory SEO Delhi */

/* Tablet & Smaller Desktop (max-width: 1024px) */
@media (max-width: 1024px) {

    .why-buy-content,
    .how-to-buy-content,
    .buy-online-content,
    .claim-content {
        gap: 32px;
    }

    .why-buy-image {
        max-width: 100%;
    }

    .addon-explore-card {
        width: 30%;
    }

    .explore-more-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .seo-requirements-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .coverages-container {
        gap: 20px;
        padding: 0 1rem;
    }

    .coverage-card {
        height: 550px;
    }
}

/* Mobile Devices (max-width: 768px) */
@media (max-width: 768px) {
    .banner-section {
        padding-top: 0px !important;
    }

    /* Global Section Spacing */
    section,
    .why-buy-section,
    .why-buy-online-section,
    .buy-online-section,
    .how-to-buy-section,
    .claim-filing-section,
    .motor-rules-section,
    .addons-explore-section,
    .explore-more-section,
    .articles-section,
    .reviews-section,
    .faq-section,
    .coverages-section,
    .comparison-section {
        padding: 40px 0 !important;
        margin: 0 auto !important;
    }

    /* Container Padding */
    .container,
    .container-fluid,
    [class*="-container"] {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    /* Titles & Intros - Left Aligned */
    [class*="-title"] {
        font-size: 20px !important;
        line-height: 32px !important;
        /* margin-bottom: 12px !important; */
        text-align: left !important;
    }

    [class*="-intro"],
    [class*="-subtitle"] {
        font-size: 14px !important;
        line-height: 22px !important;
        margin-bottom: 24px !important;
        text-align: left !important;
    }

    /* CTA Buttons - Middle Aligned */
    [class*="-cta"],
    .seo-requirements-cta {
        display: flex !important;
        justify-content: center !important;
        width: 100% !important;
        text-align: center !important;
        margin-top: 32px !important;
    }

    [class*="-btn"],
    .seo-requirements-btn {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Grid/Flex Layouts - Force Single Column and Image Top */
    .why-buy-content,
    .why-buy-online-content,
    .buy-online-content,
    .how-to-buy-content,
    .claim-content,
    .coverages-container,
    .exclusive-benefits-content {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
    }

    /* Force all illustrations/images to the top */
    .why-buy-illustration,
    .buy-online-illustration,
    .how-to-buy-illustration,
    .claim-illustration,
    .features-illustration {
        order: -1 !important;
        position: static !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        margin-bottom: 16px !important;
    }

    .why-buy-image,
    .buy-online-image,
    .how-to-buy-image,
    .claim-illustration-image,
    .features-image {
        max-width: 80% !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    /* Typography Scaling */
    .feature-text,
    .buy-online-text,
    .how-to-buy-step-text,
    .claim-step-text,
    .why-buy-online-item-description,
    .motor-rules-list-text {
        font-size: 14px !important;
        line-height: 22px !important;
    }

    /* Component Specific Fixes */
    .how-to-buy-steps-container {
        height: auto !important;
        overflow-y: visible !important;
    }

    .addon-explore-card {
        width: 100% !important;
        margin-bottom: 16px !important;
    }

    .explore-more-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .articles-tabs,
    .claim-tabs,
    .faq-tabs,
    .explore-plans-tabs {
        overflow-x: auto !important;
        justify-content: flex-start !important;
        display: flex !important;
        white-space: nowrap !important;
        padding-bottom: 8px !important;
        -webkit-overflow-scrolling: touch;
    }

    .coverage-card {
        height: auto !important;
        overflow-y: visible !important;
        margin-bottom: 16px !important;
    }

    /* SEO Requirements Section */
    .seo-requirements-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
    }

    .seo-requirement-card {
        padding: 24px 20px !important;
    }

    /* Reviews Section */
    .reviews-header {
        flex-direction: column !important;
        text-align: center !important;
    }

    /* Table Fixes */
    .motor-rules-table-wrapper,
    .comparison-card {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .motor-rules-table,
    .comparison-table {
        min-width: 600px !important;
    }

    /* Exclusive Benefits Mobile Fix */
    .exclusive-benefits-container {
        padding: 24px 16px !important;
        margin-bottom: 40px !important;
        border-radius: 0 !important;
    }

    .exclusive-benefits-container .container {
        padding: 0 !important;
    }

    .exclusive-benefits-title {
        text-align: left !important;
        font-size: 20px !important;
        line-height: 28px !important;
        margin-bottom: 24px !important;
    }

    .benefits-card {
        padding: 24px 16px !important;
    }

    .card-header-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
        margin-bottom: 20px !important;
    }

    .card-label {
        margin-bottom: 0 !important;
        font-size: 14px !important;
        padding: 6px 14px !important;
    }

    .manager-badge {
        position: static !important;
        background: #f4f5f7 !important;
        padding: 8px 12px !important;
        border-radius: 8px !important;
        width: 100% !important;
        font-size: 13px !important;
    }

    .benefits-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        margin-top: 10px;
    }

    .benefit-item {
        text-align: left !important;
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
        padding-bottom: 16px !important;
        border-bottom: 1px solid #f0f0f0 !important;
        justify-content: space-between;
    }

    .benefit-item:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .benefit-value {
        font-size: 16px !important;
        margin: 0 !important;
        min-width: 80px !important;
        text-align: left !important;
        color: #E8532B !important;
    }

    .benefit-text {
        text-align: left !important;
        align-items: flex-end !important;
    }

    .benefit-text span {
        font-size: 13px !important;
        line-height: 18px !important;
    }
}

/* Small Phones (max-width: 480px) */
@media (max-width: 480px) {
    [class*="-title"] {
        font-size: 20px !important;
        line-height: 28px !important;
    }

    .why-buy-image,
    .buy-online-image,
    .how-to-buy-image,
    .claim-illustration-image {
        max-width: 90% !important;
    }

    .seo-requirement-card-title {
        font-size: 16px !important;
    }

    .motor-rules-table th,
    .motor-rules-table td {
        font-size: 12px !important;
        padding: 8px !important;
    }

    .coverages-container,
    .carousel-container {
        padding: 0 0 !important;
    }

    .addons-explore-grid {
        padding: 70px 0 0 !important;
        gap: 30px
    }

    h3.coverage-accordion-title,
    h3.accordion-title,
    h3.why-buy-online-item-title {
        font-size: 16px !important;
    }

    .claim-tabs {
        justify-content: center !important;
    }
}