.elementor-21059 .elementor-element.elementor-element-78191eef{--display:flex;--min-height:43vh;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-21059 .elementor-element.elementor-element-abb14ad{--display:flex;--min-height:50vh;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-21059 .elementor-element.elementor-element-abb14ad:not(.elementor-motion-effects-element-type-background), .elementor-21059 .elementor-element.elementor-element-abb14ad > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #000000 0%, #000000 100%);}.elementor-21059 .elementor-element.elementor-element-7ec44f3{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:25px 25px 25px 25px;--margin-top:10%;--margin-bottom:0%;--margin-left:10%;--margin-right:10%;--padding-top:4%;--padding-bottom:4%;--padding-left:0%;--padding-right:0%;}.elementor-21059 .elementor-element.elementor-element-7ec44f3:not(.elementor-motion-effects-element-type-background), .elementor-21059 .elementor-element.elementor-element-7ec44f3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000073;}.elementor-21059 .elementor-element.elementor-element-7ec44f3.e-con{--align-self:center;}.elementor-21059 .elementor-element.elementor-element-4685e12{text-align:center;font-family:"Inter", Sans-serif;font-size:65px;font-weight:800;color:#FFFFFF;}.elementor-21059 .elementor-element.elementor-element-591ddcc{margin:3% 2% calc(var(--kit-widget-spacing, 0px) + 0%) 2%;text-align:center;font-family:"Roboto", Sans-serif;font-size:28px;font-weight:800;color:var( --e-global-color-19d2e85 );}.elementor-21059 .elementor-element.elementor-element-30776a5{--display:flex;--min-height:0px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:25px 25px 25px 25px;--margin-top:2%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-21059 .elementor-element.elementor-element-30776a5.e-con{--align-self:center;}.elementor-21059 .elementor-element.elementor-element-7a101b9 .elementor-button{background-color:#1870B4;font-size:20px;font-weight:700;border-radius:20px 20px 20px 20px;padding:15px 70px 15px 70px;}.elementor-21059 .elementor-element.elementor-element-7a101b9{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 20%) 0%;padding:0px 0px 0px 0px;}.elementor-21059 .elementor-element.elementor-element-dbf5ec6{--e-n-carousel-swiper-slides-to-display:1;--e-n-carousel-swiper-slides-gap:0px;width:100%;max-width:100%;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;}:where( .elementor-21059 .elementor-element.elementor-element-dbf5ec6 .swiper-slide ) > .e-con{border-style:none;}.elementor-21059 .elementor-element.elementor-element-22309b0{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-21059 .elementor-element.elementor-element-134d6d1{--display:flex;--margin-top:7%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-21059 .elementor-element.elementor-element-c8c3420{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-21059 .elementor-element.elementor-element-4735818{--display:flex;}.elementor-21059 .elementor-element.elementor-element-e371cde{text-align:justify;font-size:22px;}.elementor-21059 .elementor-element.elementor-element-e9d7ec5{--display:flex;--overlay-opacity:1;--border-radius:35px 35px 35px 35px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-21059 .elementor-element.elementor-element-e9d7ec5::before, .elementor-21059 .elementor-element.elementor-element-e9d7ec5 > .elementor-background-video-container::before, .elementor-21059 .elementor-element.elementor-element-e9d7ec5 > .e-con-inner > .elementor-background-video-container::before, .elementor-21059 .elementor-element.elementor-element-e9d7ec5 > .elementor-background-slideshow::before, .elementor-21059 .elementor-element.elementor-element-e9d7ec5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-21059 .elementor-element.elementor-element-e9d7ec5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-primary );--background-overlay:'';}.elementor-21059 .elementor-element.elementor-element-1469ed7{padding:29px 18px 21px 18px;text-align:center;font-size:35px;font-weight:700;color:var( --e-global-color-19d2e85 );}.elementor-21059 .elementor-element.elementor-element-e4773bd{--display:flex;}.elementor-21059 .elementor-element.elementor-element-b9bd65f .elementor-button{background-color:var( --e-global-color-8405ceb );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-21059 .elementor-element.elementor-element-dbf5ec6{--e-n-carousel-swiper-slides-to-display:2;}.elementor-21059 .elementor-element.elementor-element-c8c3420{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-21059 .elementor-element.elementor-element-78191eef{--width:100%;}.elementor-21059 .elementor-element.elementor-element-7ec44f3{--width:70%;}.elementor-21059 .elementor-element.elementor-element-30776a5{--width:25%;}.elementor-21059 .elementor-element.elementor-element-22309b0{--width:100%;}.elementor-21059 .elementor-element.elementor-element-134d6d1{--width:100%;}}@media(max-width:767px){.elementor-21059 .elementor-element.elementor-element-7ec44f3{--margin-top:40%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-21059 .elementor-element.elementor-element-4685e12{margin:6% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-21059 .elementor-element.elementor-element-dbf5ec6{--e-n-carousel-swiper-slides-to-display:1;}.elementor-21059 .elementor-element.elementor-element-c8c3420{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for text-editor, class: .elementor-element-4685e12 */.hero-title-marketing {
    font-family: 'Raleway', sans-serif;
    font-weight: 800;
    line-height: 1.1;
    font-size: 65px; /* Tamaño por defecto para escritorio */
}

/* Tablet (iPad, pantallas medianas) */
@media (max-width: 1024px) {
    .hero-title-marketing {
        font-size: 48px;
    }
}

/* Móvil Grande (Pantallas horizontales o móviles modernos) */
@media (max-width: 767px) {
    .hero-title-marketing {
        font-size: 48px;
        line-height: 1.2;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-591ddcc */.highlight-orange {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    text-align: center;
    color:orange;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7ec44f3 *//* ==========================================================================
   EFECTO HIGHLIGHT BOX BICOLOR (ADAPTADO A ELEMENTOR)
   ========================================================================== */

/* Ajuste opcional para el H1 de Elementor (asumiendo fondo oscuro en el slider) */
.elementor-widget-text-editor h1 {
    color: #ffffff; 
    font-size: 3rem;
    line-height: 1.5;
    margin-bottom: 15px;
}

/* Estilo base común para las dos cajas (Efecto captura de pantalla) */
.elementor-widget-text-editor h1 .text-box {
    color: #ffffff !important; /* Fuerza el texto blanco dentro de la caja */
    padding: 6px 16px; /* Espaciado interno para generar el rectángulo */
    display: inline-block !important; /* Evita que la caja colapse */
    line-height: 1 !important;
    margin: 6px 2px; /* Margen para que respiren si el título salta de línea */
    white-space: nowrap; /* Evita que el texto interno se rompa de forma extraña */
}

/* CAJA 1: Tu azul corporativo de Mountain Barcelona */
.elementor-widget-text-editor h1 .text-azul {
    background-color: #1970B4 !important;
}

/* CAJA 2: El naranja de alto contraste */
.elementor-widget-text-editor h1 .text-naranja {
    background-color: #F48C0D !important;
}

/* ==========================================================================
   OPTIMIZACIÓN RESPONSIVE PARA MÓVILES
   ========================================================================== */
@media (max-width: 768px) {
    .elementor-widget-text-editor h1 {
        font-size: 2rem;
        line-height: 1.6;
    }
    .elementor-widget-text-editor h1 .text-box {
        padding: 4px 10px;
        margin: 4px 1px;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4685e12 */.hero-title-marketing {
    font-family: 'Raleway', sans-serif;
    font-weight: 800;
    line-height: 1.1;
    font-size: 65px; /* Tamaño por defecto para escritorio */
}

/* Tablet (iPad, pantallas medianas) */
@media (max-width: 1024px) {
    .hero-title-marketing {
        font-size: 48px;
    }
}

/* Móvil Grande (Pantallas horizontales o móviles modernos) */
@media (max-width: 767px) {
    .hero-title-marketing {
        font-size: 48px;
        line-height: 1.2;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-591ddcc */.highlight-orange {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    text-align: center;
    color:orange;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7ec44f3 *//* ==========================================================================
   EFECTO HIGHLIGHT BOX BICOLOR (ADAPTADO A ELEMENTOR)
   ========================================================================== */

/* Ajuste opcional para el H1 de Elementor (asumiendo fondo oscuro en el slider) */
.elementor-widget-text-editor h1 {
    color: #ffffff; 
    font-size: 3rem;
    line-height: 1.5;
    margin-bottom: 15px;
}

/* Estilo base común para las dos cajas (Efecto captura de pantalla) */
.elementor-widget-text-editor h1 .text-box {
    color: #ffffff !important; /* Fuerza el texto blanco dentro de la caja */
    padding: 6px 16px; /* Espaciado interno para generar el rectángulo */
    display: inline-block !important; /* Evita que la caja colapse */
    line-height: 1 !important;
    margin: 6px 2px; /* Margen para que respiren si el título salta de línea */
    white-space: nowrap; /* Evita que el texto interno se rompa de forma extraña */
}

/* CAJA 1: Tu azul corporativo de Mountain Barcelona */
.elementor-widget-text-editor h1 .text-azul {
    background-color: #1970B4 !important;
}

/* CAJA 2: El naranja de alto contraste */
.elementor-widget-text-editor h1 .text-naranja {
    background-color: #F48C0D !important;
}

/* ==========================================================================
   OPTIMIZACIÓN RESPONSIVE PARA MÓVILES
   ========================================================================== */
@media (max-width: 768px) {
    .elementor-widget-text-editor h1 {
        font-size: 2rem;
        line-height: 1.6;
    }
    .elementor-widget-text-editor h1 .text-box {
        padding: 4px 10px;
        margin: 4px 1px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4302bbb *//* ==========================================================================
   ESTILOS PREMIUM UNIFICADOS: PÁGINA CONSULTORÍA - MOUNTAIN BARCELONA
   ========================================================================== */

/* --- RESET Y ESTILOS BASE DE PÁGINA --- */
.mb-page-consultoria {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: #333333;
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
}

.mb-page-consultoria h1, 
.mb-page-consultoria h2, 
.mb-page-consultoria h3,
.mb-page-consultoria h4 {
    color: #111111;
    font-weight: 700;
    margin-top: 0;
}

/* --- COMPONENTES GLOBALES: BOTÓN CORPORATIVO --- */
.mb-btn-primary {
    background-color: #1970B4;
    color: #ffffff !important;
    padding: 14px 28px;
    border-radius: 4px;
    text-decoration: none;
    display: inline-block;
    font-weight: 600;
    transition: background-color 0.3s ease, transform 0.2s ease;
    border: none;
    cursor: pointer;
    text-align: center;
}
.mb-btn-primary:hover {
    background-color: #115388;
    transform: translateY(-2px);
}

/* ==========================================================================
   1. SECCIÓN: HERO SLIDER (CON HIGHLIGHT BOX BICOLOR)
   ========================================================================== */
.mb-hero-slider {
    position: relative;
    width: 100%;
    height: 70vh;
    min-height: 480px;
    background-color: #111111;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 8px;
    margin-bottom: 60px;
}
.mb-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0.45;
    z-index: 1;
}
.mb-hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    color: #ffffff;
    max-width: 850px;
    padding: 30px;
}

/* Estilos Título Hero H1 con Cajas de Destacado */
.mb-hero-content h1 {
    color: #ffffff;
    font-size: 3rem;
    line-height: 1.4;
    margin-bottom: 20px;
}

/* Estilo base común para las dos cajas de la captura */
.mb-hero-content h1 .text-box {
    color: #ffffff; /* Texto interno de las cajas en blanco */
    padding: 6px 16px; /* Espaciado interno para generar la caja rectangular exacta */
    display: inline-block;
    line-height: 1;
    margin: 4px 2px; /* Pequeño margen para que respiren si el texto salta de línea */
    white-space: nowrap; /* Evita que el texto interno se rompa de forma extraña */
}

/* CAJA 1: Tu azul corporativo de Mountain Barcelona */
.mb-hero-content h1 .text-azul {
    background-color: #1970B4;
}

/* CAJA 2: El naranja de alto contraste solicitado */
.mb-hero-content h1 .text-naranja {
    background-color: #F48C0D;
}

.mb-hero-content p {
    font-size: 1.25rem;
    margin-bottom: 30px;
    opacity: 0.9;
    color: #ffffff;
}

/* ==========================================================================
   2. SECCIÓN: EL MANIFIESTO CORPORATIVO
   ========================================================================== */
.mb-manifiesto {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 80px auto;
    padding: 20px;
}
.mb-manifiesto blockquote {
    font-size: 2rem;
    font-style: normal;
    font-weight: 700;
    color: #1970B4;
    margin: 0 0 20px 0;
    border: none;
    padding: 0;
    line-height: 1.3;
}
.mb-manifiesto p {
    font-size: 1.15rem;
    color: #4a5568;
}

/* ==========================================================================
   3. SECCIÓN: MÉTODO DE TRABAJO (CON DISEÑO TIPOGRÁFICO Y SCROLL ANIMATION)
   ========================================================================== */
.mb-section-metodo {
    margin-bottom: 80px;
}

/* --- ENCABEZADO DE SECCIÓN CON DISEÑO TIPOGRÁFICO --- */
.mb-header-diseno-metodo {
    text-align: center; /* Centrado para máxima autoridad */
    margin-bottom: 80px; /* Espacio generoso antes de las fases */
    max-width: 900px; /* Evita líneas infinitas */
    margin-left: auto;
    margin-right: auto;
}

/* NIVEL 1: Etiqueta superior (Kicker) */
.mb-label-seccion {
    font-size: 11px !important; /* Pequeño y elegante */
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 3px !important; /* Muy espaciado */
    color: #1970B4 !important; /* Tu azul corporativo */
    margin-bottom: 20px !important;
    display: inline-block;
}

/* NIVEL 2 Y 3: El H2 Principal con diseño */
.mb-section-metodo h2 {
    font-size: 3rem !important; /* Tamaño grande pero controlado (aprox 48px) */
    line-height: 1.2 !important; /* Interlineado estrecho para agrupar visualmente */
    color: #1d2633 !important; /* Tu gris oscuro corporativo */
    margin: 0 !important;
    max-width: 100% !important;
    text-align: center;
}

/* Sub-nivel 2: Texto ligero (<span>) */
.mb-section-metodo h2 span {
    font-weight: 300 !important; /* Peso ligero, casi serif o thin */
    display: block; /* Obliga a romper la línea */
}

/* Sub-nivel 3: Texto fuerte y destacado (<strong>) */
.mb-section-metodo h2 strong {
    font-weight: 800 !important; /* Peso extra-bold para el mensaje clave */
    display: block; /* Obliga a romper la línea */
    letter-spacing: -1.5px !important; /* Un poco compactado para fuerza */
}

/* NIVEL 4: Separador decorativo minimalista */
.mb-separador-premium {
    width: 60px;
    height: 4px;
    background-color: #1970B4; /* Tu azul corporativo */
    margin: 35px auto 0 auto; /* Centrado */
    border-radius: 2px;
}

/* --- ESTRUCTURA DE FASES ALTERNAS --- */
.mb-fase {
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 70px;
}
.mb-fase.invertida {
    flex-direction: row-reverse;
}
.mb-fase-col-texto {
    flex: 1;
}
.mb-fase-col-texto .num-fase {
    font-size: 1.1rem;
    color: #1970B4;
    font-weight: 700;
    display: block;
    margin-bottom: 12px;
    letter-spacing: 1px;
}
.mb-fase-col-texto h3 {
    font-size: 1.9rem;
    margin-bottom: 15px;
    margin-top: 0;
}
.mb-fase-col-texto p {
    color: #4a5568;
    font-size: 1.05rem;
}

/* --- COLUMNA VISUAL Y ANIMACIÓN POR SCROLL (DERECHA A IZQUIERDA) --- */

/* 1. Definición del movimiento de entrada (sin zoom) */
@keyframes mbCargaDerechaIzquierda {
    from {
        transform: translateX(120px); /* Comienza desplazada a la derecha */
        opacity: 0;                  /* Totalmente invisible */
    }
    to {
        transform: translateX(0);    /* Llega a su posición original */
        opacity: 1;                  /* Totalmente visible */
    }
}

/* 2. Aplicación de la animación al contenedor visual */
.mb-fase-col-visual {
    flex: 1;
    position: relative;
    padding-bottom: 35px;
    
    /* Vinculación directa con el Scroll del usuario */
    animation: mbCargaDerechaIzquierda linear both;
    animation-timeline: view(); /* Detecta la posición del elemento en pantalla */
    animation-range: entry 5% cover 35%; /* Se ejecuta suavemente en el primer tercio de pantalla */
}

/* 3. Estructuras estáticas de las fotos (Sin hover/zoom) */
.mb-fase-img-wrapper {
    position: relative;
    width: 100%;
    z-index: 1;
    overflow: hidden;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.08);
    border-radius: 6px;
}

.mb-fase-img {
    display: block;
    width: 100%;
    height: 380px;
    background-color: #cbd5e1;
    object-fit: cover;
    transition: none; /* Eliminamos transiciones de escala antiguos */
}

/* 4. Recuadro Azul Corporativo Asimétrico */
.mb-fase-badge {
    position: absolute;
    bottom: -15px;
    left: -50px; 
    width: 85%;
    max-width: 370px;
    background-color: #1970B4; /* Tu color de marca */
    color: #ffffff;
    padding: 30px 35px 35px 35px;
    z-index: 2;
    box-shadow: 0 12px 30px rgba(25, 112, 180, 0.25);
    box-sizing: border-box;
}

/* Inversión posicional del recuadro en Fase 2 */
.mb-fase.invertida .mb-fase-badge {
    left: auto;
    right: -50px;
}

/* Elementos tipográficos internos del recuadro */
.mb-badge-icon {
    font-family: serif;
    font-size: 60px;
    line-height: 1;
    margin-bottom: -15px;
    color: rgba(255, 255, 255, 0.4);
}

.mb-badge-text {
    font-size: 25px;
    font-weight: 700;
    line-height: 1.35;
    color: #ffffff !important;
    margin: 0 0 25px 0 !important;
    letter-spacing: -0.5px;
}

.mb-badge-tag {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, 0.75);
    font-weight: 700;
}

/* ==========================================================================
   4. SECCIÓN: BLOQUE DE 3 COLUMNAS (FILTROS)
   ========================================================================== */
.mb-section-filtro {
    background-color: #f8fafc;
    padding: 60px 40px;
    border-radius: 8px;
    margin-bottom: 80px;
    text-align: center;
}
.mb-section-filtro h2 {
    font-size: 2rem;
    margin-bottom: 40px;
}
.mb-grid-filtro {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
.mb-tarjeta-filtro {
    background: #ffffff;
    padding: 35px 25px;
    border-radius: 6px;
    box-shadow: 0 4px 15px -3px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    border-top: 3px solid transparent;
    transition: border-color 0.3s, transform 0.3s;
}
.mb-tarjeta-filtro:hover {
    border-top-color: #1970B4;
    transform: translateY(-4px);
}
.mb-tarjeta-filtro h4 {
    font-size: 1.35rem;
    margin: 0 0 15px 0;
    color: #111111;
}
.mb-tarjeta-filtro p {
    font-size: 0.95rem;
    color: #64748b;
    margin-bottom: 25px;
    margin-top: 0;
}
.mb-tarjeta-filtro .mb-btn-primary {
    padding: 11px 20px;
    font-size: 0.9rem;
    width: 100%;
    box-sizing: border-box;
}

/* ==========================================================================
   5. SECCIÓN: FORMULARIO ULTRA-PRECISO (#PRESU-consultoria)
   ========================================================================== */

/* Bloqueamos estilos antiguos de la Sección 5 y aplicamos el nuevo ID */

/* Contenedor Principal del Formulario */
#PRESU-consultoria {
    background-color: #1970B4; /* Fondo azul corporativo para toda la sección */
    padding: 60px 50px;
    border-radius: 8px;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05);
}

/* Títulos del Formulario */
#PRESU-consultoria h2 {
    text-align: center;
    font-size: 2.2rem;
    margin-bottom: 10px;
    margin-top: 0;
    color: #ffffff !important; /* Título en blanco */
}

/* Subtítulo */
#PRESU-consultoria p.sub-formulario {
    text-align: center;
    color: rgba(255, 255, 255, 0.85) !important;
    margin-bottom: 50px;
    margin-top: 0;
    font-size: 1.1rem;
}

/* --- REJILLA ESTRUCTURAL PRECISIÓN (ASIMÉTRICA 2-1-2-1) --- */
#PRESU-consultoria .campos-doble-columna {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 24px 20px !important; /* Espaciado entre filas (24px) y columnas (20px) */
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Control Estricto de Columnas */
#PRESU-consultoria .columna-2 {
    flex: 0 0 calc(50% - 10px) !important;
    width: calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    box-sizing: border-box !important;
}

#PRESU-consultoria .columna-1 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Limpieza de basura generada por Contact Form 7 (<p> y <br>) */
#PRESU-consultoria .columna-2 p,
#PRESU-consultoria .columna-1 p {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

#PRESU-consultoria .campos-doble-columna br {
    display: none !important; /* Eliminamos saltos de línea fantasmas */
}

/* --- ESTILOS DE LOS CAMPOS (LABELS Y INPUTS) --- */

/* Etiquetas (Labels) en Blanco para Fondo Azul */
#PRESU-consultoria label {
    display: block !important;
    width: 100% !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important; /* Texto de la etiqueta en blanco */
    margin-bottom: 0 !important;
    line-height: 1.4 !important;
}

/* Contenedor nativo del input de Contact Form 7 */
#PRESU-consultoria .wpcf7-form-control-wrap {
    display: block !important;
    margin-top: 8px !important; /* Distancia entre el label y la caja */
    width: 100% !important;
}

