﻿:root {
    --azul-principal: #0066cc;
    --azul-oscuro: #003366;
    --verde-acento: #28a745;
}

/* HERO SECTION */
.hero-section {
    position: relative;
    background-size: cover;
    background-position: center;
    min-height: 600px;
    display: flex;
    align-items: center;
    color: white;
    padding: 120px;
}

    .hero-section::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 0;
    }

    .hero-section .container {
        position: relative;
        z-index: 1;
    }

.form-quote input,
.form-quote button {
    border-radius: 8px;
    font-size: 1rem;
    padding: 0.75rem;
}

section {
    padding-top: 40px;
    padding-bottom: 40px;
}

/* IMÁGENES */
img.img-fluid {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.img-cobertura {
    max-width: 600px;
    max-height: 400px;
    width: 100%;
    height: auto;
    border-radius: 10px;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
    margin: 0 auto;
}

.img-beneficio,
.img-atencion {
    max-width: 500px;
    height: auto;
    margin: 0 auto;
    display: block;
    border-radius: 8px;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
}

/* LISTAS */
ul.list-unstyled li {
    font-size: 1.1rem;
    margin-bottom: 10px;
    position: relative;
    padding-left: 25px;
}

    ul.list-unstyled li::before {
        content: "✓";
        position: absolute;
        left: 0;
        color: #0d6efd;
        font-weight: bold;
    }

/* BOTONES */
.btn-primary {
    background-color: var(--azul-principal);
    border-color: var(--azul-principal);
}

    .btn-primary:hover {
        background-color: var(--azul-oscuro);
        border-color: var(--azul-oscuro);
    }

/* GENERAL */
html, body {
    overflow-x: hidden;
    margin-top: 0;
}

/* NAVBAR */
.navbar-toggler {
    border: none;
    outline: none;
}

.navbar-collapse {
    transition: all 0.3s ease-in-out;
}

@media (max-width: 991.98px) {
    .navbar-collapse {
        background-color: #0d6efd;
        padding: 1rem;
        border-radius: 0.5rem;
        margin-top: 0.5rem;
    }

        .navbar-collapse .nav-link {
            color: white;
            font-size: 1rem;
            padding: 0.5rem 1rem;
        }
}

/* RESPONSIVE HERO */
@media (max-width: 768px) {
    .hero-section {
        text-align: center;
        padding: 60px 20px;
        min-height: auto;
    }

        .hero-section .col-md-5 {
            margin-top: 2rem;
        }

    .form-quote {
        margin-top: 20px;
    }

    .img-cobertura {
        max-width: 100%;
        max-height: none;
    }
}

/* LANDSCAPE RESPONSIVE (para móviles girados) */
@media (orientation: landscape) and (max-height: 500px) {
    .hero-section {
        min-height: 500px;
        padding-top: 80px;
        padding-bottom: 40px;
    }

    .form-quote {
        margin-top: 1rem;
    }
}

/* AJUSTE DE PRIMERA SECCIÓN POST-NAVBAR */
main[role="main"] > section:first-of-type {
    margin-top: 0;
    padding-top: 120px;
}
