/* ----------------------------------------------------
   VARIABLES
---------------------------------------------------- */
:root {
    --verde: #0f8f43;
    --verde-oscuro: #0b6e33;
    --blanco: #ffffff;
    --negro: #111;
    --sombra: 0 4px 12px rgba(0,0,0,0.08);
    --radius: 12px;
    --trans: 0.25s ease;
}

/* ----------------------------------------------------
   HEADER GENERAL
---------------------------------------------------- */
.header {
    width: 100%;
    padding: 10px 5%;            /* REDUCIDO – antes 18px */
    background: var(--blanco);
    box-shadow: var(--sombra);
    display: flex;
    justify-content: space-between;
    align-items: center;        /* CENTRA EL CONTENIDO PERFECTO */
    position: sticky;
    top: 0;
    z-index: 50;
}

/* LOGO + TÍTULO */
.logo-area {
    display: flex;
    align-items: center;
    gap: 14px;
}

.logo {
    width: 65px;                /* AUMENTADO – antes 50px */
    height: auto;
}

.site-title {
    font-size: 1.45rem;         /* Más visible y alineado */
    font-weight: 700;
    color: var(--verde);
}

/* ----------------------------------------------------
   NAV
---------------------------------------------------- */
.nav ul {
    display: flex;
    align-items: center;
    gap: 22px;
    list-style: none;
}

.nav a {
    text-decoration: none;
    color: var(--negro);
    font-size: 0.95rem;
    padding: 8px 12px;
    border-radius: var(--radius);
    transition: var(--trans);
}

.nav a:hover,
.nav a.active {
    background: var(--verde);
    color: var(--blanco);
}

/* ----------------------------------------------------
   DROPDOWN
---------------------------------------------------- */
.dropdown {
    position: relative;
}

.dropdown-menu {
    position: absolute;
    background: var(--blanco);
    top: 100%;                  /* CORREGIDO – antes 110% */
    left: 0;
    list-style: none;
    padding: 10px 0;
    border-radius: var(--radius);
    min-width: 180px;
    display: none;
    box-shadow: var(--sombra);
    flex-direction: column;
    margin-top: 6px;            /* ESPACIO PROFESIONAL */
}

.dropdown:hover .dropdown-menu {
    display: flex;
}

.dropdown-menu li a {
    padding: 10px 15px;
    color: var(--negro);
}

.dropdown-menu li a:hover {
    background: var(--verde);
    color: var(--blanco);
}

/* ----------------------------------------------------
   RESPONSIVE
---------------------------------------------------- */
@media (max-width: 850px) {

    .header {
        flex-direction: column;
        gap: 12px;
        padding: 12px 5%;
    }

    .nav ul {
        gap: 10px;
        flex-wrap: wrap;
        justify-content: center;
    }
}