/* Estilo Unificado de Campos de Entrada (Cajas) */
#PRESU-consultoria input[type="text"],
#PRESU-consultoria input[type="email"],
#PRESU-consultoria input[type="tel"],
#PRESU-consultoria input[type="url"],
#PRESU-consultoria select,
#PRESU-consultoria textarea {
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    padding: 0 18px !important;
    background-color: #f8f9fa !important; /* Fondo claro para escribir */
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    color: #1a202c !important; /* Texto oscuro dentro de la caja */
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
}

/* Ajuste específico para el área de mensaje */
#PRESU-consultoria textarea {
    height: 140px !important;
    padding: 18px !important;
    resize: vertical !important;
    font-family: inherit !important;
}

/* Efecto Focus con fondo blanco brillante al hacer clic */
#PRESU-consultoria input:focus,
#PRESU-consultoria select:focus,
#PRESU-consultoria textarea:focus {
    border-color: #ffffff !important;
    background-color: #ffffff !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3) !important;
}

/* Corrección Casilla de Políticas de Privacidad */
#PRESU-consultoria .politicas {
    display: block !important;
    margin-top: 10px !important;
}

#PRESU-consultoria .politicas .wpcf7-list-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
}

#PRESU-consultoria .politicas input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    cursor: pointer !important;
}

