﻿:root {
    --cp-ink: #1f1a10;
    --cp-text: #3f3728;
    --cp-muted: #776b58;
    --cp-line: rgba(89, 69, 28, 0.16);
    --cp-soft: #fff7df;
    --cp-lime: #ffd84d;
    --cp-green: #f2b705;
    --cp-blue: #8f6400;
    --cp-dark: #fffdf6;
    --cp-dark-2: #fff6d8;
    --cp-panel: #ffffff;
    --cp-white: #ffffff;
    --cp-shadow: 0 18px 45px rgba(91, 68, 18, 0.12);
    --cp-font-display: Arial, Helvetica, sans-serif;
    --cp-font-body: Arial, Helvetica, sans-serif;
}

html {
    max-width: 100%;
    overflow-x: hidden;
}

body {
    background: var(--cp-dark);
    color: var(--cp-text);
    font-family: var(--cp-font-body);
    line-height: 1.65;
    max-width: 100%;
    overflow-x: hidden;
}

/* Lightweight local layout utilities replacing the external Bootstrap CDN on the public theme. */
.container {
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px;
    padding-left: 16px;
    padding-right: 16px;
    width: 100%;
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
}

.row > [class*="col-"] {
    padding-left: 12px;
    padding-right: 12px;
    width: 100%;
}

.g-4 { row-gap: 24px; }
.g-5 { row-gap: 32px; }
.align-items-center { align-items: center; }
.align-items-start { align-items: flex-start; }
.align-items-lg-center { align-items: center; }
.justify-content-between { justify-content: space-between; }
.d-flex { display: flex; }
.flex-wrap { flex-wrap: wrap; }
.flex-column { flex-direction: column; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 1rem; }
.ms-auto { margin-left: auto; }
.ms-2 { margin-left: 0.5rem; }
.ms-lg-3 { margin-left: 1rem; }
.mt-3 { margin-top: 1rem; }
.mt-lg-0 { margin-top: 0; }
.d-inline-block { display: inline-block; }

@media (min-width: 576px) {
    .col-sm-6 { flex: 0 0 auto; width: 50%; }
}

@media (min-width: 768px) {
    .col-md-6 { flex: 0 0 auto; width: 50%; }
}

@media (min-width: 992px) {
    .col-lg-2 { flex: 0 0 auto; width: 16.666667%; }
    .col-lg-3 { flex: 0 0 auto; width: 25%; }
    .col-lg-4 { flex: 0 0 auto; width: 33.333333%; }
    .col-lg-5 { flex: 0 0 auto; width: 41.666667%; }
    .col-lg-6 { flex: 0 0 auto; width: 50%; }
    .col-lg-7 { flex: 0 0 auto; width: 58.333333%; }
    .flex-lg-row { flex-direction: row; }
}

@media (min-width: 1200px) {
    .col-xl-4 { flex: 0 0 auto; width: 33.333333%; }
}

@keyframes fadeUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInLeft {
    from { opacity: 0; transform: translateX(-40px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes slideInRight {
    from { opacity: 0; transform: translateX(40px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes scaleIn {
    from { opacity: 0; transform: scale(0.9); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes wordReveal {
    from { opacity: 0; transform: translateY(100%); filter: blur(4px); }
    to { opacity: 1; transform: translateY(0); filter: blur(0); }
}

@keyframes menuItemIn {
    from { opacity: 0; transform: translateX(-8px); }
    to { opacity: 1; transform: translateX(0); }
}

a {
    color: var(--cp-green);
    text-decoration: none;
}

a:hover {
    color: var(--cp-blue);
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal;
}

.screen-reader-text:focus {
    background: var(--cp-white);
    clip: auto;
    clip-path: none;
    color: var(--cp-ink);
    height: auto;
    left: 1rem;
    padding: 0.75rem 1rem;
    top: 1rem;
    width: auto;
    z-index: 100000;
}

.btn {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 6px;
    color: inherit;
    cursor: pointer;
    display: inline-flex;
    gap: 0.45rem;
    font-weight: 700;
    justify-content: center;
    letter-spacing: 0;
    line-height: 1.25;
    padding: 0.78rem 1.1rem;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
}

.btn-primary {
    background: var(--cp-green);
    border-color: var(--cp-green);
    color: #fff;
}

.btn-outline-primary {
    border-color: var(--cp-green);
    color: var(--cp-green);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background: var(--cp-green);
    color: #fff;
}

.btn-outline-light {
    border-color: rgba(255, 255, 255, 0.54);
    color: #fff;
}

.btn-sm {
    font-size: 0.88rem;
    padding: 0.48rem 0.72rem;
}

.btn-lg {
    font-size: 1.02rem;
    padding: 0.95rem 1.28rem;
}

/* Autopolan-inspired B2B manufacturer homepage. */
.home .topbar {
    background: #07539c;
    color: #fff;
    font-size: 12px;
    padding: 6px 0;
}

.home .topbar a,
.home .topbar span {
    color: #fff;
}

.home .cleanpro-dark-nav {
    background: #fff;
    border-bottom: 1px solid #e6eaf0;
    box-shadow: 0 3px 18px rgba(18, 29, 42, 0.08);
    color: #151515;
}

.home .cleanpro-dark-nav .navbar-brand,
.home .cleanpro-dark-nav .nav-link,
.home .cleanpro-dark-nav .dropdown-toggle,
.home .cleanpro-dark-nav .brand-mark,
.home .cleanpro-dark-nav .brand-subtitle {
    color: #151515;
}

.home .cleanpro-dark-nav .brand-mark {
    font-size: 25px;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 0;
}

.home .cleanpro-dark-nav .brand-subtitle {
    font-size: 10px;
    letter-spacing: 0;
    text-transform: uppercase;
}

.home .cleanpro-dark-nav .navbar-nav {
    gap: 0;
}

.home .cleanpro-dark-nav .nav-link {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0;
    padding: 22px 12px;
    text-transform: uppercase;
}

.home .cleanpro-dark-nav .header-search-form {
    max-width: 154px;
}

.home .cleanpro-dark-nav .header-search-form .form-control {
    border-color: #d9dee7;
    border-radius: 0;
    font-size: 12px;
    height: 34px;
}

.home .cleanpro-dark-nav .header-search-form .btn {
    border-color: #d9dee7;
    border-radius: 0;
    color: #111;
    height: 34px;
    padding: 0 10px;
}

.home .cleanpro-dark-nav > .cleanpro-header-shell > .btn,
.home .main-nav .navbar-collapse > .btn {
    background: #101010;
    border-color: #101010;
    border-radius: 0;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    padding: 11px 16px;
    text-transform: uppercase;
}

.cp-auto-home {
    background: #f6f6f6;
    color: #222;
    font-family: Poppins, Arial, Helvetica, sans-serif;
}

.cp-auto-container {
    margin: 0 auto;
    max-width: 1180px;
    padding: 0 20px;
    width: 100%;
}

.cp-auto-section {
    padding: 74px 0;
}

.cp-auto-hero {
    background: #060606;
    min-height: 640px;
    overflow: hidden;
    position: relative;
}

.cp-auto-hero-media {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.76) 0%, rgba(0, 0, 0, 0.36) 50%, rgba(0, 0, 0, 0.68) 100%),
        var(--cp-auto-hero-image) center / cover no-repeat;
    inset: 0;
    position: absolute;
    transform: scale(1.01);
}

.cp-auto-hero-inner {
    align-items: center;
    display: flex;
    min-height: 640px;
    padding: 72px 20px;
    position: relative;
}

.cp-auto-hero-copy {
    color: #fff;
    margin: 0 auto;
    max-width: 760px;
    text-align: center;
}

.cp-auto-kicker,
.cp-auto-label {
    color: #07539c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0;
    margin: 0 0 12px;
    text-transform: uppercase;
}

.cp-auto-hero .cp-auto-kicker {
    color: #fff;
}

.cp-auto-hero h1 {
    color: #fff;
    font-size: clamp(42px, 6.2vw, 86px);
    font-weight: 500;
    letter-spacing: 0;
    line-height: 0.98;
    margin: 0 auto 20px;
    max-width: 780px;
}

.cp-auto-hero p:not(.cp-auto-kicker) {
    color: rgba(255, 255, 255, 0.88);
    font-size: 18px;
    font-weight: 500;
    margin: 0 auto;
    max-width: 740px;
}

.cp-auto-actions,
.cp-auto-contact-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
    margin-top: 30px;
}

.cp-auto-btn {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 0;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    justify-content: center;
    letter-spacing: 0;
    min-height: 46px;
    padding: 13px 22px;
    text-decoration: none;
    text-transform: uppercase;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.cp-auto-btn:hover,
.cp-auto-btn:focus {
    transform: translateY(-2px);
}

.cp-auto-btn-primary {
    background: #07539c;
    border-color: #07539c;
    color: #fff;
}

.cp-auto-btn-dark {
    background: #111;
    border-color: #111;
    color: #fff;
}

.cp-auto-btn-ghost {
    background: transparent;
    border-color: currentColor;
    color: inherit;
}

.cp-auto-hero .cp-auto-btn-ghost {
    color: #fff;
}

.cp-auto-split {
    align-items: center;
    display: grid;
    gap: 56px;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.92fr);
}

.cp-auto-split-reverse {
    grid-template-columns: minmax(320px, 0.92fr) minmax(0, 1fr);
}

.cp-auto-text h2,
.cp-auto-section-title h2,
.cp-auto-contact-info h2,
.cp-auto-cta h2,
.cp-auto-whatsapp h2,
.cp-auto-faq h2 {
    color: #0f1720;
    font-size: clamp(30px, 3vw, 48px);
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.06;
    margin: 0 0 20px;
}

.cp-auto-text p,
.cp-auto-section-title p:not(.cp-auto-label),
.cp-auto-contact-info li,
.cp-auto-market-grid p,
.cp-auto-whatsapp p,
.cp-auto-faq p {
    color: #555f6b;
    font-size: 15px;
    line-height: 1.76;
}

.cp-auto-metrics {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 28px;
}

.cp-auto-metrics strong {
    color: #07539c;
    display: block;
    font-size: 26px;
    font-weight: 900;
    line-height: 1;
}

.cp-auto-metrics span {
    color: #56616d;
    display: block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    margin-top: 7px;
    text-transform: uppercase;
}

.cp-auto-video-card,
.cp-auto-image-panel {
    background: #101010;
    border-radius: 6px;
    box-shadow: 0 24px 60px rgba(19, 30, 44, 0.16);
    min-height: 300px;
    overflow: hidden;
    position: relative;
}

.cp-auto-video-card img,
.cp-auto-image-panel img {
    display: block;
    height: 100%;
    min-height: 300px;
    object-fit: cover;
    opacity: 0.78;
    width: 100%;
}

.cp-auto-video-bar {
    align-items: center;
    background: rgba(0, 0, 0, 0.78);
    bottom: 0;
    color: #fff;
    display: flex;
    font-size: 13px;
    font-weight: 700;
    gap: 9px;
    left: 0;
    padding: 13px 16px;
    position: absolute;
    right: 0;
}

.cp-auto-build-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 24px 0 28px;
}

.cp-auto-build-grid span {
    align-items: center;
    background: #fff;
    border: 1px solid #e3e7ed;
    color: #1d2732;
    display: flex;
    font-size: 13px;
    font-weight: 800;
    gap: 10px;
    padding: 14px;
}

.cp-auto-build-grid i {
    color: #07539c;
    font-size: 19px;
}

.cp-auto-process,
.cp-auto-products,
.cp-auto-faq {
    background: #fff;
}

.cp-auto-section-title {
    margin: 0 auto 34px;
    max-width: 820px;
    text-align: center;
}

.cp-auto-process-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.cp-auto-process-card,
.cp-auto-service-card,
.cp-auto-market-grid article,
.cp-auto-product-card,
.cp-auto-form-card,
.cp-auto-whatsapp-card {
    background: #fff;
    border: 1px solid #e4e8ee;
    border-radius: 6px;
    box-shadow: 0 14px 34px rgba(18, 29, 42, 0.08);
}

.cp-auto-process-card {
    min-height: 252px;
    padding: 24px 18px;
    text-align: center;
}

.cp-auto-process-card span {
    color: #b4bfcb;
    display: block;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.cp-auto-process-card i,
.cp-auto-service-card i {
    color: #07539c;
    display: block;
    font-size: 36px;
    margin-bottom: 18px;
}

.cp-auto-process-card h3,
.cp-auto-service-card h3,
.cp-auto-market-grid h3,
.cp-auto-product-card h3,
.cp-auto-form-card h3 {
    color: #17202a;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.25;
    margin: 0 0 10px;
}

.cp-auto-process-card p,
.cp-auto-service-card p,
.cp-auto-product-card p {
    color: #5d6874;
    font-size: 13px;
    line-height: 1.65;
    margin: 0;
}

.cp-auto-contact {
    background:
        linear-gradient(90deg, rgba(3, 12, 24, 0.88), rgba(7, 83, 156, 0.74)),
        url('../images/cleanpro-hero-factory.jpg') center / cover no-repeat;
}

.cp-auto-contact-grid {
    align-items: start;
    display: grid;
    gap: 48px;
    grid-template-columns: minmax(0, 0.82fr) minmax(340px, 1fr);
}

.cp-auto-contact-info,
.cp-auto-contact-info h2,
.cp-auto-contact-info .cp-auto-label {
    color: #fff;
}

.cp-auto-contact-info ul {
    list-style: none;
    margin: 28px 0 0;
    padding: 0;
}

.cp-auto-contact-info li {
    align-items: center;
    color: rgba(255, 255, 255, 0.9);
    display: flex;
    gap: 12px;
    margin-bottom: 14px;
}

.cp-auto-contact-info a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cp-auto-contact-info i {
    color: #fff;
}

.cp-auto-contact-actions {
    justify-content: flex-start;
}

.cp-auto-form-card {
    padding: 28px;
}

.cp-auto-form-card .rfq-form {
    margin: 0;
}

.cp-auto-form-card input,
.cp-auto-form-card textarea,
.cp-auto-form-card select,
.cp-auto-form-card .form-control,
.cp-auto-form-card .form-select {
    border: 1px solid #dce2e8;
    border-radius: 0;
    min-height: 44px;
}

.cp-auto-form-card textarea {
    min-height: 110px;
}

.cp-auto-form-card .btn-primary,
.cp-auto-form-card button[type="submit"] {
    background: #07539c;
    border-color: #07539c;
    border-radius: 0;
    color: #fff;
    font-weight: 800;
}

.cp-auto-service-grid,
.cp-auto-market-grid,
.cp-auto-product-grid {
    display: grid;
    gap: 22px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cp-auto-service-card {
    min-height: 292px;
    padding: 28px 24px;
}

.cp-auto-service-card a,
.cp-auto-mini-link {
    color: #07539c;
    display: inline-block;
    font-size: 13px;
    font-weight: 900;
    margin-top: 18px;
    text-transform: uppercase;
}

.cp-auto-category-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-bottom: 28px;
}

.cp-auto-category-strip a {
    background: #f2f5f8;
    border: 1px solid #e1e7ee;
    color: #18222d;
    font-size: 12px;
    font-weight: 800;
    padding: 10px 14px;
    text-transform: uppercase;
}

.cp-auto-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cp-auto-product-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
}

.cp-auto-product-thumb {
    align-items: center;
    background: #f0f3f6;
    display: flex;
    min-height: 230px;
}

.cp-auto-product-thumb img {
    aspect-ratio: 4 / 3;
    display: block;
    object-fit: cover;
    width: 100%;
}

.cp-auto-product-placeholder {
    align-items: center;
    color: #07539c;
    display: flex;
    font-size: 64px;
    justify-content: center;
    min-height: 230px;
    width: 100%;
}

.cp-auto-product-card > div {
    padding: 22px;
}

.cp-auto-product-card h3 a {
    color: #17202a;
}

.cp-auto-cta {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.86), rgba(0, 0, 0, 0.42)),
        var(--cp-auto-hero-image, url('../images/cleanpro-hero-factory.jpg')) center / cover no-repeat;
    color: #fff;
    padding: 78px 0;
    text-align: center;
}

.cp-auto-cta p {
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 10px;
}

.cp-auto-cta h2 {
    color: #fff;
    margin-left: auto;
    margin-right: auto;
    max-width: 760px;
}

.cp-auto-market-grid article {
    min-height: 180px;
    padding: 26px;
}

.cp-auto-faq-grid {
    display: grid;
    gap: 50px;
    grid-template-columns: 0.45fr 1fr;
}

.cp-auto-faq-list {
    display: grid;
    gap: 12px;
}

.cp-auto-faq-list details {
    background: #f8fafc;
    border: 1px solid #e3e8ef;
    border-radius: 6px;
    padding: 18px 20px;
}

.cp-auto-faq-list summary {
    color: #15202b;
    cursor: pointer;
    font-size: 16px;
    font-weight: 800;
}

.cp-auto-faq-list p {
    margin: 14px 0 0;
}

.cp-auto-whatsapp {
    background: #f6f6f6;
}

.cp-auto-whatsapp-card {
    align-items: center;
    display: grid;
    gap: 28px;
    grid-template-columns: 1fr auto;
    padding: 36px;
}

@media (max-width: 1199px) {
    .cp-auto-process-grid,
    .cp-auto-service-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cp-auto-market-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .home .cleanpro-header-shell {
        padding-left: 16px;
        padding-right: 16px;
    }

    .home .cleanpro-dark-nav .navbar-toggler {
        border-color: #d7dde5;
        color: #111;
    }

    .home .cleanpro-dark-nav .navbar-toggler-icon {
        filter: invert(1);
    }

    .home .main-nav .navbar-collapse {
        align-items: stretch;
        background: #fff;
        padding: 12px 0 18px;
    }

    .home .cleanpro-dark-nav .nav-link {
        padding: 12px 0;
    }

    .cp-auto-section {
        padding: 56px 0;
    }

    .cp-auto-hero,
    .cp-auto-hero-inner {
        min-height: 560px;
    }

    .cp-auto-split,
    .cp-auto-split-reverse,
    .cp-auto-contact-grid,
    .cp-auto-faq-grid,
    .cp-auto-whatsapp-card {
        grid-template-columns: 1fr;
    }

    .cp-auto-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cp-auto-whatsapp-card {
        text-align: left;
    }
}

@media (max-width: 767px) {
    .home .topbar {
        display: none;
    }

    .cp-auto-container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .cp-auto-hero,
    .cp-auto-hero-inner {
        min-height: 520px;
    }

    .cp-auto-hero h1 {
        font-size: 42px;
    }

    .cp-auto-hero p:not(.cp-auto-kicker) {
        font-size: 15px;
    }

    .cp-auto-actions,
    .cp-auto-contact-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .cp-auto-btn {
        width: 100%;
    }

    .cp-auto-metrics,
    .cp-auto-build-grid,
    .cp-auto-process-grid,
    .cp-auto-service-grid,
    .cp-auto-market-grid,
    .cp-auto-product-grid {
        grid-template-columns: 1fr;
    }

    .cp-auto-video-card,
    .cp-auto-image-panel,
    .cp-auto-video-card img,
    .cp-auto-image-panel img {
        min-height: 240px;
    }

    .cp-auto-form-card,
    .cp-auto-whatsapp-card {
        padding: 22px;
    }
}

.topbar {
    background: #050807;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.9rem;
    overflow: hidden;
    padding: 0.65rem 0;
}

.topbar a {
    color: rgba(255, 255, 255, 0.92);
    white-space: nowrap;
}

.cleanpro-header-shell {
    align-items: center;
    display: flex;
    margin-left: 0;
    margin-right: 0;
    max-width: none;
    padding-left: 0;
    padding-right: 24px;
    width: 100%;
}

.main-nav .cleanpro-header-shell {
    box-sizing: border-box;
}

.main-nav .navbar-collapse {
    align-items: center;
    display: flex;
    flex-grow: 1;
    justify-content: flex-end;
}

.navbar-expand-md .navbar-collapse {
    display: flex;
}

.navbar-toggler {
    align-items: center;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 6px;
    color: #fff;
    cursor: pointer;
    display: none;
    height: 42px;
    justify-content: center;
    padding: 0.5rem;
    width: 46px;
}

.navbar-toggler-icon {
    background:
        linear-gradient(#fff, #fff) 50% 25% / 22px 2px no-repeat,
        linear-gradient(#fff, #fff) 50% 50% / 22px 2px no-repeat,
        linear-gradient(#fff, #fff) 50% 75% / 22px 2px no-repeat;
    display: block;
    height: 24px;
    width: 24px;
}

.cleanpro-grouped-nav {
    margin-left: auto !important;
}

.header-search-form,
.main-nav .btn-primary {
    flex: 0 0 auto;
}

.topbar .cleanpro-header-shell {
    padding-left: 0;
}

.main-nav {
    background: rgba(5, 8, 7, 0.94);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
}

.navbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 0.7rem;
    padding-top: 0.7rem;
    position: relative;
}

.navbar-nav {
    display: flex;
    flex-direction: row;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-item {
    list-style: none;
    margin: 0;
}

.navbar-brand {
    align-items: flex-start;
    color: var(--cp-white);
    display: inline-flex;
    flex-direction: column;
    font-weight: 800;
    line-height: 1.05;
    margin-left: 0;
    padding-left: 0;
    text-decoration: none;
}

.brand-mark {
    font-size: 1.55rem;
}

.brand-subtitle {
    color: var(--cp-green);
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
}

.navbar .nav-link {
    color: rgba(255, 255, 255, 0.9);
    display: block;
    font-weight: 700;
    overflow-wrap: normal;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    text-decoration: none;
    white-space: nowrap;
}

.navbar .dropdown {
    position: relative;
}

.cleanpro-grouped-nav .nav-link {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    min-height: 42px;
    padding-left: 0.9rem;
    padding-right: 0.9rem;
    position: relative;
    transition: background 220ms ease, color 220ms ease, transform 220ms ease;
}

.cleanpro-grouped-nav .nav-link:hover,
.cleanpro-grouped-nav .nav-link:focus,
.cleanpro-nav-group:hover > .nav-link {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    transform: translateY(-1px);
}

.cleanpro-nav-menu {
    backdrop-filter: blur(18px);
    background:
        radial-gradient(circle at top right, rgba(33, 167, 122, 0.2), transparent 42%),
        rgba(8, 12, 11, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
    min-width: 230px;
    opacity: 0;
    padding: 0.55rem;
    transform: translateY(10px) scale(0.98);
    transform-origin: top center;
    transition: opacity 180ms ease, transform 220ms cubic-bezier(0.16, 1, 0.3, 1), visibility 180ms ease;
    visibility: hidden;
}

.dropdown-menu {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

@media (min-width: 768px) {
    .dropdown-menu {
        left: 0;
        position: absolute;
        top: 100%;
        z-index: 1040;
    }
}

.cleanpro-nav-menu .dropdown-item {
    border-radius: 6px;
    color: rgba(255, 255, 255, 0.78);
    display: block;
    font-weight: 700;
    opacity: 0;
    padding: 0.72rem 0.85rem;
    position: relative;
    text-decoration: none;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.cleanpro-nav-menu .dropdown-item:hover,
.cleanpro-nav-menu .dropdown-item:focus {
    background: rgba(33, 167, 122, 0.16);
    color: #fff;
    transform: translateX(3px);
}

.nav-link-group {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
}

.nav-link-group .nav-link-parent {
    padding-right: 0.35rem;
}

.nav-link-group .dropdown-toggle-split {
    border: 0;
    color: var(--cp-white);
    min-height: 42px;
    padding-left: 0.25rem;
    padding-right: 0.6rem;
}

.nav-link-group .dropdown-toggle-split:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(19, 121, 91, 0.22);
    outline: 0;
}

.header-search-form {
    flex: 0 1 230px;
}

.header-search-form .input-group {
    flex-wrap: nowrap;
}

.header-search-form .form-control {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.16);
    color: #fff;
    min-width: 0;
}

.header-search-form .form-control::placeholder {
    color: rgba(255, 255, 255, 0.54);
}

.header-search-form .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    width: 42px;
}

.hero-section {
    background:
        linear-gradient(90deg, rgba(18, 48, 43, 0.88), rgba(18, 48, 43, 0.54), rgba(18, 48, 43, 0.12)),
        var(--hero-image) center/cover no-repeat;
    color: var(--cp-white);
    min-height: 650px;
    padding: 7rem 0 8rem;
    position: relative;
    overflow: hidden;
}

.hero-section::before,
.listing-hero-image::before {
    background: linear-gradient(90deg, rgba(18, 48, 43, 0.88), rgba(18, 48, 43, 0.54), rgba(18, 48, 43, 0.12));
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.hero-section-image,
.listing-hero-bg-image {
    height: 100%;
    inset: 0;
    object-fit: cover;
    position: absolute;
    width: 100%;
    z-index: 0;
}

.hero-section > .container,
.listing-hero-image > .container {
    position: relative;
    z-index: 2;
}

.hero-content {
    max-width: 760px;
}

.eyebrow {
    color: var(--cp-green);
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 0.75rem;
    text-transform: uppercase;
}

.hero-section .eyebrow {
    color: var(--cp-lime);
}

.hero-section h1,
.section-heading h2,
.oem-section h2,
.rfq-section h2,
.page-header h1 {
    color: var(--cp-ink);
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.08;
}

.hero-section h1 {
    color: var(--cp-white);
    font-size: clamp(2.5rem, 6vw, 5.25rem);
    max-width: 840px;
}

.hero-section p {
    color: rgba(255, 255, 255, 0.88);
    font-size: 1.18rem;
    max-width: 690px;
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 2rem;
}

.cleanpro-elix-hero {
    background:
        linear-gradient(90deg, rgba(4, 19, 17, 0.76), rgba(4, 19, 17, 0.35), rgba(4, 19, 17, 0.04)),
        var(--hero-image) center/cover no-repeat;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 0px);
    overflow: hidden;
    padding: 0;
}

.cleanpro-elix-hero::before {
    background: linear-gradient(90deg, rgba(4, 19, 17, 0.8), rgba(4, 19, 17, 0.34), rgba(4, 19, 17, 0.05));
}

.cleanpro-elix-hero-inner {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh;
    padding-top: clamp(72px, 10vh, 128px);
    position: relative;
    z-index: 2;
}

.cleanpro-elix-copy {
    max-width: min(1080px, 100%);
    padding-bottom: clamp(2rem, 8vh, 5rem);
    position: relative;
    z-index: 3;
}

.cleanpro-elix-eyebrow {
    animation: fadeIn 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.2s both;
    color: rgba(255, 255, 255, 0.75);
    font-family: var(--cp-font-body);
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.cleanpro-elix-title {
    color: var(--cp-white);
    font-family: var(--cp-font-display);
    font-size: 48px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.02;
    margin: 0;
    max-width: 1160px;
}

.cleanpro-title-line {
    display: block;
}

.cleanpro-reveal-word {
    display: inline-block;
    margin-right: 0.16em;
    overflow: hidden;
    vertical-align: top;
}

.cleanpro-reveal-word > span {
    animation: wordReveal 0.7s cubic-bezier(0.16, 1, 0.3, 1) var(--word-delay, 300ms) both;
    display: inline-block;
}

.cleanpro-reveal-word .is-dim {
    color: rgba(255, 255, 255, 0.45);
}

.cleanpro-inline-capsule {
    animation: scaleIn 1s cubic-bezier(0.16, 1, 0.3, 1) 1s both;
    display: none;
    margin-left: 0.12em;
    vertical-align: middle;
}

.cleanpro-inline-capsule img {
    border-radius: 999px;
    height: clamp(60px, 10vw, 160px);
    object-fit: cover;
    width: clamp(98px, 16vw, 260px);
}

.cleanpro-elix-actions {
    align-items: center;
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.6s both;
    display: flex;
    gap: clamp(1.25rem, 4vw, 50px);
    margin-top: clamp(2rem, 6vw, 75px);
}

.cleanpro-elix-actions p {
    color: rgba(255, 255, 255, 0.92);
    font-family: var(--cp-font-body);
    font-size: clamp(0.95rem, 1.25vw, 1.15rem);
    letter-spacing: 0;
    line-height: 1.45;
    margin: 0;
    max-width: 330px;
}

.cleanpro-elix-primary {
    --bs-btn-bg: #050807;
    --bs-btn-border-color: #050807;
    --bs-btn-hover-bg: #151a18;
    --bs-btn-hover-border-color: #151a18;
    align-items: center;
    border-radius: 6px;
    display: inline-flex;
    font-family: var(--cp-font-body);
    font-size: clamp(1rem, 1.8vw, 1.5rem);
    font-weight: 500;
    gap: 0.75rem;
    height: clamp(56px, 6vw, 72px);
    justify-content: center;
    letter-spacing: 0;
    min-width: clamp(220px, 24vw, 310px);
}

.cleanpro-mobile-product,
.cleanpro-desktop-product {
    pointer-events: none;
}

.cleanpro-mobile-product {
    animation: scaleIn 1s cubic-bezier(0.16, 1, 0.3, 1) 0.8s both;
    display: block;
    margin: -2rem auto -180px;
    max-width: 1296px;
    position: relative;
    width: 180%;
    z-index: 2;
}

.cleanpro-mobile-product img,
.cleanpro-desktop-product img {
    filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.35));
    height: auto;
    object-fit: contain;
    width: 100%;
}

.cleanpro-desktop-product {
    animation: scaleIn 1s cubic-bezier(0.16, 1, 0.3, 1) 0.7s both;
    bottom: -24%;
    display: none;
    opacity: 0.42;
    position: absolute;
    right: clamp(-560px, -34vw, -240px);
    width: clamp(520px, 58vw, 980px);
    z-index: 1;
}

.cleanpro-elix-panels {
    display: grid;
    grid-template-columns: 1fr;
    position: relative;
    z-index: 4;
}

.cleanpro-elix-panel {
    min-height: 210px;
    overflow: hidden;
    padding: clamp(1.5rem, 4vw, 2.5rem);
    position: relative;
}

.cleanpro-elix-panel-assessment {
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.9s both;
    background: #ecedec;
    color: #050807;
}

.cleanpro-elix-panel-assessment h2 {
    color: #050807;
    font-family: var(--cp-font-display);
    font-size: clamp(1.55rem, 3vw, 2.2rem);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.1;
    max-width: 360px;
}

.cleanpro-elix-panel-assessment a {
    color: #050807;
    display: inline-block;
    font-family: var(--cp-font-body);
    letter-spacing: 0;
    margin-top: 1.25rem;
    text-decoration: underline;
}

.cleanpro-panel-mark {
    bottom: 0;
    height: 100%;
    mix-blend-mode: multiply;
    object-fit: cover;
    opacity: 0.42;
    position: absolute;
    right: 0;
    width: 42%;
}

.cleanpro-elix-panel-carousel {
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 1s both;
    background: #fefdf9;
    color: #050807;
}

.cleanpro-elix-carousel-card {
    align-items: center;
    display: flex;
    gap: 1rem;
    inset: clamp(1.5rem, 4vw, 2.5rem);
    opacity: 0;
    position: absolute;
    transform: translateY(1rem);
    transition: opacity 400ms ease, transform 400ms ease;
}

.cleanpro-elix-carousel-card.is-active {
    opacity: 1;
    transform: translateY(0);
}

.cleanpro-elix-icon {
    align-items: center;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 48px;
    height: 48px;
    justify-content: center;
    width: 48px;
}

.cleanpro-elix-icon.is-black { background: #050807; }
.cleanpro-elix-icon.is-green { background: #146c43; }
.cleanpro-elix-icon.is-cyan { background: #0e7490; }
.cleanpro-elix-icon.is-amber { background: #b45309; }

.cleanpro-elix-carousel-card p {
    color: rgba(0, 0, 0, 0.8);
    font-family: var(--cp-font-body);
    font-size: clamp(0.95rem, 1.4vw, 1.1rem);
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
}

.cleanpro-elix-dots {
    bottom: 1.4rem;
    display: flex;
    gap: 0.4rem;
    left: clamp(1.5rem, 4vw, 2.5rem);
    position: absolute;
    right: clamp(1.5rem, 4vw, 2.5rem);
}

.cleanpro-elix-dots span {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 999px;
    display: block;
    flex: 1 1 0;
    height: 2px;
}

.cleanpro-elix-dots span.is-active {
    background: #050807;
}

.cleanpro-elix-panel-proof {
    align-items: center;
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 1.1s both;
    background: #050807;
    display: flex;
    gap: clamp(1rem, 2vw, 1.5rem);
}

.cleanpro-elix-panel-proof img {
    flex: 0 0 auto;
    height: clamp(82px, 9vw, 142px);
    object-fit: contain;
    width: clamp(120px, 14vw, 208px);
}

.cleanpro-elix-panel-proof strong {
    color: #fff;
    display: block;
    font-family: var(--cp-font-body);
    font-size: clamp(1.5rem, 3vw, 2.2rem);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
}

.cleanpro-elix-panel-proof p {
    color: rgba(255, 255, 255, 0.62);
    font-family: var(--cp-font-body);
    font-size: clamp(0.95rem, 1.5vw, 1.1rem);
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0.4rem 0 0;
    max-width: 260px;
}

.home .site-header {
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 30;
}

.home .topbar {
    background: rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(14px);
}

.home .main-nav {
    background: transparent !important;
    border-bottom: 0;
    box-shadow: none;
    padding: 1rem 0;
}

.home .navbar-brand,
.home .brand-mark,
.home .navbar .nav-link,
.home .nav-link-group .dropdown-toggle-split {
    color: #fff;
}

.home .brand-mark {
    font-family: var(--cp-font-display);
    font-size: clamp(1.5rem, 2.4vw, 1.9rem);
    font-weight: 500;
    letter-spacing: 0;
}

.home .brand-subtitle,
.home .navbar .nav-link:hover,
.home .navbar .nav-link:focus {
    color: rgba(255, 255, 255, 0.72);
}

.home .header-search-form .form-control {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.22);
    color: #fff;
}

.home .header-search-form .form-control::placeholder {
    color: rgba(255, 255, 255, 0.64);
}

.home .header-search-form .btn,
.home .main-nav .btn-primary {
    background: rgba(0, 0, 0, 0.72);
    border-color: rgba(0, 0, 0, 0.72);
    color: #fff;
}

.home .navbar-toggler {
    border-color: rgba(255, 255, 255, 0.4);
}

.home .navbar-toggler-icon {
    filter: invert(1);
}

@media (min-width: 576px) {
    .cleanpro-inline-capsule {
        display: inline-block;
    }

    .cleanpro-elix-title {
        font-size: 80px;
        line-height: 0.9;
    }

    .listing-hero h1,
    .product-detail-hero h1,
    .not-found-section h1 {
        font-size: 80px;
        line-height: 0.9;
    }

    .cleanpro-mobile-product {
        margin-bottom: -220px;
        width: 151%;
    }
}

@media (min-width: 768px) {
    .cleanpro-elix-title {
        font-size: 110px;
        line-height: 0.86;
    }

    .listing-hero h1,
    .product-detail-hero h1,
    .not-found-section h1 {
        font-size: 96px;
        line-height: 0.9;
    }

    .cleanpro-elix-panels {
        grid-template-columns: 2fr 1fr 2fr;
    }
}

@media (min-width: 992px) {
    .cleanpro-elix-title {
        font-size: 108px;
        line-height: 0.85;
    }

    .listing-hero h1,
    .product-detail-hero h1,
    .not-found-section h1 {
        font-size: 112px;
        line-height: 0.88;
    }

    .cleanpro-elix-hero-inner {
        padding-top: clamp(96px, 14vh, 152px);
    }

    .cleanpro-mobile-product {
        display: none;
    }

    .cleanpro-desktop-product {
        display: block;
    }

    .cleanpro-elix-copy {
        padding-bottom: clamp(7rem, 16vh, 13rem);
    }

    .cleanpro-elix-panel {
        min-height: 236px;
    }
}

@media (min-width: 1200px) {
    .cleanpro-elix-title {
        font-size: 124px;
        line-height: 0.84;
    }

    .listing-hero h1,
    .product-detail-hero h1,
    .not-found-section h1 {
        font-size: 124px;
        line-height: 0.88;
    }
}

@media (max-width: 1399.98px) and (min-width: 992px) {
    .navbar .nav-link {
        padding-left: 0.42rem;
        padding-right: 0.42rem;
    }

    .navbar .header-search-form {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .cleanpro-header-shell {
        padding-left: 16px;
        padding-right: 16px;
    }

    .navbar-toggler {
        display: inline-flex;
        margin-left: auto;
    }

    .navbar-expand-md .navbar-collapse {
        display: none;
        flex-basis: 100%;
        width: 100%;
    }

    .navbar-expand-md .navbar-collapse.show {
        display: block;
    }

    .navbar-nav {
        flex-direction: column;
    }

    .home .navbar-collapse {
        background:
            radial-gradient(circle at top right, rgba(33, 167, 122, 0.14), transparent 34%),
            rgba(5, 8, 7, 0.98);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 8px;
        box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
        margin-top: 0.75rem;
        max-height: calc(100vh - 150px);
        overflow-y: auto;
        padding: 0.85rem;
    }

    .main-nav .navbar-collapse {
        background:
            radial-gradient(circle at top right, rgba(33, 167, 122, 0.14), transparent 34%),
            rgba(5, 8, 7, 0.98);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 8px;
        box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
        margin-top: 0.75rem;
        max-height: calc(100vh - 150px);
        overflow-y: auto;
        padding: 0.85rem;
    }

    .cleanpro-grouped-nav {
        gap: 0.25rem !important;
        list-style: none;
        margin: 0 !important;
        padding: 0;
        width: 100%;
    }

    .cleanpro-grouped-nav .nav-item {
        list-style: none;
        width: 100%;
    }

    .cleanpro-grouped-nav .nav-link {
        border-radius: 6px;
        justify-content: space-between;
        min-height: 42px;
        padding: 0.7rem 0.85rem;
        width: 100%;
    }

    .cleanpro-nav-menu {
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow: none;
        display: block;
        float: none;
        margin: 0.25rem 0 0.6rem;
        min-width: 0;
        opacity: 1;
        padding: 0.35rem;
        position: static !important;
        transform: none !important;
        visibility: visible;
        width: 100%;
    }

    .cleanpro-nav-menu .dropdown-item {
        opacity: 1;
        padding: 0.58rem 0.7rem;
        transform: none;
    }

    .header-search-form {
        margin-left: 0 !important;
        max-width: none;
        width: 100%;
    }

    .header-search-form .input-group {
        width: 100%;
    }

    .main-nav .btn-primary {
        justify-content: center;
        margin-left: 0 !important;
        width: 100%;
    }

    .cleanpro-elix-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .cleanpro-elix-primary {
        min-width: min(100%, 310px);
        width: 100%;
    }

    .cleanpro-elix-copy {
        padding-bottom: 2rem;
    }

    .cleanpro-elix-title {
        font-size: 42px;
        line-height: 1.08;
        max-width: 100%;
    }

    .cleanpro-title-line {
        display: inline;
    }

    .cleanpro-reveal-word {
        margin-right: 0.12em;
    }
}

@media (max-width: 767.98px) {
    body.home .site-header {
        position: relative !important;
    }

    body.home .hero-section.cleanpro-elix-hero,
    body.home main .hero-section.cleanpro-elix-hero {
        display: block !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    body.home .hero-section.cleanpro-elix-hero::before,
    body.home .hero-section.cleanpro-elix-hero::after {
        opacity: 0.16 !important;
    }

    body.home .hero-section.cleanpro-elix-hero .hero-section-image {
        opacity: 0.06 !important;
    }

    body.home .cleanpro-elix-hero-inner,
    body.home .hero-section .cleanpro-elix-hero-inner {
        display: block !important;
        min-height: 0 !important;
        padding: 1.4rem 0 2rem !important;
    }

    body.home .cleanpro-elix-copy,
    body.home .hero-content.cleanpro-elix-copy {
        display: block !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    body.home .cleanpro-elix-eyebrow {
        margin-bottom: 1rem !important;
    }

    body.home .hero-section .cleanpro-elix-title.cleanpro-swinter-title,
    body.home .cleanpro-elix-title.cleanpro-swinter-title,
    body.home .cleanpro-swinter-title {
        display: block !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    body.home .cleanpro-swinter-title-main,
    body.home .cleanpro-swinter-title-sub {
        animation: none !important;
        color: #111827 !important;
        display: block !important;
        filter: none !important;
        max-width: 100% !important;
        opacity: 1 !important;
        overflow-wrap: normal !important;
        text-shadow: none !important;
        transform: none !important;
        white-space: normal !important;
        word-break: normal !important;
    }

    body.home .cleanpro-swinter-title-main {
        font-size: clamp(2.3rem, 10vw, 3.1rem) !important;
        line-height: 1.02 !important;
    }

    body.home .cleanpro-swinter-title-sub {
        color: #4b5563 !important;
        font-size: clamp(1.45rem, 6.6vw, 2rem) !important;
        line-height: 1.08 !important;
        margin-top: 0.35rem !important;
    }

    body.home .cleanpro-elix-actions,
    body.home .cleanpro-hero-kpis,
    body.home .cleanpro-hero-service-map,
    body.home .cleanpro-elix-panels {
        display: grid !important;
        max-width: 100% !important;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
    }

    body.home .cleanpro-elix-actions {
        gap: 0.85rem !important;
        margin-top: 1.2rem !important;
    }

    body.home .cleanpro-elix-actions p {
        display: block !important;
        max-width: 100% !important;
    }

    body.home .cleanpro-hero-kpis,
    body.home .cleanpro-hero-service-map,
    body.home .cleanpro-elix-panels {
        grid-template-columns: 1fr !important;
        margin-top: 1rem !important;
    }

    body.home .cleanpro-elix-panel-carousel {
        min-height: 128px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .navbar-toggler {
        display: none;
    }

    .main-nav .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
        flex-grow: 1;
        justify-content: flex-end;
    }

    .cleanpro-grouped-nav {
        align-items: center;
        flex-direction: row;
        margin-left: auto !important;
    }

    .cleanpro-grouped-nav .nav-link {
        padding-left: 0.55rem;
        padding-right: 0.55rem;
    }

    .navbar .header-search-form {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .cleanpro-elix-title {
        font-size: 24px;
        line-height: 1.14;
        max-width: calc(100vw - 24px);
        overflow-wrap: normal;
        word-break: normal;
    }

    .hero-section .cleanpro-elix-title {
        font-size: 24px;
        line-height: 1.14;
    }

    .cleanpro-elix-copy {
        overflow: hidden;
    }

    .cleanpro-title-line {
        column-gap: 0.12em;
        display: flex;
        flex-wrap: wrap;
    }

    .cleanpro-reveal-word,
    .cleanpro-reveal-word > span {
        display: inline-block;
        overflow: visible;
    }

    .cleanpro-reveal-word {
        margin-right: 0;
        max-width: 100%;
    }

    .cleanpro-elix-hero-inner {
        min-height: auto;
        padding-top: 132px;
    }

    .cleanpro-elix-actions {
        margin-top: 1.6rem;
    }

    .cleanpro-mobile-product {
        margin: 0 auto -90px;
        width: 112%;
    }

    .cleanpro-elix-panel-proof {
        align-items: flex-start;
        flex-direction: column;
    }
}

.stats-band {
    background: var(--cp-white);
    margin-top: -3.75rem;
    position: relative;
    z-index: 2;
}

.stats-grid {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    box-shadow: var(--cp-shadow);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.stat-item {
    border-right: 1px solid var(--cp-line);
    padding: 2rem;
}

.stat-item:last-child {
    border-right: 0;
}

.stat-item strong {
    color: var(--cp-green);
    display: block;
    font-size: 2.25rem;
    font-weight: 800;
    line-height: 1;
}

.stat-item span {
    color: var(--cp-muted);
    display: block;
    font-weight: 700;
    margin-top: 0.55rem;
}

.section-block,
.oem-section,
.rfq-section,
.content-page {
    padding: 5.5rem 0;
}

.content-page {
    background: var(--cp-dark);
}

.content-page.has-listing-hero {
    padding-top: 0;
}

.muted-section {
    background: #0a0f0d;
}

.section-heading {
    margin-bottom: 2.5rem;
    max-width: 760px;
}

.section-heading-with-action {
    align-items: end;
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    max-width: none;
}

.section-heading-with-action > div {
    max-width: 760px;
}

.section-heading h2,
.oem-section h2,
.rfq-section h2 {
    font-size: clamp(2rem, 4vw, 3.25rem);
}

.section-heading p,
.oem-section p,
.rfq-section p {
    color: var(--cp-muted);
    font-size: 1.05rem;
}

.feature-card,
.product-card,
.solution-card,
.advantage-item,
.entry-content-wrap,
.post-card {
    background: var(--cp-panel);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
}

.feature-card,
.product-card,
.solution-card,
.advantage-item,
.post-card,
.home-doc-card,
.quality-step,
.certificate-card,
.download-card,
.payment-card,
.payment-note,
.empty-state {
    box-shadow: 0 16px 38px rgba(5, 8, 7, 0.06);
}

.feature-card,
.solution-card {
    color: var(--cp-text);
    display: block;
    height: 100%;
    padding: 1.55rem;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.feature-card:hover,
.solution-card:hover,
.product-card:hover {
    border-color: rgba(19, 121, 91, 0.42);
    box-shadow: var(--cp-shadow);
    transform: translateY(-3px);
}

.feature-card i,
.solution-card i,
.advantage-item i,
.product-icon i {
    color: var(--cp-green);
    font-size: 2rem;
}

.home-card-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.solution-card .home-card-image {
    max-width: 160px;
    flex: 0 0 160px;
    margin-bottom: 0;
}

.feature-card h3,
.product-card h3,
.solution-card h3,
.advantage-item h3 {
    color: #fff;
    font-size: 1.2rem;
    font-weight: 800;
    margin: 1rem 0 0.5rem;
}

.feature-card p,
.product-card p,
.solution-card p,
.advantage-item p {
    color: var(--cp-muted);
    margin-bottom: 1rem;
}

.quality-section h2,
.market-section h2 {
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.25rem);
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.08;
}

.quality-section p,
.market-section p {
    color: var(--cp-muted);
}

.quality-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.quality-step {
    background: var(--cp-panel);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    color: var(--cp-text);
    display: block;
    min-height: 230px;
    padding: 1.25rem;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.quality-step:hover {
    border-color: var(--cp-green);
    transform: translateY(-2px);
}

.quality-step i {
    align-items: center;
    background: var(--cp-green);
    border-radius: 8px;
    color: var(--cp-white);
    display: inline-flex;
    font-size: 1.35rem;
    height: 46px;
    justify-content: center;
    margin-bottom: 1rem;
    width: 46px;
}

.quality-step span {
    color: var(--cp-blue);
    display: block;
    font-weight: 800;
    margin-bottom: 0.25rem;
}

.quality-step h3,
.home-doc-card h3,
.factory-tour-item h3 {
    color: var(--cp-ink);
    font-size: 1.2rem;
    font-weight: 800;
    margin-bottom: 0.55rem;
}

.quality-step h3 a,
.home-doc-card h3 a {
    color: inherit;
}

.home-doc-card {
    background: var(--cp-panel);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 1.25rem;
}

.home-doc-card p {
    color: var(--cp-muted);
}

.feature-card span,
.text-link {
    color: var(--cp-green);
    font-weight: 800;
}

.product-card {
    height: 100%;
    padding: 1.55rem;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.product-thumb {
    align-items: center;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    margin: -0.35rem -0.35rem 1rem;
    overflow: hidden;
    position: relative;
    width: calc(100% + 0.7rem);
}

.product-thumb::before {
    content: "";
    display: block;
    padding-top: 62.5%;
}

.product-thumb img {
    height: 100%;
    inset: 0;
    object-fit: cover;
    position: absolute;
    width: 100%;
}

.product-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    display: flex;
    height: 76px;
    justify-content: center;
    margin-bottom: 1rem;
    width: 76px;
}

.solution-card {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
}

.solution-card h3 {
    margin-top: 0;
}

.oem-section {
    background:
        radial-gradient(circle at 75% 18%, rgba(33, 167, 122, 0.16), transparent 32%),
        linear-gradient(135deg, #050807 0%, #0c1210 52%, #111916 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.82);
}

.oem-section h2 {
    color: var(--cp-white);
}

.oem-section .eyebrow {
    color: var(--cp-lime);
}

.oem-section p {
    color: rgba(255, 255, 255, 0.72);
}

.factory-tour-section {
    background: #0d241f;
    color: var(--cp-white);
    padding: 5.5rem 0;
}

.factory-tour-section .section-heading h2,
.factory-tour-section .section-heading p {
    color: var(--cp-white);
}

.factory-tour-section .section-heading .btn {
    margin-top: 1rem;
}

.factory-tour-carousel {
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    margin: 0 auto 1rem;
    max-width: 1120px;
    overflow: hidden;
    position: relative;
}

.carousel-inner {
    position: relative;
    width: 100%;
}

.carousel-item {
    background: #071713;
    display: none;
    position: relative;
}

.carousel-item.active {
    display: block;
}

.carousel-indicators {
    bottom: 1rem;
    display: flex;
    gap: 0.45rem;
    justify-content: center;
    left: 0;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 0;
    z-index: 3;
}

.carousel-indicators button {
    background: rgba(255, 255, 255, 0.5);
    border: 0;
    border-radius: 999px;
    cursor: pointer;
    height: 8px;
    padding: 0;
    width: 24px;
}

.carousel-indicators button.active {
    background: var(--cp-lime);
}

.carousel-control-prev,
.carousel-control-next {
    align-items: center;
    background: rgba(5, 8, 7, 0.45);
    border: 0;
    color: #fff;
    cursor: pointer;
    display: flex;
    height: 52px;
    justify-content: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    z-index: 4;
}

.carousel-control-prev { left: 0; }
.carousel-control-next { right: 0; }

.carousel-control-prev-icon,
.carousel-control-next-icon {
    border-color: currentColor;
    border-style: solid;
    display: block;
    height: 14px;
    width: 14px;
}

.carousel-control-prev-icon {
    border-width: 0 0 2px 2px;
    transform: rotate(45deg);
}

.carousel-control-next-icon {
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
}

.factory-tour-carousel img {
    aspect-ratio: 16 / 7;
    object-fit: cover;
    opacity: 0.88;
}

.factory-tour-carousel .carousel-caption {
    background: linear-gradient(90deg, rgba(7, 23, 19, 0.88), rgba(7, 23, 19, 0.24));
    border-radius: 8px;
    bottom: 2rem;
    left: 2rem;
    max-width: 520px;
    padding: 1rem 1.2rem;
    right: auto;
    text-align: left;
}

.factory-tour-carousel .carousel-caption h3 {
    color: var(--cp-white);
    font-size: 1.35rem;
    font-weight: 800;
    margin-bottom: 0.35rem;
}

.factory-tour-carousel .carousel-caption p {
    color: rgba(255, 255, 255, 0.82);
    margin: 0;
}

.factory-tour-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1.2fr 1fr 1fr;
}

.factory-tour-item {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    overflow: hidden;
}

.factory-tour-item img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    width: 100%;
}

.factory-tour-item div {
    padding: 1.25rem;
}

.factory-tour-item h3 {
    color: var(--cp-white);
}

.factory-tour-item p {
    color: rgba(255, 255, 255, 0.74);
    margin: 0;
}

.process-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin: 1.8rem 0 2rem;
}

.process-list span {
    background: rgba(255, 255, 255, 0.11);
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 999px;
    color: var(--cp-white);
    font-weight: 700;
    padding: 0.55rem 0.9rem;
}

.factory-visual {
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 8px;
    overflow: hidden;
}

.factory-visual img,
.featured-image img,
.post-card-image img {
    display: block;
    height: auto;
    width: 100%;
}

.factory-visual img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.advantage-grid {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(5, 1fr);
}

.advantage-item {
    padding: 1.35rem;
}

.rfq-section {
    background: var(--cp-soft);
}

.rfq-form {
    background: var(--cp-panel);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    box-shadow: var(--cp-shadow);
    padding: 2rem;
}

.cleanpro-hp-field {
    height: 0;
    left: -9999px;
    overflow: hidden;
    position: absolute;
    width: 0;
}

.form-control {
    border-color: var(--cp-line);
    border-radius: 6px;
    min-height: 48px;
}

.form-control:focus {
    border-color: var(--cp-green);
    box-shadow: 0 0 0 0.2rem rgba(19, 121, 91, 0.16);
}

.rfq-points {
    list-style: none;
    margin: 1.5rem 0 0;
    padding: 0;
}

.rfq-points li {
    align-items: flex-start;
    display: flex;
    gap: 0.75rem;
    margin-bottom: 0.8rem;
}

.rfq-points i {
    color: var(--cp-green);
    font-size: 1.2rem;
}

.site-footer {
    background: #030504;
    color: rgba(255, 255, 255, 0.76);
    padding: 4rem 0 1.5rem;
}

.site-footer h2,
.site-footer h3 {
    color: var(--cp-white);
    font-weight: 800;
}

.site-footer h3 {
    font-size: 1rem;
    margin-bottom: 1rem;
}

.footer-brand {
    font-size: 1.6rem;
}

.footer-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-list li {
    margin-bottom: 0.6rem;
}

.site-footer a,
.footer-contact {
    color: rgba(255, 255, 255, 0.86);
}

.footer-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
}

.footer-social a {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    display: inline-flex;
    font-size: 1rem;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.contact-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.contact-social a {
    align-items: center;
    border: 1px solid var(--cp-line);
    border-radius: 6px;
    display: inline-flex;
    font-weight: 800;
    gap: 0.45rem;
    padding: 0.55rem 0.75rem;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between;
    margin-top: 3rem;
    padding-top: 1.25rem;
}

.whatsapp-float {
    align-items: center;
    background: #25d366;
    border-radius: 999px;
    bottom: 1.35rem;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.24);
    color: #fff;
    display: flex;
    font-size: 1.65rem;
    height: 58px;
    justify-content: center;
    position: fixed;
    right: 1.35rem;
    width: 58px;
    z-index: 30;
}

.cleanpro-cookie-banner {
    align-items: center;
    background: #17233a;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    bottom: 1.25rem;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
    color: #fff;
    display: flex;
    gap: 1rem;
    left: 1.25rem;
    max-width: min(760px, calc(100% - 2.5rem));
    padding: 1rem;
    position: fixed;
    z-index: 60;
}

.cleanpro-cookie-banner[hidden] {
    display: none;
}

.cleanpro-cookie-banner__text {
    font-size: 0.92rem;
    line-height: 1.55;
    min-width: 0;
}

.cleanpro-cookie-banner__text a {
    color: #9be7ff;
    font-weight: 800;
}

.cleanpro-cookie-banner__actions {
    display: flex;
    flex: 0 0 auto;
    gap: 0.55rem;
}

.whatsapp-float:hover {
    color: #fff;
    transform: translateY(-2px);
}

.entry-content-wrap {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 2.5rem;
}

.cleanpro-editorial-section {
    background: #f8faf6;
    padding-top: 3.25rem;
}

.cleanpro-editorial-card {
    box-shadow: 0 18px 48px rgba(5, 8, 7, 0.07);
}

.narrow-container {
    max-width: 900px;
}

.page-header {
    margin-bottom: 2rem;
}

.guide-meta {
    color: var(--cp-muted);
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
}

.guide-meta span {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 999px;
    font-size: 0.88rem;
    font-weight: 800;
    padding: 0.4rem 0.65rem;
}

.guide-meta-small {
    margin: 0 0 0.9rem;
}

.guide-summary-box,
.guide-checklist,
.article-cta {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    margin: 1.5rem 0;
    padding: 1.5rem;
}

.guide-summary-box p {
    color: var(--cp-ink);
    font-size: 1.08rem;
    font-weight: 700;
}

.guide-summary-box ul,
.guide-checklist ul {
    display: grid;
    gap: 0.75rem;
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
}

.guide-summary-box li,
.guide-checklist li {
    align-items: flex-start;
    color: var(--cp-text);
    display: flex;
    gap: 0.65rem;
}

.guide-summary-box li i,
.guide-checklist li i {
    color: var(--cp-green);
    flex: 0 0 auto;
    margin-top: 0.1rem;
}

.guide-checklist h2,
.article-cta h2 {
    color: var(--cp-ink);
    font-size: 1.45rem;
    font-weight: 800;
}

.article-cta {
    background: var(--cp-ink);
    color: var(--cp-white);
}

.article-cta h2,
.article-cta p {
    color: var(--cp-white);
}

.entry-content img {
    height: auto;
    max-width: 100%;
}

.entry-content > *:last-child {
    margin-bottom: 0;
}

.page-builder-section {
    background: var(--cp-white);
}

.front-page-editable {
    border-top: 1px solid var(--cp-line);
    padding-top: 2rem;
}

.post-card {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    height: 100%;
    overflow: hidden;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.post-card:hover,
.certificate-card:hover,
.download-card:hover,
.payment-card:hover,
.home-doc-card:hover,
.quality-step:hover,
.feature-card:hover,
.solution-card:hover,
.product-card:hover {
    border-color: rgba(5, 8, 7, 0.24);
    box-shadow: 0 20px 52px rgba(5, 8, 7, 0.1);
    transform: translateY(-3px);
}

.post-card-image,
.certificate-image {
    display: block;
    overflow: hidden;
}

.post-card-image img,
.certificate-image img {
    display: block;
    transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.post-card:hover .post-card-image img,
.certificate-card:hover .certificate-image img {
    transform: scale(1.035);
}

.post-card-body {
    padding: 1.35rem;
}

.post-card h2 {
    font-size: 1.25rem;
    font-weight: 800;
}

.post-card h2 a {
    color: var(--cp-ink);
}

.listing-hero,
.product-detail-hero,
.not-found-section {
    background:
        linear-gradient(90deg, rgba(5, 8, 7, 0.9), rgba(5, 8, 7, 0.56), rgba(5, 8, 7, 0.18)),
        var(--hero-image, url("https://images.unsplash.com/photo-1581092160607-ee22621dd758?auto=format&fit=crop&w=1600&q=80")) center/cover no-repeat;
    color: #fff;
    min-height: 420px;
    overflow: hidden;
    padding: clamp(7rem, 15vh, 10rem) 0 clamp(4rem, 8vh, 6rem);
    position: relative;
}

.listing-hero::after,
.product-detail-hero::after,
.not-found-section::after {
    background: #ecedec;
    bottom: 0;
    content: "";
    height: clamp(12px, 3vw, 30px);
    left: 0;
    position: absolute;
    width: min(38vw, 520px);
}

.listing-hero .container,
.product-detail-hero .container,
.not-found-section .container {
    position: relative;
    z-index: 2;
}

.listing-hero-image {
    background:
        linear-gradient(90deg, rgba(18, 48, 43, 0.86), rgba(18, 48, 43, 0.42)),
        var(--listing-hero-image) center/cover no-repeat;
    color: var(--cp-white);
    overflow: hidden;
    position: relative;
}

.listing-hero-image h1,
.listing-hero-image p {
    color: var(--cp-white);
}

.listing-hero h1,
.product-detail-hero h1,
.not-found-section h1 {
    color: #fff;
    font-family: var(--cp-font-display);
    font-size: 48px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
    max-width: 980px;
}

.listing-hero p,
.product-detail-hero p,
.not-found-section p {
    color: rgba(255, 255, 255, 0.76);
    font-size: 1.08rem;
    max-width: 760px;
}

.listing-hero .eyebrow,
.product-detail-hero .eyebrow,
.not-found-section .eyebrow {
    color: rgba(255, 255, 255, 0.76);
    font-family: var(--cp-font-body);
    font-weight: 500;
    text-transform: none;
}

.cleanpro-editorial-hero h1 {
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s both;
}

.cleanpro-editorial-hero p {
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.35s both;
}

.not-found-search,
.search-hero-form {
    margin-top: 2rem;
    max-width: 720px;
}

.not-found-search label {
    color: #fff;
    display: block;
    font-weight: 800;
    margin-bottom: 0.65rem;
}

.not-found-search .input-group,
.search-hero-form .input-group {
    box-shadow: 0 14px 30px rgba(18, 48, 43, 0.08);
}

.not-found-search .form-control,
.search-hero-form .form-control {
    border-color: var(--cp-line);
}

.search-results-heading {
    margin-bottom: 2rem;
}

.search-result-card {
    height: 100%;
}

.not-found-links-section {
    padding-top: 4rem;
}

.not-found-card {
    min-height: 100%;
}

.not-found-useful-links {
    border-top: 1px solid var(--cp-line);
    margin-top: 3rem;
    padding-top: 2rem;
}

.not-found-useful-links h2 {
    color: var(--cp-ink);
    font-size: 1.45rem;
    font-weight: 800;
    margin-bottom: 1rem;
}

.not-found-link-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.not-found-link-list a {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 999px;
    color: var(--cp-ink);
    font-weight: 800;
    padding: 0.65rem 1rem;
}

.not-found-link-list a:hover {
    border-color: var(--cp-green);
    color: var(--cp-green);
}

.term-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 2rem;
}

.term-filter a {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 999px;
    color: var(--cp-ink);
    font-weight: 700;
    padding: 0.55rem 0.9rem;
}

.term-filter a:hover {
    border-color: var(--cp-green);
    color: var(--cp-green);
}

.product-filter-form {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(18, 48, 43, 0.06);
    margin-bottom: 2rem;
    padding: 1.25rem;
}

.product-filter-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.product-filter-grid label {
    display: grid;
    gap: 0.4rem;
}

.product-filter-grid span {
    color: var(--cp-ink);
    font-size: 0.86rem;
    font-weight: 800;
}

.download-filter-grid {
    grid-template-columns: 2fr 1fr 1fr;
}

.article-filter-grid {
    grid-template-columns: 2fr 1fr;
}

.product-filter-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1rem;
}

.listing-thumb {
    align-items: center;
    background: var(--cp-soft);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
    min-height: 190px;
    overflow: hidden;
}

.listing-thumb img {
    aspect-ratio: 4 / 3;
    height: auto;
    object-fit: cover;
    width: 100%;
}

.listing-thumb-placeholder i {
    color: var(--cp-green);
    font-size: 3rem;
}

.product-listing-card h3 a {
    color: var(--cp-ink);
}

.product-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.product-card-meta span {
    background: var(--cp-soft);
    border-radius: 999px;
    color: var(--cp-muted);
    font-size: 0.86rem;
    font-weight: 700;
    padding: 0.35rem 0.65rem;
}

.card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.empty-state {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 2rem;
}

.product-main-image {
    align-items: center;
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 420px;
    overflow: hidden;
}

.product-main-image img {
    height: auto;
    object-fit: cover;
    width: 100%;
}

.product-main-image i {
    color: var(--cp-green);
    font-size: 5rem;
}

.product-gallery-strip {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 0.85rem;
}

.product-gallery-thumb {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    display: block;
    overflow: hidden;
    padding: 0;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    width: 100%;
}

.product-gallery-thumb:hover,
.product-gallery-thumb.is-active {
    border-color: var(--cp-green);
    box-shadow: 0 0 0 3px rgba(12, 139, 91, 0.12);
}

.product-gallery-thumb img {
    aspect-ratio: 1 / 1;
    display: block;
    object-fit: cover;
    width: 100%;
}

.product-detail-tabs {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    overflow: hidden;
}

.product-detail-tabs .nav-tabs {
    background: var(--cp-soft);
    border-bottom: 1px solid var(--cp-line);
    flex-wrap: wrap;
    gap: 0;
    padding: 0.65rem 0.65rem 0;
}

.product-detail-tabs .nav-link {
    border-radius: 8px 8px 0 0;
    color: var(--cp-muted);
    font-weight: 800;
    min-height: 44px;
    overflow-wrap: anywhere;
}

.product-detail-tabs .nav-link.active {
    color: var(--cp-ink);
}

.product-tab-content {
    padding: 1.6rem;
}

.btn,
.card-title,
.product-card h2,
.solution-info-block h2,
.download-status-grid strong,
.download-status-grid span {
    overflow-wrap: anywhere;
}

.product-copy,
.product-table-wrap,
.product-documents,
.sticky-rfq,
.solution-info-block,
.certificate-card,
.download-card,
.payment-card,
.payment-note {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 1.6rem;
}

.product-copy {
    margin-bottom: 1.5rem;
    padding: 0;
    border: 0;
}

.product-tab-content .product-table-wrap,
.product-tab-content .faq-block {
    border: 0;
    padding: 0;
}

.product-benefits {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 1.5rem;
}

.product-benefits div {
    align-items: flex-start;
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    display: flex;
    gap: 0.65rem;
    padding: 0.9rem;
}

.product-benefits i {
    color: var(--cp-green);
    flex: 0 0 auto;
    font-size: 1.15rem;
    margin-top: 0.05rem;
}

.product-benefits span {
    color: var(--cp-ink);
    font-weight: 700;
    line-height: 1.45;
}

.product-table-wrap h2,
.product-documents h2,
.sticky-rfq h2,
.solution-info-block h2,
.certificate-card h2,
.download-card h2,
.payment-card h2,
.payment-note h2 {
    color: var(--cp-ink);
    font-size: 1.35rem;
    font-weight: 800;
}

.product-documents {
    margin-bottom: 0;
    padding: 0;
    border: 0;
}

.product-documents-heading p:last-child {
    color: var(--cp-muted);
    margin-bottom: 1rem;
}

.product-document-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.product-document-grid a {
    align-items: center;
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    color: var(--cp-ink);
    display: flex;
    font-weight: 800;
    gap: 0.65rem;
    padding: 0.9rem;
}

.product-document-grid a:hover {
    border-color: var(--cp-green);
    color: var(--cp-green);
}

.product-document-grid i {
    color: var(--cp-green);
    font-size: 1.25rem;
}

.download-unlock-box {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    margin-top: 1.5rem;
    padding: 1.5rem;
}

.download-unlock-box h2 {
    color: var(--cp-ink);
    font-size: 1.45rem;
    font-weight: 800;
}

.download-lead-modal .modal-content {
    border: 0;
    border-radius: 8px;
}

.modal {
    background: rgba(0, 0, 0, 0.62);
    display: none;
    inset: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 1.5rem;
    position: fixed;
    z-index: 1050;
}

.modal.show {
    align-items: center;
    display: flex;
}

.modal-dialog {
    margin: auto;
    max-width: 640px;
    width: min(100%, 640px);
}

.modal-content {
    background: #121a17;
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: var(--cp-text);
    position: relative;
}

.modal-header,
.modal-body,
.modal-footer {
    padding: 1.25rem;
}

.btn-close {
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    font-size: 0;
    height: 32px;
    margin-left: auto;
    position: relative;
    width: 32px;
}

.btn-close::before,
.btn-close::after {
    background: currentColor;
    content: "";
    height: 2px;
    left: 7px;
    position: absolute;
    top: 15px;
    width: 18px;
}

.btn-close::before { transform: rotate(45deg); }
.btn-close::after { transform: rotate(-45deg); }

.modal-open {
    overflow: hidden;
}

.tab-pane {
    display: none;
}

.tab-pane.active,
.tab-pane.show {
    display: block;
}

.download-lead-modal .modal-header {
    align-items: flex-start;
    border-bottom: 1px solid var(--cp-line);
    gap: 1rem;
}

.download-lead-modal .modal-title {
    color: var(--cp-ink);
    font-size: 1.35rem;
    font-weight: 800;
}

.download-lead-modal .modal-body > p {
    color: var(--cp-muted);
    font-weight: 600;
}

.download-unlock-box .rfq-form {
    background: var(--cp-white);
    box-shadow: none;
    margin-top: 1rem;
}

.payment-card {
    height: 100%;
}

.payment-card i {
    color: var(--cp-green);
    font-size: 2.2rem;
}

.payment-amount-options {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0;
}

.payment-amount-option {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 999px;
    color: var(--cp-ink);
    font-weight: 800;
    padding: 0.35rem 0.65rem;
}

.payment-note {
    margin-top: 2rem;
}

.payment-process {
    margin-top: 2rem;
}

.payment-process h2 {
    color: var(--cp-ink);
    font-size: 1.6rem;
    font-weight: 800;
    margin-bottom: 1rem;
}

.payment-process-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.payment-process-grid div {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 1rem;
}

.payment-process-grid span {
    color: var(--cp-green);
    display: block;
    font-weight: 800;
    margin-bottom: 0.45rem;
}

.payment-process-grid p {
    color: var(--cp-text);
    font-weight: 700;
    margin: 0;
}

.payment-confirmation-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 2rem;
}

.payment-confirmation-grid section {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    box-shadow: var(--cp-shadow-soft);
    padding: 1.25rem;
}

.payment-confirmation-grid h2 {
    color: var(--cp-ink);
    font-size: 1.25rem;
    font-weight: 800;
    margin-bottom: 0.9rem;
}

.payment-confirmation-grid ul {
    display: grid;
    gap: 0.65rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.payment-confirmation-grid li {
    align-items: flex-start;
    color: var(--cp-text);
    display: flex;
    font-weight: 650;
    gap: 0.55rem;
    line-height: 1.5;
}

.payment-confirmation-grid li i {
    color: var(--cp-green);
    flex: 0 0 auto;
    margin-top: 0.15rem;
}

.cleanpro-payment-notice {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    margin: 1.25rem 0;
    padding: 1.25rem;
}

.cleanpro-payment-notice h2 {
    color: var(--cp-ink);
    font-size: 1.25rem;
    font-weight: 800;
}

.payment-product-steps {
    display: grid;
    gap: 0.5rem;
    margin: 1rem 0;
    padding-left: 1.25rem;
}

.payment-product-steps li {
    color: var(--cp-text);
    font-weight: 700;
}

.payment-sales-note {
    background: var(--cp-white);
    border-left: 4px solid var(--cp-green);
    padding: 0.85rem 1rem;
}

.cleanpro-payment-checkout-note {
    align-items: flex-start;
    background: #f2fbf7;
    border: 1px solid rgba(26, 130, 94, 0.22);
    border-radius: 8px;
    color: var(--cp-text);
    display: flex;
    gap: 1rem;
    margin: 0 0 1.5rem;
    padding: 1.15rem 1.25rem;
}

.cleanpro-payment-checkout-note-icon {
    align-items: center;
    background: var(--cp-white);
    border: 1px solid rgba(26, 130, 94, 0.24);
    border-radius: 8px;
    color: var(--cp-green);
    display: inline-flex;
    flex: 0 0 44px;
    font-size: 1.35rem;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.cleanpro-payment-checkout-note h2 {
    color: var(--cp-ink);
    font-size: 1.15rem;
    font-weight: 800;
    margin: 0 0 0.35rem;
}

.cleanpro-payment-checkout-note p {
    font-weight: 700;
    margin: 0 0 0.65rem;
}

.cleanpro-payment-checkout-note ul {
    margin: 0;
    padding-left: 1.2rem;
}

.cleanpro-payment-checkout-note li {
    margin: 0.25rem 0;
}

.cleanpro-wc-quote-box {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    margin: 1.25rem 0;
    padding: 1.25rem;
}

.cleanpro-wc-quote-box h2 {
    color: var(--cp-ink);
    font-size: 1.25rem;
    font-weight: 800;
    margin-bottom: 0.5rem;
}

.cleanpro-wc-quote-box p {
    margin-bottom: 1rem;
}

.faq-block {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    margin-top: 1.5rem;
    padding: 1.6rem;
}

.faq-block h2 {
    color: var(--cp-ink);
    font-size: 1.35rem;
    font-weight: 800;
    margin-bottom: 1rem;
}

.faq-block .accordion-button {
    color: var(--cp-ink);
    font-weight: 800;
}

.woocommerce-page-wrap .woocommerce {
    background: var(--cp-white);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 1.6rem;
}

.woocommerce div.product .product_title {
    color: var(--cp-ink);
    font-weight: 800;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    background: var(--cp-green);
    border-radius: 6px;
    color: var(--cp-white);
    font-weight: 800;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
    background: #0f6048;
    color: var(--cp-white);
}

.product-table th {
    color: var(--cp-ink);
    width: 34%;
}

.sticky-rfq {
    position: sticky;
    top: 1rem;
}

.sticky-rfq .rfq-form {
    border: 0;
    box-shadow: none;
    padding: 0;
}

.solution-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, 1fr);
    margin: 1.5rem 0;
}

.solution-related-block {
    border-top: 1px solid var(--cp-line);
    margin: 2rem 0;
    padding-top: 1.5rem;
}

.solution-related-block h2 {
    color: var(--cp-ink);
    font-size: 1.35rem;
    font-weight: 800;
    margin-bottom: 1rem;
}

.related-link-list {
    display: grid;
    gap: 0.75rem;
    margin-top: 1rem;
}

.related-link-list a {
    align-items: center;
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    color: var(--cp-ink);
    display: flex;
    font-weight: 800;
    gap: 0.65rem;
    padding: 0.9rem;
}

.download-status-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(3, 1fr);
    margin: 1.5rem 0;
}

.download-status-grid div {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 1rem;
}

.download-status-grid strong,
.download-status-grid span {
    display: block;
}

.download-status-grid strong {
    color: var(--cp-muted);
    font-size: 0.85rem;
    margin-bottom: 0.35rem;
}

.download-status-grid span {
    color: var(--cp-ink);
    font-weight: 800;
}

.certificate-card,
.download-card,
.listing-card {
    height: 100%;
}

.certificate-image {
    background: var(--cp-soft);
    border-radius: 8px;
    margin-bottom: 1rem;
    overflow: hidden;
}

.certificate-image img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    width: 100%;
}

.certificate-card dl {
    margin: 1rem 0;
}

.certificate-card dl div {
    border-top: 1px solid var(--cp-line);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 0.65rem 0;
}

.certificate-card dt {
    color: var(--cp-ink);
    font-weight: 800;
}

.certificate-card dd {
    color: var(--cp-muted);
    margin: 0;
    text-align: right;
}

.certificate-detail-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, 1fr);
    margin: 1.5rem 0;
}

.certificate-detail-grid div {
    background: var(--cp-soft);
    border-radius: 8px;
    padding: 1rem;
}

.certificate-detail-grid strong,
.certificate-detail-grid span {
    display: block;
}

.certificate-detail-grid strong {
    color: var(--cp-ink);
    font-weight: 800;
}

.market-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

.market-chip-list span {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 999px;
    color: var(--cp-ink);
    font-weight: 800;
    padding: 0.55rem 0.85rem;
}

.market-panel {
    background: var(--cp-soft);
    border: 1px solid var(--cp-line);
    border-radius: 8px;
    padding: 2rem;
}

.market-panel i {
    color: var(--cp-green);
    font-size: 2.4rem;
}

.market-panel blockquote {
    color: var(--cp-ink);
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.45;
    margin: 1rem 0;
}

.market-panel p {
    font-weight: 800;
    margin: 0;
}

.cleanpro-breadcrumbs {
    margin-bottom: 1.25rem;
}

.cleanpro-breadcrumbs ol {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.cleanpro-breadcrumbs li {
    align-items: center;
    color: var(--cp-muted);
    display: flex;
    font-size: 0.9rem;
    font-weight: 700;
    min-width: 0;
}

.cleanpro-breadcrumbs li:not(:last-child)::after {
    color: var(--cp-muted);
    content: "/";
    margin-left: 0.45rem;
}

.cleanpro-breadcrumbs a {
    color: var(--cp-muted);
}

.cleanpro-breadcrumbs a:hover {
    color: var(--cp-green);
}

.cleanpro-breadcrumbs span {
    color: var(--cp-ink);
    overflow-wrap: anywhere;
}

.pagination-wrap {
    margin-top: 2.5rem;
}

@media (max-width: 991.98px) {
    .hero-section {
        min-height: 560px;
        padding: 5.5rem 0 7rem;
    }

    .stats-grid,
    .advantage-grid,
    .certificate-detail-grid,
    .solution-grid,
    .download-status-grid,
    .factory-tour-grid,
    .payment-confirmation-grid,
    .payment-process-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .section-heading-with-action {
        align-items: start;
        flex-direction: column;
    }

    .header-search-form {
        flex: 1 1 100%;
        width: 100%;
    }

    .nav-link-group {
        justify-content: space-between;
        width: 100%;
    }

    .factory-tour-carousel img {
        aspect-ratio: 4 / 3;
    }

    .factory-tour-carousel .carousel-caption {
        bottom: 1rem;
        left: 1rem;
        max-width: calc(100% - 2rem);
        padding: 0.85rem 1rem;
    }

    .nav-link-group .nav-link-parent {
        flex: 1 1 auto;
        min-width: 0;
    }

    .nav-link-group .dropdown-toggle-split {
        flex: 0 0 44px;
        justify-content: center;
    }

    .product-filter-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .download-filter-grid {
        grid-template-columns: 1fr;
    }

    .stat-item:nth-child(2) {
        border-right: 0;
    }
}

@media (max-width: 575.98px) {
    .topbar {
        font-size: 0.82rem;
        overflow-x: auto;
        white-space: nowrap;
    }

    .hero-section {
        min-height: 520px;
        padding: 4rem 0 6rem;
    }

    .hero-section h1 {
        font-size: 2.35rem;
    }

    .hero-actions .btn {
        width: 100%;
    }

    .not-found-search .input-group,
    .search-hero-form .input-group {
        display: grid;
        gap: 0.75rem;
    }

    .not-found-search .form-control,
    .not-found-search .btn,
    .search-hero-form .form-control,
    .search-hero-form .btn {
        border-radius: 6px !important;
        width: 100%;
    }

    .solution-card .home-card-image {
        flex: 0 0 auto;
        margin-bottom: 1rem;
        max-width: none;
        width: 100%;
    }

    .stats-grid,
    .advantage-grid,
    .certificate-detail-grid,
    .solution-grid,
    .download-status-grid,
    .quality-grid,
    .factory-tour-grid,
    .payment-confirmation-grid,
    .payment-process-grid {
        grid-template-columns: 1fr;
    }

    .stat-item {
        border-right: 0;
        border-bottom: 1px solid var(--cp-line);
    }

    .stat-item:last-child {
        border-bottom: 0;
    }

    .section-block,
    .oem-section,
    .factory-tour-section,
    .rfq-section,
    .content-page {
        padding: 4rem 0;
    }

    .rfq-form,
    .entry-content-wrap {
        padding: 1.35rem;
    }

    .listing-hero,
    .product-detail-hero,
    .not-found-section {
        padding: 3.5rem 0;
    }

    .product-main-image {
        min-height: 260px;
    }

    .product-gallery-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sticky-rfq {
        position: static;
    }

    .card-actions .btn {
        width: 100%;
    }

    .product-filter-grid {
        grid-template-columns: 1fr;
    }

    .product-benefits {
        grid-template-columns: 1fr;
    }

    .product-document-grid {
        grid-template-columns: 1fr;
    }

    .product-filter-actions .btn {
        width: 100%;
    }

    .footer-bottom {
        display: block;
    }

    .cleanpro-cookie-banner {
        align-items: stretch;
        bottom: 0.75rem;
        flex-direction: column;
        left: 0.75rem;
        max-width: calc(100% - 1.5rem);
        right: 0.75rem;
        padding: 0.9rem;
        width: auto;
    }

    .cleanpro-cookie-banner__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .cleanpro-cookie-banner__text {
        overflow-wrap: anywhere;
    }

    .cleanpro-cookie-banner__actions .btn {
        width: 100%;
    }
}

/* Dark visual theme overrides. Keep this late so legacy light sections inherit the new direction. */
body,
.content-page,
.section-block,
.page-builder-section,
.cleanpro-editorial-section {
    background: var(--cp-dark);
}

.stats-band,
.stats-grid,
.entry-content-wrap,
.cleanpro-editorial-card,
.feature-card,
.product-card,
.solution-card,
.advantage-item,
.post-card,
.home-doc-card,
.quality-step,
.certificate-card,
.download-card,
.payment-card,
.payment-note,
.product-copy,
.product-table-wrap,
.product-documents,
.sticky-rfq,
.solution-info-block,
.market-panel,
.empty-state,
.faq-block,
.woocommerce-page-wrap .woocommerce,
.download-unlock-box,
.cleanpro-wc-quote-box,
.cleanpro-payment-notice,
.payment-confirmation-grid section,
.payment-process-grid div,
.product-benefits div,
.product-document-grid a,
.related-link-list a,
.download-status-grid div,
.certificate-detail-grid div,
.product-filter-form {
    background: var(--cp-panel);
    border-color: var(--cp-line);
    color: var(--cp-text);
}

.section-heading h2,
.oem-section h2,
.rfq-section h2,
.page-header h1,
.quality-section h2,
.market-section h2,
.feature-card h3,
.product-card h3,
.solution-card h3,
.advantage-item h3,
.quality-step h3,
.home-doc-card h3,
.factory-tour-item h3,
.post-card h2 a,
.product-listing-card h3 a,
.product-table-wrap h2,
.product-documents h2,
.sticky-rfq h2,
.solution-info-block h2,
.certificate-card h2,
.certificate-card h2 a,
.download-card h2,
.payment-card h2,
.payment-note h2,
.payment-process h2,
.payment-confirmation-grid h2,
.cleanpro-payment-notice h2,
.cleanpro-wc-quote-box h2,
.faq-block h2,
.product-filter-grid span,
.not-found-useful-links h2 {
    color: #fff;
}

.section-heading p,
.oem-section p,
.rfq-section p,
.feature-card p,
.product-card p,
.solution-card p,
.advantage-item p,
.quality-section p,
.market-section p,
.home-doc-card p,
.post-card-body p,
.certificate-card dd,
.payment-process-grid p,
.payment-confirmation-grid li,
.payment-product-steps li,
.entry-content,
.entry-content p,
.cleanpro-breadcrumbs li,
.cleanpro-breadcrumbs a {
    color: var(--cp-text);
}

.form-control,
.form-select,
.product-filter-form .form-control,
.product-filter-form .form-select {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.14);
    color: #fff;
}

.form-control::placeholder {
    color: rgba(255, 255, 255, 0.52);
}

.main-nav.cleanpro-dark-nav {
    background: rgba(5, 8, 7, 0.96) !important;
}

@media (min-width: 992px) {
    .cleanpro-mobile-product {
        display: none !important;
    }

    .cleanpro-nav-group:hover > .cleanpro-nav-menu,
    .cleanpro-nav-group:focus-within > .cleanpro-nav-menu {
        display: block;
        margin-top: 0;
        opacity: 1;
        transform: translateY(0) scale(1);
        visibility: visible;
    }

    .cleanpro-nav-group:hover > .cleanpro-nav-menu .dropdown-item,
    .cleanpro-nav-group:focus-within > .cleanpro-nav-menu .dropdown-item {
        animation: menuItemIn 260ms cubic-bezier(0.16, 1, 0.3, 1) both;
    }

    .cleanpro-nav-menu li:nth-child(1) .dropdown-item { animation-delay: 35ms; }
    .cleanpro-nav-menu li:nth-child(2) .dropdown-item { animation-delay: 80ms; }
    .cleanpro-nav-menu li:nth-child(3) .dropdown-item { animation-delay: 125ms; }
    .cleanpro-nav-menu li:nth-child(4) .dropdown-item { animation-delay: 170ms; }
}

.cleanpro-nav-menu.show {
    opacity: 1;
    transform: translateY(0) scale(1);
    visibility: visible;
}

.cleanpro-nav-menu.show .dropdown-item {
    animation: menuItemIn 260ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.cleanpro-animate {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity 720ms cubic-bezier(0.16, 1, 0.3, 1), transform 720ms cubic-bezier(0.16, 1, 0.3, 1);
}

.cleanpro-animate.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.feature-card,
.product-card,
.solution-card,
.advantage-item,
.quality-step,
.home-doc-card,
.post-card,
.certificate-card,
.download-card,
.payment-card {
    position: relative;
}

.feature-card::after,
.product-card::after,
.solution-card::after,
.advantage-item::after,
.quality-step::after,
.home-doc-card::after,
.post-card::after,
.certificate-card::after,
.download-card::after,
.payment-card::after {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.18), transparent 34%, rgba(33, 167, 122, 0.12));
    border-radius: inherit;
    content: "";
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transition: opacity 220ms ease;
}

.feature-card:hover::after,
.product-card:hover::after,
.solution-card:hover::after,
.advantage-item:hover::after,
.quality-step:hover::after,
.home-doc-card:hover::after,
.post-card:hover::after,
.certificate-card:hover::after,
.download-card:hover::after,
.payment-card:hover::after {
    opacity: 1;
}

.btn {
    transition: background 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.btn:hover,
.btn:focus {
    box-shadow: 0 12px 30px rgba(33, 167, 122, 0.16);
    transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

.listing-hero::after,
.product-detail-hero::after,
.not-found-section::after {
    background: #141d19;
}

.term-filter a,
.market-chip-list span,
.product-card-meta span,
.payment-amount-option,
.not-found-link-list a {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.14);
    color: #fff;
}

#oem.oem-section {
    background:
        radial-gradient(circle at 75% 18%, rgba(33, 167, 122, 0.16), transparent 32%),
        linear-gradient(135deg, #050807 0%, #0c1210 52%, #111916 100%);
}

#oem .factory-visual {
    background: rgba(255, 255, 255, 0.04);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.36);
}

/* Layout stabilization fixes for the dark theme rollout. */
.cleanpro-header-shell {
    padding-left: clamp(16px, 2.5vw, 32px);
    padding-right: clamp(16px, 2.5vw, 32px);
}

.topbar .cleanpro-header-shell {
    padding-left: clamp(16px, 2.5vw, 32px);
}

.navbar-brand {
    flex: 0 0 auto;
}

.main-nav .navbar-collapse {
    min-width: 0;
}

.cleanpro-elix-copy {
    max-width: min(960px, 100%);
}

.cleanpro-elix-title {
    max-width: min(820px, 100%);
}

@media (min-width: 992px) {
    .hero-section .cleanpro-elix-title {
        font-size: 96px;
        line-height: 0.88;
    }
}

@media (min-width: 1200px) {
    .hero-section .cleanpro-elix-title {
        font-size: 112px;
        line-height: 0.88;
    }
}

.hero-section .cleanpro-elix-title {
    max-width: min(720px, 100%);
}

@media (min-width: 768px) {
    .hero-section .cleanpro-elix-title {
        font-size: 72px;
        line-height: 0.94;
    }
}

@media (min-width: 1200px) {
    .hero-section .cleanpro-elix-title {
        font-size: 84px;
        line-height: 0.92;
    }
}

@media (min-width: 992px) {
    .cleanpro-elix-hero-inner {
        padding-top: clamp(72px, 10vh, 112px);
    }

    .cleanpro-elix-copy {
        padding-bottom: clamp(4rem, 10vh, 8rem);
    }
}

@media (min-width: 768px) {
    .cleanpro-cookie-banner {
        max-width: min(620px, calc(100vw - 40px));
    }
}

.cleanpro-desktop-product {
    display: none !important;
}

.cleanpro-elix-panel-assessment,
.cleanpro-elix-panel-carousel,
.cleanpro-elix-panel-proof {
    background:
        radial-gradient(circle at 85% 0%, rgba(33, 167, 122, 0.16), transparent 36%),
        #0d1512;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    color: #fff;
}

.cleanpro-elix-panel-assessment h2,
.cleanpro-elix-panel-assessment a,
.cleanpro-elix-carousel-card p,
.cleanpro-elix-panel-proof strong {
    color: #fff;
}

.cleanpro-elix-panel-proof p {
    color: rgba(255, 255, 255, 0.68);
}

.cleanpro-elix-dots span {
    background: rgba(255, 255, 255, 0.18);
}

.cleanpro-elix-dots span.is-active {
    background: var(--cp-green);
}

.stats-band {
    background: var(--cp-dark);
    margin-top: 0;
}

.stats-grid {
    background: var(--cp-panel);
    border-color: rgba(255, 255, 255, 0.1);
}

.stat-item {
    border-color: rgba(255, 255, 255, 0.1);
}

.stat-item span {
    color: var(--cp-text);
}

.page-builder-section,
.front-page-editable {
    background: var(--cp-dark);
    border-color: rgba(255, 255, 255, 0.1);
}

@media (max-width: 991.98px) {
    .cleanpro-header-shell {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* Local visual restoration layer: dark, animated, and still CDN-free. */
@keyframes cleanproGlowSweep {
    0% { transform: translateX(-120%) rotate(8deg); opacity: 0; }
    18% { opacity: 0.55; }
    48% { opacity: 0.18; }
    100% { transform: translateX(130%) rotate(8deg); opacity: 0; }
}

@keyframes cleanproPulseDot {
    0%, 100% { box-shadow: 0 0 0 0 rgba(33, 167, 122, 0.32); transform: scale(1); }
    50% { box-shadow: 0 0 0 16px rgba(33, 167, 122, 0); transform: scale(1.04); }
}

@keyframes cleanproFloatPanel {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

body::before {
    background:
        linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
    background-size: 72px 72px;
    content: "";
    inset: 0;
    opacity: 0.28;
    pointer-events: none;
    position: fixed;
    z-index: 0;
}

.site-header,
.site-main,
.site-footer {
    position: relative;
    z-index: 1;
}

.home .main-nav {
    background: linear-gradient(90deg, rgba(5, 8, 7, 0.72), rgba(8, 18, 16, 0.88)) !important;
    backdrop-filter: blur(18px);
}

.navbar .nav-link {
    letter-spacing: 0.01em;
}

.cleanpro-grouped-nav .nav-link::after {
    background: var(--cp-green);
    border-radius: 999px;
    bottom: 4px;
    content: "";
    height: 2px;
    left: 0.9rem;
    opacity: 0;
    position: absolute;
    right: 0.9rem;
    transform: scaleX(0.35);
    transition: opacity 220ms ease, transform 220ms ease;
}

.cleanpro-grouped-nav .nav-link:hover::after,
.cleanpro-grouped-nav .nav-link:focus::after,
.cleanpro-nav-group:hover > .nav-link::after {
    opacity: 1;
    transform: scaleX(1);
}

.cleanpro-nav-menu {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.035)),
        radial-gradient(circle at 85% 12%, rgba(199, 226, 79, 0.14), transparent 36%),
        rgba(6, 13, 11, 0.96);
    box-shadow: 0 28px 75px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.1);
    padding: 0.72rem;
}

.cleanpro-nav-menu .dropdown-item {
    align-items: center;
    display: flex;
    gap: 0.65rem;
}

.cleanpro-nav-menu .dropdown-item::before {
    background: var(--cp-green);
    border-radius: 999px;
    content: "";
    height: 7px;
    opacity: 0.68;
    transition: transform 180ms ease, opacity 180ms ease;
    width: 7px;
}

.cleanpro-nav-menu .dropdown-item:hover::before,
.cleanpro-nav-menu .dropdown-item:focus::before {
    opacity: 1;
    transform: scale(1.45);
}

.hero-section.cleanpro-elix-hero {
    background:
        radial-gradient(circle at 77% 18%, rgba(33, 167, 122, 0.25), transparent 24%),
        radial-gradient(circle at 14% 66%, rgba(117, 167, 255, 0.16), transparent 28%),
        linear-gradient(112deg, #020504 0%, #07110f 42%, #0d211c 100%);
}

.hero-section.cleanpro-elix-hero::after {
    animation: cleanproGlowSweep 7s ease-in-out infinite;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.12), transparent);
    content: "";
    height: 120%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: -10%;
    width: 38%;
    z-index: 1;
}

.cleanpro-elix-eyebrow {
    color: var(--cp-lime);
    font-weight: 800;
    text-transform: uppercase;
}

.hero-section .cleanpro-elix-title {
    color: #fff;
    font-weight: 900;
    max-width: min(880px, 100%);
    text-shadow: 0 22px 50px rgba(0, 0, 0, 0.38);
}

.cleanpro-reveal-word .is-dim {
    color: rgba(255, 255, 255, 0.5);
    -webkit-text-stroke: 1px rgba(255, 255, 255, 0.28);
}

.cleanpro-elix-actions p {
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 1rem 1.1rem;
}

.cleanpro-elix-primary,
.main-nav .btn-primary,
.rfq-form .btn-primary {
    background: linear-gradient(135deg, #22b785, #136f54);
    border-color: rgba(199, 226, 79, 0.16);
    box-shadow: 0 22px 55px rgba(33, 167, 122, 0.25);
    overflow: hidden;
    position: relative;
}

.cleanpro-elix-primary::before,
.main-nav .btn-primary::before,
.rfq-form .btn-primary::before {
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.32), transparent);
    content: "";
    inset: 0 auto 0 -60%;
    position: absolute;
    transform: skewX(-18deg);
    transition: left 420ms ease;
    width: 40%;
}

.cleanpro-elix-primary:hover::before,
.main-nav .btn-primary:hover::before,
.rfq-form .btn-primary:hover::before {
    left: 120%;
}

.cleanpro-elix-panels {
    box-shadow: 0 -22px 90px rgba(0, 0, 0, 0.3);
}

.cleanpro-elix-panel {
    backdrop-filter: blur(16px);
}

.cleanpro-elix-panel-assessment,
.cleanpro-elix-panel-carousel,
.cleanpro-elix-panel-proof {
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03)),
        radial-gradient(circle at 86% 8%, rgba(33, 167, 122, 0.18), transparent 38%),
        #0a1210;
    border-color: rgba(255, 255, 255, 0.12);
}

.cleanpro-elix-panel-carousel {
    animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 1s both, cleanproFloatPanel 6s ease-in-out 2.2s infinite;
}

.cleanpro-elix-icon {
    animation: cleanproPulseDot 3.6s ease-in-out infinite;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 14px 34px rgba(0, 0, 0, 0.28);
}

.section-block,
.oem-section,
.factory-tour-section,
.rfq-section {
    position: relative;
}

.section-block::before,
.oem-section::before,
.factory-tour-section::before,
.rfq-section::before {
    background: linear-gradient(90deg, transparent, rgba(33, 167, 122, 0.2), transparent);
    content: "";
    height: 1px;
    left: 16px;
    opacity: 0.55;
    position: absolute;
    right: 16px;
    top: 0;
}

.section-heading {
    position: relative;
}

.section-heading h2,
.oem-section h2,
.rfq-section h2 {
    text-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

.feature-card,
.product-card,
.solution-card,
.advantage-item,
.quality-step,
.home-doc-card,
.factory-tour-item,
.market-panel,
.rfq-form {
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
        #101815;
    border: 1px solid rgba(255, 255, 255, 0.11);
    box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
    overflow: hidden;
    transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.feature-card:hover,
.product-card:hover,
.solution-card:hover,
.advantage-item:hover,
.quality-step:hover,
.home-doc-card:hover,
.factory-tour-item:hover,
.market-panel:hover {
    border-color: rgba(199, 226, 79, 0.26);
    box-shadow: 0 30px 75px rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(33, 167, 122, 0.08);
    transform: translateY(-5px);
}

.feature-card i,
.solution-card i,
.advantage-item i,
.quality-step i,
.product-icon i {
    background: linear-gradient(135deg, rgba(199, 226, 79, 0.18), rgba(33, 167, 122, 0.18));
    border: 1px solid rgba(199, 226, 79, 0.16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 12px 28px rgba(0, 0, 0, 0.24);
    color: var(--cp-lime);
}

.factory-tour-carousel,
.factory-tour-item {
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.38);
}

.carousel-control-prev,
.carousel-control-next {
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.cleanpro-magnetic {
    will-change: transform;
}

.cleanpro-pointer-ready .btn,
.cleanpro-pointer-ready .feature-card,
.cleanpro-pointer-ready .product-card,
.cleanpro-pointer-ready .solution-card,
.cleanpro-pointer-ready .cleanpro-nav-menu .dropdown-item {
    cursor: pointer;
}

@media (min-width: 1200px) {
    .hero-section .cleanpro-elix-title {
        font-size: 96px;
        line-height: 0.9;
    }

    .cleanpro-elix-title {
        max-width: min(900px, 100%);
    }
}

@media (max-width: 767.98px) {
    .cleanpro-elix-actions p {
        padding: 0;
        background: transparent;
        border: 0;
    }
}

/* Final hero composition pass: richer than the performance fallback, still fast. */
.hero-section.cleanpro-elix-hero {
    min-height: 860px;
}

.hero-section.cleanpro-elix-hero::before {
    background:
        linear-gradient(90deg, rgba(2, 5, 4, 0.92) 0%, rgba(4, 12, 10, 0.72) 42%, rgba(5, 15, 13, 0.38) 100%),
        radial-gradient(circle at 76% 28%, rgba(33, 167, 122, 0.16), transparent 30%);
}

.hero-section-image {
    opacity: 0.46;
    transform: scale(1.02);
}

.cleanpro-elix-hero-inner {
    min-height: 760px;
    padding-top: clamp(104px, 14vh, 150px);
}

.cleanpro-elix-copy {
    max-width: min(820px, 100%);
    padding-bottom: clamp(2.5rem, 7vh, 5.5rem);
}

.hero-section .cleanpro-elix-title {
    font-size: clamp(56px, 6.2vw, 86px);
    line-height: 0.94;
    max-width: min(790px, 100%);
}

.cleanpro-title-line {
    max-width: 100%;
}

.cleanpro-elix-actions {
    align-items: stretch;
    gap: 1.25rem;
    margin-top: clamp(1.6rem, 4vw, 3rem);
}

.cleanpro-elix-primary {
    height: 64px;
    min-width: 260px;
}

.cleanpro-elix-actions p {
    max-width: 380px;
}

.cleanpro-elix-panels {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

@media (min-width: 992px) {
    .cleanpro-elix-panels {
        grid-template-columns: 1.35fr 1fr 1.35fr;
    }

    .cleanpro-elix-panel {
        min-height: 190px;
    }
}

@media (min-width: 1400px) {
    .hero-section.cleanpro-elix-hero {
        min-height: 900px;
    }

    .hero-section .cleanpro-elix-title {
        font-size: 90px;
    }
}

@media (max-width: 991.98px) {
    .hero-section.cleanpro-elix-hero {
        min-height: auto;
    }

    .cleanpro-elix-hero-inner {
        min-height: auto;
        padding-top: 132px;
    }

    .hero-section .cleanpro-elix-title {
        font-size: clamp(38px, 8vw, 64px);
        line-height: 1.02;
    }
}

/* Final hero readability adjustment after visual restoration. */
.hero-section.cleanpro-elix-hero {
    min-height: 760px;
}

.cleanpro-elix-hero-inner {
    min-height: 660px;
    padding-top: clamp(108px, 13vh, 138px);
}

.cleanpro-elix-copy {
    max-width: min(720px, 100%);
    padding-bottom: clamp(1.75rem, 5vh, 4rem);
}

.hero-section .cleanpro-elix-title {
    font-size: clamp(44px, 4.9vw, 68px);
    line-height: 0.98;
    max-width: min(680px, 100%);
}

.cleanpro-reveal-word {
    margin-right: 0.12em;
}

.cleanpro-inline-capsule {
    display: none;
}

.cleanpro-elix-actions {
    align-items: center;
    margin-top: clamp(1.25rem, 3vw, 2.1rem);
}

.cleanpro-elix-primary {
    height: 58px;
    min-width: 230px;
}

.cleanpro-elix-actions p {
    font-size: 1rem;
    max-width: 360px;
    padding: 0.85rem 1rem;
}

.cleanpro-elix-panel {
    min-height: 170px;
}

.cleanpro-cookie-banner {
    max-width: min(540px, calc(100vw - 40px));
}

@media (min-width: 1400px) {
    .hero-section .cleanpro-elix-title {
        font-size: 72px;
    }
}

@media (max-width: 991.98px) {
    .hero-section.cleanpro-elix-hero {
        min-height: auto;
    }

    .cleanpro-elix-hero-inner {
        min-height: auto;
    }

    .hero-section .cleanpro-elix-title {
        font-size: clamp(34px, 7.4vw, 52px);
        line-height: 1.04;
    }
}

/* Swinter-inspired B2B homepage direction: calm brand system, service-first navigation. */
.home .topbar {
    background: rgba(3, 8, 7, 0.9);
}

.home .main-nav {
    background: rgba(5, 11, 10, 0.82) !important;
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

.hero-section.cleanpro-elix-hero {
    min-height: 820px;
}

.hero-section.cleanpro-elix-hero::before {
    background:
        linear-gradient(90deg, rgba(3, 7, 6, 0.94) 0%, rgba(4, 12, 10, 0.78) 46%, rgba(4, 12, 10, 0.36) 100%),
        linear-gradient(180deg, rgba(3, 7, 6, 0.22), rgba(3, 7, 6, 0.78));
}

.hero-section.cleanpro-elix-hero::after {
    opacity: 0.35;
}

.hero-section-image {
    filter: saturate(0.8) contrast(1.06);
    opacity: 0.52;
}

.cleanpro-elix-hero-inner {
    justify-content: flex-start;
    min-height: 690px;
    padding-top: clamp(150px, 18vh, 190px);
}

.cleanpro-elix-copy {
    max-width: min(760px, 100%);
}

.cleanpro-swinter-title {
    display: grid;
    gap: 0.2em;
    letter-spacing: 0;
    margin: 0;
}

.cleanpro-swinter-title-main,
.cleanpro-swinter-title-sub {
    animation: fadeUp 760ms cubic-bezier(0.16, 1, 0.3, 1) both;
    display: block;
}

.cleanpro-swinter-title-main {
    color: #fff;
    font-size: clamp(44px, 5.5vw, 78px);
    font-weight: 900;
    line-height: 0.98;
    max-width: 740px;
}

.cleanpro-swinter-title-sub {
    animation-delay: 120ms;
    color: rgba(255, 255, 255, 0.64);
    font-size: clamp(27px, 3.25vw, 48px);
    font-weight: 800;
    line-height: 1.02;
    max-width: 690px;
}

.hero-section .cleanpro-elix-title.cleanpro-swinter-title {
    font-size: inherit;
    line-height: inherit;
    max-width: min(760px, 100%);
    text-shadow: 0 24px 54px rgba(0, 0, 0, 0.42);
}

.cleanpro-elix-actions {
    align-items: center;
    margin-top: 1.65rem;
}

.cleanpro-elix-actions p {
    background: transparent;
    border: 0;
    color: rgba(255, 255, 255, 0.78);
    max-width: 430px;
    padding: 0;
}

.cleanpro-elix-primary {
    border-radius: 8px;
    height: 56px;
    min-width: 210px;
}

.cleanpro-hero-service-map {
    animation: fadeUp 760ms cubic-bezier(0.16, 1, 0.3, 1) 420ms both;
    display: grid;
    gap: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: clamp(2rem, 5vh, 3.8rem);
    max-width: 920px;
}

.cleanpro-hero-service-map a {
    background: rgba(255, 255, 255, 0.052);
    border: 1px solid rgba(255, 255, 255, 0.11);
    color: #fff;
    display: grid;
    gap: 0.55rem;
    min-height: 118px;
    padding: 1rem;
    transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.cleanpro-hero-service-map a + a {
    border-left: 0;
}

.cleanpro-hero-service-map a:hover,
.cleanpro-hero-service-map a:focus {
    background: rgba(33, 167, 122, 0.14);
    border-color: rgba(199, 226, 79, 0.28);
    transform: translateY(-3px);
}

.cleanpro-hero-service-map span {
    color: var(--cp-lime);
    font-size: 0.78rem;
    font-weight: 900;
}

.cleanpro-elix-panels {
    background: rgba(3, 8, 7, 0.82);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.cleanpro-elix-panel {
    min-height: 158px;
}

.cleanpro-elix-panel-assessment,
.cleanpro-elix-panel-carousel,
.cleanpro-elix-panel-proof {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.02)),
        rgba(8, 16, 14, 0.92);
}

.stats-band {
    padding-top: 3rem;
}

.section-block {
    padding: clamp(5rem, 8vw, 7rem) 0;
}

.section-heading {
    display: grid;
    gap: 0.65rem;
    grid-template-columns: minmax(0, 0.85fr) minmax(280px, 0.55fr);
    margin-bottom: 2.4rem;
}

.section-heading .eyebrow {
    grid-column: 1 / -1;
}

.section-heading h2 {
    font-size: clamp(2.25rem, 4vw, 4.8rem);
    line-height: 0.96;
    margin: 0;
}

.section-heading p {
    align-self: end;
    font-size: 1.03rem;
    margin: 0;
}

.feature-card,
.product-card,
.solution-card,
.home-doc-card {
    border-radius: 8px;
    min-height: 100%;
}

.feature-card,
.solution-card {
    min-height: 270px;
}

.feature-card span,
.text-link {
    margin-top: auto;
}

@media (max-width: 991.98px) {
    .cleanpro-elix-hero-inner {
        padding-top: 132px;
    }

    .cleanpro-hero-service-map {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cleanpro-hero-service-map a:nth-child(odd) {
        border-left: 1px solid rgba(255, 255, 255, 0.11);
    }

    .section-heading {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .cleanpro-swinter-title-main {
        font-size: 36px;
    }

    .cleanpro-swinter-title-sub {
        font-size: 25px;
    }

    .cleanpro-hero-service-map {
        grid-template-columns: 1fr;
    }

    .cleanpro-hero-service-map a {
        min-height: auto;
    }

    .cleanpro-hero-service-map a + a {
        border-left: 1px solid rgba(255, 255, 255, 0.11);
        border-top: 0;
    }
}

/* Compact homepage pass: keep the front page focused and product categories scannable. */
.home .section-block {
    padding: clamp(3.25rem, 5.6vw, 5rem) 0;
}

.home .oem-section,
.home .rfq-section,
.home .factory-tour-section {
    padding: clamp(3.5rem, 5.8vw, 5.25rem) 0;
}

.home .stats-band {
    padding-top: 2rem;
}

.cleanpro-compact-products.section-block {
    padding: clamp(2.75rem, 4.8vw, 4.25rem) 0;
}

.cleanpro-compact-products .container {
    max-width: 1320px;
}

.cleanpro-compact-products .cleanpro-compact-heading {
    align-items: end;
    gap: 0.7rem 2rem;
    grid-template-columns: minmax(0, 0.76fr) minmax(300px, 0.44fr);
    margin-bottom: 1.45rem;
    max-width: none;
}

.cleanpro-compact-products .cleanpro-compact-heading h2 {
    font-size: clamp(2rem, 3vw, 3.25rem);
    line-height: 1;
    max-width: 820px;
}

.cleanpro-compact-products .cleanpro-compact-heading p {
    color: rgba(222, 232, 228, 0.72);
    font-size: 0.98rem;
    line-height: 1.62;
}

.cleanpro-category-grid.row {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-left: 0;
    margin-right: 0;
}

.cleanpro-category-grid.row > [class*="col-"] {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
}

.cleanpro-category-card.feature-card {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
    min-height: 176px;
    padding: 1rem;
}

.cleanpro-category-card .home-card-image {
    aspect-ratio: 16 / 7;
    border-radius: 6px;
    margin-bottom: 0;
}

.cleanpro-category-card.feature-card i {
    align-items: center;
    display: inline-flex;
    font-size: 1.35rem;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.cleanpro-category-card.feature-card h3 {
    font-size: 1rem;
    line-height: 1.22;
    margin: 0;
}

.cleanpro-category-card.feature-card p {
    color: rgba(222, 232, 228, 0.68);
    display: -webkit-box;
    font-size: 0.9rem;
    line-height: 1.45;
    margin: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.cleanpro-category-card.feature-card span {
    align-items: center;
    display: inline-flex;
    font-size: 0.78rem;
    gap: 0.35rem;
    letter-spacing: 0.02em;
    margin-top: auto;
    text-transform: uppercase;
}

.cleanpro-category-card.feature-card span::after {
    border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    content: "";
    height: 0.45rem;
    transform: rotate(45deg);
    width: 0.45rem;
}

@media (max-width: 1199.98px) {
    .cleanpro-category-grid.row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .home .section-block,
    .home .oem-section,
    .home .rfq-section,
    .home .factory-tour-section {
        padding: 3rem 0;
    }

    .cleanpro-compact-products .cleanpro-compact-heading {
        grid-template-columns: 1fr;
        margin-bottom: 1.2rem;
    }

    .cleanpro-category-grid.row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 479.98px) {
    .cleanpro-category-grid.row {
        grid-template-columns: 1fr;
    }

    .cleanpro-category-card.feature-card {
        min-height: 150px;
    }
}

/* Hero support strip: make the buyer highlights feel integrated with the dark homepage. */
.home .cleanpro-elix-panels {
    background: rgba(7, 14, 12, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 8px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.26);
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) minmax(0, 1.05fr);
    margin: clamp(1.5rem, 3vw, 2.25rem) auto 0;
    max-width: 1060px;
    overflow: hidden;
    width: calc(100% - 40px);
}

.home .cleanpro-elix-panel {
    align-items: center;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    min-height: 132px;
    padding: clamp(1.15rem, 2vw, 1.55rem);
}

.home .cleanpro-elix-panel:last-child {
    border-right: 0;
}

.home .cleanpro-elix-panel-assessment,
.home .cleanpro-elix-panel-carousel,
.home .cleanpro-elix-panel-proof {
    animation: fadeUp 680ms cubic-bezier(0.16, 1, 0.3, 1) both;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.018)),
        rgba(9, 18, 15, 0.92);
    backdrop-filter: blur(14px);
}

.home .cleanpro-elix-panel-carousel {
    animation-delay: 80ms;
}

.home .cleanpro-elix-panel-proof {
    animation-delay: 160ms;
}

.home .cleanpro-elix-panel-assessment h2 {
    color: #fff;
    font-family: var(--cp-font-body);
    font-size: clamp(1.05rem, 1.45vw, 1.35rem);
    font-weight: 800;
    line-height: 1.18;
    margin: 0;
    max-width: 260px;
}

.home .cleanpro-elix-panel-assessment a {
    color: var(--cp-green);
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    margin-top: 0.85rem;
    text-decoration: none;
    text-transform: uppercase;
}

.home .cleanpro-panel-mark {
    height: 100%;
    mix-blend-mode: normal;
    opacity: 0.14;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 100%);
    width: 48%;
}

.home .cleanpro-elix-carousel-card {
    inset: clamp(1.1rem, 2vw, 1.55rem);
}

.home .cleanpro-elix-carousel-card p {
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.95rem;
    line-height: 1.35;
}

.home .cleanpro-elix-icon {
    flex-basis: 42px;
    height: 42px;
    width: 42px;
}

.home .cleanpro-elix-icon i {
    color: #fff;
    font-size: 1rem;
}

.home .cleanpro-elix-dots {
    bottom: 1rem;
    left: clamp(1.1rem, 2vw, 1.55rem);
    right: clamp(1.1rem, 2vw, 1.55rem);
}

.home .cleanpro-elix-panel-proof {
    gap: 1rem;
}

.home .cleanpro-elix-panel-proof img {
    background: rgba(255, 255, 255, 0.06);
    border-radius: 6px;
    height: 70px;
    object-fit: cover;
    width: 112px;
}

.home .cleanpro-elix-panel-proof strong {
    color: #fff;
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    font-weight: 800;
}

.home .cleanpro-elix-panel-proof p {
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.9rem;
    line-height: 1.25;
    max-width: 210px;
}

.home .stats-band {
    padding-top: clamp(1.25rem, 3vw, 2rem);
}

.home .stats-grid {
    border-radius: 8px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1060px;
    overflow: hidden;
}

@media (max-width: 991.98px) {
    .home .cleanpro-elix-panels {
        grid-template-columns: 1fr;
        max-width: 720px;
    }

    .home .cleanpro-elix-panel {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        border-right: 0;
        min-height: 124px;
    }

    .home .cleanpro-elix-panel:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 575.98px) {
    .home .cleanpro-elix-panels {
        margin-top: 1.5rem;
        width: calc(100% - 28px);
    }

    .home .cleanpro-elix-panel-proof img {
        display: none;
    }
}

/* Above-the-fold compression: shorter hero, compact services, horizontal stats. */
.home .hero-section.cleanpro-elix-hero {
    min-height: auto;
}

.home .cleanpro-elix-hero-inner {
    justify-content: flex-start;
    min-height: auto;
    padding-bottom: clamp(2rem, 4vw, 3rem);
    padding-top: clamp(120px, 13vh, 150px);
}

.home .cleanpro-elix-copy {
    padding-bottom: 0;
}

.home .cleanpro-elix-actions {
    margin-top: clamp(1rem, 2vw, 1.5rem);
}

.home .cleanpro-hero-service-map {
    margin-top: clamp(1.25rem, 3vw, 2rem);
    max-width: 760px;
}

.home .cleanpro-hero-service-map a {
    gap: 0.35rem;
    min-height: 88px;
    padding: 0.85rem 1rem;
}

.home .cleanpro-elix-panels {
    margin-top: clamp(1.1rem, 2.2vw, 1.7rem);
}

.home .cleanpro-elix-panel {
    min-height: 116px;
    padding: 1rem 1.25rem;
}

.home .stats-band {
    padding: 0 0 clamp(1.5rem, 3vw, 2rem);
}

.home .stats-grid {
    background: rgba(9, 18, 15, 0.88);
    box-shadow: 0 18px 54px rgba(0, 0, 0, 0.22);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home .stat-item {
    align-items: baseline;
    display: flex;
    gap: 0.8rem;
    min-height: 74px;
    padding: 1rem 1.2rem;
}

.home .stat-item strong {
    font-size: clamp(1.55rem, 2.2vw, 2rem);
    min-width: max-content;
}

.home .stat-item span {
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.86rem;
    line-height: 1.25;
    margin-top: 0;
}

@media (max-width: 991.98px) {
    .home .cleanpro-elix-hero-inner {
        padding-top: 118px;
    }

    .home .cleanpro-hero-service-map {
        max-width: none;
    }

    .home .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home .stat-item:nth-child(2) {
        border-right: 0;
    }
}

@media (max-width: 575.98px) {
    .home .cleanpro-elix-hero-inner {
        padding-bottom: 1.5rem;
        padding-top: 112px;
    }

    .home .stats-grid {
        grid-template-columns: 1fr;
    }

    .home .stat-item {
        border-right: 0;
        min-height: 62px;
        padding: 0.85rem 1rem;
    }
}

/* Final height trim: keep homepage hero premium but less vertical. */
.home .hero-section .cleanpro-elix-title.cleanpro-swinter-title {
    max-width: min(660px, 100%);
}

.home .cleanpro-swinter-title-main {
    font-size: clamp(40px, 4.4vw, 60px);
    line-height: 0.98;
}

.home .cleanpro-swinter-title-sub {
    font-size: clamp(24px, 2.55vw, 36px);
    line-height: 1.02;
    max-width: 620px;
}

.home .cleanpro-elix-hero-inner {
    padding-top: clamp(108px, 12vh, 132px);
}

.home .cleanpro-elix-primary {
    height: 52px;
    min-width: 190px;
}

.home .cleanpro-elix-actions p {
    font-size: 0.94rem;
    line-height: 1.45;
    max-width: 410px;
}

.home .cleanpro-hero-service-map {
    margin-top: clamp(1rem, 2.4vw, 1.5rem);
    max-width: 760px;
}

.home .cleanpro-hero-service-map a {
    min-height: 74px;
    padding: 0.7rem 0.9rem;
}

.home .cleanpro-elix-panels {
    margin-top: clamp(0.9rem, 1.8vw, 1.25rem);
}

.home .cleanpro-elix-panel {
    min-height: 104px;
    padding: 0.9rem 1.1rem;
}

.home .cleanpro-elix-panel-assessment h2 {
    font-size: clamp(1rem, 1.25vw, 1.2rem);
}

.home .cleanpro-elix-panel-proof img {
    height: 58px;
    width: 96px;
}

.home .stats-grid {
    max-width: 1060px;
}

.home .stat-item {
    min-height: 62px;
    padding: 0.78rem 1rem;
}

.home .stat-item strong {
    font-size: clamp(1.35rem, 1.9vw, 1.7rem);
}

@media (max-width: 991.98px) {
    .home .cleanpro-swinter-title-main {
        font-size: clamp(34px, 7vw, 50px);
    }

    .home .cleanpro-swinter-title-sub {
        font-size: clamp(22px, 4.8vw, 32px);
    }
}

/* Whole homepage compact pass: every lower section uses the same restrained B2B rhythm. */
.home .section-block,
.home .oem-section,
.home .factory-tour-section,
.home .rfq-section,
.home .page-builder-section {
    padding: clamp(2.25rem, 4vw, 3.4rem) 0;
}

.home .section-block > .container,
.home .oem-section > .container,
.home .factory-tour-section > .container,
.home .rfq-section > .container {
    max-width: 1180px;
}

.home .section-heading,
.home .section-heading-with-action {
    align-items: end;
    gap: 0.7rem 2rem;
    grid-template-columns: minmax(0, 0.78fr) minmax(280px, 0.42fr);
    margin-bottom: 1.2rem;
    max-width: none;
}

.home .section-heading-with-action {
    display: grid;
}

.home .section-heading-with-action > div {
    max-width: none;
}

.home .section-heading h2,
.home .oem-section h2,
.home .quality-section h2,
.home .market-section h2,
.home .rfq-section h2,
.home .factory-tour-section .section-heading h2 {
    font-size: clamp(1.75rem, 2.7vw, 3rem);
    line-height: 1;
    max-width: 780px;
}

.home .section-heading p,
.home .oem-section p,
.home .quality-section p,
.home .market-section p,
.home .rfq-section p,
.home .factory-tour-section .section-heading p {
    font-size: 0.96rem;
    line-height: 1.55;
    margin-bottom: 0;
}

.home .section-heading .btn,
.home .section-heading-with-action .btn {
    justify-self: end;
    min-height: 42px;
    padding: 0.65rem 1rem;
}

.home .section-block .row.g-4,
.home .section-block .row.g-5,
.home .oem-section .row.g-5,
.home .quality-section .row.g-5,
.home .market-section .row.g-5,
.home .rfq-section .row.g-5 {
    display: grid;
    gap: 14px;
    margin-left: 0;
    margin-right: 0;
}

.home .section-block .row.g-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home .section-block .row.g-5,
.home .oem-section .row.g-5,
.home .quality-section .row.g-5,
.home .market-section .row.g-5,
.home .rfq-section .row.g-5 {
    grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
}

.home .section-block .row > [class*="col-"],
.home .oem-section .row > [class*="col-"],
.home .quality-section .row > [class*="col-"],
.home .market-section .row > [class*="col-"],
.home .rfq-section .row > [class*="col-"] {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
}

.home .product-card,
.home .solution-card,
.home .advantage-item,
.home .quality-step,
.home .home-doc-card,
.home .factory-tour-item,
.home .market-panel {
    border-radius: 8px;
    min-height: 0;
    padding: 1rem;
}

.home .product-card h3,
.home .solution-card h3,
.home .advantage-item h3,
.home .quality-step h3,
.home .home-doc-card h3,
.home .factory-tour-item h3 {
    font-size: 1rem;
    line-height: 1.25;
    margin: 0 0 0.4rem;
}

.home .product-card p,
.home .solution-card p,
.home .advantage-item p,
.home .quality-step p,
.home .home-doc-card p,
.home .factory-tour-item p {
    display: -webkit-box;
    font-size: 0.9rem;
    line-height: 1.45;
    margin-bottom: 0.75rem;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home .product-thumb,
.home .home-card-image,
.home .certificate-image {
    aspect-ratio: 16 / 8;
    margin-bottom: 0.75rem;
}

.home .product-thumb img,
.home .certificate-image img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.home .product-card .btn,
.home .home-doc-card .btn,
.home .text-link {
    font-size: 0.82rem;
    min-height: 38px;
    padding: 0.55rem 0.8rem;
}

.home #applications .solution-card {
    align-items: flex-start;
    display: flex;
    gap: 0.85rem;
    min-height: 128px;
}

.home #applications .solution-card i {
    flex: 0 0 42px;
    font-size: 1.15rem;
    height: 42px;
    width: 42px;
}

.home #applications .solution-card .home-card-image {
    aspect-ratio: 1;
    flex: 0 0 72px;
    height: 72px;
    margin-bottom: 0;
    width: 72px;
}

.home #oem .factory-visual {
    max-height: 330px;
}

.home #oem .factory-visual img {
    max-height: 330px;
    object-fit: cover;
}

.home .process-list {
    gap: 0.55rem;
    margin: 1rem 0;
}

.home .process-list span,
.home .market-chip-list span {
    font-size: 0.84rem;
    padding: 0.55rem 0.75rem;
}

.home .advantage-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.home .advantage-item {
    display: grid;
    gap: 0.55rem;
}

.home .advantage-item i,
.home .quality-step i,
.home .product-icon i {
    font-size: 1.1rem;
    height: 40px;
    width: 40px;
}

.home .quality-grid {
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home .quality-step {
    display: grid;
    gap: 0.45rem;
    min-height: 150px;
}

.home .quality-step > span {
    font-size: 0.78rem;
}

.home .factory-tour-carousel {
    display: none;
}

.home .factory-tour-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home .factory-tour-item {
    align-items: center;
    display: grid;
    gap: 0.9rem;
    grid-template-columns: 112px minmax(0, 1fr);
}

.home .factory-tour-item img {
    aspect-ratio: 1;
    border-radius: 6px;
    height: auto;
    object-fit: cover;
    width: 112px;
}

.home .home-doc-card {
    display: flex;
    flex-direction: column;
}

.home .market-chip-list {
    gap: 0.55rem;
    margin-top: 1rem;
}

.home .market-panel {
    min-height: 220px;
}

.home .market-panel i {
    font-size: 1.7rem;
}

.home .market-panel blockquote {
    font-size: clamp(1.2rem, 2vw, 1.75rem);
    line-height: 1.18;
    margin-bottom: 0.8rem;
}

.home .rfq-points {
    display: grid;
    gap: 0.5rem;
    margin: 1rem 0 0;
}

.home .rfq-points li {
    font-size: 0.92rem;
}

.home .rfq-form {
    padding: clamp(1rem, 2vw, 1.35rem);
}

@media (max-width: 1199.98px) {
    .home .advantage-grid,
    .home .quality-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .home .section-heading,
    .home .section-heading-with-action,
    .home .section-block .row.g-5,
    .home .oem-section .row.g-5,
    .home .quality-section .row.g-5,
    .home .market-section .row.g-5,
    .home .rfq-section .row.g-5 {
        grid-template-columns: 1fr;
    }

    .home .section-heading .btn,
    .home .section-heading-with-action .btn {
        justify-self: start;
    }

    .home .section-block .row.g-4,
    .home .advantage-grid,
    .home .quality-grid,
    .home .factory-tour-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .home .section-block .row.g-4,
    .home .advantage-grid,
    .home .quality-grid,
    .home .factory-tour-grid {
        grid-template-columns: 1fr;
    }

    .home .factory-tour-item {
        grid-template-columns: 88px minmax(0, 1fr);
    }

    .home .factory-tour-item img {
        width: 88px;
    }
}

/* Specific homepage grids after the global compact pass. */
.home #products .cleanpro-category-grid.row {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.home #products .cleanpro-category-card.feature-card {
    min-height: 170px;
}

.home .cleanpro-home-hot-products .row.g-4 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.home .cleanpro-home-hot-products .product-card {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    padding: 0.85rem;
}

.home .cleanpro-home-hot-products .product-thumb {
    aspect-ratio: 16 / 9;
    margin: 0 0 0.55rem;
    width: 100%;
}

.home .cleanpro-home-hot-products .product-card h3 {
    font-size: 0.95rem;
    line-height: 1.22;
}

.home .cleanpro-home-hot-products .product-card p {
    font-size: 0.84rem;
    line-height: 1.4;
    -webkit-line-clamp: 2;
}

.home .cleanpro-home-hot-products .product-card .btn {
    font-size: 0.76rem;
    justify-content: center;
    margin-top: auto;
    min-height: 34px;
    padding: 0.45rem 0.55rem;
}

.home .cleanpro-home-certificates .row.g-4,
.home .cleanpro-home-downloads .row.g-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home .cleanpro-home-certificates .home-doc-card,
.home .cleanpro-home-downloads .home-doc-card {
    min-height: 180px;
}

/* Second compression pass for sections that were still too tall in measurement. */
.home .cleanpro-home-hot-products .product-thumb {
    max-height: 104px;
}

.home .cleanpro-home-hot-products .product-card p {
    -webkit-line-clamp: 1;
}

.home .cleanpro-home-hot-products .product-card .btn i {
    display: none;
}

.home .cleanpro-home-applications .solution-card {
    min-height: 108px;
    padding: 0.85rem;
}

.home #oem .factory-visual,
.home #oem .factory-visual img {
    max-height: 260px;
}

.home .advantage-item p,
.home .quality-step p {
    -webkit-line-clamp: 1;
}

.home .cleanpro-home-certificates .certificate-image {
    display: none;
}

.home .cleanpro-home-certificates .home-doc-card,
.home .cleanpro-home-downloads .home-doc-card {
    min-height: 150px;
    padding: 0.9rem;
}

.home .cleanpro-home-certificates .home-doc-card p,
.home .cleanpro-home-downloads .home-doc-card p {
    -webkit-line-clamp: 2;
}

.home .factory-tour-section .section-heading {
    margin-bottom: 1rem;
}

.home .factory-tour-item {
    grid-template-columns: 90px minmax(0, 1fr);
    min-height: 118px;
    padding: 0.85rem;
}

.home .factory-tour-item img {
    width: 90px;
}

.home .market-section .row.g-5 {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.7fr);
}

.home .market-panel {
    min-height: 170px;
    padding: 1rem;
}

.home .market-panel blockquote {
    font-size: clamp(1.05rem, 1.55vw, 1.35rem);
}

.home .rfq-section .row.g-5 {
    grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
}

.home .rfq-section h2 {
    font-size: clamp(1.65rem, 2.25vw, 2.35rem);
}

.home .rfq-form .row {
    row-gap: 0.7rem;
}

.home .rfq-form .form-label {
    font-size: 0.84rem;
    margin-bottom: 0.25rem;
}

.home .rfq-form .form-control,
.home .rfq-form .form-select {
    min-height: 40px;
    padding: 0.55rem 0.75rem;
}

.home .rfq-form textarea.form-control {
    min-height: 88px;
}

.home .page-builder-section {
    padding: 1.5rem 0;
}

.home #rfq .rfq-form .row.g-3 {
    display: grid;
    gap: 0.65rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-left: 0;
    margin-right: 0;
}

.home #rfq .rfq-form .row.g-3 > [class*="col-"] {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
}

.home #rfq .rfq-form .row.g-3 > .col-12:nth-child(9),
.home #rfq .rfq-form .row.g-3 > .col-12:nth-child(10) {
    grid-column: span 2;
}

.home #rfq .rfq-form .row.g-3 > .col-12:nth-child(11) {
    grid-column: 1 / -1;
}

.home #rfq .rfq-form textarea.form-control {
    min-height: 72px;
}

.home #rfq .rfq-form input[type="file"].form-control {
    min-height: 40px;
}

.home #rfq .rfq-form .form-text {
    align-items: center;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 6px;
    color: rgba(226, 235, 232, 0.68);
    display: flex;
    font-size: 0.74rem;
    line-height: 1.2;
    margin: 0.35rem 0 0;
    min-height: 26px;
    overflow: hidden;
    padding: 0.35rem 0.55rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home #rfq .rfq-form .btn-primary {
    min-height: 42px;
    padding: 0.65rem 1rem;
    width: auto;
}

@media (max-width: 1199.98px) {
    .home #rfq .rfq-form .row.g-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home #rfq .rfq-form .row.g-3 > .col-12:nth-child(9),
    .home #rfq .rfq-form .row.g-3 > .col-12:nth-child(10),
    .home #rfq .rfq-form .row.g-3 > .col-12:nth-child(11) {
        grid-column: 1 / -1;
    }
}

@media (max-width: 575.98px) {
    .home #rfq .rfq-form .row.g-3 {
        grid-template-columns: 1fr;
    }
}

/* RFQ visual repair: prevent compressed grid overlap and restyle native file input. */
.home #rfq .rfq-form {
    overflow: visible;
}

.home #rfq .rfq-form .row.g-3 > [class*="col-"] {
    display: grid;
    gap: 0.28rem;
    min-width: 0;
    width: 100% !important;
}

.home #rfq .rfq-form .row.g-3 > .col-12:nth-child(10) {
    align-content: start;
    gap: 0.38rem;
    grid-template-rows: auto 40px auto;
}

.home #rfq .rfq-form .form-label {
    color: rgba(255, 255, 255, 0.78);
    display: block;
    font-size: 0.78rem;
    line-height: 1.2;
    margin: 0;
    min-height: 1rem;
    white-space: nowrap;
}

.home #rfq .rfq-form .form-control,
.home #rfq .rfq-form .form-select {
    box-sizing: border-box;
    display: block;
    font-size: 0.88rem;
    height: 40px;
    line-height: 1.2;
    min-height: 40px;
    width: 100% !important;
}

.home #rfq .rfq-form textarea.form-control {
    height: 78px;
    min-height: 78px;
    resize: vertical;
}

.home #rfq .rfq-form input[type="file"].form-control {
    align-items: center;
    cursor: pointer;
    display: flex;
    height: 40px;
    overflow: hidden;
    padding: 0;
}

.home #rfq .rfq-form input[type="file"].form-control::file-selector-button {
    background: linear-gradient(135deg, rgba(34, 183, 133, 0.96), rgba(19, 111, 84, 0.96));
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.12);
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    height: 40px;
    margin: 0 0.75rem 0 0;
    padding: 0 0.95rem;
}

.home #rfq .rfq-form input[type="file"].form-control:hover::file-selector-button {
    background: linear-gradient(135deg, #27c891, #168765);
}

.home #rfq .rfq-form .form-text {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    align-items: flex-start;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 6px;
    color: rgba(226, 235, 232, 0.72);
    display: -webkit-box;
    font-size: 0.73rem;
    line-height: 1.35;
    margin: 0;
    max-height: 42px;
    min-height: 36px;
    overflow: hidden;
    padding: 0.38rem 0.55rem;
    white-space: normal;
}

.home #rfq .rfq-form .btn-primary {
    justify-self: start;
}

/* Responsive media fit: product/document images should show the full item, not crop it. */
.product-thumb,
.listing-thumb,
.product-main-image,
.product-gallery-thumb,
.certificate-image {
    background:
        radial-gradient(circle at 50% 22%, rgba(34, 183, 133, 0.13), transparent 42%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.025));
}

.product-thumb {
    aspect-ratio: 4 / 3;
    box-sizing: border-box;
    min-height: 168px;
    padding: clamp(0.7rem, 1.5vw, 1.05rem);
}

.product-thumb::before {
    content: none;
}

.product-thumb img,
.listing-thumb img,
.product-main-image img,
.product-gallery-thumb img,
.certificate-image img {
    display: block;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
    position: static;
    width: 100%;
}

.listing-thumb {
    aspect-ratio: 4 / 3;
    min-height: 0;
    padding: clamp(0.75rem, 1.6vw, 1.1rem);
}

.product-main-image {
    aspect-ratio: 1 / 1;
    min-height: 360px;
    padding: clamp(1rem, 2vw, 1.6rem);
}

.product-gallery-thumb {
    aspect-ratio: 1 / 1;
    padding: 0.35rem;
}

.product-gallery-thumb img {
    aspect-ratio: auto;
}

.certificate-image {
    aspect-ratio: 4 / 3;
    padding: 0.65rem;
}

.certificate-image img {
    aspect-ratio: auto;
}

.home #products .cleanpro-category-card .home-card-image,
.home #applications .solution-card .home-card-image {
    background:
        radial-gradient(circle at 50% 28%, rgba(186, 226, 74, 0.16), transparent 46%),
        rgba(255, 255, 255, 0.055);
    box-sizing: border-box;
    object-fit: contain;
    object-position: center;
    padding: 0.45rem;
}

.home #products .cleanpro-category-card .home-card-image {
    aspect-ratio: 4 / 3;
    height: 74px;
}

.home #applications .solution-card .home-card-image {
    aspect-ratio: 4 / 3;
    height: 86px;
}

.home .cleanpro-home-hot-products .product-thumb {
    aspect-ratio: 4 / 3;
    max-height: none;
    min-height: 128px;
    padding: 0.65rem;
}

.home .product-thumb img,
.home .certificate-image img,
.home .cleanpro-home-hot-products .product-thumb img {
    height: 100%;
    object-fit: contain;
    object-position: center;
    position: static;
    width: 100%;
}

@media (max-width: 1199.98px) {
    .home .cleanpro-home-hot-products .product-thumb {
        min-height: 142px;
    }
}

@media (max-width: 767.98px) {
    .product-main-image {
        min-height: 280px;
    }

    .home .cleanpro-home-hot-products .product-thumb {
        min-height: 150px;
    }
}

/* Compact footer: horizontal, lower, and aligned with the dark industrial theme. */
.site-footer {
    background:
        linear-gradient(180deg, rgba(7, 14, 12, 0.96), #030504);
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    color: rgba(226, 235, 232, 0.74);
    padding: clamp(1.7rem, 3vw, 2.4rem) 0 1rem;
}

.site-footer .container {
    max-width: 1180px;
}

.cleanpro-footer-grid.row {
    display: grid;
    gap: 1.2rem 1.6rem;
    grid-template-columns: minmax(280px, 1.35fr) minmax(180px, 0.85fr) minmax(220px, 1fr) minmax(220px, 0.9fr);
    margin-left: 0;
    margin-right: 0;
}

.cleanpro-footer-grid.row > [class*="col-"] {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: auto;
}

.site-footer h2,
.site-footer h3 {
    color: #fff;
    margin: 0 0 0.7rem;
}

.site-footer h3 {
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.9rem;
}

.footer-brand {
    font-size: 1.3rem;
    line-height: 1.15;
}

.site-footer p {
    font-size: 0.9rem;
    line-height: 1.55;
    margin: 0 0 0.6rem;
    max-width: 560px;
}

.footer-contact {
    display: inline-flex;
    font-size: 0.9rem;
    margin-top: 0.1rem;
}

.footer-list {
    column-gap: 1rem;
}

.site-footer .col-sm-6.col-lg-3 .footer-list,
.site-footer .col-sm-6.col-lg-2 .footer-list {
    columns: 2;
}

.footer-list li {
    break-inside: avoid;
    font-size: 0.88rem;
    line-height: 1.35;
    margin-bottom: 0.42rem;
}

.site-footer a,
.footer-contact {
    color: rgba(226, 235, 232, 0.78);
}

.site-footer a:hover,
.site-footer a:focus {
    color: var(--cp-lime);
}

.footer-social {
    gap: 0.45rem;
    margin-top: 0.75rem;
}

.footer-social a {
    height: 32px;
    width: 32px;
}

.footer-bottom {
    align-items: center;
    border-top-color: rgba(255, 255, 255, 0.1);
    font-size: 0.82rem;
    gap: 0.7rem;
    margin-top: 1.35rem;
    padding-top: 0.85rem;
}

@media (max-width: 991.98px) {
    .cleanpro-footer-grid.row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .cleanpro-footer-grid.row {
        grid-template-columns: 1fr;
    }

    .site-footer .col-sm-6.col-lg-3 .footer-list,
    .site-footer .col-sm-6.col-lg-2 .footer-list {
        columns: 1;
    }
}

@media (max-width: 1199.98px) {
    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4,
    .home .cleanpro-home-certificates .row.g-4,
    .home .cleanpro-home-downloads .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 479.98px) {
    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4,
    .home .cleanpro-home-certificates .row.g-4,
    .home .cleanpro-home-downloads .row.g-4 {
        grid-template-columns: 1fr;
    }
}

/* White-yellow theme pass: replace the former dark green look without changing layout. */
body {
    background:
        radial-gradient(circle at 8% 0%, rgba(255, 216, 77, 0.22), transparent 34%),
        linear-gradient(180deg, #fffdf6 0%, #fff9e8 48%, #fffdf6 100%);
    color: var(--cp-text);
}

a,
.feature-card span,
.text-link,
.eyebrow,
.home .eyebrow,
.site-footer a:hover,
.site-footer a:focus {
    color: #b98200;
}

.btn-primary,
.rfq-form .btn-primary,
.home .rfq-form .btn-primary,
.home .cleanpro-elix-primary,
.main-nav .btn-primary {
    background: linear-gradient(135deg, #ffd84d, #f2a900);
    border-color: #e3a000;
    box-shadow: 0 12px 28px rgba(224, 161, 0, 0.2);
    color: #231a07;
}

.btn-primary:hover,
.btn-primary:focus,
.rfq-form .btn-primary:hover,
.home .cleanpro-elix-primary:hover,
.main-nav .btn-primary:hover {
    background: linear-gradient(135deg, #ffe27a, #f6b915);
    border-color: #c98c00;
    color: #1f1706;
}

.btn-outline-primary,
.home .product-card .btn,
.home .home-doc-card .btn {
    border-color: rgba(185, 130, 0, 0.42);
    color: #9b6b00;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.home .product-card .btn:hover,
.home .home-doc-card .btn:hover {
    background: #ffd84d;
    border-color: #e3a000;
    color: #241a06;
}

.content-page,
.muted-section,
.page-builder-section,
.home .section-block,
.home .muted-section,
.home .page-builder-section {
    background: transparent;
}

.topbar,
.home .topbar {
    background: rgba(255, 248, 220, 0.88);
    border-bottom: 1px solid rgba(122, 88, 11, 0.12);
    color: var(--cp-muted);
}

.main-nav,
.home .main-nav {
    background: rgba(255, 253, 246, 0.9) !important;
    border-bottom: 1px solid rgba(122, 88, 11, 0.14);
    box-shadow: 0 18px 45px rgba(91, 68, 18, 0.08);
}

.home .site-header {
    position: absolute;
}

.navbar-brand,
.brand-mark,
.home .navbar-brand,
.home .brand-mark,
.navbar .nav-link,
.home .navbar .nav-link,
.home .nav-link-group .dropdown-toggle-split,
.brand-subtitle,
.home .brand-subtitle {
    color: var(--cp-ink);
}

.navbar .nav-link:hover,
.navbar .nav-link:focus,
.home .navbar .nav-link:hover,
.home .navbar .nav-link:focus {
    color: #b98200;
}

.dropdown-menu,
.cleanpro-nav-menu .dropdown-menu {
    background: rgba(255, 253, 246, 0.98);
    border-color: rgba(122, 88, 11, 0.14);
    box-shadow: 0 24px 60px rgba(91, 68, 18, 0.14);
}

.dropdown-item,
.cleanpro-nav-menu .dropdown-item {
    color: var(--cp-text);
}

.dropdown-item:hover,
.dropdown-item:focus,
.cleanpro-nav-menu .dropdown-item:hover,
.cleanpro-nav-menu .dropdown-item:focus {
    background: #fff3bf;
    color: #8a5d00;
}

.header-search-form .form-control,
.home .header-search-form .form-control {
    background: #fff;
    border-color: rgba(122, 88, 11, 0.18);
    color: var(--cp-text);
}

.header-search-form .form-control::placeholder,
.home .header-search-form .form-control::placeholder {
    color: rgba(63, 55, 40, 0.56);
}

.cleanpro-elix-hero,
.hero-section,
.home .cleanpro-elix-hero {
    background:
        linear-gradient(90deg, rgba(255, 253, 246, 0.95) 0%, rgba(255, 246, 207, 0.84) 48%, rgba(255, 224, 97, 0.38) 100%),
        var(--hero-image, none) center/cover no-repeat;
    color: var(--cp-ink);
}

.hero-section-image {
    opacity: 0.2;
    mix-blend-mode: multiply;
}

.cleanpro-elix-title,
.home .cleanpro-elix-title,
.home .cleanpro-swinter-title-main,
.home .cleanpro-swinter-title-sub,
.cleanpro-elix-actions p,
.home .cleanpro-elix-actions p {
    color: var(--cp-ink);
    text-shadow: none;
}

.cleanpro-hero-service-map a,
.home .cleanpro-hero-service-map a,
.cleanpro-elix-panel,
.cleanpro-elix-panel-assessment,
.cleanpro-elix-panel-carousel,
.cleanpro-elix-panel-proof {
    background: rgba(255, 255, 255, 0.74);
    border: 1px solid rgba(122, 88, 11, 0.14);
    box-shadow: 0 18px 46px rgba(91, 68, 18, 0.1);
    color: var(--cp-text);
}

.cleanpro-hero-service-map a span,
.cleanpro-elix-panel-proof strong,
.cleanpro-elix-panel-assessment h2,
.cleanpro-elix-carousel-card p,
.cleanpro-elix-panel-proof p {
    color: var(--cp-ink);
}

.cleanpro-elix-icon.is-black,
.cleanpro-elix-icon.is-green,
.cleanpro-elix-icon.is-cyan,
.cleanpro-elix-icon.is-amber,
.feature-card i,
.solution-card i,
.advantage-item i,
.product-icon i,
.quality-step i {
    background: #fff3bf;
    color: #b98200;
}

.stats-band,
.stats-grid,
.stat-item {
    background: #fff;
}

.stats-grid,
.feature-card,
.product-card,
.solution-card,
.advantage-item,
.quality-step,
.home-doc-card,
.certificate-card,
.download-card,
.payment-card,
.payment-note,
.empty-state,
.rfq-form,
.home #rfq .rfq-form,
.market-panel,
.factory-tour-item,
.product-detail-tabs,
.product-main-image,
.product-gallery-thumb,
.listing-thumb,
.product-filter-wrap,
.archive-page-content {
    background: rgba(255, 255, 255, 0.9);
    border-color: rgba(122, 88, 11, 0.16);
    box-shadow: 0 16px 42px rgba(91, 68, 18, 0.08);
    color: var(--cp-text);
}

.feature-card:hover,
.solution-card:hover,
.product-card:hover,
.certificate-card:hover,
.download-card:hover,
.home-doc-card:hover,
.quality-step:hover {
    border-color: rgba(226, 160, 0, 0.52);
    box-shadow: 0 22px 58px rgba(224, 161, 0, 0.16);
}

.section-heading h2,
.home .section-heading h2,
.oem-section h2,
.quality-section h2,
.market-section h2,
.rfq-section h2,
.factory-tour-section .section-heading h2,
.feature-card h3,
.product-card h3,
.product-card h3 a,
.solution-card h3,
.advantage-item h3,
.quality-step h3,
.home-doc-card h3,
.home-doc-card h3 a,
.factory-tour-item h3,
.market-panel blockquote,
.site-footer h2,
.site-footer h3 {
    color: var(--cp-ink);
}

.section-heading p,
.home .section-heading p,
.oem-section p,
.quality-section p,
.market-section p,
.rfq-section p,
.factory-tour-section .section-heading p,
.feature-card p,
.product-card p,
.solution-card p,
.advantage-item p,
.quality-step p,
.home-doc-card p,
.factory-tour-item p,
.market-panel p,
.site-footer p,
.footer-contact,
.site-footer a {
    color: var(--cp-muted);
}

.product-thumb,
.home-card-image,
.certificate-image,
.listing-thumb,
.product-main-image,
.product-gallery-thumb,
.product-icon {
    background:
        radial-gradient(circle at 50% 20%, rgba(255, 216, 77, 0.32), transparent 48%),
        linear-gradient(145deg, #fff9e8, #ffffff);
}

.oem-section,
.factory-tour-section,
.quality-section,
.market-section,
.rfq-section {
    background:
        radial-gradient(circle at 82% 10%, rgba(255, 216, 77, 0.2), transparent 32%),
        linear-gradient(180deg, #fffdf6, #fff6d8);
    color: var(--cp-text);
}

.factory-tour-carousel,
.factory-visual {
    background: #fff9e8;
    border-color: rgba(122, 88, 11, 0.16);
}

.process-list span,
.market-chip-list span,
.product-card-meta span {
    background: #fff3bf;
    border-color: rgba(226, 160, 0, 0.24);
    color: #7a5400;
}

.rfq-points li,
.rfq-points i {
    color: var(--cp-text);
}

.form-control,
.form-select,
.home #rfq .rfq-form .form-control,
.home #rfq .rfq-form .form-select {
    background: #fff;
    border-color: rgba(122, 88, 11, 0.2);
    color: var(--cp-text);
}

.form-control:focus,
.form-select:focus {
    border-color: #f2b705;
    box-shadow: 0 0 0 0.2rem rgba(242, 183, 5, 0.18);
}

.home #rfq .rfq-form .form-label,
.home #rfq .rfq-form .form-text {
    color: var(--cp-muted);
}

.home #rfq .rfq-form .form-text {
    background: #fff8dc;
    border-color: rgba(122, 88, 11, 0.14);
}

.home #rfq .rfq-form input[type="file"].form-control::file-selector-button {
    background: linear-gradient(135deg, #ffd84d, #f2a900);
    border-right-color: rgba(122, 88, 11, 0.18);
    color: #241a06;
}

.home #rfq .rfq-form input[type="file"].form-control:hover::file-selector-button {
    background: linear-gradient(135deg, #ffe27a, #f6b915);
}

.site-footer {
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 216, 77, 0.28), transparent 36%),
        linear-gradient(180deg, #fff8dc, #fffdf6);
    border-top-color: rgba(122, 88, 11, 0.14);
    color: var(--cp-muted);
}

.footer-bottom {
    border-top-color: rgba(122, 88, 11, 0.14);
}

.whatsapp-float,
.cookie-banner .btn-primary {
    background: linear-gradient(135deg, #ffd84d, #f2a900);
    border-color: #e3a000;
    color: #231a07;
}

.cookie-banner {
    background: rgba(255, 253, 246, 0.96);
    border: 1px solid rgba(122, 88, 11, 0.16);
    box-shadow: 0 18px 48px rgba(91, 68, 18, 0.14);
    color: var(--cp-text);
}

/* Final specificity guard for late dark-theme rules. */
.home .hero-section.cleanpro-elix-hero,
.hero-section.cleanpro-elix-hero {
    background:
        radial-gradient(circle at 78% 14%, rgba(255, 216, 77, 0.42), transparent 30%),
        radial-gradient(circle at 12% 66%, rgba(255, 244, 190, 0.65), transparent 32%),
        linear-gradient(112deg, #fffdf6 0%, #fff4c7 50%, #ffffff 100%) !important;
    color: var(--cp-ink) !important;
}

.home .hero-section.cleanpro-elix-hero::before,
.hero-section.cleanpro-elix-hero::before,
.hero-section::before {
    background:
        linear-gradient(90deg, rgba(255, 253, 246, 0.92), rgba(255, 247, 216, 0.76), rgba(255, 216, 77, 0.2)) !important;
}

.home .hero-section.cleanpro-elix-hero::after,
.hero-section.cleanpro-elix-hero::after {
    display: none !important;
}

.home .hero-section-image,
.hero-section-image {
    filter: saturate(0.85) contrast(0.95);
    mix-blend-mode: multiply;
    opacity: 0.2 !important;
}

.home .main-nav,
.home .topbar {
    background: rgba(255, 253, 246, 0.92) !important;
    color: var(--cp-text) !important;
}

.topbar a,
.home .topbar a,
.topbar i,
.home .topbar i {
    color: var(--cp-muted) !important;
}

.home .header-search-form .btn,
.home .main-nav .btn-primary,
.main-nav .btn-primary,
.cleanpro-elix-primary,
.rfq-form .btn-primary,
.home .rfq-form .btn-primary {
    background: linear-gradient(135deg, #ffd84d, #f2a900) !important;
    border-color: #d99a00 !important;
    box-shadow: 0 12px 28px rgba(224, 161, 0, 0.2) !important;
    color: #231a07 !important;
}

.home .header-search-form .btn:hover,
.home .main-nav .btn-primary:hover,
.main-nav .btn-primary:hover,
.cleanpro-elix-primary:hover,
.rfq-form .btn-primary:hover,
.home .rfq-form .btn-primary:hover {
    background: linear-gradient(135deg, #ffe27a, #f6b915) !important;
    color: #1f1706 !important;
}

.cleanpro-elix-title,
.hero-section .cleanpro-elix-title,
.home .cleanpro-elix-title,
.home .cleanpro-swinter-title-main,
.home .cleanpro-swinter-title-sub,
.cleanpro-elix-eyebrow,
.hero-section .eyebrow,
.cleanpro-reveal-word .is-dim {
    color: var(--cp-ink) !important;
    -webkit-text-stroke: 0 !important;
    text-shadow: none !important;
}

.cleanpro-elix-actions p {
    background: rgba(255, 255, 255, 0.66) !important;
    border-color: rgba(122, 88, 11, 0.14) !important;
    color: var(--cp-text) !important;
}

.cleanpro-elix-panels {
    box-shadow: 0 -18px 60px rgba(91, 68, 18, 0.1) !important;
}

.cleanpro-hero-service-map a,
.home .cleanpro-hero-service-map a,
.cleanpro-elix-panel,
.home .cleanpro-elix-panel,
.cleanpro-elix-panel-assessment,
.home .cleanpro-elix-panel-assessment,
.cleanpro-elix-panel-carousel,
.home .cleanpro-elix-panel-carousel,
.cleanpro-elix-panel-proof,
.home .cleanpro-elix-panel-proof {
    background:
        radial-gradient(circle at 86% 8%, rgba(255, 216, 77, 0.22), transparent 38%),
        rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(122, 88, 11, 0.16) !important;
    box-shadow: 0 18px 46px rgba(91, 68, 18, 0.1) !important;
    color: var(--cp-text) !important;
}

.cleanpro-elix-panel-assessment h2,
.cleanpro-elix-panel-assessment a,
.cleanpro-elix-carousel-card p,
.cleanpro-elix-panel-proof strong,
.cleanpro-elix-panel-proof p,
.cleanpro-hero-service-map span {
    color: var(--cp-ink) !important;
}

.feature-card,
.product-card,
.solution-card,
.advantage-item,
.quality-step,
.home-doc-card,
.factory-tour-item,
.market-panel,
.rfq-form {
    background:
        radial-gradient(circle at 84% 8%, rgba(255, 216, 77, 0.14), transparent 38%),
        rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(122, 88, 11, 0.16) !important;
    box-shadow: 0 18px 42px rgba(91, 68, 18, 0.08) !important;
    color: var(--cp-text) !important;
}

.feature-card i,
.solution-card i,
.advantage-item i,
.quality-step i,
.product-icon i,
.cleanpro-elix-icon {
    background: #fff3bf !important;
    border-color: rgba(226, 160, 0, 0.2) !important;
    box-shadow: none !important;
    color: #b98200 !important;
}

.cleanpro-cookie-banner,
.cookie-banner {
    background: rgba(255, 253, 246, 0.98) !important;
    border: 1px solid rgba(122, 88, 11, 0.16) !important;
    box-shadow: 0 18px 48px rgba(91, 68, 18, 0.14) !important;
    color: var(--cp-text) !important;
}

.cleanpro-cookie-banner__text,
.cleanpro-cookie-banner__text a {
    color: var(--cp-text) !important;
}

.cleanpro-cookie-banner__actions .btn-primary {
    background: linear-gradient(135deg, #ffd84d, #f2a900) !important;
    border-color: #d99a00 !important;
    color: #231a07 !important;
}

.cleanpro-cookie-banner__actions .btn:not(.btn-primary) {
    background: rgba(255, 255, 255, 0.72) !important;
    border-color: rgba(122, 88, 11, 0.28) !important;
    color: var(--cp-text) !important;
}

/* White base + yellow accent correction for cross-border B2B style. */
:root {
    --cp-ink: #171717;
    --cp-text: #343434;
    --cp-muted: #6f6f6f;
    --cp-line: rgba(24, 24, 24, 0.1);
    --cp-soft: #f7f7f7;
    --cp-lime: #f6c400;
    --cp-green: #f6b800;
    --cp-blue: #a56d00;
    --cp-dark: #ffffff;
    --cp-dark-2: #f6f6f6;
    --cp-panel: #ffffff;
    --cp-shadow: 0 18px 45px rgba(16, 24, 40, 0.08);
}

body {
    background: #ffffff !important;
    color: var(--cp-text);
}

.content-page,
.muted-section,
.section-block,
.home .section-block,
.home .muted-section,
.home .page-builder-section,
.page-builder-section {
    background: #ffffff !important;
}

.home .section-block:nth-of-type(even),
.oem-section,
.factory-tour-section,
.quality-section,
.market-section,
.rfq-section,
.home .oem-section,
.home .factory-tour-section,
.home .quality-section,
.home .market-section,
.home .rfq-section {
    background: #f8f8f8 !important;
    color: var(--cp-text) !important;
}

.home .hero-section.cleanpro-elix-hero,
.hero-section.cleanpro-elix-hero {
    background: #ffffff !important;
    color: var(--cp-ink) !important;
}

.home .hero-section.cleanpro-elix-hero::before,
.hero-section.cleanpro-elix-hero::before,
.hero-section::before {
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.52)) !important;
}

.home .hero-section-image,
.hero-section-image {
    filter: grayscale(0.04) saturate(0.95) contrast(1.02) !important;
    mix-blend-mode: normal !important;
    opacity: 0.18 !important;
}

.topbar,
.home .topbar {
    background: #ffffff !important;
    border-bottom-color: rgba(24, 24, 24, 0.08) !important;
}

.main-nav,
.home .main-nav {
    background: rgba(255, 255, 255, 0.96) !important;
    border-bottom-color: rgba(24, 24, 24, 0.1) !important;
    box-shadow: 0 12px 32px rgba(16, 24, 40, 0.08) !important;
}

.cleanpro-nav-menu,
.dropdown-menu,
.cleanpro-nav-menu .dropdown-menu {
    background: #ffffff !important;
    border-color: rgba(24, 24, 24, 0.1) !important;
    box-shadow: 0 24px 60px rgba(16, 24, 40, 0.12) !important;
}

.cleanpro-nav-menu .dropdown-item,
.dropdown-item {
    color: var(--cp-text) !important;
}

.cleanpro-nav-menu .dropdown-item:hover,
.cleanpro-nav-menu .dropdown-item:focus,
.dropdown-item:hover,
.dropdown-item:focus {
    background: #fff8d8 !important;
    color: #8b6400 !important;
}

.eyebrow,
.home .eyebrow,
.cleanpro-elix-eyebrow,
.hero-section .eyebrow,
a,
.feature-card span,
.text-link,
.stat-item strong,
.product-card h3 a,
.home-doc-card h3 a {
    color: #b88600 !important;
}

.btn-primary,
.home .header-search-form .btn,
.home .main-nav .btn-primary,
.main-nav .btn-primary,
.cleanpro-elix-primary,
.rfq-form .btn-primary,
.home .rfq-form .btn-primary,
.whatsapp-float,
.cookie-banner .btn-primary,
.cleanpro-cookie-banner__actions .btn-primary {
    background: #f6c400 !important;
    border-color: #d8a900 !important;
    box-shadow: 0 10px 24px rgba(246, 196, 0, 0.22) !important;
    color: #151515 !important;
}

.btn-primary:hover,
.home .header-search-form .btn:hover,
.home .main-nav .btn-primary:hover,
.main-nav .btn-primary:hover,
.cleanpro-elix-primary:hover,
.rfq-form .btn-primary:hover,
.home .rfq-form .btn-primary:hover {
    background: #ffcf21 !important;
    border-color: #c69900 !important;
    color: #111111 !important;
}

.btn-outline-primary,
.home .product-card .btn,
.home .home-doc-card .btn {
    background: #ffffff !important;
    border-color: rgba(184, 134, 0, 0.38) !important;
    color: #8b6400 !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.home .product-card .btn:hover,
.home .home-doc-card .btn:hover {
    background: #f6c400 !important;
    border-color: #d8a900 !important;
    color: #151515 !important;
}

.feature-card,
.product-card,
.solution-card,
.advantage-item,
.quality-step,
.home-doc-card,
.factory-tour-item,
.market-panel,
.rfq-form,
.home #rfq .rfq-form,
.cleanpro-hero-service-map a,
.home .cleanpro-hero-service-map a,
.cleanpro-elix-panel,
.home .cleanpro-elix-panel,
.cleanpro-elix-panel-assessment,
.home .cleanpro-elix-panel-assessment,
.cleanpro-elix-panel-carousel,
.home .cleanpro-elix-panel-carousel,
.cleanpro-elix-panel-proof,
.home .cleanpro-elix-panel-proof,
.stats-grid,
.certificate-card,
.download-card,
.payment-card,
.empty-state {
    background: #ffffff !important;
    border-color: rgba(24, 24, 24, 0.1) !important;
    box-shadow: 0 16px 40px rgba(16, 24, 40, 0.08) !important;
    color: var(--cp-text) !important;
}

.feature-card:hover,
.product-card:hover,
.solution-card:hover,
.advantage-item:hover,
.quality-step:hover,
.home-doc-card:hover,
.factory-tour-item:hover,
.market-panel:hover {
    border-color: rgba(246, 196, 0, 0.48) !important;
    box-shadow: 0 22px 52px rgba(16, 24, 40, 0.12) !important;
}

.feature-card i,
.solution-card i,
.advantage-item i,
.quality-step i,
.product-icon i,
.cleanpro-elix-icon {
    background: #fff7cc !important;
    border-color: rgba(246, 196, 0, 0.28) !important;
    color: #b88600 !important;
}

.product-thumb,
.home-card-image,
.certificate-image,
.listing-thumb,
.product-main-image,
.product-gallery-thumb,
.product-icon {
    background: #f7f7f7 !important;
}

.process-list span,
.market-chip-list span,
.product-card-meta span {
    background: #fff7cc !important;
    border-color: rgba(246, 196, 0, 0.26) !important;
    color: #7a5900 !important;
}

.section-heading h2,
.home .section-heading h2,
.oem-section h2,
.quality-section h2,
.market-section h2,
.rfq-section h2,
.factory-tour-section .section-heading h2,
.feature-card h3,
.product-card h3,
.product-card h3 a,
.solution-card h3,
.advantage-item h3,
.quality-step h3,
.home-doc-card h3,
.factory-tour-item h3,
.market-panel blockquote,
.hero-section .cleanpro-elix-title,
.cleanpro-elix-title,
.home .cleanpro-swinter-title-main,
.home .cleanpro-swinter-title-sub {
    color: var(--cp-ink) !important;
    text-shadow: none !important;
}

.section-heading p,
.home .section-heading p,
.oem-section p,
.quality-section p,
.market-section p,
.rfq-section p,
.factory-tour-section .section-heading p,
.feature-card p,
.product-card p,
.solution-card p,
.advantage-item p,
.quality-step p,
.home-doc-card p,
.factory-tour-item p,
.market-panel p,
.cleanpro-elix-actions p,
.cleanpro-elix-panel-proof p {
    color: var(--cp-muted) !important;
}

.cleanpro-elix-actions p,
.home #rfq .rfq-form .form-text,
.cleanpro-cookie-banner,
.cookie-banner {
    background: #ffffff !important;
    border-color: rgba(24, 24, 24, 0.1) !important;
    color: var(--cp-text) !important;
}

.site-footer {
    background: #f7f7f7 !important;
    border-top-color: rgba(24, 24, 24, 0.1) !important;
    color: var(--cp-muted) !important;
}

.site-footer h2,
.site-footer h3,
.footer-brand {
    color: var(--cp-ink) !important;
}

.site-footer a,
.footer-contact,
.site-footer p {
    color: var(--cp-muted) !important;
}

.site-footer a:hover,
.site-footer a:focus {
    color: #b88600 !important;
}

/* Final mobile responsive guard for homepage quality block. */
@media (max-width: 767.98px) {
    body.home .quality-section .cleanpro-quality-bg-media,
    body.home .quality-section .cleanpro-quality-bg-media img {
        inset: 0 !important;
        left: 0 !important;
        max-width: 100% !important;
        right: 0 !important;
        transform: none !important;
        width: 100% !important;
    }

    body.home .quality-section .col-lg-5 > h2,
    body.home .quality-section .col-lg-5 > p {
        box-sizing: border-box !important;
        max-width: calc(100vw - 32px) !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        width: 100% !important;
    }
}
/* Absolute final homepage overrides for the Autopolan-style template. */
html body.home .site-header > .topbar,
html body.home .site-header .topbar {
    background: #07539c !important;
    background-color: #07539c !important;
    background-image: none !important;
    border-bottom: 0 !important;
    color: #ffffff !important;
}

html body.home .site-header .topbar a,
html body.home .site-header .topbar span {
    color: #ffffff !important;
}

html body.home .site-header .main-nav,
html body.home .site-header .cleanpro-dark-nav {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-bottom: 1px solid #e4e8ee !important;
    box-shadow: 0 3px 18px rgba(18, 29, 42, 0.08) !important;
    color: #151515 !important;
}

html body.home .site-header .main-nav .navbar-brand,
html body.home .site-header .main-nav .nav-link,
html body.home .site-header .main-nav .dropdown-toggle,
html body.home .site-header .main-nav .brand-subtitle {
    color: #151515 !important;
}

html body.home .site-header .main-nav .brand-mark {
    background: transparent !important;
    color: #111111 !important;
}

html body.home .site-header .main-nav .brand-subtitle {
    color: #56616d !important;
}

html body.home .site-header .main-nav .cleanpro-header-shell {
    overflow: visible !important;
}

html body.home .site-header .main-nav .nav-link {
    font-size: 12px !important;
    letter-spacing: 0 !important;
}

html body.home .site-header .main-nav .nav-link:hover,
html body.home .site-header .main-nav .nav-link:focus,
html body.home .site-header .main-nav .cleanpro-nav-group:hover > .nav-link {
    color: #07539c !important;
}

html body.home .site-header .main-nav .cleanpro-nav-menu {
    max-width: 220px !important;
    min-width: 190px !important;
}

html body.home .site-header .main-nav .header-search-form .form-control,
html body.home .site-header .main-nav .header-search-form .btn {
    background: #ffffff !important;
    border-color: #d9dee7 !important;
    border-radius: 0 !important;
    color: #151515 !important;
}

html body.home .site-header .main-nav .navbar-collapse > .btn {
    background: #101010 !important;
    border-color: #101010 !important;
    border-radius: 0 !important;
    color: #ffffff !important;
}

@media (max-width: 991px) {
    html body.home .site-header .main-nav .navbar-toggler {
        background: #101010 !important;
        border-color: #101010 !important;
        color: #ffffff !important;
    }

    html body.home .site-header .main-nav .navbar-toggler-icon {
        background:
            linear-gradient(#ffffff, #ffffff) 50% 25% / 20px 2px no-repeat,
            linear-gradient(#ffffff, #ffffff) 50% 50% / 20px 2px no-repeat,
            linear-gradient(#ffffff, #ffffff) 50% 75% / 20px 2px no-repeat !important;
        filter: none !important;
    }
}

@media (max-width: 767px) {
    html body.home .site-header > .topbar,
    html body.home .site-header .topbar {
        display: none !important;
    }
}

/* Absolute final homepage overrides for the Autopolan-style template. */
html body.home .site-header > .topbar,
html body.home .site-header .topbar {
    background: #07539c !important;
    background-color: #07539c !important;
    background-image: none !important;
    border-bottom: 0 !important;
    color: #ffffff !important;
}

html body.home .site-header .topbar a,
html body.home .site-header .topbar span {
    color: #ffffff !important;
}

html body.home .site-header .main-nav,
html body.home .site-header .cleanpro-dark-nav {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-bottom: 1px solid #e4e8ee !important;
    box-shadow: 0 3px 18px rgba(18, 29, 42, 0.08) !important;
    color: #151515 !important;
}

html body.home .site-header .main-nav .navbar-brand,
html body.home .site-header .main-nav .nav-link,
html body.home .site-header .main-nav .dropdown-toggle,
html body.home .site-header .main-nav .brand-subtitle {
    color: #151515 !important;
}

html body.home .site-header .main-nav .brand-mark {
    background: transparent !important;
    color: #111111 !important;
}

html body.home .site-header .main-nav .brand-subtitle {
    color: #56616d !important;
}

html body.home .site-header .main-nav .cleanpro-header-shell {
    overflow: visible !important;
}

html body.home .site-header .main-nav .nav-link {
    font-size: 12px !important;
    letter-spacing: 0 !important;
}

html body.home .site-header .main-nav .nav-link:hover,
html body.home .site-header .main-nav .nav-link:focus,
html body.home .site-header .main-nav .cleanpro-nav-group:hover > .nav-link {
    color: #07539c !important;
}

html body.home .site-header .main-nav .cleanpro-nav-menu {
    max-width: 220px !important;
    min-width: 190px !important;
}

html body.home .site-header .main-nav .header-search-form .form-control,
html body.home .site-header .main-nav .header-search-form .btn {
    background: #ffffff !important;
    border-color: #d9dee7 !important;
    border-radius: 0 !important;
    color: #151515 !important;
}

html body.home .site-header .main-nav .navbar-collapse > .btn {
    background: #101010 !important;
    border-color: #101010 !important;
    border-radius: 0 !important;
    color: #ffffff !important;
}

@media (max-width: 991px) {
    html body.home .site-header .main-nav .navbar-toggler {
        background: #101010 !important;
        border-color: #101010 !important;
        color: #ffffff !important;
    }

    html body.home .site-header .main-nav .navbar-toggler-icon {
        background:
            linear-gradient(#ffffff, #ffffff) 50% 25% / 20px 2px no-repeat,
            linear-gradient(#ffffff, #ffffff) 50% 50% / 20px 2px no-repeat,
            linear-gradient(#ffffff, #ffffff) 50% 75% / 20px 2px no-repeat !important;
        filter: none !important;
    }
}

@media (max-width: 767px) {
    html body.home .site-header > .topbar,
    html body.home .site-header .topbar {
        display: none !important;
    }
}

/* Final homepage header override for the Autopolan-style template. */
body.home .site-header > .topbar,
body.home .site-header .topbar {
    background: #07539c !important;
    border-bottom: 0 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    letter-spacing: 0 !important;
    padding: 6px 0 !important;
}

body.home .site-header .topbar a,
body.home .site-header .topbar span {
    color: #ffffff !important;
}

body.home .site-header .main-nav,
body.home .site-header .cleanpro-dark-nav {
    background: #ffffff !important;
    border-bottom: 1px solid #e4e8ee !important;
    box-shadow: 0 3px 18px rgba(18, 29, 42, 0.08) !important;
    color: #151515 !important;
}

body.home .site-header .main-nav .navbar-brand,
body.home .site-header .main-nav .nav-link,
body.home .site-header .main-nav .dropdown-toggle,
body.home .site-header .main-nav .brand-subtitle {
    color: #151515 !important;
}

body.home .site-header .main-nav .brand-mark {
    background: transparent !important;
    color: #111111 !important;
    font-size: 25px !important;
    font-style: italic !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    padding: 0 !important;
}

body.home .site-header .main-nav .brand-subtitle {
    color: #56616d !important;
    font-size: 10px !important;
    letter-spacing: 0 !important;
}

body.home .site-header .main-nav .cleanpro-header-shell {
    flex-wrap: nowrap !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.home .site-header .main-nav .nav-link {
    color: #151515 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    padding: 22px 10px !important;
}

body.home .site-header .main-nav .nav-link:hover,
body.home .site-header .main-nav .nav-link:focus,
body.home .site-header .main-nav .cleanpro-nav-group:hover > .nav-link {
    color: #07539c !important;
}

body.home .site-header .main-nav .cleanpro-grouped-nav {
    flex-wrap: nowrap !important;
    gap: 0 !important;
    min-width: 0 !important;
}

body.home .site-header .main-nav .cleanpro-nav-group {
    min-width: 0 !important;
    overflow: visible !important;
}

body.home .site-header .main-nav .cleanpro-nav-menu {
    border-radius: 3px !important;
    max-width: 220px !important;
    min-width: 190px !important;
}

body.home .site-header .main-nav .header-search-form {
    max-width: 150px !important;
}

body.home .site-header .main-nav .header-search-form .form-control {
    background: #ffffff !important;
    border-color: #d9dee7 !important;
    border-radius: 0 !important;
    color: #151515 !important;
    font-size: 12px !important;
    height: 34px !important;
}

body.home .site-header .main-nav .header-search-form .form-control::placeholder {
    color: #7c8794 !important;
}

body.home .site-header .main-nav .header-search-form .btn {
    background: #ffffff !important;
    border-color: #d9dee7 !important;
    border-radius: 0 !important;
    color: #151515 !important;
    height: 34px !important;
}

body.home .site-header .main-nav .navbar-collapse > .btn {
    background: #101010 !important;
    border-color: #101010 !important;
    border-radius: 0 !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    padding: 11px 15px !important;
}

@media (max-width: 991px) {
    body.home .site-header .main-nav .cleanpro-header-shell {
        flex-wrap: wrap !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.home .site-header .main-nav .navbar-toggler {
        background: #101010 !important;
        border-color: #101010 !important;
        color: #ffffff !important;
        top: 22px !important;
    }

    body.home .site-header .main-nav .navbar-toggler-icon {
        background:
            linear-gradient(#ffffff, #ffffff) 50% 25% / 20px 2px no-repeat,
            linear-gradient(#ffffff, #ffffff) 50% 50% / 20px 2px no-repeat,
            linear-gradient(#ffffff, #ffffff) 50% 75% / 20px 2px no-repeat !important;
        filter: none !important;
    }

    body.home .site-header .main-nav .navbar-collapse {
        background: #ffffff !important;
        border: 1px solid #e4e8ee !important;
        box-shadow: 0 14px 28px rgba(18, 29, 42, 0.12) !important;
    }

    body.home .site-header .main-nav .cleanpro-nav-menu {
        max-width: 100% !important;
        min-width: 0 !important;
    }
}

@media (max-width: 767px) {
    body.home .site-header > .topbar,
    body.home .site-header .topbar {
        display: none !important;
    }
}

/* Mobile Figma pass: keep the homepage hero compact and readable after the desktop overrides above. */
@media (max-width: 767.98px) {
    body.home .container,
    body.home .btn,
    body.home .cleanpro-elix-actions p,
    body.home .cleanpro-hero-service-map a,
    body.home .cleanpro-elix-panel,
    body.home .cleanpro-cookie-banner,
    body.home .cookie-banner {
        box-sizing: border-box;
    }

    body.home .site-header {
        position: relative !important;
    }

    .topbar,
    .home .topbar {
        overflow-x: hidden;
    }

    .topbar .cleanpro-header-shell,
    .home .topbar .cleanpro-header-shell,
    .main-nav .cleanpro-header-shell,
    .home .main-nav .cleanpro-header-shell {
        box-sizing: border-box;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .topbar .cleanpro-header-shell {
        align-items: flex-start;
    }

    .topbar span {
        line-height: 1.35;
        white-space: normal;
    }

    .topbar-links {
        gap: 0.85rem !important;
        max-width: 100%;
        padding-bottom: 0.1rem;
        white-space: normal;
    }

    .navbar-toggler {
        border-color: rgba(17, 24, 39, 0.22) !important;
        display: inline-flex !important;
        margin-left: auto;
    }

    .navbar-toggler-icon {
        background:
            linear-gradient(#111827, #111827) 50% 25% / 22px 2px no-repeat,
            linear-gradient(#111827, #111827) 50% 50% / 22px 2px no-repeat,
            linear-gradient(#111827, #111827) 50% 75% / 22px 2px no-repeat;
    }

    .main-nav .navbar-collapse {
        background: #ffffff;
        border-top: 1px solid rgba(24, 24, 24, 0.1);
        display: none;
        flex-basis: 100%;
        margin-top: 0.85rem;
        padding-top: 0.85rem;
    }

    .main-nav .navbar-collapse.show {
        display: block;
    }

    .cleanpro-grouped-nav,
    .navbar-nav {
        align-items: stretch;
        flex-direction: column;
        gap: 0.15rem;
    }

    .navbar .nav-link,
    .cleanpro-grouped-nav .nav-link {
        min-height: 40px;
        padding-left: 0;
        padding-right: 0;
    }

    .header-search-form {
        flex: 1 1 auto;
        margin-left: 0 !important;
        width: 100%;
    }

    .main-nav .navbar-collapse > .btn {
        margin-left: 0 !important;
        width: 100%;
    }

    body.home .hero-section.cleanpro-elix-hero,
    body.home main .hero-section.cleanpro-elix-hero {
        display: block !important;
        min-height: 0 !important;
        overflow: visible !important;
        padding: 0 !important;
    }

    body.home .hero-section.cleanpro-elix-hero::before {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 255, 255, 0.9)) !important;
    }

    body.home .hero-section.cleanpro-elix-hero::after {
        display: none !important;
    }

    body.home .hero-section-image {
        height: 100% !important;
        object-position: 62% top;
        opacity: 0.08 !important;
    }

    body.home .cleanpro-elix-hero-inner,
    body.home .hero-section .cleanpro-elix-hero-inner {
        display: block !important;
        min-height: 0 !important;
        padding: 1.25rem 0 1.75rem !important;
    }

    body.home .cleanpro-elix-copy,
    body.home .hero-content.cleanpro-elix-copy {
        max-width: 100% !important;
        padding-bottom: 0 !important;
    }

    body.home .cleanpro-elix-eyebrow {
        border: 1px solid rgba(246, 196, 0, 0.36);
        border-radius: 999px;
        display: inline-flex;
        font-size: 0.74rem;
        margin-bottom: 1rem !important;
        padding: 0.42rem 0.72rem;
    }

    body.home .hero-section .cleanpro-elix-title.cleanpro-swinter-title,
    body.home .cleanpro-elix-title.cleanpro-swinter-title,
    body.home .cleanpro-swinter-title {
        display: grid !important;
        gap: 0.28rem;
        max-width: 100% !important;
        overflow: visible !important;
    }

    body.home .cleanpro-swinter-title-main,
    body.home .cleanpro-swinter-title-sub {
        animation: none !important;
        color: #111827 !important;
        display: block !important;
        filter: none !important;
        opacity: 1 !important;
        overflow: visible !important;
        overflow-wrap: break-word !important;
        transform: none !important;
        white-space: normal !important;
    }

    body.home .cleanpro-swinter-title-main {
        font-size: 44px !important;
        letter-spacing: 0 !important;
        line-height: 0.98 !important;
        max-width: 320px !important;
        width: 100% !important;
    }

    body.home .cleanpro-swinter-title-sub {
        color: #4b5563 !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
        max-width: 360px !important;
    }

    body.home .cleanpro-elix-actions {
        align-items: stretch !important;
        display: grid !important;
        gap: 0.9rem !important;
        margin-top: 1.2rem !important;
        max-width: 100% !important;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
        width: calc(100vw - 48px) !important;
    }

    body.home .cleanpro-elix-primary {
        height: 54px !important;
        justify-self: start !important;
        max-width: calc(100vw - 48px) !important;
        min-width: 0 !important;
        width: calc(100vw - 48px) !important;
    }

    body.home .cleanpro-elix-actions p {
        border: 1px solid rgba(24, 24, 24, 0.1) !important;
        border-radius: 8px;
        font-size: 0.94rem !important;
        line-height: 1.45 !important;
        margin: 0 !important;
        max-width: 100% !important;
        overflow-wrap: break-word;
        padding: 0.85rem !important;
        width: calc(100vw - 48px) !important;
    }

    body.home .cleanpro-hero-service-map {
        display: grid !important;
        gap: 0.65rem !important;
        grid-template-columns: 1fr !important;
        margin-top: 1rem !important;
        max-width: 100% !important;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
        width: calc(100vw - 48px) !important;
    }

    body.home .cleanpro-hero-service-map a {
        border-left: 1px solid rgba(24, 24, 24, 0.1) !important;
        min-height: 64px !important;
        padding: 0.8rem !important;
    }

    body.home .cleanpro-elix-panels {
        display: grid !important;
        gap: 0.75rem !important;
        grid-template-columns: 1fr !important;
        margin-top: 1rem !important;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
        width: calc(100vw - 48px) !important;
    }

    body.home .cleanpro-elix-panel {
        min-height: auto !important;
        padding: 1rem !important;
    }

    body.home .cleanpro-elix-panel-carousel {
        min-height: 128px !important;
    }

    body.home .cleanpro-elix-panel-proof img,
    body.home .cleanpro-mobile-product,
    body.home .cleanpro-desktop-product {
        display: none !important;
    }

    body.home .stats-band {
        padding: 0 0 1.5rem !important;
    }

    body.home .stats-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    body.home .cleanpro-cookie-banner,
    body.home .cookie-banner {
        left: 12px !important;
        max-width: calc(100vw - 24px) !important;
        overflow-wrap: break-word;
        right: 12px !important;
        width: auto !important;
    }
}

/* Responsive audit pass: prevent mobile containers and footer rows from exceeding viewport width. */
.container,
.row,
.row > [class*="col-"],
.site-footer,
.site-footer * {
    box-sizing: border-box;
}

@media (max-width: 767.98px) {
    body .container,
    body.home .container,
    .site-footer .container {
        max-width: 100% !important;
        min-width: 0 !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        width: 100% !important;
    }

    .site-footer {
        overflow-x: hidden !important;
    }

    .site-footer .cleanpro-footer-grid.row {
        display: grid !important;
        gap: 1.25rem !important;
        grid-template-columns: 1fr !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        width: 100% !important;
    }

    .site-footer .cleanpro-footer-grid.row > [class*="col-"] {
        max-width: 100% !important;
        min-width: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
    }

    .site-footer h2,
    .site-footer h3,
    .site-footer p,
    .site-footer a,
    .site-footer li {
        overflow-wrap: anywhere !important;
        white-space: normal !important;
    }

    body.home .hero-section,
    body.home .cleanpro-b2b-hero {
        overflow-x: hidden !important;
    }

    body.home .hero-section-image {
        inset: 0 !important;
        left: 0 !important;
        max-width: 100% !important;
        right: 0 !important;
        transform: none !important;
        width: 100% !important;
    }

    body.home .quality-section .row.g-5,
    body.home .quality-section .row.g-5 > [class*="col-"],
    body.home .quality-section .quality-grid,
    body.home .quality-section .quality-step {
        box-sizing: border-box !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
    }

    body.home .quality-section h2,
    body.home .quality-section p,
    body.home .quality-section .quality-step h3,
    body.home .quality-section .quality-step p {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        word-break: normal !important;
    }

    body.home .quality-section .quality-step {
        padding: 1rem !important;
    }

    body.home .cleanpro-top-advantages-layout,
    body.home .cleanpro-top-advantages .advantage-grid,
    body.home .cleanpro-top-advantages .advantage-item,
    body.home #products .cleanpro-category-card.feature-card,
    body.home #products .cleanpro-category-card.feature-card * {
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: anywhere !important;
    }

    body.home #products .cleanpro-category-card.feature-card h3,
    body.home #products .cleanpro-category-card.feature-card p,
    body.home #products .cleanpro-category-card.feature-card span {
        white-space: normal !important;
    }
}

/* Cleanup for contrast catalog cards after legacy grid rules. */
body.home .site-main section.cleanpro-home-hot-products.muted-section {
    background:
        linear-gradient(135deg, rgba(255, 210, 0, 0.09) 0 25%, transparent 25% 50%, rgba(255, 210, 0, 0.09) 50% 75%, transparent 75%),
        #050505 !important;
    background-size: 18px 18px !important;
}

body.home .cleanpro-home-hot-products .section-heading h2 {
    color: #ffd200 !important;
    text-shadow: none !important;
}

body.home .cleanpro-home-hot-products .section-heading p {
    color: rgba(255, 255, 255, 0.82) !important;
}

body.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card {
    grid-template-areas:
        "media"
        "body" !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-card-body {
    align-content: start !important;
    display: grid !important;
    gap: 0.85rem !important;
    grid-area: body !important;
    grid-template-areas:
        "tags"
        "title"
        "excerpt"
        "specs"
        "actions" !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto minmax(58px, 1fr) auto auto !important;
    min-height: 300px !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-card-tags {
    grid-area: tags !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-card-body > h3 {
    align-self: auto !important;
    grid-area: title !important;
    margin: 0 !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-card-body > p {
    align-self: auto !important;
    grid-area: excerpt !important;
    margin: 0 !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-product-specs {
    grid-area: specs !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-card-actions {
    grid-area: actions !important;
}

body.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-thumb,
body.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-icon {
    grid-area: media !important;
}

body.home .product-card.cleanpro-buy-card .cleanpro-card-body > h3,
body.home .product-card.cleanpro-buy-card .cleanpro-card-body > p,
body.home .product-card.cleanpro-buy-card .cleanpro-card-body > .cleanpro-card-tags,
body.home .product-card.cleanpro-buy-card .cleanpro-card-body > .cleanpro-product-specs,
body.home .product-card.cleanpro-buy-card .cleanpro-card-body > .cleanpro-card-actions {
    position: static !important;
}

@media (max-width: 767.98px) {
    body.home .product-card.cleanpro-buy-card .cleanpro-card-body {
        min-height: 0 !important;
    }
}

/* Quality section visual rebuild: editable dark image background with high contrast cards. */
body.home .site-main section.quality-section.muted-section {
    background: #050505 !important;
    border-top: 0 !important;
    color: #ffffff !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: clamp(46px, 5vw, 72px) 0 !important;
    position: relative !important;
}

body.home .quality-section::before {
    background:
        linear-gradient(90deg, rgba(5, 5, 5, 0.92) 0%, rgba(5, 5, 5, 0.7) 42%, rgba(5, 5, 5, 0.52) 100%),
        linear-gradient(0deg, rgba(5, 5, 5, 0.72), rgba(5, 5, 5, 0.28)) !important;
    content: "" !important;
    height: 100% !important;
    inset: 0 !important;
    opacity: 1 !important;
    position: absolute !important;
    width: 100% !important;
    z-index: 1 !important;
}

body.home .quality-section::after {
    background: rgba(227, 27, 35, 0.55) !important;
    bottom: 0 !important;
    content: "" !important;
    height: 3px !important;
    left: 0 !important;
    position: absolute !important;
    right: 0 !important;
    z-index: 3 !important;
}

body.home .quality-section .cleanpro-quality-bg-media {
    inset: 0 !important;
    position: absolute !important;
    z-index: 0 !important;
}

body.home .quality-section .cleanpro-quality-bg-media img {
    filter: saturate(1.08) contrast(1.1) !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: scale(1.02) !important;
    width: 100% !important;
}

body.home .quality-section > .container {
    position: relative !important;
    z-index: 2 !important;
}

body.home .quality-section .row.g-5 {
    align-items: center !important;
    display: grid !important;
    gap: clamp(22px, 3.2vw, 48px) !important;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;
}

body.home .quality-section .row.g-5 > [class*="col-"] {
    max-width: none !important;
    padding: 0 !important;
    width: 100% !important;
}

body.home .quality-section .col-lg-5 {
    align-content: center !important;
    display: grid !important;
    justify-items: start !important;
}

body.home .quality-section .eyebrow {
    color: #e31b23 !important;
    font-size: 0.83rem !important;
    margin-bottom: 1.25rem !important;
}

body.home .quality-section h2 {
    color: #ffffff !important;
    font-size: clamp(2.55rem, 3.4vw, 4.05rem) !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 0.96 !important;
    margin: 0 0 1.25rem !important;
    max-width: 520px !important;
    text-shadow: 0 16px 52px rgba(0, 0, 0, 0.5) !important;
    text-transform: uppercase !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

body.home .quality-section .col-lg-5 > p {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 0.95rem !important;
    line-height: 1.55 !important;
    margin-bottom: 1rem !important;
    max-width: 470px !important;
}

body.home .quality-section .btn {
    background: #ffd200 !important;
    border-color: #ffd200 !important;
    border-radius: 2px !important;
    color: #050505 !important;
    font-weight: 950 !important;
    min-height: 42px !important;
    min-width: 186px !important;
    padding: 0.65rem 1rem !important;
}

body.home .quality-section .quality-grid {
    align-items: stretch !important;
    display: grid !important;
    gap: 0.8rem !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    height: 100% !important;
}

body.home .quality-section .quality-step {
    align-content: start !important;
    background: rgba(5, 8, 7, 0.84) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #ffffff !important;
    display: grid !important;
    gap: 0.72rem !important;
    min-height: 214px !important;
    padding: 1.12rem !important;
    text-decoration: none !important;
    transform: none !important;
}

body.home .quality-section .quality-step:hover {
    background: rgba(5, 8, 7, 0.94) !important;
    border-color: #ffd200 !important;
    transform: translateY(-4px) !important;
}

body.home .quality-section .quality-step i {
    align-items: center !important;
    background: #ffd200 !important;
    border: 0 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    color: #050505 !important;
    display: inline-flex !important;
    font-size: 1.1rem !important;
    height: 44px !important;
    justify-content: center !important;
    margin: 0 !important;
    width: 44px !important;
}

body.home .quality-section .quality-step > span {
    color: #e31b23 !important;
    font-size: 0.78rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.04em !important;
    margin: 0 !important;
}

body.home .quality-section .quality-step h3 {
    color: #ffffff !important;
    font-size: clamp(1rem, 1.05vw, 1.22rem) !important;
    font-weight: 950 !important;
    line-height: 1.04 !important;
    margin: 0 !important;
    text-shadow: none !important;
}

body.home .quality-section .quality-step p {
    color: rgba(255, 255, 255, 0.84) !important;
    display: -webkit-box !important;
    font-size: 0.82rem !important;
    -webkit-line-clamp: 2 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
}

/* Product category icon placeholder: compact square, not a heavy vertical block. */
body.home #products .cleanpro-category-card.feature-card {
    align-items: start !important;
    gap: 0.72rem 1rem !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr auto !important;
    min-height: 168px !important;
    padding: 0.95rem !important;
}

body.home #products .cleanpro-category-card.feature-card > i,
body.home #products .cleanpro-category-card .home-card-image {
    align-self: start !important;
    aspect-ratio: 1 / 1 !important;
    background:
        linear-gradient(135deg, rgba(255, 210, 0, 0.1), transparent 48%),
        #050505 !important;
    border: 0 !important;
    border-radius: 2px !important;
    box-shadow: inset 0 0 0 1px rgba(255, 210, 0, 0.22) !important;
    color: #ffd200 !important;
    font-size: 1.55rem !important;
    height: 76px !important;
    min-height: 0 !important;
    width: 76px !important;
}

body.home #products .cleanpro-category-card .home-card-image img {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body.home #products .cleanpro-category-card.feature-card h3 {
    padding-top: 0.1rem !important;
}

@media (max-width: 575.98px) {
    body.home #products .cleanpro-category-card.feature-card {
        grid-template-columns: 68px minmax(0, 1fr) !important;
    }

    body.home #products .cleanpro-category-card.feature-card > i,
    body.home #products .cleanpro-category-card .home-card-image {
        height: 68px !important;
        width: 68px !important;
    }
}

/* Export markets contrast fix: no white text on light background. */
body.home .site-main section.market-section {
    background:
        linear-gradient(135deg, rgba(255, 210, 0, 0.08) 0 25%, transparent 25% 50%, rgba(255, 210, 0, 0.08) 50% 75%, transparent 75%),
        #050505 !important;
    background-size: 18px 18px !important;
    border-top: 0 !important;
    color: #ffffff !important;
    padding: clamp(64px, 6vw, 96px) 0 !important;
}

body.home .market-section .row.g-5 {
    align-items: center !important;
}

body.home .market-section .eyebrow {
    color: #e31b23 !important;
}

body.home .market-section h2 {
    color: #ffd200 !important;
    font-size: clamp(2.55rem, 4.2vw, 5.1rem) !important;
    font-weight: 950 !important;
    line-height: 0.96 !important;
    margin-bottom: 1.25rem !important;
    max-width: 720px !important;
    text-shadow: none !important;
}

body.home .market-section .col-lg-6 > p {
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 1rem !important;
    line-height: 1.65 !important;
    max-width: 660px !important;
}

body.home .market-chip-list {
    gap: 0.65rem !important;
}

body.home .market-chip-list span {
    background: #ffd200 !important;
    border: 2px solid #ffd200 !important;
    border-radius: 2px !important;
    color: #050505 !important;
    font-weight: 950 !important;
    padding: 0.7rem 1rem !important;
}

body.home .market-panel {
    background: #ffffff !important;
    border: 3px solid #ffd200 !important;
    border-radius: 0 !important;
    box-shadow: 12px 12px 0 rgba(255, 210, 0, 0.18) !important;
    color: #151515 !important;
    padding: clamp(1.5rem, 3vw, 2.4rem) !important;
}

body.home .market-panel i {
    color: #ffd200 !important;
    font-size: 2rem !important;
}

body.home .market-panel blockquote {
    color: #151515 !important;
    font-size: clamp(1.35rem, 2vw, 2.05rem) !important;
    font-weight: 950 !important;
    line-height: 1.05 !important;
}

body.home .market-panel p {
    color: #151515 !important;
    font-weight: 950 !important;
}

@media (max-width: 575.98px) {
    body.home .market-section h2 {
        font-size: clamp(2.1rem, 10vw, 3rem) !important;
    }
}

/* Layout correction: compact markets, non-overlapping quality, top advantage rail. */
body.home .cleanpro-top-advantages.section-block {
    background: #f7f7f2 !important;
    border-top: 0 !important;
    padding: clamp(28px, 3vw, 42px) 0 !important;
}

body.home .cleanpro-top-advantages-layout {
    align-items: start !important;
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: minmax(260px, 0.55fr) minmax(0, 1.45fr) !important;
}

body.home .cleanpro-top-advantages-heading .eyebrow {
    color: #e31b23 !important;
    display: block !important;
    margin-bottom: 0.65rem !important;
}

body.home .cleanpro-top-advantages-heading h2 {
    color: #151515 !important;
    font-size: clamp(1.75rem, 2.2vw, 2.6rem) !important;
    font-weight: 950 !important;
    line-height: 1.02 !important;
    margin: 0 !important;
    text-shadow: none !important;
    text-transform: uppercase !important;
}

body.home .cleanpro-top-advantages .advantage-grid {
    display: grid !important;
    gap: 0.55rem !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

body.home .cleanpro-top-advantages .advantage-item {
    background: #ffffff !important;
    border: 2px solid #050505 !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 rgba(5, 5, 5, 0.1) !important;
    display: grid !important;
    gap: 0.35rem !important;
    min-height: 118px !important;
    padding: 0.65rem !important;
}

body.home .cleanpro-top-advantages .advantage-item i {
    align-items: center !important;
    background: #ffd200 !important;
    color: #050505 !important;
    display: inline-flex !important;
    font-size: 1rem !important;
    height: 34px !important;
    justify-content: center !important;
    width: 34px !important;
}

body.home .cleanpro-top-advantages .advantage-item h3 {
    color: #151515 !important;
    font-size: 0.9rem !important;
    font-weight: 950 !important;
    line-height: 1.12 !important;
    margin: 0 !important;
}

body.home .cleanpro-top-advantages .advantage-item p {
    color: #4e5560 !important;
    display: -webkit-box !important;
    font-size: 0.75rem !important;
    -webkit-line-clamp: 2 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
}

body.home .site-main section.market-section {
    padding: clamp(38px, 4vw, 58px) 0 !important;
}

body.home .market-section h2 {
    font-size: clamp(2.15rem, 3vw, 3.6rem) !important;
    line-height: 0.98 !important;
    max-width: 620px !important;
}

body.home .market-section .market-panel {
    padding: clamp(1.1rem, 2vw, 1.6rem) !important;
}

body.home .market-panel blockquote {
    font-size: clamp(1.08rem, 1.35vw, 1.5rem) !important;
}

body.home .quality-section .row.g-5 {
    grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr) !important;
}

body.home .quality-section h2 {
    font-size: clamp(2.25rem, 3vw, 3.55rem) !important;
    line-height: 0.98 !important;
    max-width: 450px !important;
}

body.home .quality-section .quality-grid {
    grid-template-columns: repeat(4, minmax(130px, 1fr)) !important;
}

body.home .quality-section .quality-step {
    min-height: 190px !important;
    padding: 0.95rem !important;
}

body.home .quality-section .quality-step h3 {
    font-size: clamp(0.95rem, 0.95vw, 1.1rem) !important;
}

@media (max-width: 1199.98px) {
    body.home .cleanpro-top-advantages-layout,
    body.home .quality-section .row.g-5 {
        grid-template-columns: 1fr !important;
    }

    body.home .cleanpro-top-advantages .advantage-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    body.home .cleanpro-top-advantages .advantage-grid,
    body.home .quality-section .quality-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    body.home .cleanpro-top-advantages .advantage-grid,
    body.home .quality-section .quality-grid {
        grid-template-columns: 1fr !important;
    }

    body.home .site-main section.market-section {
        padding: 42px 0 !important;
    }
}

/* Home dedupe pass: shorter advantage rail and factory cards only. */
body.home .cleanpro-top-advantages.section-block {
    padding: clamp(20px, 2.2vw, 30px) 0 !important;
}

body.home .cleanpro-top-advantages-layout {
    grid-template-columns: minmax(180px, 0.42fr) minmax(0, 1.58fr) !important;
}

body.home .cleanpro-top-advantages-heading h2 {
    font-size: clamp(1.3rem, 1.55vw, 1.85rem) !important;
}

body.home .cleanpro-top-advantages .advantage-item {
    min-height: 92px !important;
    padding: 0.5rem !important;
}

body.home .cleanpro-top-advantages .advantage-item i {
    height: 28px !important;
    width: 28px !important;
}

body.home .cleanpro-top-advantages .advantage-item h3 {
    font-size: 0.82rem !important;
}

body.home .cleanpro-top-advantages .advantage-item p {
    font-size: 0.68rem !important;
}

body.home .factory-tour-section {
    padding: clamp(46px, 5vw, 72px) 0 !important;
}

body.home .factory-tour-section .factory-tour-carousel {
    display: none !important;
}

body.home .factory-tour-grid {
    margin-top: 1.1rem !important;
}

body.home .factory-tour-item {
    min-height: 104px !important;
    padding: 0.75rem !important;
}

body.home .factory-tour-item img {
    height: 76px !important;
    width: 100px !important;
}

@media (max-width: 1199.98px) {
    body.home .quality-section .row.g-5 {
        grid-template-columns: 1fr !important;
    }

    body.home .quality-section .quality-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    body.home .site-main section.quality-section.muted-section {
        padding: 56px 0 !important;
    }

    body.home .quality-section h2 {
        font-size: clamp(2.45rem, 12vw, 3.4rem) !important;
    }

    body.home .quality-section .quality-grid {
        grid-template-columns: 1fr !important;
    }

    body.home .quality-section .quality-step {
        min-height: 210px !important;
    }
}

@media (max-width: 360px) {
    body.home .cleanpro-swinter-title-main {
        font-size: 38px !important;
        max-width: 280px !important;
    }

    body.home .cleanpro-swinter-title-sub {
        font-size: 24px !important;
    }

    body.home .cleanpro-hero-service-map {
        grid-template-columns: 1fr !important;
    }
}

/* Applications cards: keep icon tiles optically centered beside the copy. */
.home #applications .solution-card {
    align-items: flex-start !important;
    display: grid !important;
    gap: 0.9rem !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
}

.home #applications .solution-card > i {
    align-items: center !important;
    align-self: start !important;
    box-sizing: border-box;
    display: inline-flex !important;
    flex: 0 0 44px !important;
    font-size: 1.15rem !important;
    height: 44px !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    width: 44px !important;
}

.home #applications .solution-card > i::before {
    display: block;
    line-height: 1;
}

.home #applications .solution-card > div {
    min-width: 0;
}

.home #applications .solution-card h3 {
    margin-top: 0 !important;
}

/* Featured products: give real product photos enough room to breathe. */
.home .cleanpro-home-hot-products .row.g-4 {
    display: grid !important;
    gap: 24px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.home .cleanpro-home-hot-products .row.g-4 > [class*="col-"] {
    flex: none !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

.home .cleanpro-home-hot-products .product-card {
    display: grid !important;
    gap: 0.9rem;
    grid-template-rows: auto auto 1fr auto;
    min-height: 100% !important;
    padding: 1rem !important;
}

.home .cleanpro-home-hot-products .product-thumb,
.home .cleanpro-home-hot-products .product-icon {
    align-items: center !important;
    aspect-ratio: 4 / 3 !important;
    box-sizing: border-box;
    display: flex !important;
    justify-content: center !important;
    margin: 0 !important;
    max-height: none !important;
    min-height: 190px !important;
    padding: 1rem !important;
    width: 100% !important;
}

.home .cleanpro-home-hot-products .product-thumb img {
    display: block;
    height: 100% !important;
    max-height: 210px;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

.home .cleanpro-home-hot-products .product-icon i {
    font-size: 2.2rem !important;
    height: 64px !important;
    width: 64px !important;
}

.home .cleanpro-home-hot-products .product-card h3 {
    margin: 0 !important;
}

.home .cleanpro-home-hot-products .product-card p {
    margin: 0 !important;
}

.home .cleanpro-home-hot-products .product-card .btn {
    align-self: end;
    width: 100%;
}

@media (max-width: 991.98px) {
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: 1fr !important;
    }

    .home .cleanpro-home-hot-products .product-thumb,
    .home .cleanpro-home-hot-products .product-icon {
        min-height: 180px !important;
    }
}

/* Homepage proof strip: make the stats read as a polished B2B trust band. */
.home .stats-band {
    background: #ffffff !important;
    padding: clamp(1rem, 2vw, 1.5rem) 0 clamp(2.4rem, 4vw, 3.6rem) !important;
}

.home .stats-band .container {
    max-width: 1060px;
}

.home .stats-grid {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 248, 248, 0.96)) !important;
    border: 1px solid rgba(24, 24, 24, 0.1) !important;
    border-radius: 8px !important;
    box-shadow: 0 20px 54px rgba(16, 24, 40, 0.09) !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    overflow: hidden;
}

.home .stat-item {
    align-content: center !important;
    background: transparent !important;
    border-right: 1px solid rgba(24, 24, 24, 0.08) !important;
    box-shadow: none !important;
    display: grid !important;
    gap: 0.38rem !important;
    min-height: 104px !important;
    padding: 1.25rem 1.35rem !important;
    position: relative;
}

.home .stat-item:last-child {
    border-right: 0 !important;
}

.home .stat-item::before {
    background: #f6c400;
    content: "";
    height: 3px;
    left: 1.35rem;
    position: absolute;
    top: 0;
    width: 44px;
}

.home .stat-item strong {
    color: #151515 !important;
    display: block;
    font-size: clamp(1.65rem, 2.2vw, 2.15rem) !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

.home .stat-item span {
    color: #646b76 !important;
    display: block !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin: 0 !important;
}

@media (max-width: 991.98px) {
    .home .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .home .stat-item:nth-child(2) {
        border-right: 0 !important;
    }

    .home .stat-item:nth-child(n + 3) {
        border-top: 1px solid rgba(24, 24, 24, 0.08) !important;
    }
}

@media (max-width: 575.98px) {
    .home .stats-band {
        padding-bottom: 2rem !important;
    }

    .home .stats-grid {
        grid-template-columns: 1fr !important;
    }

    .home .stat-item {
        border-right: 0 !important;
        min-height: 84px !important;
        padding: 1rem 1.15rem !important;
    }

    .home .stat-item:nth-child(n + 2) {
        border-top: 1px solid rgba(24, 24, 24, 0.08) !important;
    }

    .home .stat-item::before {
        left: 1.15rem;
    }
}

/* Navigation layer guard: keep desktop dropdowns above archive hero images. */
.site-header,
.home .site-header {
    z-index: 3000 !important;
}

.main-nav,
.home .main-nav {
    overflow: visible !important;
    position: relative;
    z-index: 3010 !important;
}

.main-nav .cleanpro-header-shell,
.cleanpro-nav-group,
.nav-link-group {
    overflow: visible !important;
}

@media (min-width: 768px) {
    .main-nav .navbar-collapse {
        overflow: visible !important;
    }
}

.cleanpro-nav-group {
    position: relative;
    z-index: 3020;
}

.cleanpro-nav-menu,
.dropdown-menu,
.cleanpro-nav-menu .dropdown-menu {
    z-index: 3040 !important;
}

.site-main,
.content-page.has-listing-hero,
.listing-hero,
.listing-hero-image {
    position: relative;
    z-index: 1;
}

/* Product archive list: horizontal cards with room for real product photos. */
.cleanpro-product-archive-list.row.g-4 {
    display: grid !important;
    gap: 22px !important;
    grid-template-columns: 1fr !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.cleanpro-product-archive-list.row.g-4 > [class*="col-"] {
    flex: none !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

.cleanpro-product-archive-list .product-card {
    align-items: center !important;
    display: grid !important;
    gap: 0.8rem 1.35rem !important;
    grid-template-columns: minmax(220px, 30%) minmax(0, 1fr) auto !important;
    grid-template-rows: auto 1fr auto !important;
    min-height: 224px !important;
    padding: 1.1rem !important;
}

.cleanpro-product-archive-list .product-card > .product-thumb,
.cleanpro-product-archive-list .product-card > .product-icon {
    align-items: center !important;
    align-self: stretch !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 8px !important;
    display: flex !important;
    grid-column: 1 !important;
    grid-row: 1 / 4 !important;
    justify-content: center !important;
    min-height: 190px !important;
    overflow: hidden !important;
    padding: 1rem !important;
    width: 100% !important;
}

.cleanpro-product-archive-list .product-card > .product-thumb img {
    display: block !important;
    height: 100% !important;
    max-height: 220px !important;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

.cleanpro-product-archive-list .product-card > .product-icon i {
    align-items: center !important;
    display: inline-flex !important;
    font-size: 2.4rem !important;
    height: 72px !important;
    justify-content: center !important;
    width: 72px !important;
}

.cleanpro-product-archive-list .product-card h3 {
    grid-column: 2 / 4 !important;
    grid-row: 1 !important;
    margin: 0 !important;
}

.cleanpro-product-archive-list .product-card p {
    grid-column: 2 / 4 !important;
    grid-row: 2 !important;
    margin: 0 !important;
    max-width: 760px !important;
}

.cleanpro-product-archive-list .product-card .btn {
    grid-column: 3 !important;
    grid-row: 3 !important;
    justify-self: end !important;
    white-space: nowrap !important;
}

@media (max-width: 767.98px) {
    .cleanpro-product-archive-list .product-card {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto auto auto !important;
        min-height: 0 !important;
    }

    .cleanpro-product-archive-list .product-card > .product-thumb,
    .cleanpro-product-archive-list .product-card > .product-icon {
        grid-column: 1 !important;
        grid-row: 1 !important;
        min-height: 190px !important;
    }

    .cleanpro-product-archive-list .product-card h3,
    .cleanpro-product-archive-list .product-card p,
    .cleanpro-product-archive-list .product-card .btn {
        grid-column: 1 !important;
    }

    .cleanpro-product-archive-list .product-card h3 {
        grid-row: 2 !important;
    }

    .cleanpro-product-archive-list .product-card p {
        grid-row: 3 !important;
    }

    .cleanpro-product-archive-list .product-card .btn {
        grid-row: 4 !important;
        justify-self: stretch !important;
        width: 100% !important;
    }
}

/* Contact page: compact B2B inquiry layout. */
.contact-page .listing-hero {
    min-height: 340px !important;
    padding-bottom: clamp(3rem, 6vh, 4rem) !important;
    padding-top: clamp(5.5rem, 12vh, 7.5rem) !important;
}

.contact-page .contact-section {
    padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.contact-page .contact-layout {
    align-items: stretch !important;
    gap: 24px !important;
}

.contact-page .contact-layout > [class*="col-"] {
    padding-left: 12px !important;
    padding-right: 12px !important;
}

.contact-page .contact-info-panel,
.contact-page .rfq-form {
    border-radius: 8px !important;
    height: 100%;
}

.contact-page .contact-info-panel {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 248, 248, 0.96)) !important;
    border: 1px solid rgba(24, 24, 24, 0.1) !important;
    box-shadow: 0 18px 46px rgba(16, 24, 40, 0.08) !important;
    color: var(--cp-text) !important;
    display: grid !important;
    gap: 1rem !important;
    padding: 1.25rem !important;
}

.contact-page .contact-info-panel > * {
    margin-bottom: 0 !important;
}

.contact-page .contact-info-panel p {
    color: var(--cp-muted) !important;
    font-size: 0.96rem !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}

.contact-page .contact-list {
    display: grid !important;
    gap: 0.65rem !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.contact-page .contact-list li {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid rgba(24, 24, 24, 0.08) !important;
    border-radius: 8px !important;
    display: grid !important;
    gap: 0.75rem !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    min-height: 58px !important;
    padding: 0.65rem 0.75rem !important;
}

.contact-page .contact-list i {
    align-items: center !important;
    background: #fff7cc !important;
    border: 1px solid rgba(246, 196, 0, 0.24) !important;
    border-radius: 8px !important;
    color: #b88600 !important;
    display: inline-flex !important;
    font-size: 1.05rem !important;
    height: 42px !important;
    justify-content: center !important;
    width: 42px !important;
}

.contact-page .contact-list span {
    color: var(--cp-text) !important;
    display: grid !important;
    font-size: 0.94rem !important;
    gap: 0.1rem !important;
    line-height: 1.3 !important;
    min-width: 0 !important;
}

.contact-page .contact-list strong {
    color: var(--cp-muted) !important;
    display: block !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.contact-page .contact-list a {
    color: var(--cp-ink) !important;
    overflow-wrap: anywhere !important;
}

.contact-page .contact-social {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
    margin-top: 0 !important;
}

.contact-page .contact-social a {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid rgba(24, 24, 24, 0.1) !important;
    border-radius: 999px !important;
    color: var(--cp-text) !important;
    display: inline-flex !important;
    font-size: 0.84rem !important;
    font-weight: 800 !important;
    gap: 0.4rem !important;
    min-height: 36px !important;
    padding: 0.45rem 0.75rem !important;
}

.contact-page .rfq-form {
    background:
        radial-gradient(circle at 92% 0%, rgba(246, 196, 0, 0.16), transparent 36%),
        #ffffff !important;
    border: 1px solid rgba(24, 24, 24, 0.1) !important;
    box-shadow: 0 18px 46px rgba(16, 24, 40, 0.09) !important;
    padding: 1.25rem !important;
}

.contact-page .rfq-form .row.g-3 {
    display: grid !important;
    gap: 0.75rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.contact-page .rfq-form .row.g-3 > [class*="col-"] {
    display: grid !important;
    gap: 0.3rem !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

.contact-page .rfq-form .row.g-3 > .col-12 {
    grid-column: 1 / -1 !important;
}

.contact-page .rfq-form .form-label {
    color: #4b5563 !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.1 !important;
    margin: 0 !important;
}

.contact-page .rfq-form .form-control,
.contact-page .rfq-form .form-select {
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, 0.12) !important;
    border-radius: 8px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86) !important;
    color: var(--cp-ink) !important;
    font-size: 0.92rem !important;
    height: 42px !important;
    line-height: 1.25 !important;
    min-height: 42px !important;
    padding: 0.62rem 0.78rem !important;
    width: 100% !important;
}

.contact-page .rfq-form .form-control:focus,
.contact-page .rfq-form .form-select:focus {
    background: #ffffff !important;
    border-color: rgba(246, 196, 0, 0.82) !important;
    box-shadow: 0 0 0 3px rgba(246, 196, 0, 0.16) !important;
    outline: 0 !important;
}

.contact-page .rfq-form textarea.form-control {
    height: 96px !important;
    min-height: 96px !important;
    resize: vertical !important;
}

.contact-page .rfq-form input[type="file"].form-control {
    cursor: pointer !important;
    padding: 0 !important;
}

.contact-page .rfq-form input[type="file"].form-control::file-selector-button {
    background: #f6c400 !important;
    border: 0 !important;
    border-right: 1px solid rgba(17, 24, 39, 0.12) !important;
    color: #151515 !important;
    cursor: pointer !important;
    font: inherit !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    height: 42px !important;
    margin: 0 0.8rem 0 0 !important;
    padding: 0 0.9rem !important;
}

.contact-page .rfq-form .form-text {
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, 0.08) !important;
    border-radius: 8px !important;
    color: var(--cp-muted) !important;
    font-size: 0.76rem !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    padding: 0.48rem 0.6rem !important;
}

.contact-page .rfq-form .btn-primary {
    min-height: 44px !important;
    padding: 0.75rem 1.1rem !important;
    width: 100% !important;
}

@media (max-width: 991.98px) {
    .contact-page .contact-info-panel,
    .contact-page .rfq-form {
        height: auto;
    }
}

@media (max-width: 575.98px) {
    .contact-page .rfq-form .row.g-3 {
        grid-template-columns: 1fr !important;
    }

    .contact-page .contact-info-panel,
    .contact-page .rfq-form {
        padding: 1rem !important;
    }
}

/* Products page repair: compact filters, archive cards, and detail media. */
body.post-type-archive-cleanpro_product .product-filter-wrap {
    margin-bottom: 1.5rem !important;
}

body.post-type-archive-cleanpro_product .term-filter {
    gap: 0.35rem 0.8rem !important;
    margin-bottom: 0.9rem !important;
}

body.post-type-archive-cleanpro_product .term-filter a {
    border-radius: 6px !important;
    font-size: 0.92rem !important;
    min-height: 34px !important;
    padding: 0.36rem 0.7rem !important;
}

body.post-type-archive-cleanpro_product .product-filter-form {
    border-radius: 8px !important;
    margin-bottom: 1.4rem !important;
    padding: 1rem !important;
}

body.post-type-archive-cleanpro_product .product-filter-grid {
    align-items: end !important;
    display: grid !important;
    gap: 0.75rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.post-type-archive-cleanpro_product .product-filter-grid label {
    display: grid !important;
    gap: 0.32rem !important;
    min-width: 0 !important;
}

body.post-type-archive-cleanpro_product .product-filter-grid span {
    color: var(--cp-muted) !important;
    display: block !important;
    font-size: 0.74rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.1 !important;
}

body.post-type-archive-cleanpro_product .product-filter-form .form-control,
body.post-type-archive-cleanpro_product .product-filter-form .form-select {
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, 0.12) !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    color: var(--cp-ink) !important;
    display: block !important;
    font-size: 0.88rem !important;
    height: 40px !important;
    line-height: 1.2 !important;
    min-height: 40px !important;
    padding: 0.52rem 0.7rem !important;
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .product-filter-actions {
    gap: 0.55rem !important;
    margin-top: 0.8rem !important;
}

body.post-type-archive-cleanpro_product .product-filter-actions .btn {
    min-height: 40px !important;
    padding: 0.58rem 0.9rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 {
    gap: 14px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
    align-items: center !important;
    gap: 0.45rem 1rem !important;
    grid-template-columns: 164px minmax(0, 1fr) 124px !important;
    grid-template-rows: auto auto !important;
    min-height: 132px !important;
    padding: 0.75rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon {
    aspect-ratio: 4 / 3 !important;
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    min-height: 112px !important;
    padding: 0.75rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb img {
    max-height: 118px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon i {
    font-size: 1.55rem !important;
    height: 52px !important;
    width: 52px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3 {
    font-size: 1.12rem !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    line-height: 1.22 !important;
    margin: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card p {
    font-size: 0.92rem !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
    line-height: 1.42 !important;
    margin: 0 !important;
    max-width: none !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
    grid-column: 3 !important;
    grid-row: 1 / 3 !important;
    justify-self: end !important;
    min-height: 40px !important;
    padding: 0.58rem 0.85rem !important;
    white-space: nowrap !important;
}

.product-detail-page .product-detail-hero {
    min-height: 0 !important;
    padding-bottom: clamp(2.8rem, 6vh, 4rem) !important;
    padding-top: clamp(5.5rem, 11vh, 7rem) !important;
}

.product-detail-page .product-detail-hero .row.g-5 {
    gap: 24px !important;
}

.product-detail-page .product-main-image {
    border-radius: 8px !important;
    min-height: 300px !important;
    padding: 1rem !important;
}

.product-detail-page .product-main-image img {
    display: block !important;
    max-height: 320px !important;
    object-fit: contain !important;
    width: 100% !important;
}

.product-detail-page .product-main-image i {
    font-size: 3.2rem !important;
}

.product-detail-page .product-gallery-strip {
    gap: 0.55rem !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    margin-top: 0.6rem !important;
}

.product-detail-page .product-gallery-thumb {
    border-radius: 8px !important;
}

.product-detail-page .product-gallery-thumb img {
    aspect-ratio: 1 / 1 !important;
    object-fit: contain !important;
    padding: 0.35rem !important;
}

.product-detail-page .product-detail-tabs,
.product-detail-page .sticky-rfq {
    border-radius: 8px !important;
}

.product-detail-page .product-detail-tabs .nav-tabs {
    padding: 0.45rem 0.45rem 0 !important;
}

.product-detail-page .product-detail-tabs .nav-link {
    font-size: 0.9rem !important;
    min-height: 38px !important;
    padding: 0.55rem 0.75rem !important;
}

.product-detail-page .product-tab-content,
.product-detail-page .sticky-rfq {
    padding: 1.1rem !important;
}

@media (max-width: 991.98px) {
    body.post-type-archive-cleanpro_product .product-filter-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
        grid-template-columns: 150px minmax(0, 1fr) !important;
        grid-template-rows: auto auto auto !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
        grid-column: 2 !important;
        grid-row: 3 !important;
        justify-self: start !important;
    }
}

@media (max-width: 575.98px) {
    body.post-type-archive-cleanpro_product .product-filter-grid {
        grid-template-columns: 1fr !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto auto auto !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card p,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
        grid-column: 1 !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon {
        grid-row: 1 !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3 {
        grid-row: 2 !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card p {
        grid-row: 3 !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
        grid-row: 4 !important;
        justify-self: stretch !important;
        width: 100% !important;
    }

    .product-detail-page .product-main-image {
        min-height: 230px !important;
    }
}

/* Products archive final layout: 3 compact cards per row. */
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 {
    display: grid !important;
    gap: 18px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 > [class*="col-"] {
    flex: none !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
    align-items: stretch !important;
    display: grid !important;
    gap: 0.7rem !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto 1fr auto !important;
    min-height: 100% !important;
    padding: 0.85rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon {
    align-items: center !important;
    aspect-ratio: 4 / 3 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-content: center !important;
    min-height: 148px !important;
    padding: 0.85rem !important;
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb img {
    height: 100% !important;
    max-height: 168px !important;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon i {
    font-size: 1.85rem !important;
    height: 58px !important;
    width: 58px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3 {
    font-size: 1.06rem !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    line-height: 1.25 !important;
    margin: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card p {
    align-self: start !important;
    font-size: 0.9rem !important;
    grid-column: 1 !important;
    grid-row: 3 !important;
    line-height: 1.42 !important;
    margin: 0 !important;
    max-width: none !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
    grid-column: 1 !important;
    grid-row: 4 !important;
    justify-self: stretch !important;
    min-height: 40px !important;
    padding: 0.58rem 0.85rem !important;
    width: 100% !important;
}

@media (max-width: 991.98px) {
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 {
        grid-template-columns: 1fr !important;
    }
}

/* Products archive spacing guard: keep card internals inside the frame. */
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 {
    gap: 20px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card * {
    box-sizing: border-box !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
    overflow: hidden !important;
    padding: 0.95rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card p,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
    max-width: 100% !important;
    min-width: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-thumb,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card > .product-icon {
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card p {
    padding-left: 0.05rem !important;
    padding-right: 0.05rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .btn {
    justify-self: stretch !important;
    width: auto !important;
}

/* Product detail final compact layout for preview and published pages. */
.single-cleanpro_product .product-detail-page,
.product-detail-page {
    background: #ffffff !important;
}

.single-cleanpro_product .product-detail-page .product-detail-hero,
.product-detail-page .product-detail-hero {
    min-height: 0 !important;
    padding: clamp(4.75rem, 9vh, 6.5rem) 0 clamp(2rem, 4vw, 3rem) !important;
}

.single-cleanpro_product .product-detail-page .product-detail-hero .row.g-5,
.product-detail-page .product-detail-hero .row.g-5 {
    align-items: center !important;
    gap: 22px !important;
}

.single-cleanpro_product .product-detail-page .product-detail-hero h1,
.product-detail-page .product-detail-hero h1 {
    font-size: clamp(2.15rem, 4vw, 3.8rem) !important;
    line-height: 1.02 !important;
    margin-bottom: 0.85rem !important;
    max-width: 760px !important;
}

.single-cleanpro_product .product-detail-page .product-detail-hero p,
.product-detail-page .product-detail-hero p {
    font-size: 1rem !important;
    line-height: 1.55 !important;
    margin-bottom: 0 !important;
    max-width: 680px !important;
}

.single-cleanpro_product .product-detail-page .product-detail-hero .eyebrow,
.product-detail-page .product-detail-hero .eyebrow {
    margin-bottom: 0.55rem !important;
}

.single-cleanpro_product .product-detail-page .hero-actions,
.product-detail-page .hero-actions {
    gap: 0.7rem !important;
    margin-top: 1.2rem !important;
}

.single-cleanpro_product .product-detail-page .hero-actions .btn,
.product-detail-page .hero-actions .btn {
    min-height: 42px !important;
    padding: 0.64rem 0.95rem !important;
}

.single-cleanpro_product .product-detail-page .product-main-image,
.product-detail-page .product-main-image {
    min-height: 260px !important;
    padding: 0.85rem !important;
}

.single-cleanpro_product .product-detail-page .product-main-image img,
.product-detail-page .product-main-image img {
    max-height: 280px !important;
    object-fit: contain !important;
}

.single-cleanpro_product .product-detail-page .product-gallery-strip,
.product-detail-page .product-gallery-strip {
    gap: 0.5rem !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    margin-top: 0.55rem !important;
}

.single-cleanpro_product .product-detail-page .section-block,
.product-detail-page .section-block {
    padding: clamp(2rem, 4vw, 3rem) 0 !important;
}

.single-cleanpro_product .product-detail-page .section-block .row.g-5,
.product-detail-page .section-block .row.g-5 {
    gap: 22px !important;
}

.single-cleanpro_product .product-detail-page .product-detail-tabs,
.single-cleanpro_product .product-detail-page .sticky-rfq,
.product-detail-page .product-detail-tabs,
.product-detail-page .sticky-rfq {
    box-shadow: 0 16px 40px rgba(16, 24, 40, 0.08) !important;
}

.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-tabs,
.product-detail-page .product-detail-tabs .nav-tabs {
    gap: 0.25rem !important;
    padding: 0.45rem !important;
}

.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-link,
.product-detail-page .product-detail-tabs .nav-link {
    border-radius: 6px !important;
    font-size: 0.88rem !important;
    min-height: 36px !important;
    padding: 0.48rem 0.7rem !important;
}

.single-cleanpro_product .product-detail-page .product-tab-content,
.single-cleanpro_product .product-detail-page .sticky-rfq,
.product-detail-page .product-tab-content,
.product-detail-page .sticky-rfq {
    padding: 1rem !important;
}

.single-cleanpro_product .product-detail-page .product-copy,
.product-detail-page .product-copy {
    margin-bottom: 1rem !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq h2,
.product-detail-page .sticky-rfq h2 {
    font-size: 1.2rem !important;
    line-height: 1.25 !important;
    margin-bottom: 0.45rem !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq p,
.product-detail-page .sticky-rfq p {
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
    margin-bottom: 0.9rem !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq .rfq-form,
.product-detail-page .sticky-rfq .rfq-form {
    box-shadow: none !important;
    padding: 0 !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq .row.g-3,
.product-detail-page .sticky-rfq .row.g-3 {
    gap: 0.65rem !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq .row.g-3 > [class*="col-"],
.product-detail-page .sticky-rfq .row.g-3 > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq .form-label,
.product-detail-page .sticky-rfq .form-label {
    font-size: 0.75rem !important;
    font-weight: 900 !important;
    margin-bottom: 0.22rem !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq .form-control,
.product-detail-page .sticky-rfq .form-control {
    height: 40px !important;
    min-height: 40px !important;
}

.single-cleanpro_product .product-detail-page .sticky-rfq textarea.form-control,
.product-detail-page .sticky-rfq textarea.form-control {
    height: 84px !important;
    min-height: 84px !important;
}

.single-cleanpro_product .product-detail-page .muted-section,
.product-detail-page .muted-section {
    padding-top: clamp(1.8rem, 3vw, 2.4rem) !important;
}

@media (max-width: 991.98px) {
    .single-cleanpro_product .product-detail-page .product-detail-hero,
    .product-detail-page .product-detail-hero {
        padding-top: 3rem !important;
    }
}

/* 404 product suggestions: compact horizontal grid. */
.not-found-links-section {
    padding-top: clamp(2rem, 4vw, 3rem) !important;
    padding-bottom: clamp(2.2rem, 4vw, 3.2rem) !important;
}

.not-found-links-section .section-heading {
    margin-bottom: 1.15rem !important;
}

.not-found-links-section .section-heading h2 {
    font-size: clamp(1.65rem, 3vw, 2.35rem) !important;
    margin-bottom: 0 !important;
}

.not-found-links-section .row.g-4 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.not-found-links-section .row.g-4 > [class*="col-"] {
    flex: none !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

.not-found-links-section .not-found-card {
    box-sizing: border-box !important;
    display: grid !important;
    gap: 0.58rem !important;
    grid-template-rows: auto auto 1fr auto !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 1rem !important;
}

.not-found-links-section .not-found-card i {
    align-items: center !important;
    display: inline-flex !important;
    font-size: 1.22rem !important;
    height: 42px !important;
    justify-content: center !important;
    margin: 0 !important;
    width: 42px !important;
}

.not-found-links-section .not-found-card .home-card-image {
    aspect-ratio: 4 / 3 !important;
    border-radius: 8px !important;
    height: auto !important;
    max-height: 118px !important;
    object-fit: contain !important;
    width: 100% !important;
}

.not-found-links-section .not-found-card h3 {
    font-size: 1.02rem !important;
    line-height: 1.25 !important;
    margin: 0 !important;
}

.not-found-links-section .not-found-card p {
    font-size: 0.88rem !important;
    line-height: 1.42 !important;
    margin: 0 !important;
}

.not-found-links-section .not-found-card span {
    align-self: end !important;
    font-size: 0.8rem !important;
    margin-top: 0.15rem !important;
}

.not-found-links-section .not-found-useful-links {
    margin-top: 1.8rem !important;
    padding-top: 1.35rem !important;
}

@media (max-width: 767.98px) {
    .not-found-links-section .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    .not-found-links-section .row.g-4 {
        grid-template-columns: 1fr !important;
    }
}

/* Product preview/detail row fix: avoid Bootstrap columns wrapping from flex gap. */
.product-detail-page .product-detail-hero .row.g-5,
.product-detail-page .section-block .row.g-5 {
    column-gap: 0 !important;
    row-gap: 22px !important;
}

.product-detail-page .product-detail-hero .row.g-5 > [class*="col-"],
.product-detail-page .section-block .row.g-5 > [class*="col-"] {
    min-width: 0 !important;
}

.product-detail-page .sticky-rfq .row.g-3 {
    display: grid !important;
    gap: 0.65rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.product-detail-page .sticky-rfq .row.g-3 > [class*="col-"] {
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

.product-detail-page .sticky-rfq .row.g-3 > .col-12 {
    grid-column: 1 / -1 !important;
}

@media (max-width: 575.98px) {
    .product-detail-page .sticky-rfq .row.g-3 {
        grid-template-columns: 1fr !important;
    }
}

/* Product preview polish: compact hero image and RFQ form. */
.product-detail-page .product-detail-hero {
    padding: clamp(3.6rem, 7vw, 5.2rem) 0 clamp(2rem, 4vw, 3rem) !important;
}

.product-detail-page .product-detail-hero .container {
    max-width: 1160px !important;
}

.product-detail-page .product-detail-hero h1 {
    font-size: clamp(2.25rem, 4.1vw, 3.9rem) !important;
    max-width: 720px !important;
}

.product-detail-page .product-main-image {
    aspect-ratio: 4 / 3 !important;
    background: rgba(255, 255, 255, 0.96) !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.14) !important;
    box-sizing: border-box !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 1rem !important;
    width: 100% !important;
}

.product-detail-page .product-main-image img {
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

.product-detail-page .product-main-image i {
    align-items: center !important;
    background: #ffc400 !important;
    border-radius: 999px !important;
    color: #161616 !important;
    display: inline-flex !important;
    font-size: 1.55rem !important;
    height: 58px !important;
    justify-content: center !important;
    width: 58px !important;
}

.product-detail-page > .section-block:not(.muted-section) {
    padding: clamp(1.6rem, 3vw, 2.5rem) 0 !important;
}

.product-detail-page > .section-block:not(.muted-section) > .container > .row.g-5 {
    display: grid !important;
    gap: 20px !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.85fr) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.product-detail-page > .section-block:not(.muted-section) > .container > .row.g-5 > [class*="col-"] {
    max-width: none !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

.product-detail-page .product-detail-tabs,
.product-detail-page .sticky-rfq {
    border: 1px solid rgba(17, 24, 39, 0.1) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.product-detail-page .sticky-rfq {
    align-self: start !important;
    position: sticky !important;
    top: 96px !important;
}

.product-detail-page .sticky-rfq .rfq-form {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.product-detail-page .sticky-rfq .row.g-3 {
    align-items: start !important;
}

.product-detail-page .sticky-rfq .row.g-3 > [class*="col-"] {
    box-sizing: border-box !important;
    display: block !important;
    min-width: 0 !important;
}

.product-detail-page .sticky-rfq .form-label {
    color: #343434 !important;
    display: block !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 0.26rem !important;
    width: 100% !important;
}

.product-detail-page .sticky-rfq .form-control {
    background: #fffdf8 !important;
    border: 1px solid rgba(22, 22, 22, 0.18) !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
    display: block !important;
    font-size: 0.88rem !important;
    height: 38px !important;
    line-height: 1.2 !important;
    min-height: 38px !important;
    padding: 0.52rem 0.68rem !important;
    width: 100% !important;
}

.product-detail-page .sticky-rfq textarea.form-control {
    height: 82px !important;
    min-height: 82px !important;
}

.product-detail-page .sticky-rfq .form-text {
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
    margin: 0.35rem 0 0 !important;
}

.product-detail-page .sticky-rfq .btn-primary {
    min-height: 40px !important;
    width: 100% !important;
}

@media (min-width: 992px) {
    .product-detail-page .product-detail-hero .row.g-5 {
        display: grid !important;
        gap: 24px !important;
        grid-template-columns: minmax(0, 1fr) minmax(280px, 380px) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .product-detail-page .product-detail-hero .row.g-5 > [class*="col-"] {
        max-width: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: auto !important;
    }

    .product-detail-page .product-main-image {
        justify-self: end !important;
        max-width: 380px !important;
    }
}

@media (max-width: 991.98px) {
    .product-detail-page .product-detail-hero .row.g-5,
    .product-detail-page > .section-block:not(.muted-section) > .container > .row.g-5 {
        grid-template-columns: 1fr !important;
    }

    .product-detail-page .product-main-image {
        max-width: 420px !important;
    }

    .product-detail-page .sticky-rfq {
        position: static !important;
    }
}

/* Product detail related products: compact 3-column cards. */
.product-detail-page .muted-section {
    background: #ffffff !important;
    padding: clamp(1.8rem, 3vw, 2.6rem) 0 clamp(2.2rem, 4vw, 3rem) !important;
}

.product-detail-page .muted-section .container {
    max-width: 1160px !important;
}

.product-detail-page .muted-section .section-heading {
    margin-bottom: 1.1rem !important;
}

.product-detail-page .muted-section .section-heading .eyebrow {
    margin-bottom: 0.35rem !important;
}

.product-detail-page .muted-section .section-heading h2 {
    font-size: clamp(1.75rem, 3.4vw, 2.55rem) !important;
    line-height: 1.05 !important;
    margin: 0 !important;
    max-width: 520px !important;
}

.product-detail-page .muted-section .row.g-4 {
    display: grid !important;
    gap: 16px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.product-detail-page .muted-section .row.g-4 > [class*="col-"] {
    flex: none !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

.product-detail-page .muted-section .product-card,
.product-detail-page .muted-section .product-card * {
    box-sizing: border-box !important;
}

.product-detail-page .muted-section .product-card {
    align-items: stretch !important;
    border-radius: 8px !important;
    display: grid !important;
    gap: 0.62rem !important;
    grid-template-rows: auto auto 1fr auto !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0.9rem !important;
}

.product-detail-page .muted-section .product-card > .product-thumb,
.product-detail-page .muted-section .product-card > .product-icon {
    align-items: center !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 8px !important;
    display: flex !important;
    justify-content: center !important;
    min-height: 96px !important;
    padding: 0.7rem !important;
    width: 100% !important;
}

.product-detail-page .muted-section .product-card > .product-thumb img {
    height: 100% !important;
    max-height: 128px !important;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

.product-detail-page .muted-section .product-card > .product-icon i {
    font-size: 1.35rem !important;
    height: 46px !important;
    width: 46px !important;
}

.product-detail-page .muted-section .product-card h3 {
    font-size: 1rem !important;
    line-height: 1.22 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

.product-detail-page .muted-section .product-card h3 a {
    color: var(--cp-ink) !important;
}

.product-detail-page .muted-section .product-card p {
    color: var(--cp-muted) !important;
    font-size: 0.86rem !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

.product-detail-page .muted-section .product-card .btn {
    justify-self: stretch !important;
    min-height: 38px !important;
    padding: 0.52rem 0.75rem !important;
    width: 100% !important;
}

@media (max-width: 767.98px) {
    .product-detail-page .muted-section .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    .product-detail-page .muted-section .row.g-4 {
        grid-template-columns: 1fr !important;
    }
}

/* Product detail tabs: keep tab buttons horizontal. */
.product-detail-page .product-detail-tabs .nav-tabs,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-tabs {
    align-items: center !important;
    background: #fff8df !important;
    border-bottom: 1px solid rgba(17, 24, 39, 0.1) !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0.45rem !important;
    justify-content: flex-start !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0.55rem !important;
}

.product-detail-page .product-detail-tabs .nav-tabs .nav-item,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-tabs .nav-item {
    flex: 0 0 auto !important;
    list-style: none !important;
    margin: 0 !important;
    width: auto !important;
}

.product-detail-page .product-detail-tabs .nav-tabs .nav-link,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-tabs .nav-link {
    align-items: center !important;
    border: 1px solid rgba(17, 24, 39, 0.18) !important;
    border-radius: 6px !important;
    display: inline-flex !important;
    font-size: 0.86rem !important;
    justify-content: center !important;
    line-height: 1.15 !important;
    min-height: 34px !important;
    padding: 0.46rem 0.72rem !important;
    white-space: nowrap !important;
    width: auto !important;
}

.product-detail-page .product-detail-tabs .nav-tabs .nav-link.active,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-tabs .nav-link.active {
    background: #ffffff !important;
    border-color: rgba(17, 24, 39, 0.42) !important;
    color: var(--cp-ink) !important;
}

/* Product detail related cards: use square product image area. */
.product-detail-page .muted-section .product-card {
    grid-template-rows: auto auto 1fr auto !important;
}

.product-detail-page .muted-section .product-card > .product-thumb,
.product-detail-page .muted-section .product-card > .product-icon {
    align-self: stretch !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    margin: 0 !important;
    min-height: 0 !important;
    padding: clamp(0.9rem, 2vw, 1.2rem) !important;
    width: 100% !important;
}

.product-detail-page .muted-section .product-card > .product-icon {
    display: flex !important;
}

.product-detail-page .muted-section .product-card > .product-thumb img {
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

.product-detail-page .muted-section .product-card > .product-icon i {
    font-size: clamp(2.1rem, 4vw, 3rem) !important;
    height: clamp(76px, 9vw, 104px) !important;
    width: clamp(76px, 9vw, 104px) !important;
}

/* Product detail hero gallery: backend-managed carousel. */
.product-detail-page .product-image-carousel {
    aspect-ratio: 1 / 1 !important;
    display: block !important;
    max-width: 420px !important;
    min-height: 0 !important;
    padding: 0 !important;
    position: relative !important;
}

.product-detail-page .product-image-carousel .carousel-inner,
.product-detail-page .product-image-carousel .carousel-item {
    height: 100% !important;
}

.product-detail-page .product-image-carousel .carousel-item {
    background: transparent !important;
    padding: clamp(0.85rem, 2vw, 1.25rem) !important;
}

.product-detail-page .product-image-carousel .carousel-item img {
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    width: 100% !important;
}

.product-detail-page .product-image-carousel .carousel-indicators {
    bottom: 0.72rem !important;
    gap: 0.35rem !important;
}

.product-detail-page .product-image-carousel .carousel-indicators button {
    background: rgba(22, 22, 22, 0.28) !important;
    height: 7px !important;
    width: 22px !important;
}

.product-detail-page .product-image-carousel .carousel-indicators button.active {
    background: #ffc400 !important;
}

.product-detail-page .product-image-carousel .carousel-control-prev,
.product-detail-page .product-image-carousel .carousel-control-next {
    background: rgba(22, 22, 22, 0.62) !important;
    border-radius: 999px !important;
    height: 38px !important;
    margin: 0 0.72rem !important;
    width: 38px !important;
}

.product-detail-page .product-gallery-strip {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 420px !important;
}

.product-detail-page .product-gallery-thumb {
    cursor: pointer !important;
}

.product-detail-page .product-gallery-thumb[aria-current="true"] {
    border-color: #ffc400 !important;
    box-shadow: 0 0 0 3px rgba(255, 196, 0, 0.18) !important;
}

@media (min-width: 992px) {
    .product-detail-page .product-detail-hero .row.g-5 {
        grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
    }

    .product-detail-page .product-image-carousel,
    .product-detail-page .product-gallery-strip {
        justify-self: end !important;
    }
}

@media (max-width: 991.98px) {
    .product-detail-page .product-image-carousel,
    .product-detail-page .product-gallery-strip {
        max-width: 460px !important;
    }
}

/* RFQ page: compact layout aligned with contact/product detail pages. */
.rfq-page {
    background: #ffffff !important;
}

.rfq-page .listing-hero {
    min-height: 0 !important;
    padding: clamp(3.8rem, 7vw, 5.4rem) 0 clamp(2rem, 4vw, 3rem) !important;
}

.rfq-page .listing-hero .container {
    max-width: 1160px !important;
}

.rfq-page .listing-hero h1 {
    font-size: clamp(2.15rem, 4.1vw, 3.8rem) !important;
    line-height: 1.03 !important;
    margin-bottom: 0.85rem !important;
    max-width: 760px !important;
}

.rfq-page .listing-hero p {
    font-size: 1rem !important;
    line-height: 1.55 !important;
    margin-bottom: 0 !important;
    max-width: 680px !important;
}

.rfq-page .rfq-page-section {
    padding: clamp(1.6rem, 3vw, 2.6rem) 0 clamp(2.4rem, 5vw, 3.4rem) !important;
}

.rfq-page .rfq-page-section .container {
    max-width: 1160px !important;
}

.rfq-page .rfq-page-layout {
    align-items: start !important;
    display: grid !important;
    gap: 20px !important;
    grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.rfq-page .rfq-page-layout > [class*="col-"] {
    max-width: none !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
}

.rfq-page .rfq-page-info-panel,
.rfq-page .rfq-form {
    border: 1px solid rgba(17, 24, 39, 0.1) !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 46px rgba(16, 24, 40, 0.08) !important;
    box-sizing: border-box !important;
    height: 100% !important;
    overflow: hidden !important;
}

.rfq-page .rfq-page-info-panel {
    background:
        radial-gradient(circle at 0% 0%, rgba(246, 196, 0, 0.18), transparent 34%),
        #fffdf6 !important;
    display: grid !important;
    gap: 1rem !important;
    padding: 1.25rem !important;
}

.rfq-page .rfq-page-info-panel > * {
    margin-bottom: 0 !important;
}

.rfq-page .rfq-page-info-panel p {
    color: var(--cp-muted) !important;
    font-size: 0.95rem !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}

.rfq-page .rfq-points {
    display: grid !important;
    gap: 0.65rem !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rfq-page .rfq-points li {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid rgba(24, 24, 24, 0.08) !important;
    border-radius: 8px !important;
    color: var(--cp-text) !important;
    display: grid !important;
    font-size: 0.94rem !important;
    gap: 0.72rem !important;
    grid-template-columns: 40px minmax(0, 1fr) !important;
    line-height: 1.35 !important;
    min-height: 56px !important;
    padding: 0.62rem 0.72rem !important;
}

.rfq-page .rfq-points i {
    align-items: center !important;
    background: #fff7cc !important;
    border: 1px solid rgba(246, 196, 0, 0.26) !important;
    border-radius: 8px !important;
    color: #b88600 !important;
    display: inline-flex !important;
    font-size: 1rem !important;
    height: 40px !important;
    justify-content: center !important;
    width: 40px !important;
}

.rfq-page .rfq-form {
    background:
        radial-gradient(circle at 92% 0%, rgba(246, 196, 0, 0.15), transparent 35%),
        #ffffff !important;
    padding: 1.25rem !important;
}

.rfq-page .rfq-form .row.g-3 {
    display: grid !important;
    gap: 0.75rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.rfq-page .rfq-form .row.g-3 > [class*="col-"] {
    display: grid !important;
    gap: 0.3rem !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

.rfq-page .rfq-form .row.g-3 > .col-12 {
    grid-column: 1 / -1 !important;
}

.rfq-page .rfq-form .form-label {
    color: #4b5563 !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.1 !important;
    margin: 0 !important;
}

.rfq-page .rfq-form .form-control,
.rfq-page .rfq-form .form-select {
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, 0.12) !important;
    border-radius: 8px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86) !important;
    color: var(--cp-ink) !important;
    font-size: 0.92rem !important;
    height: 42px !important;
    line-height: 1.25 !important;
    min-height: 42px !important;
    padding: 0.62rem 0.78rem !important;
    width: 100% !important;
}

.rfq-page .rfq-form .form-control:focus,
.rfq-page .rfq-form .form-select:focus {
    background: #ffffff !important;
    border-color: rgba(246, 196, 0, 0.82) !important;
    box-shadow: 0 0 0 3px rgba(246, 196, 0, 0.16) !important;
    outline: 0 !important;
}

.rfq-page .rfq-form textarea.form-control {
    height: 96px !important;
    min-height: 96px !important;
    resize: vertical !important;
}

.rfq-page .rfq-form input[type="file"].form-control {
    cursor: pointer !important;
    padding: 0 !important;
}

.rfq-page .rfq-form input[type="file"].form-control::file-selector-button {
    background: #f6c400 !important;
    border: 0 !important;
    border-right: 1px solid rgba(17, 24, 39, 0.12) !important;
    color: #151515 !important;
    cursor: pointer !important;
    font: inherit !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    height: 42px !important;
    margin: 0 0.8rem 0 0 !important;
    padding: 0 0.9rem !important;
}

.rfq-page .rfq-form .form-text {
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, 0.08) !important;
    border-radius: 8px !important;
    color: var(--cp-muted) !important;
    font-size: 0.76rem !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    padding: 0.48rem 0.6rem !important;
}

.rfq-page .rfq-form .btn-primary {
    min-height: 44px !important;
    padding: 0.75rem 1.1rem !important;
    width: 100% !important;
}

.rfq-page .alert {
    border-radius: 8px !important;
    margin: 0 0 0.9rem !important;
    padding: 0.75rem 0.9rem !important;
}

@media (max-width: 991.98px) {
    .rfq-page .rfq-page-layout {
        grid-template-columns: 1fr !important;
    }

    .rfq-page .rfq-page-info-panel,
    .rfq-page .rfq-form {
        height: auto !important;
    }
}

@media (max-width: 575.98px) {
    .rfq-page .rfq-form .row.g-3 {
        grid-template-columns: 1fr !important;
    }

    .rfq-page .rfq-page-info-panel,
    .rfq-page .rfq-form {
        padding: 1rem !important;
    }
}

/* B2B black/yellow/red restyle: Chemical Guys-inspired energy, WordPress-native content. */
:root {
    --cp-ink: #151515;
    --cp-text: #2f3540;
    --cp-muted: #5f6672;
    --cp-line: #e5e7eb;
    --cp-soft: #f5f6f8;
    --cp-lime: #ffc400;
    --cp-green: #ffc400;
    --cp-blue: #d71920;
    --cp-dark: #ffffff;
    --cp-dark-2: #f5f6f8;
    --cp-panel: #ffffff;
    --cp-white: #ffffff;
    --cp-shadow: 0 18px 42px rgba(5, 8, 7, 0.12);
}

body {
    background: #ffffff !important;
    color: var(--cp-text) !important;
}

a {
    color: #151515;
}

a:hover,
a:focus {
    color: #d71920;
}

.topbar {
    background: #d71920 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    color: #ffffff !important;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.site-header > .topbar,
body .site-header .topbar,
body.home .site-header .topbar {
    background-color: #d71920 !important;
    background-image: none !important;
    color: #ffffff !important;
}

.site-header .topbar .cleanpro-header-shell,
.site-header .topbar .topbar-links {
    background: transparent !important;
}

.topbar a,
.topbar span {
    color: #ffffff !important;
}

.main-nav,
.home .main-nav {
    background: #050807 !important;
    border: 0 !important;
    box-shadow: 0 14px 36px rgba(5, 8, 7, 0.24) !important;
    color: #ffffff !important;
}

.cleanpro-header-shell {
    padding-left: clamp(16px, 3vw, 40px) !important;
    padding-right: clamp(16px, 3vw, 40px) !important;
}

.main-nav .cleanpro-header-shell,
.home .main-nav .cleanpro-header-shell {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    min-width: 0 !important;
    position: relative !important;
}

.navbar-brand,
.home .navbar-brand {
    color: #ffffff !important;
    gap: 0.55rem;
    max-width: calc(100% - 58px) !important;
    min-width: 0 !important;
}

.brand-mark {
    background: #ffc400 !important;
    border: 0 !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    color: #050807 !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
}

.brand-subtitle {
    color: #ffc400 !important;
    font-size: 0.64rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
}

.navbar .nav-link,
.home .navbar .nav-link,
.cleanpro-grouped-nav .nav-link,
.home .cleanpro-grouped-nav .nav-link,
.nav-link-group .dropdown-toggle-split,
.home .nav-link-group .dropdown-toggle-split {
    color: rgba(255, 255, 255, 0.92) !important;
    font-size: 0.86rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus,
.cleanpro-nav-group:hover > .nav-link,
.home .navbar .nav-link:hover,
.home .navbar .nav-link:focus {
    background: transparent !important;
    color: #ffc400 !important;
}

.cleanpro-nav-menu {
    background: #ffffff !important;
    border: 1px solid rgba(5, 8, 7, 0.1) !important;
    border-radius: 3px !important;
    box-shadow: 0 20px 40px rgba(5, 8, 7, 0.18) !important;
}

.cleanpro-nav-menu .dropdown-item {
    color: #151515 !important;
    font-weight: 800 !important;
}

.cleanpro-nav-menu .dropdown-item:hover,
.cleanpro-nav-menu .dropdown-item:focus {
    background: #050807 !important;
    color: #ffc400 !important;
}

.header-search-form .form-control {
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    border-radius: 3px !important;
    color: #ffffff !important;
}

.header-search-form .form-control::placeholder {
    color: rgba(255, 255, 255, 0.56) !important;
}

.header-search-form .btn,
.home .header-search-form .btn {
    background: transparent !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
    border-radius: 3px !important;
    color: #ffffff !important;
}

.main-nav .btn-primary,
.home .main-nav .btn-primary,
.btn-primary,
.home .product-card .btn,
.home .home-doc-card .btn,
.product-card .btn,
.rfq-form .btn-primary,
.sticky-rfq .btn-primary {
    background: #ffc400 !important;
    border-color: #ffc400 !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    color: #050807 !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
}

.main-nav .btn-primary:hover,
.home .main-nav .btn-primary:hover,
.btn-primary:hover,
.btn-primary:focus,
.home .product-card .btn:hover,
.home .home-doc-card .btn:hover,
.product-card .btn:hover,
.rfq-form .btn-primary:hover,
.sticky-rfq .btn-primary:hover {
    background: #e2a900 !important;
    border-color: #e2a900 !important;
    color: #050807 !important;
    transform: translateY(-1px);
}

.navbar-toggler,
.home .navbar-toggler {
    align-items: center !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    border-radius: 3px !important;
    color: #ffffff !important;
    display: inline-flex !important;
    justify-content: center !important;
    margin-left: auto !important;
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 0.55rem !important;
    background: rgba(255, 255, 255, 0.08) !important;
    position: relative !important;
    z-index: 3 !important;
}

.main-nav .navbar-toggler,
.home .main-nav .navbar-toggler {
    display: inline-flex !important;
    flex: 0 0 44px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

@media (min-width: 768px) {
    .main-nav .navbar-toggler,
    .home .main-nav .navbar-toggler,
    .navbar-expand-md .navbar-toggler {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .main-nav .navbar-toggler,
    .home .main-nav .navbar-toggler,
    .navbar-expand-md .navbar-toggler {
        background: #ffc400 !important;
        border-color: #ffc400 !important;
        color: #050807 !important;
        display: inline-flex !important;
        gap: 0.25rem !important;
        left: calc(100vw - 86px) !important;
        min-width: 72px !important;
        position: absolute !important;
        right: auto !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    .main-nav .navbar-toggler-icon,
    .home .main-nav .navbar-toggler-icon {
        background:
            linear-gradient(#050807, #050807) 50% 25% / 18px 2px no-repeat,
            linear-gradient(#050807, #050807) 50% 50% / 18px 2px no-repeat,
            linear-gradient(#050807, #050807) 50% 75% / 18px 2px no-repeat !important;
        width: 20px !important;
    }

    .cleanpro-menu-label {
        display: inline-block !important;
        font-size: 0.66rem !important;
        font-weight: 950 !important;
        letter-spacing: 0.02em !important;
        text-transform: uppercase !important;
    }

    .main-nav .navbar-brand,
    .home .main-nav .navbar-brand {
        padding-right: 58px !important;
    }
}

.navbar-toggler-icon,
.home .navbar-toggler-icon {
    background:
        linear-gradient(#ffffff, #ffffff) 50% 25% / 22px 2px no-repeat,
        linear-gradient(#ffffff, #ffffff) 50% 50% / 22px 2px no-repeat,
        linear-gradient(#ffffff, #ffffff) 50% 75% / 22px 2px no-repeat !important;
}

.cleanpro-menu-label {
    display: none !important;
}

.btn-outline-primary,
.btn-outline-light {
    background: transparent !important;
    border-color: #151515 !important;
    border-radius: 3px !important;
    color: #151515 !important;
    font-weight: 900 !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-light:hover,
.btn-outline-light:focus {
    background: #050807 !important;
    border-color: #050807 !important;
    color: #ffffff !important;
}

.home .hero-section.cleanpro-elix-hero,
.hero-section.cleanpro-elix-hero {
    background:
        linear-gradient(90deg, rgba(5, 8, 7, 0.95) 0%, rgba(5, 8, 7, 0.74) 48%, rgba(5, 8, 7, 0.46) 100%),
        var(--hero-image) center/cover no-repeat !important;
    color: #ffffff !important;
    min-height: min(760px, calc(100vh - 34px)) !important;
    overflow: hidden !important;
}

.hero-section-image {
    filter: saturate(1.05) contrast(1.08) !important;
    opacity: 0.42 !important;
}

.home .hero-section.cleanpro-elix-hero::before,
.hero-section.cleanpro-elix-hero::before {
    background:
        linear-gradient(90deg, rgba(5, 8, 7, 0.96), rgba(5, 8, 7, 0.58)),
        radial-gradient(circle at 82% 24%, rgba(255, 196, 0, 0.18), transparent 30%) !important;
}

.cleanpro-elix-hero-inner {
    min-height: min(760px, calc(100vh - 34px)) !important;
    padding: clamp(72px, 10vw, 128px) 0 clamp(40px, 7vw, 76px) !important;
}

.hero-content.cleanpro-elix-copy {
    max-width: 780px !important;
}

.cleanpro-elix-eyebrow,
.hero-section .eyebrow,
.section-heading .eyebrow,
.eyebrow {
    color: #d71920 !important;
    font-weight: 950 !important;
    letter-spacing: 0.11em !important;
    text-transform: uppercase !important;
}

.hero-section .cleanpro-elix-eyebrow {
    background: rgba(255, 196, 0, 0.1) !important;
    border: 1px solid rgba(255, 196, 0, 0.56) !important;
    border-radius: 3px !important;
    color: #ffc400 !important;
    display: inline-flex !important;
    padding: 0.42rem 0.62rem !important;
}

.hero-section .cleanpro-elix-title,
.hero-section .cleanpro-swinter-title,
.hero-section h1 {
    color: #ffffff !important;
    font-size: clamp(2.7rem, 6vw, 5.9rem) !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 0.93 !important;
    max-width: 920px !important;
    text-transform: uppercase !important;
}

.hero-section .cleanpro-elix-title span,
.hero-section .cleanpro-swinter-title span,
.hero-section .cleanpro-swinter-title-main,
.hero-section .cleanpro-reveal-word span {
    color: #ffffff !important;
}

.cleanpro-swinter-title-sub {
    color: #ffc400 !important;
    display: block !important;
}

.hero-section .cleanpro-swinter-title-sub,
.hero-section .cleanpro-swinter-title-sub span {
    color: #ffc400 !important;
}

.hero-section p,
.hero-actions p,
.cleanpro-elix-actions p {
    color: rgba(255, 255, 255, 0.78) !important;
    font-size: clamp(1rem, 1.5vw, 1.24rem) !important;
    line-height: 1.55 !important;
    max-width: 760px !important;
}

.cleanpro-elix-primary {
    font-size: 1rem !important;
    min-height: 54px !important;
    padding-left: 1.45rem !important;
    padding-right: 1.45rem !important;
    text-transform: uppercase !important;
}

.cleanpro-hero-service-map {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 3px !important;
    backdrop-filter: blur(12px);
}

.cleanpro-hero-service-map a,
.home .cleanpro-hero-service-map a {
    background: transparent !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    border-radius: 0 !important;
    color: #ffffff !important;
    font-weight: 900 !important;
}

.cleanpro-hero-service-map a:hover,
.home .cleanpro-hero-service-map a:hover {
    background: #ffc400 !important;
    color: #050807 !important;
}

.cleanpro-hero-service-map a span {
    color: #ffc400 !important;
}

.cleanpro-hero-service-map a:hover span {
    color: #050807 !important;
}

.cleanpro-elix-panel,
.cleanpro-elix-carousel-card,
.cleanpro-elix-panel-proof,
.cleanpro-elix-panel-assessment {
    background: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 3px !important;
    box-shadow: 0 24px 58px rgba(5, 8, 7, 0.28) !important;
    color: #151515 !important;
}

.cleanpro-elix-panel h2,
.cleanpro-elix-panel p,
.cleanpro-elix-panel strong {
    color: #151515 !important;
}

.cleanpro-elix-icon,
.cleanpro-elix-icon.is-black,
.cleanpro-elix-icon.is-green,
.cleanpro-elix-icon.is-cyan,
.cleanpro-elix-icon.is-amber {
    background: #d71920 !important;
    color: #ffffff !important;
}

.section-block {
    background: #ffffff !important;
}

.muted-section,
.stats-band,
.cleanpro-home-hot-products,
.cleanpro-home-downloads,
.rfq-section,
.listing-page .section-block {
    background: #f5f6f8 !important;
}

.section-heading h2,
.section-block h2,
.oem-section h2,
.quality-section h2,
.factory-tour-section h2,
.market-section h2,
.rfq-section h2,
.listing-hero h1,
.product-detail-hero h1 {
    color: #050807 !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 1.02 !important;
    text-transform: uppercase !important;
}

.section-heading p,
.section-block p,
.oem-section p,
.quality-section p,
.market-section p,
.listing-hero p,
.product-detail-hero p {
    color: #5f6672 !important;
}

.stats-band {
    border-bottom: 1px solid #e5e7eb !important;
    border-top: 1px solid #e5e7eb !important;
}

.stat-item {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
}

.stat-item strong {
    color: #d71920 !important;
}

.stat-item span {
    color: #151515 !important;
    font-weight: 900 !important;
}

.feature-card,
.solution-card,
.product-card,
.certificate-card,
.download-card,
.home-doc-card,
.quality-step,
.advantage-card,
.factory-tour-item {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    color: #151515 !important;
    overflow: hidden;
}

.feature-card:hover,
.solution-card:hover,
.product-card:hover,
.certificate-card:hover,
.download-card:hover,
.quality-step:hover,
.advantage-card:hover,
.factory-tour-item:hover {
    border-color: #050807 !important;
    box-shadow: 0 16px 36px rgba(5, 8, 7, 0.12) !important;
    transform: translateY(-2px);
}

.feature-card h3,
.solution-card h3,
.product-card h3,
.certificate-card h3,
.download-card h3,
.quality-step h3,
.advantage-card h3 {
    color: #151515 !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
}

.feature-card p,
.solution-card p,
.product-card p,
.certificate-card p,
.download-card p,
.quality-step p,
.advantage-card p {
    color: #5f6672 !important;
}

.feature-card > i,
.solution-card > i,
.product-icon,
.quality-step i,
.advantage-card i {
    background: #f5f6f8 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    color: #d71920 !important;
}

.home-card-image,
.product-thumb img,
.certificate-image img,
.factory-tour-item img,
.factory-visual img {
    filter: saturate(1.03) contrast(1.04);
}

.product-card {
    display: grid !important;
    gap: 0.8rem !important;
    padding: 1.1rem !important;
}

.product-card .product-thumb,
.product-card .product-icon {
    border-radius: 3px !important;
}

.product-card h3 a {
    color: #151515 !important;
}

.product-card h3 a:hover {
    color: #d71920 !important;
}

.cleanpro-product-archive-list .product-card,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
    align-items: center !important;
    display: grid !important;
    gap: clamp(1rem, 2vw, 1.6rem) !important;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr) auto !important;
    min-height: 170px !important;
}

.cleanpro-product-archive-list .product-card .product-thumb,
.cleanpro-product-archive-list .product-card .product-icon {
    grid-row: span 3 !important;
    height: 150px !important;
    margin: 0 !important;
    width: 100% !important;
}

.cleanpro-product-archive-list .product-card .btn {
    align-self: center !important;
    min-width: 140px !important;
}

.product-filter-wrap,
.product-filter-form,
.term-filter,
.search-type-filter {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    box-shadow: none !important;
}

.term-filter a {
    border-radius: 3px !important;
    color: #151515 !important;
    font-weight: 900 !important;
}

.term-filter a:hover,
.term-filter a:focus {
    background: #050807 !important;
    color: #ffc400 !important;
}

.form-control,
.form-select,
input[type="search"],
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
    background: #f5f6f8 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    color: #151515 !important;
}

.form-control:focus,
.form-select:focus,
input:focus,
select:focus,
textarea:focus {
    background: #ffffff !important;
    border-color: #ffc400 !important;
    box-shadow: 0 0 0 3px rgba(255, 196, 0, 0.2) !important;
}

.listing-hero,
.content-page.has-listing-hero .listing-hero,
.product-detail-hero,
.single-cleanpro_product .product-detail-page .product-detail-hero {
    background:
        linear-gradient(90deg, rgba(5, 8, 7, 0.96), rgba(5, 8, 7, 0.76)),
        radial-gradient(circle at 86% 10%, rgba(255, 196, 0, 0.2), transparent 28%) !important;
    color: #ffffff !important;
    padding: clamp(64px, 9vw, 112px) 0 !important;
}

.listing-hero h1,
.listing-hero p,
.product-detail-hero h1,
.product-detail-hero p {
    color: #ffffff !important;
}

.listing-hero .eyebrow,
.product-detail-hero .eyebrow {
    color: #ffc400 !important;
}

.product-detail-page .product-detail-hero .row.g-5 {
    align-items: center !important;
}

.product-main-image,
.product-image-carousel,
.sticky-rfq,
.product-detail-tabs,
.product-tab-content,
.product-table-wrap,
.market-panel,
.rfq-form {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    box-shadow: 0 18px 42px rgba(5, 8, 7, 0.1) !important;
}

.product-detail-tabs .nav-tabs,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-tabs {
    background: #f5f6f8 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    gap: 0.35rem !important;
    padding: 0.35rem !important;
}

.product-detail-tabs .nav-link,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-link {
    border-radius: 3px !important;
    color: #5f6672 !important;
    font-weight: 900 !important;
}

.product-detail-tabs .nav-link.active,
.single-cleanpro_product .product-detail-page .product-detail-tabs .nav-link.active {
    background: #050807 !important;
    color: #ffc400 !important;
}

.oem-section,
.factory-tour-section,
.market-section {
    background: #050807 !important;
    color: #ffffff !important;
}

.oem-section h2,
.oem-section p,
.factory-tour-section h2,
.factory-tour-section p,
.market-section h2,
.market-section p {
    color: #ffffff !important;
}

.process-list span,
.market-chip-list span,
.product-card-meta span {
    background: #fff4bf !important;
    border: 1px solid rgba(255, 196, 0, 0.45) !important;
    border-radius: 3px !important;
    color: #151515 !important;
    font-weight: 900 !important;
}

.quality-section .quality-step span,
.text-link {
    color: #d71920 !important;
    font-weight: 900 !important;
}

.cleanpro-home-certificates,
.cleanpro-home-downloads {
    background: #ffffff !important;
}

.download-card .eyebrow,
.home-doc-card .eyebrow {
    color: #d71920 !important;
}

.rfq-section {
    border-top: 4px solid #d71920 !important;
}

.rfq-section .rfq-form,
.home #rfq .rfq-form,
.rfq-page .rfq-form,
.sticky-rfq .rfq-form {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    box-shadow: 0 18px 42px rgba(5, 8, 7, 0.12) !important;
}

.rfq-points li,
.rfq-page .rfq-points li {
    border-radius: 3px !important;
}

.rfq-points i,
.rfq-page .rfq-points i {
    background: #d71920 !important;
    color: #ffffff !important;
}

.site-footer {
    background: #050807 !important;
    border-top: 4px solid #d71920 !important;
    color: rgba(255, 255, 255, 0.78) !important;
}

.site-footer h2,
.site-footer h3,
.site-footer .footer-brand {
    color: #ffffff !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
}

.site-footer a,
.footer-contact,
.footer-list a {
    color: rgba(255, 255, 255, 0.76) !important;
}

.site-footer a:hover,
.footer-list a:hover {
    color: #ffc400 !important;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: rgba(255, 255, 255, 0.56) !important;
}

.whatsapp-float {
    background: #ffc400 !important;
    border: 2px solid #050807 !important;
    color: #050807 !important;
}

@media (max-width: 991.98px) {
    .main-nav .navbar-collapse {
        background: #ffffff !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 3px !important;
        box-shadow: 0 18px 38px rgba(5, 8, 7, 0.16) !important;
    }

    .navbar .nav-link,
    .home .navbar .nav-link,
    .cleanpro-grouped-nav .nav-link,
    .home .cleanpro-grouped-nav .nav-link {
        color: #151515 !important;
    }

    .main-nav .navbar-collapse > .btn,
    .home .main-nav .navbar-collapse > .btn {
        width: 100%;
    }

    .header-search-form .form-control {
        background: #f5f6f8 !important;
        color: #151515 !important;
    }

    .header-search-form .form-control::placeholder {
        color: #5f6672 !important;
    }

    .home .hero-section.cleanpro-elix-hero,
    .hero-section.cleanpro-elix-hero {
        min-height: auto !important;
    }

    .cleanpro-elix-hero-inner {
        min-height: auto !important;
        padding-top: 64px !important;
    }

    .cleanpro-elix-panels {
        position: relative !important;
    }

    .cleanpro-product-archive-list .product-card,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card {
        grid-template-columns: 1fr !important;
    }

    .cleanpro-product-archive-list .product-card .product-thumb,
    .cleanpro-product-archive-list .product-card .product-icon {
        grid-row: auto !important;
    }
}

@media (max-width: 575.98px) {
    .topbar {
        font-size: 0.76rem !important;
    }

    .cleanpro-header-shell {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .hero-section .cleanpro-elix-title,
    .hero-section .cleanpro-swinter-title,
    .hero-section h1 {
        font-size: clamp(2.25rem, 15vw, 3.65rem) !important;
    }

    .hero-actions,
    .cleanpro-elix-actions {
        align-items: stretch !important;
    }

    .hero-actions .btn,
    .cleanpro-elix-actions .btn {
        justify-content: center !important;
        width: 100% !important;
    }
}

/* B2B structural homepage pass: actual layout, not only colors. */
.hero-section.cleanpro-b2b-hero {
    background:
        linear-gradient(90deg, rgba(5, 8, 7, 0.96), rgba(5, 8, 7, 0.78) 48%, rgba(5, 8, 7, 0.38)),
        var(--hero-image) center/cover no-repeat !important;
    color: #ffffff !important;
    min-height: auto !important;
    overflow: hidden !important;
    position: relative !important;
}

.hero-section.cleanpro-b2b-hero::before {
    background:
        radial-gradient(circle at 78% 16%, rgba(255, 196, 0, 0.2), transparent 28%),
        linear-gradient(180deg, rgba(5, 8, 7, 0.16), rgba(5, 8, 7, 0.72)) !important;
    content: "" !important;
    inset: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    z-index: 1 !important;
}

.cleanpro-b2b-hero .hero-section-image {
    height: 100% !important;
    inset: 0 !important;
    object-fit: cover !important;
    opacity: 0.34 !important;
    position: absolute !important;
    width: 100% !important;
    z-index: 0 !important;
}

.cleanpro-b2b-hero-inner {
    padding: clamp(56px, 7vw, 96px) 0 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

.cleanpro-b2b-hero-layout {
    align-items: center !important;
    display: grid !important;
    gap: clamp(28px, 5vw, 72px) !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.82fr) !important;
    min-height: 620px !important;
    min-width: 0 !important;
}

.cleanpro-b2b-hero-copy {
    display: grid !important;
    gap: 1.35rem !important;
    max-width: 820px !important;
    min-width: 0 !important;
}

.cleanpro-b2b-hero-eyebrow {
    align-self: start !important;
    background: rgba(255, 196, 0, 0.12) !important;
    border: 1px solid rgba(255, 196, 0, 0.72) !important;
    border-radius: 3px !important;
    color: #ffc400 !important;
    display: inline-flex !important;
    font-size: 0.78rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.12em !important;
    padding: 0.5rem 0.7rem !important;
    width: fit-content !important;
}

.cleanpro-b2b-hero-title {
    color: #ffffff !important;
    display: grid !important;
    font-size: clamp(3rem, 6vw, 6.15rem) !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 0.9 !important;
    margin: 0 !important;
    text-transform: uppercase !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.cleanpro-b2b-hero-title span,
.cleanpro-b2b-hero-title em {
    color: #ffffff !important;
    display: block !important;
    font-style: normal !important;
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
}

.cleanpro-b2b-hero-title em {
    color: #ffc400 !important;
    font-size: clamp(1.75rem, 3.3vw, 3.8rem) !important;
    line-height: 1.04 !important;
    max-width: 900px !important;
}

.cleanpro-b2b-hero-lede {
    color: rgba(255, 255, 255, 0.78) !important;
    font-size: clamp(1.02rem, 1.35vw, 1.22rem) !important;
    line-height: 1.62 !important;
    margin: 0 !important;
    max-width: 720px !important;
}

.cleanpro-b2b-hero-actions {
    align-items: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.85rem !important;
}

.cleanpro-b2b-hero-actions .btn {
    min-height: 54px !important;
    min-width: 178px !important;
    text-transform: uppercase !important;
}

.cleanpro-b2b-hero-actions .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.7) !important;
    color: #ffffff !important;
}

.cleanpro-b2b-hero-actions .btn-outline-light:hover {
    background: #ffffff !important;
    border-color: #ffffff !important;
    color: #050807 !important;
}

.cleanpro-b2b-hero-proof {
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    margin-top: 0.45rem !important;
}

.cleanpro-b2b-hero-proof div {
    background: rgba(255, 255, 255, 0.08) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
    padding: 1rem !important;
}

.cleanpro-b2b-hero-proof div:last-child {
    border-right: 0 !important;
}

.cleanpro-b2b-hero-proof strong {
    color: #ffc400 !important;
    display: block !important;
    font-size: clamp(1.25rem, 2vw, 2rem) !important;
    font-weight: 950 !important;
    line-height: 1 !important;
}

.cleanpro-b2b-hero-proof span {
    color: rgba(255, 255, 255, 0.76) !important;
    display: block !important;
    font-size: 0.74rem !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
    margin-top: 0.35rem !important;
    text-transform: uppercase !important;
}

.cleanpro-b2b-hero-visual {
    min-height: 520px !important;
    min-width: 0 !important;
    position: relative !important;
}

.cleanpro-b2b-visual-card {
    background:
        linear-gradient(135deg, rgba(255, 196, 0, 0.14), transparent 34%),
        repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.055) 0 1px, transparent 1px 18px),
        linear-gradient(135deg, #202326, #050807) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 3px !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.42) !important;
    inset: 48px 0 70px 56px !important;
    overflow: hidden !important;
    position: absolute !important;
}

.cleanpro-b2b-visual-card::before {
    border: 1px solid rgba(255, 196, 0, 0.36) !important;
    content: "" !important;
    inset: 20px !important;
    position: absolute !important;
    z-index: 2 !important;
}

.cleanpro-b2b-visual-card img {
    height: 100% !important;
    object-fit: cover !important;
    opacity: 0.34 !important;
    width: 100% !important;
}

.cleanpro-b2b-visual-card::after {
    background: linear-gradient(180deg, transparent 35%, rgba(5, 8, 7, 0.82)) !important;
    content: "" !important;
    inset: 0 !important;
    position: absolute !important;
}

.cleanpro-b2b-visual-caption {
    bottom: 0 !important;
    color: #ffffff !important;
    display: grid !important;
    gap: 0.35rem !important;
    left: 0 !important;
    padding: 1.55rem !important;
    position: absolute !important;
    right: 0 !important;
    z-index: 2 !important;
}

.cleanpro-b2b-visual-caption span {
    color: #ffc400 !important;
    font-size: 0.75rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
}

.cleanpro-b2b-visual-caption strong {
    color: #ffffff !important;
    font-size: clamp(1.1rem, 1.55vw, 1.6rem) !important;
    font-weight: 950 !important;
    line-height: 1.06 !important;
    max-width: 360px !important;
}

.cleanpro-b2b-doc-stack,
.cleanpro-b2b-capacity-badge {
    background: #ffc400 !important;
    border: 1px solid #e2a900 !important;
    border-radius: 3px !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.2) !important;
    color: #050807 !important;
    position: absolute !important;
    z-index: 4 !important;
}

.cleanpro-b2b-doc-stack {
    display: grid !important;
    gap: 0.35rem !important;
    left: 0 !important;
    padding: 0.7rem !important;
    top: 12% !important;
}

.cleanpro-b2b-doc-stack span {
    background: #050807 !important;
    color: #ffc400 !important;
    font-size: 0.75rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.08em !important;
    padding: 0.45rem 0.65rem !important;
}

.cleanpro-b2b-capacity-badge {
    bottom: auto !important;
    display: grid !important;
    padding: 1rem 1.15rem !important;
    right: -6px !important;
    top: 16px !important;
}

.cleanpro-b2b-capacity-badge strong {
    color: #050807 !important;
    font-size: 2rem !important;
    font-weight: 950 !important;
    line-height: 1 !important;
}

.cleanpro-b2b-capacity-badge span {
    color: #151515 !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

.cleanpro-b2b-capability-row {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    margin-top: clamp(32px, 5vw, 64px) !important;
}

.cleanpro-b2b-capability-row a {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    color: #151515 !important;
    display: grid !important;
    gap: 0.4rem !important;
    min-height: 150px !important;
    padding: 1.25rem !important;
}

.cleanpro-b2b-capability-row a:hover {
    background: #050807 !important;
    border-color: #050807 !important;
    color: #ffffff !important;
    transform: translateY(-4px) !important;
}

.cleanpro-b2b-capability-row span {
    color: #d71920 !important;
    font-size: 0.82rem !important;
    font-weight: 950 !important;
}

.cleanpro-b2b-capability-row strong {
    color: inherit !important;
    font-size: 1.05rem !important;
    font-weight: 950 !important;
}

.cleanpro-b2b-capability-row em {
    color: #5f6672 !important;
    font-size: 0.86rem !important;
    font-style: normal !important;
    line-height: 1.4 !important;
}

.cleanpro-b2b-capability-row a:hover span,
.cleanpro-b2b-capability-row a:hover em {
    color: #ffc400 !important;
}

.home .stats-band {
    display: none !important;
}

.home #products.cleanpro-compact-products {
    padding-top: clamp(72px, 8vw, 112px) !important;
}

.home #products .cleanpro-category-grid {
    row-gap: 1.4rem !important;
}

.home #products .cleanpro-category-card.feature-card {
    align-content: end !important;
    aspect-ratio: 1.18 / 1 !important;
    background: #050807 !important;
    border: 0 !important;
    color: #ffffff !important;
    display: grid !important;
    isolation: isolate !important;
    min-height: 300px !important;
    padding: 1.35rem !important;
    position: relative !important;
}

.home #products .cleanpro-category-card.feature-card::before {
    background: linear-gradient(180deg, rgba(5, 8, 7, 0.12), rgba(5, 8, 7, 0.9)) !important;
    content: "" !important;
    inset: 0 !important;
    position: absolute !important;
    z-index: -1 !important;
}

.home #products .cleanpro-category-card .home-card-image {
    height: 100% !important;
    inset: 0 !important;
    object-fit: cover !important;
    opacity: 0.88 !important;
    position: absolute !important;
    width: 100% !important;
    z-index: -2 !important;
}

.home #products .cleanpro-category-card.feature-card h3,
.home #products .cleanpro-category-card.feature-card p {
    color: #ffffff !important;
    position: relative !important;
    z-index: 2 !important;
}

.home #products .cleanpro-category-card.feature-card span {
    color: #ffc400 !important;
    font-weight: 950 !important;
    position: relative !important;
    z-index: 2 !important;
}

.home .cleanpro-home-hot-products .row.g-4 {
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: 1fr !important;
}

.home .cleanpro-home-hot-products .row.g-4 > [class*="col-"] {
    padding: 0 !important;
    width: 100% !important;
}

.home .cleanpro-home-hot-products .product-card {
    align-items: center !important;
    display: grid !important;
    gap: 1.25rem !important;
    grid-template-columns: minmax(150px, 220px) minmax(0, 1fr) auto !important;
    min-height: 150px !important;
    padding: 1rem !important;
}

.home .cleanpro-home-hot-products .product-card > .product-thumb,
.home .cleanpro-home-hot-products .product-card > .product-icon {
    grid-row: span 3 !important;
    height: 132px !important;
    margin: 0 !important;
    width: 100% !important;
}

.home .cleanpro-home-hot-products .product-card h3,
.home .cleanpro-home-hot-products .product-card p {
    margin: 0 !important;
}

.home .cleanpro-home-hot-products .product-card .btn {
    align-self: center !important;
    min-width: 150px !important;
}

@media (max-width: 991.98px) {
    .cleanpro-b2b-hero-layout {
        grid-template-columns: 1fr !important;
        min-height: auto !important;
    }

    .cleanpro-b2b-hero {
        overflow-x: clip !important;
    }

    .cleanpro-b2b-hero-visual {
        min-height: 360px !important;
    }

    .cleanpro-b2b-visual-card {
        inset: 0 !important;
    }

    .cleanpro-b2b-capability-row,
    .cleanpro-b2b-hero-proof {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .home .cleanpro-home-hot-products .product-card {
        grid-template-columns: 1fr !important;
    }

    .home .cleanpro-home-hot-products .product-card > .product-thumb,
    .home .cleanpro-home-hot-products .product-card > .product-icon {
        grid-row: auto !important;
    }
}

@media (max-width: 575.98px) {
    .cleanpro-b2b-hero-inner {
        padding-top: 44px !important;
    }

    .cleanpro-b2b-hero .container,
    .cleanpro-b2b-hero-layout,
    .cleanpro-b2b-hero-copy {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .cleanpro-b2b-hero-title {
        font-size: clamp(2.25rem, 11.4vw, 3.1rem) !important;
        line-height: 0.94 !important;
        max-width: calc(100vw - 32px) !important;
    }

    .cleanpro-b2b-hero-title em {
        font-size: clamp(1rem, 5vw, 1.24rem) !important;
        line-height: 1.12 !important;
        max-width: min(330px, calc(100vw - 32px)) !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
    }

    .cleanpro-b2b-hero-lede {
        font-size: 0.96rem !important;
        max-width: min(315px, calc(100vw - 32px)) !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
    }

    .cleanpro-b2b-hero-actions .btn {
        width: 100% !important;
    }

    .cleanpro-b2b-hero-proof,
    .cleanpro-b2b-capability-row {
        grid-template-columns: 1fr !important;
    }

    .cleanpro-b2b-hero-visual {
        min-height: 260px !important;
    }

    .cleanpro-b2b-doc-stack {
        display: flex !important;
        left: 12px !important;
        top: 12px !important;
    }

    .cleanpro-b2b-capacity-badge {
        bottom: 12px !important;
        right: 12px !important;
    }

    .site-header .topbar {
        overflow: hidden !important;
    }

    .site-header .topbar .cleanpro-header-shell {
        align-items: flex-start !important;
        gap: 0.35rem !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .site-header .topbar .topbar-links {
        display: grid !important;
        gap: 0.28rem !important;
        max-width: 100% !important;
    }

    .site-header .topbar .topbar-links a:nth-child(n+3) {
        display: none !important;
    }

    body .site-header .main-nav .navbar-toggler,
    body.home .site-header .main-nav .navbar-toggler {
        background: #ffc400 !important;
        border-color: #ffc400 !important;
        color: #050807 !important;
        display: inline-flex !important;
        flex: 0 0 auto !important;
        gap: 0.25rem !important;
        margin-left: auto !important;
        min-width: 72px !important;
        opacity: 1 !important;
        position: fixed !important;
        right: 14px !important;
        top: 116px !important;
        transform: none !important;
        visibility: visible !important;
        z-index: 10000 !important;
    }
}

/* Product section correction: horizontal B2B product grids. */
.home #products.cleanpro-compact-products,
.home .cleanpro-home-hot-products {
    background: #ffffff !important;
    padding: clamp(64px, 7vw, 104px) 0 !important;
}

.home .cleanpro-home-hot-products {
    background: #f5f6f8 !important;
}

.home #products .section-heading,
.home .cleanpro-home-hot-products .section-heading {
    align-items: end !important;
    display: grid !important;
    gap: 1.25rem !important;
    grid-template-columns: minmax(0, 0.95fr) minmax(280px, 0.55fr) !important;
    margin-bottom: 2rem !important;
    text-align: left !important;
}

.home #products .section-heading .eyebrow,
.home .cleanpro-home-hot-products .section-heading .eyebrow {
    grid-column: 1 / -1 !important;
}

.home #products .section-heading h2,
.home .cleanpro-home-hot-products .section-heading h2 {
    font-size: clamp(2.1rem, 3.4vw, 4rem) !important;
    margin: 0 !important;
    max-width: 720px !important;
}

.home #products .section-heading p,
.home .cleanpro-home-hot-products .section-heading p {
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
    margin: 0 !important;
    max-width: 440px !important;
}

.home #products .cleanpro-category-grid.row,
.home .cleanpro-home-hot-products .row.g-4 {
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.home #products .cleanpro-category-grid.row > [class*="col-"],
.home .cleanpro-home-hot-products .row.g-4 > [class*="col-"] {
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

.home #products .cleanpro-category-card.feature-card,
.home .cleanpro-home-hot-products .product-card {
    align-content: start !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    color: #151515 !important;
    display: grid !important;
    gap: 0.85rem !important;
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 1rem !important;
    position: relative !important;
}

.home #products .cleanpro-category-card.feature-card::before,
.home #products .cleanpro-category-card.feature-card::after {
    display: none !important;
}

.home #products .cleanpro-category-card.feature-card:hover,
.home .cleanpro-home-hot-products .product-card:hover {
    border-color: #050807 !important;
    box-shadow: 0 16px 34px rgba(5, 8, 7, 0.12) !important;
    transform: translateY(-3px) !important;
}

.home #products .cleanpro-category-card .home-card-image,
.home .cleanpro-home-hot-products .product-card > .product-thumb,
.home .cleanpro-home-hot-products .product-card > .product-icon {
    background: #f5f6f8 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    display: flex !important;
    grid-row: auto !important;
    height: 180px !important;
    inset: auto !important;
    margin: 0 !important;
    object-fit: cover !important;
    opacity: 1 !important;
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
    z-index: 1 !important;
}

.home #products .cleanpro-category-card.feature-card i,
.home .cleanpro-home-hot-products .product-card > .product-icon {
    align-items: center !important;
    background: #f5f6f8 !important;
    color: #d71920 !important;
    display: flex !important;
    font-size: 2.2rem !important;
    justify-content: center !important;
}

.home .cleanpro-home-hot-products .product-card > .product-thumb img,
.home .cleanpro-home-hot-products .product-card > .product-icon img,
.home #products .cleanpro-category-card .home-card-image img {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

.home #products .cleanpro-category-card.feature-card h3,
.home #products .cleanpro-category-card.feature-card p,
.home #products .cleanpro-category-card.feature-card span,
.home .cleanpro-home-hot-products .product-card h3,
.home .cleanpro-home-hot-products .product-card p {
    color: #151515 !important;
    margin: 0 !important;
    max-width: none !important;
    position: relative !important;
    z-index: 2 !important;
}

.home #products .cleanpro-category-card.feature-card h3,
.home .cleanpro-home-hot-products .product-card h3 {
    font-size: 1.05rem !important;
    line-height: 1.18 !important;
}

.home #products .cleanpro-category-card.feature-card p,
.home .cleanpro-home-hot-products .product-card p {
    color: #5f6672 !important;
    font-size: 0.9rem !important;
    line-height: 1.45 !important;
}

.home #products .cleanpro-category-card.feature-card span {
    color: #d71920 !important;
    font-size: 0.78rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

.home .cleanpro-home-hot-products .product-card .btn {
    align-self: end !important;
    justify-self: stretch !important;
    margin-top: 0.35rem !important;
    min-width: 0 !important;
    width: 100% !important;
}

@media (max-width: 991.98px) {
    .home #products .section-heading,
    .home .cleanpro-home-hot-products .section-heading {
        grid-template-columns: 1fr !important;
    }

    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: 1fr !important;
    }

    .home #products .cleanpro-category-card .home-card-image,
    .home .cleanpro-home-hot-products .product-card > .product-thumb,
    .home .cleanpro-home-hot-products .product-card > .product-icon {
        height: 160px !important;
    }
}

/* Final product layout pass: B2B horizontal information grids. */
.home #products.cleanpro-compact-products,
.home .cleanpro-home-hot-products {
    background: #ffffff !important;
    padding: clamp(68px, 7vw, 108px) 0 !important;
}

.home .cleanpro-home-hot-products {
    background: #f5f6f8 !important;
}

.home #products .cleanpro-category-grid.row,
.home .cleanpro-home-hot-products .row.g-4 {
    align-items: stretch !important;
    display: grid !important;
    margin: 0 !important;
    width: 100% !important;
}

.home #products .cleanpro-category-grid.row {
    gap: 1rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.home .cleanpro-home-hot-products .row.g-4 {
    gap: 1.125rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.home #products .cleanpro-category-grid.row > [class*="col-"],
.home .cleanpro-home-hot-products .row.g-4 > [class*="col-"] {
    display: block !important;
    float: none !important;
    max-width: none !important;
    padding: 0 !important;
    width: 100% !important;
}

.home #products .cleanpro-category-card.feature-card,
.home .cleanpro-home-hot-products .product-card {
    background: #ffffff !important;
    border: 1px solid #dde1e7 !important;
    border-radius: 4px !important;
    box-shadow: 0 10px 28px rgba(5, 8, 7, 0.05) !important;
    color: #151515 !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    text-align: left !important;
    transform: none !important;
}

.home #products .cleanpro-category-card.feature-card {
    align-items: center !important;
    display: grid !important;
    gap: 0.55rem 1rem !important;
    grid-template-areas:
        "media title"
        "media text"
        "media cta" !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr auto !important;
    min-height: 172px !important;
    padding: 1rem !important;
}

.home .cleanpro-home-hot-products .product-card {
    align-items: center !important;
    display: grid !important;
    gap: 0.6rem 1.125rem !important;
    grid-template-areas:
        "media title"
        "media text"
        "media action" !important;
    grid-template-columns: minmax(136px, 34%) minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr auto !important;
    min-height: 218px !important;
    padding: 1rem !important;
}

.home #products .cleanpro-category-card.feature-card::before,
.home #products .cleanpro-category-card.feature-card::after,
.home .cleanpro-home-hot-products .product-card::before,
.home .cleanpro-home-hot-products .product-card::after {
    display: none !important;
}

.home #products .cleanpro-category-card.feature-card:hover,
.home .cleanpro-home-hot-products .product-card:hover {
    border-color: #050807 !important;
    box-shadow: 0 18px 42px rgba(5, 8, 7, 0.14) !important;
    transform: translateY(-3px) !important;
}

.home #products .cleanpro-category-card .home-card-image,
.home #products .cleanpro-category-card.feature-card > i,
.home .cleanpro-home-hot-products .product-card > .product-thumb,
.home .cleanpro-home-hot-products .product-card > .product-icon {
    align-items: center !important;
    align-self: stretch !important;
    background: #f5f6f8 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 3px !important;
    display: flex !important;
    grid-area: media !important;
    height: auto !important;
    inset: auto !important;
    justify-content: center !important;
    margin: 0 !important;
    min-height: 112px !important;
    object-fit: cover !important;
    opacity: 1 !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    width: 100% !important;
    z-index: 1 !important;
}

.home #products .cleanpro-category-card .home-card-image,
.home #products .cleanpro-category-card.feature-card > i {
    min-height: 100px !important;
}

.home .cleanpro-home-hot-products .product-card > .product-thumb,
.home .cleanpro-home-hot-products .product-card > .product-icon {
    min-height: 186px !important;
}

.home #products .cleanpro-category-card.feature-card > i,
.home .cleanpro-home-hot-products .product-card > .product-icon {
    color: #d71920 !important;
    font-size: 2.25rem !important;
}

.home #products .cleanpro-category-card .home-card-image img,
.home .cleanpro-home-hot-products .product-card > .product-thumb img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

.home #products .cleanpro-category-card.feature-card h3,
.home .cleanpro-home-hot-products .product-card h3 {
    align-self: end !important;
    color: #151515 !important;
    font-size: clamp(1.02rem, 1.1vw, 1.2rem) !important;
    font-weight: 950 !important;
    grid-area: title !important;
    letter-spacing: 0 !important;
    line-height: 1.16 !important;
    margin: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    position: relative !important;
    text-transform: none !important;
    z-index: 2 !important;
}

.home .cleanpro-home-hot-products .product-card h3 a {
    color: inherit !important;
    text-decoration: none !important;
}

.home #products .cleanpro-category-card.feature-card p,
.home .cleanpro-home-hot-products .product-card p {
    align-self: start !important;
    color: #5f6672 !important;
    display: -webkit-box !important;
    font-size: 0.92rem !important;
    grid-area: text !important;
    -webkit-line-clamp: 3 !important;
    line-height: 1.48 !important;
    margin: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    text-transform: none !important;
    -webkit-box-orient: vertical !important;
    z-index: 2 !important;
}

.home #products .cleanpro-category-card.feature-card span {
    align-self: end !important;
    color: #d71920 !important;
    font-size: 0.78rem !important;
    font-weight: 950 !important;
    grid-area: cta !important;
    letter-spacing: 0.04em !important;
    margin: 0 !important;
    position: relative !important;
    text-transform: uppercase !important;
    z-index: 2 !important;
}

.home .cleanpro-home-hot-products .product-card .btn {
    align-self: end !important;
    background: #ffc400 !important;
    border-color: #ffc400 !important;
    border-radius: 3px !important;
    color: #050807 !important;
    font-size: 0.84rem !important;
    font-weight: 950 !important;
    grid-area: action !important;
    justify-self: start !important;
    margin: 0 !important;
    min-height: 42px !important;
    min-width: 132px !important;
    padding: 0.65rem 1rem !important;
    text-transform: uppercase !important;
    width: auto !important;
}

.home .cleanpro-home-hot-products .product-card .btn:hover {
    background: #050807 !important;
    border-color: #050807 !important;
    color: #ffc400 !important;
}

@media (min-width: 1400px) {
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .home .cleanpro-home-hot-products .product-card {
        grid-template-columns: 132px minmax(0, 1fr) !important;
    }
}

@media (max-width: 991.98px) {
    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .home .cleanpro-home-hot-products .product-card {
        grid-template-columns: 132px minmax(0, 1fr) !important;
        min-height: 190px !important;
    }

    .home .cleanpro-home-hot-products .product-card > .product-thumb,
    .home .cleanpro-home-hot-products .product-card > .product-icon {
        min-height: 158px !important;
    }
}

@media (max-width: 767.98px) {
    .home #products .cleanpro-category-grid.row,
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: 1fr !important;
    }

    .home #products .cleanpro-category-card.feature-card,
    .home .cleanpro-home-hot-products .product-card {
        grid-template-columns: 110px minmax(0, 1fr) !important;
    }
}

@media (max-width: 479.98px) {
    .cleanpro-b2b-capacity-badge {
        padding: 0.8rem 0.9rem !important;
        right: 12px !important;
        width: min(132px, calc(100vw - 48px)) !important;
    }

    .cleanpro-b2b-capacity-badge strong {
        font-size: clamp(1.75rem, 9vw, 2.15rem) !important;
        line-height: 0.95 !important;
    }

    .cleanpro-b2b-capacity-badge span {
        font-size: 0.62rem !important;
        line-height: 1.05 !important;
    }

    .home #products .section-heading h2,
    .home .cleanpro-home-hot-products .section-heading h2 {
        font-size: clamp(1.9rem, 8vw, 2.45rem) !important;
        line-height: 1.05 !important;
        overflow-wrap: anywhere !important;
    }

    .home #products .cleanpro-category-card.feature-card,
    .home .cleanpro-home-hot-products .product-card {
        grid-template-areas:
            "media"
            "title"
            "text"
            "cta" !important;
        grid-template-columns: 1fr !important;
    }

    .home .cleanpro-home-hot-products .product-card {
        grid-template-areas:
            "media"
            "title"
            "text"
            "action" !important;
    }

    .home #products .cleanpro-category-card .home-card-image,
    .home #products .cleanpro-category-card.feature-card > i,
    .home .cleanpro-home-hot-products .product-card > .product-thumb,
    .home .cleanpro-home-hot-products .product-card > .product-icon {
        min-height: 168px !important;
    }

    .home .cleanpro-home-hot-products .product-card .btn {
        justify-self: stretch !important;
        width: 100% !important;
    }
}

/* Contrast catalog version: stronger Chemical Guys inspired B2B purchasing sections. */
:root {
    --cleanpro-ink: #050505;
    --cleanpro-charcoal: #10130f;
    --cleanpro-panel: #171a16;
    --cleanpro-yellow: #ffd200;
    --cleanpro-yellow-hover: #dfa400;
    --cleanpro-red: #e31b23;
    --cleanpro-paper: #f7f7f2;
    --cleanpro-text: #151515;
    --cleanpro-muted: #4e5560;
    --cleanpro-line: #2c302a;
}

.home .section-block {
    border-top: 1px solid rgba(5, 5, 5, 0.1) !important;
}

.home .eyebrow,
.home .section-heading .eyebrow,
.home .download-card .eyebrow {
    color: var(--cleanpro-red) !important;
    font-weight: 950 !important;
    letter-spacing: 0.1em !important;
}

.home .btn.btn-primary,
.home .product-card .btn,
.home .download-card .btn,
.home .rfq-form .btn {
    background: var(--cleanpro-yellow) !important;
    border-color: var(--cleanpro-yellow) !important;
    border-radius: 2px !important;
    color: var(--cleanpro-ink) !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
}

.home .btn.btn-primary:hover,
.home .product-card .btn:hover,
.home .download-card .btn:hover,
.home .rfq-form .btn:hover {
    background: var(--cleanpro-yellow-hover) !important;
    border-color: var(--cleanpro-yellow-hover) !important;
    color: var(--cleanpro-ink) !important;
}

.home .section-heading h2,
.home .oem-section h2,
.home .quality-section h2,
.home .market-section h2,
.home .rfq-section h2 {
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

.home #products.cleanpro-compact-products {
    background: var(--cleanpro-paper) !important;
}

.home #products .cleanpro-category-card.feature-card {
    background: #fff !important;
    border: 2px solid #050505 !important;
    box-shadow: 8px 8px 0 rgba(5, 5, 5, 0.08) !important;
}

.home #products .cleanpro-category-card.feature-card > i,
.home #products .cleanpro-category-card .home-card-image {
    background: var(--cleanpro-ink) !important;
    border-color: var(--cleanpro-ink) !important;
    color: var(--cleanpro-yellow) !important;
}

.home #products .cleanpro-category-card.feature-card span {
    color: var(--cleanpro-red) !important;
}

.home .cleanpro-home-hot-products {
    background:
        linear-gradient(135deg, rgba(255, 210, 0, 0.08) 0 25%, transparent 25% 50%, rgba(255, 210, 0, 0.08) 50% 75%, transparent 75%),
        var(--cleanpro-ink) !important;
    background-size: 18px 18px !important;
    color: #fff !important;
}

.home .cleanpro-home-hot-products .section-heading h2,
.home .cleanpro-home-hot-products .section-heading p {
    color: #fff !important;
}

.home .cleanpro-home-hot-products .section-heading p {
    color: rgba(255, 255, 255, 0.78) !important;
}

.home .cleanpro-home-hot-products .row.g-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card {
    align-items: stretch !important;
    background: #fff !important;
    border: 2px solid var(--cleanpro-yellow) !important;
    box-shadow: 10px 10px 0 rgba(255, 210, 0, 0.18) !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-areas:
        "media"
        "body" !important;
    grid-template-columns: 1fr !important;
    min-height: 520px !important;
    padding: 0 !important;
}

.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card:hover {
    border-color: #fff !important;
    box-shadow: 10px 10px 0 var(--cleanpro-yellow) !important;
    transform: translateY(-4px) !important;
}

.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-thumb,
.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-icon {
    background: #eef0f2 !important;
    border: 0 !important;
    border-bottom: 2px solid var(--cleanpro-ink) !important;
    border-radius: 0 !important;
    grid-area: media !important;
    min-height: 220px !important;
}

.home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-thumb img {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

.home .cleanpro-product-placeholder {
    background:
        radial-gradient(circle at 25% 18%, rgba(255, 210, 0, 0.35), transparent 22%),
        linear-gradient(145deg, #171a16, #050505) !important;
    gap: 18px !important;
    position: relative !important;
}

.home .cleanpro-product-placeholder::after {
    background: var(--cleanpro-yellow) !important;
    content: "" !important;
    height: 4px !important;
    left: 18px !important;
    position: absolute !important;
    right: 18px !important;
    top: 18px !important;
}

.home .cleanpro-product-placeholder .cleanpro-pack {
    background: #fff !important;
    border: 4px solid var(--cleanpro-yellow) !important;
    box-shadow: 6px 6px 0 rgba(227, 27, 35, 0.7) !important;
    display: block !important;
}

.home .cleanpro-product-placeholder .cleanpro-pack-bottle {
    border-radius: 16px 16px 6px 6px !important;
    height: 92px !important;
    width: 42px !important;
}

.home .cleanpro-product-placeholder .cleanpro-pack-pouch {
    border-radius: 8px !important;
    height: 74px !important;
    width: 70px !important;
}

.home .cleanpro-product-placeholder strong {
    background: var(--cleanpro-yellow) !important;
    bottom: 18px !important;
    color: var(--cleanpro-ink) !important;
    font-size: 0.8rem !important;
    font-weight: 950 !important;
    left: 18px !important;
    padding: 0.3rem 0.45rem !important;
    position: absolute !important;
}

.home .product-card .cleanpro-card-body {
    display: grid !important;
    gap: 0.85rem !important;
    grid-area: body !important;
    grid-template-rows: auto auto 1fr auto auto !important;
    padding: 1rem !important;
}

.home .product-card .cleanpro-card-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.35rem !important;
}

.home .product-card .cleanpro-card-tags span {
    background: var(--cleanpro-ink) !important;
    color: var(--cleanpro-yellow) !important;
    font-size: 0.68rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.04em !important;
    padding: 0.25rem 0.4rem !important;
    text-transform: uppercase !important;
}

.home .product-card.cleanpro-buy-card h3,
.home .product-card.cleanpro-buy-card h3 a {
    color: var(--cleanpro-text) !important;
    font-size: 1.16rem !important;
    line-height: 1.08 !important;
}

.home .product-card.cleanpro-buy-card p {
    color: var(--cleanpro-muted) !important;
    font-size: 0.9rem !important;
}

.home .cleanpro-product-specs {
    border: 1px solid #d8dbe0 !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-columns: 1fr !important;
    margin: 0 !important;
}

.home .cleanpro-product-specs div {
    border-bottom: 1px solid #d8dbe0 !important;
    display: grid !important;
    gap: 0.5rem !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    padding: 0.48rem 0.6rem !important;
}

.home .cleanpro-product-specs div:last-child {
    border-bottom: 0 !important;
}

.home .cleanpro-product-specs dt,
.home .cleanpro-product-specs dd {
    margin: 0 !important;
}

.home .cleanpro-product-specs dt {
    color: var(--cleanpro-red) !important;
    font-size: 0.68rem !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
}

.home .cleanpro-product-specs dd {
    color: var(--cleanpro-text) !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.home .product-card .cleanpro-card-actions {
    align-items: center !important;
    display: flex !important;
    gap: 0.85rem !important;
    justify-content: space-between !important;
}

.home .product-card .cleanpro-card-actions .btn {
    min-width: 132px !important;
}

.home .cleanpro-detail-link {
    color: var(--cleanpro-text) !important;
    font-size: 0.78rem !important;
    font-weight: 950 !important;
    text-decoration: underline !important;
    text-transform: uppercase !important;
}

.home .quality-section,
.home .market-section,
.home .rfq-section {
    background: var(--cleanpro-ink) !important;
    color: #fff !important;
}

.home .quality-section h2,
.home .quality-section p,
.home .market-section h2,
.home .market-section p,
.home .market-section blockquote,
.home .rfq-section h2,
.home .rfq-section p,
.home .rfq-section li,
.home .rfq-section label {
    color: #fff !important;
}

.home .quality-section p,
.home .market-section p,
.home .rfq-section p {
    color: rgba(255, 255, 255, 0.78) !important;
}

.home .quality-step,
.home .advantage-item,
.home .solution-card,
.home .home-doc-card,
.home .factory-tour-item {
    border-radius: 0 !important;
}

.home .quality-step {
    background: var(--cleanpro-panel) !important;
    border: 1px solid var(--cleanpro-line) !important;
    color: #fff !important;
}

.home .quality-step i {
    background: var(--cleanpro-yellow) !important;
    color: var(--cleanpro-ink) !important;
}

.home .quality-step span {
    color: var(--cleanpro-red) !important;
}

.home .quality-step h3,
.home .quality-step p {
    color: #fff !important;
}

.home #advantages.section-block,
.home .cleanpro-home-certificates,
.home .factory-tour-section,
.home .cleanpro-home-downloads,
.home .cleanpro-home-applications,
.home .oem-section {
    background: var(--cleanpro-paper) !important;
}

.home #advantages .advantage-grid,
.home .cleanpro-home-applications .row.g-4,
.home .cleanpro-home-certificates .row.g-4,
.home .cleanpro-home-downloads .row.g-4,
.home .factory-tour-grid {
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.home #advantages .advantage-item,
.home .cleanpro-home-applications .row.g-4 > [class*="col-"],
.home .cleanpro-home-certificates .row.g-4 > [class*="col-"],
.home .cleanpro-home-downloads .row.g-4 > [class*="col-"] {
    max-width: none !important;
    padding: 0 !important;
    width: 100% !important;
}

.home #advantages .advantage-item,
.home .solution-card,
.home .home-doc-card,
.home .factory-tour-item {
    background: #fff !important;
    border: 2px solid var(--cleanpro-ink) !important;
    box-shadow: 6px 6px 0 rgba(5, 5, 5, 0.08) !important;
    color: var(--cleanpro-text) !important;
}

.home #advantages .advantage-item i,
.home .solution-card > i {
    background: var(--cleanpro-yellow) !important;
    color: var(--cleanpro-ink) !important;
}

.home .home-doc-card {
    min-height: 230px !important;
    padding: 1.1rem !important;
}

.home .home-doc-card h3,
.home .home-doc-card h3 a,
.home .solution-card h3,
.home .factory-tour-item h3 {
    color: var(--cleanpro-text) !important;
}

.home .home-doc-card p,
.home .solution-card p,
.home .factory-tour-item p {
    color: var(--cleanpro-muted) !important;
}

.home .cleanpro-home-downloads .home-doc-card {
    background: var(--cleanpro-ink) !important;
    border-color: var(--cleanpro-yellow) !important;
    box-shadow: 8px 8px 0 rgba(255, 210, 0, 0.22) !important;
}

.home .cleanpro-home-downloads .home-doc-card h3,
.home .cleanpro-home-downloads .home-doc-card h3 a,
.home .cleanpro-home-downloads .home-doc-card p {
    color: #fff !important;
}

.home .cleanpro-home-downloads .home-doc-card p:not(.eyebrow) {
    color: rgba(255, 255, 255, 0.78) !important;
}

.home .factory-tour-section .section-heading {
    color: var(--cleanpro-text) !important;
}

.home .factory-tour-carousel {
    border: 3px solid var(--cleanpro-ink) !important;
    box-shadow: 12px 12px 0 var(--cleanpro-yellow) !important;
}

.home .factory-tour-item img {
    border-radius: 0 !important;
    height: 92px !important;
    object-fit: cover !important;
    width: 118px !important;
}

.home .oem-section {
    background:
        linear-gradient(90deg, var(--cleanpro-ink) 0 46%, var(--cleanpro-paper) 46% 100%) !important;
}

.home .oem-section .col-lg-6:first-child h2,
.home .oem-section .col-lg-6:first-child p,
.home .oem-section .col-lg-6:first-child .eyebrow {
    color: #fff !important;
}

.home .oem-section .process-list span {
    background: var(--cleanpro-yellow) !important;
    border-color: var(--cleanpro-yellow) !important;
    color: var(--cleanpro-ink) !important;
    font-weight: 950 !important;
}

.home .oem-section .factory-visual {
    border: 3px solid var(--cleanpro-ink) !important;
    box-shadow: 14px 14px 0 var(--cleanpro-yellow) !important;
}

.home .market-panel {
    background: #fff !important;
    border: 3px solid var(--cleanpro-yellow) !important;
    border-radius: 0 !important;
    box-shadow: 12px 12px 0 rgba(255, 210, 0, 0.2) !important;
    color: var(--cleanpro-text) !important;
}

.home .market-panel blockquote,
.home .market-panel p {
    color: var(--cleanpro-text) !important;
}

.home .market-chip-list span {
    background: var(--cleanpro-yellow) !important;
    border-color: var(--cleanpro-yellow) !important;
    color: var(--cleanpro-ink) !important;
    font-weight: 950 !important;
}

.home .rfq-section .rfq-form {
    background: #fff !important;
    border: 3px solid var(--cleanpro-yellow) !important;
    border-radius: 0 !important;
    box-shadow: 12px 12px 0 rgba(255, 210, 0, 0.22) !important;
    color: var(--cleanpro-text) !important;
}

.home .rfq-section .rfq-form label,
.home .rfq-section .rfq-form .form-text {
    color: var(--cleanpro-text) !important;
}

.home .rfq-section .form-control {
    border: 2px solid #d8dbe0 !important;
    border-radius: 0 !important;
}

@media (max-width: 1199.98px) {
    .home .cleanpro-home-hot-products .row.g-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991.98px) {
    .home #advantages .advantage-grid,
    .home .cleanpro-home-applications .row.g-4,
    .home .cleanpro-home-certificates .row.g-4,
    .home .cleanpro-home-downloads .row.g-4,
    .home .factory-tour-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .home .oem-section {
        background: var(--cleanpro-ink) !important;
    }
}

@media (max-width: 767.98px) {
    .home .cleanpro-home-hot-products .row.g-4,
    .home #advantages .advantage-grid,
    .home .cleanpro-home-applications .row.g-4,
    .home .cleanpro-home-certificates .row.g-4,
    .home .cleanpro-home-downloads .row.g-4,
    .home .factory-tour-grid {
        grid-template-columns: 1fr !important;
    }

    .home .cleanpro-home-hot-products .product-card.cleanpro-buy-card {
        min-height: 0 !important;
    }

    .home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-thumb,
    .home .cleanpro-home-hot-products .product-card.cleanpro-buy-card > .product-icon {
        min-height: 210px !important;
    }

    .home .product-card .cleanpro-card-actions {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .home .product-card .cleanpro-card-actions .btn {
        width: 100% !important;
    }
}

/* Product archive: B2B procurement list cards */
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list.row.g-4 {
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: 1fr !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4 > [class*="col-"],
body.tax-cleanpro_product_cat .cleanpro-product-archive-list.row.g-4 > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: none !important;
    padding: 0 !important;
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card {
    align-items: stretch !important;
    background: #fff !important;
    border: 2px solid var(--cleanpro-ink) !important;
    border-radius: 0 !important;
    box-shadow: 8px 8px 0 rgba(5, 5, 5, 0.08) !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-areas: "media body" !important;
    grid-template-columns: 220px minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card:hover,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card:hover {
    border-color: var(--cleanpro-red) !important;
    box-shadow: 8px 8px 0 var(--cleanpro-yellow) !important;
    transform: translateY(-2px) !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-thumb,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-icon,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-thumb,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-icon {
    align-self: stretch !important;
    aspect-ratio: 1 / 1 !important;
    background: #eef0f2 !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-right: 2px solid var(--cleanpro-ink) !important;
    display: grid !important;
    grid-area: media !important;
    height: 100% !important;
    min-height: 220px !important;
    overflow: hidden !important;
    place-items: center !important;
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-thumb img,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-thumb img {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-placeholder,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-icon.cleanpro-product-placeholder,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-placeholder,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-icon.cleanpro-product-placeholder {
    background:
        radial-gradient(circle at 28% 22%, rgba(255, 196, 0, 0.32), transparent 24%),
        linear-gradient(145deg, #171a16, #050807) !important;
    color: var(--cleanpro-yellow) !important;
    display: flex !important;
    gap: 1rem !important;
    position: relative !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-placeholder .cleanpro-pack,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-placeholder .cleanpro-pack {
    background: #fff !important;
    border: 3px solid var(--cleanpro-yellow) !important;
    box-shadow: 5px 5px 0 rgba(215, 25, 32, 0.75) !important;
    display: block !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-placeholder .cleanpro-pack-bottle,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-placeholder .cleanpro-pack-bottle {
    border-radius: 14px 14px 5px 5px !important;
    height: 86px !important;
    width: 40px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-placeholder .cleanpro-pack-pouch,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-placeholder .cleanpro-pack-pouch {
    border-radius: 7px !important;
    height: 68px !important;
    width: 64px !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-placeholder strong,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-placeholder strong {
    background: var(--cleanpro-yellow) !important;
    bottom: 1rem !important;
    color: var(--cleanpro-ink) !important;
    font-size: 0.72rem !important;
    font-weight: 950 !important;
    left: 1rem !important;
    padding: 0.25rem 0.45rem !important;
    position: absolute !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-body,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-body {
    display: grid !important;
    gap: 0.65rem 1rem !important;
    grid-area: body !important;
    grid-template-areas:
        "tags specs"
        "title specs"
        "excerpt specs"
        "actions specs" !important;
    grid-template-columns: minmax(0, 1fr) 250px !important;
    padding: 1rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-tags,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.35rem !important;
    grid-area: tags !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-tags span,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-tags span {
    background: var(--cleanpro-ink) !important;
    color: var(--cleanpro-yellow) !important;
    font-size: 0.68rem !important;
    font-weight: 950 !important;
    padding: 0.24rem 0.42rem !important;
    text-transform: uppercase !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card h3 {
    grid-area: title !important;
    margin: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card h3 a,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card h3 a {
    color: var(--cleanpro-text) !important;
    font-size: 1.25rem !important;
    line-height: 1.1 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card .cleanpro-card-body > p,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card .cleanpro-card-body > p {
    color: var(--cleanpro-muted) !important;
    grid-area: excerpt !important;
    margin: 0 !important;
    max-width: 54ch !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs {
    align-self: stretch !important;
    border: 1px solid #d8dbe0 !important;
    display: grid !important;
    gap: 0 !important;
    grid-area: specs !important;
    margin: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs div,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs div {
    border-bottom: 1px solid #d8dbe0 !important;
    display: grid !important;
    gap: 0.35rem !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    padding: 0.55rem 0.65rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs div:last-child,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs div:last-child {
    border-bottom: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs dt,
body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs dd,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs dt,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs dd {
    margin: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs dt,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs dt {
    color: var(--cleanpro-red) !important;
    font-size: 0.68rem !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-product-specs dd,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-product-specs dd {
    color: var(--cleanpro-text) !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
    min-width: 0 !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-actions,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-actions {
    align-items: center !important;
    display: flex !important;
    gap: 0.85rem !important;
    grid-area: actions !important;
    margin-top: 0.35rem !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-actions .btn,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-actions .btn {
    background: var(--cleanpro-yellow) !important;
    border: 2px solid var(--cleanpro-yellow) !important;
    border-radius: 2px !important;
    color: var(--cleanpro-ink) !important;
    font-weight: 950 !important;
    min-width: 128px !important;
    padding: 0.7rem 0.95rem !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-detail-link,
body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-detail-link {
    color: var(--cleanpro-red) !important;
    font-weight: 950 !important;
    text-decoration: underline !important;
    text-transform: uppercase !important;
}

/* Blog archive: left media editorial list */
.cleanpro-editorial-section .row.g-4 > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: none !important;
    width: 100% !important;
}

.cleanpro-editorial-section .post-card {
    align-items: stretch !important;
    background: #fff !important;
    border: 2px solid var(--cleanpro-ink) !important;
    border-radius: 0 !important;
    box-shadow: 8px 8px 0 rgba(5, 5, 5, 0.07) !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-areas: "media body" !important;
    grid-template-columns: clamp(150px, 18vw, 220px) minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.cleanpro-editorial-section .post-card::after {
    content: none !important;
    display: none !important;
}

.cleanpro-editorial-section .post-card:hover {
    border-color: var(--cleanpro-red) !important;
    box-shadow: 8px 8px 0 var(--cleanpro-yellow) !important;
    transform: translateY(-2px) !important;
}

.cleanpro-editorial-section .post-card-image {
    aspect-ratio: 1 / 1 !important;
    background: #eef0f2 !important;
    border-right: 2px solid var(--cleanpro-ink) !important;
    display: grid !important;
    grid-area: media !important;
    height: 100% !important;
    min-height: 150px !important;
    overflow: hidden !important;
    place-items: center !important;
    width: 100% !important;
}

.cleanpro-editorial-section .post-card-image img {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

.cleanpro-editorial-section .cleanpro-post-placeholder {
    background:
        linear-gradient(135deg, rgba(255, 196, 0, 0.9) 0 18%, transparent 18% 100%),
        radial-gradient(circle at 78% 22%, rgba(215, 25, 32, 0.58), transparent 24%),
        linear-gradient(145deg, #151515, #050807) !important;
    color: var(--cleanpro-yellow) !important;
    text-decoration: none !important;
}

.cleanpro-editorial-section .cleanpro-post-placeholder span {
    border: 2px solid var(--cleanpro-yellow) !important;
    color: var(--cleanpro-yellow) !important;
    font-size: 0.75rem !important;
    font-weight: 950 !important;
    padding: 0.35rem 0.55rem !important;
    text-transform: uppercase !important;
}

.cleanpro-editorial-section .post-card-body {
    background: #fff !important;
    display: grid !important;
    gap: 0.65rem !important;
    grid-area: body !important;
    padding: 1.1rem 1.25rem !important;
    position: relative !important;
    z-index: 1 !important;
}

.cleanpro-editorial-section .post-card h2 {
    font-size: 1.35rem !important;
    line-height: 1.16 !important;
    margin: 0 !important;
}

.cleanpro-editorial-section .post-card h2 a {
    color: var(--cleanpro-text) !important;
}

.cleanpro-editorial-section .post-card-body > p {
    color: var(--cleanpro-muted) !important;
    margin: 0 !important;
}

.cleanpro-editorial-section .post-card .text-link {
    color: var(--cleanpro-red) !important;
    font-weight: 950 !important;
}

@media (max-width: 991.98px) {
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-body,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-body {
        grid-template-areas:
            "tags"
            "title"
            "excerpt"
            "specs"
            "actions" !important;
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767.98px) {
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card,
    .cleanpro-editorial-section .post-card {
        grid-template-areas:
            "media"
            "body" !important;
        grid-template-columns: 1fr !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-thumb,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-icon,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-thumb,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list .product-card.cleanpro-buy-card > .product-icon,
    .cleanpro-editorial-section .post-card-image {
        border-right: 0 !important;
        border-bottom: 2px solid var(--cleanpro-ink) !important;
        height: auto !important;
        min-height: 0 !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-actions,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-actions {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list .cleanpro-card-actions .btn,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list .cleanpro-card-actions .btn {
        width: 100% !important;
    }
}

@media (max-width: 575.98px) {
    .content-page,
    .content-page * {
        box-sizing: border-box !important;
    }

    .content-page .container,
    .listing-hero .container,
    .product-detail-hero .container {
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        width: 100% !important;
    }

    .listing-hero,
    .product-detail-hero,
    .cleanpro-editorial-section,
    .listing-page .section-block {
        overflow-x: hidden !important;
    }

    .listing-hero h1,
    .product-detail-hero h1 {
        font-size: clamp(2.15rem, 12vw, 3rem) !important;
        line-height: 1.02 !important;
        max-width: calc(100vw - 32px) !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        word-break: normal !important;
    }

    .listing-hero p,
    .product-detail-hero p {
        max-width: calc(100vw - 32px) !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
    }

    .content-page p,
    .content-page li,
    .content-page h2,
    .content-page h3,
    .content-page a,
    .content-page span {
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }

    .cleanpro-editorial-section .row.g-4,
    body.post-type-archive-cleanpro_product .cleanpro-product-archive-list.row.g-4,
    body.tax-cleanpro_product_cat .cleanpro-product-archive-list.row.g-4 {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .term-filter {
        display: grid !important;
        gap: 0.5rem !important;
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        white-space: normal !important;
    }

    .term-filter a {
        border-radius: 2px !important;
        display: block !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        width: 100% !important;
    }

    .product-filter-form,
    .product-filter-grid,
    .article-filter-grid,
    .download-filter-grid {
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        width: 100% !important;
    }

    .product-filter-form .form-control,
    .product-filter-form .form-select,
    .product-filter-actions .btn {
        max-width: 100% !important;
        min-width: 0 !important;
        width: 100% !important;
    }
}

/* Mobile navigation repair: full-width dropdown instead of squeezed side panel. */
@media (max-width: 767.98px) {
    body .site-header,
    body.home .site-header {
        overflow: visible !important;
        position: relative !important;
        z-index: 5000 !important;
    }

    body .site-header .main-nav,
    body.home .site-header .main-nav {
        background: #050807 !important;
        min-height: 74px !important;
        overflow: visible !important;
        padding: 0.85rem 0 !important;
        position: relative !important;
    }

    body .site-header .main-nav .cleanpro-header-shell,
    body.home .site-header .main-nav .cleanpro-header-shell {
        align-items: center !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 0.75rem !important;
        max-width: 100% !important;
        min-height: 0 !important;
        overflow: visible !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        width: 100% !important;
    }

    body .site-header .main-nav .navbar-brand,
    body.home .site-header .main-nav .navbar-brand {
        flex: 1 1 auto !important;
        margin: 0 !important;
        min-width: 0 !important;
        order: 1 !important;
        padding: 0 64px 0 0 !important;
        position: static !important;
    }

    body .site-header .main-nav .navbar-toggler,
    body.home .site-header .main-nav .navbar-toggler,
    body .site-header .navbar-expand-md .navbar-toggler,
    body.home .site-header .navbar-expand-md .navbar-toggler {
        align-items: center !important;
        background: #ffc400 !important;
        border: 2px solid #ffc400 !important;
        border-radius: 3px !important;
        color: #050807 !important;
        display: inline-flex !important;
        flex: 0 0 48px !important;
        height: 44px !important;
        justify-content: center !important;
        left: auto !important;
        margin-left: auto !important;
        min-height: 44px !important;
        min-width: 48px !important;
        opacity: 1 !important;
        order: 2 !important;
        padding: 0 !important;
        position: absolute !important;
        right: 16px !important;
        top: 28px !important;
        transform: none !important;
        visibility: visible !important;
        width: 48px !important;
        z-index: 2 !important;
    }

    body .site-header .main-nav .navbar-toggler-icon,
    body.home .site-header .main-nav .navbar-toggler-icon {
        background:
            linear-gradient(#050807, #050807) 50% 25% / 20px 2px no-repeat,
            linear-gradient(#050807, #050807) 50% 50% / 20px 2px no-repeat,
            linear-gradient(#050807, #050807) 50% 75% / 20px 2px no-repeat !important;
        height: 24px !important;
        width: 24px !important;
    }

    body .site-header .main-nav .cleanpro-menu-label,
    body.home .site-header .main-nav .cleanpro-menu-label {
        display: none !important;
    }

    body .site-header .main-nav .navbar-collapse,
    body.home .site-header .main-nav .navbar-collapse,
    body .site-header .navbar-expand-md .navbar-collapse,
    body.home .site-header .navbar-expand-md .navbar-collapse {
        background: #ffffff !important;
        border: 2px solid #050807 !important;
        border-radius: 0 !important;
        box-shadow: 8px 8px 0 rgba(255, 196, 0, 0.35) !important;
        box-sizing: border-box !important;
        flex: 0 0 100% !important;
        flex-basis: 100% !important;
        margin: 1rem 0 0 !important;
        max-height: calc(100vh - 170px) !important;
        max-width: 100% !important;
        min-width: 0 !important;
        order: 3 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        padding: 0.75rem !important;
        position: static !important;
        transform: none !important;
        width: 100% !important;
    }

    body .site-header .main-nav .navbar-collapse:not(.show),
    body.home .site-header .main-nav .navbar-collapse:not(.show) {
        display: none !important;
    }

    body .site-header .main-nav .navbar-collapse.show,
    body.home .site-header .main-nav .navbar-collapse.show {
        display: block !important;
    }

    body .site-header .main-nav .cleanpro-grouped-nav,
    body.home .site-header .main-nav .cleanpro-grouped-nav,
    body .site-header .main-nav .navbar-nav,
    body.home .site-header .main-nav .navbar-nav {
        align-items: stretch !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 0.25rem !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }

    body .site-header .main-nav .navbar .nav-link,
    body .site-header .main-nav .nav-link,
    body.home .site-header .main-nav .nav-link,
    body .site-header .main-nav .cleanpro-grouped-nav .nav-link,
    body.home .site-header .main-nav .cleanpro-grouped-nav .nav-link {
        border-radius: 2px !important;
        color: #050807 !important;
        display: flex !important;
        justify-content: space-between !important;
        min-height: 40px !important;
        padding: 0.65rem 0.7rem !important;
        transform: none !important;
        white-space: normal !important;
        width: 100% !important;
    }

    body .site-header .main-nav .cleanpro-nav-menu,
    body.home .site-header .main-nav .cleanpro-nav-menu {
        background: #f5f6f8 !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 2px !important;
        box-shadow: none !important;
        display: block !important;
        margin: 0.15rem 0 0.55rem !important;
        min-width: 0 !important;
        opacity: 1 !important;
        padding: 0.35rem !important;
        position: static !important;
        transform: none !important;
        visibility: visible !important;
        width: 100% !important;
    }

    body .site-header .main-nav .cleanpro-nav-menu .dropdown-item,
    body.home .site-header .main-nav .cleanpro-nav-menu .dropdown-item {
        color: #151515 !important;
        opacity: 1 !important;
        overflow-wrap: anywhere !important;
        padding: 0.58rem 0.7rem !important;
        transform: none !important;
        white-space: normal !important;
    }

    body .site-header .main-nav .header-search-form,
    body.home .site-header .main-nav .header-search-form,
    body .site-header .main-nav .navbar-collapse > .btn,
    body.home .site-header .main-nav .navbar-collapse > .btn {
        margin-left: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    body .site-header .main-nav .header-search-form .input-group,
    body.home .site-header .main-nav .header-search-form .input-group {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 46px !important;
        width: 100% !important;
    }

    body .site-header .main-nav .header-search-form .form-control,
    body.home .site-header .main-nav .header-search-form .form-control {
        background: #f5f6f8 !important;
        border: 1px solid #d8dbe0 !important;
        color: #151515 !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    body .site-header .main-nav .header-search-form .btn,
    body.home .site-header .main-nav .header-search-form .btn {
        background: #050807 !important;
        border-color: #050807 !important;
        color: #ffc400 !important;
        min-width: 46px !important;
        width: 46px !important;
    }
}

/* Final mobile responsive guard for homepage quality block. */
@media (max-width: 767.98px) {
    body.home .quality-section .cleanpro-quality-bg-media,
    body.home .quality-section .cleanpro-quality-bg-media img {
        inset: 0 !important;
        left: 0 !important;
        max-width: 100% !important;
        right: 0 !important;
        transform: none !important;
        width: 100% !important;
    }

    body.home .quality-section .col-lg-5 > h2,
    body.home .quality-section .col-lg-5 > p {
        box-sizing: border-box !important;
        max-width: calc(100vw - 32px) !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        width: 100% !important;
    }
}

