/* Header Alpine — componente único, igual na Home e nas páginas internas.
   ALPINE centralizado; com mouse, o menu abre ao passar pelo header e o wordmark desliza para a borda do conteúdo.
   Os três pontos ficam visíveis em todas as larguras: indicam que há menu e o abrem/fecham por clique, toque ou teclado.
   Até 1040 px (ou em telas de toque): painel vertical. Cores pelos tokens de tokens.css (hex apenas como fallback). */
body{padding-top:64px}
#alpine-header{position:fixed;top:0;left:0;right:0;height:64px;z-index:1000;background:var(--gallery-white,#F7F7F5);font-family:var(--font-sans,"Libre Franklin","Helvetica Neue",Arial,sans-serif)}
#alpine-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--veil,#D6D8DA)}
#alpine-header .ah-mark{position:absolute;left:50%;top:50%;z-index:2;display:block;width:132px;line-height:0;transform:translate(-50%,-50%);transition:left .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1)}
#alpine-header .ah-mark img{display:block;width:100%;height:auto}
#alpine-header .ah-mark::before{content:"";position:absolute;inset:-21px -16px}
#alpine-header.open .ah-mark{left:var(--container-edge,48px);transform:translate(0,-50%)}
#alpine-header .ah-dots{position:absolute;right:calc(var(--container-edge,56px) - 11px);top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;padding:0;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:5px}
#alpine-header .ah-dots span{width:4px;height:4px;border-radius:50%;background:var(--alpine-ink,#17181A)}
#alpine-header .ah-menu{position:absolute;top:0;bottom:0;left:min(calc(50% + 110px),calc(100% - var(--container-edge,56px) - 57px - var(--ah-menu-w,750px)));display:flex;align-items:center;gap:40px;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-8px);transition:opacity .35s ease,transform .35s ease,visibility 0s linear .35s}
#alpine-header.open .ah-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0);transition-delay:0s}
#alpine-header .ah-menu a,#alpine-header .ah-menu span{font-size:14px;letter-spacing:.02em;line-height:1.4;color:var(--alpine-ink,#17181A);text-decoration:none;white-space:nowrap}
#alpine-header .ah-menu a:hover{text-decoration:underline;text-underline-offset:4px}
#alpine-header .ah-menu a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--mist,#B3B6BA);text-underline-offset:4px}
#alpine-header .ah-menu .ah-util{color:var(--stone,#6E7176);font-size:13px}
#alpine-header .ah-menu .ah-sep{width:1px;height:16px;background:var(--veil,#D6D8DA)}
#alpine-header a:focus-visible,#alpine-header button:focus-visible{outline:2px solid var(--alpine-ink,#17181A);outline-offset:4px}
@media(max-width:1040px){
 #alpine-header .ah-dots{right:17px}
 #alpine-header .ah-mark{width:108px}
 #alpine-header.open .ah-mark{left:50%;transform:translate(-50%,-50%)}
 #alpine-header .ah-menu{top:64px;bottom:auto;left:0;right:0;flex-direction:column;align-items:flex-start;gap:22px;padding:28px var(--gutter,24px) 32px;background:var(--gallery-white,#F7F7F5);border-bottom:1px solid var(--veil,#D6D8DA);transform:translateY(-8px)}
 #alpine-header.open .ah-menu{transform:translateY(0)}
 #alpine-header .ah-menu .ah-sep{width:100%;height:1px}
}
/* Desktop estreito: espaço entre itens menor para o menu aberto não alcançar o wordmark */
@media(min-width:1041px) and (max-width:1120px){#alpine-header .ah-menu{gap:32px}}
/* Abertura da Home: letras do wordmark (recortes do SVG oficial) */
#alpine-header .ah-letters{display:none}
html.intro #alpine-header .ah-letters{display:block;position:absolute;inset:0}
#alpine-header .ah-letters i{position:absolute;top:0;bottom:0;background-image:var(--logo);background-repeat:no-repeat;opacity:0;will-change:opacity,transform,filter,clip-path}
html.intro #alpine-header .ah-mark{transition:none!important}
html.intro #alpine-header .ah-mark img{opacity:0}
@media(prefers-reduced-motion:reduce){#alpine-header .ah-mark,#alpine-header .ah-menu{transition:none}}
.skip:focus{z-index:1001!important}
