/*
Theme Name: Tishman Divi 5 Child
Theme URI: https://tishmanlightinguii.com.mx/
Author: Tishman Lighting Uii
Author URI: https://tishmanlightinguii.com.mx/
Description: Child Theme de Divi 5 para Tishman Lighting Uii con soporte completo de WooCommerce B2B, buscador predictivo, fichas técnicas y Visual Builder de Divi 5.
Version: 1.1.3
Template: Divi
Text Domain: tishman
*/

:root {
    /* Colors */
    --color-red: #dd1a19;
    --color-red-dark: #b51413;
    --color-orange: #ef8418;
    --color-orange-light: #f59c3f;
    --color-dark: #25262a;
    --color-darker: #18191c;
    --color-white: #ffffff;
    --color-light-bg: #f5f5f7;
    --color-gray-100: #ededf0;
    --color-gray-300: #c8c8d0;
    --color-gray-500: #7a7a85;
    --color-gray-700: #44454d;

    /* Gradients */
    --gradient-brand: linear-gradient(135deg, var(--color-red) 0%, var(--color-orange) 100%);
    --gradient-brand-horizontal: linear-gradient(90deg, var(--color-red) 0%, var(--color-orange) 100%);
    --gradient-dark: linear-gradient(180deg, var(--color-darker) 0%, var(--color-dark) 100%);

    /* Typography */
    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-heading: 'Montserrat', var(--font-sans);

    /* Spacing & Layout */
    --container-max: 1080px;
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 20px;
    --transition-smooth: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

#page-container {
    padding-top: 0 !important;
}
#main-content .container:before {
    display: none !important;
}

/* Garantizar visibilidad inmediata en elementos con animación de revelado sin afectar slides ocultos de WooCommerce FlexSlider */
html.tishman-has-animations #page-container *:not(.tishman-revealed):not(.woocommerce-product-gallery__image),
html.tishman-has-animations .et-db #et-boc .et-l *:not(.tishman-revealed):not(.woocommerce-product-gallery__image),
.tishman-will-reveal:not(.tishman-revealed) {
    opacity: 1 !important;
}

/* Neutralizar estilos base de botones de Divi para que rijan las clases de main.css */
body #page-container .et_pb_button:after,
body #page-container .et_pb_button:before {
    display: none !important;
}
:where(body #page-container .et_pb_button_module_wrapper) {
    margin-bottom: 0;
}

/* ==========================================================================
   1. Hero Carousel Nativo Divi 5 (divi/group-carousel + divi/group + divi/image)
   ========================================================================== */
body #page-container .tishman-hero-slider-section,
body #page-container .tishman-hero-slider-section > .et_pb_row {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}
body #page-container .tishman-hero-slider-section {
    background: #05070b !important;
    border-top: 9px solid #dd1a19 !important;
}
:where(body #page-container) .tishman-hero-carousel {
    margin: 0;
    padding: 0;
    position: relative;
}
body #page-container .tishman-hero-carousel .et_pb_group_carousel_slide > .et_pb_group.tishman-slide-canvas {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 2560 / 1000 !important;
    overflow: hidden !important;
    background: #05070b !important;
    padding: 0;
    margin: 0;
    display: block !important;
    --vertical-gap: 0px;
    --horizontal-gap: 0px;
}
:where(body #page-container .tishman-slide-canvas .et_pb_module) {
    margin: 0;
    padding: 0;
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-slide-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-slide-bg .et_pb_image_wrap,
body #page-container .tishman-slide-canvas .et_pb_image.tishman-slide-bg img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
:where(body #page-container .tishman-slide-canvas) .et_pb_group.tishman-slide-left-col {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    --vertical-gap: 0px;
    --horizontal-gap: 0px;
}
:where(body #page-container .tishman-slide-canvas) .et_pb_group.tishman-slide-mid-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
    --vertical-gap: 14px;
    --horizontal-gap: 14px;
    margin-left: 7%;
}
:where(body #page-container .tishman-slide-canvas) .et_pb_group.tishman-slide-sku-col {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    --vertical-gap: 0px;
    --horizontal-gap: 0px;
}
:where(body #page-container .tishman-slide-canvas) .et_pb_group.tishman-s5-sku-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 12px;
    --vertical-gap: 10px;
    --horizontal-gap: 12px;
    margin-left: 6%;
}
:where(body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-layer) {
    position: relative;
    z-index: 2;
    margin-left: 0;
    margin-right: auto;
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-layer a,
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-layer .et_pb_image_wrap,
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-layer img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-sku,
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-cta,
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-panel {
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), filter 0.25s ease;
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-sku:hover {
    transform: translateX(4px) scale(1.04);
    filter: brightness(1.08) drop-shadow(0 4px 12px rgba(239, 132, 24, 0.45));
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-cta:hover {
    transform: translateY(-2px) scale(1.03);
    filter: brightness(1.07) drop-shadow(0 8px 20px rgba(221, 26, 25, 0.45));
}
body #page-container .tishman-slide-canvas .et_pb_image.tishman-banner-panel:hover {
    transform: translateY(-4px) scale(1.015);
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.35));
}
/* Flechas y puntos del Hero Carousel iguales a tishmanlightinguii.com.mx */
body #page-container .tishman-hero-carousel .et_pb_group_carousel_arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    background: rgba(15, 23, 42, 0.65) !important;
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 20 !important;
    cursor: pointer !important;
}
body #page-container .tishman-hero-carousel .et_pb_group_carousel_arrow_prev {
    left: 18px !important;
}
body #page-container .tishman-hero-carousel .et_pb_group_carousel_arrow_next {
    right: 18px !important;
}
body #page-container .tishman-hero-carousel .et_pb_group_carousel_dots {
    position: absolute !important;
    bottom: 16px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 20 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
}
body #page-container .tishman-hero-carousel .et_pb_group_carousel_dot {
    width: 10px !important;
    height: 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.55) !important;
    transition: all 0.25s ease !important;
}
body #page-container .tishman-hero-carousel .et_pb_group_carousel_dot.et_pb_group_carousel_dot_active {
    width: 28px !important;
    background: #dd1a19 !important;
}

/* ==========================================================================
   2. Novedades Home Depot Cards en Inicio (.section-novedades-hd)
   ========================================================================== */
body #page-container .section-novedades-hd {
    padding: 60px 0 55px !important;
    background: #ffffff !important;
}
body #page-container .section-novedades-hd .novedades-title h2,
body #page-container .section-novedades-hd h2.novedades-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-align: center !important;
    letter-spacing: 0.02em !important;
    margin-bottom: 32px !important;
    padding-bottom: 0 !important;
}
body #page-container .tishman-hd-products-row {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    width: 92% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
body #page-container .tishman-hd-products-row::before,
body #page-container .tishman-hd-products-row::after {
    display: none !important;
}
@media (max-width: 1024px) {
    body #page-container .tishman-hd-products-row {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 600px) {
    body #page-container .tishman-hd-products-row {
        grid-template-columns: 1fr !important;
    }
}
body #page-container .tishman-hd-products-row > .et_pb_column.hd-product-card {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 16px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
}
body #page-container .hd-product-card .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .hd-product-card .et_pb_group.hd-card-header {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
    width: 100% !important;
}
body #page-container .hd-product-card .et_pb_group.hd-card-header .et_pb_text {
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}
body #page-container .hd-product-card .et_pb_group.hd-card-header .et_pb_text_inner,
body #page-container .hd-product-card .et_pb_group.hd-card-header .et_pb_text_inner p {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}
body #page-container .hd-product-card .hd-img-container {
    height: 190px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 14px !important;
}
body #page-container .hd-product-card .hd-img-container img {
    max-height: 175px !important;
    width: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}
body #page-container .hd-product-card .hd-product-title h3,
body #page-container .hd-product-card h3.hd-product-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    padding-bottom: 0 !important;
    margin-bottom: 10px !important;
}
body #page-container .hd-product-card .hd-price-block:not(.hd-price-block-locked) {
    width: 100% !important;
    margin-bottom: 12px !important;
    text-align: left !important;
}
body #page-container .hd-product-card .hd-price-amount {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    line-height: 1.15 !important;
}
body #page-container .hd-product-card .hd-price-subtext {
    display: block !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-top: 2px !important;
}
body #page-container .hd-product-card .hd-price-block-locked {
    width: 100% !important;
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    margin-bottom: 12px !important;
}
body #page-container .hd-product-card .hd-price-locked-tag {
    display: block !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #334155 !important;
    line-height: 1.35 !important;
}
body #page-container .hd-product-card .et_pb_button_module_wrapper {
    width: 100% !important;
    display: block !important;
}
body #page-container .et_pb_button.btn-hd-cart {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 10px 14px !important;
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    border-radius: 6px !important;
    border: none !important;
    text-align: center !important;
    box-shadow: 0 2px 6px rgba(221, 26, 25, 0.25) !important;
}
body #page-container .et_pb_button.btn-ver-todos {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #ffffff !important;
    color: #111827 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    padding: 8px 24px !important;
    border: 1.5px solid #111827 !important;
    border-radius: 9999px !important;
    text-decoration: none !important;
}
body #page-container .et_pb_button.btn-ver-todos:hover {
    background: #111827 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   3. Carrusel de Distribuidores en Inicio (divi/group-carousel)
   ========================================================================== */
body #page-container .section-brands-showcase {
    border-top: 6px solid #dd1a19 !important;
    padding: 48px 0 52px !important;
    background: #ffffff !important;
}
body #page-container .section-brands-showcase .brands-title h2,
body #page-container .section-brands-showcase h2.brands-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-align: center !important;
    margin-bottom: 28px !important;
    padding-bottom: 0 !important;
}
body #page-container .tishman-brands-carousel {
    position: relative !important;
    padding: 0 48px !important;
    margin: 0 auto 26px !important;
}
body #page-container .tishman-brands-carousel .et_pb_group_carousel_slide {
    padding: 0 10px !important;
    align-items: center !important;
    justify-content: center !important;
}
body #page-container .tishman-brands-carousel .et_pb_group.brand-item {
    height: 76px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 12px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}
body #page-container .tishman-brands-carousel .et_pb_group.brand-item img {
    max-height: 52px !important;
    max-width: 145px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    filter: grayscale(100%) !important;
    opacity: 0.82 !important;
    transition: all 0.25s ease !important;
}
body #page-container .tishman-brands-carousel .et_pb_group.brand-item:hover img {
    filter: grayscale(0%) !important;
    opacity: 1 !important;
}
body #page-container .tishman-brands-carousel .et_pb_group_carousel_arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08) !important;
    color: #475569 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
    cursor: pointer !important;
}
body #page-container .tishman-brands-carousel .et_pb_group_carousel_arrow_prev {
    left: 0 !important;
}
body #page-container .tishman-brands-carousel .et_pb_group_carousel_arrow_next {
    right: 0 !important;
}

/* ==========================================================================
   4. Banner Secundario de Proyecto (Inicio y Contacto)
   ========================================================================== */
body #page-container .section-secondary-banner {
    position: relative !important;
    background-size: cover !important;
    background-position: center !important;
    min-height: 450px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-bottom: 6px solid #dd1a19 !important;
}
body #page-container .section-secondary-banner.contact-hero-banner {
    min-height: 460px !important;
    border-bottom: none !important;
}
body #page-container .section-secondary-banner::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(10, 15, 28, 0.56) !important;
    z-index: 1 !important;
}
body #page-container .section-secondary-banner.contact-hero-banner::before {
    background: rgba(10, 10, 10, 0.45) !important;
}
body #page-container .section-secondary-banner > .et_pb_row {
    position: relative !important;
    z-index: 2 !important;
    text-align: center !important;
}
body #page-container .section-secondary-banner .project-banner-title,
body #page-container .section-secondary-banner .project-banner-title h1,
body #page-container .section-secondary-banner .project-banner-title h2,
body #page-container .section-secondary-banner h1.project-banner-title,
body #page-container .section-secondary-banner h2.project-banner-title {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 40px !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    text-align: center !important;
    max-width: 760px !important;
    margin: 0 auto 16px !important;
    padding-bottom: 0 !important;
}
body #page-container .section-secondary-banner.contact-hero-banner .project-banner-title,
body #page-container .section-secondary-banner.contact-hero-banner .project-banner-title h1,
body #page-container .section-secondary-banner.contact-hero-banner h1.project-banner-title {
    font-family: var(--font-sans) !important;
    font-size: clamp(2rem, 3.8vw, 3rem) !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.2 !important;
    max-width: 780px !important;
    margin: 0 auto 16px !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.7) !important;
}
body #page-container .section-secondary-banner .project-banner-desc {
    color: rgba(255, 255, 255, 0.92) !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    text-align: center !important;
    max-width: 650px !important;
    margin: 0 auto 28px !important;
}
body #page-container .section-secondary-banner.contact-hero-banner .project-banner-desc,
body #page-container .section-secondary-banner.contact-hero-banner .project-banner-desc p {
    font-family: var(--font-sans) !important;
    font-size: 1.15rem !important;
    line-height: 1.55 !important;
    color: #f3f4f6 !important;
    margin: 0 auto !important;
    max-width: 680px !important;
    font-weight: 400 !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.7) !important;
}
body #page-container .et_pb_button.btn-project-cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    padding: 13px 34px !important;
    border-radius: 8px !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(221, 26, 25, 0.45) !important;
}

