/*
Theme Name:        Mybooking Child - Carmove
Theme URI:         https://carmove.es
Description:       Child theme de Mybooking para Carmove (carmove.es). Personalizaciones de diseño y estilo manteniendo el tema padre actualizable.
Author:            Carmove
Template:          mybooking
Version:           2026.0618.9
Text Domain:       mybooking-child
*/

/* Color corporativo Carmove: #356ea6 */

/* =========================================================
   Hero / Buscador de reserva — refresh 2026
   Acotado por ID de sección para no afectar al resto del sitio.
   ========================================================= */

/* Sección del buscador: fondo sutil para que la tarjeta destaque */
.elementor-element-076c3ea {
    background-color: #f3f7fb !important;
    padding-top: 40px !important;
    padding-bottom: 48px !important;
}

/* Tarjeta flotante del buscador (sección 076c3ea / columna bc39a0b) */
.elementor-element-bc39a0b > .elementor-widget-wrap.elementor-element-populated {
    background: #ffffff;
    border: 1px solid #e7edf3;
    border-radius: 18px;
    box-shadow: 0 16px 40px rgba(20, 50, 90, 0.13);
    padding: 26px 28px !important;
}

/* Botón "Buscar coche" — azul corporativo, estilo pill */
.mybooking-selector_button.mb-button,
.mb-button.mybooking-selector_button {
    background-color: #356ea6 !important;
    border-color: #356ea6 !important;
    color: #ffffff !important;
    border-radius: 12px !important;
    font-weight: 600 !important;
    transition: background-color .15s ease;
}
.mybooking-selector_button.mb-button:hover,
.mb-button.mybooking-selector_button:hover {
    background-color: #2b598a !important;
    border-color: #2b598a !important;
}

/* Campos del buscador: bordes redondeados y limpios */
.mybooking-selector_form input,
.mybooking-selector_form select {
    border-radius: 10px !important;
}

/* Sección "¿Por qué alquilar?" (315f7425): sustituye la imagen marrón
   de la columna izquierda por un panel con degradado de marca. */
