@charset "UTF-8";

@font-face {

    font-family: 'Mona Sans';
    src: url('assets/font/mona-sans/Mona-Sans.ttf') format('truetype');
    font-weight: 200 900;
    font-stretch: 75% 125%;
}

@font-face {
    font-family: 'KC Georgia';
    src: url('assets/font/georgia/georgiab.ttf') format('truetype');
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

/* Global scroll reveal */
html.kc-reveal-enabled .kc-reveal {
    --kc-reveal-x: 0px;
    --kc-reveal-y: 24px;
    --kc-reveal-scale: 0.985;
    opacity: 0;
    translate: var(--kc-reveal-x) var(--kc-reveal-y);
    scale: var(--kc-reveal-scale);
    transition:
        opacity 1.68s cubic-bezier(0.16, 1, 0.3, 1),
        translate 1.82s cubic-bezier(0.16, 1, 0.3, 1),
        scale 1.82s cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--kc-reveal-delay, 0ms);
    will-change: opacity, translate, scale;
}

html.kc-reveal-enabled .kc-reveal[data-kc-reveal-variant="copy"] {
    --kc-reveal-y: 18px;
    --kc-reveal-scale: 1;
}

html.kc-reveal-enabled .kc-reveal[data-kc-reveal-variant="media"] {
    --kc-reveal-y: 20px;
    --kc-reveal-scale: 0.965;
}

html.kc-reveal-enabled .kc-reveal[data-kc-reveal-variant="panel"] {
    --kc-reveal-y: 28px;
    --kc-reveal-scale: 0.98;
}

html.kc-reveal-enabled .kc-reveal[data-kc-reveal-variant="button"] {
    --kc-reveal-y: 14px;
    --kc-reveal-scale: 1;
}

html.kc-reveal-enabled .kc-reveal[data-kc-reveal-variant="list"] {
    --kc-reveal-x: -18px;
    --kc-reveal-y: 0px;
    --kc-reveal-scale: 1;
}

html.kc-reveal-enabled .kc-reveal.kc-reveal-visible {
    opacity: 1;
    translate: 0 0;
    scale: 1;
}

html {
    scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    html.kc-reveal-enabled .kc-reveal {
        opacity: 1 !important;
        translate: 0 0 !important;
        scale: 1 !important;
        transition: none !important;
    }
}

@media (max-width: 1180px) {

    body.kc-brand-landing-page .kc-reveal,
    body.kc-brand-landing-page [data-enter] {
        opacity: 1 !important;
        transform: none !important;
        translate: 0 0 !important;
        scale: 1 !important;
        filter: none !important;
        -webkit-filter: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        transition: none !important;
        will-change: auto !important;
    }

    body.kc-brand-landing-page .nav-bg-blur,
    body.kc-brand-landing-page .button-bg,
    body.kc-brand-landing-page .kc-landing-nav__backdrop[aria-hidden="true"] {
        opacity: 0 !important;
        pointer-events: none !important;
        background: transparent !important;
        filter: none !important;
        -webkit-filter: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
}

/* Fix title rendering issues */
h1,
h2,
h3,
h4,
h5,
h6,
[heading-animation] {
    font-stretch: 100% !important;
    letter-spacing: -0.04em !important;
    font-kerning: normal !important;
    font-feature-settings: "kern" 1, "liga" 1 !important;
}

[heading-animation],
[heading-load] {
    font-size: 48px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.04em !important;
    font-weight: normal !important;
}

.heading-hero-home h1 {
    font-size: 34px !important;
    line-height: 1.1 !important;
}

.heading-hero-home {
    max-width: 693px;
    font-weight: 400;
}

@media (min-width: 768px) {
    .hero-home-seciton .heading-hero-home h1 {
        font-size: 77px !important;
        line-height: 1.1 !important;
    }
}

/* Product pages only */
.kc-product-page .text-slate-600 {
    --tw-text-opacity: 1;
    color: rgb(71 85 105 / var(--tw-text-opacity, 1));
    font-size: 15px;
}



/* Force square aspect ratio for category images ONLY inside collections-home-section */
.section.collections-home-section .image-wrap-category {
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    height: auto !important;
    position: relative !important;
    overflow: hidden !important;
}

.section.collections-home-section .image-wrap-category .image-cover {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

/* Shrink product images */
.image-wrap-shop img.image-cover {
    padding: 50px !important;
    background: white !important;
}

/* SCOPED RULE FOR PRODUCT IMAGES */
.image-wrap-shop .image-cover {
    width: 60% !important;
    margin: 0 auto !important;
    display: block !important;
}

.image-wrap-bag {
    justify-content: center !important;
    align-items: center !important;
    width: 200px !important;
    height: 200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
}

.marquee {
    width: 100% !important;
    overflow: clip !important;
    background: white !important;
}


.footer-bottom {
    grid-column-gap: var(--spacing--32) !important;
    grid-row-gap: var(--spacing--32) !important;
    flex-flow: column !important;
    display: flex !important;
    margin-bottom: 30px !important;
}

.form-offer .text-field {
    padding: 8px 12px !important;
    height: auto !important;
    min-height: 35px !important;
    margin-bottom: 5px !important;
    font-size: 14px !important;
}

.form-offer .investment-range-select,
.contact-form-section .custom-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, currentColor 50%),
        linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position:
        calc(100% - 20px) calc(50% - 3px),
        calc(100% - 14px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: 48px !important;
    cursor: pointer;
}

.form-offer .investment-range-select option,
.contact-form-section .custom-select option {
    color: #0f172a;
    background-color: #ffffff;
}

@media (max-width: 767px) {
    .contact-form-section .img-container[class*="md:col-span-"] {
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        min-height: 0 !important;
    }
}

.offer-consent-group {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.offer-consent-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #444444;
    font-size: 11px;
    line-height: 1.45;
    cursor: pointer;
}

.offer-consent-item input[type="checkbox"] {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin-top: 1px;
    accent-color: #ff0000;
}

.offer-consent-item span {
    display: block;
}

.offer-consent-link {
    color: #111111;
    text-decoration: underline;
    text-decoration-color: #ff0000;
    text-underline-offset: 2px;
}

.offer-consent-link:hover {
    color: #ff0000;
}

.btn-send {
    isolation: isolate;
    background:
        radial-gradient(circle at 78% 120%, rgba(255, 255, 255, 0.34) 0 12%, transparent 34%),
        linear-gradient(135deg, #ff1b1b 0%, #e30613 48%, #a90009 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    box-shadow:
        0 18px 42px rgba(227, 6, 19, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
    color: #ffffff !important;
    position: relative !important;
    overflow: hidden !important;
    transition:
        transform 220ms ease,
        box-shadow 220ms ease,
        border-color 220ms ease,
        background 220ms ease !important;
}

.btn-send::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.34) 42%, transparent 62%);
    translate: -130% 0;
    transition: translate 520ms ease;
}

.btn-send> :not(.glow-effect) {
    position: relative;
    z-index: 1;
}

.btn-send:hover {
    background:
        radial-gradient(circle at 82% 115%, rgba(255, 255, 255, 0.42) 0 14%, transparent 36%),
        linear-gradient(135deg, #ff3333 0%, #f00617 45%, #be000d 100%) !important;
    border-color: rgba(255, 255, 255, 0.42) !important;
    box-shadow:
        0 24px 56px rgba(227, 6, 19, 0.48),
        0 0 34px rgba(255, 35, 35, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.34) !important;
    transform: translateY(-2px);
}

.btn-send:hover::before {
    translate: 130% 0;
}

.btn-send:active {
    transform: translateY(0);
}

.btn-send .glow-effect {
    position: absolute !important;
    right: -18px !important;
    bottom: -42px !important;
    z-index: 0;
    width: 112px !important;
    height: 112px !important;
    border-radius: 999px !important;
    background: #ff4a4a !important;
    filter: blur(26px) !important;
    opacity: 0.52 !important;
    pointer-events: none !important;
    transition:
        transform 520ms ease,
        opacity 220ms ease !important;
}

.btn-send:hover .glow-effect {
    opacity: 0.78 !important;
    transform: scale(1.85);
}

.footer-claims-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);
    color: #ffffff !important;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.footer-claims-link:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 0, 0, 0.42);
    background: linear-gradient(180deg, rgba(255, 0, 0, 0.18) 0%, rgba(255, 255, 255, 0.03) 100%);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.26);
}

.footer-claims-link__pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 999px;
    background: #ff0000;
    color: #ffffff;
}

.footer-claims-link__pill::before {
    content: "";
    width: 17px;
    height: 17px;
    display: block;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 6.25C4.5 5.2835 5.2835 4.5 6.25 4.5H10.25C11.2165 4.5 12 5.2835 12 6.25V18.75C12 17.7835 11.2165 17 10.25 17H6.25C5.2835 17 4.5 17.7835 4.5 18.75V6.25Z'/%3E%3Cpath d='M12 6.25C12 5.2835 12.7835 4.5 13.75 4.5H17.75C18.7165 4.5 19.5 5.2835 19.5 6.25V18.75C19.5 17.7835 18.7165 17 17.75 17H13.75C12.7835 17 12 17.7835 12 18.75V6.25Z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.kc-wa-widget {
    position: fixed;
    right: max(20px, env(safe-area-inset-right));
    bottom: max(20px, env(safe-area-inset-bottom));
    z-index: 9998;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 14px;
    font-family: 'Mona Sans', 'Plus Jakarta Sans', sans-serif;
    pointer-events: none;
}

.kc-wa-widget__panel {
    width: min(340px, calc(100vw - 32px));
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(248, 250, 252, 0.99) 100%);
    border: 2px solid rgba(209, 31, 47, 0.92);
    border-radius: 24px;
    box-shadow:
        0 24px 60px rgba(15, 23, 42, 0.18),
        0 12px 30px rgba(209, 31, 47, 0.18);
    color: #0f172a;
    overflow: hidden;
    opacity: 0;
    transform: translateY(14px) scale(0.98);
    pointer-events: none;
    transition: opacity 0.24s ease, transform 0.24s ease;
    backdrop-filter: none;
    pointer-events: none;
}

.kc-wa-widget.is-open .kc-wa-widget__panel {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.kc-wa-widget__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 18px 14px;
    border-bottom: 1px solid rgba(209, 31, 47, 0.16);
    background:
        radial-gradient(circle at top right, rgba(209, 31, 47, 0.12), transparent 40%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 248, 248, 0.98) 100%);
}

.kc-wa-widget__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: #d11f2f;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.kc-wa-widget__title {
    font-size: 18px;
    font-weight: 800;
    line-height: 1.15;
    margin: 0;
    color: #111827;
}

