/* Gate 2.1 only: Header presentation. Contact styling transfers to Gate 2.3. */
.sf-header { background: var(--sf-color-navy); color: var(--sf-color-light); position: relative; }
.sf-header__inner { align-items: center; display: flex; min-block-size: 4.5rem; }
.sf-header__brand { display: block; flex: 0 0 auto; inline-size: 7rem; }.sf-header__brand img { block-size: auto; inline-size: 100%; }
.sf-header__navigation { align-items: center; display: flex; flex: 1; gap: .25rem; }.sf-header__nav { margin-inline-start: auto; }
.sf-header__menu { align-items: center; display: flex; gap: clamp(.7rem, 1.4vw, 1.25rem); list-style: none; margin: 0; padding: 0; }.sf-header__menu a { align-items: center; color: inherit; display: inline-flex; font-size: .875rem; font-weight: 700; min-block-size: 2.75rem; text-decoration: none; }
.sf-header__socials { display: flex; gap: .125rem; }.sf-header__social { align-items: center; display: inline-flex; justify-content: center; min-block-size: 2.75rem; min-inline-size: 2.75rem; text-decoration: none; }.sf-header__social img { block-size: 1.5rem; inline-size: 1.5rem; }
.sf-header__contact { align-items: center; border: 1px solid var(--sf-color-gold); color: var(--sf-color-light); display: inline-flex; font-size: .875rem; font-weight: 700; justify-content: center; margin-inline-start: .5rem; min-block-size: 2.75rem; padding-inline: 1rem; text-decoration: none; }.sf-header__toggle { display: none; }
.sf-header a:focus-visible, .sf-header button:focus-visible { box-shadow: 0 0 0 3px var(--sf-color-light); }
@media (max-width: 63.9375rem) { .sf-header__inner { justify-content: space-between; min-block-size: 4.25rem; }.sf-header__brand { inline-size: 5.75rem; }.sf-header__toggle { align-items: center; background: transparent; border: 0; color: inherit; cursor: pointer; display: inline-flex; font-weight: 700; gap: .5rem; min-block-size: 2.75rem; min-inline-size: 2.75rem; padding: 0; }.sf-header__toggle-icon, .sf-header__toggle-icon::before, .sf-header__toggle-icon::after { background: currentColor; block-size: 2px; display: block; inline-size: 1.35rem; }.sf-header__toggle-icon { position: relative; }.sf-header__toggle-icon::before, .sf-header__toggle-icon::after { content: ""; inset-inline-start: 0; position: absolute; }.sf-header__toggle-icon::before { inset-block-start: -.4rem; }.sf-header__toggle-icon::after { inset-block-start: .4rem; }.sf-header__navigation { align-items: stretch; background: var(--sf-color-navy); display: block; padding: 0 var(--sf-gutter) 1.25rem; position: static; visibility: visible; z-index: 20; }.sf-js .sf-header__navigation { display: none; inset: 4.25rem 0 auto; position: absolute; }.sf-js .sf-header.is-open .sf-header__navigation { display: block; }.sf-header__nav { margin: 0; }.sf-header__menu { display: block; }.sf-header__menu a { border-block-end: 1px solid color-mix(in srgb, var(--sf-color-light) 20%, transparent); inline-size: 100%; }.sf-header__socials { margin-block: .75rem; }.sf-header__contact { inline-size: 100%; margin: 0; } }
@media (prefers-reduced-motion: no-preference) { .sf-header__navigation { transition: opacity var(--sf-motion-fast) var(--sf-motion-ease); } }
