.elementor-368 .elementor-element.elementor-element-32a3015{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-4358414{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-52b4148{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-f443b06{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-f443b06.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-368 .elementor-element.elementor-element-3c6c4f1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-3c6c4f1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-368 .elementor-element.elementor-element-8cc6ba6{border-style:solid;border-radius:20px 20px 20px 20px;}.elementor-368 .elementor-element.elementor-element-8cc6ba6 .elementor-wrapper{--video-aspect-ratio:2.33333;}.elementor-368 .elementor-element.elementor-element-8cc6ba6 .elementor-custom-embed-play i{color:var( --e-global-color-5295db9 );font-size:90px;}.elementor-368 .elementor-element.elementor-element-8cc6ba6 .elementor-custom-embed-play svg{fill:var( --e-global-color-5295db9 );width:90px;height:90px;}.elementor-368 .elementor-element.elementor-element-8814364{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-368 .elementor-element.elementor-element-ff451dd{text-align:center;}.elementor-368 .elementor-element.elementor-element-ff451dd .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:700;color:#0033A0;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-368 .elementor-element.elementor-element-6e1d201{text-align:justify;font-family:"Montserrat", Sans-serif;font-weight:400;}.elementor-368 .elementor-element.elementor-element-f21dea1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-5dd64e5{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-4abf975{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-9343875{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-02acd89{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-c7c76d4.elementor-element{--align-self:center;}.elementor-368 .elementor-element.elementor-element-c7c76d4{text-align:center;}.elementor-368 .elementor-element.elementor-element-c7c76d4 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;color:#0033A0;}.elementor-368 .elementor-element.elementor-element-e9cc07d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-83d4ea7{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image-box .elementor-image-box-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-image-box:has(:hover) .elementor-image-box-title,
					 .elementor-widget-image-box:has(:focus) .elementor-image-box-title{color:var( --e-global-color-primary );}.elementor-widget-image-box .elementor-image-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-368 .elementor-element.elementor-element-8048bd6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-368 .elementor-element.elementor-element-8048bd6.elementor-position-right .elementor-image-box-img{margin-left:0px;}.elementor-368 .elementor-element.elementor-element-8048bd6.elementor-position-left .elementor-image-box-img{margin-right:0px;}.elementor-368 .elementor-element.elementor-element-8048bd6.elementor-position-top .elementor-image-box-img{margin-bottom:0px;}.elementor-368 .elementor-element.elementor-element-8048bd6 .elementor-image-box-wrapper .elementor-image-box-img{width:70%;}.elementor-368 .elementor-element.elementor-element-8048bd6 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-368 .elementor-element.elementor-element-8048bd6 .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:12px;font-weight:400;}.elementor-368 .elementor-element.elementor-element-c07aee7{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-0be6a0a.elementor-position-right .elementor-image-box-img{margin-left:0px;}.elementor-368 .elementor-element.elementor-element-0be6a0a.elementor-position-left .elementor-image-box-img{margin-right:0px;}.elementor-368 .elementor-element.elementor-element-0be6a0a.elementor-position-top .elementor-image-box-img{margin-bottom:0px;}.elementor-368 .elementor-element.elementor-element-0be6a0a .elementor-image-box-wrapper .elementor-image-box-img{width:70%;}.elementor-368 .elementor-element.elementor-element-0be6a0a .elementor-image-box-img img{transition-duration:0.3s;}.elementor-368 .elementor-element.elementor-element-0be6a0a .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:12px;font-weight:400;}.elementor-368 .elementor-element.elementor-element-559d2d3{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-2c933d2.elementor-position-right .elementor-image-box-img{margin-left:0px;}.elementor-368 .elementor-element.elementor-element-2c933d2.elementor-position-left .elementor-image-box-img{margin-right:0px;}.elementor-368 .elementor-element.elementor-element-2c933d2.elementor-position-top .elementor-image-box-img{margin-bottom:0px;}.elementor-368 .elementor-element.elementor-element-2c933d2 .elementor-image-box-wrapper .elementor-image-box-img{width:70%;}.elementor-368 .elementor-element.elementor-element-2c933d2 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-368 .elementor-element.elementor-element-2c933d2 .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:12px;font-weight:400;}.elementor-368 .elementor-element.elementor-element-ae59837{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:-30px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-ae59837.e-con{--align-self:center;}.elementor-368 .elementor-element.elementor-element-adfb460{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368 .elementor-element.elementor-element-baace36{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:10px 0px 0px 0px;}.elementor-368 .elementor-element.elementor-element-baace36 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;color:#0033A0;}.elementor-368 .elementor-element.elementor-element-137bbac{--e-image-carousel-slides-to-show:1;margin:-1px 0px calc(var(--kit-widget-spacing, 0px) + -21px) 0px;padding:0px 0px 0px 0px;}.elementor-368 .elementor-element.elementor-element-137bbac.elementor-element{--align-self:center;}.elementor-368 .elementor-element.elementor-element-137bbac .swiper-pagination-bullet{width:12px;height:12px;background:var( --e-global-color-65cf889 );}.elementor-368 .elementor-element.elementor-element-137bbac .swiper-pagination-bullet:not(.swiper-pagination-bullet-active){background:var( --e-global-color-primary );opacity:var( --e-global-color-primary );}.elementor-368 .elementor-element.elementor-element-137bbac .elementor-image-carousel-caption{text-align:center;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-368 .elementor-element.elementor-element-ff451dd .elementor-heading-title{font-size:23px;}.elementor-368 .elementor-element.elementor-element-6e1d201{font-size:14px;}.elementor-368 .elementor-element.elementor-element-8048bd6 .elementor-image-box-img{margin-bottom:0px;}.elementor-368 .elementor-element.elementor-element-0be6a0a .elementor-image-box-img{margin-bottom:0px;}.elementor-368 .elementor-element.elementor-element-2c933d2 .elementor-image-box-img{margin-bottom:0px;}.elementor-368 .elementor-element.elementor-element-baace36 .elementor-heading-title{font-size:18px;}.elementor-368 .elementor-element.elementor-element-137bbac{--e-image-carousel-slides-to-show:1;}}@media(min-width:768px){.elementor-368 .elementor-element.elementor-element-f443b06{--width:83.853%;}.elementor-368 .elementor-element.elementor-element-3c6c4f1{--width:46.012%;}.elementor-368 .elementor-element.elementor-element-9343875{--width:80%;}.elementor-368 .elementor-element.elementor-element-adfb460{--width:80%;}}@media(max-width:1024px) and (min-width:768px){.elementor-368 .elementor-element.elementor-element-3c6c4f1{--width:382.038px;}}/* Start custom CSS for container, class: .elementor-element-4abf975 *//* ============================================================
   🏢 SECCIÓN DE MARCAS - PROTECLINE (COMPLETA)
   ============================================================
   📌 ESTRUCTURA: Clases "TituloGeneral" y "ContImgTxt"
   🎨 PALETA: Naranja (#F26419), Azul (#0A1A3A), 
              Amarillo (#F9A825), Blanco (#FFFFFF)
   🔒 AISLADO: Solo afecta a las clases específicas
   ============================================================ */

/* ============================================================
   📝 FUENTE MONTSERRAT
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

/* ============================================================
   🛡️ CONTENEDOR PRINCIPAL - TituloGeneral
   ============================================================ */

/* --- FONDO Y ESTILOS DEL CONTENEDOR --- */
.TituloGeneral {
    position: relative !important;
    padding: 30px 0 20px 0 !important;
    background: linear-gradient(160deg, #F8FAFF 0%, #FFFFFF 100%) !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(10, 26, 58, 0.06) !important;
    z-index: 1 !important;
}

/* --- DECORACIÓN DE FONDO: CÍRCULO NARANJA --- */
.TituloGeneral::before {
    content: '' !important;
    position: absolute !important;
    top: -20% !important;
    right: -5% !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, rgba(242, 100, 25, 0.04) 0%, transparent 70%) !important;
    border-radius: 50% !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

/* --- DECORACIÓN DE FONDO: CÍRCULO AZUL --- */
.TituloGeneral::after {
    content: '' !important;
    position: absolute !important;
    bottom: -15% !important;
    left: -5% !important;
    width: 300px !important;
    height: 300px !important;
    background: radial-gradient(circle, rgba(0, 180, 216, 0.03) 0%, transparent 70%) !important;
    border-radius: 50% !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

/* --- ASEGURA QUE LOS ELEMENTOS INTERNOS ESTÉN POR ENCIMA --- */
.TituloGeneral .elementor-container {
    position: relative !important;
    z-index: 2 !important;
}

/* ============================================================
   📝 TÍTULO PRINCIPAL - H3
   ============================================================ */
.TituloGeneral .elementor-widget-heading.elementor-heading-title {
    font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #0033A0 !important;
    letter-spacing: 1.5px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    position: relative !important;
    display: inline-block !important;
    padding: 0 20px 15px 20px !important;
    margin: 0 auto 10px auto !important;
    width: 100% !important;
    max-width: 800px !important;
}

/* --- LÍNEA DECORATIVA (estilo logo) --- */
.TituloGeneral .elementor-widget-heading h3.elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 100px !important;
    height: 4px !important;
    background: linear-gradient(90deg, #F26419, #F9A825, #00B4D8) !important;
    border-radius: 4px !important;
    box-shadow: 0 2px 20px rgba(242, 100, 25, 0.2) !important;
}

/* --- SUBRAYADO SECUNDARIO --- */
.TituloGeneral .elementor-widget-heading h3.elementor-heading-title::before {
    content: '' !important;
    position: absolute !important;
    bottom: -4px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 50px !important;
    height: 2px !important;
    background: linear-gradient(90deg, #0A1A3A, #F26419) !important;
    border-radius: 4px !important;
    opacity: 0.5 !important;
}

/* ============================================================
   📦 CONTENEDOR DE IMÁGENES - ContImgTxt
   ============================================================ */

/* --- ESTILO DEL CONTENEDOR PRINCIPAL --- */
.ContImgTxt {
    position: relative !important;
    z-index: 2 !important;
    padding: 10px 0 5px 0 !important;
    margin: 0 !important;
}

/* --- CONTENEDOR DE CADA TARJETA --- */
.ContImgTxt .elementor-container .elementor-column .elementor-element-populated {
    padding: 12px !important;
}

/* --- ESTILO DEL WRAPPER DE IMAGEN BOX --- */
.ContImgTxt .elementor-image-box-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding: 20px 15px 18px 15px !important;
    background: #FFFFFF !important;
    border-radius: 16px !important;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    box-shadow: 0 2px 16px rgba(10, 26, 58, 0.05) !important;
    border: 1px solid rgba(10, 26, 58, 0.04) !important;
    height: 100% !important;
    min-height: 280px !important;
    position: relative !important;
    overflow: hidden !important;
}

/* --- BORDE SUPERIOR CON GRADIENTE --- */
.ContImgTxt .elementor-image-box-wrapper::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, #F26419, #F9A825, #00B4D8) !important;
    opacity: 0 !important;
    transition: opacity 0.4s ease !important;
    border-radius: 16px 16px 0 0 !important;
}

/* --- EFECTO HOVER DEL CONTENEDOR --- */
.ContImgTxt .elementor-image-box-wrapper:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 12px 40px rgba(10, 26, 58, 0.10) !important;
    border-color: rgba(242, 100, 25, 0.15) !important;
}

.ContImgTxt .elementor-image-box-wrapper:hover::before {
    opacity: 1 !important;
}

/* --- CUADRADO DECORATIVO (esquina) --- */
.ContImgTxt .elementor-image-box-wrapper::after {
    content: '' !important;
    position: absolute !important;
    top: -30px !important;
    right: -30px !important;
    width: 60px !important;
    height: 60px !important;
    background: linear-gradient(135deg, #F26419, #F9A825) !important;
    opacity: 0.04 !important;
    transform: rotate(45deg) !important;
    transition: all 0.4s ease !important;
    pointer-events: none !important;
    border-radius: 4px !important;
}

.ContImgTxt .elementor-image-box-wrapper:hover::after {
    opacity: 0.10 !important;
    transform: rotate(45deg) scale(1.2) !important;
}

/* ============================================================
   🖼️ ESTILO DE LA IMAGEN - TAMAÑO UNIFORME
   ============================================================ */

/* --- CONTENEDOR DE LA IMAGEN - TAMAÑO FIJO UNIFORME --- */
.ContImgTxt .elementor-image-box-img {
    width: 100% !important;
    max-width: 180px !important;  /* 🔧 AJUSTA ESTE VALOR PARA CAMBIAR EL TAMAÑO */
    height: 100px !important;     /* 🔧 AJUSTA ESTE VALOR PARA CAMBIAR LA ALTURA */
    margin: 0 auto 14px auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    position: relative !important;
    z-index: 1 !important;
    overflow: hidden !important;
}

/* --- ESTILO DE LA IMAGEN - SE ADAPTA SIN DEFORMARSE --- */
.ContImgTxt .elementor-image-box-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;  /* 🔥 Mantiene proporción sin deformar */
    border-radius: 12px !important;
    padding: 8px 12px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(10, 26, 58, 0.06) !important;
    box-shadow: 0 2px 12px rgba(10, 26, 58, 0.04) !important;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* --- EFECTO HOVER DE LA IMAGEN --- */
.ContImgTxt .elementor-image-box-wrapper:hover .elementor-image-box-img img {
    transform: scale(1.06) !important;
    border-color: rgba(242, 100, 25, 0.3) !important;
    box-shadow: 0 4px 20px rgba(242, 100, 25, 0.10) !important;
    background: #FFFFFF !important;
}

/* ============================================================
   📝 ESTILO DEL TÍTULO (h3)
   ============================================================ */

/* --- TÍTULO --- */
.ContImgTxt .elementor-image-box-content h3.elementor-image-box-title {
    font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0A1A3A !important;
    margin: 0 0 6px 0 !important;
    letter-spacing: 0.5px !important;
    transition: color 0.3s ease !important;
    position: relative !important;
    z-index: 1 !important;
}

/* --- LÍNEA DECORATIVA BAJO EL TÍTULO --- */
.ContImgTxt .elementor-image-box-content h3.elementor-image-box-title::after {
    content: '' !important;
    display: block !important;
    width: 35px !important;
    height: 3px !important;
    margin: 6px auto 0 auto !important;
    background: linear-gradient(90deg, #F26419, #F9A825) !important;
    border-radius: 3px !important;
    transition: width 0.4s ease !important;
}

/* --- EFECTO HOVER DEL TÍTULO --- */
.ContImgTxt .elementor-image-box-wrapper:hover .elementor-image-box-title {
    color: #F26419 !important;
}

.ContImgTxt .elementor-image-box-wrapper:hover .elementor-image-box-title::after {
    width: 50px !important;
}

/* ============================================================
   📝 ESTILO DE LA DESCRIPCIÓN
   ============================================================ */

/* --- DESCRIPCIÓN --- */
.ContImgTxt .elementor-image-box-content .elementor-image-box-description {
    font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #6B7A8F !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 5px !important;
    position: relative !important;
    z-index: 1 !important;
}

/* --- TEXTO DESTACADO EN DESCRIPCIÓN --- */
.ContImgTxt .elementor-image-box-content .elementor-image-box-description strong {
    color: #F26419 !important;
    font-weight: 600 !important;
}

/* --- ICONO DECORATIVO ANTES DE LA DESCRIPCIÓN --- */
.ContImgTxt .elementor-image-box-content .elementor-image-box-description::before {
    content: '◆ ' !important;
    color: #00B4D8 !important;
    font-size: 10px !important;
    opacity: 0.5 !important;
}

/* ============================================================
   📱 RESPONSIVE - AJUSTES PROFESIONALES
   ============================================================ */

/* --- Tablet (769-1024px) --- */
@media (max-width: 1024px) and (min-width: 769px) {
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title {
        font-size: 24px !important;
        padding: 0 15px 12px 15px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title::after {
        width: 80px !important;
        height: 3px !important;
    }
    
    .ContImgTxt .elementor-image-box-img {
        max-width: 150px !important;  /* 🔧 TAMAÑO TABLET */
        height: 85px !important;      /* 🔧 ALTURA TABLET */
        margin-bottom: 10px !important;
    }
    
    .ContImgTxt .elementor-image-box-img img {
        padding: 6px 10px !important;
        border-radius: 10px !important;
    }
    
    .ContImgTxt .elementor-image-box-content h3.elementor-image-box-title {
        font-size: 16px !important;
    }
    
    .ContImgTxt .elementor-image-box-content .elementor-image-box-description {
        font-size: 11px !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper {
        padding: 16px 12px 14px 12px !important;
        min-height: 240px !important;
    }
}

/* --- Móvil (481-768px) --- */
@media (max-width: 768px) {
    .TituloGeneral {
        padding: 20px 10px 15px 10px !important;
        border-radius: 16px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title {
        font-size: 20px !important;
        padding: 0 10px 10px 10px !important;
        letter-spacing: 1px !important;
        max-width: 100% !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title::after {
        width: 60px !important;
        height: 3px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title::before {
        width: 30px !important;
        height: 2px !important;
        bottom: -3px !important;
    }
    
    .ContImgTxt .elementor-image-box-img {
        max-width: 120px !important;  /* 🔧 TAMAÑO MÓVIL */
        height: 70px !important;      /* 🔧 ALTURA MÓVIL */
        margin-bottom: 10px !important;
    }
    
    .ContImgTxt .elementor-image-box-img img {
        padding: 4px 8px !important;
        border-radius: 8px !important;
    }
    
    .ContImgTxt .elementor-image-box-content h3.elementor-image-box-title {
        font-size: 14px !important;
        margin-bottom: 4px !important;
    }
    
    .ContImgTxt .elementor-image-box-content .elementor-image-box-description {
        font-size: 10.5px !important;
        line-height: 1.5 !important;
        padding: 0 2px !important;
    }
    
    .ContImgTxt .elementor-image-box-content .elementor-image-box-description::before {
        content: '' !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper {
        padding: 14px 10px 12px 10px !important;
        border-radius: 12px !important;
        min-height: 200px !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper::after {
        width: 40px !important;
        height: 40px !important;
        top: -20px !important;
        right: -20px !important;
    }
    
    .ContImgTxt .elementor-container .elementor-column .elementor-element-populated {
        padding: 6px !important;
    }
    
    /* --- 2 columnas en móvil --- */
    .ContImgTxt .elementor-container .elementor-column {
        flex: 0 0 50% !important;
        max-width: 50% !important;
        width: 50% !important;
    }
}

/* --- Móvil pequeño (≤480px) --- */
@media (max-width: 480px) {
    .TituloGeneral {
        padding: 15px 8px 12px 8px !important;
        border-radius: 14px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title {
        font-size: 16px !important;
        padding: 0 8px 8px 8px !important;
        letter-spacing: 0.5px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title::after {
        width: 45px !important;
        height: 2px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title::before {
        width: 25px !important;
        height: 2px !important;
        bottom: -2px !important;
    }
    
    .ContImgTxt .elementor-image-box-img {
        max-width: 90px !important;   /* 🔧 TAMAÑO MÓVIL PEQUEÑO */
        height: 55px !important;      /* 🔧 ALTURA MÓVIL PEQUEÑO */
        margin-bottom: 8px !important;
    }
    
    .ContImgTxt .elementor-image-box-img img {
        padding: 3px 6px !important;
        border-radius: 6px !important;
    }
    
    .ContImgTxt .elementor-image-box-content h3.elementor-image-box-title {
        font-size: 12px !important;
        margin-bottom: 2px !important;
    }
    
    .ContImgTxt .elementor-image-box-content h3.elementor-image-box-title::after {
        width: 25px !important;
        height: 2px !important;
        margin-top: 4px !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper:hover .elementor-image-box-title::after {
        width: 35px !important;
    }
    
    .ContImgTxt .elementor-image-box-content .elementor-image-box-description {
        font-size: 9px !important;
        line-height: 1.4 !important;
        padding: 0 !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper {
        padding: 10px 6px 8px 6px !important;
        border-radius: 10px !important;
        min-height: 160px !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper::after {
        width: 30px !important;
        height: 30px !important;
        top: -15px !important;
        right: -15px !important;
    }
}

/* --- Móvil muy pequeño (≤360px) --- */
@media (max-width: 360px) {
    .ContImgTxt .elementor-image-box-img {
        max-width: 75px !important;   /* 🔧 TAMAÑO MÓVIL MUY PEQUEÑO */
        height: 45px !important;      /* 🔧 ALTURA MÓVIL MUY PEQUEÑO */
    }
    
    .ContImgTxt .elementor-image-box-img img {
        padding: 2px 4px !important;
    }
    
    .ContImgTxt .elementor-image-box-content h3.elementor-image-box-title {
        font-size: 10px !important;
    }
    
    .ContImgTxt .elementor-image-box-content .elementor-image-box-description {
        font-size: 8.5px !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper {
        min-height: 140px !important;
        padding: 8px 4px 6px 4px !important;
    }
}

/* --- Pantallas grandes (≥1400px) --- */
@media (min-width: 1400px) {
    .TituloGeneral {
        padding: 40px 20px 30px 20px !important;
        border-radius: 28px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title {
        font-size: 34px !important;
        padding: 0 30px 18px 30px !important;
        max-width: 900px !important;
    }
    
    .TituloGeneral .elementor-widget-heading h3.elementor-heading-title::after {
        width: 120px !important;
        height: 5px !important;
    }
    
    .ContImgTxt .elementor-image-box-img {
        max-width: 210px !important;  /* 🔧 TAMAÑO PANTALLA GRANDE */
        height: 120px !important;     /* 🔧 ALTURA PANTALLA GRANDE */
    }
    
    .ContImgTxt .elementor-image-box-img img {
        padding: 10px 16px !important;
    }
    
    .ContImgTxt .elementor-image-box-content h3.elementor-image-box-title {
        font-size: 20px !important;
    }
    
    .ContImgTxt .elementor-image-box-content .elementor-image-box-description {
        font-size: 13px !important;
    }
    
    .ContImgTxt .elementor-image-box-wrapper {
        padding: 24px 20px 20px 20px !important;
        min-height: 320px !important;
    }
}

/* ============================================================
   🎨 MEJORAS VISUALES ADICIONALES
   ============================================================ */

/* --- SEPARADOR ENTRE TARJETAS (sutil) --- */
@media (min-width: 769px) {
    .ContImgTxt .elementor-container .elementor-column:not(:last-child) .elementor-image-box-wrapper::after {
        content: '' !important;
        position: absolute !important;
        right: -8px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 1px !important;
        height: 60% !important;
        background: linear-gradient(180deg, transparent, rgba(10, 26, 58, 0.06), transparent) !important;
        z-index: 2 !important;
    }
}

/* --- Ocultar separador en móvil --- */
@media (max-width: 768px) {
    .ContImgTxt .elementor-container .elementor-column:not(:last-child) .elementor-image-box-wrapper::after {
        display: none !important;
    }
}

/* ============================================================
   🔧 INSTRUCCIONES DE USO EN ELEMENTOR
   ============================================================ */
/* 
   🛠️ PASOS PARA APLICAR ESTILOS:
   
   1. Copia TODO este código CSS
   2. Ve a Elementor > Ajustes > CSS personalizado
   3. Pega el código y guarda
   
   ✅ El diseño se aplicará automáticamente a:
   - Contenedor con clase "TituloGeneral"
   - Contenedor con clase "ContImgTxt"
   - Widgets Heading (H3)
   - Widgets Image Box
*/

/* ============================================================
   📐 AJUSTE DE TAMAÑO DE IMÁGENES - GUÍA RÁPIDA
   ============================================================ */
/* 
   🔧 Para cambiar el tamaño de las imágenes, busca estas líneas:
   
   Escritorio:   max-width: 180px; height: 100px;
   Tablet:       max-width: 150px; height: 85px;
   Móvil:        max-width: 120px; height: 70px;
   Móvil Peq:    max-width: 90px;  height: 55px;
   Móvil Muy Peq: max-width: 75px; height: 45px;
   Pantalla Gde: max-width: 210px; height: 120px;
   
   🔥 Modifica los números para ajustar el tamaño a tu gusto.
   🔥 El object-fit: contain mantiene la proporción sin deformar.
*//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae59837 *//* ============================================================
   🎨 ESTILOS PARA SECCIÓN DE MARCAS - PROTECLINE
   VERSIÓN OPTIMIZADA - CON DISEÑO DE DESCRIPCIONES
   ============================================================ */

/* ============================================================
   📐 VARIABLES DE TAMAÑO DE IMÁGENES Y DESCRIPCIONES
   🔧 AJUSTA ESTOS VALORES PARA CAMBIAR EL TAMAÑO
   ============================================================ */
:root {
    /* --- TAMAÑOS DE IMÁGENES POR DISPOSITIVO --- */
    --sp-img-width-xl: 200px;      /* 🔧 Pantallas grandes (1400px+) */
    --sp-img-height-xl: 100px;     /* 🔧 Pantallas grandes (1400px+) */
    
    --sp-img-width-lg: 170px;      /* 🔧 Escritorio normal (1025-1399px) */
    --sp-img-height-lg: 85px;      /* 🔧 Escritorio normal (1025-1399px) */
    
    --sp-img-width-md: 140px;      /* 🔧 Tablet (769-1024px) */
    --sp-img-height-md: 70px;      /* 🔧 Tablet (769-1024px) */
    
    --sp-img-width-sm: 110px;      /* 🔧 Móvil (481-768px) */
    --sp-img-height-sm: 65px;      /* 🔧 Móvil (481-768px) */
    
    --sp-img-width-xs: 85px;       /* 🔧 Móvil pequeño (361-480px) */
    --sp-img-height-xs: 55px;      /* 🔧 Móvil pequeño (361-480px) */
    
    --sp-img-width-xxs: 80px;      /* 🔧 Móvil muy pequeño (≤360px) */
    --sp-img-height-xxs: 58px;     /* 🔧 Móvil muy pequeño (≤360px) */
    
    /* --- ESPACIADO INTERNO DE LAS IMÁGENES --- */
    --sp-img-padding-xl: 14px 24px;   /* 🔧 Padding en pantallas grandes */
    --sp-img-padding-lg: 12px 20px;   /* 🔧 Padding en escritorio */
    --sp-img-padding-md: 10px 16px;   /* 🔧 Padding en tablet */
    --sp-img-padding-sm: 8px 14px;    /* 🔧 Padding en móvil */
    --sp-img-padding-xs: 6px 10px;    /* 🔧 Padding en móvil pequeño */
    --sp-img-padding-xxs: 4px 8px;    /* 🔧 Padding en móvil muy pequeño */
}

/* ============================================================
   📦 CONTENEDOR PADRE
   ============================================================ */
.ContPadre {
    position: relative !important;
    overflow: hidden !important;
    padding: 5px 20px !important;
    background: transparent !important;
}

/* ============================================================
   📝 TÍTULO
   ============================================================ */
.Titulo {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
    text-align: center !important;
    position: relative !important;
    z-index: 2 !important;
}

.Titulo .elementor-heading-title {
    font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;

    padding: 0 20px !important;
    display: inline-block !important;
    position: relative !important;
    margin-bottom: 0 !important;
}

/* --- Línea decorativa debajo del título --- */
.Titulo .elementor-heading-title::after {
    content: '' !important;
    display: block !important;
    width: 80px !important;
    height: 2px !important;
    margin: 2px auto 0 !important;
    background: linear-gradient(90deg, 
        #00b4d8, 
        #48cae4, 
        #f26419
    ) !important;
    border-radius: 2px !important;
    transition: width 0.6s ease !important;
}

.Titulo:hover .elementor-heading-title::after {
    width: 50px !important;
}

/* ============================================================
   🖼️ CARRUSEL - IMÁGENES
   ============================================================ */
.ContDimension {
    position: relative !important;
    z-index: 2 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* --- ESTILO PRINCIPAL DE LAS IMÁGENES --- */
.ContDimension .swiper-slide-image {
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    background: rgba(255, 255, 255, 0.85) !important;
    padding: 12px 20px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    
    /* --- TAMAÑO POR DEFECTO (Escritorio) --- */
    max-width: var(--sp-img-width-lg) !important;
    max-height: var(--sp-img-height-lg) !important;
}

/* --- CONTENEDOR DE CADA SLIDE --- */
.ContDimension .swiper-slide {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    padding: 12px !important;
}

/* --- EFECTO HOVER DE LA IMAGEN --- */
.ContDimension .swiper-slide:hover .swiper-slide-image {
    transform: scale(1.08) translateY(-4px) !important;
    box-shadow: 0 10px 30px rgba(0, 180, 216, 0.18) !important;
    border-color: rgba(0, 180, 216, 0.3) !important;
    background: rgba(255, 255, 255, 0.95) !important;
}

/* ============================================================
   📝 ESTILO DE LAS DESCRIPCIONES (CAPTIONS)
   ============================================================ */

/* --- CONTENEDOR DE LA DESCRIPCIÓN --- */
.ContDimension .swiper-slide-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    gap: 10px !important;
}

/* --- ESTILO PRINCIPAL DE LA DESCRIPCIÓN --- */
.ContDimension .elementor-image-carousel-caption {
    font-family: 'Montserrat', 'Segoe UI', Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #0A1A3A !important;
    text-align: center !important;
    line-height: 1.6 !important;
    padding: 8px 16px !important;
    margin: 0 !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(248, 250, 255, 0.95)) !important;
    border-radius: 10px !important;
    border-left: 3px solid #F26419 !important;
    box-shadow: 0 2px 12px rgba(10, 26, 58, 0.06) !important;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    max-width: 90% !important;
    position: relative !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
}

/* --- ICONO DECORATIVO EN LA DESCRIPCIÓN --- */
.ContDimension .elementor-image-carousel-caption::before {
    content: '◆ ' !important;
    color: #F26419 !important;
    font-size: 12px !important;
    font-weight: 300 !important;
}

/* --- EFECTO HOVER DE LA DESCRIPCIÓN --- */
.ContDimension .swiper-slide:hover .elementor-image-carousel-caption {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 24px rgba(242, 100, 25, 0.12) !important;
    border-left-color: #00B4D8 !important;
    background: #FFFFFF !important;
}

/* --- TEXTO DESTACADO EN DESCRIPCIÓN --- */
.ContDimension .elementor-image-carousel-caption strong {
    color: #F26419 !important;
    font-weight: 700 !important;
}

.ContDimension .elementor-image-carousel-caption em {
    color: #00B4D8 !important;
    font-style: italic !important;
    font-weight: 600 !important;
}

/* --- PUNTO DECORATIVO (alternativo para móvil) --- */
@media (max-width: 768px) {
    .ContDimension .elementor-image-carousel-caption::before {
        content: '' !important;
    }
}

/* --- BORDE SUPERIOR DECORATIVO EN HOVER --- */
.ContDimension .elementor-image-carousel-caption::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, #F26419, #F9A825) !important;
    transition: width 0.4s ease !important;
    border-radius: 0 0 4px 4px !important;
}

.ContDimension .swiper-slide:hover .elementor-image-carousel-caption::after {
    width: 60% !important;
}

/* ============================================================
   🎯 PUNTOS DE NAVEGACIÓN
   ============================================================ */
.ContDimension .swiper-pagination {
    position: relative !important;
    margin-top: 15px !important;
    margin-bottom: 0px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
}

.ContDimension .swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
    background: rgba(10, 26, 58, 0.15) !important;
    opacity: 1 !important;
    border-radius: 50% !important;
    transition: all 0.4s ease !important;
    border: 2px solid transparent !important;
    cursor: pointer !important;
    display: inline-block !important;
    margin: 0 !important;
}

.ContDimension .swiper-pagination-bullet-active {
    background: linear-gradient(135deg, #00b4d8, #f26419) !important;
    transform: scale(1.3) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0 0 20px rgba(0, 180, 216, 0.2) !important;
    width: 12px !important;
    height: 12px !important;
}

.ContDimension .swiper-pagination-bullet:hover {
    background: rgba(10, 26, 58, 0.3) !important;
    transform: scale(1.15) !important;
}

/* ============================================================
   📱 RESPONSIVE - USA LAS VARIABLES
   ============================================================ */

/* --- Pantallas grandes (1400px+) --- */
@media (min-width: 1400px) {
    .ContDimension .swiper-slide-image {
        max-width: var(--sp-img-width-xl) !important;
        max-height: var(--sp-img-height-xl) !important;
        padding: var(--sp-img-padding-xl) !important;
        border-radius: 14px !important;
    }
    
    .ContDimension .elementor-image-carousel-caption {
        font-size: 16px !important;
        padding: 10px 20px !important;
        max-width: 80% !important;
    }
    
    .ContPadre {
        padding: 5px 30px !important;
    }
}

/* --- Escritorio normal (1025-1399px) --- */
@media (min-width: 1025px) and (max-width: 1399px) {
    .ContDimension .swiper-slide-image {
        max-width: var(--sp-img-width-lg) !important;
        max-height: var(--sp-img-height-lg) !important;
        padding: var(--sp-img-padding-lg) !important;
    }
}

/* --- Tablet (769-1024px) --- */
@media (max-width: 1024px) and (min-width: 769px) {
    .ContDimension .swiper-slide-image {
        max-width: var(--sp-img-width-md) !important;
        max-height: var(--sp-img-height-md) !important;
        padding: var(--sp-img-padding-md) !important;
        border-radius: 10px !important;
    }
    
    .ContDimension .elementor-image-carousel-caption {
        font-size: 13px !important;
        padding: 6px 14px !important;
        max-width: 85% !important;
    }
    
    .ContPadre {
        padding: 5px 15px !important;
    }
    .ContDimension .swiper-slide {
        padding: 10px !important;
    }
}

/* --- Móvil (481-768px) --- */
@media (max-width: 768px) {
    .ContDimension .swiper-slide-image {
        max-width: var(--sp-img-width-sm) !important;
        max-height: var(--sp-img-height-sm) !important;
        padding: var(--sp-img-padding-sm) !important;
        border-radius: 8px !important;
    }
    
    .ContDimension .elementor-image-carousel-caption {
        font-size: 11px !important;
        padding: 5px 12px !important;
        max-width: 95% !important;
        border-left-width: 2px !important;
    }
    
    .ContDimension .swiper-slide {
        padding: 8px !important;
    }
    .ContPadre {
        padding: 5px 12px !important;
    }
}

/* --- Móvil pequeño (361-480px) --- */
@media (max-width: 480px) {
    .ContDimension .swiper-slide-image {
        max-width: var(--sp-img-width-xs) !important;
        max-height: var(--sp-img-height-xs) !important;
        padding: var(--sp-img-padding-xs) !important;
        border-radius: 6px !important;
    }
    
    .ContDimension .elementor-image-carousel-caption {
        font-size: 10px !important;
        padding: 4px 10px !important;
        line-height: 1.4 !important;
        border-left-width: 2px !important;
        border-radius: 6px !important;
    }
    
    .ContDimension .swiper-slide {
        padding: 6px !important;
    }
    .ContPadre {
        padding: 5px 10px !important;
    }
}

/* --- Móvil muy pequeño (≤360px) --- */
@media (max-width: 360px) {
    .ContDimension .swiper-slide-image {
        max-width: var(--sp-img-width-xxs) !important;
        max-height: var(--sp-img-height-xxs) !important;
        padding: var(--sp-img-padding-xxs) !important;
    }
    
    .ContDimension .elementor-image-carousel-caption {
        font-size: 9px !important;
        padding: 3px 8px !important;
        line-height: 1.3 !important;
    }
    
    .ContDimension .swiper-slide {
        padding: 4px !important;
    }
    .ContPadre {
        padding: 5px 8px !important;
    }
}

/* ============================================================
   📝 FUENTE MONTSERRAT
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');/* End custom CSS */