.kc-wa-widget__close {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 999px;
    background: rgba(209, 31, 47, 0.08);
    color: #d11f2f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.kc-wa-widget__close:hover,
.kc-wa-widget__close:focus-visible {
    background: rgba(209, 31, 47, 0.16);
    transform: scale(1.03);
    outline: none;
}

.kc-wa-widget__list {
    list-style: none;
    margin: 0;
    padding: 10px;
}

.kc-wa-widget__item+.kc-wa-widget__item {
    margin-top: 8px;
}

.kc-wa-widget__link {
    display: grid;
    grid-template-columns: 52px 1fr 18px;
    align-items: center;
    gap: 14px;
    padding: 12px;
    border-radius: 18px;
    text-decoration: none;
    color: #111827;
    background: linear-gradient(180deg, #ffffff 0%, #fff7f7 100%);
    transition: background-color 0.2s ease, transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid rgba(209, 31, 47, 0.12);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

.kc-wa-widget__link:hover,
.kc-wa-widget__link:focus-visible {
    background: linear-gradient(180deg, #ffffff 0%, #ffecee 100%);
    border-color: rgba(209, 31, 47, 0.3);
    box-shadow: 0 14px 26px rgba(209, 31, 47, 0.12);
    transform: translateY(-1px);
    outline: none;
}

.kc-wa-widget__avatar {
    width: 52px;
    height: 52px;
    border-radius: 999px;
    display: block;
    overflow: hidden;
    flex-shrink: 0;
    object-fit: cover;
    object-position: center;
    background-color: #ffffff;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.18),
        0 8px 18px rgba(15, 23, 42, 0.12);
}

/* SUNAT dashboard: mostrar nombre completo del cliente */
#root .flex-1.min-w-0>p[class*="text-[10px]"][class*="font-bold"][class*="text-gray-800"] {
    font-size: 15px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: break-word !important;
}

#root .flex-1.min-w-0>p[class*="text-[9px]"][class*="text-gray-400"] {
    font-size: 13px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: break-word !important;
}

/* SUNAT: override utility height */
#root .h-\[22px\] {
    height: 42px !important;
}


.kc-wa-widget__contact {
    min-width: 0;
}

.kc-wa-widget__name {
    display: block;
    font-size: 17px;
    font-weight: 700;
    color: #111827;
    line-height: 1.2;
    margin-bottom: 6px;
}

.kc-wa-widget__phone {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #475569;
}

.kc-wa-widget__arrow {
    color: #d11f2f;
    font-size: 12px;
    transition: color 0.2s ease, transform 0.2s ease;
}

.kc-wa-widget__link:hover .kc-wa-widget__arrow,
.kc-wa-widget__link:focus-visible .kc-wa-widget__arrow {
    color: #a30f24;
    transform: translateX(2px);
}

.kc-wa-widget__launcher {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    pointer-events: auto;
    filter: none;
}

.kc-wa-widget__launcher-card {
    appearance: none;
    -webkit-appearance: none;
    min-height: 72px;
    width: min(420px, calc(100vw - 104px));
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 16px;
    padding: 12px 20px 12px 14px;
    border: 1px solid rgba(37, 211, 102, 0.2);
    border-bottom-color: rgba(14, 116, 61, 0.26);
    border-radius: 999px;
    color: #07142e;
    background:
        radial-gradient(circle at 18% 22%, rgba(37, 211, 102, 0.11), transparent 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(250, 255, 252, 0.98) 100%);
    box-shadow: none;
    cursor: pointer;
    overflow: hidden;
    position: relative;
    text-align: left;
    transition:
        transform 220ms ease,
        border-color 220ms ease,
        background 220ms ease;
}

.kc-wa-widget__launcher-card::before {
    content: "";
    position: absolute;
    inset: 8px 14px auto auto;
    width: 130px;
    height: 58px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.78), transparent);
    opacity: 0.52;
    transform: rotate(-12deg);
    pointer-events: none;
}