/* ==========================================================================
   5. Hero Institucional Unificado (.dist-hero-section: Nosotros, Asesores, Distribuidores)
   ========================================================================== */
body #page-container .dist-hero-section {
    position: relative !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    min-height: 380px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    border-top: none !important;
    box-sizing: border-box !important;
}
body #page-container .dist-hero-section.has-hero-top-accent {
    border-top: 4px solid #dd1a19 !important;
}
body #page-container .has-bottom-red-stripe {
    border-bottom: 5px solid #dd1a19 !important;
}
body .et_pb_section.dist-hero-section {
    padding: 60px 20px;
}
body #page-container .dist-hero-section::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.45) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}
body #page-container .dist-hero-section > .et_pb_row {
    position: relative !important;
    z-index: 2 !important;
    max-width: 860px !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}
body .et_pb_row.dist-hero-content {
    padding: 0;
}
body #page-container .dist-hero-section > .et_pb_row > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}
body #page-container .dist-hero-section .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .dist-hero-section .dist-hero-title,
body #page-container .dist-hero-section .dist-hero-title h1,
body #page-container .dist-hero-section .dist-hero-title h2,
body #page-container .dist-hero-section .dist-hero-title .et_pb_module_header,
body #page-container .dist-hero-section h1.dist-hero-title {
    color: #ffffff !important;
    font-family: var(--font-sans) !important;
    font-size: 44px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    margin: 0 auto 16px auto !important;
    padding: 0 !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6) !important;
}
body #page-container .dist-hero-section .dist-hero-subtitle,
body #page-container .dist-hero-section .dist-hero-subtitle-wrap p {
    color: #f1f5f9 !important;
    font-family: var(--font-sans) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: center !important;
    max-width: 860px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6) !important;
}
@media (max-width: 640px) {
    body #page-container .dist-hero-section .dist-hero-title,
    body #page-container .dist-hero-section .dist-hero-title h1 {
        font-size: 32px !important;
    }
}

/* ==========================================================================
   6. Nosotros (.nosotros-section, .nosotros-card) y encabezados unificados
   ========================================================================== */
body .et_pb_row.nosotros-header-row {
    width: 100%;
    max-width: 1220px;
    margin: 0 auto 38px auto;
    padding: 0 24px;
    box-sizing: border-box;
}
body #page-container .nosotros-header-row::before,
body #page-container .nosotros-header-row::after {
    display: none !important;
}
body #page-container .nosotros-header-row > .et_pb_column.nosotros-section-header {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .nosotros-section-title {
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .nosotros-section-title h2,
body #page-container .nosotros-section-title .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 1.7rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    color: #111827 !important;
    text-transform: uppercase !important;
    line-height: 1.25 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .et_pb_group.nosotros-title-bar {
    width: 48px !important;
    height: 3px !important;
    min-height: 3px !important;
    background: #dd1a19 !important;
    margin: 12px auto 0 auto !important;
    padding: 0 !important;
    border-radius: 2px !important;
    display: block !important;
}

body #page-container .tishman-nosotros-grid-row {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    width: 92% !important;
    max-width: 1180px !important;
    margin: 0 auto 24px !important;
    padding: 0 !important;
}
body #page-container .tishman-nosotros-grid-row::before,
body #page-container .tishman-nosotros-grid-row::after {
    display: none !important;
}
body #page-container .tishman-nosotros-grid-row > .et_pb_column.nosotros-card {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 28px 26px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
    position: relative !important;
    overflow: hidden !important;
}
body #page-container .nosotros-card .nosotros-card-title h3,
body #page-container .nosotros-card h3.nosotros-card-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 4px 0 12px 0 !important;
    padding-bottom: 0 !important;
}
@media (max-width: 980px) {
    body #page-container .tishman-nosotros-grid-row {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   7. Soluciones (.page-header-banner, .solution-block)
   ========================================================================== */
body #page-container .page-header-banner {
    background: #0a0f1c !important;
    border-top: 6px solid #dd1a19 !important;
    padding: 75px 20px !important;
    text-align: center !important;
}
body #page-container .page-header-banner .page-header-title,
body #page-container .page-header-banner .page-header-title h1,
body #page-container .page-header-banner h1.page-header-title {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 40px !important;
    font-weight: 800 !important;
    text-align: center !important;
    margin: 14px auto 14px !important;
    padding-bottom: 0 !important;
}
body #page-container .page-header-banner .page-header-desc {
    color: #94a3b8 !important;
    text-align: center !important;
    max-width: 680px !important;
    margin: 0 auto !important;
}
body #page-container .tishman-solution-row {
    display: grid !important;
    grid-template-columns: 1.15fr 0.85fr !important;
    gap: 48px !important;
    align-items: center !important;
    width: 92% !important;
    max-width: 1180px !important;
    margin: 0 auto 64px !important;
}
body #page-container .tishman-solution-row.solution-block-reverse {
    grid-template-columns: 0.85fr 1.15fr !important;
}
body #page-container .tishman-solution-row::before,
body #page-container .tishman-solution-row::after {
    display: none !important;
}
body #page-container .tishman-solution-row > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}
body #page-container .tishman-solution-row .solution-specs li {
    color: #334155 !important;
    font-size: 14.5px !important;
    margin-bottom: 8px !important;
}
body #page-container .tishman-solution-row .et_pb_group.solution-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
    margin-top: 18px !important;
}
body #page-container .tishman-solution-row .et_pb_group.solution-visual .et_pb_text {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 !important;
}
body #page-container .tishman-solution-row .et_pb_group.solution-visual .et_pb_text_inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
    width: 100% !important;
}
body #page-container .et_pb_button.btn-outline {
    display: inline-flex !important;
    align-items: center !important;
    background: #ffffff !important;
    color: #dd1a19 !important;
    border: 1.5px solid #dd1a19 !important;
    border-radius: 6px !important;
    padding: 9px 20px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
}
body #page-container .et_pb_button.btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    background: #dd1a19 !important;
    color: #ffffff !important;
    border: 1.5px solid #dd1a19 !important;
    border-radius: 6px !important;
    padding: 9px 20px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
}

/* ==========================================================================
   8. Catálogo 2026 (.catalogo-hero-section, .catalogo-categories-section, .catalogo-open-book-section)
   ========================================================================== */
body #page-container .catalogo-hero-section {
    position: relative;
    width: 100%;
    min-height: 700px;
    border-top: 2px solid #dd1a19 !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box;
}
body .et_pb_section.catalogo-hero-section {
    padding: 90px 0 170px 0;
}
body #page-container .catalogo-hero-grid-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1060px !important;
    margin: 0 auto !important;
    position: relative;
    z-index: 2;
    box-sizing: border-box;
}
body .et_pb_row.catalogo-hero-grid-row {
    padding: 0 20px;
}
body #page-container .catalogo-hero-grid-row::before,
body #page-container .catalogo-hero-grid-row::after {
    display: none !important;
}
body #page-container .catalogo-hero-grid-row > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}
body #page-container .catalogo-hero-col-text {
    max-width: 520px !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}
body #page-container .catalogo-hero-col-text .et_pb_module {
    margin-bottom: 0 !important;
    width: 100%;
}
body #page-container .catalogo-hero-section .catalogo-hero-subtitle,
body #page-container .catalogo-hero-section .catalogo-hero-subtitle p,
body #page-container .catalogo-hero-section .catalogo-hero-subtitle h2 {
    font-family: var(--font-sans) !important;
    font-size: 32px !important;
    font-weight: 300 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.3px !important;
    text-align: center !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7) !important;
}
body #page-container .catalogo-hero-section .catalogo-hero-title,
body #page-container .catalogo-hero-section .catalogo-hero-title h1 {
    font-family: var(--font-sans) !important;
    font-size: 62px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 18px 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.5px !important;
    text-align: center !important;
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.85) !important;
}
body #page-container .catalogo-hero-section .catalogo-hero-desc,
body #page-container .catalogo-hero-section .catalogo-hero-desc p {
    font-family: var(--font-sans) !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, 0.92) !important;
    margin: 0 auto 30px auto !important;
    max-width: 480px !important;
    text-align: center !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.7) !important;
}
body #page-container .et_pb_button.catalogo-btn-download {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    font-family: var(--font-sans) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 12px 28px !important;
    border-radius: 9999px !important;
    border: none !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35) !important;
    text-decoration: none !important;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease, background-color 0.2s ease !important;
}
body #page-container .et_pb_button.catalogo-btn-download:hover {
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45) !important;
    background-color: #f8f9fa !important;
    color: #000000 !important;
}
body #page-container .catalogo-hero-col-mockup {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative;
}
body #page-container .catalogo-hero-book-img,
body #page-container .catalogo-hero-book-img .et_pb_image_wrap {
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
    display: block !important;
}
body #page-container .catalogo-hero-book-img img {
    width: 100% !important;
    max-width: 520px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 25px 45px rgba(0, 0, 0, 0.7)) !important;
    transition: transform 0.35s ease !important;
}
body #page-container .catalogo-hero-book-img:hover img {
    transform: scale(1.02) translateY(-4px) !important;
}

/* 2. Barra de Categorías Flotante con Glassmorphism */
body #page-container .catalogo-categories-section {
    position: relative !important;
    z-index: 10 !important;
    background: transparent !important;
}
body .et_pb_section.catalogo-categories-section {
    margin-top: -95px;
    padding: 0 20px 20px 20px;
}
body #page-container .catalogo-categories-grid-row {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 1040px !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 10 !important;
}
body .et_pb_row.catalogo-categories-grid-row {
    padding: 0;
}
body #page-container .catalogo-categories-grid-row::before,
body #page-container .catalogo-categories-grid-row::after {
    display: none !important;
}
body #page-container .catalogo-categories-grid-row > .et_pb_column.catalogo-category-card {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(248, 248, 248, 0.55) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    border-radius: 20px !important;
    box-shadow: 0px 10px 24px rgba(0, 0, 0, 0.18) !important;
    padding: 22px 14px 18px 14px !important;
    min-height: 155px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s ease, background 0.25s ease !important;
}
body #page-container .catalogo-categories-grid-row > .et_pb_column.catalogo-category-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0px 16px 32px rgba(0, 0, 0, 0.25) !important;
    background: rgba(255, 255, 255, 0.85) !important;
}
body #page-container .catalogo-category-card .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .catalogo-category-card .catalogo-card-icon,
body #page-container .catalogo-category-card .catalogo-card-icon .et_pb_image_wrap {
    width: 90px !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto !important;
}
body #page-container .catalogo-category-card .catalogo-card-icon {
    margin-bottom: 12px !important;
}
body #page-container .catalogo-category-card .catalogo-card-icon img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15)) !important;
    transition: transform 0.25s ease !important;
}
body #page-container .catalogo-category-card:hover .catalogo-card-icon img {
    transform: scale(1.06) !important;
}
body #page-container .catalogo-category-card .catalogo-card-label {
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    letter-spacing: 0.6px !important;
    color: #2b2b2b !important;
    text-transform: uppercase !important;
    text-align: center !important;
    margin: 0 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    display: block !important;
}
body #page-container .catalogo-category-card a.catalogo-card-label::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: 20px;
}

/* 3. Sección de Revista / Catálogo Abierto en Fondo Blanco */
body #page-container .catalogo-open-book-section {
    background-color: #ffffff !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border-bottom: 3px solid #dd1a19;
}
body .et_pb_section.catalogo-open-book-section {
    padding: 40px 20px 70px 20px;
}
body #page-container .catalogo-open-book-container {
    max-width: 1100px !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
}
body .et_pb_row.catalogo-open-book-container {
    padding: 0;
}
body #page-container .catalogo-open-book-container::before,
body #page-container .catalogo-open-book-container::after {
    display: none !important;
}
body #page-container .catalogo-open-book-frame,
body #page-container .catalogo-open-book-container > .et_pb_column.catalogo-open-book-frame {
    width: 72% !important;
    max-width: 860px !important;
    margin: 0 auto !important;
    float: none !important;
}
body #page-container .catalogo-open-book-img,
body #page-container .catalogo-open-book-img .et_pb_image_wrap,
body #page-container .catalogo-open-book-img img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
}
body #page-container .catalogo-open-book-img img {
    filter: drop-shadow(0 20px 35px rgba(0, 0, 0, 0.14)) !important;
}

