/* ========================================
    COMPONENTE: HEADER
    ========================================
*/

:root {
    /* ... otras variables ... */
    --header-bg-color-initial: rgba(0, 0, 0, 0);
    --header-bg-color-scrolled: #171717cc; /* O el color que prefieras */
    --header-shadow-initial: none;
    --header-shadow-scrolled: 0 5px 15px rgba(0, 0, 0, 0.3);
    --header-blur-initial: 0px;
    --header-blur-scrolled: 8px;
    --header-border-initial: none;
    --header-border-scrolled: 1px solid var(--color-accent);
}

/* [class*="__"] { outline: 1px solid blue; }
[class*="--"] { outline: 1px dashed green; } */


/* ESTILOS BASE (MOBILE FIRST) */
.header {
    position: fixed;
    width: 100%;
    box-sizing: border-box;
    height: var(--header-height-mobile);
    display: flex;
    justify-content: center;
    background-color: var(--header-bg-color);
    backdrop-filter: blur(var(--header-bg-blur));
    -webkit-backdrop-filter: blur(var(--header-bg-blur));
    border-bottom: var(--header-border-initial);
    box-shadow: var(--header-shadow);
    z-index: var(--z-index-header);

    /* Custom Header para Integración con el Fondo */
    background-color: var(--header-bg-color-initial);
    box-shadow: var(--header-shadow-initial);
    backdrop-filter: blur(var(--header-blur-initial));
    -webkit-backdrop-filter: blur(var(--header-blur-initial));

    /* ¡IMPORTANTE! La transición para que el cambio sea suave */
    transition: background-color 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
}

.header--scrolled {
    background-color: var(--header-bg-color-scrolled);
    border-bottom: var(--header-border-scrolled);
    box-shadow: var(--header-shadow-scrolled);
    backdrop-filter: blur(var(--header-blur-scrolled));
    -webkit-backdrop-filter: blur(var(--header-blur-scrolled));
}

.header__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    max-width: 1400px;
    /* padding: 0 var(--spacing-s); */
    padding: 0 var(--spacing-s);
    margin: 0 auto;
    width: 100%;
    
}@media only screen and (min-width: 768px) {
    .header__container {
        padding: 0 var(--spacing-l);
    }
}

.header__logo-image--desktop {
    display: none;
}

.header__logo-image--mobile {
    display: block;
}

.header__logo {
    margin: 0;
    padding: 0;
}

.header__logo-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.header__logo-link:hover {
    /* opacity: 0.8; */
    transform: scale(1.03);
}

.header__logo-image {
    aspect-ratio: 1.31/1;
    width: auto;
    height: calc(var(--header-height-mobile) - 20px);
    transition: transform 0.2s ease;
}

.header__midTitle {
    text-align: left;
    margin: 0 var(--spacing-xs);
    max-width: fit-content;
    font-size: 1.2rem;
    font-family: var(--font-primary);
    font-weight: 300;
    color: var(--color-text-wt);
    padding-left: var(--spacing-xs);
    border-left: 1px solid rgba(255, 255, 255, 1);
    text-shadow: 
    0 0 4px rgba(0, 0, 0, 0.5),
    0 0 8px rgba(0, 0, 0, 0.3);
}

.header__midTitle-firstWord {
    color: var(--color-accent);
}

/* ====================================================== */

/* BOTÓN MENÚ HAMBURGUESA - Mobile First */
.header__hamburger {
    display: block;
    height: fit-content;
    width: var(--hamburger-bar-width);
    cursor: pointer;
    z-index: 100;
    transition: all 0.2s ease;

    /* Borde como el Original */
    /* padding: 6px;
    border: 1px solid white;
    border-radius: 6px;
    --hamburger-bar-height: 4px;
    --hamburger-bar-width: 50px;
    --hamburger-bar-spacing: 5px;
    */
}

.header__hamburger-bar {
    display: block;
    height: var(--hamburger-bar-height);
    background-color: var(--color-text-wt);
    transition: all 0.2s ease;
    box-shadow: 
    0 0 4px rgba(0, 0, 0, 0.5),
    0 0 8px rgba(0, 0, 0, 0.3);
}
.header__hamburger:active{
    transform: scale(1.2);
}

.header__hamburger-bar:nth-child(2) {
    background-color: var(--color-accent);
    margin: var(--hamburger-bar-spacing) 0;
}

/* ESTADO ACTIVO DEL HAMBURGUESA */
.header__hamburger.active .header__hamburger-bar:nth-child(1) {
    transform: translateY(
        calc(var(--hamburger-bar-height) + var(--hamburger-bar-spacing))
    ) rotate(45deg);
    box-shadow: 
    0 0 4px rgba(0, 0, 0, 0),
    0 0 8px rgba(0, 0, 0, 0);
}

.header__hamburger.active .header__hamburger-bar:nth-child(2) {
    opacity: 0;
}

.header__hamburger.active .header__hamburger-bar:nth-child(3) {
    transform: translateY(
        calc(calc(var(--hamburger-bar-height) + var(--hamburger-bar-spacing))*-1)
    ) rotate(-45deg);
    box-shadow: 
    0 0 4px rgba(0, 0, 0, 0),
    0 0 8px rgba(0, 0, 0, 0);
}