.kc-wa-widget__launcher-card:hover,
.kc-wa-widget__launcher-card:focus-visible,
.kc-wa-widget__launcher:has(.kc-wa-widget__toggle:hover) .kc-wa-widget__launcher-card,
.kc-wa-widget__launcher:has(.kc-wa-widget__toggle:focus-visible) .kc-wa-widget__launcher-card {
    transform: translateY(-1px);
    border-color: rgba(37, 211, 102, 0.34);
    background:
        radial-gradient(circle at 18% 22%, rgba(37, 211, 102, 0.16), transparent 31%),
        linear-gradient(180deg, #ffffff 0%, #f5fff9 100%);
    box-shadow: none;
    outline: none;
}

.kc-wa-widget__advisor {
    width: 50px;
    height: 50px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    color: #0f5130;
    background:
        radial-gradient(circle at 36% 25%, rgba(255, 255, 255, 0.74), transparent 38%),
        linear-gradient(180deg, #eefce9 0%, #dff5d7 100%);
    box-shadow: none;
}

.kc-wa-widget__advisor svg {
    width: 32px;
    height: 32px;
}

.kc-wa-widget__launcher-copy {
    min-width: 0;
}

.kc-wa-widget__launcher-title,
.kc-wa-widget__launcher-subtitle {
    display: flex;
    align-items: center;
    width: 100%;
}

.kc-wa-widget__launcher-title {
    color: #07142e;
    font-size: 21px;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 0.98;
}

.kc-wa-widget__launcher-subtitle {
    margin-top: 5px;
    color: #70808b;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.1;
}

.kc-wa-widget__launcher-arrow {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    color: #20a85c;
    transition: transform 220ms ease, color 220ms ease;
}

.kc-wa-widget__launcher-arrow svg {
    width: 22px;
    height: 22px;
}

.kc-wa-widget__launcher-card:hover .kc-wa-widget__launcher-arrow,
.kc-wa-widget__launcher-card:focus-visible .kc-wa-widget__launcher-arrow,
.kc-wa-widget__launcher:has(.kc-wa-widget__toggle:hover) .kc-wa-widget__launcher-arrow,
.kc-wa-widget__launcher:has(.kc-wa-widget__toggle:focus-visible) .kc-wa-widget__launcher-arrow {
    color: #169e52;
    transform: translateX(5px);
}

.kc-wa-widget__toggle {
    width: 72px;
    height: 72px;
    border: 0;
    border-radius: 999px;
    cursor: pointer;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background:
        radial-gradient(circle at 34% 24%, rgba(255, 255, 255, 0.38) 0 11%, transparent 31%),
        linear-gradient(180deg, #27dd72 0%, #12b558 56%, #078b3f 100%);
    box-shadow: none;
    transition: transform 0.2s ease;
    pointer-events: auto;
}

.kc-wa-widget__toggle:hover,
.kc-wa-widget__toggle:focus-visible {
    transform: translateY(-2px) scale(1.02);
    box-shadow: none;
    outline: none;
}

.kc-wa-widget__toggle::before {
    content: "";
    position: absolute;
    inset: -13px;
    border-radius: inherit;
    background: radial-gradient(circle, rgba(37, 211, 102, 0.28), transparent 66%);
    border: 1px solid rgba(37, 211, 102, 0.18);
    animation: kcWaPulse 2.8s ease-out infinite;
}

.kc-wa-widget__toggle-icon {
    width: 38px;
    height: 38px;
    filter: none;
}

@keyframes kcWaPulse {
    0% {
        opacity: 0.8;
        transform: scale(0.92);
    }

    70% {
        opacity: 0;
        transform: scale(1.18);
    }

    100% {
        opacity: 0;
        transform: scale(1.18);
    }
}

@media (max-width: 767px) {
    .kc-wa-widget {
        right: 14px;
        bottom: max(14px, env(safe-area-inset-bottom));
        gap: 10px;
    }

    .kc-wa-widget__launcher {
        gap: 8px;
        filter: none;
    }

    .kc-wa-widget__launcher-card {
        width: min(232px, calc(100vw - 78px));
        min-height: 58px;
        grid-template-columns: 38px minmax(0, 1fr) 18px;
        gap: 9px;
        padding: 9px 11px 9px 9px;
        box-shadow: none;
    }

    .kc-wa-widget__launcher-card:hover,
    .kc-wa-widget__launcher-card:focus-visible,
    .kc-wa-widget__launcher:has(.kc-wa-widget__toggle:hover) .kc-wa-widget__launcher-card,
    .kc-wa-widget__launcher:has(.kc-wa-widget__toggle:focus-visible) .kc-wa-widget__launcher-card {
        transform: translateY(-1px);
        box-shadow: none;
    }

    .kc-wa-widget__advisor {
        width: 38px;
        height: 38px;
    }

    .kc-wa-widget__advisor svg {
        width: 25px;
        height: 25px;
    }

    .kc-wa-widget__launcher-title {
        font-size: 13px;
        line-height: 1.02;
    }

    .kc-wa-widget__launcher-subtitle {
        margin-top: 3px;
        font-size: 10px;
    }

    .kc-wa-widget__launcher-arrow,
    .kc-wa-widget__launcher-arrow svg {
        width: 17px;
        height: 17px;
    }

    .kc-wa-widget__toggle {
        width: 54px;
        height: 54px;
        box-shadow: none;
    }

    .kc-wa-widget__toggle:hover,
    .kc-wa-widget__toggle:focus-visible {
        transform: translateY(-1px) scale(1.02);
        box-shadow: none;
    }

    .kc-wa-widget__toggle-icon {
        width: 30px;
        height: 30px;
    }

    .kc-wa-widget__panel {
        width: min(320px, calc(100vw - 20px));
        border-radius: 20px;
    }

    .kc-wa-widget__link {
        grid-template-columns: 46px 1fr 16px;
        gap: 12px;
        padding: 11px;
    }

    .kc-wa-widget__avatar {
        width: 46px;
        height: 46px;
    }

    .kc-wa-widget__name {
        font-size: 15px;
    }

    .kc-wa-widget__phone {
        font-size: 13px;
    }
}

.section.product-slider-section {
    padding-top: var(--section-padding--medium);
    padding-bottom: var(--section-padding--medium);
    border-top: 1px solid rgba(17, 17, 17, 0.08);
    border-bottom: 1px solid rgba(17, 17, 17, 0.08);
    background-color: #e30613 !important;
    color: #111111;
    overflow: clip;
}

/* Navbar Alignment - Force Login Icon to right of Cart */
.nav-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 15px !important;
}

.w-commerce-commercecartwrapper {
    margin-right: 0 !important;
    /* Remove any right margin that might push items */
    display: flex !important;
    align-items: center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.w-commerce-commercecartopenlink.cart-button {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 32px !important;
    min-height: 32px !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.w-commerce-commercecartopenlink .icon-cart,
.w-commerce-commercecartopenlink .icon-cart.light,
.w-commerce-commercecartopenlink .icon-cart.dark {
    width: 24px !important;
    height: 24px !important;
    object-fit: contain !important;
}

.w-commerce-commercecartopenlinkcount,
.cart-quantity {
    position: absolute !important;
    top: -7px !important;
    right: -9px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    border-radius: 999px !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    display: inline-flex;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    z-index: 3 !important;
}

/* Ensure Login Icon is visible */
.icon-nav.w-inline-block {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    /* Match cart size visually if possible */
    height: 30px !important;
}

.icon-nav svg {
    width: 100% !important;
    height: 100% !important;
}

/* Visibility logic for Light/Dark variants */
/* Hero Navbar (usually has .light class) */
.wrap-navbar.light .icon-cart.dark {
    display: none !important;
}

.wrap-navbar.light .icon-cart.light {
    display: block !important;
}

/* Sticky Navbar (usually does NOT have .light, or has .sticky) */
.wrap-navbar.sticky:not(.light) .icon-cart.light {
    display: none !important;
}

.wrap-navbar.sticky:not(.light) .icon-cart.dark {
    display: block !important;
}

/* Default fallback */
.icon-cart.light {
    display: none;
}

.icon-cart.dark {
    display: block;
}

/* Override product-left background */
.product-left {
    background-color: transparent !important;
}

.brand-nav {
    max-width: 90% !important;
}

/* Page specific overrides - Dark Navigation for non-index pages */
.force-dark-nav .nav-link,
.force-dark-nav .nav-link.dark {
    color: #000000 !important;
}

.force-dark-nav .nav-link-underline {
    background-color: #000000 !important;
}

/* Force dark icons on non-index pages */
.force-dark-nav .icon-cart.light {
    display: block !important;
    filter: brightness(0) !important;
}

.force-dark-nav .icon-cart.dark {
    display: none !important;
}

.cart-quantity.light {
    background-color: #000000 !important;
    color: #ffffff !important;
}

.force-dark-nav .icon-nav,
.force-dark-nav .menu-button {
    color: #000000 !important;
}

/* CPE header button: red background, white text, animated */
.nav-link.cpe-red-btn,
.nav-link.dark[href*="portal=pedidos"] {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    border-radius: 9999px !important;
    background: linear-gradient(135deg, #ff0000 0%, #b30000 100%) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 8px 20px rgba(227, 6, 19, 0.35) !important;
    overflow: hidden !important;
    transform: translateZ(0);
    animation: cpePulseGlow 2.6s ease-in-out infinite;
}

.nav-link.cpe-red-btn>div:first-child,
.nav-link.dark[href*="portal=pedidos"]>div:first-child {
    color: #ffffff !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
}

.nav-link.cpe-red-btn .nav-link-underline,
.nav-link.dark[href*="portal=pedidos"] .nav-link-underline {
    display: none !important;
}

.force-dark-nav .nav-link.cpe-red-btn,
.force-dark-nav .nav-link.dark[href*="portal=pedidos"],
.force-dark-nav .nav-link.cpe-red-btn>div:first-child,
.force-dark-nav .nav-link.dark[href*="portal=pedidos"]>div:first-child {
    color: #ffffff !important;
}

.nav-link.cpe-red-btn::before,
.nav-link.dark[href*="portal=pedidos"]::before {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 55%;
    height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.35), transparent);
    transform: skewX(-25deg);
    animation: cpeShine 2.8s ease-in-out infinite;
    pointer-events: none;
}

.nav-link.cpe-red-btn:hover,
.nav-link.dark[href*="portal=pedidos"]:hover {
    transform: translateY(-1px) scale(1.02);
    box-shadow: 0 10px 24px rgba(227, 6, 19, 0.45) !important;
}

@keyframes cpePulseGlow {
    0% {
        box-shadow: 0 8px 10px rgba(227, 6, 19, 0.28);
    }

    50% {
        box-shadow: 0 10px 20px rgba(227, 6, 19, 0.5);
    }

    100% {
        box-shadow: 0 8px 10px rgba(227, 6, 19, 0.28);
    }
}

@keyframes cpeShine {
    0% {
        left: -120%;
    }

    55% {
        left: 140%;
    }

    100% {
        left: 140%;
    }
}

.section.hero-product-section {
    padding-top: 200px !important;
    background: white !important;
}

.section.hero-collections-section {
    padding-top: 100px !important;
    /* Adjusted now that slider is back */
    background: white !important;
}

/* Hide Webflow Badge */
.w-webflow-badge {
    display: none !important;
}

.lightbox-product {
    background-color: #ffffff !important;
    justify-content: center;
    align-items: center;
    width: 80% !important;
    display: flex !important;
}

/* Specific styling for Dynamic Product Page */
/* Global Font Styling */
body,
* {
    font-family: 'Mona Sans', sans-serif !important;
}

.dynamic-product-page .section {
    z-index: 2 !important;
    padding-top: var(--section-padding--small) !important;
    padding-bottom: var(--section-padding--small) !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    position: relative !important;
    background: white !important;
}

.dynamic-product-page .image-cover {
    z-index: 1;
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.dynamic-product-page .image-wrap-shop .image-cover {
    width: 80% !important;
    margin: 0 auto !important;
    display: block !important;
}

.dynamic-product-page .image-wrap-shop img.image-cover {
    background: white !important;
}

.dynamic-product-page .product-halves {
    grid-column-gap: var(--grid--column-gap);
    grid-row-gap: var(--grid--column-gap);
    grid-template-rows: auto;
    place-items: start stretch;
    padding-top: 100px;
}

/* Offer Popup Styling */
.master-offer {
    max-width: var(--max-width--6-columns);
    grid-column-gap: var(--spacing--0);
    grid-row-gap: var(--spacing--0);
    border: 0px solid #ffffff;
    background-color: #f7f7f7;
    grid-template-rows: auto;
    grid-template-columns: minmax(200px, 250px) 1fr;
    grid-auto-columns: 1fr;
    width: 100%;
    max-height: 630px;
    display: grid;
    position: relative;
    overflow: hidden;
}

.master-offer.popup-offer__slider-only {
    grid-template-columns: 1fr;
    width: min(96vw, 45vh, 460px);
    max-width: 460px;
    max-height: min(62vh, 620px);
    aspect-ratio: 3 / 4;
    border-radius: 10px;
    overflow: hidden;
    background-color: #ffffff00;
}

.popup-offer__slider-only .image-wrap-offer {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 3 / 4;
}

.popup-offer__close {
    position: absolute !important;
    top: 14px;
    right: 14px;
    z-index: 5;
    display: grid !important;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    color: #111111;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 12px 28px rgba(17, 17, 17, 0.18);
    cursor: pointer;
}

.image-wrap-offer {
    background-color: #f7f7f700;
    position: relative;
    overflow: hidden;
}

.image-wrap-offer picture {
    display: block;
    width: 100%;
    height: 100%;
}

.offer-slider {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;
}

.offer-slider__image {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
    opacity: 0 !important;
    translate: none !important;
    scale: 1 !important;
    transition: opacity 600ms ease !important;
}

.offer-slider:not(.offer-slider--initialized) .offer-slider__image:first-child,
.offer-slider__image.is-active {
    opacity: 1 !important;
}

.image-wrap-offer .offer-image,
.image-cover.offer-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center !important;
}

/* Override Webflow page-padding on popup-offer overlay */
.popup-offer {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
    .offer-slider__image {
        transition: none;
    }

    .offer-slider__image:first-child {
        opacity: 1;
    }

    .offer-slider__image:nth-child(2) {
        opacity: 0;
    }
}

@media screen and (max-width: 991px) {
    .popup-offer {
        align-items: flex-start !important;
        height: 100dvh !important;
        min-height: 100svh;
        padding: max(14px, env(safe-area-inset-top)) 14px max(14px, env(safe-area-inset-bottom)) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .master-offer {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: 1fr !important;
        width: min(100%, 520px);
        max-height: none !important;
        margin: auto;
        border-radius: 8px;
        overflow: hidden;
    }

    .master-offer.popup-offer__slider-only {
        width: min(100%, calc(48svh - 8px), 340px);
        max-height: calc(62svh - 12px) !important;
    }

    .image-wrap-offer {
        order: 1;
        flex: 0 0 auto;
        width: 100%;
        height: clamp(180px, 34svh, 260px) !important;
        min-height: 180px;
    }

    .popup-offer__slider-only .image-wrap-offer {
        height: auto !important;
        min-height: 0;
    }

    .content-offer {
        order: 2;
        padding: 20px 16px 18px !important;
    }

    .offer-inner-content,
    .form-block-offer,
    .form-offer {
        width: 100%;
    }
}

@media screen and (max-width: 479px) {
    .image-wrap-offer {
        height: clamp(160px, 30svh, 220px) !important;
    }

    .popup-offer__slider-only .image-wrap-offer {
        height: auto !important;
        min-height: 0;
    }
}

.section {
    z-index: 2 !important;
    padding-top: var(--section-padding--small) !important;
    padding-bottom: var(--section-padding--small) !important;
    background-color: #fafafa !important;
    color: #111111 !important;
    position: relative !important;
}

.footer-section .footer-top .footer-top-left .icon-logo {
    fill: #ffffff !important;
}

/* Hide Webflow badge again */
.w-webflow-badge {
    display: none !important;
}

/* Fix Product Description Overflow */
.rich-text-product {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
    text-align: left;
    white-space: normal;
}

/* Ensure bullet points and text fit */
.rich-text-product ul,
.rich-text-product ol {
    padding-left: 20px;
}

.rich-text-product p {
    margin-bottom: 15px;
}


/* Dropdown Menu Styling */
/* Force dropdown links to be black on hover or focus */
.w-dropdown-link:hover,
.w-dropdown-link:focus {
    color: #000000 !important;
    background-color: #f5f5f5 !important;
    /* Optional: light gray background on hover */
}

/* Ensure the dropdown list itself has a white background */
.w-dropdown-list {
    background-color: #ffffff !important;
    border: 1px solid #e0e0e0;
    /* Optional: adds a subtle border */
}

/* Default state for dropdown links (ensure readability) */
.w-dropdown-link {
    color: #333333 !important;
}


/* Fix Text Color Transparency */
.heading-style-h5,
.text-size-regular {
    color: rgba(0, 0, 0, 1) !important;
    /* Force full opacity black */
    opacity: 1 !important;
}

/* Target specific text elements inside cards or sections if needed */
.master-product-card .heading-style-h5 {
    color: #000000 !important;
}

.master-product-card .text-size-regular {
    color: #333333 !important;
}

.home-product-card-title {
    font-size: 25px !important;
    line-height: 1 !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
}

.kavto-card-animate .home-product-card-title,
.kavto-card-animate a .home-product-card-title,
.kavto-card-animate h3.home-product-card-title {
    font-size: 25px !important;
    line-height: 1 !important;
    max-height: none !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
}

@media (max-width: 767px) {

    .kavto-card-animate .home-product-card-title,
    .kavto-card-animate a .home-product-card-title,
    .kavto-card-animate h3.home-product-card-title {
        font-size: 25px !important;
        line-height: 1 !important;
        -webkit-text-size-adjust: 100% !important;
        text-size-adjust: 100% !important;
    }
}

@media (max-width: 767px) {
    .master-popup {
        grid-template-columns: 1fr !important;
        /* Stack elements vertically */
        height: auto !important;
        /* Allow height to adjust content */
        max-height: 90vh;
        /* Prevent it from being taller than the screen */
        overflow-y: auto;
        /* Enable scrolling if needed */
    }

    .image-wrap-popup {
        height: 150px !important;
        /* Reduce image height on mobile */
        width: 100%;
    }

    .content-popup {
        padding: 20px !important;
    }
}

/* Ensure popup modal is hidden by default */
.popup-modal {
    display: none;
    /* Webflow controls this style via interactions, but this ensures no flash */
}

/* When Webflow sets display: flex, ensure it's centered */
.popup-modal[style*="display: flex"],
.popup-modal[style*="display: block"] {
    display: flex !important;
    justify-content: center;
    align-items: center;
}

/* Remove Services from Mobile Menu */
@media screen and (max-width: 991px) {
    .nav-link[href="servicios.html"] {
        display: none !important;
    }
}

/* Hide Services Link Everywhere if the page is gone */
a[href="servicios.html"],
.nav-link[href="servicios.html"] {
    display: none !important;
}


/* Fix weird character rendering in buttons/text */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
div,
span,
button,
input,
textarea {
    font-family: 'Mona Sans', sans-serif !important;
}

/* Specifically target any elements showing mojibake or encoding artifacts if class known */

/* Ensure social icons wrapper allows flex */
.social-icons-wrapper {
    display: flex;
    gap: 1rem;
    align-items: center;
}

/* Style for social icons */
.social-icon {
    display: inline-flex;
    /* Use inline-flex to respect padding/dimensions */
    align-items: center;
    justify-content: center;
    width: 2rem;
    /* approx 32px */
    height: 2rem;
    color: currentColor;
    /* Inherit color from parent */
    transition: color 0.2s ease, transform 0.2s ease;
}

.social-icon:hover {
    color: #e30613;
    /* Fallback to red */
    transform: scale(1.1);
}

.social-icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
    /* Important for SVG to take color */
}

/* Fix button text color on hover for outline button */
.button.is-secondary:hover {
    color: white !important;
    background-color: black !important;
    /* Or brand color */
}


.social-icon.instagram:hover {
    color: #E1306C !important;
}

.social-icon.facebook:hover {
    color: #1877F2 !important;
}

.social-icon.linkedin:hover {
    color: #0077B5 !important;
}


/* Fix footer link alignment */
.footer-link-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    /* ~12px */
}

.footer-link {
    text-decoration: none;
    color: inherit;
    /* Use parent text color */
    transition: color 0.2s ease;
}

.footer-link:hover {
    color: #e30613;
}

/* Brand Filter Fix - Normalize Visuals */
.fs-cmsfilter_active {
    background-color: black !important;
    color: white !important;
}

/* Ensure no weird "×" appears in close buttons */
.close-button,
.w-commerce-commercecartcloselink {
    font-family: sans-serif !important;
    /* Fallback to system fonts for X */
}

/* Fix product image gallery sizing on product template */
.product-gallery-thumbnail {
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.2s ease;
}

.product-gallery-thumbnail.active {
    border-color: #000;
}

/* --- CLAXON PREMIUM REDESIGN STYLES --- */

/* Glassmorphism Background */
.glass-panel {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

/* Gradient Text */
.text-gradient-red {
    background: linear-gradient(135deg, #ff4d4d 0%, #ff0000 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Custom Shadows */
.shadow-glow-red {
    box-shadow: 0 0 20px rgba(255, 0, 0, 0.15);
}

/* Animations */
@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}

.animate-float {
    animation: float 6s ease-in-out infinite;
}

/* Grid Background Pattern */
.bg-grid-white {
    background-size: 40px 40px;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
}

/* Ensure Text Readability on Dark */
.text-body-strong {
    color: #e5e5e5;
}

.hover\:text-brand-red:hover {
    color: #E30613 !important;
}

.group\/btn:hover .group-hover\/btn\:bg-brand-red {
    background-color: #E30613 !important;
}

/* Filter correction as requested */
.master-filters {
    grid-column-gap: var(--spacing--24);
    grid-row-gap: var(--spacing--24);
    flex-flow: row wrap;
    display: flex !important;
    /* Force visibility */
}

.section-products {
    padding: 1rem 1rem !important;
    background-color: #f8f9fa !important;
}

.text-\[20px\] {
    font-size: 15px !important;
}

@media (min-width: 1024px) {
    .lg\:text-5xl {
        font-size: 2rem !important;
        line-height: 1;
    }
}

.headline-more-products {
    font-size: 40px !important;
}

/* Navigation Link Color Override */
.master-navigation .wrap-navbar:not(.sticky) .nav-link,
.master-navigation .wrap-navbar:not(.sticky) .nav-link div {
    color: #000000 !important;
}

.wrap-navbar {
    z-index: 9999 !important;
    background-color: white !important;
    width: 100%;
    position: fixed !important;
    inset: 0% 0% auto;
}

.w-14 {
    width: 7.5rem !important;
}

.max-w-5xl {
    max-width: 85% !important;
}

/* Page-specific padding for .py-20 */
/* Inicio (Home) */
[data-wf-page="6902210385039b18a05f1cc4"] .py-20 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}

/* Nosotros (About Us) */
[data-wf-page="690383cdc287ae9a8cda92a7"] .py-20 {
    padding-top: 10rem !important;
    padding-bottom: 5rem !important;
}

@media (max-width: 767px) {
    [data-wf-page="690383cdc287ae9a8cda92a7"] .p-6 {
        padding: 1rem !important;
    }
}

@media screen and (max-width: 991px) {
    .navbar.w-nav {
        position: relative;
    }

    .nav-menu-inner {
        padding: var(--spacing--32) var(--grid--page-padding) !important;
        grid-column-gap: var(--spacing--24) !important;
        grid-row-gap: var(--spacing--24) !important;
        background-color: #ffffff !important;
        flex-flow: column !important;
        justify-content: center !important;
        align-items: flex-start !important;
    }

    .menu-button.w-nav-button {
        position: relative;
        z-index: 100002;
        pointer-events: auto;
        cursor: pointer;
    }

    .menu-button.w-nav-button * {
        pointer-events: none !important;
    }

    .navbar.kc-mobile-nav-open .nav-menu,
    .navbar .nav-menu.w--open {
        position: absolute !important;
        top: calc(100% + 10px) !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 100001 !important;
        display: block !important;
        width: min(420px, calc(100vw - 32px)) !important;
        margin: 0 auto !important;
        padding: 18px !important;
        border-radius: 22px !important;
        background: rgba(255, 255, 255, 0.98) !important;
        border: 1px solid rgba(15, 23, 42, 0.08) !important;
        box-shadow: 0 24px 70px rgba(15, 23, 42, 0.22) !important;
        color: #111827 !important;
    }

    .navbar.kc-mobile-nav-open .nav-menu-inner,
    .navbar .nav-menu.w--open .nav-menu-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        grid-column-gap: var(--spacing--24) !important;
        grid-row-gap: var(--spacing--24) !important;
        gap: var(--spacing--24) !important;
        padding: var(--spacing--32) var(--grid--page-padding) !important;
        background-color: #ffffff !important;
    }

    .navbar.kc-mobile-nav-open .nav-link,
    .navbar .nav-menu.w--open .nav-link {
        display: flex !important;
        width: 100% !important;
        min-height: 42px !important;
        align-items: center !important;
        justify-content: center !important;
        color: #111827 !important;
        text-align: center !important;
    }

    .navbar.kc-mobile-nav-open .menu-button-inner.open {
        display: none !important;
    }

    .navbar.kc-mobile-nav-open .menu-button-inner.close {
        display: block !important;
    }

    .navbar.kc-mobile-nav-open .nav-mobile-cta .cta-main,
    .navbar .nav-menu.w--open .nav-mobile-cta .cta-main {
        border: 1px solid rgba(37, 211, 102, 0.55) !important;
        background: linear-gradient(135deg, #25d366 0%, #128c7e 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 14px 34px rgba(37, 211, 102, 0.32) !important;
    }

    .navbar.kc-mobile-nav-open .nav-mobile-cta .button-bg,
    .navbar .nav-menu.w--open .nav-mobile-cta .button-bg {
        background: linear-gradient(135deg, #25d366 0%, #128c7e 100%) !important;
    }

    .navbar.kc-mobile-nav-open .nav-mobile-cta .button-text,
    .navbar .nav-menu.w--open .nav-mobile-cta .button-text {
        color: #ffffff !important;
    }

    #new-reassurance-carousel .content-top {
        display: none !important;
    }
}

/* Marcas Page - Object Fit contain for product gallery images ONLY */
#pf-gallery-grid .object-cover {
    object-fit: contain !important;
}


.mx-auto {
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px !important;
}

/* Global Navigation Text Color Override */
.nav-link {
    color: #ffffff;
    font-size: 16px;
    font-weight: 400;
    position: relative;
    text-decoration: none !important;
}

.nav-link div {
    color: inherit !important;
    text-decoration: none !important;
}

.nav-link:hover,
.nav-link:focus,
.nav-link:active,
.nav-link.w--current,
.nav-link.w-inline-block,
.nav-link.w-inline-block:hover,
.nav-link.w-inline-block:focus,
.nav-link.w-inline-block:active,
.nav-mobile-cta .cta-main,
.nav-mobile-cta .cta-main:hover,
.nav-mobile-cta .cta-main:focus,
.nav-mobile-cta .cta-main:active {
    text-decoration: none !important;
}

.nav-link-underline,
.nav-link-underline.dark {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
}

.button-bg.w-variant-1ff8d96e-78cc-eac8-de90-206ecdaded5f {
    display: none !important;
}

/* Scoped rule for marcas, novedades, and contact pages */
/* Scoped rule for marcas, novedades, and contact pages */
.force-dark-nav .font-bold {
    font-weight: 400 !important;
}

/* Scoped rule for novedades page only */
.page-novedades .py-20 {
    padding-top: 1em !important;
    padding-bottom: 1rem !important;
}

.page-novedades .shadow-2xl {
    --tw-shadow: 0;
    --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}


.py-14 {
    padding-top: 1.5rem !important;
    padding-bottom: 4.5rem !important;
}

#brand-carousel .py-10 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

#brand-carousel>.max-w-6xl {
    max-width: 80rem;
}

#brand-carousel #paint-header-brands .reveal-char-dark,
#brand-carousel #paint-header-brands .reveal-char-dark.active {
    color: #18181b;
}