@media (max-width: 991px) {
    body #page-container .catalogo-hero-section {
        min-height: 600px;
    }
    :where(body #page-container .catalogo-hero-section) {
        padding: 70px 0 120px 0;
    }
    body #page-container .catalogo-hero-section .catalogo-hero-title,
    body #page-container .catalogo-hero-section .catalogo-hero-title h1 {
        font-size: 46px !important;
    }
    body #page-container .catalogo-hero-section .catalogo-hero-subtitle,
    body #page-container .catalogo-hero-section .catalogo-hero-subtitle p {
        font-size: 26px !important;
    }
    body #page-container .catalogo-hero-book-img,
    body #page-container .catalogo-hero-book-img img {
        max-width: 420px !important;
    }
    body #page-container .catalogo-categories-grid-row {
        gap: 12px !important;
    }
    :where(body #page-container .catalogo-categories-section) {
        margin-top: -70px;
    }
    body #page-container .catalogo-category-card .catalogo-card-icon,
    body #page-container .catalogo-category-card .catalogo-card-icon .et_pb_image_wrap {
        width: 75px !important;
        height: 70px !important;
    }
    body #page-container .catalogo-category-card .catalogo-card-label {
        font-size: 13px !important;
    }
    body #page-container .catalogo-open-book-frame,
    body #page-container .catalogo-open-book-container > .et_pb_column.catalogo-open-book-frame {
        width: 88% !important;
    }
}

@media (max-width: 768px) {
    body #page-container .catalogo-hero-section {
        min-height: auto;
    }
    :where(body #page-container .catalogo-hero-section) {
        padding: 50px 0 110px 0;
    }
    body #page-container .catalogo-hero-grid-row {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    body #page-container .catalogo-categories-grid-row {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
    }
    body #page-container .catalogo-open-book-frame,
    body #page-container .catalogo-open-book-container > .et_pb_column.catalogo-open-book-frame {
        width: 96% !important;
    }
}

/* ==========================================================================
   9. Asesores Comerciales & Red de Distribuidores en Divi 5
   ========================================================================== */
body .et_pb_section.asesores-page-main {
    background-color: #ffffff;
    color: #1e293b;
    padding: 60px 0 80px 0;
}
body .et_pb_row.tishman-asesores-row {
    width: 100%;
    max-width: 1220px;
    margin: 0 auto 28px auto;
    padding: 0 24px;
    box-sizing: border-box;
}
body .et_pb_row.tishman-asesores-row.asesores-last-row {
    margin-bottom: 0;
}
body #page-container .tishman-asesores-row {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 28px !important;
    box-sizing: border-box !important;
}
body #page-container .tishman-asesores-row::before,
body #page-container .tishman-asesores-row::after,
body #page-container .tishman-dist-row::before,
body #page-container .tishman-dist-row::after {
    display: none !important;
}
body #page-container .tishman-asesores-row > .et_pb_column.asesor-card {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 16px !important;
    overflow: clip !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05) !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s ease !important;
}
body #page-container .tishman-asesores-row > .et_pb_column.asesor-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.12) !important;
    border-color: #cbd5e1 !important;
}
body #page-container .asesor-card .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .asesor-card .et_pb_image.asesor-photo-wrap,
body #page-container .asesor-card .et_pb_image.asesor-photo-wrap .et_pb_image_wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 360px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: linear-gradient(180deg, #182030 0%, #080c14 100%) !important;
    overflow: clip !important;
    border-radius: 0 !important;
}
body #page-container .asesor-card .et_pb_image.asesor-photo-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    border-radius: 0 !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
body #page-container .asesor-card:hover .et_pb_image.asesor-photo-wrap img {
    transform: scale(1.03) !important;
}
body #page-container .asesor-card .et_pb_group.asesor-card-body {
    padding: 22px 20px 20px 20px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
    flex-grow: 1 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
body #page-container .asesor-card .asesor-name {
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
}
body #page-container .asesor-card .asesor-name h3,
body #page-container .asesor-card .asesor-name .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    color: #111827 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    text-align: left !important;
}
body #page-container .asesor-card .asesor-region {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    color: #475569 !important;
    line-height: 1.45 !important;
    margin: 0 0 16px 0 !important;
    min-height: 40px !important;
}
body #page-container .asesor-card .asesor-icon {
    color: #dd1a19 !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
}
body #page-container .asesor-card .asesor-contacts-module,
body #page-container .asesor-card .asesor-contacts-module .et_pb_text_inner {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    width: 100% !important;
}
body #page-container .asesor-card .asesor-contacts-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 14px 0 !important;
    border-top: 1px solid #f1f5f9 !important;
    margin: 0 0 16px 0 !important;
    flex-grow: 1 !important;
}
body #page-container .asesor-card .asesor-contact-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-family: var(--font-sans) !important;
    font-size: 14px !important;
    color: #1e293b !important;
    line-height: 1.4 !important;
    min-inline-size: 0 !important;
}
body #page-container .asesor-card .asesor-contact-icon {
    color: #64748b !important;
    flex-shrink: 0 !important;
}
body #page-container .asesor-card .asesor-phone-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 4px !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    font-family: var(--font-sans) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    flex-shrink: 0 !important;
    line-height: 1 !important;
}
body #page-container .asesor-card .asesor-phone-badge.asesor-badge-cell {
    background: #fee2e2 !important;
    color: #b91c1c !important;
}
body #page-container .asesor-card .asesor-link {
    color: #1e293b !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.15s ease !important;
    min-inline-size: 0 !important;
}
body #page-container .asesor-card .asesor-link:hover {
    color: #dd1a19 !important;
}
body #page-container .asesor-card .asesor-email-link {
    word-break: break-all !important;
    font-size: 13px !important;
}
body #page-container .asesor-card .et_pb_group.asesor-card-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: auto 0 0 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
body #page-container .asesor-card .et_pb_group.asesor-card-actions .et_pb_button_module_wrapper {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .et_pb_button.btn-asesor-wa,
body #page-container .et_pb_button.btn-asesor-email {
    display: flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    padding: 10px 14px !important;
    border-radius: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}
body #page-container .et_pb_button.btn-asesor-wa::before,
body #page-container .et_pb_button.btn-asesor-wa::after,
body #page-container .et_pb_button.btn-asesor-email::before,
body #page-container .et_pb_button.btn-asesor-email::after {
    display: none !important;
    content: none !important;
}
body #page-container .et_pb_button.btn-asesor-wa {
    background-color: #25d366 !important;
    color: #ffffff !important;
    border: none !important;
}
body #page-container .et_pb_button.btn-asesor-wa:hover {
    background-color: #1eb956 !important;
    color: #ffffff !important;
    padding: 10px 14px !important;
}
body #page-container .et_pb_button.btn-asesor-email {
    background-color: #f1f5f9 !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0 !important;
}
body #page-container .et_pb_button.btn-asesor-email:hover {
    background-color: #e2e8f0 !important;
    color: #111827 !important;
    padding: 10px 14px !important;
}
@media (max-width: 992px) {
    body #page-container .tishman-asesores-row {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 24px !important;
    }
    body .et_pb_row.tishman-asesores-row {
        margin-bottom: 24px;
    }
    body .et_pb_row.tishman-asesores-row.asesores-last-row {
        margin-bottom: 0;
    }
}
@media (max-width: 640px) {
    body #page-container .tishman-asesores-row {
        grid-template-columns: 1fr !important;
        max-width: 440px !important;
    }
    body #page-container .asesor-card .et_pb_image.asesor-photo-wrap,
    body #page-container .asesor-card .et_pb_image.asesor-photo-wrap .et_pb_image_wrap {
        height: 380px !important;
    }
    body .et_pb_section.asesores-page-main {
        padding: 40px 0 60px 0;
    }
}

/* Red de Distribuidores Autorizados (/distribuidores/) */
body .et_pb_section.dist-grid-section {
    background-color: #ffffff;
    padding: 70px 20px 80px 20px;
}
body .et_pb_row.tishman-dist-row {
    width: 100%;
    max-width: 1220px;
    margin: 0 auto 32px auto;
    padding: 0;
    box-sizing: border-box;
}
body .et_pb_row.tishman-dist-row.dist-last-row {
    margin-bottom: 0;
}
body #page-container .tishman-dist-row {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 28px !important;
    box-sizing: border-box !important;
}
body #page-container .tishman-dist-row > .et_pb_column.dist-card {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 32px 24px 24px 24px !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    overflow: clip !important;
    box-sizing: border-box !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
}
body #page-container .tishman-dist-row > .et_pb_column.dist-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.09) !important;
    border-color: #cbd5e1 !important;
}
body #page-container .dist-card .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .dist-card .et_pb_image.dist-card-logo-wrap {
    width: 100% !important;
    height: 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 18px auto !important;
    padding: 0 !important;
}
body #page-container .dist-card .et_pb_image.dist-card-logo-wrap .et_pb_image_wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}
body #page-container .dist-card .et_pb_image.dist-card-logo-wrap img {
    max-width: 220px !important;
    max-height: 62px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
}
body #page-container .dist-card .dist-card-title {
    width: 100% !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .dist-card .dist-card-title h3,
body #page-container .dist-card .dist-card-title .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    line-height: 1.3 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-card .dist-card-address-module {
    width: 100% !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
}
body #page-container .dist-card .dist-card-address {
    font-family: var(--font-sans) !important;
    font-size: 13px !important;
    color: #64748b !important;
    text-align: center !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 40px !important;
}
body #page-container .dist-card .dist-card-contacts-module {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-card .dist-card-contacts {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
}
body #page-container .dist-card .dist-contact-row {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    line-height: 1.4 !important;
    color: #334155 !important;
    max-width: 100% !important;
    min-inline-size: 0 !important;
}
body #page-container .dist-card .dist-contact-icon {
    color: #475569 !important;
    flex-shrink: 0 !important;
}
body #page-container .dist-card .dist-phone-link,
body #page-container .dist-card .dist-email-link {
    color: #334155 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
    min-inline-size: 0 !important;
    word-break: break-word !important;
}
body #page-container .dist-card .dist-phone-link:hover,
body #page-container .dist-card .dist-email-link:hover {
    color: #dd1a19 !important;
}
body #page-container .dist-card .dist-card-footer-module {
    margin: auto 0 0 0 !important;
    padding: 0 !important;
    width: 100% !important;
}
body #page-container .dist-card .dist-card-footer {
    border-top: none !important;
    padding: 10px 0 0 0 !important;
    margin: 0 !important;
    width: 100% !important;
    text-align: center !important;
}
body #page-container .dist-card .dist-web-link {
    display: inline-block !important;
    font-family: var(--font-sans) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #dd1a19 !important;
    text-decoration: none !important;
    word-break: break-all !important;
    transition: opacity 0.15s ease, text-decoration 0.15s ease !important;
}
body #page-container .dist-card .dist-web-link:hover {
    text-decoration: underline !important;
    opacity: 0.85 !important;
}

/* 3. Banner Intermedio: Distribuidor Autorizado (.dist-authorized-banner) */
body .et_pb_section.dist-authorized-banner {
    padding: 60px 20px;
}
body #page-container .dist-authorized-banner {
    position: relative !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    text-align: center !important;
    border-top: 5px solid #dd1a19 !important;
    box-sizing: border-box !important;
}
body #page-container .dist-authorized-banner::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.55) !important;
    pointer-events: none !important;
    z-index: 1 !important;
    display: block !important;
}
body .et_pb_row.dist-authorized-container {
    width: 100%;
    max-width: 820px;
    margin: 0 auto;
    padding: 0;
}
body #page-container .dist-authorized-container {
    position: relative !important;
    z-index: 2 !important;
}
body #page-container .dist-authorized-container::before,
body #page-container .dist-authorized-container::after {
    display: none !important;
}
body #page-container .dist-authorized-container > .et_pb_column.dist-authorized-col {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .dist-authorized-banner .et_pb_image.dist-authorized-badge-wrap {
    margin: 0 auto 20px auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}
body #page-container .dist-authorized-banner .et_pb_image.dist-authorized-badge-wrap .et_pb_image_wrap {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
body #page-container .dist-authorized-banner .et_pb_image.dist-authorized-badge-wrap img {
    max-width: 180px !important;
    width: 100% !important;
    height: auto !important;
    display: inline-block !important;
    filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.4)) !important;
}
body #page-container .dist-authorized-banner .dist-authorized-desc-module {
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-authorized-banner .dist-authorized-desc {
    color: #ffffff !important;
    font-family: var(--font-sans) !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8) !important;
}

/* 4. Sección de Orientación / Soporte (.dist-orientation-section) */
body .et_pb_section.dist-orientation-section {
    background-color: #ffffff;
    padding: 60px 20px 48px 20px;
    text-align: center;
}
body .et_pb_row.dist-orientation-container {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 0;
}
body #page-container .dist-orientation-container::before,
body #page-container .dist-orientation-container::after {
    display: none !important;
}
body #page-container .dist-orientation-container > .et_pb_column.dist-orientation-col {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .dist-orientation-section .dist-orientation-pretitle {
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .dist-orientation-section .dist-orientation-pretitle h3,
body #page-container .dist-orientation-section .dist-orientation-pretitle .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    color: #475569 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-orientation-section .dist-orientation-title {
    margin: 0 0 32px 0 !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .dist-orientation-section .dist-orientation-title h2,
