/* ==========================================
   HEADER.CSS
   GRUPO INMA
========================================== */

/* HEADER */

.header{

    position:sticky;
    top:0;

    height:var(--header-height);

    display:grid;
    grid-template-columns:220px 1fr 220px;
    align-items:center;

    padding:0 var(--space-lg);

    background:rgba(255,255,255,.96);

    backdrop-filter:blur(14px);

    border-bottom:1px solid var(--border);

    box-shadow:0 8px 25px rgba(0,0,0,.04);

    z-index:1000;

}


/* IZQUIERDA */

.headerLeft{

    position:relative;

}


/* BOTÓN MENÚ */

.menuToggle{

    width:58px;
    height:58px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:none;

    border-radius:18px;

    background:white;

    color:var(--blue);

    font-size:30px;

    transition:var(--transition);

}

.menuToggle:hover{

    background:var(--bg);

    transform:translateY(-2px);

}


/* MENÚ */

.headerMenu{

    position:absolute;

    top:calc(100% - 30px);
    left:0;

    width:300px;
    max-width:90vw;
    overflow:hidden;

    padding:22px;

    background:white;

    border:1px solid var(--border);

    border-radius:28px;

    box-shadow:var(--shadow-strong);

    display:flex;
    flex-direction:column;
    gap:6px;

    opacity:0;
    visibility:hidden;

    transform:translateY(15px);

    transition:var(--transition);

}


/* MENÚ ABIERTO */

.headerMenu.open{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}


.headerMenu a{

    padding:15px 18px;

    border-radius:14px;

    font-weight:700;

    transition:var(--transition);

}

.headerMenu a:hover{

    background:var(--bg);

    color:var(--blue);

}


/* BOTÓN ROJO */

.menuCTA{

    margin-top:10px;

    background:var(--red);

    color:white !important;

    text-align:center;

}

.menuCTA:hover{

    background:#B61C22 !important;

}


/* CENTRO */

.logoCenter{

    display:flex;

    justify-content:center;

    align-items:center;

}

.logo{

    height:70px;

    width:auto;

    transition:var(--transition);

}

.logo:hover{

    transform:scale(1.03);

}


/* DERECHA */

.headerRight{

    display:flex;

    justify-content:flex-end;

    align-items:center;

}

.headerAction{

    font-weight:700;

    color:var(--blue);

    transition:var(--transition);

}

.headerAction:hover{

    color:var(--red);

}


/* ==========================
   TABLET
========================== */

@media(max-width:1024px){

.header{

    grid-template-columns:100px 1fr 100px;

    padding:0 20px;

}

.logo{

    height:60px;

}

}


/* ==========================
   MÓVIL
========================== */

@media(max-width:768px){

.header{

    height:90px;

    grid-template-columns:70px 1fr 70px;

    padding:0 15px;

}

.logo{

    height:52px;

}

.menuToggle{

    width:48px;

    height:48px;

    font-size:24px;

}

.headerMenu{

    width:270px;

}

.headerAction{

    display:none;

}

}