#brand-carousel #paint-header-brands {
    white-space: nowrap !important;
    font-size: 1rem !important;
    line-height: 0.95 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

#brand-carousel #paint-header-brands .inline-block,
#brand-carousel #paint-header-brands .kc-brand-title-line {
    display: inline-block;
    max-width: 100%;
    white-space: nowrap;
}

#brand-carousel #paint-header-brands .kc-brand-title-regular {
    font-style: normal;
    font-weight: 400;
}

#brand-carousel #paint-header-brands .kc-brand-title-emphasis {
    font-style: italic;
    font-weight: 400;
}

#brand-carousel #paint-header-brands .kc-brand-title-partner,
#brand-carousel #paint-header-brands .kc-brand-title-partner .reveal-char-dark,
#brand-carousel #paint-header-brands .kc-brand-title-partner .reveal-char-dark.active {
    color: #e30613;
    font-family: 'KC Georgia', Georgia, 'Times New Roman', serif !important;
    font-style: normal !important;
    font-weight: 700 !important;
}

@media (min-width: 390px) {
    #brand-carousel #paint-header-brands {
        font-size: 1.25rem !important;
    }
}

@media (min-width: 640px) {
    #brand-carousel #paint-header-brands {
        font-size: 2.375rem !important;
    }
}

@media (min-width: 1024px) {
    #brand-carousel>.max-w-6xl {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }

    #brand-carousel #paint-header-brands {
        font-size: 4rem !important;
    }
}

@media (min-width: 1280px) {
    #brand-carousel #paint-header-brands {
        font-size: 5rem !important;
    }
}

html.kc-reveal-enabled #brand-carousel #paint-header-brands.kc-reveal {
    opacity: 1 !important;
    filter: none !important;
    translate: 0 0 !important;
    scale: 1 !important;
}

