/* ===================================================================
   CONTABLUE — CONTRAST & READABILITY FIXES
   Goal: every text element readable against its background
   Rule: dark bg → light text | light bg → dark text
   =================================================================== */

/* ===== RUPEE SYMBOL — simple, clean font (no Poppins-rendering quirks) ===== */
.price, .old-price, .original, .summary-row span,
.item-price .price, .item-price .original,
.cart-total, .order-total, .grand-total,
[class*="price"] {
    font-family: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif !important;
    font-feature-settings: 'tnum' 1, 'lnum' 1;
    font-variant-numeric: tabular-nums lining-nums;
}

/* ============================================================
   DARK BACKGROUND SECTIONS — force light text
   ============================================================ */

/* Announcement bar (dark) */
.announcement-bar, .announcement-bar * {
    color: #ffffff !important;
}
.announcement-bar i {
    color: #ff6b1a !important;
}

/* Hero slider (dark gradient background) */
.hero-slider, .hero-slider .hero-content,
.hero-slider h1, .hero-slider h2, .hero-slider p,
.hero-slider .hero-tag, .hero-slider span {
    color: #ffffff !important;
}
.hero-slider p { color: rgba(255,255,255,0.92) !important; }
.hero-slider .hero-tag,
.hero-slider .section-tag {
    color: #ffffff !important;
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(8px);
}

