:root {
    --neo-brand: #19566a;
    --neo-brand-dark: #123f4f;
    --neo-brand-soft: #e8f3f5;
    --neo-ink: #17323b;
    --neo-muted: #6b7f85;
}

body.index-page {
    background: #ffffff;
    color: var(--neo-ink);
    width: 100%;
    overflow-x: hidden !important;
}

body.index-page .mobile-nav {
    box-sizing: border-box;
    max-width: 100%;
}

/* The homepage uses product photography inside cards, not as a page background. */
.neo-category-section {
    padding: 0 0 72px !important;
    background: #ffffff !important;
}

.neo-bg-overlay,
.neo-bg-overlay {
    display: none !important;
}

.cleaning-header-wrapper,
.neo-header-box {
    max-width: 720px;
    margin-bottom: 34px !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 0 !important;
}

.cleaning-header-wrapper { display: none !important; }

.neo-pre-title,
.neo-pre-title {
    background: var(--neo-brand-soft) !important;
    color: var(--neo-brand) !important;
    border: 0 !important;
    box-shadow: none !important;
    letter-spacing: 1.2px;
}

.neo-main-title,
.neo-main-title {
    color: var(--neo-ink) !important;
    font-size: clamp(28px, 4vw, 40px) !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
}

.neo-main-title span,
.neo-main-title span {
    color: var(--neo-brand) !important;
    background: none !important;
    -webkit-text-fill-color: initial !important;
}

.neo-sub-desc,
.neo-header-box p {
    color: var(--neo-muted) !important;
    font-weight: 400 !important;
}

.neo-accent-bar,
.neo-title-line {
    background: var(--neo-brand) !important;
    border-radius: 0 !important;
}

.neo-category-grid {
    width: min(1186px, calc(100vw - 32px));
    max-width: none;
    margin: 0 auto;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.category-card-modern {
    height: 200px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: var(--neo-brand-dark) !important;
}

.cat-number-tag {
    display: none !important;
}

.cat-number-tag span { color: #ffffff !important; }

.cat-visual-wrapper {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    z-index: 0 !important;
}

.cat-visual-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 35, 43, .12), rgba(8, 31, 39, .78));
}

.cat-visual-wrapper img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
}