/* Header "Ingresar" button style + pulse loop */
body a.nav-link[href*="indexIntranet.html"],
body .master-navigation a.nav-link[href*="indexIntranet.html"],
body a.nav-link[href*="portal=pedidos"],
body .master-navigation a.nav-link[href*="portal=pedidos"] {
    background-color: #e30613 !important;
    color: #ffffff !important;
    padding: 12px 24px !important;
    border-radius: 5px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: 0 0 0 rgba(227, 6, 19, 0.55);
    animation: ingresar-pulse 1.8s ease-in-out infinite;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

body a.nav-link[href*="indexIntranet.html"] div,
body .master-navigation a.nav-link[href*="indexIntranet.html"] div,
body a.nav-link[href*="portal=pedidos"] div,
body .master-navigation a.nav-link[href*="portal=pedidos"] div {
    color: #ffffff !important;
}

.master-navigation a.nav-link[href*="indexIntranet.html"] .nav-link-underline,
.master-navigation a.nav-link.dark[href*="indexIntranet.html"] .nav-link-underline.dark,
.master-navigation a.nav-link[href*="portal=pedidos"] .nav-link-underline,
.master-navigation a.nav-link.dark[href*="portal=pedidos"] .nav-link-underline.dark {
    opacity: 0 !important;
    transform: scale3d(0, 1, 1) !important;
}

.master-navigation a.nav-link[href*="indexIntranet.html"]:hover,
.master-navigation a.nav-link[href*="portal=pedidos"]:hover {
    background-color: #b8000d !important;
}

.master-navigation a.nav-link[href*="indexIntranet.html"]:active,
.master-navigation a.nav-link[href*="portal=pedidos"]:active {
    transform: scale(0.98);
}

@keyframes ingresar-pulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(227, 6, 19, 0.45);
    }

    50% {
        transform: scale(1.03);
        box-shadow: 0 0 0 12px rgba(227, 6, 19, 0);
    }

    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(227, 6, 19, 0);
    }
}

.icon-nav.light {
    color: #000000;
}

.h-full {
    height: 100% !important;
    align-content: end;
}

.max-w-full {
    max-width: 100%;
    padding-top: 50px;
}

body.kc-product-page,
body.kc-product-page button,
body.kc-product-page input,
body.kc-product-page textarea,
body.kc-product-page select {
    font-family: 'Mona Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

body.kc-product-page .master-navigation:not(.sticky) {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 10000 !important;
}

body.kc-product-page .master-navigation.sticky {
    display: none !important;
}

body.kc-product-page .wrap-navbar,
body.kc-product-page .wrap-navbar.light,
body.kc-product-page .wrap-navbar.sticky {
    height: 72px !important;
    min-height: 72px !important;
    background: #ffffff !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.kc-product-page .navbar.w-nav,
body.kc-product-page .nav-container {
    height: 72px !important;
    min-height: 72px !important;
}

body.kc-product-page .nav-container {
    width: 100% !important;
    max-width: 1560px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 174px minmax(0, 1fr) 86px !important;
    align-items: center !important;
    gap: 48px !important;
}

body.kc-product-page .nav-left,
body.kc-product-page .nav-right,
body.kc-product-page .nav-menu,
body.kc-product-page .nav-menu-inner {
    height: 100% !important;
    min-height: 0 !important;
}

body.kc-product-page .brand-nav {
    width: auto !important;
    height: 72px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 0 !important;
}

body.kc-product-page .logo-nav,
body.kc-product-page .logo-nav.light,
body.kc-product-page .logo-nav.dark {
    width: 174px !important;
    height: auto !important;
    max-height: 48px !important;
    display: block !important;
    object-fit: contain !important;
}

body.kc-product-page .master-navigation:not(.sticky) .logo-nav.dark {
    display: none !important;
}

body.kc-product-page .nav-menu {
    position: static !important;
    justify-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}

body.kc-product-page .nav-menu-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 26px !important;
    padding: 0 !important;
    background: transparent !important;
    transform: translateX(76px) !important;
}

body.kc-product-page .nav-link,
body.kc-product-page .nav-link.dark,
body.kc-product-page .nav-link>div,
body.kc-product-page .nav-link.dark>div {
    color: #000000 !important;
    font-family: 'Mona Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

body.kc-product-page .nav-link {
    min-height: 40px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
}

body.kc-product-page .nav-link.cpe-red-btn,
body.kc-product-page .master-navigation a.nav-link[href*="portal=pedidos"] {
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #ff2932 0%, #d60010 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 12px 22px rgba(227, 6, 19, 0.32) !important;
    animation: none !important;
}

body.kc-product-page .master-navigation a.nav-link[href*="portal=pedidos"] {
    min-width: 105px !important;
    border-radius: 4px !important;
}

body.kc-product-page .nav-link.cpe-red-btn>div,
body.kc-product-page .master-navigation a.nav-link[href*="portal=pedidos"]>div {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

body.kc-product-page .nav-right {
    justify-self: end !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important;
    padding: 0 !important;
}

body.kc-product-page .icon-nav {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    color: #111111 !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.kc-product-page .w-commerce-commercecartwrapper,
body.kc-product-page .w-commerce-commercecartopenlink.cart-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}

body.kc-product-page .w-commerce-commercecartopenlink.cart-button {
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
}

body.kc-product-page .w-commerce-commercecartcontainerwrapper {
    top: 74px !important;
}

body.kc-product-page .kc-wa-widget {
    z-index: 9990 !important;
}

body.kc-product-page .kc-wa-widget__launcher-card {
    display: none !important;
}

@media screen and (max-width: 991px) {
    body.kc-product-page .nav-container {
        display: flex !important;
        padding: 0 18px !important;
        gap: 14px !important;
    }

    body.kc-product-page .brand-nav {
        height: 72px !important;
    }

    body.kc-product-page .wrap-navbar,
    body.kc-product-page .wrap-navbar.light,
    body.kc-product-page .navbar.w-nav,
    body.kc-product-page .nav-container {
        height: 72px !important;
        min-height: 72px !important;
    }

    body.kc-product-page .logo-nav,
    body.kc-product-page .logo-nav.light,
    body.kc-product-page .logo-nav.dark {
        width: 148px !important;
    }

    body.kc-product-page .nav-menu,
    body.kc-product-page .navbar.kc-mobile-nav-open .nav-menu,
    body.kc-product-page .navbar .nav-menu.w--open {
        top: calc(100% + 8px) !important;
    }

    body.kc-product-page .nav-menu {
        display: none !important;
        width: auto !important;
    }

    body.kc-product-page .navbar.kc-mobile-nav-open .nav-menu,
    body.kc-product-page .navbar .nav-menu.w--open {
        display: block !important;
    }

    body.kc-product-page .nav-menu-inner {
        transform: none !important;
    }
}

/* Capitalize product names site-wide */
.kavto-card-animate h3,
.w-commerce-commercecartproductname {
    text-transform: capitalize !important;
}





/* --- MINI-CART "DROPDOWN" POSITIONING --- */
.w-commerce-commercecartwrapper {
    position: relative !important;
}

/* Force cart form visibility even if Webflow thinks there is an error */
.w-commerce-commercecartform {
    display: block !important;
}

/* Hide Webflow's default error state which blocks the UI */
.w-commerce-commercecarterrorstate {
    display: none !important;
}

/* Position the cart as a dropdown instead of a sidebar */
.w-commerce-commercecartcontainerwrapper {
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
    left: auto !important;
    width: min(400px, calc(100vw - 28px)) !important;
    height: auto !important;
    max-height: min(78vh, 520px) !important;
    background-color: transparent !important;
    /* Remove full-screen backdrop */
    z-index: 9999 !important;
    padding-top: 10px !important;
}

.w-commerce-commercecartcontainerwrapper.w--open {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Style the cart container as a floating box */
.w-commerce-commercecartcontainer {
    transform: none !important;
    display: flex !important;
    flex-direction: column !important;
    background: white !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1) !important;
    overflow: hidden !important;
    width: 100% !important;
    height: auto !important;
    max-height: min(78vh, 520px) !important;
}

.w-commerce-commercecartfooter {
    padding: 0 !important;
}

.w-commerce-commercecartlineitem {
    display: none !important;
}

.w-commerce-commercecartform {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.w-commerce-commercecartlist {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: min(56vh, 355px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    padding-right: 6px !important;
    scrollbar-width: thin;
    scrollbar-color: #9aa7b8 #eef2f7;
}

.w-commerce-commercecartlist::-webkit-scrollbar {
    width: 8px;
}

.w-commerce-commercecartlist::-webkit-scrollbar-track {
    background: #eef2f7;
    border-radius: 999px;
}

.w-commerce-commercecartlist::-webkit-scrollbar-thumb {
    background: #9aa7b8;
    border-radius: 999px;
}

.w-commerce-commercecartitem {
    padding: 10px 0 !important;
    gap: 12px !important;
}

.w-commerce-commercecartitem img {
    width: 56px !important;
    height: 56px !important;
    flex: 0 0 56px !important;
}

.w-commerce-commercecartiteminfo {
    min-width: 0 !important;
}

.w-commerce-commercecartproductname {
    font-size: 13px !important;
    line-height: 1.24 !important;
    margin-bottom: 2px !important;
}

/* Adjustments for mobile to ensure it doesn't overflow */
@media (max-width: 479px) {
    .w-commerce-commercecartcontainerwrapper {
        width: calc(100vw - 40px) !important;
        right: -20px !important;
        max-height: calc(100vh - 96px) !important;
    }

    .w-commerce-commercecartcontainer {
        max-height: calc(100vh - 96px) !important;
    }

    .w-commerce-commercecartlist {
        max-height: calc(100vh - 260px) !important;
    }
}

@media (max-width: 767px) {
    body.kc-cart-open {
        overflow: hidden !important;
    }

    .w-commerce-commercecartcontainerwrapper.w--open {
        position: fixed !important;
        inset: 0 !important;
        z-index: 120000 !important;
        display: flex !important;
        align-items: flex-end !important;
        justify-content: center !important;
        width: 100vw !important;
        height: 100dvh !important;
        max-height: none !important;
        padding: 12px 10px max(10px, env(safe-area-inset-bottom)) !important;
        background: rgba(7, 10, 18, 0.5) !important;
    }

    .w-commerce-commercecartcontainer {
        width: min(100%, 440px) !important;
        max-height: min(82dvh, 680px) !important;
        border-radius: 22px 22px 16px 16px !important;
        border: 1px solid rgba(226, 232, 240, 0.92) !important;
        box-shadow: 0 -18px 70px rgba(15, 23, 42, 0.28) !important;
    }

    .w-commerce-commercecartheader {
        padding: 16px 16px 12px !important;
        border-bottom: 1px solid rgba(226, 232, 240, 0.95) !important;
    }

    .w-commerce-commercecartheading {
        font-size: 18px !important;
        line-height: 1.1 !important;
    }

    .w-commerce-commercecartformwrapper,
    .w-commerce-commercecartform {
        min-height: 0 !important;
        overflow: hidden !important;
    }

    .w-commerce-commercecartlist {
        max-height: calc(82dvh - 170px) !important;
        padding: 8px 12px 4px !important;
        -webkit-overflow-scrolling: touch;
    }

    .w-commerce-commercecartitem {
        display: grid !important;
        grid-template-columns: 62px minmax(0, 1fr) !important;
        gap: 10px !important;
        padding: 12px 0 !important;
        margin: 0 !important;
    }

    .w-commerce-commercecartitem img {
        width: 62px !important;
        height: 62px !important;
        border-radius: 14px !important;
    }

    .w-commerce-commercecartproductname {
        display: -webkit-box !important;
        overflow: hidden !important;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        font-size: 12px !important;
        line-height: 1.2 !important;
    }

    .w-commerce-commercecartfooter {
        padding: 12px 14px 14px !important;
        border-top: 1px solid rgba(226, 232, 240, 0.95) !important;
        background: #ffffff !important;
    }

    .w-commerce-commercecartcheckoutbutton,
    .w-commerce-commercecartcheckoutbutton.submit-absolute {
        min-height: 46px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
    }
}

/* --- OPTIMIZATION: MOVED FROM INDEX.HTML --- */

/* PRELOADER CRITICAL CSS */
.loader {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: #060606 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: all !important;
}

.loader-inner {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #060606;
}

.content-loader {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.logo-loader {
    width: 220px;
    max-width: 80%;
    margin-bottom: 20px;
    height: auto;
}

.loader-fill-line {
    width: 200px;
    height: 2px;
    background-color: rgba(255, 255, 255, 0.2) !important;
    position: relative;
    overflow: hidden;
}

.fill-line-absolute {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 0%;
    background-color: #ff0000 !important;
    transition: width 0.5s ease;
}

/* Base Typography */
body,
* {
    font-family: 'Mona Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.brand-nav {
    max-width: 90%;
}

.w-webflow-badge {
    display: none !important;
}

.logo-nav {
    width: 70%;
}

/* Custom styles for continuous slider */
.categories-swiper .swiper-wrapper {
    transition-timing-function: linear !important;
}

.content-cateogry-card {
    display: none !important;
}

.cta-section .image-cover {
    object-fit: none !important;
}

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

/* Transitions and Animations */
.ease-reveal {
    transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.animate-infinite-scroll {
    width: max-content;
    animation: brand-loop 32s linear infinite;
    will-change: transform;
    padding-top: 20px;
}

.animate-infinite-scroll:hover {
    animation-play-state: running;
}

/* Scrollbar Utility */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

/* Spacing and Variables */
:root {
    --spacing-section-x: 20px;
    --dark: #18181b;
    --katherine-red: rgb(255 0 0);
    --kc-typography-size-body-2: 20px;
}

@media (min-width: 1024px) {
    :root {
        --spacing-section-x: 80px;
    }
}

/* Design Tokens */


.bg-black {
    background-color: var(--katherine-red) !important;
}

.from-black\/60 {
    background: black !important;
}

/* Text Reveal Effects */
.reveal-char-dark {
    color: #e5e7eb;
    transition: color 0.3s ease;
}

.reveal-char-dark.active {
    color: #18181b;
}

.reveal-char-light {
    color: rgba(255, 255, 255, 0.25);
    transition: color 0.3s ease;
}

.reveal-char-light.active {
    color: #ffffff;
}

/* Clip-path for Sectors Banner */
@media (min-width: 768px) {
    .clip-sector-first {
        clip-path: polygon(0% 0%, 100% 0%, 92% 100%, 0% 100%);
    }

    .clip-sector-last {
        clip-path: polygon(8% 0%, 100% 0%, 100% 100%, 0% 100%);
    }

    .clip-sector-mid {
        clip-path: polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);
    }
}

/* Featured Text Animation */
.feature-text {
    transition: all 0.7s cubic-bezier(0.2, 0.8, 0.2, 1);
    transform-origin: left center;
}

.feature-text.active-sector {
    opacity: 1 !important;
    transform: translateX(30px) scale(1.1);
    color: var(--dark);
}

.feature-text:not(.active-sector) {
    opacity: 0.15 !important;
    transform: translateX(0) scale(1);
}

/* Layout Adjustments */
.max-w-\[1400px\] {
    max-width: 1310px !important;
}

.snap-x-mandatory {
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
}

.snap-center {
    scroll-snap-align: center;
}

#products-slider {
    width: min(100%, 1160px);
    margin-left: auto;
    margin-right: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 1rem;
    scroll-padding-right: 1rem;
}

#products-slider>div {
    flex: 0 0 280px;
    width: 280px !important;
    scroll-snap-align: start;
}

#products-slider~button[aria-label="Producto siguiente"],
button[aria-label="Producto anterior"]:has(+ #products-slider) {
    top: 50% !important;
}

button[aria-label="Producto anterior"]:has(+ #products-slider) {
    left: max(0px, calc((100% - 1160px) / 2 - 18px)) !important;
}

#products-slider~button[aria-label="Producto siguiente"] {
    right: max(0px, calc((100% - 1160px) / 2 - 18px)) !important;
}

@media (min-width: 768px) {
    #products-slider>div {
        flex: 0 0 calc((100% - 5rem) / 3) !important;
        width: calc((100% - 5rem) / 3) !important;
    }
}

@media (min-width: 1180px) {
    #products-slider>div {
        flex: 0 0 360px !important;
        width: 360px !important;
    }
}

@media (max-width: 767px) {
    button[aria-label="Producto anterior"]:has(+ #products-slider) {
        left: 4px !important;
    }

    #products-slider~button[aria-label="Producto siguiente"] {
        right: 4px !important;
    }
}