#PRESU-consultoria .politicas .wpcf7-list-item-label {
    font-weight: 400 !important;
    font-size: 14px !important;
    color: #ffffff !important; /* Texto de la política en blanco */
    cursor: pointer !important;
}

/* --- BOTÓN DE ENVÍO PREMIUM (BLANCO CON TEXTO AZUL) --- */
#PRESU-consultoria input[type="submit"].wpcf7-submit {
    background-color: #ffffff !important; /* El botón blanco destaca muchísimo sobre azul */
    color: #1970B4 !important; /* Texto en tu azul corporativo */
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border: none !important;
    height: 56px !important;
    padding: 0 40px !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    width: auto !important; /* Ancho automático en desktop */
    font-size: 15px !important;
}

#PRESU-consultoria input[type="submit"].wpcf7-submit:hover {
    background-color: #f1f5f9 !important; /* Cambio sutil al pasar el cursor */
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

/* ==========================================================================
   RESPONSIVE - ADAPTACIÓN PARA MÓVILES Y TABLETS
   ========================================================================== */

/* Tablets y Pantallas Medianas (Móviles en horizontal) */
@media (max-width: 992px) {
    .mb-fase, .mb-fase.invertida { gap: 40px; }
    .mb-grid-filtro { grid-template-columns: repeat(2, 1fr); }
    
    .mb-section-metodo h2 { font-size: 2.5rem !important; } /* Título Metodología */
    
    #PRESU-consultoria { padding: 50px 30px; }
}

