/* Modo "solo categorías": cuando este partial se incluye en la
       PÁGINA DE CATEGORÍA (onlyCategories=true) para reutilizar el MISMO
       carrusel de la portada, quitamos el chrome del landing (padding,
       fondo, sombra) para que quede como un bloque limpio arriba de la
       grilla de productos. Solo aplica bajo .ec-landing--only-categories. */
    .ec-landing--only-categories {
        padding: 0 !important;
        margin: 0 0 8px !important;
        background: transparent !important;
        box-shadow: none !important;
        border: 0 !important;
        gap: 0 !important;
    }
    .ec-landing--only-categories .ec-landing-section--categories {
        margin: 0 !important;
        padding: 0 !important;
    }
    body.ecommerce-has-landing {
        --landing-primary: {{ $landingPrimaryColor }};
        --landing-secondary: {{ $landingSecondaryColor }};
    }
    body.ecommerce-has-landing .main > br {
        display: none !important;
    }
    body.ecommerce-has-landing .main > .container {
        margin-top: 0 !important;
    }
    body.ecommerce-has-landing .main > .container > .row > .col-lg-12.mt-3 {
        margin-top: 0 !important;
    }
    .ec-landing {
        color: #1f2937;
        display: flex;
        flex-direction: column;
        margin-bottom: 2.2rem;
    }
    .ec-landing-branch {
        background: linear-gradient(90deg, var(--landing-primary), var(--landing-secondary));
        border-radius: 8px;
        box-shadow: 0 10px 26px rgba(15, 23, 42, .10);
        color: #ffffff;
        display: flex;
        gap: 1.2rem;
        justify-content: space-between;
        margin: 0 0 1.2rem !important;
        max-width: none !important;
        min-height: 64px;
        padding: 1.2rem 1.6rem;
        width: 100% !important;
    }
    .ec-landing-branch__title,
    .ec-landing-branch__sub {
        margin: 0;
    }
    .ec-landing-branch__title {
        align-items: center;
        display: flex;
        font-size: 1.5rem;
        font-weight: 800;
        gap: .6rem;
        line-height: 1.2;
    }
    .ec-landing-branch__sub {
        font-size: 1.2rem;
        line-height: 1.35;
        opacity: .92;
    }
    .ec-landing-branch__store {
        align-items: center;
        background: rgba(255, 255, 255, .16);
        border: 1px solid rgba(255, 255, 255, .36);
        border-radius: 8px;
        display: inline-flex;
        font-size: 1.35rem;
        font-weight: 700;
        justify-content: center;
        min-height: 42px;
        padding: .7rem 1.4rem;
        white-space: nowrap;
    }
    .ec-landing-hero {
        background-color: #111827;
        background-image: linear-gradient(90deg, rgba(17, 24, 39, .92), rgba(17, 24, 39, .38));
        background-position: center;
        background-size: cover;
        border-radius: 8px;
        color: #ffffff;
        display: grid;
        gap: 2rem;
        grid-template-columns: minmax(0, 1fr);
        min-height: 330px;
        overflow: hidden;
        padding: clamp(2.4rem, 4vw, 5rem);
        position: relative;
    }
    .ec-landing-hero::after {
        background: linear-gradient(120deg, rgba(255, 255, 255, .08), transparent 48%);
        bottom: 0;
        content: "";
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 0;
    }
    .ec-landing-hero--image-only {
        min-height: 260px;
        padding: 0;
    }
    .ec-landing-hero--image-only::after {
        display: none;
    }
    .ec-landing-hero__copy {
        max-width: 760px;
        position: relative;
        z-index: 1;
    }
    .ec-landing-kicker {
        align-items: center;
        background: rgba(255, 255, 255, .13);
        border: 1px solid rgba(255, 255, 255, .26);
        border-radius: 999px;
        color: #ffffff;
        display: inline-flex;
        font-size: 1.2rem;
        font-weight: 800;
        margin-bottom: 1.2rem;
        padding: .45rem 1rem;
    }
    .ec-landing-hero h1 {
        color: #ffffff;
        font-size: 4.2rem;
        font-weight: 800;
        letter-spacing: 0;
        line-height: 1.04;
        margin: 0 0 1rem;
        max-width: 760px;
        overflow-wrap: anywhere;
        text-transform: none;
    }
    .ec-landing-hero p {
        color: rgba(255, 255, 255, .92);
        font-size: 1.75rem;
        line-height: 1.45;
        margin: 0;
        max-width: 620px;
    }
    .ec-landing-hero__actions {
        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
        margin-top: 2.2rem;
    }
    .ec-landing-btn {
        align-items: center;
        border-radius: 8px;
        display: inline-flex;
        font-size: 1.4rem;
        font-weight: 800;
        gap: .7rem;
        justify-content: center;
        min-height: 46px;
        padding: 1.1rem 1.7rem;
        text-decoration: none !important;
    }
    .ec-landing-btn--primary {
        background: var(--landing-primary);
        color: #ffffff !important;
    }
    .ec-landing-btn--secondary {
        background: rgba(255, 255, 255, .12);
        border: 1px solid rgba(255, 255, 255, .45);
        color: #ffffff !important;
    }
    .ec-landing-section {
        margin-top: 2.2rem;
    }
    .ec-landing-section__header {
        align-items: end;
        display: flex;
        gap: 1rem;
        justify-content: space-between;
        margin-bottom: 1.2rem;
    }
    .ec-landing-section__header span {
        color: var(--landing-primary);
        display: block;
        font-size: 1.2rem;
        font-weight: 800;
        margin-bottom: .2rem;
        text-transform: none;
    }
    .ec-landing-section__header h2 {
        color: #1f2937;
        font-size: 2.4rem;
        font-weight: 800;
        letter-spacing: 0;
        line-height: 1.2;
        margin: 0;
        text-transform: none;
    }
    .ec-landing-section__header a {
        color: var(--landing-primary);
        flex: 0 0 auto;
        font-size: 1.3rem;
        font-weight: 800;
        text-decoration: none;
    }
    .ec-landing-products,
    .ec-landing-benefits {
        display: grid;
        gap: 1.2rem;
    }
    .ec-landing-category-carousel {
        position: relative;
    }
    .ec-landing-categories {
        display: flex;
        gap: 1.2rem;
        overflow-x: auto;
        padding: .2rem 4.2rem .6rem;
        scroll-behavior: smooth;
        scroll-padding: 4.2rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        white-space: nowrap;
    }
    .ec-landing-categories::-webkit-scrollbar {
        display: none;
    }
    .ec-landing-category {
        background: #ffffff;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        color: #1f2937 !important;
        display: flex;
        flex: 0 0 270px;
        flex-direction: column;
        min-height: 132px;
        overflow: hidden;
        padding: 0;
        scroll-snap-align: start;
        text-align: left;
        text-decoration: none !important;
        transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
        white-space: normal;
    }
    .ec-landing-category:hover,
    .ec-landing-category.is-active {
        border-color: var(--landing-primary);
        box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
    }
    .ec-landing-category:hover {
        transform: translateY(-2px);
    }
    .ec-landing-category__media {
        align-items: center;
        background: #f8fafc;
        color: var(--landing-primary);
        display: flex;
        font-size: 2.8rem;
        font-weight: 800;
        height: 78px;
        justify-content: center;
        overflow: hidden;
        width: 100%;
    }
    .ec-landing-category__media--image {
        background: #ffffff;
    }
    .ec-landing-category__media--image picture {
        display: block;
        flex: 0 0 100%;
        height: 100% !important;
        line-height: 0;
        min-width: 100%;
        overflow: hidden;
        width: 100% !important;
    }
    .ec-landing-category__media--image picture > img,
    .ec-landing-category__media--image > img.ec-landing-category__image {
        display: block;
        height: 100% !important;
        max-height: none !important;
        max-width: none !important;
        min-width: 100%;
        object-fit: cover !important;
        object-position: center center !important;
        width: 100% !important;
    }
    .ec-landing-category__media--placeholder {
        background: #f8fafc;
    }
    .ec-landing-category__placeholder-image {
        display: block;
        height: auto !important;
        max-height: 54px !important;
        max-width: 58px !important;
        object-fit: contain !important;
        opacity: .72;
        width: auto !important;
    }
    .ec-landing-category-arrow {
        align-items: center;
        background: #ffffff;
        border: 1px solid rgba(148, 163, 184, .44);
        border-radius: 999px;
        box-shadow: 0 12px 28px rgba(15, 23, 42, .14);
        color: #1f2937;
        display: flex;
        font-size: 1.6rem;
        height: 42px;
        justify-content: center;
        padding: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        transition: border-color .15s ease, color .15s ease, opacity .15s ease;
        width: 42px;
        z-index: 3;
    }
    .ec-landing-category-arrow:hover {
        border-color: var(--landing-primary);
        color: var(--landing-primary);
    }
    .ec-landing-category-arrow:disabled {
        cursor: default;
        opacity: .38;
    }
    .ec-landing-category-arrow--prev {
        left: .2rem;
    }
    .ec-landing-category-arrow--next {
        right: .2rem;
    }
    .ec-landing-category__body {
        display: flex;
        flex-direction: column;
        min-width: 0;
        padding: .85rem 1rem .95rem;
    }
    .ec-landing-category strong {
        color: #1f2937;
        display: -webkit-box;
        font-size: 1.25rem;
        font-weight: 800;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        line-height: 1.2;
        overflow: hidden;
    }
    .ec-landing-category small {
        color: #6b7280;
        font-size: 1.05rem;
        margin-top: .25rem;
    }
    .ec-landing-products {
        grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    }
    .ec-landing-product {
        align-items: stretch;
        background: #ffffff;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        color: #1f2937 !important;
        display: grid;
        gap: 0;
        grid-template-columns: 106px minmax(0, 1fr);
        min-height: 118px;
        overflow: hidden;
        padding: 0;
        text-decoration: none !important;
        transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
    }
    .ec-landing-product:hover {
        border-color: var(--landing-primary);
        box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
        transform: translateY(-2px);
    }
    .ec-landing-product__image {
        align-items: center;
        background: #f8fafc;
        border-radius: 0;
        display: flex;
        height: 100%;
        justify-content: center;
        overflow: hidden;
        width: 106px;
    }
    .ec-landing-product__image picture,
    .ec-landing-product__image img {
        height: 100% !important;
        object-fit: cover !important;
        width: 100% !important;
    }
    body.ecommerce-has-landing .ec-landing .ec-landing-product__image picture,
    body.ecommerce-has-landing .ec-landing .ec-landing-product__image img {
        height: 100% !important;
        object-fit: cover !important;
        width: 100% !important;
    }
    .ec-landing-product__body {
        justify-content: center;
        display: flex;
        flex-direction: column;
        min-width: 0;
        padding: 1rem 1.1rem;
    }
    .ec-landing-product__body strong {
        color: #1f2937;
        display: -webkit-box;
        font-size: 1.35rem;
        font-weight: 800;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-height: 1.25;
        overflow: hidden;
    }
    .ec-landing-product__body em {
        color: var(--landing-primary);
        font-size: 1.5rem;
        font-style: normal;
        font-weight: 900;
        margin-top: .6rem;
        white-space: nowrap;
    }
    .ec-landing-empty {
        align-items: center;
        background: #f8fafc;
        border: 1px dashed #cbd5e1;
        border-radius: 8px;
        color: #6b7280;
        display: flex;
        gap: 1rem;
        grid-column: 1 / -1;
        padding: 1.6rem;
    }
    .ec-landing-benefits {
        background: #f8fafc;
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        margin-top: 2.2rem;
        padding: 1.4rem;
    }
    .ec-landing-benefits div {
        align-items: flex-start;
        display: grid;
        gap: .4rem .9rem;
        grid-template-columns: 42px minmax(0, 1fr);
        min-width: 0;
    }
    .ec-landing-benefit__media {
        align-items: center;
        background: #ffffff;
        border: 1px solid #e5e7eb;
        border-radius: 999px;
        color: var(--landing-primary);
        display: flex;
        font-size: 2rem;
        grid-row: span 2;
        height: 42px;
        justify-content: center;
        overflow: hidden;
        width: 42px;
    }
    .ec-landing-benefit__media i {
        line-height: 1;
    }
    .ec-landing-benefit__media img {
        display: block;
        height: 100% !important;
        object-fit: cover !important;
        width: 100% !important;
    }
    .ec-landing-benefits strong {
        color: #1f2937;
        font-size: 1.35rem;
        line-height: 1.2;
    }
    .ec-landing-benefits span {
        color: #6b7280;
        font-size: 1.2rem;
        line-height: 1.35;
    }
    .ec-landing-catalog-heading {
        margin: 2.2rem 0 1rem;
    }
    .ec-landing-catalog-heading span {
        color: var(--landing-primary, #cc00c5);
        display: block;
        font-size: 1.2rem;
        font-weight: 800;
        margin-bottom: .2rem;
    }
    .ec-landing-catalog-heading h2 {
        color: #1f2937;
        font-size: 2.4rem;
        font-weight: 800;
        letter-spacing: 0;
        line-height: 1.2;
        margin: 0;
        text-transform: none;
    }
    .ec-landing--urban_offers {
        --landing-primary: #f97316;
        --landing-secondary: #111827;
        --landing-hero-overlay-start: rgba(17, 24, 39, .92);
        --landing-hero-overlay-end: rgba(249, 115, 22, .18);
    }
    .ec-landing--minimal_brand {
        --landing-primary: #111827;
        --landing-secondary: #64748b;
        --landing-hero-overlay-start: rgba(255, 255, 255, .90);
        --landing-hero-overlay-end: rgba(255, 255, 255, .28);
    }
    .ec-landing--market_grid {
        --landing-primary: #0f766e;
        --landing-secondary: #14b8a6;
        --landing-hero-overlay-start: rgba(15, 118, 110, .88);
        --landing-hero-overlay-end: rgba(20, 184, 166, .20);
    }
    .ec-landing--tech_showcase {
        --landing-primary: #2563eb;
        --landing-secondary: #06b6d4;
        --landing-hero-overlay-start: rgba(15, 23, 42, .92);
        --landing-hero-overlay-end: rgba(37, 99, 235, .24);
    }
    .ec-landing--home_deco {
        --landing-primary: #16a34a;
        --landing-secondary: #f43f5e;
        --landing-hero-overlay-start: rgba(32, 23, 19, .78);
        --landing-hero-overlay-end: rgba(244, 63, 94, .18);
    }
    .ec-landing--wholesale {
        --landing-primary: #7c3aed;
        --landing-secondary: #f59e0b;
        --landing-hero-overlay-start: rgba(49, 46, 129, .88);
        --landing-hero-overlay-end: rgba(245, 158, 11, .22);
    }
    .ec-landing--classic_catalog .ec-landing-branch,
    .ec-landing--urban_offers .ec-landing-branch,
    .ec-landing--market_grid .ec-landing-branch,
    .ec-landing--tech_showcase .ec-landing-branch,
    .ec-landing--wholesale .ec-landing-branch {
        order: 1;
    }
    .ec-landing--classic_catalog .ec-landing-hero,
    .ec-landing--urban_offers .ec-landing-hero,
    .ec-landing--tech_showcase .ec-landing-hero,
    .ec-landing--wholesale .ec-landing-hero {
        order: 2;
    }
    .ec-landing--classic_catalog .ec-landing-section--categories,
    .ec-landing--wholesale .ec-landing-section--categories {
        order: 3;
    }
    .ec-landing--classic_catalog .ec-landing-section--products,
    .ec-landing--tech_showcase .ec-landing-section--products,
    .ec-landing--wholesale .ec-landing-section--products {
        order: 4;
    }
    .ec-landing--classic_catalog .ec-landing-benefits,
    .ec-landing--urban_offers .ec-landing-benefits,
    .ec-landing--wholesale .ec-landing-benefits {
        order: 5;
    }
    .ec-landing--urban_offers .ec-landing-hero {
        background-color: #111827;
        min-height: 280px;
    }
    .ec-landing--urban_offers .ec-landing-section--products {
        order: 3;
    }
    .ec-landing--urban_offers .ec-landing-section--categories {
        order: 4;
    }
    .ec-landing--urban_offers .ec-landing-product {
        border-color: rgba(249, 115, 22, .30);
        box-shadow: 0 14px 30px rgba(249, 115, 22, .08);
    }
    .ec-landing--urban_offers .ec-landing-product__body em {
        color: #f97316;
    }
    .ec-landing--minimal_brand .ec-landing-hero {
        background-color: #ffffff;
        border: 1px solid #e5e7eb;
        box-shadow: none;
        color: #111827;
        min-height: 300px;
    }
    .ec-landing--minimal_brand .ec-landing-hero,
    .ec-landing--minimal_brand .ec-landing-hero h1,
    .ec-landing--minimal_brand .ec-landing-kicker {
        color: #111827;
    }
    .ec-landing--minimal_brand .ec-landing-hero p {
        color: #334155;
    }
    .ec-landing--minimal_brand .ec-landing-kicker {
        background: rgba(17, 24, 39, .06);
        border-color: rgba(17, 24, 39, .12);
    }
    .ec-landing--minimal_brand .ec-landing-btn--secondary {
        background: #ffffff;
        border-color: #111827;
        color: #111827 !important;
    }
    .ec-landing--minimal_brand .ec-landing-branch {
        background: #ffffff;
        border: 1px solid #e5e7eb;
        box-shadow: none;
        color: #111827;
        margin-top: 1.2rem !important;
        order: 2;
    }
    .ec-landing--minimal_brand .ec-landing-branch__store {
        background: #f8fafc;
        border-color: #e5e7eb;
    }
    .ec-landing--minimal_brand .ec-landing-hero {
        order: 1;
    }
    .ec-landing--minimal_brand .ec-landing-section--categories {
        order: 3;
    }
    .ec-landing--minimal_brand .ec-landing-section--products {
        order: 4;
    }
    .ec-landing--minimal_brand .ec-landing-benefits {
        order: 5;
    }
    .ec-landing--minimal_brand .ec-landing-category,
    .ec-landing--minimal_brand .ec-landing-product,
    .ec-landing--minimal_brand .ec-landing-benefits {
        box-shadow: none;
    }
    .ec-landing--market_grid .ec-landing-section--categories {
        background: #f8fafc;
        border: 1px solid #e2e8f0;
        border-radius: 8px;
        margin-top: 1.2rem;
        order: 2;
        padding: 1.2rem 0 1.1rem;
    }
    .ec-landing--market_grid .ec-landing-section--categories .ec-landing-section__header {
        padding: 0 1.4rem;
    }
    .ec-landing--market_grid .ec-landing-hero {
        margin-top: 1.4rem;
        min-height: 260px;
        order: 3;
    }
    .ec-landing--market_grid .ec-landing-section--products {
        order: 4;
    }
    .ec-landing--market_grid .ec-landing-benefits {
        order: 5;
    }
    .ec-landing--market_grid .ec-landing-category {
        flex-basis: 250px;
        min-height: 148px;
    }
    .ec-landing--market_grid .ec-landing-category__media {
        height: 92px;
    }
    .ec-landing--tech_showcase .ec-landing-hero {
        background-color: #0f172a;
        border: 1px solid rgba(37, 99, 235, .22);
        min-height: 340px;
    }
    .ec-landing--tech_showcase .ec-landing-hero::after {
        background:
            radial-gradient(circle at 88% 24%, rgba(6, 182, 212, .24), transparent 26%),
            linear-gradient(120deg, rgba(255, 255, 255, .08), transparent 44%);
    }
    .ec-landing--tech_showcase .ec-landing-benefits {
        background: #0f172a;
        border-color: rgba(37, 99, 235, .22);
        color: #ffffff;
        order: 3;
    }
    .ec-landing--tech_showcase .ec-landing-benefits strong,
    .ec-landing--tech_showcase .ec-landing-benefits span {
        color: #ffffff;
    }
    .ec-landing--tech_showcase .ec-landing-benefits span {
        opacity: .78;
    }
    .ec-landing--tech_showcase .ec-landing-benefit__media {
        background: #ffffff;
        border-color: rgba(255, 255, 255, .75);
        color: #67e8f9;
    }
    .ec-landing--tech_showcase .ec-landing-section--categories {
        order: 5;
    }
    .ec-landing--home_deco .ec-landing-hero {
        min-height: 390px;
        order: 1;
    }
    .ec-landing--home_deco .ec-landing-branch {
        background: #ffffff;
        border: 1px solid #e5e7eb;
        box-shadow: 0 12px 28px rgba(22, 163, 74, .08);
        color: #1f2937;
        margin-top: 1.2rem !important;
        order: 2;
    }
    .ec-landing--home_deco .ec-landing-branch__store {
        background: rgba(22, 163, 74, .10);
        border-color: rgba(22, 163, 74, .20);
    }
    .ec-landing--home_deco .ec-landing-benefits {
        background: #fff7ed;
        border-color: #fed7aa;
        order: 3;
    }
    .ec-landing--home_deco .ec-landing-section--categories {
        order: 4;
    }
    .ec-landing--home_deco .ec-landing-section--products {
        order: 5;
    }
    .ec-landing--home_deco .ec-landing-category {
        box-shadow: 0 14px 30px rgba(22, 163, 74, .08);
    }
    .ec-landing--wholesale .ec-landing-hero {
        min-height: 235px;
        padding-bottom: 3rem;
        padding-top: 3rem;
    }
    .ec-landing--wholesale .ec-landing-hero h1 {
        font-size: 3.4rem;
        max-width: 720px;
    }
    .ec-landing--wholesale .ec-landing-products {
        grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    }
    .ec-landing--wholesale .ec-landing-product {
        min-height: 96px;
    }
    .ec-landing--wholesale .ec-landing-product__image {
        width: 88px;
    }
    .ec-landing--wholesale .ec-landing-product {
        grid-template-columns: 88px minmax(0, 1fr);
    }
    .ec-landing--wholesale .ec-landing-benefits {
        padding: 1rem;
    }
    @media (max-width: 991.98px) {
        .ec-landing-hero {
            grid-template-columns: 1fr;
            min-height: 0;
        }
        .ec-landing-benefits {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }
    @media (max-width: 575.98px) {
        .ec-landing-branch,
        .ec-landing-section__header {
            align-items: stretch;
            flex-direction: column;
        }
        .ec-landing-branch__store {
            width: 100%;
        }
        .ec-landing-hero {
            padding: 2.2rem 1.6rem;
        }
        .ec-landing-hero h1 {
            font-size: 2.8rem;
            line-height: 1.12;
        }
        .ec-landing-benefits {
            grid-template-columns: 1fr;
        }
        .ec-landing-products {
            grid-template-columns: 1fr;
        }
        .ec-landing-categories {
            padding-left: 3.6rem;
            padding-right: 3.6rem;
            scroll-padding: 3.6rem;
        }
        .ec-landing-category {
            flex-basis: min(76vw, 270px);
        }
        .ec-landing-category-arrow {
            height: 38px;
            width: 38px;
        }
    }

    /* ==========================================================================
       PLANTILLAS DE INICIO — identidad visual propia de cada una.
       Cada plantilla cambia estructura, densidad, forma y color, no solo el orden,
       para que al elegir se note la diferencia de un vistazo.
       ========================================================================== */

    /* --- 1) CLÁSICA: sobria, con barra de acento y tarjetas cuadradas --- */
    .ec-landing--classic_catalog .ec-landing-section__header {
        align-items: center;
        border-bottom: 2px solid #e5e7eb;
        padding-bottom: .8rem;
    }
    .ec-landing--classic_catalog .ec-landing-section__header h2 {
        border-left: 6px solid var(--landing-primary);
        font-size: 2.1rem;
        padding-left: .9rem;
    }
    .ec-landing--classic_catalog .ec-landing-section__header span { display: none; }
    .ec-landing--classic_catalog .ec-landing-product,
    .ec-landing--classic_catalog .ec-landing-category { border-radius: 4px; box-shadow: none; }
    .ec-landing--classic_catalog .ec-landing-hero { border-radius: 4px; }

    /* --- 2) OFERTAS: fondo oscuro, naranja, precios enormes, foto arriba --- */
    .ec-landing--urban_offers {
        background: #0b1020;
        border-radius: 10px;
        padding: 1.4rem 1.4rem 2.4rem;
    }
    .ec-landing--urban_offers .ec-landing-section__header h2 {
        color: #ffffff;
        font-size: 2.6rem;
        letter-spacing: .06em;
        text-transform: uppercase;
    }
    .ec-landing--urban_offers .ec-landing-section__header span { color: #f97316; text-transform: uppercase; }
    .ec-landing--urban_offers .ec-landing-hero h1 {
        font-size: 4.2rem;
        font-style: italic;
        letter-spacing: -.01em;
        text-transform: uppercase;
    }
    .ec-landing--urban_offers .ec-landing-categories { padding-left: 0; padding-right: 0; }
    .ec-landing--urban_offers .ec-landing-category {
        background: #151b2e;
        border: 1px solid rgba(249,115,22,.35);
        border-radius: 999px;
        color: #ffffff !important;
        flex: 0 0 auto;
        flex-direction: row;
        align-items: center;
        gap: .6rem;
        min-height: 0;
        padding: .5rem 1.3rem .5rem .5rem;
    }
    .ec-landing--urban_offers .ec-landing-category__media {
        border-radius: 999px; height: 38px; width: 38px; flex: 0 0 38px; font-size: 1.4rem;
    }
    .ec-landing--urban_offers .ec-landing-category-arrow { display: none; }
    .ec-landing--urban_offers .ec-landing-products { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
    .ec-landing--urban_offers .ec-landing-product {
        background: #151b2e;
        border-radius: 4px;
        color: #ffffff !important;
        grid-template-columns: minmax(0, 1fr);
        min-height: 0;
    }
    .ec-landing--urban_offers .ec-landing-product__image { height: 170px; width: 100%; }
    .ec-landing--urban_offers .ec-landing-product__body strong { color: #ffffff; font-size: 1.25rem; }
    .ec-landing--urban_offers .ec-landing-product__body em { font-size: 2.4rem; margin-top: .3rem; }

    /* --- 3) MINIMALISTA: blanco, sin sombras, líneas finas, mucho aire --- */
    .ec-landing--minimal_brand .ec-landing-section { margin-top: 4.2rem; }
    .ec-landing--minimal_brand .ec-landing-section__header { border-bottom: 1px solid #111827; padding-bottom: 1rem; }
    .ec-landing--minimal_brand .ec-landing-section__header h2 {
        font-size: 1.7rem; font-weight: 400; letter-spacing: .22em; text-transform: uppercase;
    }
    .ec-landing--minimal_brand .ec-landing-section__header span { display: none; }
    .ec-landing--minimal_brand .ec-landing-hero h1 { font-size: 4.6rem; font-weight: 300; letter-spacing: -.02em; }
    .ec-landing--minimal_brand .ec-landing-hero__copy { text-align: center; margin: 0 auto; }
    .ec-landing--minimal_brand .ec-landing-hero__actions { justify-content: center; }
    .ec-landing--minimal_brand .ec-landing-category {
        background: transparent; border: 0; border-radius: 0; flex: 0 0 auto; min-height: 0;
        border-bottom: 1px solid #111827; padding: .2rem .2rem .5rem;
    }
    .ec-landing--minimal_brand .ec-landing-category__media { display: none; }
    .ec-landing--minimal_brand .ec-landing-category-arrow { display: none; }
    .ec-landing--minimal_brand .ec-landing-products { gap: 3rem 2.2rem; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
    .ec-landing--minimal_brand .ec-landing-product {
        background: transparent; border: 0; border-radius: 0; grid-template-columns: minmax(0, 1fr); min-height: 0;
    }
    .ec-landing--minimal_brand .ec-landing-product:hover { box-shadow: none; transform: none; }
    .ec-landing--minimal_brand .ec-landing-product__image { background: #f6f6f6; height: 230px; width: 100%; }
    .ec-landing--minimal_brand .ec-landing-product__body { padding: 1rem .2rem 0; }
    .ec-landing--minimal_brand .ec-landing-product__body strong {
        font-size: 1.1rem; font-weight: 500; letter-spacing: .1em; text-transform: uppercase;
    }
    .ec-landing--minimal_brand .ec-landing-product__body em { color: #111827; font-size: 1.2rem; font-weight: 500; }

    /* --- 4) MERCADO: categorías en grilla, todo compacto --- */
    .ec-landing--market_grid { background: #eef2f6; border-radius: 10px; padding: 1.2rem 1.2rem 2rem; }
    .ec-landing--market_grid .ec-landing-section { margin-top: 1.5rem; }
    .ec-landing--market_grid .ec-landing-section__header { margin-bottom: .8rem; }
    .ec-landing--market_grid .ec-landing-section__header h2 { font-size: 1.8rem; }
    .ec-landing--market_grid .ec-landing-categories {
        display: grid; gap: .7rem; grid-template-columns: repeat(6, minmax(0, 1fr));
        overflow: visible; padding: 0; white-space: normal;
    }
    .ec-landing--market_grid .ec-landing-category { border-radius: 6px; flex: initial; min-height: 0; }
    .ec-landing--market_grid .ec-landing-category__media { height: 96px; }
    .ec-landing--market_grid .ec-landing-category-arrow { display: none; }
    .ec-landing--market_grid .ec-landing-products { gap: .7rem; grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .ec-landing--market_grid .ec-landing-product {
        border-radius: 6px; grid-template-columns: minmax(0, 1fr); min-height: 0;
    }
    .ec-landing--market_grid .ec-landing-product__image { height: 118px; width: 100%; }
    .ec-landing--market_grid .ec-landing-product__body { padding: .6rem .7rem .8rem; }
    .ec-landing--market_grid .ec-landing-product__body strong { font-size: 1.05rem; }
    .ec-landing--market_grid .ec-landing-product__body em { font-size: 1.25rem; margin-top: .3rem; }

    /* --- 5) TECNOLOGÍA: oscuro con brillo, fotos grandes --- */
    .ec-landing--tech_showcase { background: #070b16; border-radius: 12px; padding: 1.4rem 1.4rem 2.6rem; }
    .ec-landing--tech_showcase .ec-landing-section__header h2 {
        color: #ffffff; font-size: 2rem; letter-spacing: .18em; text-transform: uppercase;
    }
    .ec-landing--tech_showcase .ec-landing-section__header span { color: #67e8f9; letter-spacing: .12em; text-transform: uppercase; }
    .ec-landing--tech_showcase .ec-landing-category {
        background: #0f172a; border: 1px solid rgba(103,232,249,.35); border-radius: 12px; color: #e2e8f0 !important;
    }
    .ec-landing--tech_showcase .ec-landing-category__media { background: #0b1220; color: #67e8f9; }
    .ec-landing--tech_showcase .ec-landing-products { gap: 1.6rem; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
    .ec-landing--tech_showcase .ec-landing-product {
        background: #0f172a; border: 1px solid rgba(103,232,249,.30); border-radius: 14px;
        box-shadow: 0 0 0 1px rgba(103,232,249,.06), 0 18px 40px rgba(6,182,212,.10);
        color: #e2e8f0 !important; grid-template-columns: minmax(0, 1fr); min-height: 0;
    }
    .ec-landing--tech_showcase .ec-landing-product__image { background: #0b1220; height: 240px; width: 100%; }
    .ec-landing--tech_showcase .ec-landing-product__body strong { color: #ffffff; font-size: 1.3rem; }
    .ec-landing--tech_showcase .ec-landing-product__body em { color: #67e8f9; font-size: 1.9rem; }

    /* --- 6) HOGAR: crema, esquinas muy redondas, fotos grandes --- */
    .ec-landing--home_deco { background: #faf5ef; border-radius: 26px; padding: 1.6rem 1.6rem 2.8rem; }
    .ec-landing--home_deco .ec-landing-section { margin-top: 3.4rem; }
    .ec-landing--home_deco .ec-landing-section__header { justify-content: center; text-align: center; }
    .ec-landing--home_deco .ec-landing-section__header h2 { font-size: 2.6rem; font-weight: 600; }
    .ec-landing--home_deco .ec-landing-section__header a { display: none; }
    .ec-landing--home_deco .ec-landing-hero { border-radius: 26px; }
    .ec-landing--home_deco .ec-landing-category {
        background: transparent; border: 0; border-radius: 0; flex: 0 0 150px; min-height: 0; text-align: center;
    }
    .ec-landing--home_deco .ec-landing-category__media {
        border-radius: 50%; height: 130px; margin: 0 auto .6rem; width: 130px;
    }
    .ec-landing--home_deco .ec-landing-products { gap: 2.2rem; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
    .ec-landing--home_deco .ec-landing-product {
        border: 0; border-radius: 22px; box-shadow: 0 14px 34px rgba(120, 83, 46, .10);
        grid-template-columns: minmax(0, 1fr); min-height: 0;
    }
    .ec-landing--home_deco .ec-landing-product__image { height: 250px; width: 100%; }
    .ec-landing--home_deco .ec-landing-product__body { padding: 1.3rem 1.4rem 1.6rem; }
    .ec-landing--home_deco .ec-landing-product__body strong { font-size: 1.4rem; font-weight: 600; }

    /* --- 7) MAYORISTA: lista tipo tabla, denso, sin adornos --- */
    .ec-landing--wholesale .ec-landing-section { margin-top: 1.6rem; }
    .ec-landing--wholesale .ec-landing-hero { border-radius: 4px; min-height: 170px; }
    .ec-landing--wholesale .ec-landing-hero h1 { font-size: 2.6rem; }
    .ec-landing--wholesale .ec-landing-section__header h2 { font-size: 1.7rem; letter-spacing: .04em; text-transform: uppercase; }
    .ec-landing--wholesale .ec-landing-category {
        border-radius: 4px; flex: 0 0 auto; flex-direction: row; align-items: center; gap: .6rem;
        min-height: 0; padding: .4rem 1rem .4rem .4rem;
    }
    .ec-landing--wholesale .ec-landing-category__media { height: 34px; width: 34px; flex: 0 0 34px; font-size: 1.3rem; }
    .ec-landing--wholesale .ec-landing-categories { padding-left: 0; padding-right: 0; }
    .ec-landing--wholesale .ec-landing-category-arrow { display: none; }
    .ec-landing--wholesale .ec-landing-products {
        background: #ffffff; border: 1px solid #e5e7eb; border-radius: 4px; gap: 0; grid-template-columns: minmax(0, 1fr);
    }
    .ec-landing--wholesale .ec-landing-product {
        border: 0; border-bottom: 1px solid #eef2f7; border-radius: 0;
        grid-template-columns: 78px minmax(0, 1fr) auto; min-height: 0;
    }
    .ec-landing--wholesale .ec-landing-product:hover { box-shadow: none; transform: none; background: #f8fafc; }
    .ec-landing--wholesale .ec-landing-product__image { height: 78px; width: 78px; }
    .ec-landing--wholesale .ec-landing-product__body {
        align-items: center; display: grid; gap: 1rem; grid-column: 2 / -1;
        grid-template-columns: minmax(0, 1fr) auto; padding: .7rem 1.1rem;
    }
    .ec-landing--wholesale .ec-landing-product__body strong { font-size: 1.15rem; -webkit-line-clamp: 1; }
    .ec-landing--wholesale .ec-landing-product__body em {
        font-size: 1.6rem; margin-top: 0; text-align: right;
    }

    @media (max-width: 991px) {
        .ec-landing--market_grid .ec-landing-categories,
        .ec-landing--market_grid .ec-landing-products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    }
    @media (max-width: 575px) {
        .ec-landing--market_grid .ec-landing-categories,
        .ec-landing--market_grid .ec-landing-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .ec-landing--wholesale .ec-landing-product__body { grid-template-columns: minmax(0, 1fr); }
        .ec-landing--wholesale .ec-landing-product__body em { text-align: left; }
    }