.premium-slider-track {
    display: flex;
    align-items: stretch;
    gap: 24px;
    overflow-x: auto;
    padding: 5rem clamp(1.5rem, 7vw, 8rem);
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
}

.premium-slider-track::-webkit-scrollbar {
    display: none;
}

.premium-card {
    position: relative;
    flex: 0 0 min(420px, calc(100vw - 4.5rem));
    aspect-ratio: 4 / 5;
    min-height: 360px;
    overflow: hidden;
    border-radius: 2.5rem;
    background: #151515;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
    isolation: isolate;
    cursor: pointer;
    transform: translateY(0) scale(1);
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.55s ease;
    will-change: transform;
}

.premium-card:hover,
.premium-card:focus-within,
.premium-card.active {
    transform: translateY(-12px) scale(1.015);
    box-shadow: 0 42px 92px rgba(0, 0, 0, 0.44);
}

.premium-card-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.8s cubic-bezier(0.2, 0, 0.2, 1), opacity 0.8s ease;
    transform: scale(1.16);
}

.premium-card:hover .premium-card-media,
.premium-card:focus-within .premium-card-media,
.premium-card.active .premium-card-media {
    transform: scale(1.04);
    opacity: 1;
}

.premium-card-overlay {
    position: absolute;
    inset: 0;
    z-index: 10;
    pointer-events: none;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.95) 0%, rgb(89 4 4 / 74%) 40%, transparent 100%) !important;
}

.premium-card:hover .premium-card-overlay,
.premium-card:focus-within .premium-card-overlay,
.premium-card.active .premium-card-overlay {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.96) 0%, rgba(89, 4, 4, 0.78) 44%, rgba(0, 0, 0, 0.12) 100%) !important;
}

.dot {
    width: 6px;
    height: 6px;
    padding: 0;
    border: 0;
    background-color: rgba(255, 255, 255, 0.4);
    border-radius: 999px;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    appearance: none;
}

.dot.active {
    width: 32px;
    background-color: #ffffff;
}

.premium-card-content {
    transform: translateY(20px);
    opacity: 0;
    transition: all 0.8s cubic-bezier(0.2, 0, 0.2, 1) 0.2s;
}

.premium-card:hover .premium-card-content,
.premium-card:focus-within .premium-card-content,
.premium-card.active .premium-card-content {
    transform: translateY(0);
    opacity: 1;
}

#kc-brand-logo-marquee .kc-brand-logo-card {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, border-color 0.45s ease;
}

#kc-brand-logo-marquee .kc-brand-logo-card:hover,
#kc-brand-logo-marquee .kc-brand-logo-card:focus-visible {
    transform: translateY(-6px);
    border-color: rgba(217, 15, 22, 0.22);
    box-shadow: 0 20px 44px rgba(15, 23, 42, 0.12);
    outline: none;
}

@media screen and (max-width: 767px) {
    .premium-slider-track {
        gap: 18px;
        padding: 3rem 1.25rem 4rem;
    }

    .premium-card {
        flex-basis: min(320px, calc(100vw - 3rem));
        min-height: 320px;
    }
}



@media (min-width: 1024px) {
    .lg\:py-48 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }
}

.font-bold {
    font-weight: 400 !important;
}

.inline-block {
    margin-bottom: 20px;
}

@media (min-width: 1024px) {
    .lg\:pb-\[220px\] {
        padding-bottom: 20px !important;
    }
}

@media (min-width: 1024px) {
    .lg\:text-\[12px\] {
        font-size: 14px;
    }
}

.subtext-shop {
    max-width: 40em !important;
}

.text-xs {
    font-size: 1rem !important;
    line-height: 1rem !important;
}

@media (min-width: 1024px) {
    .lg\:text-\[90px\] {
        font-size: 85px;
    }
}

.bg-gray-800 {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
    padding: 6.5px;
}

/* SUNAT dashboard button fixes: solid red + white text */
#root aside nav>button:first-child,
#root aside nav>button:first-child:hover,
#root aside nav>button:first-child:focus,
#root aside nav>button:first-child:active {
    background: #ff0000 !important;
    color: #ffffff !important;
}

#root main form button[type="submit"],
#root main form button[type="submit"]:hover,
#root main form button[type="submit"]:focus,
#root main form button[type="submit"]:active {
    background: #ff0000 !important;
    color: #ffffff !important;
    border-color: #ff0000 !important;
}

/* SUNAT login force overrides */
#root .max-w-md form button[type="submit"],
#root .max-w-md form button[type="submit"]:focus,
#root .max-w-md form button[type="submit"]:active {
    background-color: #ff0000 !important;
    color: #ffffff !important;
}

#root .max-w-md form button[type="submit"]:hover {
    background-color: #e10613 !important;
    color: #ffffff !important;
}

#root .max-w-md form button[type="submit"] span {
    color: #ffffff !important;
    font-size: 16px !important;
}

#root .text-\[12px\] {
    font-size: 12px !important;
}

#root .max-w-md .text-\[14px\] {
    font-size: 24px !important;
    font-weight: 600 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Forced CSS overrides requested */
button,
[type="button"],
[type="reset"] {
    cursor: pointer !important;
    -webkit-appearance: button !important;
    border: 0 !important;
    font-size: 15px !important;
}

.home-product-card-title,
.kavto-card-animate .home-product-card-title,
.kc-tienda-page .kavto-card-animate h3.leading-tight,
.kc-product-page #product-name.leading-tight,
.kc-product-page .kavto-card-animate h3.leading-tight {
    --tw-leading: var(--leading-tight) !important;
    line-height: 1 !important;
    font-size: 25px !important;
}

@supports (color:color-mix(in lab, red, red)) {
    .shadow-slate-200 {
        --tw-shadow-color: color-mix(in oklab, var(--color-slate-200) var(--tw-shadow-alpha), transparent) !important;
        background: red !important;
        color: white !important;
    }
}

@supports selector(:has(*)) {
    #root .relative.w-full.h-screen:has(span[class*="text-[13px]"][class*="opacity-100"]) h1[class*="text-[2.5rem]"][class*="leading-tight"] {
        font-size: 3.2rem !important;
        line-height: 1 !important;
    }
}

/* Login footer signature text only */
#root .relative.z-10.mt-12.text-center.px-12>p[class*="text-white/60"][class*="text-[11px]"][class*="leading-none"][class*="whitespace-nowrap"] {
    font-size: 9px !important;
    line-height: 1 !important;
}

/* Dashboard title: FACTURACION ELECTRONICA (only this heading) */
#root h1.text-\[14px\].font-black.text-gray-900.tracking-tight.leading-none.mb-1 {
    font-size: 16px !important;
    margin-top: 0px;
    margin-bottom: -15px;
}

.text-3xl {
    font-size: 1.875rem !important;
    line-height: 2.25rem;
}