/* Teléfonos Móviles (Retrato) */
@media (max-width: 768px) {
    /* Reset General */
    .mb-page-consultoria { padding: 15px; }
    
    /* Hero */
    .mb-hero-slider { height: 60vh; min-height: 420px; margin-bottom: 40px; }
    .mb-hero-content h1 { font-size: 2rem; line-height: 1.5; }
    .mb-hero-content h1 .text-box { padding: 4px 10px; margin: 3px 1px; }
    .mb-hero-content p { font-size: 1.1rem; }
    
    /* Manifiesto */
    .mb-manifiesto { margin-bottom: 60px; }
    .mb-manifiesto blockquote { font-size: 1.6rem; }
    
    /* Metodología Título */
    .mb-section-metodo h2 { font-size: 2rem !important; line-height: 1.25 !important; }
    .mb-section-metodo h2 strong { letter-spacing: -0.5px !important; }
    .mb-header-diseno-metodo { margin-bottom: 50px; padding: 0 10px; }
    
    /* Fases */
    .mb-fase, .mb-fase.invertida { flex-direction: column; gap: 25px; margin-bottom: 50px; }
    .mb-fase-col-texto h3 { font-size: 1.6rem; }
    
    /* Ajuste de Animación por Scroll en Móvil (Entrada de abajo a arriba) */
    @keyframes mbCargaDerechaIzquierda {
        from {
            transform: translateY(40px); /* En móviles entra mejor de abajo a arriba */
            opacity: 0;
        }
        to {
            transform: translateY(0);
            opacity: 1;
        }
    }
    
    /* Imagen y Badge Asimétrico en Móvil */
    .mb-fase-col-visual { padding-bottom: 0; margin-top: 25px; animation-range: entry 0% cover 25%; }
    .mb-fase-img { height: 280px; }
    
    .mb-fase-badge,
    .mb-fase.invertida .mb-fase-badge {
        position: relative;
        left: 0;
        right: auto;
        width: 100%;
        max-width: 100%;
        margin-top: -25px;
        padding: 30px;
        bottom: auto;
    }
    .mb-badge-text { font-size: 22px; }

    /* Filtros */
    .mb-grid-filtro { grid-template-columns: 1fr; gap: 20px; }
    .mb-section-filtro { padding: 40px 20px; margin-bottom: 60px; }
    
    /* Formulario en Móvil */
    #PRESU-consultoria { padding: 40px 20px; }
    #PRESU-consultoria h2 { font-size: 1.8rem; }
    
    /* Forzamos que la rejilla asimétrica sea una sola columna */
    #PRESU-consultoria .columna-2 {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Botón de envío al 100% de ancho */
    #PRESU-consultoria input[type="submit"].wpcf7-submit {
        width: 100% !important;
    }

}

