body { margin: 0; padding: 0; font-family: 'Segoe UI', sans-serif; background-color: #0b132b; color: #fff; }
header { background-color: #1c2541; display: flex; justify-content: space-between; align-items: center; padding: 15px 5%; border-bottom: 2px solid #5bc0be; position: relative; }
div.logo { font-size: 1.6rem; font-weight: bold; color: #6fffe9; text-align: center; }
.menu-toggle { font-size: 2.3rem; cursor: pointer; user-select: none; }

.opciones-menu { display: none; position: absolute; right: 0; background-color: #1c2541; min-width: 240px; box-shadow: 0 8px 16px rgba(0,0,0,0.5); border: 1px solid #5bc0be; z-index: 1000; margin-top: 5px; }
.opciones-menu a { color: white; padding: 15px 20px; text-decoration: none; display: block; font-size: 1.1rem; border-bottom: 1px solid #3a506b; }
.opciones-menu a:hover { background-color: #3a506b; color: #6fffe9; }
.menu-titulo { background-color: #0b132b; color: #5bc0be; padding: 12px 20px; font-weight: bold; text-transform: uppercase; }

.dropdown-idioma { position: relative; display: inline-block; }
.btn-idioma { background-color: #1c2541; border: 1px solid #5bc0be; color: #fff; padding: 8px 16px; border-radius: 4px; cursor: pointer; font-weight: bold; }
.opciones-idioma { display: none; position: absolute; background-color: #1c2541; min-width: 120px; border: 1px solid #5bc0be; z-index: 1000; }
.opciones-idioma span { color: white; padding: 10px 15px; display: block; cursor: pointer; }
.opciones-idioma span:hover { background-color: #3a506b; }
.mostrar { display: block; }

.hero-video-only { position: relative; width: 100%; height: 75vh; overflow: hidden; background-color: #000; }
.hero-video-bg { width: 100%; height: 100%; object-fit: cover; }
.lema-contenedor-ancho { background-color: #1c2541; padding: 40px 10%; border-bottom: 2px solid #5bc0be; text-align: center; }
.lema-texto-completo { color: #6fffe9; font-size: 2.2rem; line-height: 1.4; margin: 0 auto; max-width: 1100px; font-weight: 600; text-shadow: 0 2px 4px rgba(0,0,0,0.5); }

.grid-autos { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin-top: 40px; }
.auto-card { background-color: #1c2541; border: 1px solid #3a506b; padding: 20px; border-radius: 12px; text-align: center; transition: transform 0.2s; }
.auto-card:hover { transform: scale(1.02); border-color: #6fffe9; }
.video-container { width: 100%; aspect-ratio: 9 / 14; background-color: #000; border-radius: 8px; overflow: hidden; margin-bottom: 15px; border: 1px solid #5bc0be; }
.video-container video { width: 100%; height: 100%; object-fit: cover; }

.info-section { margin-top: 60px; display: grid; grid-template-columns: 1fr 1fr; gap: 40px; border-top: 1px solid #3a506b; padding-top: 40px; }
.columna-info { text-align: center; }
.columna-info ul { list-style: none; padding: 0; display: inline-block; text-align: left; }
.columna-info li { margin: 12px 0; font-size: 1.05rem; color: #cbd5e1; }
.divisor-izquierdo { border-left: 2px solid #5bc0be; }

.container { max-width: 1200px; margin: 0 auto; padding: 20px; }
.whatsapp-flotante { position: fixed; bottom: 20px; right: 20px; background-color: #25d366; padding: 15px 20px; border-radius: 50px; z-index: 999; }
.whatsapp-flotante a { color: #fff; text-decoration: none; font-weight: bold; }

.footer-tres-columnas { background-color: #1c2541; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; padding: 40px 5%; margin-top: 60px; border-top: 2px solid #5bc0be; align-items: center; }
.footer-columna { display: flex; flex-direction: column; }
.footer-izquierda { align-items: flex-start; text-align: left; }
.footer-izquierda h4 { margin: 0 0 15px 0; color: #5bc0be; font-size: 1.2rem; }
.footer-link-blanco { color: #fff; text-decoration: none; margin-bottom: 10px; transition: color 0.3s; }
.footer-link-blanco:hover { color: #6fffe9; }
.footer-centro { align-items: center; text-align: center; color: #cbd5e1; }
.footer-derecha { align-items: flex-end; }
.logo-cuadrado-placeholder { width: 80px; height: 80px; border: 2px dashed #5bc0be; display: flex; align-items: center; justify-content: center; border-radius: 8px; background-color: #0b132b; position: relative; overflow: hidden; }
.logo-img-src { width: 100%; height: 100%; object-fit: contain; }

/* 📸 3 FOTOS Y VARIANTES */
.page-sub-detalle { padding-top: 40px; }
.boton-volver-atras a { color: #6fffe9; text-decoration: none; font-weight: bold; font-size: 1.1rem; }
.boton-volver-atras a:hover { text-decoration: underline; }
.titulo-seccion-variante { font-size: 2.5rem; border-bottom: 2px solid #5bc0be; padding-bottom: 15px; margin-bottom: 40px; color: #fff; }
.bloque-variante-vehiculo { background-color: #1c2541; border: 1px solid #3a506b; border-radius: 12px; padding: 30px; margin-bottom: 40px; }
.titulo-variante-head { font-size: 1.8rem; margin-top: 0; margin-bottom: 20px; color: #6fffe9; border-left: 4px solid #5bc0be; padding-left: 15px; }
.fila-variante-contenido { display: grid; grid-template-columns: 450px 1fr; gap: 30px; align-items: start; }

/* Galería Grid: 1 grande, 2 abajo */
.galeria-3-fotos { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }
.galeria-3-fotos img { width: 100%; border-radius: 6px; object-fit: cover; border: 1px solid #3a506b; background-color:#0b132b; }
.img-principal { grid-column: span 2; aspect-ratio: 16 / 9; }
.img-secundaria { aspect-ratio: 4 / 3; }

.columna-variante-datos { display: flex; flex-direction: column; gap: 20px; }
.desc-variante-principal { font-size: 1.2rem; line-height: 1.5; color: #e2e8f0; margin: 0; }
.caja-texto-libre { background-color: #0b132b; border: 1px dashed #5bc0be; padding: 20px; border-radius: 8px; }
.caja-texto-libre h4 { margin-top: 0; margin-bottom: 10px; color: #5bc0be; }

/* Botones y Modal */
.btn-abrir-modal { margin-top: 20px; background-color: #5bc0be; color: #0b132b; border: none; padding: 12px 20px; font-weight: bold; font-size: 1.1rem; border-radius: 6px; cursor: pointer; transition: 0.3s; width: 100%; }
.btn-abrir-modal:hover { background-color: #6fffe9; transform: scale(1.02); }

.modal-oculto { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.85); z-index: 2000; align-items: center; justify-content: center; }
.modal-contenido { background-color: #1c2541; padding: 30px; border-radius: 12px; border: 1px solid #5bc0be; width: 90%; max-width: 450px; position: relative; }
.cerrar-modal { position: absolute; top: 15px; right: 20px; font-size: 1.8rem; cursor: pointer; color: #5bc0be; transition: 0.2s; }
.cerrar-modal:hover { color: #ff4d4d; }
.modal-contenido label { display: block; margin-top: 15px; margin-bottom: 5px; color: #cbd5e1; font-size: 0.95rem; }
.modal-contenido input, .modal-contenido textarea { width: 100%; padding: 10px; border-radius: 4px; border: 1px solid #3a506b; background: #0b132b; color: white; box-sizing: border-box; font-family: inherit; }
.modal-contenido input:focus, .modal-contenido textarea:focus { outline: none; border-color: #6fffe9; }
.btn-enviar-form { margin-top: 20px; width: 100%; background-color: #5bc0be; color: #0b132b; border: none; padding: 12px; font-weight: bold; cursor: pointer; border-radius: 6px; font-size: 1.1rem; }
.btn-enviar-form:hover { background-color: #6fffe9; }

/* 📱 RESPONSIVIDAD PARA DISPOSITIVOS MÓVILES (Celulares) */
@media (max-width: 768px) {
    header { 
        padding: 10px 3%; 
        gap: 8px;
    }
    div.logo { 
        font-size: 1.15rem; 
        line-height: 1.2;
        max-width: 180px;
        margin: 0 auto;
    }
    .btn-idioma { 
        padding: 6px 10px; 
        font-size: 0.85rem; 
    }
    .menu-toggle { 
        font-size: 1.8rem; 
    }
    .hero-video-only { 
        height: 50vh; 
    }
    .lema-texto-completo { 
        font-size: 1.4rem; 
    }
    .info-section { 
        grid-template-columns: 1fr; 
        gap: 30px; 
    }
    .divisor-izquierdo { 
        border-left: none; 
        border-top: 2px solid #5bc0be; 
        padding-top: 30px; 
    }
    .footer-tres-columnas { 
        grid-template-columns: 1fr; 
        text-align: center; 
        gap: 30px; 
    }
    .footer-izquierda, .footer-derecha { 
        align-items: center; 
        text-align: center; 
    }
}

@media (max-width: 850px) { .fila-variante-contenido { grid-template-columns: 1fr; } }