/* Estilos Generales */
body {
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    margin: 0;
    padding: 0;
    color: #333;
    line-height: 1.6;
}

/* Navegación */
header {
    background-color: rgba(253, 185, 19); /* Azul corporativo oscuro */
    color: white;
    padding: 1rem 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 1000;
}
header h1 { 
    margin: 0; 
    font-size: 1.5rem; 
    letter-spacing: 1px; 
}

/* Estilos para el contenedor del logo y el texto */
.logo-contenedor {
    display: flex;
    align-items: center; /* Centra el logo y el texto verticalmente */
    gap: 15px; /* Espacio de separación entre el logo y la palabra METSAR */
}

/* Tamaño del logo en el encabezado */
.logo-header {
    height: 40px; /* Puedes subir o bajar este número para cambiar el tamaño del logo */
    width: auto;  /* Mantiene la proporción de la imagen para que no se deforme */
}
nav a {
    color: white;
    text-decoration: none;
    margin-left: 20px;
    font-weight: 500;
    transition: color 0.3s;
}
nav a:hover { 
    color:  #4da6ff; 
}

/* Sección Principal (Hero) */
.hero {
    background: linear-gradient(rgba(0, 154, 214), rgba(58, 144, 201, 0.8)), url('https://via.placeholder.com/1920x600?text=Camiones+de+Logistica') center/cover;
    color: white;
    padding: 3rem 5%;
    text-align: center;
}
.hero h2 { 
    font-size: 3rem; 
    margin-bottom: 10px; 
}
.hero p { 
    font-size: 1.2rem; 
    max-width: 800px; 
    margin: 0 auto; 
    text-align: justify;
}

/* Servicios */
.servicios { 
    padding: 4rem 5%; 
    background-color: #f4f7f6; 
    text-align: center; 
}
.servicios h3 { 
    font-size: 2rem; 
    color: #0d2b4d; 
    margin-bottom: 2rem; 
}
.grid {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
}
.card {
    background: white;
    border-top: 4px solid #0d2b4d;
    padding: 30px;
    border-radius: 8px;
    width: 300px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}
.card h4 { 
    color: #0d2b4d; 
    font-size: 1.2rem; 
}

/* Sección de Contacto */
.contacto { 
    padding: 4rem 5%; 
    background-color: #ffffff; 
}
.contacto-header { 
    text-align: center; 
    margin-bottom: 3rem; 
}
.contacto-header h3 { 
    font-size: 2rem; 
    color: #0d2b4d; 
    margin-bottom: 10px; 
}

.form-container {
    max-width: 600px;
    margin: 0 auto;
    background: #f4f7f6;
    padding: 40px;
    border-radius: 8px;
}
.form-group { 
    margin-bottom: 20px; 
}
label { 
    display: block; 
    margin-bottom: 8px; 
    font-weight: bold; 
    color: #0d2b4d; 
}
input, textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    font-family: inherit;
}
input:focus, textarea:focus { 
    outline: none; 
    border-color: #0d2b4d; 
}
button {
    background-color: #0d2b4d;
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1.1rem;
    width: 100%;
    font-weight: bold;
    transition: background-color 0.3s;
}
button:hover { 
    background-color: #1a497c; 
}

/* Pie de página */
footer {
    background-color: #0a1e36;
    color: #ccc;
    text-align: center;
    padding: 2rem;
    font-size: 0.9rem;
}


/* CONTROL DE IMAGENES (CARRUSEL ACTUALIZADO) */

/* Contenedor principal de la galería */
.galeria {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 5%; 
    background-color: #f4f4f4;
    margin: 0;
}

/* 1. Nuevo Wrapper Principal: Es el ancla para las flechas fuera de la caja */
.carrusel-wrapper-principal {
    position: relative; /* Importante para posicionar las flechas */
    width: 800px;       /* Ancho de la caja de IMÁGENES */
    max-width: 80%;     /* Dejamos espacio (20%) para las flechas a los lados */
    margin: 0 auto;
}

/* 2. La Máscara (Antiguo carrusel-contenedor): Oculta lo que sale de la caja */
.carrusel-mascara {
    width: 100%;
    overflow: hidden;   /* Mantiene las imágenes dentro */
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

/* Pista (No cambia) */
.carrusel-pista {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

/* Ajuste de las imágenes */
.carrusel-pista img {
    width: 100%;
    height: 450px;      /* AGREGAMOS ESTO: Fija la altura máxima */
    flex-shrink: 0;     
    object-fit: cover;  /* MAGIA: Recorta la imagen para que encaje sin deformarse (achaparrarse) */
    object-position: center; /* Centra el recorte en la foto */
}

/* 4. POSICIONAMIENTO EXTERIOR DE LAS FLECHAS */
.prev {
    /* Mover a la izquierda, fuera del contenedor */
    left: -60px; 
}

.next {
    /* Mover a la derecha, fuera del contenedor */
    right: -60px; 
}

/* 5. RESPONSIVO: En pantallas pequeñas, metemos las flechas dentro de nuevo */
@media (max-width: 768px) {
    .carrusel-wrapper-principal {
        max-width: 100%; /* Ocupa todo el ancho */
    }
    .prev {
        left: 10px; /* Flecha izquierda dentro */
        background-color: rgba(13, 43, 77, 0.7); /* Un poco transparente */
    }
    .next {
        right: 10px; /* Flecha derecha dentro */
        background-color: rgba(13, 43, 77, 0.7);
    }
}

/* =========================================
DISEÑO RESPONSIVO (TELÉFONOS Y TABLETS)
   ========================================= */

@media (max-width: 768px) {
    /* 1. Encabezado y Navegación */
    header {
        flex-direction: column; /* Apila el logo y el menú uno sobre otro */
        padding: 1rem;
        text-align: center;
        gap: 15px;
    }
    
    nav {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px; /* Añade espacio entre los botones del menú */
    }
    
    nav a {
        margin-left: 0; /* Quitamos el margen izquierdo para centrarlos mejor */
        font-size: 0.9rem;
    }

    /* 2. Sección Principal (Hero) */
    .hero {
        padding: 3rem 5%;
    }
    
    .hero h2 {
        font-size: 2rem; /* Hacemos el título más pequeño para que no se salga de la pantalla */
    }
    
    .hero p {
        font-size: 1rem;
    }

    /* 3. Carrusel / Galería */
    .galeria {
        padding: 2rem 5%;
    }
    
    .carrusel-pista img {
        height: 250px; /* Reducimos la altura de la foto en celulares para que no ocupe toda la pantalla verticalmente */
    }

    /* 4. Tarjetas de Servicios (Misión, Visión, Valores) */
    .grid {
        flex-direction: column; /* Apila las tarjetas verticalmente */
        align-items: center;
    }
    
    .card {
        width: 100%; /* Las tarjetas ahora aprovecharán todo el ancho del celular */
        max-width: 350px;
    }

    /* 5. Formulario de Contacto */
    .form-container {
        padding: 20px; /* Reducimos el espacio interior para que los campos de texto tengan más espacio */
    }
    
    .contacto-header h3 {
        font-size: 1.5rem;
    }
}