@media (min-width: 768px) {

    .md\:text-7xl,
    .lg\:text-7xl {
        font-size: 4.5rem !important;
        line-height: 1;
    }
}

.kc-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
    color: #64748b;
    font-size: 0.5rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.kc-breadcrumbs:empty {
    display: none;
}

.kc-breadcrumbs a {
    color: #475569;
    text-decoration: none;
    transition: color 0.2s ease, opacity 0.2s ease;
}

.kc-breadcrumbs a:hover {
    color: #dc2626;
}

.kc-breadcrumbs [aria-current="page"] {
    color: #0f172a;
}

.kc-breadcrumb-separator {
    color: #cbd5e1;
    font-weight: 600;
}

.kc-breadcrumbs--catalog {
    margin-top: -0.5rem;
    margin-bottom: 1rem;
}

.kc-taxonomy {
    display: grid;
    gap: 1rem;
}

.kc-taxonomy-group {
    display: grid;
    gap: 0.65rem;
}

.kc-taxonomy-label {
    color: #94a3b8;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.kc-chip-row,
.kc-filter-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.kc-filter-summary[hidden] {
    display: none !important;
}

.kc-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.3rem;
    padding: 0.6rem 0.9rem;
    border-radius: 999px;
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #b91c1c;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.kc-chip:hover {
    background: #ffe4e6;
    border-color: #fda4af;
    color: #991b1b;
    transform: translateY(-1px);
}

.kc-chip--muted {
    border-color: #e2e8f0;
    background: #f8fafc;
    color: #64748b;
    pointer-events: none;
}

.kc-chip--filter {
    cursor: pointer;
    background: #ffffff;
}

.kc-chip--filter span:last-child {
    font-size: 1rem;
    line-height: 1;
}

.kc-cart-qty-input {
    width: 3.25rem;
    border: 0;
    border-left: 1px solid #e2e8f0;
    border-right: 1px solid #e2e8f0;
    background: #fff;
    outline: none;
    appearance: textfield;
}

.kc-cart-qty-input::-webkit-outer-spin-button,
.kc-cart-qty-input::-webkit-inner-spin-button {
    appearance: none;
    margin: 0;
}

.kc-quote-notice {
    position: fixed;
    right: clamp(14px, 3vw, 28px);
    bottom: clamp(14px, 3vw, 28px);
    z-index: 2147483000;
    max-width: min(420px, calc(100vw - 28px));
    padding: 14px 16px;
    border-radius: 8px;
    background: #111316;
    color: #fff;
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 18px 42px rgba(2,8,23,0.28);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: opacity 180ms ease, transform 180ms ease;
}

.kc-quote-notice.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.kc-quote-notice[data-type="success"] {
    border-left: 4px solid #16a34a;
}

.kc-quote-notice[data-type="warning"] {
    border-left: 4px solid #f59e0b;
}

.kc-quote-notice[data-type="error"] {
    border-left: 4px solid #ef4444;
}

.kc-card-taxonomy {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.8rem;
}

.kc-card-meta {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: #475569;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

@media (max-width: 767px) {
    .kc-breadcrumbs {
        font-size: 0.72rem;
        gap: 0.4rem;
    }

    .kc-chip {
        font-size: 0.78rem;
        padding: 0.55rem 0.82rem;
    }
}

/* Home hero slider */
html[data-wf-page="6902210385039b18a05f1cc4"],
html[data-wf-page="6902210385039b18a05f1cc4"] body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

@supports (overflow: clip) {

    html[data-wf-page="6902210385039b18a05f1cc4"],
    html[data-wf-page="6902210385039b18a05f1cc4"] body {
        overflow-x: clip;
    }
}

.kc-mobile-only-media {
    display: none !important;
}

.hero-home-seciton.kc-hero-managed {
    --kc-hero-slides: 9;
    --kc-hero-duration: 3900ms;
    max-width: 100vw;
    overflow-x: hidden;
}

.hero-home-seciton.kc-hero-managed,
.hero-home-seciton.kc-hero-managed .video-home,
.hero-home-seciton.kc-hero-managed .wrap-home-hero-images {
    contain: paint;
}

.hero-home-seciton.kc-hero-managed .video-home,
.hero-home-seciton.kc-hero-managed .wrap-home-hero-images {
    max-width: 100%;
    overflow: hidden;
}

.hero-home-seciton .wrap-home-hero-images {
    background:
        radial-gradient(circle at 24% 24%, rgba(164, 24, 36, 0.38), transparent 34%),
        linear-gradient(135deg, #120607 0%, #261014 52%, #09090b 100%);
}

.hero-home-seciton .image-wrap-hero-home .hero-video,
.hero-home-seciton .image-wrap-hero-home .hero-mobile-image {
    background: #120607;
}

.hero-home-seciton .image-wrap-hero-home .hero-video {
    display: block;
}

.hero-home-seciton .image-wrap-hero-home .hero-mobile-image {
    display: none;
}

.hero-home-seciton .image-wrap-hero-home .hero-mobile-image>img {
    display: block;
    width: 100%;
    height: 100%;
    background: #120607;
}

.hero-home-seciton.kc-hero-managed .wrap-home-hero-images {
    isolation: isolate;
}

.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] {
    position: absolute !important;
    inset: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    z-index: 0 !important;
    transform: none !important;
    transition:
        opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 0.85s;
    will-change: opacity;
    backface-visibility: hidden;
}

.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide][data-kc-hero-active="true"] {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 2 !important;
    transform: none !important;
    transition:
        opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 0s;
}

.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] .hero-video,
.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] .hero-mobile-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: translateZ(0);
    backface-visibility: hidden;
}

.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] .hero-mobile-image>img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide="0"] .hero-video {
    object-fit: cover;
}

.hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide="0"] .hero-mobile-image>img {
    object-fit: cover;
}

.hero-home-seciton.kc-hero-managed .hero-bottom-thirds {
    display: grid !important;
    grid-template-columns: repeat(var(--kc-hero-slides), minmax(0, 1fr));
    gap: clamp(0.35rem, 1vw, 0.85rem);
}

.hero-home-seciton.kc-hero-managed .hero-line {
    position: relative !important;
    overflow: hidden;
}

.hero-home-seciton.kc-hero-managed .hero-fill-line {
    opacity: 0 !important;
    visibility: hidden !important;
}

.hero-home-seciton.kc-hero-managed .kc-hero-progress-fill[data-kc-hero-progress] {
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    right: auto !important;
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 1) 60%, rgba(254, 226, 226, 0.96) 100%);
    box-shadow: 0 0 18px rgba(255, 255, 255, 0.4);
    transform-origin: left center;
}

@media (prefers-reduced-motion: reduce) {
    .hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] {
        transition: opacity 0.3s ease, visibility 0s linear 0.3s !important;
        transform: none !important;
    }

    .hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide][data-kc-hero-active="true"] {
        transition: opacity 0.3s ease, visibility 0s linear 0s !important;
        transform: none !important;
    }
}

@media (max-width: 767px) {
    .kc-desktop-only-media {
        display: none !important;
    }

    .kc-mobile-only-media {
        display: block !important;
    }

    .hero-home-seciton .image-wrap-hero-home .hero-video {
        display: none;
    }

    .hero-home-seciton .image-wrap-hero-home .hero-mobile-image {
        display: block;
    }

    .hero-home-seciton.kc-hero-managed .hero-bottom-thirds {
        gap: 0.4rem;
    }

    .hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] .hero-mobile-image,
    .hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] .hero-mobile-image>img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .hero-home-seciton.kc-hero-managed .image-wrap-hero-home[data-kc-hero-slide] .hero-video {
        display: none !important;
    }

    .pb-\[160px\] {
        padding-bottom: 10px !important;
    }

    .font-black {
        font-weight: 500 !important;
    }

    .text-\[21px\] {
        font-size: 30px !important;
    }

    .py-8 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .gap-1 {
        gap: 1rem !important;
    }

    .mx-auto {
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 1rem !important;
    }

    .kavto-catalog-wrapper {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        background: #f8fafc !important;
        padding-top: 40px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
        overflow-x: hidden !important;
        padding-bottom: 24px !important;
    }

    .py-24 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    #brand-carousel #paint-header-brands {
        white-space: normal !important;
        font-size: 2.35rem !important;
        line-height: 0.92 !important;
    }

    #brand-carousel #paint-header-brands .inline-block,
    #brand-carousel #paint-header-brands .kc-brand-title-line {
        display: block !important;
        white-space: normal !important;
    }

    #brand-carousel #paint-header-brands .kc-brand-title-regular,
    #brand-carousel #paint-header-brands .kc-brand-title-partner {
        display: block !important;
        white-space: nowrap !important;
    }

    #categories-container {
        gap: 1rem !important;
        scroll-snap-type: x mandatory;
        scroll-padding-left: 1rem;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    #categories-container>div {
        width: calc((100vw - 5rem) / 2) !important;
        min-width: calc((100vw - 5rem) / 2) !important;
        scroll-snap-align: start;
    }
}

@media (min-width: 390px) and (max-width: 767px) {
    #brand-carousel #paint-header-brands {
        font-size: 2.5rem !important;
    }
}

.p-4 {
    padding: 0rem !important;
}

.space-y-2> :not([hidden])~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))) !important;
    margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)) !important;
    padding-bottom: 10px !important;
    padding-top: 10px !important;
    padding-left: 20px !important;
}

html.kc-search-ready,
body.kc-search-ready {
    overflow: hidden !important;
}

.popup-search.kc-search-open {
    position: fixed !important;
    inset: 0 !important;
    z-index: 120000 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 28px 18px !important;
    background: rgba(7, 10, 18, 0.52) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.popup-search .master-search-modal.kc-search-modal-enhanced {
    width: min(1180px, calc(100vw - 36px)) !important;
    max-height: min(88vh, 920px);
    overflow: hidden;
    border-radius: 32px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    background:
        radial-gradient(circle at top right, rgba(227, 6, 19, 0.08), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96));
    box-shadow: 0 32px 120px rgba(15, 23, 42, 0.24);
    padding: 32px !important;
}

.popup-search .master-search-modal.kc-search-modal-enhanced .headline-search-modal {
    margin-bottom: 14px;
}

.popup-search .headline-search-modal .text-h2 {
    color: #111827 !important;
}

.popup-search .close-button-search {
    background-color: transparent !important;
    color: #111827;
    border-radius: 999px;
    z-index: 5;
}

.popup-search .master-search-modal.kc-search-modal-enhanced .search.w-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
}

.popup-search .master-search-modal.kc-search-modal-enhanced .input-search {
    height: 62px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(148, 163, 184, 0.28) !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 10px 30px rgba(15, 23, 42, 0.06);
    padding: 0 24px 0 56px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23111827' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 20px center;
    background-size: 20px 20px;
    font-size: 0.98rem !important;
}

.popup-search .master-search-modal.kc-search-modal-enhanced .search-button {
    min-width: 170px;
}

.popup-search .master-search-modal.kc-search-modal-enhanced .subtext-search-modal {
    margin-top: 12px;
    color: #64748b;
}

.kc-search-shell {
    margin-top: 20px;
}

.kc-search-state {
    min-height: 60px;
    border: 1px dashed rgba(148, 163, 184, 0.35);
    border-radius: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px 20px;
    color: #64748b;
    background: rgba(255, 255, 255, 0.68);
}