body #page-container .dist-orientation-section .dist-orientation-title .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #1e293b !important;
    letter-spacing: 0.3px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-orientation-section .et_pb_group.dist-orientation-icons {
    display: flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 24px !important;
    column-gap: 24px !important;
    row-gap: 16px !important;
    flex-wrap: wrap !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
body #page-container .dist-orientation-section .et_pb_image.dist-icon-item {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: transform 0.2s ease, opacity 0.2s ease !important;
}
body #page-container .dist-orientation-section .et_pb_image.dist-icon-item:hover {
    transform: scale(1.1) !important;
    opacity: 0.9 !important;
}
body #page-container .dist-orientation-section .et_pb_image.dist-icon-item a,
body #page-container .dist-orientation-section .et_pb_image.dist-icon-item .et_pb_image_wrap {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
body #page-container .dist-orientation-section .et_pb_image.dist-icon-item img {
    display: block !important;
    width: auto !important;
    height: 44px !important;
    object-fit: contain !important;
}
body #page-container .dist-orientation-section .et_pb_image.dist-icon-item.dist-icon-clock img {
    height: 42px !important;
}

/* 5. Banner CTA: ¿Quieres formar parte de nuestra red? (.dist-cta-banner) */
body .et_pb_section.dist-cta-banner {
    padding: 70px 20px 80px 20px;
}
body #page-container .dist-cta-banner {
    position: relative !important;
    background-size: cover !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    border-top: 5px solid #dd1a19 !important;
    box-sizing: border-box !important;
}
body #page-container .dist-cta-banner::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.68) 55%, rgba(0, 0, 0, 0.25) 100%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
    display: block !important;
}
body .et_pb_row.dist-cta-container {
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
    padding: 0;
}
body #page-container .dist-cta-container {
    position: relative !important;
    z-index: 2 !important;
}
body #page-container .dist-cta-container::before,
body #page-container .dist-cta-container::after {
    display: none !important;
}
body #page-container .dist-cta-container > .et_pb_column.dist-cta-text-col {
    width: 100% !important;
    max-width: 620px !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
body #page-container .dist-cta-banner .dist-cta-title {
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
body #page-container .dist-cta-banner .dist-cta-title h2,
body #page-container .dist-cta-banner .dist-cta-title .et_pb_module_header {
    color: #ffffff !important;
    font-family: var(--font-sans) !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-cta-banner .dist-cta-desc-module {
    margin: 0 0 32px 0 !important;
    padding: 0 !important;
}
body #page-container .dist-cta-banner .dist-cta-desc {
    color: #e2e8f0 !important;
    font-family: var(--font-sans) !important;
    font-size: 15.5px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-cta-banner .et_pb_group.dist-cta-buttons {
    display: flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    column-gap: 16px !important;
    row-gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .dist-cta-banner .et_pb_group.dist-cta-buttons .et_pb_button_module_wrapper {
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .et_pb_button.dist-btn-primary,
body #page-container .et_pb_button.dist-btn-secondary {
    display: inline-flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 14px 28px !important;
    border-radius: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease !important;
}
body #page-container .et_pb_button.dist-btn-primary::before,
body #page-container .et_pb_button.dist-btn-primary::after,
body #page-container .et_pb_button.dist-btn-secondary::before,
body #page-container .et_pb_button.dist-btn-secondary::after {
    display: none !important;
    content: none !important;
}
body #page-container .et_pb_button.dist-btn-primary {
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(221, 26, 25, 0.35) !important;
}
body #page-container .et_pb_button.dist-btn-primary:hover {
    background: linear-gradient(90deg, #b91c1c 0%, #ea580c 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(239, 132, 24, 0.45) !important;
    color: #ffffff !important;
    padding: 14px 28px !important;
}
body #page-container .et_pb_button.dist-btn-secondary {
    background: transparent !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}
body #page-container .et_pb_button.dist-btn-secondary:hover {
    background: #ffffff !important;
    color: #111827 !important;
    border-color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25) !important;
    padding: 14px 28px !important;
}

@media (max-width: 1024px) {
    body #page-container .tishman-dist-row {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 640px) {
    body #page-container .tishman-dist-row {
        grid-template-columns: 1fr !important;
    }
    body #page-container .dist-orientation-section .dist-orientation-title h2,
    body #page-container .dist-orientation-section .dist-orientation-title .et_pb_module_header {
        font-size: 19px !important;
    }
    body #page-container .dist-cta-banner .dist-cta-title h2,
    body #page-container .dist-cta-banner .dist-cta-title .et_pb_module_header {
        font-size: 26px !important;
    }
    body #page-container .dist-cta-banner .et_pb_group.dist-cta-buttons {
        flex-direction: column !important;
        --flex-direction: column !important;
        align-items: stretch !important;
    }
    body #page-container .dist-cta-banner .et_pb_group.dist-cta-buttons .et_pb_button_module_wrapper,
    body #page-container .et_pb_button.dist-btn-primary,
    body #page-container .et_pb_button.dist-btn-secondary {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* ==========================================================================
   10. Formularios de Contacto Nativos Divi 5 (.tishman-native-contact-form)
   ========================================================================== */
body .et_pb_section.contact-page-wrapper {
    padding: 0 0 20px 0;
}
body #page-container .contact-page-container.et_pb_row {
    max-width: 780px !important;
    width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}
body .et_pb_row.contact-page-container {
    padding: 0 20px;
}
body #page-container .contact-page-container.quero-distribuidor-container.et_pb_row,
body #page-container .contact-page-container.quiero-distribuidor-container.et_pb_row {
    max-width: 940px !important;
}
body #page-container .contact-page-container > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}
body #page-container .contact-page-container .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .contact-title-gradient,
body #page-container .contact-title-gradient h1,
body #page-container .contact-title-gradient h2 {
    font-family: var(--font-sans) !important;
    font-size: 42px !important;
    font-weight: 800 !important;
    text-align: center !important;
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    margin: 50px auto 10px auto !important;
    padding: 0 !important;
    letter-spacing: -0.5px !important;
    line-height: 1.2 !important;
}
body #page-container .contact-subtitle-desc,
body #page-container .contact-subtitle-desc p {
    font-family: var(--font-sans) !important;
    font-size: 15.5px !important;
    color: #334155 !important;
    text-align: center !important;
    margin: 0 auto 36px auto !important;
    padding: 0 !important;
    font-weight: 400 !important;
}
.tishman-native-contact-form .et_pb_contact_main_title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin-bottom: 20px !important;
}
.tishman-native-contact-form .et_pb_contact_form {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 18px 24px !important;
    margin: 0 !important;
}
@media (max-width: 767px) {
    .tishman-native-contact-form .et_pb_contact_form {
        grid-template-columns: 1fr !important;
    }
}
.tishman-native-contact-form .et_pb_contact_field {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    grid-column: span 1;
}
.tishman-native-contact-form .et_pb_contact_field[data-type="text"],
.tishman-native-contact-form .et_pb_contact_field[data-type="checkbox"],
.tishman-native-contact-form .et_pb_contact_field[data-type="radio"],
.tishman-native-contact-form .et_contact_bottom_container {
    grid-column: 1 / -1 !important;
}
.tishman-native-contact-form .et_pb_contact_form_label {
    display: block !important;
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin: 0 0 6px 0 !important;
}
.tishman-native-contact-form .et_pb_contact_field_options_title {
    display: none !important;
}
.tishman-native-contact-form .et_pb_contact_field[data-type="select"]::after {
    display: none !important;
}
.tishman-native-contact-form .et_pb_contact_field .input,
.tishman-native-contact-form .et_pb_contact_field select.et_pb_contact_select,
.tishman-native-contact-form .et_pb_contact_field textarea.et_pb_contact_message {
    width: 100% !important;
    background-color: #ffffff !important;
    border: 1px solid #111111 !important;
    border-radius: 12px !important;
    padding: 10px 16px !important;
    font-family: var(--font-sans) !important;
    font-size: 14px !important;
    color: #1e293b !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.tishman-native-contact-form .et_pb_contact_field select.et_pb_contact_select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    padding-right: 36px !important;
    cursor: pointer !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 320 512' fill='%2364748b'%3E%3Cpath d='M151.5 347.8L3.5 201c-4.7-4.7-4.7-12.3 0-17l19.8-19.8c4.7-4.7 12.3-4.7 17 0L160 282.7l119.7-118.5c4.7-4.7 12.3-4.7 17 0l19.8 19.8c4.7 4.7 4.7 12.3 0 17l-148 146.8c-4.7 4.7-12.3 4.7-17 0z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 12px 12px !important;
}
.tishman-native-contact-form .et_pb_contact_field textarea.et_pb_contact_message {
    min-height: 110px !important;
    resize: vertical !important;
}
.tishman-native-contact-form .et_pb_contact_field .input::placeholder,
.tishman-native-contact-form .et_pb_contact_field textarea.et_pb_contact_message::placeholder {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}
.tishman-native-contact-form .et_pb_contact_field .input:focus,
.tishman-native-contact-form .et_pb_contact_field select.et_pb_contact_select:focus,
.tishman-native-contact-form .et_pb_contact_field textarea.et_pb_contact_message:focus {
    border-color: #ef8418 !important;
    box-shadow: 0 0 0 3px rgba(239, 132, 24, 0.18) !important;
    outline: none !important;
}
.tishman-native-contact-form .et_pb_contact_field_options_list {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px 14px !important;
    margin-top: 6px !important;
}
@media (max-width: 767px) {
    .tishman-native-contact-form .et_pb_contact_field_options_list {
        grid-template-columns: 1fr !important;
    }
}
.tishman-native-contact-form .et_pb_contact_field_checkbox,
.tishman-native-contact-form .et_pb_contact_field_radio {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.tishman-native-contact-form .et_contact_bottom_container {
    display: flex !important;
    justify-content: center !important;
    float: none !important;
    width: 100% !important;
    margin-top: 6px !important;
    text-align: center !important;
}
.tishman-native-contact-form .et_pb_contact_submit {
    width: 320px !important;
    max-width: 100% !important;
    height: 44px !important;
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 0 28px !important;
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(221, 26, 25, 0.25) !important;
    margin: 0 !important;
}
body #page-container .et_pb_button.contact-btn-advisor {
    width: 320px !important;
    max-width: 100% !important;
    height: 44px !important;
    background: #000000 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 12px !important;
}
body #page-container .contact-footer-divider {
    width: 100% !important;
    height: 1px !important;
    background: #e2e8f0 !important;
    margin: 36px 0 16px 0 !important;
}
body #page-container .contact-footer-note {
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    color: #64748b !important;
    text-align: center !important;
    line-height: 1.5 !important;
    max-width: 650px !important;
    margin: 0 auto 60px auto !important;
    padding: 0 !important;
}

/* ==========================================================================
   11. Header y Footer Globales 100% Nativos en Divi 5 Theme Builder
   Usa selectores de clase simple (0,1,0) para superar el CSS base de Divi
   (.et_pb_section / .et_pb_row / .et_flex_group) permitiendo que los estilos
   por módulo generados por el Visual Builder de Divi 5 tengan prioridad.
   ========================================================================== */

/* Reset base de párrafos y módulos internos en Header y Footer */
.tishman-tb-header-section .et_pb_module,
.tishman-tb-footer-section .et_pb_module,
.tishman-tb-header-section .et_pb_column,
.tishman-tb-footer-section .et_pb_column,
.tishman-tb-header-section .et_pb_text_inner p,
.tishman-tb-footer-section .et_pb_text_inner p {
    margin: 0;
    padding: 0;
}

/* --- HEADER GLOBAL NATIVO DIVI 5 --- */
header.et-l--header {
    position: sticky;
    top: 0;
    z-index: 99999;
    width: 100%;
    background-color: #ffffff;
}
body.admin-bar header.et-l--header {
    top: var(--wp-admin--admin-bar--height, 32px);
}
@media screen and (max-width: 782px) {
    body.admin-bar header.et-l--header {
        top: var(--wp-admin--admin-bar--height, 46px);
    }
}
@media screen and (max-width: 600px) {
    body.admin-bar header.et-l--header {
        top: 0;
    }
}

#site-header.et_pb_section.tishman-tb-header-section {
    background-color: #ffffff;
    color: #333333;
    width: 100%;
    position: relative;
    top: 0 !important;
    border-bottom: 1px solid #e5e7eb;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.03);
    padding: 0;
    margin: 0;
    gap: 0;
    transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
#site-header.et_pb_section.tishman-tb-header-section.is-scrolled {
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
    border-bottom-color: #e2e8f0;
}

/* Fila 1 (Estilo Tecnolite): Logotipo + Buscador en Línea + Contacto Auxiliar + Sesión / Carrito Rectangular */
.tishman-header-tecnolite .tishman-tb-top-row {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 18px 16px 16px;
    border-bottom: 1px solid #eceef2;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 24px !important;
    max-height: 110px;
    opacity: 1;
    overflow: visible !important;
    position: relative;
    z-index: 45 !important;
    transition: max-height 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                opacity 0.22s ease,
                padding 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                border-color 0.2s ease;
}
#site-header.tishman-tb-header-section.is-scrolled #header-top-row.tishman-tb-top-row {
    max-height: 0 !important;
    min-height: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-bottom-width: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}