/* ==========================================================================
   BLOQUE DE CITA PREMIUM CON COMILLAS GIGANTES
   ========================================================================== */
.mb-bloque-cita {
    position: relative;
    padding: 60px 80px;
    text-align: center;
    max-width: 850px;
    margin: 40px auto;
    box-sizing: border-box;
}

.mb-bloque-cita p {
    font-size: 1.6rem !important;
    font-weight: 600 !important;
    color: #1970B4 !important; /* <--- Ahora el texto será tu azul corporativo */
    line-height: 1.5 !important;
    margin: 0 !important;
    position: relative;
    z-index: 2;
}

/* Comilla de apertura gigante */
.mb-bloque-cita::before {
    content: "“";
    position: absolute;
    top: -10px;
    left: 20px;
    font-size: 10rem;
    font-family: "Georgia", serif;
    color: rgba(25, 112, 180, 0.5); /* Tu azul #1970B4 rebajado para fondo elegante */
    line-height: 1;
    z-index: 1;
}

/* Comilla de cierre gigante */
.mb-bloque-cita::after {
    content: "”";
    position: absolute;
    bottom: -70px;
    right: 20px;
    font-size: 10rem;
    font-family: "Georgia", serif;
    color: rgba(25, 112, 180, 0.5); /* Tu azul #1970B4 rebajado */
    line-height: 1;
    z-index: 1;
}

