/* =====================================================================
   LETO — header overlay + navegação + seletor de idioma.
   ===================================================================== */
.site-header { position: fixed; top: 0; left: 0; right: 0; z-index: 50; transition: background .3s var(--ease), box-shadow .3s var(--ease); }
.site-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem;
	width: 100%; max-width: var(--stage); margin-inline: auto; padding: 24px var(--mx); transition: padding .3s var(--ease); }
.site-header__aside { display: flex; align-items: center; gap: 1rem; }

/* Sticky: fundo sólido (charcoal/frosted) + condensado ao rolar. */
.site-header.is-scrolled { background: rgba(33,33,31,.92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: 0 8px 28px rgba(0,0,0,.22); }
.site-header.is-scrolled .site-header__inner { padding-block: 13px; }
.site-header.is-scrolled .brand__logo { height: 38px; }

.brand { display: inline-flex; align-items: center; gap: .5rem; color: #fff; }
.brand__logo { height: 44px; width: auto; }

.nav-primary ul { display: flex; align-items: center; gap: clamp(.9rem, .2rem + 1.5vw, 2rem); }
.nav-primary a { font-size: 16.2px; font-weight: 500; color: #fff; opacity: .92; transition: opacity .2s; }
.nav-primary a:hover, .nav-primary a:focus-visible { opacity: 1; }

/* Seletor de idioma */
.leto-lang__list { display: flex; align-items: center; gap: .35rem; }
.leto-lang__link { display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 30px; padding-inline: .35rem; font-size: 13px; font-weight: 500; color: #fff; opacity: .6; border-radius: 6px; transition: opacity .2s, background .2s; }
.leto-lang__link:hover { opacity: 1; }
.leto-lang__link.is-current { opacity: 1; background: rgba(255,255,255,.14); }
.leto-lang__item + .leto-lang__item { position: relative; }
.leto-lang__item + .leto-lang__item::before { content: ""; position: absolute; left: -3px; top: 50%; transform: translateY(-50%); width: 1px; height: 12px; background: rgba(255,255,255,.3); }

/* Toggle mobile */
.nav-toggle { display: none; flex-direction: column; gap: 5px; padding: 8px; }
.nav-toggle span { display: block; width: 24px; height: 1.5px; background: #fff; transition: transform .3s var(--ease), opacity .3s; }
.nav-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.25px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.25px) rotate(-45deg); }

@media (max-width: 900px) {
	.nav-toggle { display: inline-flex; }
	.nav-primary { position: fixed; inset: 0; z-index: 60; display: none; flex-direction: column; align-items: center; justify-content: center; gap: 1.5rem; background: var(--leto-hero); }
	.nav-primary.is-open { display: flex; }
	.nav-primary ul { flex-direction: column; gap: 1.5rem; text-align: center; }
	.nav-primary a { font-size: 1.5rem; }
}