.tishman-header-top-left {
    width: auto !important;
    flex: 0 0 auto !important;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.logo-top-module .et_pb_image_wrap,
.logo-top-module img {
    height: 52px;
    max-height: 52px;
    width: auto;
    max-width: 175px;
    object-fit: contain;
    display: block;
}
.tishman-header-top-center {
    width: auto !important;
    flex: 1 1 auto !important;
    min-width: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    overflow: visible;
}
.tishman-tb-header-section .tishman-search-contact-group {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 22px;
    width: 100%;
    flex-wrap: nowrap;
    overflow: visible;
}
.tishman-tb-header-section .tishman-inline-search-module {
    flex: 1 1 350px;
    max-width: 395px;
    min-width: 200px;
    overflow: visible;
}
.tishman-inline-search {
    display: block;
    width: 100%;
    margin: 0;
}
.tishman-inline-search-form {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin: 0;
    padding: 0;
}
.inline-search-label {
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 13px;
    font-weight: 400;
    color: #4b5563;
    white-space: nowrap;
    cursor: pointer;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1;
}
.inline-search-box {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    height: 40px;
    background-color: #ffffff;
    border: 1px solid #c8cdd5;
    border-radius: 0;
    display: flex;
    align-items: center;
    padding: 0 4px 0 12px;
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.inline-search-box:hover {
    border-color: #8c939d;
}
.inline-search-box:focus-within {
    border-color: #dd1a19;
    outline: 2px solid rgba(221, 26, 25, 0.2);
    outline-offset: 0;
}
.inline-search-input {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    height: 100%;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 6px 0 0 !important;
    margin: 0 !important;
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 13px;
    font-weight: 400;
    color: #1f2937;
    appearance: none;
}
.inline-search-input::placeholder {
    color: #9ca3af;
    font-size: 13px;
    font-weight: 400;
}
.inline-search-input::-webkit-search-cancel-button {
    cursor: pointer;
}
.inline-search-spinner {
    margin-right: 4px;
}
.inline-search-submit {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    border: none;
    background: transparent;
    color: #6b7280;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 2px;
    transition: color 0.15s ease;
}
.inline-search-submit:hover {
    color: #dd1a19;
}
.inline-search-submit:focus-visible {
    outline: 2px solid #dd1a19;
    outline-offset: 1px;
}
.inline-live-search-dropdown {
    position: absolute;
    top: calc(100% + 5px);
    left: 0;
    right: 0;
    min-width: 340px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16), 0 4px 12px rgba(15, 23, 42, 0.08);
    z-index: 10050;
    overflow: hidden;
}
.inline-live-search-dropdown .live-search-meta,
.header-floating-search .live-search-meta {
    flex-wrap: wrap;
    row-gap: 4px;
}
.inline-live-search-dropdown .live-search-sku,
.header-floating-search .live-search-sku {
    white-space: nowrap;
}

/* Enlace auxiliar de contacto junto al buscador (posición Tecnolite) */
.tishman-tb-header-section .tishman-top-contact-module {
    flex: 0 0 auto;
}
.top-contact-box--tecnolite {
    display: inline-flex;
    align-items: center;
    gap: 0;
}
.top-aux-phone-link {
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 13px;
    font-weight: 400;
    color: #dd1a19 !important;
    text-decoration: none;
    white-space: nowrap;
    line-height: 1.3;
    transition: color 0.15s ease;
}
.top-aux-phone-link .top-aux-number {
    font-weight: 500;
}
.top-aux-phone-link:hover {
    color: #ef8418 !important;
    text-decoration: underline;
}
.top-aux-phone-link:focus-visible {
    outline: 2px solid #dd1a19;
    outline-offset: 2px;
}

/* Acciones Derecha Fila 1: Sesión apilada en 2 líneas + Botón Carrito Rectangular */
.tishman-header-top-right {
    width: auto !important;
    flex: 0 0 auto !important;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
}
.tishman-tb-header-section .top-actions-box {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    flex-wrap: nowrap;
    width: auto;
}
.user-greeting--stacked {
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.38;
    letter-spacing: 0.02em;
    color: #4b5563;
    text-transform: uppercase;
    text-align: left;
    white-space: nowrap;
}
.greeting-links--stacked {
    display: block !important;
}
.greeting-links--stacked a {
    color: #4b5563;
    text-decoration: none;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.02em;
    transition: color 0.15s ease;
}
.greeting-links--stacked a:hover {
    color: #dd1a19;
}
.greeting-links--stacked a:focus-visible {
    outline: 2px solid #dd1a19;
    outline-offset: 2px;
}
.user-greeting--stacked .user-highlight {
    font-size: 11.5px;
    font-weight: 600;
    color: #dd1a19;
    text-transform: none;
}

/* Botón Rectangular de Carrito en Paleta Tishman con Ícono + Contador ("0") */
.tishman-tb-header-section .header-cart-pill.header-cart-rect {
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%);
    color: #ffffff !important;
    border-radius: 2px !important;
    height: 42px;
    min-width: 84px;
    padding: 0 18px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    text-decoration: none;
    box-sizing: border-box;
    transition: filter 0.15s ease, transform 0.15s ease;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect:hover {
    filter: brightness(1.06);
    transform: translateY(-1px);
    opacity: 1;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect:focus-visible {
    outline: 2px solid #1f2937;
    outline-offset: 2px;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect .cart-svg-icon {
    width: 19px;
    height: 19px;
    color: #ffffff;
    flex-shrink: 0;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect .cart-count-number {
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 18px;
    font-weight: 500;
    color: #ffffff;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect.header-cart-pill-compact {
    height: 36px;
    min-width: 68px;
    padding: 0 13px;
    gap: 10px;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect.header-cart-pill-compact .cart-svg-icon {
    width: 17px;
    height: 17px;
}
.tishman-tb-header-section .header-cart-pill.header-cart-rect.header-cart-pill-compact .cart-count-number {
    font-size: 15px;
}

.tishman-tb-header-section .tishman-mobile-toggle-module {
    display: none;
}
.tishman-tb-header-section .tishman-header-triggers {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

/* Fila 2 (Estilo Tecnolite): Menú Principal Centrado en Rojo/Naranja + Mini-Logo/Acciones Sticky al Hacer Scroll */
.tishman-header-tecnolite .tishman-tb-nav-row {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 13px 16px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0 !important;
    min-height: 46px;
    position: relative;
    z-index: 25 !important;
    overflow: visible !important;
    transition: padding 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}
.tishman-header-tecnolite .sticky-addon-right {
    width: auto;
    flex: 0 0 auto;
    gap: 10px;
}
.tishman-header-tecnolite .header-floating-cart,
.tishman-header-tecnolite .header-floating-search {
    right: max(16px, calc((100% - 1140px) / 2 + 16px));
}
#site-header.tishman-tb-header-section.is-scrolled #header-nav-row.tishman-tb-nav-row {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}
.tishman-tb-nav-row > .header-brand-left {
    flex: 0 0 0px;
    width: 0;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    transition: max-width 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                width 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                flex-basis 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                opacity 0.22s ease;
}
#site-header.tishman-tb-header-section.is-scrolled .tishman-tb-nav-row > .header-brand-left {
    flex: 0 0 190px;
    width: 190px;
    max-width: 190px;
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
}
.logo-sticky-module .et_pb_image_wrap,
.logo-sticky-module img {
    height: 42px;
    max-height: 42px;
    width: auto;
    max-width: 155px;
    object-fit: contain;
    display: block;
}
.tishman-tb-nav-row > .nav-cluster-group {
    flex: 1 1 auto;
    width: auto;
    display: flex;
    flex-direction: row;
    justify-content: center !important;
    align-items: center;
    overflow: visible;
}
#site-header.tishman-tb-header-section.is-scrolled .tishman-tb-nav-row > .nav-cluster-group {
    justify-content: center !important;
}
.tishman-tb-nav-row > .tishman-sticky-addon-col {
    flex: 0 0 0px;
    width: 0;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    transition: max-width 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                width 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                flex-basis 0.32s cubic-bezier(0.16, 1, 0.3, 1),
                opacity 0.22s ease;
}
#site-header.tishman-tb-header-section.is-scrolled .tishman-tb-nav-row > .tishman-sticky-addon-col {
    flex: 0 0 190px;
    width: 190px;
    max-width: 190px;
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
}

/* Módulo Nativo Divi 5 Menu Centrado en Paleta Tishman (.tishman-native-d5-menu) */
.tishman-native-d5-menu,
.tishman-native-d5-menu .et_pb_menu_inner_container,
.tishman-native-d5-menu .et_pb_menu__wrap,
.tishman-native-d5-menu .et_pb_menu__menu,
.tishman-native-d5-menu .et-menu-nav {
    display: flex;
    width: 100%;
    margin: 0 !important;
    align-items: center;
    justify-content: center !important;
    overflow: visible;
}
.tishman-native-d5-menu .et_mobile_nav_menu {
    display: none !important;
}
.tishman-native-d5-menu ul.et-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
    gap: 36px;
    margin: 0;
    padding: 0;
}
.tishman-native-d5-menu ul.et-menu > li {
    display: inline-flex;
    align-items: center;
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
}
.tishman-native-d5-menu ul.et-menu > li > a {
    font-family: var(--font-sans, 'Inter', sans-serif);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.04em;
    color: #dd1a19 !important;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 0;
    line-height: 1;
    text-decoration: none;
    transition: color 0.15s ease, box-shadow 0.15s ease;
    opacity: 1;
}
.tishman-native-d5-menu ul.et-menu > li > a:hover {
    color: #ef8418 !important;
    opacity: 1 !important;
}
.tishman-native-d5-menu ul.et-menu > li > a:focus-visible {
    outline: 2px solid #dd1a19;
    outline-offset: 3px;
}
.tishman-native-d5-menu ul.et-menu > li > a[aria-current="page"],
.tishman-native-d5-menu ul.et-menu > li.current-menu-item > a,
.tishman-native-d5-menu ul.et-menu > li.current-menu-ancestor > a {
    color: #dd1a19 !important;
    font-weight: 700;
    box-shadow: inset 0 -2px 0 #dd1a19;
    opacity: 1 !important;
}
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children > a:first-child {
    padding-right: 0 !important;
}
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children > a:first-child::after {
    content: '' !important;
    position: static !important;
    display: inline-block !important;
    width: 11px !important;
    height: 11px !important;
    margin-left: 4px !important;
    background-color: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center / contain !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center / contain !important;
    transition: transform 0.2s ease !important;
}
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children:hover > a:first-child::after,
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children:focus-within > a:first-child::after {
    transform: rotate(180deg);
}
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children:hover > a:first-child,
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children:focus-within > a:first-child {
    color: #ef8418 !important;
    box-shadow: inset 0 -2px 0 #ef8418;
}
.tishman-native-d5-menu ul.et-menu > li > ul.sub-menu {
    position: absolute !important;
    top: calc(100% + 4px) !important;
    left: 0 !important;
    width: auto !important;
    min-width: 190px !important;
    background-color: #141414 !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45) !important;
    border-radius: 0 0 4px 4px !important;
    padding: 6px 0 !important;
    list-style: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(6px);
    transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.2s !important;
    z-index: 10000 !important;
    margin: 0 !important;
    display: block !important;
}
.tishman-native-d5-menu ul.et-menu > li > ul.sub-menu::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    height: 10px;
}
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children:hover > ul.sub-menu,
.tishman-native-d5-menu ul.et-menu > li.menu-item-has-children:focus-within > ul.sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0);
}
.tishman-native-d5-menu ul.et-menu > li > ul.sub-menu li {
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    width: 100% !important;
}
.tishman-native-d5-menu ul.et-menu > li > ul.sub-menu li a {
    display: block !important;
    width: 100% !important;
    padding: 9px 20px !important;
    font-size: 14px !important;
    color: #ffffff !important;
    font-weight: 500 !important;
    text-transform: none !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    transition: background-color 0.15s ease, color 0.15s ease, padding-left 0.15s ease !important;
    white-space: nowrap !important;
    border: none !important;
}
.tishman-native-d5-menu ul.et-menu > li > ul.sub-menu li a:hover {
    background-color: #222222 !important;
    color: #ef8418 !important;
    padding-left: 23px !important;
}

@media (max-width: 1080px) and (min-width: 961px) {
    .tishman-tb-top-row {
        gap: 14px !important;
    }
    .tishman-tb-header-section .tishman-search-contact-group {
        gap: 14px;
    }
    .top-aux-label {
        display: none;
    }
}