.cat-glass-content {
    position: absolute !important;
    inset: auto 12px 12px !important;
    z-index: 2 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.cat-title-text { font-size: 17px !important; text-shadow: 0 1px 3px rgba(0,0,0,.4); }
.cat-subtitle-text { color: #c8dde1 !important; }
.cat-explore-btn {
    display: inline-flex !important;
    gap: 8px !important;
    background: #ffffff !important;
    color: var(--neo-brand) !important;
    border-radius: 20px !important;
    padding: 6px 11px !important;
    margin-top: 5px !important;
}
.cat-icon-circle {
    width: 18px !important;
    height: 18px !important;
    background: var(--neo-brand-soft) !important;
    color: var(--neo-brand) !important;
    border-radius: 50% !important;
}

.category-item:nth-child(-n + 2) .category-card-modern {
    height: clamp(420px, 42vw, 620px) !important;
    aspect-ratio: auto;
}
.category-item:nth-child(-n + 2) .cat-glass-content {
    inset: 50% 20px auto !important;
    transform: translateY(-12%);
    text-align: center;
}
.category-item:nth-child(-n + 2) .cat-title-text { font-size: 23px !important; }
.category-item:nth-child(-n + 2) .cat-subtitle-text { margin-bottom: 16px !important; }
.category-item:nth-child(-n + 2) .cat-explore-btn { padding: 8px 28px !important; }

.category-item:nth-child(n + 3) .cat-glass-content {
    inset: 50% 20px auto !important;
    transform: translateY(-12%);
    text-align: center;
}
.category-item:nth-child(n + 3) .cat-subtitle-text {
    display: block !important;
    color: #e1f0f2 !important;
    margin-bottom: 12px !important;
}
.category-item:nth-child(n + 3) .cat-explore-btn {
    background: #ffffff !important;
    color: var(--neo-brand) !important;
    border-radius: 20px !important;
    padding: 7px 22px !important;
}
.category-item:nth-child(n + 3) .cat-icon-circle {
    display: flex !important;
}
.category-item:nth-child(n + 3) .category-card-modern {
    height: clamp(300px, 27vw, 380px) !important;
    aspect-ratio: auto;
}
.category-item:nth-child(n + 3) .cat-visual-wrapper { background: #edf4f5 !important; }
.category-item:nth-child(n + 3) .cat-visual-wrapper img {
    object-fit: cover !important;
    object-position: center center !important;
}
.category-item:nth-child(n + 3) .cat-visual-wrapper::after {
    background: linear-gradient(180deg, rgba(8, 31, 39, .04), rgba(8, 31, 39, .8));
}
.category-item:nth-child(n + 3) .cat-title-text {
    font-size: 20px !important;
    margin-bottom: 2px !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, .55);
}

.neo-bestsellers-section {
    padding: 72px 0 78px !important;
    background: #f4f8f9 !important;
}

.neo-filter-bar {
    background: #ffffff !important;
    border: 1px solid #dcebed !important;
    border-radius: 6px !important;
    box-shadow: 0 6px 18px rgba(25, 86, 106, .06) !important;
}

.neo-pill-btn.active,
.neo-pill-btn:hover {
    background: var(--neo-brand) !important;
    border-color: var(--neo-brand) !important;
    color: #ffffff !important;
}

.neo-card {
    border: 1px solid #e0ebed !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 22px rgba(25, 86, 106, .08) !important;
    background: #ffffff !important;
}

.neo-card:hover {
    box-shadow: 0 14px 28px rgba(25, 86, 106, .14) !important;
}

.neo-image-box { background: #f7fafb !important; }
.neo-card-content { padding: 18px !important; }
.neo-card h3 a { color: var(--neo-ink) !important; }
.neo-price { color: var(--neo-brand) !important; }
.neo-btn {
    background: var(--neo-brand) !important;
    border-color: var(--neo-brand) !important;
    border-radius: 4px !important;
}
.neo-btn:hover { background: var(--neo-brand-dark) !important; }
.neo-load-btn {
    background: var(--neo-brand) !important;
    border-radius: 4px !important;
}

.ft-footer {
    background: var(--neo-brand) !important;
    border-top: 0 !important;
    padding-top: 64px !important;
}
.ft-title::after { background: #9bcbd2 !important; border-radius: 0 !important; }
.ft-social a { background: rgba(255,255,255,.1) !important; }
.ft-social a:hover { background: #ffffff !important; color: var(--neo-brand) !important; }
.ft-bottom { background: var(--neo-brand-dark) !important; }

@media (max-width: 767px) {
    .neo-category-section,
    .neo-bestsellers-section { padding: 52px 0 58px !important; }
    .neo-category-section { padding-top: 0 !important; }
    .neo-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
    .category-card-modern { height: 180px !important; aspect-ratio: auto; }
    .category-item:nth-child(-n + 2) .category-card-modern { height: 260px !important; aspect-ratio: auto; }
    .category-item:nth-child(n + 3) .category-card-modern { height: 190px !important; aspect-ratio: auto; }
    .category-item:nth-child(-n + 2) .cat-glass-content { inset: 50% 10px auto !important; }
    .category-item:nth-child(-n + 2) .cat-title-text { font-size: 15px !important; }
    .category-item:nth-child(-n + 2) .cat-subtitle-text { display: none !important; }
    .category-item:nth-child(-n + 2) .cat-explore-btn { padding: 6px 16px !important; }
    .cat-glass-content { inset: auto 8px 8px !important; }
    .cat-title-text { font-size: 12px !important; }
    .cat-subtitle-text { display: none !important; }
    .cat-explore-btn { font-size: 9px !important; padding: 4px 8px !important; margin-top: 3px !important; }
    .cat-icon-circle { width: 15px !important; height: 15px !important; font-size: 12px !important; }
    .category-item:nth-child(n + 3) .cat-glass-content { inset: 50% 8px auto !important; }
    .category-item:nth-child(n + 3) .cat-subtitle-text { display: none !important; }
    .category-item:nth-child(n + 3) .cat-explore-btn { padding: 5px 14px !important; }
}