.elementor-element-35229a4f > .elementor-widget-wrap {
    background-image: linear-gradient(150deg, #356ea6 0%, #002949 100%) !important;
    background-color: #356ea6 !important;
}
.elementor-element-35229a4f > .elementor-widget-wrap > .elementor-background-overlay,
.elementor-element-35229a4f > .elementor-background-overlay {
    opacity: 0 !important;
}
.elementor-element-35229a4f .elementor-heading-title,
.elementor-element-35229a4f .elementor-heading-title * {
    color: #ffffff !important;
}

/* Hero (sección 5ed88028): overlay en degradado de marca.
   Sustituye el negro plano al 40% por un tinte azulado que da cohesión
   al lado del texto y se desvanece para integrar la foto del coche. */
.elementor-element-5ed88028 > .elementor-background-overlay {
    background-color: transparent !important;
    background-image: linear-gradient(100deg,
        rgba(233, 242, 250, 0.97) 0%,
        rgba(233, 242, 250, 0.72) 32%,
        rgba(233, 242, 250, 0.00) 56%) !important;
    opacity: 1 !important;
}

/* =========================================================
   MÓVIL — Hero atractivo (la sección de escritorio estaba oculta)
   ========================================================= */
@media (max-width: 767px) {
    /* Mostrar el hero también en móvil */
    .elementor-element-5ed88028.elementor-hidden-mobile {
        display: block !important;
    }
    /* Quitar el coche del fondo (se monta con el texto) y poner fondo claro de marca */
    .elementor-element-5ed88028 {
        background-image: none !important;
        background-color: #eaf3fb !important;
        min-height: auto !important;
        padding: 30px 0 20px !important;
    }
    .elementor-element-5ed88028 > .elementor-background-overlay {
        display: none !important;
    }
}

/* =========================================================
   Sección [5] (8fc5826) — "Reserva con Carmove" + descarga app
   Banda centrada con aire, en vez del badge suelto.
   ========================================================= */
.elementor-element-8fc5826 {
    background-color: #f3f7fb !important;
    padding-top: 44px !important;
    padding-bottom: 36px !important;
}
.elementor-element-8fc5826 .elementor-element-1637a54 {
    text-align: center;
}
.elementor-element-8fc5826 .elementor-heading-title {
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
}
.elementor-element-b59639c {
    text-align: center;
    margin-top: 16px;
}
.elementor-element-b59639c img {
    height: 48px;
    width: auto;
}

/* =========================================================
   MÓVIL — Barra fija "Reservar ahora" (conversión)
   ========================================================= */
.cm-mobile-cta { display: none; }

@media (max-width: 767px) {
    .cm-mobile-cta {
        display: flex;
        gap: 10px;
        align-items: stretch;
        position: fixed;
        left: 0; right: 0; bottom: 0;
        z-index: 99990;
        background: #ffffff;
        box-shadow: 0 -4px 18px rgba(20, 50, 90, 0.13);
        padding: 9px 12px;
        padding-bottom: calc(9px + env(safe-area-inset-bottom));
    }
    .cm-mobile-cta a { text-decoration: none !important; }
    /* Botón grande "Reservar ahora" */
    .cm-mobile-cta__btn {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #356ea6;
        color: #ffffff !important;
        font-family: Poppins, sans-serif;
        font-weight: 600;
        font-size: 16px;
        padding: 14px 16px;
        border-radius: 12px;
        line-height: 1;
    }
    /* Botones de icono (Llamar / WhatsApp) */
    .cm-mobile-cta__icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        flex: 0 0 50px;
        border-radius: 12px;
        color: #ffffff;
    }
    .cm-mobile-cta__icon svg { stroke: #ffffff; fill: #ffffff; }
    .cm-mobile-cta__call { background: #356ea6; }
    .cm-mobile-cta__call svg { fill: none !important; stroke: #ffffff !important; }
    .cm-mobile-cta__wa { background: #25D366; }
    .cm-mobile-cta__wa svg { fill: #ffffff !important; }

    /* Espacio al final para que la barra no tape el contenido/footer */
    body { padding-bottom: 78px !important; }

    /* Ocultar el botón flotante de CookieYes en móvil (círculo azul vacío
       que ensucia la pantalla). Revisar antes de pasar a producción. */
    .cky-btn-revisit-wrapper,
    .cky-revisit-bottom-left,
    .cky-btn-revisit {
        display: none !important;
    }

    /* Header NO sticky en móvil: libera espacio y evita que tape el
       formulario al pulsar "Reservar ahora". */
    #header_pop,
    .elementor-element-11c32652,
    #header_pop.elementor-sticky--active,
    .elementor-element-11c32652.elementor-sticky--active {
        position: relative !important;
        top: 0 !important;
        transform: none !important;
    }
    .elementor-sticky__spacer { display: none !important; height: 0 !important; }
}

/* El ancla del buscador deja hueco al desplazarse (header/respiro) */
#form-selector {
    scroll-margin-top: 20px;
}

/* =========================================================
   Destacados estilo Sixt (sección 39b4ebbd) — rejilla de tarjetas
   ========================================================= */
.cm-feat-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
@media (max-width: 767px) {
    .cm-feat-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   Pasos 1-2-3 estilo Sixt (sección 0a02d72)
   ========================================================= */
.cm-steps-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
}
@media (max-width: 767px) {
    .cm-steps-grid { grid-template-columns: 1fr; gap: 30px; }
}

/* =========================================================
   Sección [9] texto SEO (886f39c) — paneles suaves editoriales
   ========================================================= */
.elementor-element-9ed3e94 > .elementor-widget-wrap,
.elementor-element-d4f6ac2 > .elementor-widget-wrap {
    background: #f6f9fc;
    border: 1px solid #eef2f6;
    border-radius: 16px;
    padding: 30px 28px !important;
}
.elementor-element-886f39c .elementor-heading-title {
    font-family: Poppins, sans-serif !important;
    color: #16263a;
}
.elementor-element-886f39c .elementor-widget-text-editor {
    color: #51606d;
    line-height: 1.7;
}

/* =========================================================
   Sección [12] descarga de app (41926b92) — banda CTA
   ========================================================= */
.elementor-element-41926b92 {
    background-color: #f3f7fb !important;
    padding-top: 46px !important;
    padding-bottom: 50px !important;
}

/* =========================================================
   MÓVIL — Ajuste de tamaño de fuente en tarjetas (títulos largos)
   ========================================================= */
@media (max-width: 767px) {
    .cm-feat-grid h3,
    .cm-steps-grid h3,
    .elementor-element-57303c80 h3 {
        font-size: 16px !important;
        line-height: 1.3 !important;
    }
    .cm-feat-grid p,
    .cm-steps-grid p,
    .elementor-element-57303c80 p {
        font-size: 14px !important;
    }
}

/* Textos de prosa (sección tarjetas) alineados a la izquierda, no justificados */
.elementor-element-5e94404e .elementor-widget-container,
.elementor-element-15e317 .elementor-widget-container,
.elementor-element-15e317 p {
    text-align: left !important;
}

/* (Imagen de hero pospuesta — pendiente de elegir foto definitiva) */

/* =========================================================
   Vuelta zona intro (tras el buscador) — consolidación limpia
   ========================================================= */
/* Ocultar H1 huérfano + divisor redundantes y el badge de app roto */
.elementor-element-39005a0,
.elementor-element-e6594cd,
.elementor-element-b59639c {
    display: none !important;
}
/* Compactar la banda "Reserva con Carmove" (sin hueco muerto) */
.elementor-element-8fc5826 {
    padding-top: 40px !important;
    padding-bottom: 10px !important;
}
/* Título movido (antes en panel azul) como título de sección centrado y navy */
.elementor-element-6a8c98cd { text-align: center; }
.elementor-element-6a8c98cd .elementor-heading-title,
.elementor-element-6a8c98cd .elementor-heading-title * {
    color: #16263a !important;
    font-family: Poppins, sans-serif !important;
}
/* Intro "Bienvenido" centrado */
.elementor-element-5e94404e .elementor-widget-container {
    text-align: center !important;
    max-width: 760px;
    margin: 0 auto;
}

/* Subtítulo "Carmove, tu compañero de viaje ideal" (tamaño contenido, no H1) */
.elementor-element-6a8c98cd .elementor-heading-title {
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    margin-bottom: 4px !important;
}

/* =========================================================
   FLOTA — chips de specs (genérico)
   ========================================================= */
.cm-specs { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 14px; }
.cm-spec {
    display: inline-flex; align-items: center; gap: 6px;
    background: #f1f5f9; border-radius: 8px; padding: 6px 11px;
    font-family: Inter, sans-serif; font-size: 13px; color: #33414d;
}
.cm-spec img { width: 16px; height: 16px; margin: 0; vertical-align: middle; }
.cm-specs p { margin: 0; }

/* =========================================================
   FLOTA — rollout tarjetas de vehículo (9 coches, 3 categorías)
   ========================================================= */
.elementor-element-d7cec7d,
.elementor-element-c106cbc,
.elementor-element-b2d52f6,
.elementor-element-8e8fa6f,
.elementor-element-a9e6c46,
.elementor-element-d752471,
.elementor-element-1f56d02,
.elementor-element-b6b2aa9,
.elementor-element-9742766 { margin-bottom: 24px !important; }
.elementor-element-d7cec7d > .elementor-container,
.elementor-element-c106cbc > .elementor-container,
.elementor-element-b2d52f6 > .elementor-container,
.elementor-element-8e8fa6f > .elementor-container,
.elementor-element-a9e6c46 > .elementor-container,
.elementor-element-d752471 > .elementor-container,
.elementor-element-1f56d02 > .elementor-container,
.elementor-element-b6b2aa9 > .elementor-container,
.elementor-element-9742766 > .elementor-container {
    background: #ffffff;
    border: 1px solid #e7edf3;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 26px rgba(20,50,90,.07);
}
.elementor-element-d7cec7d .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-c106cbc .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-b2d52f6 .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-8e8fa6f .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-a9e6c46 .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-d752471 .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-1f56d02 .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-b6b2aa9 .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap,
.elementor-element-9742766 .elementor-container > .elementor-column:nth-child(2) > .elementor-widget-wrap {
    padding: 26px 32px !important;
    display: flex; flex-direction: column; justify-content: center;
}
/* Botón Reservar de cada ficha */
.elementor-element-d7cec7d .elementor-button,
.elementor-element-c106cbc .elementor-button,
.elementor-element-b2d52f6 .elementor-button,
.elementor-element-8e8fa6f .elementor-button,
.elementor-element-a9e6c46 .elementor-button,
.elementor-element-d752471 .elementor-button,
.elementor-element-1f56d02 .elementor-button,
.elementor-element-b6b2aa9 .elementor-button,
.elementor-element-9742766 .elementor-button {
    background-color: #356ea6 !important;
    color: #fff !important;
    border-radius: 12px !important;
    font-family: Poppins, sans-serif !important;
    font-weight: 600 !important;
    margin-top: 16px;
    display: inline-flex; align-items: center; gap: 7px;
}
.cm-veh-btn { display: inline-block; }
/* Encabezados de categoría */
.elementor-element-77851aef,
.elementor-element-b07fad6,
.elementor-element-71c769a { margin-top: 22px !important; margin-bottom: 6px !important; }

/* FLOTA — compactar la sección intro (titular animado muy alto) */
.elementor-element-59b5fec1 {
    min-height: auto !important;
    padding-top: 26px !important;
    padding-bottom: 8px !important;
}
.elementor-element-59b5fec1 > .elementor-container { min-height: auto !important; }
.elementor-element-59b5fec1 .elementor-headline,
.elementor-element-59b5fec1 .elementor-headline-dynamic-wrapper,
.elementor-element-59b5fec1 .elementor-headline-plain-text {
    font-size: 30px !important;
    line-height: 1.3 !important;
}

/* =========================================================
   HOME — armonía de títulos: navy consistente (quita el azul #024BAE off-brand)
   El azul de marca #356ea6 queda para botones/iconos/acentos.
   ========================================================= */
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-heading .elementor-heading-title * {
    color: #16263a !important;
}

/* =========================================================
   FLOTA — cabecera tipo banner con degradado de marca
   ========================================================= */
.elementor-element-59b5fec1 { padding: 30px 0 14px !important; }
.cm-flota-hero {
    position: relative;
    overflow: hidden;
    background: linear-gradient(125deg, #356ea6 0%, #1b4e7e 55%, #002949 100%);
    border-radius: 18px;
    padding: 46px 44px;
}
.cm-flota-car {
    position: absolute; right: 14px; bottom: -22px;
    width: 180px; height: 180px; fill: #ffffff; opacity: .09;
}
.cm-flota-kicker {
    display: inline-block; font-family: Poppins, sans-serif; font-weight: 600;
    font-size: 12px; letter-spacing: .1em; text-transform: uppercase;
    color: #cfe2f2; background: rgba(255,255,255,.14);
    padding: 6px 13px; border-radius: 999px; margin-bottom: 16px;
}
.cm-flota-title {
    font-family: Poppins, sans-serif !important; font-weight: 700 !important;
    font-size: 38px !important; line-height: 1.08 !important;
    color: #ffffff !important; margin: 0 0 12px !important;
}
.cm-flota-sub {
    font-family: Inter, sans-serif; font-size: 17px; line-height: 1.5;
    color: #e7f0f9; margin: 0 0 8px; font-weight: 500;
}
.cm-flota-intro {
    font-family: Inter, sans-serif; font-size: 14.5px; line-height: 1.6;
    color: #bcd6ee; margin: 0; max-width: 680px;
}
@media (max-width: 767px) {
    .cm-flota-hero { padding: 32px 24px; }
    .cm-flota-title { font-size: 28px !important; }
}

/* =========================================================
   LANDINGS DE UBICACIÓN — cabecera banner normalizada
   ========================================================= */
.cm-loc-hero {
    position: relative; overflow: hidden;
    background: linear-gradient(125deg, #356ea6 0%, #1b4e7e 55%, #002949 100%);
    border-radius: 18px; padding: 44px 42px;
}
.cm-loc-pin {
    position: absolute; right: 24px; bottom: -18px;
    width: 150px; height: 150px; fill: #ffffff; opacity: .09;
}
.cm-loc-kicker {
    display: inline-block; font-family: Poppins, sans-serif; font-weight: 600;
    font-size: 12px; letter-spacing: .1em; text-transform: uppercase;
    color: #cfe2f2; background: rgba(255,255,255,.14);
    padding: 6px 13px; border-radius: 999px; margin-bottom: 15px;
}
.cm-loc-title {
    font-family: Poppins, sans-serif !important; font-weight: 700 !important;
    font-size: 36px !important; line-height: 1.1 !important;
    color: #ffffff !important; margin: 0 0 11px !important;
}
.cm-loc-sub {
    font-family: Inter, sans-serif; font-size: 16px; line-height: 1.5;
    color: #e7f0f9; margin: 0; max-width: 640px;
}
@media (max-width: 767px) {
    .cm-loc-hero { padding: 30px 24px; }
    .cm-loc-title { font-size: 27px !important; }
}

/* ====== Foto de la ubicación (bloque entrega 2 columnas) ====== */
.cm-loc-photo img{
	width:100%;
	height:100%;
	min-height:240px;
	object-fit:cover;
	border-radius:16px;
	box-shadow:0 18px 40px -18px rgba(13,38,63,.45);
	display:block;
}
@media (max-width:1024px){
	.cm-loc-photo img{min-height:200px;}
}
@media (max-width:767px){
	.cm-loc-photo img{min-height:200px;margin-top:18px;}
}

/* =========================================================
   HEADER 2026 — barra única, menú centrado, cristal al scroll
   Plantilla Elementor 2605 reconstruida (sección #header_pop / 11c32652)
   ========================================================= */

/* Base: header blanco, sin sombra permanente */
.elementor-element-11c32652,
#header_pop.cm-header { background: #ffffff !important; }
.elementor-element-11c32652 > .elementor-background-overlay { display:none !important; }

/* Fila única en flex: logo | menú (centrado) | acciones */
.elementor-element-5cd92664 > .elementor-container {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    padding-top: 13px;
    padding-bottom: 13px;
    transition: padding .2s ease;
}
.elementor-element-5cd92664 { border-bottom: 1px solid #eef2f6; transition: background .25s ease, box-shadow .25s ease; }

.elementor-element-3670e57e { flex: 0 0 auto !important; width: auto !important; }
.elementor-element-45a0f962  { flex: 1 1 auto !important; width: auto !important; }
.elementor-element-5432f8e3  { flex: 0 0 auto !important; width: auto !important; }

/* Logo */
.cm-hd-logo img { height: 40px !important; width: auto !important; }
.elementor-element-3670e57e .elementor-widget-wrap { justify-content: flex-start; }

/* Menú centrado + tipografía/colores de marca
   IMPORTANTE: acotar SOLO al menú principal (--main); si se aplica a
   .elementor-nav-menu a secas, también afecta al panel desplegable móvil
   (--dropdown) y rompe la vista móvil. */
.elementor-element-45a0f962 .elementor-widget-wrap { justify-content: center; }
.cm-hd-nav .elementor-nav-menu--main {
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: 26px;
}
.cm-hd-nav .elementor-nav-menu--main > li { margin: 0 !important; }
.cm-hd-nav .elementor-nav-menu--main .elementor-item {
    white-space: nowrap;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.cm-hd-nav .elementor-nav-menu--main .elementor-item {
    color: #16263a !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    transition: color .15s ease;
}
.cm-hd-nav .elementor-nav-menu--main .elementor-item:hover,
.cm-hd-nav .elementor-nav-menu--main .elementor-item.elementor-item-active,
.cm-hd-nav .elementor-nav-menu--main .current-menu-item > .elementor-item { color: #356ea6 !important; }
.cm-hd-nav .elementor-nav-menu--main .sub-menu a:hover { color: #356ea6 !important; }

/* Acciones a la derecha: WhatsApp + CTA en una fila */
.elementor-element-5432f8e3 > .elementor-widget-wrap,
.elementor-element-5432f8e3 .elementor-widget-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 14px;
}
.elementor-element-5432f8e3 .elementor-widget { width: auto !important; max-width: none !important; margin: 0 !important; }

/* Icono WhatsApp circular */
.cm-hd-wa {
    display: inline-flex; align-items: center; justify-content: center;
    width: 42px; height: 42px; border-radius: 50%;
    border: 1px solid #e0e8f0; color: #25963f; text-decoration: none;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.cm-hd-wa:hover { background: #25963f; color: #fff; border-color: #25963f; }
.cm-hd-wa svg { display: block; }

/* CTA "Reserva ahora" → pastilla degradado de marca */
.cm-hd-cta .elementor-button {
    background: linear-gradient(125deg,#356ea6 0%,#1b4e7e 60%,#0f3e66 100%) !important;
    border-radius: 999px !important;
    padding: 12px 26px !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    text-transform: none !important;
    text-decoration: none !important;
    box-shadow: 0 6px 18px -6px rgba(27,78,126,.5);
    transition: transform .15s ease, box-shadow .15s ease, background .2s ease;
}
.cm-hd-cta .elementor-button:hover,
.cm-hd-cta .elementor-button .elementor-button-text,
.cm-hd-cta .elementor-button:hover .elementor-button-text { text-decoration: none !important; }
.cm-hd-cta .elementor-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 26px -8px rgba(27,78,126,.6);
    background: linear-gradient(125deg,#3b7ab6,#0f3e66) !important;
}
.cm-hd-cta .elementor-button .elementor-button-icon svg,
.cm-hd-cta .elementor-button img { width: 18px; height: 18px; filter: brightness(0) invert(1); }

/* Efecto CRISTAL al hacer scroll (Elementor añade .elementor-sticky--active) */
.elementor-element-11c32652.elementor-sticky--active .elementor-element-5cd92664,
#header_pop.elementor-sticky--active .elementor-element-5cd92664 {
    background: rgba(255,255,255,0.72) !important;
    -webkit-backdrop-filter: blur(11px) saturate(1.12);
    backdrop-filter: blur(11px) saturate(1.12);
    box-shadow: 0 8px 28px -12px rgba(13,38,63,.30);
    border-bottom: 1px solid rgba(53,110,166,.14);
}
.elementor-element-11c32652.elementor-sticky--active .elementor-element-5cd92664 > .elementor-container {
    padding-top: 9px; padding-bottom: 9px;
}

/* ---- Botón hamburguesa con efecto caja ---- */
#header_pop .elementor-menu-toggle {
    border: 1px solid #e0e8f0 !important;
    border-radius: 12px !important;
    width: 44px; height: 44px;
    color: #16263a !important;
    background: #fff !important;
    box-shadow: 0 4px 14px -6px rgba(13,38,63,.25);
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
#header_pop .elementor-menu-toggle:hover { background: #f0f5fa !important; }
#header_pop .elementor-menu-toggle.elementor-active {
    background: #356ea6 !important; color: #fff !important; border-color: #356ea6 !important;
}

/* ---- Panel del menú MÓVIL: tarjeta flotante con glass + sombra ----
   Se posiciona FIJO a lo ancho (con márgenes) bajo el header, porque el
   widget del menú vive en una columna estrecha y un absolute saldría fino.
   :not(.sub-menu) → solo el panel raíz; los submenús anidados (que también
   llevan la clase --dropdown) NO deben volverse fijos. */
#header_pop .elementor-nav-menu--dropdown:not(.sub-menu) {
    position: fixed !important;
    top: 68px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    max-height: calc(100vh - 88px);
    overflow-y: auto !important;
    z-index: 100 !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,0.92) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.15);
    backdrop-filter: blur(16px) saturate(1.15);
    box-shadow: 0 22px 55px -14px rgba(13,38,63,.40) !important;
    border: 1px solid rgba(53,110,166,.12) !important;
}
#header_pop .elementor-nav-menu--dropdown .elementor-nav-menu { overflow: hidden; border-radius: 18px; }
/* Ítems de primer nivel — compactos */
#header_pop .elementor-nav-menu--dropdown .elementor-item {
    padding: 11px 20px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    color: #16263a !important;
    border-bottom: 1px solid rgba(53,110,166,.08);
    transition: background .15s ease, color .15s ease;
}
#header_pop .elementor-nav-menu--dropdown .elementor-item:hover,
#header_pop .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
#header_pop .elementor-nav-menu--dropdown .current-menu-item > .elementor-item {
    background: rgba(53,110,166,.07) !important;
    color: #356ea6 !important;
}
/* Subniveles (las 24 ubicaciones, idiomas): MÁS compactos, en 2 columnas.
   IMPORTANTE: usar column-count (NO display:grid) para no romper el toggle
   abrir/cerrar de Elementor, que conmuta `display`. column-count respeta el
   display:none cuando está cerrado. Sub-ítems usan .elementor-sub-item. */
#header_pop .elementor-nav-menu--dropdown .sub-menu {
    column-count: 2;
    column-gap: 6px;
    background: rgba(53,110,166,.04) !important;
    padding: 6px !important;
}
#header_pop .elementor-nav-menu--dropdown .sub-menu > li { break-inside: avoid; }
#header_pop .elementor-nav-menu--dropdown .elementor-sub-item {
    padding: 9px 12px !important;
    font-size: 13.5px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    color: #42566a !important;
    border-bottom: 1px solid rgba(53,110,166,.06) !important;
    white-space: normal;
    transition: background .12s ease, color .12s ease;
}
#header_pop .elementor-nav-menu--dropdown .elementor-sub-item:hover,
#header_pop .elementor-nav-menu--dropdown .elementor-sub-item.elementor-item-active {
    background: rgba(53,110,166,.10) !important;
    color: #356ea6 !important;
    border-radius: 8px;
}
/* Botón de abrir submenú (flecha) alineado a la marca */
#header_pop .elementor-nav-menu--dropdown .sub-arrow { color: #356ea6; }

/* ---- Desplegable de ESCRITORIO ---- */
@media (min-width: 1025px) {
    /* Estilo común de todos los submenús del menú principal */
    #header_pop .elementor-nav-menu--main .sub-menu {
        padding: 8px !important;
        border-radius: 14px;
        box-shadow: 0 18px 44px -12px rgba(13,38,63,.28);
    }
    /* SOLO "Puntos de Entrega" (24 ubicaciones): ancho, 2 columnas y
       CENTRADO bajo el ítem. Acotado al li #598 para que el de idiomas (ES)
       no salga ancho ni descentrado. */
    #header_pop .elementor-nav-menu--main .menu-item-598 .sub-menu {
        column-count: 2;
        column-gap: 6px;
        min-width: 470px;
        left: 50% !important;
        transform: translateX(-50%) !important;
    }
    #header_pop .elementor-nav-menu--main .menu-item-598 .sub-menu > li { break-inside: avoid; }
    #header_pop .elementor-nav-menu--main .sub-menu .elementor-sub-item {
        padding: 8px 14px !important;
        font-size: 14px !important;
        white-space: nowrap;
        border-radius: 8px;
        transition: background .12s ease, color .12s ease;
    }
    #header_pop .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover,
    #header_pop .elementor-nav-menu--main .sub-menu .elementor-sub-item.elementor-item-active {
        background: rgba(53,110,166,.08) !important;
        color: #356ea6 !important;
    }
}