.kc-search-layout {
    display: grid;
    grid-template-columns: minmax(290px, 0.88fr) minmax(0, 1.12fr);
    gap: 22px;
    align-items: stretch;
}

.kc-search-results,
.kc-search-preview {
    min-height: 460px;
    max-height: min(56vh, 620px);
}

.kc-search-results {
    overflow-y: auto;
    padding: 12px;
    border-radius: 28px;
    border: 1px solid rgba(226, 232, 240, 0.92);
    background: rgba(255, 255, 255, 0.84);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.kc-search-preview {
    overflow: visible;
}

.kc-search-result-item {
    width: 100%;
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 12px;
    border: 0;
    background: transparent;
    border-radius: 18px;
    text-align: left;
    transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.kc-search-result-item:hover,
.kc-search-result-item.is-active {
    background: #f8fafc;
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.07);
    transform: translateY(-1px);
}

.kc-search-result-thumb {
    width: 76px;
    height: 76px;
    border-radius: 18px;
    background: linear-gradient(180deg, #ffffff, #f8fafc);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(226, 232, 240, 0.9);
}

.kc-search-result-thumb img {
    width: 82%;
    height: 82%;
    object-fit: contain;
}

.kc-search-result-copy {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.kc-search-result-copy strong {
    color: #111827;
    font-size: 0.98rem;
    line-height: 1.2;
    font-weight: 600;
}

.kc-search-result-copy small {
    color: #64748b;
    font-size: 0.82rem;
}

.kc-search-preview-card,
.kc-search-state-card {
    height: 100%;
    min-height: 460px;
    padding: 26px;
    border-radius: 30px;
    border: 1px solid rgba(226, 232, 240, 0.92);
    background:
        radial-gradient(circle at top left, rgba(227, 6, 19, 0.08), transparent 26%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12);
}

.kc-search-state-card {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    text-align: center;
}

.kc-search-preview-top,
.kc-search-preview-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.kc-search-pill {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(241, 245, 249, 0.92);
    color: #334155;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.kc-search-price {
    color: #111827;
    font-size: 1.15rem;
    font-weight: 800;
}

.kc-search-preview-figure {
    margin: 20px 0 24px;
    min-height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff, #f8fafc);
    border: 1px solid rgba(226, 232, 240, 0.92);
    overflow: hidden;
}

.kc-search-preview-figure img {
    width: min(86%, 360px);
    max-height: 290px;
    object-fit: contain;
}

.kc-search-preview-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kc-search-code {
    color: #e30613;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.kc-search-preview-body h3 {
    margin: 0;
    color: #111827;
    font-size: clamp(0.6rem, 1vw, 2.2rem);
    line-height: 1.05;
    font-weight: 600;
}

.kc-search-preview-body p {
    margin: 0;
    color: #475569;
    line-height: 1.65;
}

.kc-search-preview-meta {
    color: #64748b;
    font-size: 0.84rem;
}

.kc-search-preview-cta {
    width: 100%;
    margin-top: 8px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #ff0000;
    color: #ffffff;
    font-weight: 500;
    text-decoration: none;
    transition: transform 0.2s ease, background-color 0.2s ease;
    font-size: 16px;
}

.kc-search-preview-cta:hover {
    transform: translateY(-1px);
    background: #e30613;
}

.kc-filter-search-trigger {
    min-width: 52px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 16px;
    border-radius: 14px;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #0f172a;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
    transition: transform 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.kc-filter-search-trigger:hover {
    transform: translateY(-1px);
    border-color: #e30613;
    color: #e30613;
}

.kc-filter-search-trigger svg {
    width: 18px;
    height: 18px;
}

.kc-filter-search-trigger-label {
    font-size: 0.82rem;
    font-weight: 700;
}

@media (max-width: 991px) {
    .popup-search.kc-search-open {
        align-items: flex-start;
        padding: 16px !important;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced {
        width: min(100vw - 22px, 960px) !important;
        max-height: calc(100dvh - 32px);
        padding: 24px !important;
        overflow-y: auto;
        border-radius: 28px;
        scrollbar-gutter: stable;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .headline-search-modal {
        padding-right: 56px;
    }

    .popup-search .headline-search-modal .text-h2 {
        font-size: clamp(2rem, 6vw, 3.25rem);
        line-height: 0.95;
    }

    .popup-search .close-button-search {
        top: 18px !important;
        right: 18px !important;
        width: 44px;
        height: 44px;
        border: 1px solid rgba(226, 232, 240, 0.95);
        background-color: rgba(255, 255, 255, 0.78) !important;
        box-shadow: 0 12px 28px rgba(15, 23, 42, 0.1);
    }

    .kc-search-layout {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .kc-search-results,
    .kc-search-preview,
    .kc-search-preview-card,
    .kc-search-state-card {
        min-height: auto;
        max-height: none;
    }

    .kc-search-results {
        max-height: min(34dvh, 340px);
    }

    .kc-search-preview-card,
    .kc-search-state-card {
        padding: 20px;
        border-radius: 24px;
    }

    .kc-search-preview-figure {
        min-height: 180px;
        margin: 16px 0 18px;
    }

    .kc-search-preview-figure img {
        max-height: 200px;
    }

    .kc-search-preview-body h3 {
        font-size: clamp(1.1rem, 2.8vw, 1.55rem);
        line-height: 1.12;
    }
}

@media (max-width: 767px) {
    .popup-search.kc-search-open {
        align-items: flex-end;
        padding: 8px 8px 0 !important;
        background: rgba(7, 10, 18, 0.46) !important;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced {
        width: 100% !important;
        max-height: calc(100dvh - 8px);
        padding: 18px 14px 14px !important;
        border-radius: 24px 24px 0 0;
        border-bottom: 0;
        box-shadow: 0 -18px 70px rgba(15, 23, 42, 0.24);
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .headline-search-modal {
        margin-bottom: 10px;
        padding-right: 52px;
    }

    .popup-search .headline-search-modal .text-h2 {
        font-size: clamp(1.65rem, 8vw, 2.35rem);
        letter-spacing: 0;
    }

    .popup-search .close-button-search {
        top: 12px !important;
        right: 12px !important;
        width: 42px;
        height: 42px;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .search.w-form {
        position: sticky;
        top: 0;
        z-index: 4;
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 6px 0 12px;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 255, 255, 0.92) 72%, rgba(255, 255, 255, 0));
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .input-search {
        height: 56px !important;
        padding: 0 18px 0 48px !important;
        background-position: 18px center;
        background-size: 18px 18px;
        font-size: 16px !important;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .search-button {
        width: 100%;
        min-width: 0;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .search-button,
    .popup-search .master-search-modal.kc-search-modal-enhanced .cta-main {
        min-height: 50px;
        border-radius: 999px;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .cta-main,
    .popup-search .master-search-modal.kc-search-modal-enhanced .submit-absolute {
        width: 100%;
    }

    .popup-search .master-search-modal.kc-search-modal-enhanced .subtext-search-modal {
        margin-top: 4px;
        font-size: 0.78rem;
    }

    .kc-search-shell {
        margin-top: 10px;
    }

    .kc-search-state {
        min-height: auto;
        padding: 14px 16px;
        border-radius: 18px;
        font-size: 0.9rem;
        line-height: 1.35;
    }

    .kc-search-layout {
        gap: 12px;
    }

    .kc-search-results {
        max-height: min(36dvh, 310px);
        padding: 8px;
        border-radius: 20px;
    }

    .kc-search-result-item {
        grid-template-columns: 58px minmax(0, 1fr);
        gap: 10px;
        padding: 8px;
        border-radius: 16px;
        min-height: 74px;
    }

    .kc-search-result-thumb {
        width: 58px;
        height: 58px;
        border-radius: 14px;
    }

    .kc-search-result-copy {
        gap: 4px;
    }

    .kc-search-result-copy strong {
        display: -webkit-box;
        overflow: hidden;
        font-size: 0.88rem;
        line-height: 1.18;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

    .kc-search-result-copy small {
        font-size: 0.76rem;
    }

    .kc-search-preview-card,
    .kc-search-state-card {
        padding: 14px;
        border-radius: 20px;
        box-shadow: 0 14px 32px rgba(15, 23, 42, 0.1);
    }

    .kc-search-preview-top,
    .kc-search-preview-meta {
        align-items: flex-start;
        gap: 10px;
    }

    .kc-search-pill {
        max-width: 68%;
        padding: 6px 10px;
        overflow: hidden;
        font-size: 0.72rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .kc-search-price {
        font-size: 0.98rem;
        white-space: nowrap;
    }

    .kc-search-preview-figure {
        min-height: 128px;
        margin: 12px 0;
        border-radius: 18px;
    }

    .kc-search-preview-figure img {
        width: min(82%, 220px);
        max-height: 132px;
    }

    .kc-search-code {
        font-size: 0.74rem;
    }

    .kc-search-preview-body h3 {
        font-size: 1rem;
        line-height: 1.18;
    }

    .kc-search-preview-body p,
    .kc-search-preview-meta {
        font-size: 0.82rem;
        line-height: 1.35;
    }

    .kc-search-preview-cta {
        min-height: 44px;
        margin-top: 10px;
        font-size: 15px;
    }

    .kc-filter-search-trigger-label {
        display: none;
    }
}

@media (max-width: 479px) {
    .popup-search .master-search-modal.kc-search-modal-enhanced {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .kc-search-results {
        max-height: 32dvh;
    }

    .kc-search-preview-figure {
        min-height: 112px;
    }

    .kc-search-preview-figure img {
        max-height: 112px;
    }
}

@media (min-width: 1024px) {
    .lg\:text-\[110px\] {
        font-size: 90px !important;
    }
}

.mb-12 {
    margin-bottom: 1rem !important;
}

.to-gray-500 {
    --tw-gradient-to: #b6b6b6 var(--tw-gradient-to-position) !important;
}

.kc-promo-popup,
[data-kc-global-promo-popup="true"].kc-promo-popup {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 10px;
    background: rgba(5, 7, 12, 0.72);
    backdrop-filter: blur(10px);
}

.kc-promo-popup.is-open,
[data-kc-global-promo-popup="true"].kc-promo-popup.is-open {
    display: flex;
}

.kc-promo-popup__dialog,
[data-kc-global-promo-popup="true"] .kc-promo-popup__dialog {
    position: relative;
    display: inline-block;
    width: auto;
    max-width: calc(100vw - 20px);
    max-height: calc(100dvh - 20px);
    overflow: visible;
    background: transparent;
    line-height: 0;
}

.kc-promo-popup__image,
[data-kc-global-promo-popup="true"] .kc-promo-popup__image {
    display: block;
    width: auto;
    height: auto;
    max-width: calc(100vw - 20px);
    max-height: calc(100dvh - 20px);
    object-fit: contain;
    border-radius: 18px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.38);
}

.kc-promo-popup__close,
[data-kc-global-promo-popup="true"] .kc-promo-popup__close {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    color: #111827;
    background: rgba(255, 255, 255, 0.94);
    cursor: pointer;
    font-size: 26px;
    line-height: 1;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.24);
}

[data-kc-promo-trigger],
[data-kc-promo-image="true"],
img[src="https://admin.katherinecorp.com/wp-content/uploads/2026/05/ge-14-may-2026-09_40_12.webp"] {
    cursor: zoom-in;
}

@media (min-width: 1024px) {
    .h-72 {
        height: 26rem !important;
    }

    .h-96 {
        height: 33rem !important;
    }
}