@media (max-width: 960px) {
    .tishman-header-tecnolite .tishman-tb-top-row {
        flex-wrap: wrap !important;
        padding: 10px 14px 12px !important;
        gap: 10px 12px !important;
        max-height: none !important;
        border-bottom: none !important;
    }
    #site-header.tishman-tb-header-section.is-scrolled #header-top-row.tishman-tb-top-row {
        max-height: none !important;
        height: auto !important;
        opacity: 1 !important;
        padding: 8px 14px !important;
        overflow: visible !important;
        pointer-events: auto !important;
    }
    #site-header.tishman-tb-header-section.is-scrolled #header-top-row.tishman-tb-top-row .tishman-header-top-center {
        display: none !important;
    }
    .tishman-header-tecnolite .tishman-header-top-left {
        order: 1;
    }
    .tishman-header-tecnolite .logo-top-module .et_pb_image_wrap,
    .tishman-header-tecnolite .logo-top-module img {
        height: 38px;
        max-height: 38px;
    }
    .tishman-header-tecnolite .tishman-header-top-right {
        order: 2;
        margin-left: auto;
    }
    .tishman-tb-header-section .top-actions-box {
        gap: 10px;
    }
    .tishman-header-tecnolite .user-greeting--stacked,
    .tishman-header-tecnolite .greeting-links--stacked a {
        font-size: 9.5px !important;
        line-height: 1.3 !important;
    }
    .tishman-tb-header-section .header-cart-pill.header-cart-rect {
        height: 36px !important;
        min-width: 64px !important;
        padding: 0 12px !important;
        gap: 8px !important;
    }
    .tishman-tb-header-section .header-cart-pill.header-cart-rect .cart-count-number {
        font-size: 15px !important;
    }
    .tishman-tb-header-section .tishman-mobile-toggle-module {
        display: flex;
    }
    .tishman-header-tecnolite .menu-toggle-mobile {
        display: flex !important;
        width: 36px;
        height: 36px;
        align-items: center;
        justify-content: center;
    }
    .tishman-header-tecnolite .tishman-header-top-center {
        order: 3;
        flex: 1 1 100% !important;
        width: 100% !important;
    }
    .tishman-tb-header-section .tishman-search-contact-group {
        width: 100%;
        gap: 10px;
    }
    .tishman-tb-header-section .tishman-inline-search-module {
        flex: 1 1 100%;
        max-width: 100%;
    }
    .tishman-header-tecnolite .tishman-inline-search-form {
        gap: 0 !important;
    }
    .tishman-header-tecnolite .inline-search-label {
        display: none !important;
    }
    .tishman-header-tecnolite .inline-search-input {
        font-size: 16px;
    }
    .tishman-tb-header-section .tishman-top-contact-module {
        display: none;
    }
    .tishman-header-tecnolite .inline-live-search-dropdown {
        min-width: 0;
        left: 0;
        right: 0;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row {
        display: none;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open {
        display: flex;
        flex-direction: column;
        gap: 14px;
        border-top: 1px solid #e2e8f0;
        padding: 16px;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open > .header-brand-left,
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open > .tishman-sticky-addon-col {
        display: none !important;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open .tishman-native-d5-menu ul.et-menu {
        flex-direction: column;
        gap: 12px;
        width: 100%;
        text-align: center;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open .tishman-native-d5-menu ul.et-menu > li {
        flex-direction: column;
        align-items: center;
        width: 100%;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open .tishman-native-d5-menu ul.et-menu > li > ul.sub-menu {
        position: static !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        background-color: #f8fafc !important;
        box-shadow: none !important;
        border: none !important;
        margin-top: 6px !important;
        width: 100% !important;
        border-radius: 6px !important;
    }
    .tishman-header-tecnolite .tishman-tb-nav-row.is-open .tishman-native-d5-menu ul.et-menu > li > ul.sub-menu li a {
        color: #334155 !important;
        text-align: center !important;
        font-size: 13px !important;
        padding: 7px 14px !important;
    }
}

/* --- FOOTER GLOBAL NATIVO DIVI 5 --- */
#colophon.et_pb_section.tishman-tb-footer-section {
    background-color: #181818;
    color: #ffffff;
    border-top: 4px solid #dd1a19;
    padding: 0;
    margin-top: auto;
    width: 100%;
    gap: 0;
}

/* Fila 1 Footer: Newsletter + Redes Sociales */
.tishman-tb-newsletter-row {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 28px 24px 22px;
    display: block;
}
.tishman-tb-footer-section .footer-newsletter-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
}
.tishman-tb-footer-section .footer-newsletter-heading,
.tishman-tb-footer-section .footer-newsletter-heading .et_pb_module_header {
    font-size: 1.45rem;
    font-weight: 600;
    color: #ffffff;
    margin: 0;
    padding: 0;
    letter-spacing: -0.2px;
}
.tishman-newsletter-form-module {
    flex: 1 1 320px;
    max-width: 500px;
}
.tishman-social-icons-module {
    width: auto;
    flex: 0 0 auto;
}

/* Fila 2 Footer: Columnas Principales */
.tishman-tb-columns-row {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 24px 45px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 36px;
    align-items: stretch;
}
.tishman-tb-columns-row > .footer-left-col {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
.tishman-tb-footer-section .footer-links-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 100%;
}
.tishman-tb-footer-section .footer-menu-section {
    display: flex;
    flex-direction: column;
}
.tishman-tb-footer-section .et_pb_heading.footer-col-title {
    border-bottom: none;
    margin: 0;
    padding: 0;
}
.tishman-tb-footer-section .footer-col-title .et_pb_module_header {
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin: 0 0 10px 0;
    padding: 0 0 5px 0;
    border-bottom: 2px solid #ef8418;
    display: block;
}
.tishman-tb-footer-section .footer-white-logo-box {
    margin-top: auto;
    margin-bottom: auto;
    padding: 24px 0 16px;
}
.tishman-tb-footer-section .footer-white-logo-box img {
    width: 175px;
    height: auto;
    display: block;
}
#colophon .footer-email-box {
    margin-top: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: auto;
}
#colophon .footer-email-box > .footer-email-icon-box {
    width: 26px;
    max-width: 26px;
    height: 26px;
    flex: 0 0 26px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
#colophon .footer-email-box > .tishman-footer-email-text {
    width: auto;
    flex: 0 1 auto;
    margin: 0;
}
.tishman-tb-footer-section .footer-email-icon-box img {
    width: 26px;
    height: 26px;
    object-fit: contain;
    display: block;
}
.tishman-tb-columns-row > .footer-right-col {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.tishman-tb-footer-section .footer-contact-title,
.tishman-tb-footer-section .footer-contact-title .et_pb_module_header {
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0;
    padding: 0;
}

/* Fila 3 Footer: Barra Inferior Copyright */
.tishman-tb-bottom-row {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 18px 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}
.tishman-tb-bottom-row > .tishman-footer-bottom-left,
.tishman-tb-bottom-row > .tishman-footer-bottom-right {
    width: auto;
    flex: 0 1 auto;
}

@media (max-width: 900px) {
    .tishman-tb-columns-row {
        grid-template-columns: 1fr;
    }
    .tishman-tb-footer-section .footer-links-grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   12. Catálogo WooCommerce (/productos/, Categorías y Ficha de Producto)
   ========================================================================== */

/* Contenedor de 1080px exacto igual a tishmanlightinguii.com.mx */
body .site-main .container,
body .shop-layout-container,
body .category-hero-banner .container {
    width: 100% !important;
    max-width: var(--container-max, 1080px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}

/* Hero Banner de /productos/ (Nativo Divi 5 en ID=6 y Fallback) */
body #page-container .shop-hero-banner.et_pb_section,
body .shop-hero-banner {
    position: relative;
    width: 100%;
    aspect-ratio: 1920 / 873;
    min-height: 480px;
    max-height: 640px;
    background-image: url('assets/images/Banner-Ventiladores.webp');
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    overflow: hidden;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}
body #page-container .shop-hero-banner.et_pb_section::before,
body .shop-hero-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.28) 0%, rgba(0, 0, 0, 0.45) 45%, rgba(0, 0, 0, 0.72) 100%);
    z-index: 1;
    pointer-events: none;
}
body #page-container .shop-hero-banner .shop-hero-container.et_pb_row,
body .shop-hero-banner .shop-hero-container {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    max-width: var(--container-max, 1080px) !important;
    padding: 48px 24px !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
}
body #page-container .shop-hero-banner .shop-hero-content.et_pb_column,
body .shop-hero-banner .shop-hero-content {
    max-width: 780px !important;
    width: 100% !important;
    margin: 0 auto !important;
    float: none !important;
}
body #page-container .shop-hero-banner .shop-hero-title,
body #page-container .shop-hero-banner .shop-hero-title h1,
body #page-container .shop-hero-banner .shop-hero-title .et_pb_module_header {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 800;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0 0 16px 0;
    padding: 0;
    line-height: 1.15;
    text-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
    text-align: center;
}
body #page-container .shop-hero-banner .shop-hero-desc,
body #page-container .shop-hero-banner .shop-hero-desc p {
    font-family: 'Inter', sans-serif;
    font-size: clamp(0.95rem, 1.5vw, 1.12rem);
    font-weight: 400;
    color: rgba(255, 255, 255, 0.92);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 660px;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
    text-align: center;
}

/* Barra superior de controles del catálogo (resultados, selector de orden y vista) */
body.woocommerce .shop-controls-bar .woocommerce-result-count,
body.woocommerce-page .shop-controls-bar .woocommerce-result-count,
body .shop-controls-bar p.woocommerce-result-count {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 500 !important;
    color: #64748b !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}
body.woocommerce .shop-controls-right .woocommerce-ordering,
body.woocommerce-page .shop-controls-right .woocommerce-ordering {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}
body.woocommerce .shop-controls-right .woocommerce-ordering select.orderby,
body.woocommerce-page .shop-controls-right .woocommerce-ordering select.orderby {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.88rem !important;
    font-weight: 500 !important;
    color: #334155 !important;
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    padding: 8px 14px !important;
    height: auto !important;
    cursor: pointer !important;
    outline: none !important;
}

/* Proteger Header y Footer de Theme Builder frente a colisión de post_class .product en single-product */
body.single-product header.et-l--header div.product.et_builder_inner_content,
body.single-product footer.et-l--footer div.product.et_builder_inner_content {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    background: transparent !important;
}

/* Ficha de Producto Individual (/producto/...): neutralizar CSS inline de Divi */
body.woocommerce.single-product #main div.product,
body.single-product .site-main > div.product {
    max-width: 1200px !important;
    margin: 30px auto 60px !important;
    padding: 0 20px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

/* Pestañas WooCommerce en Ficha de Producto (Descripción, Información adicional, Descargas) */
body.woocommerce.single-product div.product .woocommerce-tabs,
body.woocommerce #content-area div.product .woocommerce-tabs,
body.single-product div.product .woocommerce-tabs {
    width: 100% !important;
    clear: both !important;
    margin: 50px 0 0 0 !important;
    border: none !important;
    border-top: 1px solid #e2e8f0 !important;
    padding-top: 30px !important;
    background: transparent !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs,
body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs,
body.single-product div.product .woocommerce-tabs ul.wc-tabs {
    display: flex !important;
    gap: 32px !important;
    padding: 0 !important;
    margin: 0 0 24px 0 !important;
    border: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
    background: transparent !important;
    list-style: none !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs::before,
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs::after {
    display: none !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li,
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active,
body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li,
body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li.active {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 0 10px 0 !important;
    position: relative !important;
    float: none !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li::before,
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active::after {
    display: block !important;
    content: '' !important;
    position: absolute !important;
    bottom: -1px !important;
    left: 0 !important;
    width: 100% !important;
    height: 2px !important;
    background: #dd1a19 !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li a,
body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li a {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #64748b !important;
    padding: 0 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li:hover a {
    color: #dd1a19 !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active a,
body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li.active a {
    color: #0f172a !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs .panel,
body.woocommerce #content-area div.product .woocommerce-tabs .panel {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #475569 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs .panel h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs .panel ul {
    list-style: disc !important;
    margin: 0 0 16px 0 !important;
    padding: 0 0 0 40px !important;
    line-height: 1.7 !important;
}
body.woocommerce.single-product div.product .woocommerce-tabs .panel ul li {
    margin-bottom: 4px !important;
}

/* Productos Relacionados en Ficha de Producto */
body.woocommerce.single-product div.product .related.products > h2,
body.single-product .product .related h2 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 4px !important;
    text-align: center !important;
    color: #111827 !important;
    margin: 0 0 36px 0 !important;
    padding: 0 !important;
}

/* ==========================================================================
   13. Blog Lumínico (/blog/ y Entradas Individuales single.php)
   ========================================================================== */
body #page-container .blog-hero-banner {
    background-color: #e94f0e !important;
    border-top: 2px solid #dd1a19 !important;
    text-align: center !important;
    color: #ffffff !important;
    box-sizing: border-box;
}
body .et_pb_section.blog-hero-banner {
    padding: 44px 20px;
}
body #page-container .blog-hero-container {
    max-width: 860px !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}
body .et_pb_row.blog-hero-container {
    padding: 0;
}
body #page-container .blog-hero-container > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}
body #page-container .blog-hero-container .et_pb_module {
    margin-bottom: 0 !important;
}
body #page-container .blog-hero-banner .blog-hero-title,
body #page-container .blog-hero-banner .blog-hero-title h1,
body #page-container .blog-hero-banner .blog-hero-title .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 46px !important;
    font-weight: 900 !important;
    letter-spacing: 0.6px !important;
    color: #ffffff !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    line-height: 1.15 !important;
    text-transform: uppercase !important;
    text-align: center !important;
}
body #page-container .blog-hero-banner .blog-hero-desc,
body #page-container .blog-hero-banner .blog-hero-desc p {
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    margin: 0 auto !important;
    max-width: 660px !important;
    text-align: center !important;
}

body #page-container .blog-posts-section {
    background-color: #ffffff !important;
    min-height: 55vh;
}
body .et_pb_section.blog-posts-section {
    padding: 60px 0 100px 0;
}
body #page-container .blog-posts-container {
    max-width: 1200px !important;
    width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box;
}
body .et_pb_row.blog-posts-container {
    padding: 0 24px;
}
body #page-container .blog-posts-container > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
}
body #page-container .blog-posts-grid .blog-card.et_pb_post,
body #page-container .blog-posts-grid article.blog-card {
    background: #ffffff !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}