/* Page hero (every category/page hero) */
.page-hero, .page-hero * {
    color: #ffffff !important;
}
.page-hero h1 { color: #ffffff !important; }
.page-hero p { color: rgba(255,255,255,0.92) !important; }
.page-hero .section-tag,
.page-hero .section-tag.light {
    background: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    backdrop-filter: blur(8px);
}
.breadcrumb-light, .breadcrumb-light a, .breadcrumb-light span,
.breadcrumb-light i {
    color: rgba(255,255,255,0.92) !important;
}
.breadcrumb-light a:hover { color: #ff6b1a !important; }
.breadcrumb-light span:last-of-type { color: #ffd9b8 !important; font-weight: 600; }

/* Certification banner (dark) */
.cert-banner, .cert-banner * {
    color: #ffffff !important;
}
.cert-banner h2,
.cert-header h2 {
    color: #ffffff !important;
}
.cert-banner p,
.cert-header p {
    color: rgba(255,255,255,0.88) !important;
}
.cert-item h4 {
    color: #ffffff !important;
}
.cert-item i { color: #ff6b1a !important; }
.cert-banner .section-tag,
.cert-banner .section-tag.light {
    background: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
}

/* Sale timer (orange gradient — treat as dark) */
.sale-timer-section, .sale-timer-section * {
    color: #ffffff !important;
}
.sale-timer-text h2 { color: #ffffff !important; }
.sale-timer-text p { color: rgba(255,255,255,0.95) !important; }
.countdown-box .cd-num,
.countdown-box .cd-label { color: #ffffff !important; }

/* Offers hero (orange gradient — treat as dark) */
.offers-hero, .offers-hero * {
    color: #ffffff !important;
}
.offers-hero h1 { color: #ffffff !important; }
.offers-hero p { color: rgba(255,255,255,0.95) !important; }

/* Footer (dark) */
.footer { background: #0f172a !important; }
.footer, .footer * { color: #ffffff !important; }
.footer-col > p {
    color: #cbd5e1 !important; /* readable light gray on dark — was #aaa */
}
.footer-col h4 {
    color: #ffffff !important;
    opacity: 1 !important;
}
.footer-col ul li a {
    color: #cbd5e1 !important;
}
.footer-col ul li a:hover { color: #ff6b1a !important; }
.contact-info li {
    color: #cbd5e1 !important;
}
.contact-info i {
    color: #ff6b1a !important;
}
.footer-bottom p,
.footer-links a {
    color: #cbd5e1 !important;
}
.footer-links a:hover { color: #ff6b1a !important; }
.social-links a {
    color: #ffffff !important;
    background: rgba(255,255,255,0.10);
}
.social-links a:hover {
    background: #ff6b1a !important;
    color: #ffffff !important;
}

/* Premium product description (dark navy card) */
.desc-premium, .desc-premium * {
    color: #ffffff !important;
}
.desc-premium h3 { color: #ffffff !important; }
.desc-premium p { color: rgba(255,255,255,0.92) !important; }
.desc-premium ul li { color: rgba(255,255,255,0.92) !important; }
.desc-premium strong { color: #ffffff !important; }

/* Dark btn-cart / btn-dark */
.btn-cart, .btn-dark {
    color: #ffffff !important;
}
.btn-cart i { color: #ffffff !important; }

/* Newsletter section (orange gradient) */
.newsletter-section, .newsletter-section h2,
.newsletter-section p {
    color: #ffffff !important;
}
.newsletter-section h2 { color: #ffffff !important; }
.newsletter-section p { color: rgba(255,255,255,0.92) !important; }
.newsletter-form input { color: #0f172a !important; }
.newsletter-form input::placeholder { color: #64748b !important; }

/* Auth pages — split layout, side panel often dark */
.auth-side, .auth-info, .auth-brand,
.auth-side *, .auth-info *, .auth-brand * {
    color: #ffffff !important;
}
.auth-side h2, .auth-info h2, .auth-brand h2 {
    color: #ffffff !important;
}
.auth-side p, .auth-info p, .auth-brand p {
    color: rgba(255,255,255,0.92) !important;
}

/* Coupon-applied banner (success-green light bg → dark text) */
.coupon-applied { color: #065f46 !important; }
.coupon-applied .remove-coupon { color: #065f46 !important; }

/* Discount badge / Sale badge (red/orange bg → white text) */
.product-badge, .product-badge.new, .product-badge.sale,
.product-badge.popular, .product-badge.bestseller,
.product-badge.specialty, .product-badge.hot {
    color: #ffffff !important;
}

/* Offer card header (dark code block) */
.offer-code, .offer-code small {
    color: #ffffff !important;
}

/* ============================================================
   LIGHT BACKGROUND SECTIONS — force dark text
   ============================================================ */

/* Body & main content default */
body, main, section {
    color: #1e293b;
}

/* Headings on light backgrounds */
section:not(.page-hero):not(.cert-banner):not(.sale-timer-section):not(.offers-hero):not(.newsletter-section):not(.hero-slider) h1,
section:not(.page-hero):not(.cert-banner):not(.sale-timer-section):not(.offers-hero):not(.newsletter-section):not(.hero-slider) h2,
section:not(.page-hero):not(.cert-banner):not(.sale-timer-section):not(.offers-hero):not(.newsletter-section):not(.hero-slider) h3,
section:not(.page-hero):not(.cert-banner):not(.sale-timer-section):not(.offers-hero):not(.newsletter-section):not(.hero-slider) h4 {
    color: #0f172a;
}

/* Brands marquee section (light) */
.brands-section { background: #ffffff; }
.brands-section h2, .brands-section .section-tag {
    color: #0f172a;
}
.brand-item {
    color: #475569 !important;
    font-weight: 700;
}
.brand-item:hover { color: #ff6b1a !important; }

/* Testimonials section */
.testimonials-section { background: #f8fafc; }
.testimonials-section h2,
.testimonial-card h4 {
    color: #0f172a !important;
}
.testimonial-card p {
    color: #334155 !important;
    font-weight: 400;
}
.testimonial-author strong { color: #0f172a !important; }
.testimonial-author span { color: #64748b !important; }
.testimonial-card .stars { color: #fbbf24; }

/* About section (light) */
.about-section, .about-section h2, .about-text h2 {
    color: #0f172a;
}
.about-text p {
    color: #334155 !important;
}
.about-text strong { color: #0f172a !important; }
.stat-item h3 { color: #ff6b1a !important; font-weight: 800; }
.stat-item p { color: #475569 !important; }

/* Features section */
.features-section .feature-card { background: #ffffff; }
.feature-card h4 { color: #0f172a !important; }
.feature-card p { color: #475569 !important; }
.feature-icon i { color: #ff6b1a !important; }

/* Categories section */
.categories-section h2 { color: #0f172a !important; }
.categories-section > .container > .section-header > p,
.section-header > p { color: #475569 !important; }
.category-info h3 { color: #0f172a !important; }
.category-info p { color: #475569 !important; }
.shop-link { color: #ff6b1a !important; font-weight: 600; }

/* Product cards */
.product-card { background: #ffffff; }
.product-info .product-series { color: #ff6b1a !important; font-weight: 600; }
.product-info h3 { color: #0f172a !important; }
.product-desc { color: #475569 !important; }
.product-features span { color: #334155 !important; }
.product-features i { color: #10b981; }
.price { color: #0f172a !important; }
.old-price { color: #94a3b8 !important; }
.discount { color: #10b981 !important; }

/* Listing pages */
.listing-section { background: #f8fafc; }
.listing-toolbar { color: #0f172a; }
.results-count { color: #475569 !important; }
.results-count strong { color: #0f172a !important; }
.sort-select { color: #0f172a !important; }

/* Cart page */
.cart-section, .cart-page { background: #f8fafc; }
.cart-header h2 { color: #0f172a !important; }
.cart-item { background: #ffffff; }
.cart-item h3, .item-series, .item-meta {
    color: #0f172a !important;
}
.item-series { color: #ff6b1a !important; font-weight: 600; }
.item-meta { color: #64748b !important; }
.item-tags span { color: #475569 !important; }
.item-tags i { color: #10b981 !important; }
.qty-value { color: #0f172a !important; }

/* Order summary (light card) */
.order-summary { background: #ffffff; }
.order-summary h3 { color: #0f172a !important; }
.summary-row { color: #334155 !important; }
.summary-row.total { color: #0f172a !important; font-weight: 700; }
.summary-row.discount { color: #10b981 !important; }

/* Section tags (light bg variant) */
.section-tag {
    color: #ff6b1a !important;
    background: #fff4ed;
    font-weight: 700;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 11px;
    letter-spacing: 1.5px;
}
.section-tag.light {
    /* used on dark bgs — overridden above to be white text */
}

/* Forms (light) */
.form-group label { color: #0f172a !important; font-weight: 600; }
.form-group input, .form-group select, .form-group textarea {
    color: #0f172a !important;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0;
}
.form-group input::placeholder { color: #94a3b8 !important; }
.form-group input:focus { border-color: #ff6b1a; }

/* Auth form area (light side of split) */
.auth-form-wrapper, .auth-form, .auth-form * {
    color: #0f172a;
}
.auth-form h1, .auth-form h2, .auth-title {
    color: #0f172a !important;
}
.auth-form .subtitle, .auth-form > p {
    color: #475569 !important;
}
.auth-switch { color: #475569 !important; }
.auth-switch a { color: #ff6b1a !important; font-weight: 600; }
.divider-or { color: #64748b !important; }
.social-btn { color: #0f172a !important; }
.social-btn span { color: #0f172a !important; }

/* About / Contact / Returns / Offers page content (light) */
.about-content, .contact-content, .returns-section, .offers-grid {
    color: #1e293b;
}
.offer-card { background: #ffffff; }
.offer-card h3 { color: #0f172a !important; }
.offer-card .offer-desc { color: #475569 !important; }
.offer-card .offer-terms { color: #64748b !important; }
.return-step { background: #ffffff; }
.return-step h3 { color: #0f172a !important; }
.return-step p { color: #475569 !important; }
.policy-list li { color: #334155 !important; }

/* Specs premium (light card with dark text) */
.specs-premium h3 { color: #0f172a !important; }
.specs-premium h3 i { color: #ff6b1a !important; }
.spec-card .spec-label { color: #64748b !important; }
.spec-card .spec-value { color: #0f172a !important; }
.spec-card .spec-ico { color: #e55a0b !important; }

/* Product detail tabs */
.tab-btn { color: #475569 !important; }
.tab-btn.active { color: #0f172a !important; }
.tab-content { color: #1e293b; }
.tab-content h3 { color: #0f172a !important; }
.tab-content p { color: #334155 !important; }

/* Reviews section (light) */
.reviews-summary, .review-item { background: #ffffff; }
.rating-overview h2 { color: #0f172a !important; }
.review-item p { color: #334155 !important; }
.review-author { color: #0f172a !important; font-weight: 600; }

/* Newsletter form input on orange bg */
.newsletter-form input {
    color: #0f172a !important;
    background: #ffffff !important;
}

/* Search dropdowns, account pages — light bg */
.account-page, .orders-page, .order-success-page {
    color: #1e293b;
}
.account-page h1, .orders-page h1, .order-success-page h1,
.account-page h2, .orders-page h2, .order-success-page h2,
.account-page h3, .orders-page h3, .order-success-page h3 {
    color: #0f172a !important;
}

/* Header navigation — light bg, ensure dark text */
.header, .header-wrapper { background: #ffffff; }
.nav-menu > ul > li > a { color: #1e293b !important; }
.nav-menu > ul > li > a:hover { color: #e55a0b !important; }
.icon-link { color: #1e293b !important; }
.icon-link:hover { color: #ff6b1a !important; }
.mega-menu { background: #ffffff; }
.mega-menu a.mega-link { color: #1e293b !important; }
.mega-menu a.mega-link i { color: #ff6b1a !important; }
.mega-menu a.mega-link:hover { color: #e55a0b !important; }
.mega-menu .mega-title { color: #e55a0b !important; }

/* Listing banner (orange-tinted card on light bg) */
.listing-banner {
    background: linear-gradient(135deg, #fff4ed 0%, #ffe1cc 100%) !important;
    color: #0f172a !important;
}
.listing-banner h3 { color: #0f172a !important; }
.listing-banner p { color: #475569 !important; }
.listing-banner a { color: #e55a0b !important; font-weight: 600; }

/* Coupon section (orange tint — light) */
.coupon-section h4 { color: #e55a0b !important; }
.coupon-section p { color: #475569 !important; }
.coupon-section p strong { color: #e55a0b !important; }
.coupon-pill { color: #e55a0b !important; background: #ffffff !important; }
.coupon-pill:hover { color: #ffffff !important; background: #ff6b1a !important; }
.coupon-input { color: #0f172a !important; background: #ffffff !important; }
.coupon-input::placeholder { color: #94a3b8 !important; }

/* Replacement card (orange-tinted light) */
.returns-section [style*="primary-light"] {
    color: #0f172a !important;
}

/* FAQ accordion (white cards on light) */
details summary { color: #0f172a !important; }
details p { color: #475569 !important; }

/* Toolbar links / utility text */
.toolbar-right, .toolbar-right * { color: #1e293b; }
.filter-title { color: #0f172a !important; }
.filter-check label { color: #334155 !important; }

/* WhatsApp floating button (green bg → white icon) */
.whatsapp-float, .whatsapp-float i {
    color: #ffffff !important;
}

/* Visual cards on about page */
.visual-card { color: #0f172a; }
.visual-card span { color: #0f172a !important; }
.visual-card.dark, .visual-block.dark { color: #ffffff !important; }
.visual-card.dark span, .visual-block.dark span { color: #ffffff !important; }

/* About stats */
.about-stats { color: #0f172a; }

/* Generic light overrides */
.product-actions .action-btn {
    background: #ffffff !important;
    color: #0f172a !important;
}
.product-actions .action-btn:hover {
    background: #ff6b1a !important;
    color: #ffffff !important;
}

/* Share buttons */
.product-share .share-label { color: #64748b !important; }
.product-share .share-btn { color: #475569 !important; }
.product-share .share-btn.whatsapp:hover { color: #ffffff !important; }
.product-share .share-btn.facebook:hover { color: #ffffff !important; }
.product-share .share-btn.instagram:hover { color: #ffffff !important; }
.product-share .share-btn.copy:hover { color: #ffffff !important; }

/* Buttons */
.btn-primary { color: #ffffff !important; }
.btn-primary:hover { color: #ffffff !important; }
.btn-outline { color: #ffffff !important; border-color: #ffffff; background: transparent; }
.btn-outline:hover { background: #ffffff !important; color: #0f172a !important; }

/* On light bg, btn-outline becomes dark */
section:not(.page-hero):not(.hero-slider):not(.cert-banner):not(.sale-timer-section):not(.offers-hero):not(.newsletter-section) .btn-outline {
    color: #0f172a !important;
    border-color: #0f172a;
}
section:not(.page-hero):not(.hero-slider):not(.cert-banner):not(.sale-timer-section):not(.offers-hero):not(.newsletter-section) .btn-outline:hover {
    background: #0f172a !important;
    color: #ffffff !important;
}

/* Marquee text (announcement bar — already white via override above) */
.marquee span { color: #ffffff !important; }
.marquee i { color: #ff6b1a !important; }

/* Search bar / search button if any */
.search-bar input { color: #0f172a !important; }
.search-bar input::placeholder { color: #94a3b8 !important; }

/* ===================================================================
   FINAL OVERRIDES — Instagram, auth readability, marketing banners
   =================================================================== */

/* Instagram share hover */
.product-share .share-btn.instagram:hover {
    background: #E1306C !important;
    border-color: #E1306C !important;
    color: #ffffff !important;
}

/* Sign-in / sign-up page readability */
.auth-section {
    background: linear-gradient(135deg, #f8fafc 0%, #fff4ed 100%) !important;
}
.auth-wrapper {
    box-shadow: 0 24px 60px rgba(15,23,42,.12);
    border-radius: 24px;
    overflow: hidden;
    background: #ffffff;
}
.auth-visual {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 60%, #2b3748 100%) !important;
}
.auth-visual::before {
    background: radial-gradient(circle at top right, rgba(255,107,26,.28) 0%, transparent 55%) !important;
}
.auth-visual::after {
    background: radial-gradient(circle at bottom left, rgba(255,255,255,.08) 0%, transparent 45%) !important;
}
.auth-visual h2,
.auth-visual h2 .highlight,
.auth-visual p,
.auth-visual .auth-perks span,
.auth-visual .auth-perks li,
.auth-visual .auth-perks i {
    color: #ffffff !important;
}
.auth-visual p { color: rgba(255,255,255,.92) !important; }
.auth-visual .auth-perks span { color: rgba(255,255,255,.94) !important; }
.auth-form-wrapper {
    background: #ffffff !important;
    color: #0f172a !important;
}
.auth-form-wrapper h1,
.auth-form-wrapper h2,
.auth-form-wrapper label,
.auth-form-wrapper .auth-switch,
.auth-form-wrapper .forgot-link,
.auth-form-wrapper .divider-or,
.auth-form-wrapper p,
.auth-form-wrapper span {
    color: #0f172a !important;
}
.auth-form-wrapper > p,
.auth-form-wrapper .auth-switch,
.auth-form-wrapper .divider-or {
    color: #475569 !important;
}
.auth-form-wrapper .forgot-link,
.auth-form-wrapper .auth-switch a {
    color: #e55a0b !important;
    font-weight: 600;
}
.auth-form .input-wrapper {
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
}
.auth-form .input-wrapper:focus-within {
    border-color: #ff6b1a !important;
    box-shadow: 0 0 0 4px rgba(255,107,26,.12) !important;
}
.auth-form input {
    background: #ffffff !important;
    color: #0f172a !important;
}
.auth-form input::placeholder { color: #94a3b8 !important; }
.auth-form .input-icon,
.auth-form .password-toggle i { color: #64748b !important; }
.btn-auth {
    background: #0f172a !important;
    color: #ffffff !important;
}
.btn-auth:hover {
    background: #ff6b1a !important;
    color: #ffffff !important;
}
.social-btn.google, .social-btn.email {
    background: #ffffff !important;
    color: #0f172a !important;
    border-color: #e2e8f0 !important;
}
.social-btn.google:hover, .social-btn.email:hover {
    border-color: #0f172a !important;
    box-shadow: 0 10px 24px rgba(15,23,42,.10) !important;
}

/* Strong horizontal marketing banner for sub-category pages */
.listing-banner {
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 26px 30px !important;
    border-radius: 20px !important;
    overflow: hidden;
    background: linear-gradient(135deg, #ff6b1a 0%, #e55a0b 48%, #c14807 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 20px 45px rgba(229,90,11,.22);
    border: none !important;
}
.listing-banner::before {
    content: '';
    position: absolute;
    right: -40px;
    top: 50%;
    transform: translateY(-50%);
    width: 220px;
    height: 220px;
    background-image: url('../images/ca-icon.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: .13;
    pointer-events: none;
}
.listing-banner::after {
    content: 'LIMITED DEAL';
    position: absolute;
    top: 14px;
    right: 18px;
    background: rgba(0,0,0,.18);
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.6px;
    padding: 6px 10px;
    border-radius: 999px;
}
.listing-banner .listing-banner-text,
.listing-banner .listing-banner-text h3,
.listing-banner .listing-banner-text p,
.listing-banner .listing-banner-text a,
.listing-banner i {
    color: #ffffff !important;
}
.listing-banner .listing-banner-text { max-width: 760px; }
.listing-banner .listing-banner-text h3 {
    font-size: clamp(22px, 3vw, 30px) !important;
    font-weight: 800 !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.02em;
}
.listing-banner .listing-banner-text p {
    color: rgba(255,255,255,.92) !important;
    font-size: 15px !important;
    line-height: 1.65;
}
.listing-banner .listing-banner-text a {
    text-decoration: underline;
    font-weight: 700;
}
.listing-banner .btn,
.listing-banner .btn-light {
    background: #ffffff !important;
    color: #0f172a !important;
    border-color: #ffffff !important;
    font-weight: 700 !important;
    white-space: nowrap;
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
}
.listing-banner .btn:hover,
.listing-banner .btn-light:hover {
    background: #0f172a !important;
    color: #ffffff !important;
    border-color: #0f172a !important;
}
@media (max-width: 768px) {
    .listing-banner {
        flex-direction: column;
        align-items: flex-start;
        padding: 22px 20px !important;
    }
    .listing-banner::before {
        width: 140px;
        height: 140px;
        right: -20px;
        top: auto;
        bottom: -18px;
        transform: none;
    }
    .listing-banner::after { right: 14px; top: 12px; }
}

/* Make strikethrough MRP visually stronger everywhere */
.price-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.old-price {
    color: #94a3b8 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px;
    text-decoration-color: #94a3b8;
    font-weight: 500;
    opacity: 1 !important;
}
.discount {
    color: #10b981 !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
}
.product-info .price,
.product-price-box .current-price,
.item-price .price {
    color: #0f172a !important;
    font-weight: 800 !important;
}

/* Product detail share row instagram */
button.share-btn.instagram i { color: inherit !important; }


/* ===== CONTABLUE UNIFIED UX POLISH ===== */
:root {
    --surface: #ffffff;
    --surface-soft: #f8fafc;
    --surface-muted: #f1f5f9;
    --surface-accent: #fff7f0;
    --text-strong: #0f172a;
    --text-body: #334155;
    --ring: 0 0 0 3px rgba(255,107,26,0.18);
    --radius-sm: 12px;
    --radius-md: 16px;
    --radius-lg: 22px;
}

html { scroll-padding-top: 110px; }
body {
    background: var(--surface);
    color: var(--text-body);
}
main, section { position: relative; }
p, li, label, input, textarea, select { color: var(--text-body); }

h1, h2, h3, h4, h5, h6,
.account-header h1,
.section-header h2,
.product-info h3,
.product-detail-info h1,
.auth-form-wrapper h1 {
    color: var(--text-strong) !important;
}

.section-header {
    max-width: 760px;
    margin: 0 auto 34px;
}
.section-header h2 {
    margin-bottom: 10px;
    font-size: clamp(28px, 4vw, 42px);
}
.section-header p {
    font-size: 16px;
    line-height: 1.75;
    color: var(--text-body) !important;
}
.section-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

:where(a, button, input, select, textarea, summary, .color-option, .color-swatch, .size-btn, .size-filter-btn, .view-btn, .filter-chip, .btn-cart, .wishlist-btn):focus-visible {
    outline: none;
    box-shadow: var(--ring) !important;
    border-color: var(--primary) !important;
}

.btn,
.btn-cart,
.btn-auth,
.apply-filters-btn,
.pincode-input button,
.quantity-selector,
.filter-chip,
.sort-select,
.auth-form input,
.auth-form select,
.auth-form textarea,
.price-input input,
.pincode-input input,
.newsletter-form input {
    border-radius: 14px;
}

.btn,
.btn-auth,
.btn-cart,
.apply-filters-btn,
.pincode-input button {
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(15,23,42,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}
.btn:hover,
.btn-auth:hover,
.btn-cart:hover,
.apply-filters-btn:hover,
.pincode-input button:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(15,23,42,0.12);
}

.product-card,
.category-card,
.feature-card,
.testimonial-card,
.return-step,
.shipping-item,
.review-item,
.order-card,
.empty-orders,
.auth-wrapper,
.filter-sidebar,
.user-profile-card,
.account-main,
.cart-item,
.cart-summary,
.checkout-summary,
.payment-option,
.shipping-option,
.contact-card,
.contact-form,
.offer-card,
.details-card,
.policy-card,
.faq-card,
.returns-panel,
.returns-callout,
.reviews-summary,
.spec-table,
#orderModal > .cb-modal-dialog {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: 0 14px 34px rgba(15,23,42,0.06);
}

.product-card,
.category-card,
.feature-card,
.testimonial-card,
.return-step,
.shipping-item,
.review-item,
.order-card,
.contact-card,
.offer-card,
.faq-card,
.returns-panel,
.returns-callout {
    border-radius: 18px;
}
.product-card:hover,
.category-card:hover,
.feature-card:hover,
.testimonial-card:hover,
.return-step:hover,
.shipping-item:hover,
.review-item:hover,
.order-card:hover,
.offer-card:hover,
.returns-panel:hover,
.faq-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 38px rgba(15,23,42,0.11);
}

.product-image,
.main-image,
.thumbnail,
.category-image {
    border-color: var(--border) !important;
}
.main-image,
.product-image {
    background: linear-gradient(135deg, #fff8f2 0%, #ffe8d6 100%) !important;
}
.thumbnail {
    background: linear-gradient(135deg, #fff8f2 0%, #f8fafc 100%);
}

.product-info h3,
.product-card h3 {
    line-height: 1.35;
}
.product-desc,
.product-detail-desc,
.review-item p,
.shipping-item p,
.returns-section p,
.contact-card p,
.account-header p,
.tax-info,
.kf-item span {
    color: var(--text-body) !important;
}
.product-footer.single-line {
    gap: 14px;
    align-items: center;
}
.price-wrap {
    gap: 8px;
    flex-wrap: wrap;
}
.discount,
.discount-badge,
.product-badge {
    letter-spacing: 0.4px;
}

.filter-sidebar,
.account-main,
.cart-summary,
.checkout-summary,
.reviews-summary,
.returns-callout,
.returns-panel,
.empty-orders {
    border-radius: 20px;
}
.listing-toolbar {
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    box-shadow: 0 10px 28px rgba(15,23,42,0.05);
}
.active-filters {
    margin: 18px 0 24px;
    gap: 10px;
    flex-wrap: wrap;
}
.filter-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: var(--surface-accent);
    color: var(--primary-dark);
    border: 1px solid rgba(255,107,26,0.18);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
}
.filter-tag i {
    cursor: pointer;
}

.page-hero,
.page-hero.premium-hero {
    border-bottom-left-radius: 28px;
    border-bottom-right-radius: 28px;
}
.breadcrumb {
    background: #fbfcfe;
}
.breadcrumb, .breadcrumb a {
    color: var(--text-body);
}

.color-option,
.color-swatch {
    position: relative;
}
.color-option[data-color="White"],
.color-swatch[style*="#ffffff"] {
    box-shadow: inset 0 0 0 1px rgba(15,23,42,0.08), 0 0 0 2px var(--border);
}

.tab-content {
    padding-top: 10px;
}
.spec-table {
    overflow: hidden;
    border-radius: 18px;
}
.spec-table td {
    padding: 16px 18px;
}
.reviews-summary {
    align-items: center;
}
.shipping-item,
.review-item,
.return-step,
.returns-panel,
.returns-callout {
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.returns-panels,
.faq-stack {
    display: grid;
    gap: 18px;
}
.returns-panels {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    margin-top: 48px;
}
.returns-panel {
    padding: 30px;
}
.returns-panel h3 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.returns-panel--yes h3 { color: var(--success) !important; }
.returns-panel--no h3 { color: var(--danger) !important; }
.returns-callout {
    margin-top: 48px;
    padding: 32px;
    background: linear-gradient(135deg, var(--surface-accent), #ffffff);
    border: 1px solid rgba(255,107,26,0.24);
}
.returns-callout h3 {
    color: var(--primary-dark) !important;
    margin-bottom: 12px;
}
.returns-callout p { margin-bottom: 16px; }
.returns-faq {
    margin-top: 48px;
}
.returns-faq-title {
    text-align: center;
    margin-bottom: 24px;
}
.faq-card {
    padding: 0;
    overflow: hidden;
}
.faq-card summary {
    list-style: none;
    cursor: pointer;
    padding: 18px 22px;
    font-weight: 600;
    color: var(--text-strong) !important;
}
.faq-card summary::-webkit-details-marker { display: none; }
.faq-card summary::after {
    content: '+';
    float: right;
    font-size: 18px;
    color: var(--primary);
}
.faq-card[open] summary::after { content: '−'; }
.faq-card p {
    padding: 0 22px 18px;
    margin: 0;
    color: var(--text-body) !important;
}

.cb-modal {
    display: none;
    position: fixed;
    inset: 0;
    padding: 24px;
    background: rgba(15,23,42,0.72);
    backdrop-filter: blur(8px);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}
.cb-modal-dialog {
    width: min(100%, 760px);
    max-height: 90vh;
    overflow-y: auto;
    border-radius: 22px;
}
.cb-modal-content {
    padding: 32px;
}

#orderModalContent h2,
#orderModalContent h3,
#orderModalContent strong { color: var(--text-strong) !important; }
#orderModalContent p,
#orderModalContent span { color: var(--text-body); }
#orderModalContent button[style*="background:none"] {
    border-radius: 10px;
    padding: 6px;
}

.footer-grid {
    gap: 28px;
}
.footer-logo {
    filter: drop-shadow(0 8px 18px rgba(0,0,0,0.12));
}

@media (max-width: 991px) {
    .product-detail-grid,
    .reviews-summary,
    .shipping-grid {
        gap: 24px;
    }
    .cb-modal {
        padding: 16px;
    }
}

@media (max-width: 767px) {
    .section-header {
        margin-bottom: 24px;
    }
    .page-hero,
    .page-hero.premium-hero {
        border-bottom-left-radius: 22px;
        border-bottom-right-radius: 22px;
    }
    .action-buttons {
        display: grid;
        grid-template-columns: 1fr;
    }
    .action-buttons .wishlist-btn {
        width: 100%;
        border-radius: 16px;
        height: 54px;
    }
    .reviews-summary,
    .returns-panels,
    .faq-stack,
    .shipping-grid {
        grid-template-columns: 1fr;
    }
    .cb-modal-content {
        padding: 22px;
    }
}
