/* Camada decorativa: só ela recorta a entrada; o menu aberto continua livre. */
.site-header{--header-width:1200px;--header-inset:24px;--bot-bottom:11px;--logo-w:165px;--bot:38px;position:relative;isolation:isolate;width:100%;--header-bg:#FFEFD9;background:var(--header-bg);box-shadow:0 1px 0 rgba(42,28,20,.04),0 2px 12px rgba(42,28,20,.08);transition:box-shadow .2s ease}
/* D492: tom pêssego + sombra no lugar da linha; com a página rolada (só no header fixo da landing) a sombra fica mais forte. */
.site-header.is-scrolled{box-shadow:0 1px 0 rgba(42,28,20,.05),0 6px 20px rgba(42,28,20,.14)}
/* No fundo pêssego, o seletor de idioma e o botão do menu (bege) sumiam: ficam num branco translúcido. */
.site-header .langs{background:rgba(255,255,255,.6) !important}
.site-header .mnav>summary{background:rgba(255,255,255,.6)}
.header-landing{--header-inset:20px;--bot-bottom:11px}
.header-docs{--header-width:1240px}
.site-header .header-inner{position:relative;pointer-events:none}
.site-header .header-inner> *{position:relative;z-index:1;pointer-events:auto;background-color:var(--header-bg)}
.site-header .header-home{flex-shrink:0;margin-right:calc(4 * (var(--bot) + 2px) + 8px)}
.header-bots{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;visibility:hidden}
.header-bots.is-ready{visibility:visible}
.header-bots-track{position:relative;width:calc(100% - var(--header-inset)*2);max-width:var(--header-width);height:100%;margin-inline:auto}
.header-bot{--bot-index:0;position:absolute;left:calc(var(--logo-w) + 8px + var(--bot-index)*(var(--bot) + 2px));bottom:var(--bot-bottom);width:var(--bot);height:var(--bot);pointer-events:auto}
.header-bot:nth-child(2){--bot-index:1}
.header-bot:nth-child(3){--bot-index:2}
.header-bot:nth-child(4){--bot-index:3}
.header-bot img{display:block;width:var(--bot);height:var(--bot);object-fit:contain;transform-origin:50% 90%}
.header-bots.is-entering .header-bot{pointer-events:none;animation:header-arrive 1.8s cubic-bezier(.2,.45,.35,1) calc(var(--bot-index)*160ms) both}
.header-bots.is-entering img{animation:header-step 300ms ease-in-out calc(var(--bot-index)*160ms) 6}
.header-bots.is-idling img{animation:header-breathe 1.3s ease-in-out 2}
@keyframes header-arrive{0%{transform:translateX(100vw)}86%{transform:translateX(-3px)}95%{transform:translateX(1px)}100%{transform:none}}
@keyframes header-step{0%,100%{transform:none}50%{transform:translateY(-3px) rotate(-3deg)}}
@keyframes header-breathe{0%,100%{transform:none}50%{transform:scale(1.015,1.035)}}
@keyframes header-wave{0%,100%{transform:none}35%{transform:translateY(-5px) rotate(-8deg)}65%{transform:translateY(-2px) rotate(5deg)}}
@media (hover:hover) and (pointer:fine){.header-bots:not(.is-entering) .header-bot:hover img{animation:header-wave 420ms ease-in-out 1}}
@media (max-width:1099px){
  .site-header .header-home{margin-right:calc(2 * (var(--bot) + 2px) + 8px)}
  .header-bot:nth-child(n+3){display:none}
  .header-landing .nav-links{display:none !important}
  .header-landing .mnav{display:block}
}
@media (max-width:768px){.header-landing .nav-cta{display:none !important}}
/* Celular: logo de 44 px (129 px de largura) e bots de 30 px. */
@media (max-width:640px){.site-header{--logo-w:129px;--bot:30px}.site-header .header-home img{height:min(44px, calc((100vw - 244px) / 2.94)) !important}}
/* Headers de leitura têm mais links na mesma linha. */
@media (max-width:600px){
  .header-reading .header-home,.header-docs .header-home{margin-right:0}
  .header-reading .header-bots,.header-docs .header-bots{display:none}
}
/* A 375 px, logo + idiomas + menu já preenchem a linha. */
@media (max-width:480px){
  .site-header .header-home{margin-right:0}
  .header-bots{display:none}
}
@media (prefers-reduced-motion:reduce){
  .site-header{transition:none}
  .header-bots{visibility:visible}
  .site-header .header-bot,.site-header .header-bot img{animation:none !important;transform:none !important}
}