body #page-container .blog-posts-grid .blog-card.et_pb_post:hover,
body #page-container .blog-posts-grid article.blog-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.13) !important;
}
body #page-container .blog-posts-grid .blog-card h2.blog-card-title {
    font-family: var(--font-sans) !important;
    font-size: 17.5px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    color: #1a1a1a !important;
}
body #page-container .blog-posts-grid .blog-card h2.blog-card-title a {
    color: inherit !important;
    text-decoration: none !important;
}
body #page-container .blog-posts-grid .blog-card h2.blog-card-title a:hover {
    color: #e94f0e !important;
}
body #page-container .blog-posts-grid .blog-card .blog-card-excerpt p {
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
    color: #666666 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Protección de Entradas Individuales (.single-post-wrapper) frente a estilos de Divi */
body .single-post-wrapper .post-article-body.et_pb_post,
body .single-post-wrapper article.post-article-body {
    margin-bottom: 0 !important;
}
body .single-post-wrapper h1.post-title-exact {
    font-family: var(--font-sans) !important;
    font-size: 34px !important;
    font-weight: 700 !important;
    color: #222222 !important;
    line-height: 1.3 !important;
    margin: 0 auto 16px auto !important;
    padding: 0 !important;
    max-width: 680px !important;
    text-align: center !important;
    letter-spacing: -0.3px !important;
}
body .single-post-wrapper .post-content-body,
body .single-post-wrapper .post-content-body p {
    font-family: var(--font-sans) !important;
    font-size: 16px !important;
    line-height: 1.85 !important;
    color: #334155 !important;
}
body .single-post-wrapper .post-content-body p {
    margin-bottom: 24px !important;
    padding-bottom: 0 !important;
}

/* ==========================================================================
   14. Quiero ser Distribuidor (/quiero-ser-distribuidor/, ID=1172) en Divi 5
   ========================================================================== */
body #page-container .quiero-distribuidor-wrapper {
    background-color: #ffffff !important;
}
body .et_pb_section.quiero-distribuidor-wrapper {
    padding: 60px 20px 80px 20px;
}
body .et_pb_row.quiero-distribuidor-container {
    padding: 0;
}
body #page-container .quiero-distribuidor-wrapper .dist-header-intro-text,
body #page-container .quiero-distribuidor-wrapper .dist-intro-module p {
    font-family: var(--font-sans) !important;
    color: #475569 !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    max-width: 820px !important;
    margin: 0 auto 12px auto !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .quiero-distribuidor-wrapper .dist-header-callout-text,
body #page-container .quiero-distribuidor-wrapper .dist-callout-module p {
    font-family: var(--font-sans) !important;
    color: #0f172a !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    max-width: 800px !important;
    margin: 0 auto 28px auto !important;
    padding: 0 !important;
    text-align: center !important;
}
body #page-container .quiero-distribuidor-wrapper .et_pb_group.dist-form-header-badge {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 16px 24px !important;
    margin: 0 0 32px 0 !important;
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
body #page-container .quiero-distribuidor-wrapper .et_pb_group.dist-form-header-badge .dist-form-badge-title,
body #page-container .quiero-distribuidor-wrapper .et_pb_group.dist-form-header-badge h2,
body #page-container .quiero-distribuidor-wrapper .et_pb_group.dist-form-header-badge .et_pb_module_header {
    font-family: var(--font-sans) !important;
    color: #0f172a !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Protección del formulario extendido #tishman-distributor-form frente a estilos base de Divi */
body #page-container .quiero-distribuidor-wrapper #tishman-distributor-form p:empty,
body #page-container .quiero-distribuidor-wrapper #tishman-distributor-form br {
    display: none !important;
}
body #page-container .quiero-distribuidor-wrapper .dist-form-section {
    margin-bottom: 36px !important;
    padding-bottom: 28px !important;
    border-bottom: 1px solid #e2e8f0 !important;
}
body #page-container .quiero-distribuidor-wrapper h3.dist-section-title {
    font-family: var(--font-sans) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 22px 0 !important;
    padding: 0 !important;
    letter-spacing: -0.2px !important;
    line-height: 1.3 !important;
}
body #page-container .quiero-distribuidor-wrapper .dist-section-num {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #dd1a19 0%, #ff5500 100%) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    box-shadow: 0 2px 6px rgba(221, 26, 25, 0.35) !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-form-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 18px 24px !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-form-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-form-group-full {
    grid-column: 1 / -1 !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-label {
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-input-field,
body #page-container .quiero-distribuidor-wrapper .contact-textarea-field {
    width: 100% !important;
    border: 1px solid #111111 !important;
    border-radius: 12px !important;
    padding: 10px 16px !important;
    font-size: 14px !important;
    font-family: var(--font-sans) !important;
    color: #1e293b !important;
    background-color: #ffffff !important;
    box-sizing: border-box !important;
    outline: none !important;
    line-height: 1.45 !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-textarea-field {
    resize: vertical !important;
    min-height: 110px !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-input-field:focus,
body #page-container .quiero-distribuidor-wrapper .contact-textarea-field:focus {
    border-color: #ef8418 !important;
    box-shadow: 0 0 0 3px rgba(239, 132, 24, 0.18) !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-input-field[aria-invalid="true"],
body #page-container .quiero-distribuidor-wrapper .contact-textarea-field[aria-invalid="true"] {
    border-color: #dd1a19 !important;
    box-shadow: 0 0 0 3px rgba(221, 26, 25, 0.16) !important;
}

/* Accesibilidad por teclado en tarjetas de radio (.dist-radio-card): sobrescribe display:none de main.css */
body #page-container .quiero-distribuidor-wrapper .dist-radio-cards-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 6px !important;
}
body #page-container .quiero-distribuidor-wrapper .dist-radio-card {
    position: relative !important;
}
body #page-container .quiero-distribuidor-wrapper .dist-radio-card input[type="radio"].visually-hidden {
    display: block !important;
    position: absolute !important;
    clip-path: inset(50%) !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    white-space: nowrap !important;
}
body #page-container .quiero-distribuidor-wrapper .dist-radio-card input[type="radio"]:focus-visible + .dist-radio-card-box {
    outline: 2.5px solid #dd1a19 !important;
    outline-offset: 2px !important;
}

/* Botones de envío y asesor comercial + divisor y nota inferior */
body #page-container .quiero-distribuidor-wrapper .dist-actions-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 28px !important;
}
body #page-container .quiero-distribuidor-wrapper .contact-btn-submit {
    width: 320px !important;
    max-width: 100% !important;
    height: 44px !important;
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(221, 26, 25, 0.25) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
body #page-container .quiero-distribuidor-wrapper a.contact-btn-advisor {
    width: 320px !important;
    max-width: 100% !important;
    height: 44px !important;
    background: #000000 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    box-sizing: border-box !important;
}
body #page-container .quiero-distribuidor-wrapper a.contact-btn-advisor:hover {
    background: #1e293b !important;
    color: #ffffff !important;
}
body #page-container .quiero-distribuidor-wrapper .et_pb_group.contact-footer-divider {
    width: 100% !important;
    height: 1px !important;
    min-height: 1px !important;
    background: #e2e8f0 !important;
    margin: 36px 0 16px 0 !important;
    padding: 0 !important;
}
body #page-container .quiero-distribuidor-wrapper .quiero-dist-footer-note,
body #page-container .quiero-distribuidor-wrapper .quiero-dist-note-module p {
    font-family: var(--font-sans) !important;
    font-size: 13.5px !important;
    color: #64748b !important;
    text-align: center !important;
    line-height: 1.5 !important;
    max-width: 650px !important;
    margin: 0 auto 60px auto !important;
    padding: 0 !important;
}

@media (max-width: 980px) {
    body #page-container .quiero-distribuidor-wrapper .dist-radio-cards-grid {
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
    }
}
@media (max-width: 768px) {
    body #page-container .quiero-distribuidor-wrapper .contact-form-grid {
        grid-template-columns: 1fr !important;
    }
    body #page-container .quiero-distribuidor-wrapper .contact-btn-submit,
    body #page-container .quiero-distribuidor-wrapper a.contact-btn-advisor {
        width: 100% !important;
    }
}
@media (max-width: 540px) {
    body #page-container .quiero-distribuidor-wrapper .dist-radio-cards-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   11. Preguntas Frecuentes (/preguntas-frecuentes/) en Divi 5
   ========================================================================== */
body .et_pb_section.tishman-faq-section {
    background-color: #ffffff;
    padding: 90px 20px;
}
body .et_pb_row.tishman-faq-wrapper {
    position: relative;
    width: 100%;
    max-width: 860px;
    margin: 0 auto;
    padding: 10px 0 20px 0;
    box-sizing: border-box;
}
body #page-container .tishman-faq-wrapper::after {
    display: none !important;
    content: none !important;
}
body #page-container .tishman-faq-wrapper > .et_pb_column.tishman-faq-col {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .et_pb_module {
    margin-bottom: 0 !important;
}

/* Encabezado editorial con marca de agua "FAQs", título, línea degradada y logo */
body #page-container .tishman-faq-section .et_pb_group.tishman-faq-header {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 28px !important;
    column-gap: 28px !important;
    row-gap: 16px !important;
    margin: 0 0 44px 0 !important;
    padding: 18px 0 0 0 !important;
}
body #page-container .tishman-faq-section .et_pb_module.tishman-faq-watermark-module {
    position: absolute !important;
    top: -14px !important;
    left: -10px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    user-select: none !important;
    z-index: 0 !important;
}
body #page-container .tishman-faq-section .tishman-faq-watermark-module .et_pb_text_inner {
    position: static !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .tishman-faq-watermark {
    display: block !important;
    font-family: var(--font-sans) !important;
    font-size: 6.4rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    color: transparent !important;
    -webkit-text-stroke: 1.5px rgba(15, 23, 42, 0.06) !important;
    pointer-events: none !important;
    user-select: none !important;
    letter-spacing: 2px !important;
}
body #page-container .tishman-faq-section .et_pb_group.tishman-faq-title-block {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    --flex-direction: column !important;
    flex: 1 1 0% !important;
    min-inline-size: 0 !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .et_pb_heading.tishman-faq-main-title {
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .tishman-faq-main-title h1,
body #page-container .tishman-faq-section .tishman-faq-main-title .et_pb_module_header {
    font-family: var(--font-heading) !important;
    font-size: 2.45rem !important;
    font-weight: 800 !important;
    color: #d61f1f !important;
    margin: 0 !important;
    padding: 0 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.15 !important;
}
body #page-container .tishman-faq-section .et_pb_group.tishman-faq-title-line {
    display: block !important;
    height: 2.5px !important;
    min-height: 2.5px !important;
    background: linear-gradient(90deg, #dd1a19 0%, #ef8418 100%) !important;
    inline-size: 100% !important;
    border-radius: 2px !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .et_pb_image.tishman-faq-logo {
    position: relative !important;
    z-index: 1 !important;
    flex: 0 0 155px !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .tishman-faq-logo .et_pb_image_wrap,
body #page-container .tishman-faq-section .tishman-faq-logo img {
    display: block !important;
    inline-size: 100% !important;
    block-size: auto !important;
    margin: 0 !important;
}

/* Lista de preguntas y respuestas */
body #page-container .tishman-faq-section .et_pb_group.tishman-faq-list {
    display: flex !important;
    flex-direction: column !important;
    --flex-direction: column !important;
    gap: 28px !important;
    row-gap: 28px !important;
    position: relative !important;
    z-index: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .et_pb_group.tishman-faq-item {
    display: flex !important;
    flex-direction: column !important;
    --flex-direction: column !important;
    gap: 0 !important;
    row-gap: 0 !important;
    padding: 2px 0 !important;
    margin: 0 !important;
}
body #page-container .tishman-faq-section .et_pb_heading.tishman-faq-question {
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .tishman-faq-question h2,
body #page-container .tishman-faq-section .tishman-faq-question h3,
body #page-container .tishman-faq-section .tishman-faq-question .et_pb_module_header {
    font-family: var(--font-heading) !important;
    font-size: 1.22rem !important;
    font-weight: 700 !important;
    color: #e03e1a !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
    letter-spacing: -0.02em !important;
}
body #page-container .tishman-faq-section .et_pb_text.tishman-faq-answer {
    border-left: 2.5px solid #ef8418 !important;
    padding: 0 0 0 18px !important;
    margin: 0 0 0 4px !important;
}
body #page-container .tishman-faq-section .tishman-faq-answer .et_pb_text_inner {
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-faq-section .tishman-faq-answer p {
    font-family: var(--font-sans) !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #52525b !important;
    font-size: 1.02rem !important;
    line-height: 1.65 !important;
}
body #page-container .tishman-faq-section .tishman-faq-answer a {
    color: #dd1a19 !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