/* Adaptación para pantallas móviles */
@media (max-width: 768px) {
    .mb-bloque-cita {
        padding: 40px 30px;
    }
    .mb-bloque-cita p {
        font-size: 1.25rem !important;
    }
    .mb-bloque-cita::before {
        top: -20px;
        left: 10px;
        font-size: 7rem;
    }
    .mb-bloque-cita::after {
        bottom: -50px;
        right: 10px;
        font-size: 7rem;
    }
}

/* ==========================================================================
   CORRECCIÓN DE ESPACIADO: ENCABEZADO METODOLOGÍA
   ========================================================================== */

/* 1. Reducimos el margen inferior general de toda la sección (de 80px a 40px) */
.mb-header-diseno-metodo {
    text-align: center;
    margin-bottom: 40px !important; 
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

/* 2. Compactamos el espacio debajo de "MÉTODO PROPIO" (de 20px a 6px) */
.mb-label-seccion {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 3px !important;
    color: #1970B4 !important;
    margin-top: 0 !important;
    margin-bottom: 6px !important; /* Espacio mínimo y elegante antes del título */
    display: inline-block;
}

/* 3. Reseteo y ajuste del H2 */
.mb-header-diseno-metodo h2 {
    font-size: 3rem !important;
    line-height: 1.15 !important; /* Interlineado más estrecho y corporativo */
    color: #1d2633 !important;
    margin: 0 !important; /* Eliminamos cualquier margen nativo del tema */
    padding: 0 !important;
}

.mb-header-diseno-metodo h2 span {
    font-weight: 300 !important;
    display: block !important;
}

.mb-header-diseno-metodo h2 strong {
    font-weight: 800 !important;
    display: block !important;
    letter-spacing: -1px !important;
}

/* 4. FULMINAR EL DOBLE SALTO: Ocultamos el <br> para que no duplique el espacio */
.mb-header-diseno-metodo h2 br {
    display: none !important;
}

/* 5. Acercamos el separador azul al título (de 35px a 18px) */
.mb-separador-premium {
    width: 60px;
    height: 4px;
    background-color: #1970B4;
    margin: 18px auto 0 auto !important; 
    border-radius: 2px;
}

/* Ajuste de compresión para pantallas móviles */
@media (max-width: 767px) {
    .mb-header-diseno-metodo h2 {
        font-size: 2rem !important;
    }
    .mb-header-diseno-metodo {
        margin-bottom: 30px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e9d7ec5 *//* ==========================================================================
   CSS ESTRUCTURAL PRECISIÓN: FORMULARIO ASIMÉTRICO (#PRESU-consultoria)
   ========================================================================= */

/* 0. NUEVO: Romper límites de ancho de capas intermedias (Evita que se vea encogido) */
#PRESU-consultoria .elementor-widget-shortcode,
#PRESU-consultoria .elementor-shortcode,
#PRESU-consultoria .wpcf7,
#PRESU-consultoria form.wpcf7-form {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 1. Contenedor Grid Principal */
#PRESU-consultoria .campos-doble-columna {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 24px 20px !important; /* Espaciado entre filas (24px) y columnas (20px) */
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 2. Control Estricto de Columnas (Evita saltos e irregularidades) */
#PRESU-consultoria .columna-2 {
    flex: 0 0 calc(50% - 10px) !important;
    width: calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    box-sizing: border-box !important;
}

#PRESU-consultoria .columna-1 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 3. Limpieza de Párrafos y Saltos de Línea Fantasma de Contact Form 7 */
#PRESU-consultoria p {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    line-height: inherit !important;
}

#PRESU-consultoria label br,
#PRESU-consultoria .campos-doble-columna br {
    display: none !important;
}

/* 4. Estilo de las Etiquetas (Labels en Blanco para Fondo Azul) */
#PRESU-consultoria label {
    display: block !important;
    width: 100% !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 !important; 
    line-height: 1.4 !important;
}