/* ---- Móvil/tablet: logo | Reservar | hamburguesa ---- */
@media (max-width: 1024px) {
    .elementor-element-5cd92664 > .elementor-container { flex-wrap: nowrap !important; padding: 10px 4px; }
    .elementor-element-3670e57e { flex: 1 1 auto !important; order: 1; }
    .elementor-element-5432f8e3  { flex: 0 0 auto !important; order: 2; }
    .elementor-element-45a0f962  { flex: 0 0 auto !important; order: 3; }
    .elementor-element-45a0f962 .elementor-widget-wrap { justify-content: flex-end; }
    .cm-hd-wa { display: none; }                 /* WhatsApp ya está en la barra fija inferior */
    .cm-hd-logo img { height: 34px !important; }
    .cm-hd-cta .elementor-button { padding: 9px 16px !important; font-size: 14px !important; }
    .elementor-element-5432f8e3 .elementor-widget-wrap { gap: 10px; }
}

/* =========================================================
   FOOTER 2026 — oscuro con degradado de marca (plantilla 4659)
   Render como widget HTML único (.cm-footer). URLs relativas.
   ========================================================= */
.cm-footer {
    background: linear-gradient(135deg,#1b4e7e 0%,#0f3e66 45%,#002949 100%);
    color: #cfe0ef;
    font-family: Inter, sans-serif;
}
.cm-footer__inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 34px;
    padding: 46px 24px 34px;
}
.cm-footer__brand { flex: 1 1 240px; min-width: 220px; }
.cm-footer__logo {
    font-family: Poppins, sans-serif;
    font-size: 24px; font-weight: 600; color: #ffffff;
    letter-spacing: -.5px; line-height: 1;
}
.cm-footer__logo span {
    font-size: 12px; font-weight: 400; color: #7fb0d8;
    margin-left: 6px; letter-spacing: 0;
}
.cm-footer__claim { font-size: 13px; line-height: 1.65; color: #9fc0dc; margin: 14px 0 16px; max-width: 320px; }
.cm-footer__contact { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; }
.cm-footer__cbtn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 9px 15px; border-radius: 11px;
    background: rgba(255,255,255,.09); color: #fff !important;
    font-size: 13.5px; font-weight: 500; text-decoration: none !important;
    transition: background .15s ease, transform .15s ease;
}
.cm-footer__cbtn:hover { background: rgba(255,255,255,.18); transform: translateY(-1px); }
.cm-footer__cbtn--wa:hover { background: #25963f; }
.cm-footer__apps { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.cm-footer__apps a {
    display: inline-flex; align-items: center;
    background: rgba(255,255,255,.95); border-radius: 9px; padding: 5px 9px;
    transition: transform .15s ease, box-shadow .15s ease;
}
.cm-footer__apps a:hover { transform: translateY(-1px); box-shadow: 0 8px 18px -8px rgba(0,0,0,.5); }
.cm-footer__apps img { height: 26px; width: auto; display: block; }

.cm-footer__col { flex: 1 1 150px; min-width: 140px; }
.cm-footer__col--wide { flex: 1.7 1 250px; min-width: 240px; }
.cm-footer__h {
    font-family: Poppins, sans-serif;
    font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
    color: #ffffff; margin: 2px 0 14px;
}
.cm-footer__list { display: flex; flex-direction: column; gap: 9px; }
.cm-footer__locgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px 16px; }
.cm-footer__link {
    color: #bcd5ea !important; font-size: 13px; line-height: 1.3;
    text-decoration: none !important; transition: color .15s ease, padding-left .15s ease;
}
.cm-footer__link:hover { color: #ffffff !important; padding-left: 3px; }

.cm-footer__bottom {
    border-top: 1px solid rgba(255,255,255,.12);
    max-width: 1200px; margin: 0 auto;
    padding: 16px 24px;
    display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px;
    font-size: 12px; color: #7fa6c6;
}

@media (max-width: 767px) {
    .cm-footer__inner { gap: 26px; padding: 34px 20px 26px; }
    .cm-footer__brand { flex: 1 1 100%; }
    .cm-footer__col { flex: 1 1 45%; }
    .cm-footer__col--wide { flex: 1 1 100%; }
    .cm-footer__bottom { flex-direction: column; gap: 6px; text-align: center; justify-content: center; }
}

/* =========================================================
   FAQ 2026 — acordeón por categorías (página 822) <details>
   ========================================================= */
.cm-faq { max-width: 880px; margin: 0 auto; padding: 6px 0 4px; }
.cm-faq__cat {
    font-family: Poppins, sans-serif; font-weight: 700; font-size: 20px; color: #16263a;
    margin: 30px 0 14px; padding-left: 14px; border-left: 4px solid #356ea6; line-height: 1.2;
}
.cm-faq__group:first-of-type .cm-faq__cat { margin-top: 6px; }
.cm-faq__item {
    background: #fff; border: 1px solid #e7edf3; border-radius: 14px;
    margin-bottom: 10px; overflow: hidden; transition: box-shadow .15s ease, border-color .15s ease;
}
.cm-faq__item[open] { border-color: #cfe0f0; box-shadow: 0 10px 28px -14px rgba(13,38,63,.30); }
.cm-faq__q {
    list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between;
    gap: 14px; padding: 16px 20px;
    font-family: Poppins, sans-serif; font-weight: 600; font-size: 15.5px; color: #16263a;
    transition: color .15s ease;
}
.cm-faq__q::-webkit-details-marker { display: none; }
.cm-faq__q::after {
    content: ""; flex: 0 0 auto; width: 11px; height: 11px;
    border-right: 2px solid #356ea6; border-bottom: 2px solid #356ea6;
    transform: rotate(45deg); transition: transform .2s ease; margin-top: -3px;
}
.cm-faq__item[open] .cm-faq__q { color: #356ea6; }
.cm-faq__item[open] .cm-faq__q::after { transform: rotate(-135deg); margin-top: 2px; }
.cm-faq__q:hover { color: #356ea6; }
.cm-faq__a {
    padding: 0 20px 18px; font-family: Inter, sans-serif; font-size: 14.5px; line-height: 1.7; color: #51606d;
}
.cm-faq__a strong { color: #16263a; }
@media (max-width: 767px) {
    .cm-faq__cat { font-size: 18px; }
    .cm-faq__q { font-size: 14.5px; padding: 14px 16px; }
    .cm-faq__a { padding: 0 16px 16px; }
}

/* =========================================================
   Home — bloque "¿Por qué alquilar tu coche en Madrid con Carmove?"
   La COLUMNA (105f266a) tenía padding asimétrico heredado de un diseño
   antiguo (5% izq / 25% der), lo que empujaba el contenido a la izquierda
   y descentraba el título. Igualamos el padding derecho a 5% → el bloque
   ocupa el ancho centrado y el H2 (text-align:center) queda centrado.
   ========================================================= */
.elementor-element-105f266a > .elementor-widget-wrap { padding-right: 5% !important; }
/* Heading "Carmove, tu compañero de viaje ideal" (6a8c98cd) estaba align:right; centrar para armonía total */
.elementor-element-6a8c98cd,
.elementor-element-6a8c98cd .elementor-heading-title { text-align: center !important; }

/* =========================================================
   BLOG — entradas (single post) con el estilo de marca
   Plantilla del tema (h1.post_title + .entry-content). Acotado a .single-post.
   ========================================================= */
.single-post .post_title {
    font-family: Poppins, sans-serif !important;
    font-weight: 700 !important;
    color: #16263a !important;
    letter-spacing: -.5px;
}
.single-post .entry-content {
    font-family: Inter, sans-serif;
    font-size: 16.5px;
    line-height: 1.8;
    color: #3d4a58;
}
.single-post .entry-content p { margin: 0 0 18px; }
.single-post .entry-content h2 {
    font-family: Poppins, sans-serif; font-weight: 700; font-size: 26px;
    color: #16263a; margin: 36px 0 12px; line-height: 1.25;
}
.single-post .entry-content h3 {
    font-family: Poppins, sans-serif; font-weight: 600; font-size: 20px;
    color: #16263a; margin: 28px 0 10px;
}
.single-post .entry-content a { color: #356ea6; text-decoration: underline; text-underline-offset: 2px; }
.single-post .entry-content a:hover { color: #1b4e7e; }
.single-post .entry-content ul, .single-post .entry-content ol { margin: 0 0 18px; padding-left: 22px; }
.single-post .entry-content li { margin-bottom: 8px; }
.single-post .entry-content img { border-radius: 14px; height: auto; }
.single-post .entry-content blockquote {
    border-left: 4px solid #356ea6; background: #f5f8fb; margin: 22px 0;
    padding: 14px 20px; border-radius: 0 12px 12px 0; color: #42566a;
}
/* Caja CTA reutilizable dentro de entradas */
.cm-post-cta {
    background: linear-gradient(125deg,#356ea6 0%,#1b4e7e 55%,#002949 100%);
    border-radius: 16px; padding: 26px 28px; margin: 30px 0; text-align: center;
}
.cm-post-cta p { color: #e7f0f9 !important; font-size: 15px; margin: 0 0 16px !important; }
.cm-post-cta h3 { color: #fff !important; margin: 0 0 8px !important; font-family: Poppins,sans-serif; }
.cm-post-cta .cm-post-btn {
    display: inline-block; background: #fff; color: #1b4e7e !important;
    font-family: Poppins,sans-serif; font-weight: 600; font-size: 15px;
    text-decoration: none !important; padding: 12px 26px; border-radius: 12px;
}

/* =========================================================
   RENDIMIENTO — fuente Inter con font-display:swap
   El tema la sirve sin font-display (texto invisible mientras carga).
   Re-declaramos con swap (misma URL → sin doble descarga) para que el
   texto se pinte de inmediato con fuente de sistema y cambie al cargar.
   ========================================================= */
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("/wp-content/themes/mybooking/fonts/Inter-roman-var.woff2") format("woff2-variations");
}

/* "Donde tú quieras" destacado como primer ítem del desplegable Puntos de Entrega */
#header_pop .menu-item-598 > .sub-menu > li:first-child > a {
    color: #356ea6 !important;
    font-weight: 700 !important;
}
@media (min-width: 1025px) {
    #header_pop .elementor-nav-menu--main .menu-item-598 .sub-menu > li:first-child > a {
        background: rgba(53,110,166,.08) !important;
    }
}

/* ===== Home: tarjetas Atocha / Flexibilidad — armonizar tipografía + glass (2026-06-16) ===== */
/* Títulos: tamaño coherente y navy corporativo (en vez de #024BAE) */
.elementor-element-2c0aec9 .elementor-heading-title,
.elementor-element-bb31f01 .elementor-heading-title {
    font-size: 1.25rem !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    color: #16263a !important;
}
/* Cuerpo: 16px e interlineado normal (estaba 18px / 2em) */
.elementor-element-73b0d08.elementor-widget-text-editor,
.elementor-element-3b4584d.elementor-widget-text-editor,
.elementor-element-73b0d08 p,
.elementor-element-3b4584d p {
    font-size: 1rem !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    color: #3a4654 !important;
}
/* Quitar la línea gris inferior (el glass ya delimita la tarjeta) */
.elementor-element-73b0d08,
.elementor-element-3b4584d {
    border-bottom: 0 !important;
}
/* Efecto glass (frosted) en las dos columnas-tarjeta */
.elementor-element-9ed3e94,
.elementor-element-d4f6ac2 {
    background: rgba(255,255,255,0.55) !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
    border: 1px solid rgba(255,255,255,0.75) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(16,38,58,0.10) !important;
    overflow: hidden;
}
.elementor-element-9ed3e94 > .elementor-element-populated,
.elementor-element-9ed3e94 > .elementor-widget-wrap,
.elementor-element-d4f6ac2 > .elementor-element-populated,
.elementor-element-d4f6ac2 > .elementor-widget-wrap {
    background: transparent !important;
    padding: 30px 28px !important;
}
@media (max-width:767px){
    .elementor-element-2c0aec9 .elementor-heading-title,
    .elementor-element-bb31f01 .elementor-heading-title { font-size: 1.15rem !important; }
    .elementor-element-73b0d08 p,
    .elementor-element-3b4584d p { font-size: 0.95rem !important; line-height: 1.6 !important; }
    .elementor-element-9ed3e94 > .elementor-element-populated,
    .elementor-element-9ed3e94 > .elementor-widget-wrap,
    .elementor-element-d4f6ac2 > .elementor-element-populated,
    .elementor-element-d4f6ac2 > .elementor-widget-wrap { padding: 22px 18px !important; }
}
/* ===== fin tarjetas glass home ===== */

/* ===== Home: bloque "Explora Madrid a tu ritmo" — panel glass + tipografía (2026-06-16) ===== */
.elementor-element-15e317 > .elementor-widget-container {
    background: rgba(255,255,255,0.55) !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
    border: 1px solid rgba(255,255,255,0.75) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(16,38,58,0.10) !important;
    padding: 30px 32px !important;
}
.elementor-element-15e317 h1,
.elementor-element-15e317 h2,
.elementor-element-15e317 h3,
.elementor-element-15e317 h4 {
    font-size: 1.6rem !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #16263a !important;
    margin-bottom: 14px !important;
}
.elementor-element-15e317,
.elementor-element-15e317 p {
    font-size: 1rem !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    color: #3a4654 !important;
}
.elementor-element-15e317 p { margin-bottom: 14px !important; }
.elementor-element-15e317 a {
    color: #356ea6 !important;
    font-weight: 600;
    text-decoration: none;
}
.elementor-element-15e317 a:hover { text-decoration: underline; }
@media (max-width:767px){
    .elementor-element-15e317 > .elementor-widget-container { padding: 22px 20px !important; }
    .elementor-element-15e317 h1,
    .elementor-element-15e317 h2,
    .elementor-element-15e317 h3,
    .elementor-element-15e317 h4 { font-size: 1.35rem !important; }
    .elementor-element-15e317 p { font-size: 0.95rem !important; }
}
/* ===== fin bloque Explora Madrid ===== */

/* ===== Home hero 5ed88028: el botón "Buscar coche ahora" no se corta/solapa con el fin de la sección ===== */
.elementor-element-5ed88028 { padding-bottom: 56px !important; }
.elementor-element-74a21950 { margin-bottom: 6px !important; }
@media (max-width:1024px){ .elementor-element-5ed88028 { padding-bottom: 40px !important; } }
@media (max-width:767px){ .elementor-element-5ed88028 { padding-bottom: 30px !important; } }
/* ===== fin fix botón hero ===== */

/* ===== Home hero: imagen Cibeles+flota — contraste (degradado izq) + texto claro (2026-06-16) ===== */
.elementor-element-5ed88028 { position: relative; }
.elementor-element-5ed88028 > .elementor-background-overlay { opacity: 0 !important; }
.elementor-element-5ed88028::before {
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(90deg, rgba(4,20,38,.82) 0%, rgba(4,20,38,.52) 30%, rgba(4,20,38,0) 58%);
}
.elementor-element-5ed88028 > .elementor-container { position: relative; z-index: 1; }
.elementor-element-490cf1c3 .elementor-heading-title { color: #ffffff !important; }
.elementor-element-311b6108,
.elementor-element-311b6108 * { color: rgba(255,255,255,.94) !important; }
@media (max-width:767px){
    .elementor-element-5ed88028::before {
        background: linear-gradient(180deg, rgba(4,20,38,.45) 0%, rgba(4,20,38,.80) 100%);
    }
}
/* ===== fin contraste hero ===== */

/* ===== Home hero: anclar fondo abajo para no cortar los coches ===== */
.elementor-element-5ed88028 { background-position: center bottom !important; background-size: cover !important; }
@media (max-width:767px){ .elementor-element-5ed88028 { background-position: right bottom !important; } }
/* ===== fin anclaje hero ===== */

/* ===== Home hero H1: placa de cristal (glass) detrás del titular (2026-06-16) ===== */
.elementor-element-490cf1c3 .elementor-heading-title{
    display:inline-block;
    padding:14px 28px;
    background:rgba(255,255,255,.10);
    -webkit-backdrop-filter:blur(12px) saturate(135%);
    backdrop-filter:blur(12px) saturate(135%);
    border:1px solid rgba(255,255,255,.28);
    border-radius:20px;
    box-shadow:0 18px 50px -12px rgba(0,0,0,.45);
}
@media (max-width:767px){
    .elementor-element-490cf1c3 .elementor-heading-title{ padding:10px 16px; border-radius:14px; }
}
/* ===== fin glass H1 hero ===== */

/* ===== Móvil: pulido apertura hero (2026-06-16) ===== */
@media (max-width:767px){
    .elementor-element-5ed88028{ min-height:auto !important; }
    .elementor-element-37f955df > .elementor-element-populated,
    .elementor-element-37f955df > .elementor-widget-wrap{ padding-top:24px !important; padding-bottom:10px !important; }
    .elementor-element-5ed88028::before{
        background:linear-gradient(180deg, rgba(4,20,38,.30) 0%, rgba(4,20,38,.70) 100%) !important;
    }
}
/* Botón "Buscar coche ahora" sólido y legible sobre el hero oscuro */
.elementor-element-74a21950 .elementor-button{
    background-color:#ffffff !important;
    border:none !important;
    box-shadow:0 12px 28px -8px rgba(0,0,0,.45) !important;
}
.elementor-element-74a21950 .elementor-button,
.elementor-element-74a21950 .elementor-button *{ color:#16263a !important; fill:#16263a !important; }
.elementor-element-74a21950 .elementor-button:hover{ background-color:#eaf1f8 !important; }
/* ===== fin móvil hero ===== */

/* ===== Móvil: hero con imagen vertical dedicada (coche protagonista) (2026-06-16) ===== */
@media (max-width:767px){
    .elementor-element-5ed88028{
        background-image:url('https://carmove.es/wp-content/uploads/2026/06/Carmove_hero_movil.webp') !important;
        background-position:center bottom !important;
        background-size:cover !important;
    }
    .elementor-element-5ed88028::before{
        background:linear-gradient(180deg, rgba(4,20,38,.20) 0%, rgba(4,20,38,.42) 50%, rgba(4,20,38,0) 100%) !important;
    }
}
/* ===== fin hero movil dedicado ===== */

/* ===== Móvil hero v2: coche más abajo + espacio para que el botón no lo tape (2026-06-16) ===== */
@media (max-width:767px){
    .elementor-element-5ed88028{
        background-image:url('https://carmove.es/wp-content/uploads/2026/06/Carmove_hero_movil_v2.webp') !important;
    }
    .elementor-element-37f955df > .elementor-element-populated,
    .elementor-element-37f955df > .elementor-widget-wrap{ padding-bottom:215px !important; }
}
/* ===== fin hero movil v2 ===== */

/* ===== Barra superior de identidad / slogan (2026-06-16) ===== */
.cm-topbar{
    background:linear-gradient(125deg,#356ea6 0%,#1b4e7e 55%,#002949 100%);
    color:#ffffff; text-align:center; font-size:13px; font-weight:600;
    letter-spacing:.2px; padding:7px 14px; line-height:1.35; position:relative; z-index:6;
}
.cm-topbar__sub{ font-weight:400; opacity:.9; }
@media (max-width:767px){
    .cm-topbar{ font-size:12px; padding:6px 12px; }
    .cm-topbar__sub{ display:none; }
}
/* ===== fin barra slogan ===== */

/* ===== Móvil hero v3: coche recortado (capa) sobre degradado CSS — tamaño fijo, nunca se corta (2026-06-16) ===== */
@media (max-width:767px){
    .elementor-element-5ed88028{
        background-image:
            url('https://carmove.es/wp-content/uploads/2026/06/Carmove_car_movil.webp'),
            linear-gradient(180deg,#2f6aa0 0%,#0d3a63 44%,#001528 100%) !important;
        background-repeat:no-repeat,no-repeat !important;
        background-position:center bottom,center center !important;
        background-size:94% auto,cover !important;
    }
    .elementor-element-5ed88028::before{ background:none !important; }
    .elementor-element-37f955df > .elementor-element-populated,
    .elementor-element-37f955df > .elementor-widget-wrap{ padding-bottom:185px !important; }
}
/* ===== fin hero movil v3 ===== */

/* ===== Móvil: tarjeta-buscador (facade) sobre el hero — estilo Sixt (2026-06-16) ===== */
.cm-search-facade{ display:none; }
@media (max-width:767px){
    .cm-search-facade{
        display:block; background:#ffffff; border-radius:16px; padding:13px 13px 14px;
        box-shadow:0 16px 36px -10px rgba(0,0,0,.45); margin-top:10px; cursor:pointer;
        -webkit-tap-highlight-color:transparent;
    }
    .cm-sf__label{ font-size:11.5px; color:#5f5e5a; font-weight:600; margin-bottom:6px; }
    .cm-sf__field{ display:flex; align-items:center; gap:8px; border:1px solid #dbe0e6; border-radius:10px; padding:11px 10px; font-size:13px; color:#16263a; margin-bottom:8px; }
    .cm-sf__dates{ display:flex; gap:8px; margin-bottom:11px; }
    .cm-sf__date{ flex:1; border:1px solid #dbe0e6; border-radius:10px; padding:10px; font-size:12.5px; color:#56606b; }
    .cm-sf__btn{ background:linear-gradient(125deg,#356ea6,#1b4e7e); color:#fff; text-align:center; border-radius:11px; padding:13px; font-size:15px; font-weight:700; letter-spacing:.2px; }
    .elementor-element-74a21950{ display:none !important; }
}
/* ===== fin facade buscador ===== */

/* ===== Móvil hero: aligerar para que la tarjeta-buscador entre completa (2026-06-16) ===== */
@media (max-width:767px){
    /* H1 más compacto */
    .elementor-element-490cf1c3 .elementor-heading-title{
        font-size:32px !important; line-height:1.12 !important; padding:10px 18px !important;
    }
    /* subtítulo compacto + ocultar checklist (la tarjeta es el foco) */
    .elementor-element-311b6108 p{ font-size:14px !important; line-height:1.5 !important; margin-bottom:0 !important; }
    .elementor-element-311b6108 div[style*="flex-wrap"]{ display:none !important; }
    /* tarjeta un pelín más arriba y coche algo menor */
    .cm-search-facade{ margin-top:12px !important; }
    .elementor-element-5ed88028{ background-size:90% auto, cover !important; }
    .elementor-element-37f955df > .elementor-element-populated,
    .elementor-element-37f955df > .elementor-widget-wrap{ padding-top:18px !important; padding-bottom:170px !important; }
}
/* ===== fin aligerar hero movil ===== */

/* ===== Móvil hero v4: coche en ::after (evita lazyload de bg multi-capa) (2026-06-16) ===== */
@media (max-width:767px){
    .elementor-element-5ed88028{
        position:relative;
        background-image:linear-gradient(180deg,#2f6aa0 0%,#0d3a63 44%,#001528 100%) !important;
        background-size:cover !important;
        background-position:center center !important;
    }
    .elementor-element-5ed88028::before{ display:none !important; }
    .elementor-element-5ed88028::after{
        content:'' !important; position:absolute !important;
        left:0 !important; right:0 !important; bottom:0 !important; top:auto !important;
        height:180px !important; z-index:0 !important; pointer-events:none !important;
        background:url('https://carmove.es/wp-content/uploads/2026/06/Carmove_car_movil.webp') center bottom / auto 100% no-repeat !important;
    }
    .elementor-element-5ed88028 > .elementor-container{ position:relative !important; z-index:1 !important; }
}
/* ===== fin hero movil v4 ===== */

/* ===== Móvil hero v5: coche como <img> real (robusto a RUCSS+lazyload) (2026-06-16) ===== */
.cm-hero-car{ display:none; }
@media (max-width:767px){
    .elementor-element-5ed88028::after{ display:none !important; }
    .cm-hero-car{
        display:block !important; position:absolute !important;
        left:50% !important; bottom:0 !important; transform:translateX(-50%) !important;
        width:94% !important; max-width:380px !important; height:auto !important;
        z-index:0 !important; pointer-events:none !important;
    }
    .cm-search-facade{ position:relative !important; z-index:2 !important; }
}
/* ===== fin coche img movil ===== */

/* ===== Móvil hero v6: coche en FLUJO (estático) bajo la tarjeta — render garantizado (2026-06-16) ===== */
@media (max-width:767px){
    .cm-hero-car{
        display:block !important; position:static !important; transform:none !important;
        width:82% !important; max-width:340px !important; height:auto !important;
        margin:16px auto 0 !important;
    }
    .elementor-element-37f955df > .elementor-element-populated,
    .elementor-element-37f955df > .elementor-widget-wrap{ padding-bottom:14px !important; }
}
/* ===== fin coche flujo movil ===== */

/* ===== Quitar hueco entre header y hero (spacer 11cff7e + padding sección 6e92fab) (2026-06-16) ===== */
.elementor-element-11cff7e .elementor-spacer-inner{ height:0 !important; }
.elementor-element-6e92fab{ padding-top:0 !important; padding-bottom:0 !important; }
/* ===== fin hueco header-hero ===== */

/* ===== Coche decorativo en el hero de las landings (solo escritorio) (2026-06-16) ===== */
.cm-loc-hero{ position:relative; overflow:hidden; }
.cm-loc-hero .cm-loc-pin{ display:none !important; }
.cm-loc-hero::after{
    content:""; position:absolute; right:2.5%; bottom:0;
    width:42%; max-width:440px; height:82%;
    background-repeat:no-repeat; background-position:right bottom; background-size:contain;
    z-index:0; pointer-events:none;
}
.cm-loc-hero > *{ position:relative; z-index:1; }
@media (max-width:880px){ .cm-loc-hero::after{ display:none !important; } }
/* ===== fin coche landings ===== */

/* ===== Coche decorativo en la home (banda "Reserva con Carmove" 8fc5826, solo escritorio) (2026-06-16) ===== */
@media (min-width:882px){
    .elementor-element-8fc5826{ position:relative; overflow:hidden; }
    .elementor-element-8fc5826::after{
        content:""; position:absolute; right:4%; bottom:8%; width:300px; height:165px;
        background:url('https://carmove.es/wp-content/uploads/2026/06/Carmove_car_arkana.webp') right bottom/contain no-repeat;
        z-index:0; pointer-events:none;
    }
    .elementor-element-8fc5826 > *{ position:relative; z-index:1; }
}
/* ===== fin coche home ===== */


/* ===== Hero escritorio 2-col: texto izq + formulario mybooking der (2026-06-16) ===== */
@media (min-width:1025px){
    .elementor-element-490cf1c3 .elementor-heading-title{ font-size:52px !important; line-height:1.08 !important; padding:14px 24px !important; }
    .elementor-element-74a21950{ display:none !important; }
    .elementor-element-cmform02{ align-self:center !important; }
    .elementor-element-cmform02 > .elementor-element-populated{
        background:#ffffff !important; border-radius:18px !important; padding:22px 22px 24px !important;
        box-shadow:0 30px 64px -20px rgba(0,0,0,.55) !important;
    }
    .elementor-element-5ed88028::before{
        background:linear-gradient(90deg, rgba(4,20,38,.80) 0%, rgba(4,20,38,.60) 48%, rgba(4,20,38,.48) 100%) !important;
    }
}
@media (max-width:1024px){
    .elementor-element-37f955df, .elementor-element-cmform02{ width:100% !important; }
}
/* Botón BUSCAR del formulario en el hero: prominente */
.elementor-element-cmform02 .mybooking-selector_form button,
.elementor-element-cmform02 .mybooking-selector_form input[type="submit"],
.elementor-element-cmform02 .mybooking-selector_form .button{
    background:linear-gradient(125deg,#356ea6,#1b4e7e) !important; border:none !important;
    border-radius:10px !important; font-weight:700 !important; color:#fff !important;
}
/* ===== fin hero escritorio formulario ===== */

/* ===== Form mybooking en hero: tarjeta blanca (todas las pantallas) + toggle móvil (2026-06-16) ===== */
.elementor-element-cmform02 > .elementor-element-populated{
    background:#ffffff !important; border-radius:18px !important; box-shadow:0 26px 60px -22px rgba(0,0,0,.5) !important;
}
@media (max-width:767px){
    .elementor-element-cmform02{ display:none !important; }
    body.cm-form-open .elementor-element-cmform02{ display:block !important; }
    body.cm-form-open .cm-search-facade{ display:none !important; }
    .elementor-element-cmform02 > .elementor-element-populated{ padding:16px !important; }
}
/* ===== fin toggle form movil ===== */

/* ===== Ensanchar el formulario del hero para que los campos se vean completos (2026-06-16) ===== */
@media (min-width:1025px){
    .elementor-element-5ed88028 .elementor-element-37f955df{ width:40% !important; }
    .elementor-element-5ed88028 .elementor-element-cmform02{ width:60% !important; }
}
/* Campos del formulario: que llenen su celda (no se corten) */
.elementor-element-cmform02 .mybooking-selector_form select,
.elementor-element-cmform02 .mybooking-selector_form input{
    width:100% !important; max-width:100% !important; box-sizing:border-box !important; min-width:0 !important;
}
.elementor-element-cmform02 .mybooking-selector_form select{ text-overflow:ellipsis; }
/* ===== fin ensanchar form ===== */

/* ===== Equilibrar hero 2-col: H1 más compacto para columna estrecha (2026-06-16) ===== */
@media (min-width:1025px){
    .elementor-element-5ed88028 .elementor-element-37f955df{ width:42% !important; }
    .elementor-element-5ed88028 .elementor-element-cmform02{ width:58% !important; }
    .elementor-element-490cf1c3 .elementor-heading-title{ font-size:40px !important; line-height:1.12 !important; padding:12px 20px !important; }
}
/* ===== fin equilibrar hero ===== */

/* ===== Hacer que el formulario mybooking llene la tarjeta del hero (quita el ancho fijo 304px) (2026-06-16) ===== */
.elementor-element-cmform02 .mybooking-selector_form{ width:100% !important; max-width:100% !important; }
.elementor-element-cmform02 .mybooking-selector_group{ width:100% !important; gap:18px !important; align-items:flex-end; }
.elementor-element-cmform02 .mybooking-selector_place{ flex:1 1 0 !important; width:auto !important; min-width:0 !important; }
.elementor-element-cmform02 .mybooking-selector_date{ flex:1 1 0 !important; width:auto !important; min-width:0 !important; gap:10px !important; }
.elementor-element-cmform02 .mybooking-selector_cal,
.elementor-element-cmform02 .mybooking-selector_hour{ flex:1 1 0 !important; width:auto !important; min-width:0 !important; }
.elementor-element-cmform02 .widget_pickup_place_group,
.elementor-element-cmform02 .widget_return_place_group{ width:100% !important; }
.elementor-element-cmform02 .mybooking-selector_footer{ width:100% !important; gap:18px !important; align-items:flex-end; }
.elementor-element-cmform02 .mybooking-selector_promo{ flex:1 1 0 !important; width:auto !important; }
.elementor-element-cmform02 .mybooking-selector_form select,
.elementor-element-cmform02 .mybooking-selector_form input{ width:100% !important; max-width:100% !important; box-sizing:border-box !important; min-width:0 !important; }
/* ===== fin form fill ===== */

/* ===== Hero escritorio: quitar el padding-right 50% heredado para que las 2 columnas usen todo el ancho (2026-06-16) ===== */
@media (min-width:1025px){
    .elementor-element-5ed88028{ padding-left:4% !important; padding-right:4% !important; }
}
/* ===== fin hero padding ===== */

/* ===== Móvil: apilar campos del formulario mybooking en vertical (2026-06-16) ===== */
@media (max-width:767px){
    .elementor-element-cmform02 .mybooking-selector_group,
    .elementor-element-cmform02 .mybooking-selector_footer{
        flex-wrap:wrap !important; gap:12px !important; align-items:stretch !important;
    }
    .elementor-element-cmform02 .mybooking-selector_place,
    .elementor-element-cmform02 .mybooking-selector_date{ flex:1 1 100% !important; width:100% !important; }
    .elementor-element-cmform02 .mybooking-selector_date{ display:flex !important; gap:10px !important; }
    .elementor-element-cmform02 .mybooking-selector_cal,
    .elementor-element-cmform02 .mybooking-selector_hour{ flex:1 1 0 !important; }
    .elementor-element-cmform02 .mybooking-selector_promo{ flex:1 1 100% !important; width:100% !important; }
    .elementor-element-cmform02 > .elementor-element-populated{ padding:18px 16px !important; }
}
/* ===== fin apilar form movil ===== */

/* ===== Tarjeta-acceso móvil clara (no campos falsos) (2026-06-16) ===== */
.cm-search-facade .cm-sf__bar{
    display:flex; align-items:center; gap:10px;
    border:1px solid #dbe0e6; border-radius:12px; padding:14px 14px; margin-bottom:12px;
    font-size:14.5px; color:#46505c; background:#f6f9fc; font-weight:500;
}
.cm-search-facade .cm-sf__bar .cm-sf__arrow{ margin-left:auto; color:#356ea6; flex:0 0 auto; }
.cm-search-facade:active .cm-sf__bar{ background:#eef3f9; }
/* ===== fin tarjeta acceso ===== */


/* === Selector de idioma TP compacto en header (fix bandera gigante móvil) === */
.cm-hd-lang .trp-flag-image, .cm-hd-lang img.trp-flag-image, img.trp-flag-image{width:24px!important;height:18px!important;max-width:24px!important;min-width:0!important;display:inline-block!important;vertical-align:middle!important;border-radius:2px!important}
.cm-hd-lang{max-width:130px!important;display:inline-flex!important;align-items:center;width:auto!important}
.cm-hd-lang .trp-language-switcher,.cm-hd-lang .trp-ls-shortcode-language,.cm-hd-lang .trp-ls-shortcode-current-language,.cm-hd-lang .trp-ls-shortcode-disabled-language{display:inline-flex!important;align-items:center;width:auto!important;max-width:130px!important}
.cm-hd-lang a{display:inline-flex!important;align-items:center;gap:6px}


/* === Selector idioma en barra superior (solo móvil, compacto) === */
.cm-topbar{position:relative;overflow:visible}
.cm-topbar__lang{display:none}
@media(max-width:1024px){
  .cm-topbar__lang{display:inline-flex!important;align-items:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:20}
  .cm-topbar__lang .trp-flag-image{width:20px!important;height:15px!important;max-width:20px!important}
  .cm-topbar__lang .trp-language-switcher,.cm-topbar__lang .trp-ls-shortcode-language,.cm-topbar__lang .trp-ls-shortcode-current-language,.cm-topbar__lang .trp-ls-disabled-language{display:inline-flex!important;align-items:center}
  .cm-topbar__lang .trp-language-switcher{max-width:60px}
  .cm-hd-lang{display:none!important}
}


/* === codigos ES/EN movil topbar === */
@media(max-width:1024px){
  .cm-topbar__lang .trp-flag-image{display:none!important}
  .cm-topbar__lang .trp-language-item-name{font-size:0!important;line-height:1!important}
  .cm-topbar__lang a[title="Spanish"] .trp-language-item-name::after,.cm-topbar__lang a[title="Espanol"] .trp-language-item-name::after,.cm-topbar__lang a[title="Espa\00f1ol"] .trp-language-item-name::after{content:"ES"}
  .cm-topbar__lang a[title="English"] .trp-language-item-name::after,.cm-topbar__lang a[title="Ingles"] .trp-language-item-name::after,.cm-topbar__lang a[title="Ingl\00e9s"] .trp-language-item-name::after{content:"EN"}
  .cm-topbar__lang .trp-language-item-name::after{font-size:13px!important;font-weight:700!important;color:#fff!important;letter-spacing:.3px}
  .cm-topbar__lang{right:14px}
  .cm-topbar__lang .trp-shortcode-disabled-language,.cm-topbar__lang .trp-language-item__current{padding:2px 4px}
}


/* OVERNIGHT-HIDE-LANG (traducción desactivada temporalmente) */
.cm-topbar__lang{display:none!important}
.cm-hd-lang{display:none!important}
