/**
 * Brand Soluxions Inc. - Products Page Mobile Responsiveness
 * Dedicated styles for products.php mobile view
 */

/* ===== iPad / Large Tablets (max-width: 1024px) ===== */
@media (max-width: 1024px) {
    .products-showcase {
        padding: 60px 0;
    }
    
    .product-categories-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        margin-bottom: 50px;
        width: 100%;
        box-sizing: border-box;
    }
    
    .product-category-card {
        text-align: center;
        width: 100%;
        overflow: hidden;
    }
    
    .category-image-wrapper {
        padding: 12px;
        border-radius: 25px;
        margin-bottom: 12px;
        aspect-ratio: 1 / 1;
        width: 100%;
        box-sizing: border-box;
        background: var(--bg-white);
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    .category-image-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 15px;
        display: block;
        max-width: 100%;
    }
    
    .category-label {
        font-size: 16px;
        letter-spacing: 1.5px;
    }
    
    .products-description {
        max-width: 100%;
        padding: 0 20px;
    }
    
    .products-description p {
        font-size: 15px;
    }
}

/* ===== Tablet (max-width: 768px) ===== */
@media (max-width: 768px) {
    /* Products Hero */
    .products-hero {
        padding: 100px 0 50px;
    }
    
    .products-hero h1 {
        font-size: 28px;
    }
    
    .products-hero p {
        font-size: 15px;
    }
    
    /* Products Showcase Section */
    .products-showcase {
        padding: 40px 0;
    }
    
    .products-showcase .container {
        padding: 0 15px;
    }
    
    /* Products Grid - Keep 3 columns like desktop */
    .product-categories-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
        margin-bottom: 40px;
        width: 100%;
    }
    
    .product-category-card {
        text-align: center;
        width: 100%;
        overflow: hidden;
    }
    
    .category-image-wrapper {
        padding: 10px;
        border-radius: 20px;
        margin-bottom: 10px;
        aspect-ratio: 1 / 1;
        width: 100%;
        box-sizing: border-box;
        background: var(--bg-white);
        overflow: hidden;
    }
    
    .category-image-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 12px;
        display: block;
    }
    
    .category-label {
        font-size: 12px;
        letter-spacing: 1px;
    }
    
    /* Products Description */
    .products-description {
        max-width: 100%;
        padding: 0 10px;
    }
    
    .products-description p {
        font-size: 14px;
        line-height: 1.7;
        margin-bottom: 15px;
    }
    
    .products-description .description-main {
        font-size: 15px;
    }
    
    .products-description .description-compliance {
        padding: 20px;
        border-radius: 12px;
        margin-top: 20px;
    }
    
    /* CTA Section */
    .cta {
        padding: 50px 0;
    }
    
    .cta-title {
        font-size: 24px;
        margin-bottom: 12px;
    }
    
    .cta-text {
        font-size: 14px;
        margin-bottom: 25px;
        padding: 0 10px;
    }
    
    .cta-buttons {
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }
    
    .cta-buttons .btn {
        width: 100%;
        max-width: 250px;
        padding: 14px 30px;
    }
}

/* ===== Mobile Phones (max-width: 480px) ===== */
@media (max-width: 480px) {
    /* Products Hero */
    .products-hero {
        padding: 90px 0 35px;
    }
    
    .products-hero h1 {
        font-size: 22px;
    }
    
    .products-hero p {
        font-size: 13px;
    }
    
    /* Products Showcase */
    .products-showcase {
        padding: 30px 0;
    }
    
    .products-showcase .container {
        padding: 0 10px;
    }
    
    /* Products Grid - Keep 3 columns like desktop */
    .product-categories-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        margin-bottom: 25px;
        width: 100%;
    }
    
    .product-category-card {
        width: 100%;
        overflow: hidden;
    }
    
    .category-image-wrapper {
        padding: 6px;
        border-radius: 12px;
        margin-bottom: 6px;
        aspect-ratio: 1 / 1;
        width: 100%;
        box-sizing: border-box;
        background: var(--bg-white);
        overflow: hidden;
    }
    
    .category-image-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 8px;
        display: block;
    }
    
    .category-label {
        font-size: 9px;
        letter-spacing: 0.5px;
    }
    
    /* Products Description */
    .products-description {
        padding: 0 5px;
    }
    
    .products-description p {
        font-size: 13px;
        line-height: 1.6;
        margin-bottom: 12px;
    }
    
    .products-description .description-main {
        font-size: 14px;
    }
    
    .products-description .description-secondary {
        margin-bottom: 12px;
    }
    
    .products-description .description-compliance {
        padding: 15px;
        border-radius: 10px;
        margin-top: 15px;
        font-size: 13px;
    }
    
    /* CTA Section */
    .cta {
        padding: 40px 0;
    }
    
    .cta-title {
        font-size: 22px;
    }
    
    .cta-text {
        font-size: 13px;
    }
    
    .cta-buttons .btn {
        padding: 12px 25px;
        font-size: 13px;
    }
}

/* ===== Extra Small Phones (max-width: 360px) ===== */
@media (max-width: 360px) {
    /* Products Hero */
    .products-hero {
        padding: 85px 0 30px;
    }
    
    .products-hero h1 {
        font-size: 20px;
    }
    
    .products-hero p {
        font-size: 12px;
    }
    
    /* Products Showcase */
    .products-showcase {
        padding: 25px 0;
    }
    
    .products-showcase .container {
        padding: 0 8px;
    }
    
    /* Products Grid - Keep 3 columns */
    .product-categories-grid {
        gap: 6px;
        margin-bottom: 20px;
    }
    
    .product-category-card {
        overflow: hidden;
    }
    
    .category-image-wrapper {
        padding: 5px;
        border-radius: 10px;
        margin-bottom: 5px;
        aspect-ratio: 1 / 1;
        box-sizing: border-box;
        background: var(--bg-white);
        overflow: hidden;
    }
    
    .category-image-wrapper img {
        border-radius: 6px;
        display: block;
    }
    
    .category-label {
        font-size: 8px;
        letter-spacing: 0.3px;
    }
    
    /* Products Description */
    .products-description p {
        font-size: 12px;
        line-height: 1.55;
    }
    
    .products-description .description-main {
        font-size: 13px;
    }
    
    .products-description .description-compliance {
        padding: 12px;
        font-size: 12px;
    }
    
    /* CTA Section */
    .cta-title {
        font-size: 20px;
    }
    
    .cta-text {
        font-size: 12px;
    }
    
    .cta-buttons .btn {
        padding: 11px 20px;
        font-size: 12px;
    }
}

/* ===== iPhone SE and similar (375px width) ===== */
@media (max-width: 375px) {
    .products-showcase .container {
        padding: 0 8px;
    }
    
    .product-categories-grid {
        gap: 6px;
    }
    
    .product-category-card {
        overflow: hidden;
    }
    
    .category-image-wrapper {
        padding: 5px;
        aspect-ratio: 1 / 1;
        box-sizing: border-box;
        background: var(--bg-white);
        overflow: hidden;
    }
    
    .category-image-wrapper img {
        display: block;
    }
    
    .category-label {
        font-size: 8px;
    }
}