/* Contenedor nativo del input de Contact Form 7 */
#PRESU-consultoria .wpcf7-form-control-wrap {
    display: block !important;
    margin-top: 6px !important; /* Espacio limpio entre label y caja */
    margin-bottom: 0 !important; 
    width: 100% !important;
}

/* 5. Estilo Unificado de Campos de Entrada */
#PRESU-consultoria input[type="text"],
#PRESU-consultoria input[type="email"],
#PRESU-consultoria input[type="tel"],
#PRESU-consultoria input[type="url"],
#PRESU-consultoria select,
#PRESU-consultoria textarea {
    width: 100% !important;
    max-width: 100% !important;
    height: 48px !important;
    padding: 0 16px !important;
    background-color: #f8f9fa !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    color: #2d3748 !important; /* Texto oscuro dentro de la caja blanca */
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
    margin: 0 !important; 
}

/* Ajuste específico para el área de mensaje */
#PRESU-consultoria textarea {
    height: 120px !important;
    padding: 16px !important;
    resize: vertical !important;
    font-family: inherit !important;
}

/* Efecto Focus con fondo blanco brillante al hacer clic */
#PRESU-consultoria input:focus,
#PRESU-consultoria select:focus,
#PRESU-consultoria textarea:focus {
    border-color: #ffffff !important;
    background-color: #ffffff !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.3) !important;
}

