/* ==========================================================================
   HEADER GLOBAL E NAVEGAÇÃO
   ========================================================================== */

.site-header {
    width: 100%;
    padding: 20px 40px;
    background: transparent;
    display: flex;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    justify-content: space-between;
}

.logo-header {
    width: 200px;
    height: auto;
    flex-shrink: 0;
}

.main-nav {
    flex-grow: 1;
    overflow: visible;
}

.nav-links {
    list-style: none;
    display: flex;
    gap: 30px;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
}

.nav-links > li {
    position: relative; 
    padding: 10px 0; 
}

.nav-links a {
    font-size: 30px;
    font-weight: 700;
    color: #ffffff;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    text-decoration: none;
    transition: 0.3s ease;
}

/* --- DROPDOWN (GLASSMORPHISM) --- */
.dropdown {

    position: absolute;
    top: 100%; 
    left: 50%;
    transform: translateX(-50%);
    padding: 15px 10px;
    min-width: 270px;
    text-align: center;
    
    background-color: transparent;
    backdrop-filter: blur(4px);
    border: rgba(0, 0, 0, 0.44);
    box-shadow: 0 5px 12px rgba(0, 0, 0, 0.209);
    border-radius: 1.5em;
    
    display: flex !important;
    flex-direction: column !important;

    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    transition-delay: 0.4s;
    z-index: 100;
    gap: 10px !important; 
}

.dropdown a {
    font-size: 30px; 
    /* text-shadow: none;  */
    display: block;
    padding: 10px;
    text-shadow: 2px 2px #555 !important;
}

.dropdown li {
    border-radius: 1em;
    transition: background-color 0.3s ease;
    list-style: none;
}

.dropdown li:hover {
    background-color: rgba(255, 255, 255, 0.2); 
}

.nav-links > li:hover .dropdown {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s; 
}

/* --- ÍCONES E MOBILE --- */
.header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 30px;
    width: 100px;
    flex-shrink: 0;
}

.social-icon {
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

.social-icon:hover {
    transform: scale(1.1); 
}

.social-icon img {
    width: 30px;
    height: 30px;
    filter: brightness(0) invert(1);
}

.menu-toggle,
.menu-close {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 28px;
    color: #ffffff; 
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

/* --- CHECKBOX HACK (NÚCLEO) --- */
.menu-checkbox, 
.drop-checkbox {
    display: none;
}

.drop-icon {
    display: none; 
}

.link-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ==========================================================================
   HEADER: RESPONSIVIDADE (CELULAR)
   ========================================================================== */
@media (max-width: 768px) {
    .site-header { height: 80px; padding: 0 20px; }
    .logo-header { 
        width: 150px;
        padding: 20px; 
    }
    
    .header-right { 
        width: auto !important; 
        gap: 20px !important; 
        margin-left: auto;
        margin-right: -10px;
    }
    
    .social-icon { display: flex !important; }
    .social-icon img { width: 26px; height: 26px; }
    
    .menu-toggle {
        display: block !important;
        padding: 0; margin: 0; line-height: 1; font-size: 30px;
        color: #ffffff; text-shadow: none;
    }

    .main-nav {
        display: flex !important;
        flex-direction: column; justify-content: center; align-items: center;
        position: fixed; top: 80px; left: 0; width: 100%; height: calc(100vh - 80px);
        background: rgba(0, 0, 0, 0.95); z-index: 100;
        transform: translateX(100%); transition: transform 0.3s ease-in-out;
    }

    .menu-close {
        display: block !important;
        position: absolute; top: 20px; right: 40px; color: white; font-size: 40px;
    }

    .main-nav ul { flex-direction: column; text-align: center; gap: 40px; }
    .main-nav a { font-size: 28px; font-weight: 500; color: white; text-shadow: none; }

    /* Lógica do Checkbox Mobile */
    .drop-icon {
        display: block; color: #ffffff; font-size: 26px; cursor: pointer;
        line-height: 1; padding: 0 10px; transition: transform 0.3s ease;
    }
    
    .link-wrapper { justify-content: center; }
    
    .menu-checkbox:checked ~ .main-nav { transform: translateX(0) !important; }
    
    .nav-links > li:hover .dropdown { opacity: 0; visibility: hidden; }
    
    .dropdown {
        position: static; transform: none; background-color: transparent;
        box-shadow: none; padding: 0; margin-top: 15px;
        display: none !important; opacity: 1 !important; visibility: visible !important;
    }
    
    .drop-checkbox:checked ~ .dropdown { display: flex !important; flex-direction: column; }
    .drop-checkbox:checked ~ .link-wrapper .drop-icon { transform: rotate(180deg); color: white; }
    .dropdown a { font-size: 22px; color: white; padding: 8px 0; }
}

@media (max-width: 374px) {
    .site-header { 
        padding: 0; 
    }
    .logo-header { 
        width: 120px;
        padding: 20px; 
    }
}