/* Barra institucional inferior */
body #page-container .tishman-faq-section .et_pb_group.tishman-faq-footer-bar {
    margin: 52px 0 0 0 !important;
    padding: 20px 0 0 0 !important;
    border-top: 1px solid #e2e8f0 !important;
    display: flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    column-gap: 16px !important;
    row-gap: 12px !important;
    font-family: var(--font-sans) !important;
    font-size: 0.85rem !important;
    color: #64748b !important;
}
body #page-container .tishman-faq-section .tishman-faq-company-module,
body #page-container .tishman-faq-section .tishman-faq-details-module,
body #page-container .tishman-faq-section .tishman-faq-company-module .et_pb_text_inner,
body #page-container .tishman-faq-section .tishman-faq-details-module .et_pb_text_inner {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
}
body #page-container .tishman-faq-section .tishman-faq-footer-company {
    font-family: var(--font-sans) !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    color: #d61f1f !important;
    letter-spacing: 0.2px !important;
    line-height: 1.5 !important;
}
body #page-container .tishman-faq-section .tishman-faq-footer-details {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 16px !important;
    column-gap: 16px !important;
    row-gap: 6px !important;
    font-family: var(--font-sans) !important;
    font-size: 0.85rem !important;
    color: #64748b !important;
    line-height: 1.5 !important;
}
body #page-container .tishman-faq-section .tishman-faq-footer-divider {
    color: #cbd5e1 !important;
}

@media (max-width: 768px) {
    body .et_pb_section.tishman-faq-section {
        padding: 60px 16px;
    }
    body #page-container .tishman-faq-section .et_pb_group.tishman-faq-header {
        flex-direction: column-reverse !important;
        --flex-direction: column-reverse !important;
        align-items: flex-start !important;
        gap: 16px !important;
        row-gap: 16px !important;
        margin-bottom: 32px !important;
    }
    body #page-container .tishman-faq-section .et_pb_group.tishman-faq-title-block {
        inline-size: 100% !important;
        flex: 0 0 auto !important;
    }
    body #page-container .tishman-faq-section .et_pb_module.tishman-faq-watermark-module {
        top: auto !important;
        bottom: 2px !important;
        left: -2px !important;
    }
    body #page-container .tishman-faq-section .tishman-faq-watermark {
        font-size: 4rem !important;
    }
    body #page-container .tishman-faq-section .tishman-faq-main-title h1,
    body #page-container .tishman-faq-section .tishman-faq-main-title .et_pb_module_header {
        font-size: 1.85rem !important;
    }
    body #page-container .tishman-faq-section .et_pb_image.tishman-faq-logo {
        flex: 0 0 auto !important;
        inline-size: 130px !important;
    }
    body #page-container .tishman-faq-section .tishman-faq-question h2,
    body #page-container .tishman-faq-section .tishman-faq-question h3,
    body #page-container .tishman-faq-section .tishman-faq-question .et_pb_module_header {
        font-size: 1.1rem !important;
    }
    body #page-container .tishman-faq-section .et_pb_group.tishman-faq-footer-bar {
        flex-direction: column !important;
        --flex-direction: column !important;
        align-items: flex-start !important;
    }
}

/* ==========================================================================
   12. Documentos Legales (/terminos-y-condiciones/) en Divi 5
   ========================================================================== */
body .et_pb_section.tishman-legal-section {
    background-color: #ffffff;
    padding: 90px 20px;
}
body .et_pb_row.tishman-legal-row {
    width: 100%;
    max-width: 940px;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}
body #page-container .tishman-legal-row::after {
    display: none !important;
    content: none !important;
}
body #page-container .tishman-legal-row > .et_pb_column.tishman-legal-col {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .et_pb_module {
    margin-bottom: 0 !important;
}

/* Encabezado principal (.entry-header / .entry-title) */
body #page-container .tishman-legal-section .et_pb_group.tishman-legal-entry-header {
    display: block !important;
    margin: 0 0 28px 0 !important;
    padding: 0 0 18px 0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
}
body #page-container .tishman-legal-section .et_pb_heading.tishman-legal-entry-title {
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .tishman-legal-entry-title h1,
body #page-container .tishman-legal-section .tishman-legal-entry-title .et_pb_module_header {
    font-family: var(--font-sans) !important;
    font-size: 2.35rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    letter-spacing: -0.02em !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Contenedor del documento legal y barra de metadatos */
body #page-container .tishman-legal-section .et_pb_group.tishman-legal-document {
    display: flex !important;
    flex-direction: column !important;
    --flex-direction: column !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #334155 !important;
    font-family: var(--font-sans) !important;
    font-size: 1.02rem !important;
    line-height: 1.75 !important;
    overflow-wrap: break-word !important;
}
body #page-container .tishman-legal-section .et_pb_group.legal-doc-header {
    display: flex !important;
    flex-direction: row !important;
    --flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    column-gap: 14px !important;
    row-gap: 10px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #dd1a19 !important;
    border-radius: 8px !important;
    padding: 14px 20px !important;
    margin: 0 0 32px 0 !important;
}
body #page-container .tishman-legal-section .legal-badge-module,
body #page-container .tishman-legal-section .legal-updated-module,
body #page-container .tishman-legal-section .legal-badge-module .et_pb_text_inner,
body #page-container .tishman-legal-section .legal-updated-module .et_pb_text_inner {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
}
body #page-container .tishman-legal-section .legal-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: var(--font-sans) !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    letter-spacing: 0.4px !important;
    line-height: 1.75 !important;
}
body #page-container .tishman-legal-section .legal-updated {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: var(--font-sans) !important;
    font-size: 0.88rem !important;
    color: #64748b !important;
    font-weight: 500 !important;
    line-height: 1.75 !important;
}

/* Cláusulas, subtítulos H2/H3 y párrafos */
body #page-container .tishman-legal-section .et_pb_group.legal-clause-group {
    display: flex !important;
    flex-direction: column !important;
    --flex-direction: column !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 38px 0 0 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .et_pb_heading.legal-h2-module {
    margin: 0 0 14px 0 !important;
    padding: 0 0 8px 0 !important;
    border-bottom: 2px solid #e2e8f0 !important;
}
body #page-container .tishman-legal-section .legal-h2-module h2,
body #page-container .tishman-legal-section .legal-h2-module .et_pb_module_header,
body #page-container .tishman-legal-section .legal-h2 {
    font-family: var(--font-sans) !important;
    font-size: 1.35rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    letter-spacing: -0.01em !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .et_pb_group.legal-subclause-group {
    display: flex !important;
    flex-direction: column !important;
    --flex-direction: column !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 26px 0 0 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .et_pb_heading.legal-h2-module + .et_pb_group.legal-subclause-group {
    margin-top: 12px !important;
}
body #page-container .tishman-legal-section .et_pb_heading.legal-h3-module {
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .legal-h3-module h3,
body #page-container .tishman-legal-section .legal-h3-module .et_pb_module_header,
body #page-container .tishman-legal-section .legal-h3 {
    font-family: var(--font-sans) !important;
    font-size: 1.12rem !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    letter-spacing: -0.02em !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .legal-intro-body .et_pb_text_inner,
body #page-container .tishman-legal-section .legal-clause-body .et_pb_text_inner {
    margin: 0 !important;
    padding: 0 !important;
    font-family: var(--font-sans) !important;
    font-size: 1.02rem !important;
    line-height: 1.75 !important;
    color: #334155 !important;
}
body #page-container .tishman-legal-section .tishman-legal-document p {
    font-family: var(--font-sans) !important;
    font-size: 1.02rem !important;
    line-height: 1.75 !important;
    color: #334155 !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
}
body #page-container .tishman-legal-section .tishman-legal-document strong {
    font-weight: 700 !important;
    color: inherit !important;
}
body #page-container .tishman-legal-section .legal-intro-body .et_pb_text_inner > *:first-child,
body #page-container .tishman-legal-section .legal-clause-body .et_pb_text_inner > *:first-child {
    margin-top: 0 !important;
}
body #page-container .tishman-legal-section .legal-intro-body .et_pb_text_inner > *:last-child,
body #page-container .tishman-legal-section .legal-clause-body .et_pb_text_inner > *:last-child {
    margin-bottom: 0 !important;
}

/* Listas con viñeta circular roja */
body #page-container .tishman-legal-section ul.legal-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 14px 0 22px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}
body #page-container .tishman-legal-section ul.legal-list li {
    position: relative !important;
    list-style: none !important;
    padding: 0 0 0 22px !important;
    margin: 0 !important;
    color: #334155 !important;
    font-size: 1.02rem !important;
    line-height: 1.65 !important;
}
body #page-container .tishman-legal-section ul.legal-list li::before {
    content: "" !important;
    position: absolute !important;
    left: 4px !important;
    top: 9px !important;
    width: 6px !important;
    height: 6px !important;
    background-color: #dd1a19 !important;
    border-radius: 50% !important;
}

/* Tablas responsivas legales */
body #page-container .tishman-legal-section .legal-table-responsive {
    width: 100% !important;
    overflow-x: auto !important;
    margin: 26px 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
}
body #page-container .tishman-legal-section .legal-table-responsive:focus-visible {
    outline: 2px solid #dd1a19 !important;
    outline-offset: 2px !important;
}
body #page-container .tishman-legal-section table.legal-table {
    width: 100% !important;
    border-collapse: collapse !important;
    border: none !important;
    margin: 0 !important;
    text-align: left !important;
    font-family: var(--font-sans) !important;
    font-size: 0.95rem !important;
}
body #page-container .tishman-legal-section table.legal-table th {
    background: #f1f5f9 !important;
    color: #0f172a !important;
    font-weight: 700 !important;
    padding: 12px 18px !important;
    border: none !important;
    border-bottom: 2px solid #cbd5e1 !important;
    line-height: 1.5 !important;
}
body #page-container .tishman-legal-section table.legal-table td {
    padding: 12px 18px !important;
    border: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    color: #334155 !important;
    line-height: 1.5 !important;
}
body #page-container .tishman-legal-section table.legal-table tr:nth-child(even) td {
    background: #f8fafc !important;
}
body #page-container .tishman-legal-section table.legal-table thead + tbody tr:nth-child(odd) td {
    background: #f8fafc !important;
}
body #page-container .tishman-legal-section table.legal-table thead + tbody tr:nth-child(even) td {
    background: #ffffff !important;
}

/* Enlaces y tarjetas de contacto corporativo */
body #page-container .tishman-legal-section .legal-link,
body #page-container .tishman-legal-section .tishman-legal-document a {
    color: #dd1a19 !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    transition: color 0.2s ease !important;
}
body #page-container .tishman-legal-section .legal-link:hover,
body #page-container .tishman-legal-section .tishman-legal-document a:hover {
    color: #b91c1c !important;
}
body #page-container .tishman-legal-section .legal-link:focus-visible,
body #page-container .tishman-legal-section .tishman-legal-document a:focus-visible {
    outline: 2px solid #dd1a19 !important;
    outline-offset: 2px !important;
    border-radius: 2px !important;
}
body #page-container .tishman-legal-section .et_pb_group.legal-contact-card,
body #page-container .tishman-legal-section .legal-contact-card {
    display: block !important;
    margin: 36px 0 0 0 !important;
    padding: 20px 24px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #ef8418 !important;
    border-radius: 8px !important;
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
}
body #page-container .tishman-legal-section .legal-contact-card .et_pb_text_inner,
body #page-container .tishman-legal-section .legal-contact-card p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
    color: #334155 !important;
}

@media (max-width: 768px) {
    body .et_pb_section.tishman-legal-section {
        padding: 56px 16px;
    }
    body #page-container .tishman-legal-section .tishman-legal-entry-title h1,
    body #page-container .tishman-legal-section .tishman-legal-entry-title .et_pb_module_header {
        font-size: 1.75rem !important;
    }
    body #page-container .tishman-legal-section .legal-h2-module h2,
    body #page-container .tishman-legal-section .legal-h2-module .et_pb_module_header {
        font-size: 1.18rem !important;
    }
    body #page-container .tishman-legal-section .et_pb_group.legal-contact-card,
    body #page-container .tishman-legal-section .legal-contact-card {
        padding: 16px 18px !important;
    }
}