/* 6. Corrección para la Casilla de Políticas de Privacidad */
#PRESU-consultoria .politicas {
    display: block !important;
    margin-top: 8px !important;
}

#PRESU-consultoria .politicas .wpcf7-list-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
}

#PRESU-consultoria .politicas input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    cursor: pointer !important;
}

#PRESU-consultoria .politicas .wpcf7-list-item-label {
    font-weight: 400 !important;
    font-size: 14px !important;
    color: #ffffff !important;
    cursor: pointer !important;
}

/* 7. Botón de Envío Premium (Blanco con texto Azul) */
#PRESU-consultoria input[type="submit"].wpcf7-submit {
    background-color: #ffffff !important; 
    color: #1970B4 !important; /* Tu azul corporativo */
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border: none !important;
    height: 54px !important;
    padding: 0 36px !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    width: auto !important;
    margin: 0 !important;
}

#PRESU-consultoria input[type="submit"].wpcf7-submit:hover {
    background-color: #f1f5f9 !important; 
    transform: translateY(-1px);
}

/* 8. Control de las alertas de error de validación de Contact Form 7 */
#PRESU-consultoria .wpcf7-not-valid-tip {
    display: block !important;
    font-size: 12px !important;
    color: #ff9e9e !important; 
    font-weight: 500 !important;
    margin-top: 6px !important;
    margin-bottom: 0 !important;
}

/* ==========================================================================
   RESPONSIVE DESIGN (Móviles)
   ========================================================================== */
@media (max-width: 767px) {
    #PRESU-consultoria .columna-2 {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    #PRESU-consultoria input[type="submit"].wpcf7-submit {
        width: 100% !important; 
    }
}/* End custom CSS */