/* NAVEGACIÓN */
.header__nav {
    position: fixed;
    top: 0;
    right: -100%;
    width: var(--nav-mobile-width);
    height: 100vh;
    padding-top: var(--header-height-mobile);
    transition: right var(--transition-speed) var(--transition-timing);
    z-index: var(--z-index-nav);
}

/* Estado activo del menú en móvil - visible */
.header__nav.active {
    right: 0;
}

.header__nav-list {
    display: flex;
    flex-direction: column;
    list-style: none;
    margin: 0;
    padding: 0;
    height: fit-content;

    box-shadow: var(--header-shadow);
}

.header__nav-item {
    padding: 0;
    width: 100%;
}

.header__nav-link {
    color: var(--color-text-wt);
    text-decoration: none;
    font-family: var(--font-secondary);
    font-weight: 400;
    display: block;
    padding: var(--spacing-s) 0;
    transition: color 0.2s ease, transform 0.3s ease;
    font-size: 1.2rem;
    text-align: center;
    
    background-color: var(--nav-mobile-bg);
    border-bottom: 1px solid #C4C4C4;
}

.header__nav-link:hover {
    color: var(--color-accent);
}

/* LINK ACTIVO (resaltar página actual) */
.header__nav-link--active {
    color: var(--color-accent);
    font-weight: 600;
}

/* ========================================
    SELECTOR DE IDIOMA
   ======================================== */

.language-selector {
    padding: var(--spacing-s) 0;
    text-align: center;
    background-color: var(--nav-mobile-bg);
    border-bottom: 1px solid #C4C4C4;
}

.language-selector__link {
    color: var(--color-text-wt);
    text-decoration: none;
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: 1.2rem;
    padding: 0 var(--spacing-xs);
    transition: color 0.2s ease;
}

.language-selector__link:hover {
    color: var(--color-accent);
}

.language-selector__link--active {
    color: var(--color-accent);
    font-weight: 600;
}

.language-selector__divider {
    color: var(--color-text-wt);
    font-size: 1.2rem;
}

/* ---------------------------------------------- */
/* ---------------------------------------------- */
/* ---------------------------------------------- */
/* ---------------------------------------------- */
/* ---------------------------------------------- */


/* ESTILOS PARA TABLET */
@media only screen and (min-width: 768px) {
    .header {
        height: var(--header-height-desktop);
    }

    /* .header__container{
        padding: 0 50px;
    } */

    .header__logo-image--desktop {
        display: block;
    }
    
    .header__logo-image--mobile {
        display: none;
    }

    .header__logo-image {
        height: calc(var(--header-height-tablet) - 20px);
    }

    .header__midTitle {
        display: none;
    }

    /* .header__logo {}

    .header__logo-link {} */
    
    .header__logo-image {
        aspect-ratio: 1.39/1;
    }

    /* BOTÓN MENÚ HAMBURGUESA - Mobile First */
    .header__hamburger {
        display: none;
    }

    /* NAVEGACIÓN */
    .header__nav {
        display: flex;
        align-items: center;
        position: static;
        width: auto;
        height: auto;
        padding-top: 0;
        box-shadow: none;
        background-color: transparent;
        transition: none;
    }

    .header__nav-list {
        flex-direction: row;
        gap: var(--spacing-m);
        margin-left: var(--spacing-m);
        padding: 0;

        background-color: transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        box-shadow: 0 0 0 transparent;
    }

    .header__nav-item {
        margin-bottom: 0;
        padding: 0;
        border-bottom: none;
    }
    
    .header__nav-link {
        font-size: 1.3rem;
        /* font-size: clamp(0.92rem, -0.1rem + 2.125vw, 1.26rem); */
        text-wrap: nowrap;

        background-color: transparent;
        border-bottom: none;
    }

    .header__nav-link:hover {
        transform: translateY(-2px);
    }

    /* LINK ACTIVO (resaltar página actual) */
    .header__nav-link--active {
        border-bottom: 2px solid var(--color-accent);
        padding-bottom: 3px;
    }

    .language-selector {
        padding: 0;
        background-color: transparent;
        border-bottom: none;
        margin-left: var(--spacing-m);
    }

    .language-selector__divider {
        font-size: 1rem;
    }

    .language-selector__link {
        font-size: 1rem;
    }
}


/* ---------------------------------------------- */
/* ---------------------------------------------- */
/* ---------------------------------------------- */
/* ---------------------------------------------- */
/* ---------------------------------------------- */


/* ESTILOS PARA DESKTOP */
@media only screen and (min-width: 1024px) {
    .header {
        height: var(--header-height-desktop);
    }

    .header__logo-image {
        height: calc(var(--header-height-desktop) - 20px);
    }

    /* .header__container {}

    .header__logo {}
    

    .header__logo-link {} */

    /* .header__midTitle-firstWord {} */


    /* ===== HAMBURGUESA ===== */
    /* .header__hamburger {}

    .header__hamburger-bar {} */

    /* ===== NAVEGACIÓN ===== */
    /* .header__nav {} */

    /* .header__nav-list {
        gap: clamp(1rem, -1.723rem + 4.255vw, 2rem);
    } */

    /* .header__nav-item {
        
    }*/

    .header__nav-link {
        font-size: 1.4rem;
    }

    /* .header__nav-link {}

    .header__nav-link--active {} */

}