/* One centered container for the overlay and internal headers. */
.gaab-header { display: block; box-sizing: border-box; }
.gaab-header-inner { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 24px; }
.gaab-header .gaab-brand { justify-self: start; width: 200px; aspect-ratio: 600 / 152; display: grid; align-items: center; padding: 0; background: transparent; }
.gaab-header .gaab-brand-logo { grid-area: 1 / 1; width: 100%; max-width: 100%; height: auto; max-height: 100%; object-fit: contain; filter: none; }
.gaab-header .gaab-logo--white { display: none; }
html[data-theme="dark"] .gaab-header .gaab-logo--black,
.gaab-header--overlay .gaab-logo--black { display: none; }
html[data-theme="dark"] .gaab-header .gaab-logo--white,
.gaab-header--overlay .gaab-logo--white { display: block; }
.gaab-header .gaab-desktop-nav { justify-self: center; }
.gaab-dou-site .gaab-theme-toggle { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 10px; border: 0; border-radius: 50%; background: transparent; color: var(--gaab-ink); cursor: pointer; }
.gaab-dou-site .gaab-theme-toggle[hidden] { display: none; }
.gaab-theme-toggle--desktop { justify-self: end; }
.gaab-theme-toggle svg { width: 24px; height: 24px; flex-shrink: 0; }
.gaab-theme-toggle [data-gaab-mode-icon="sun"] { display: none; }
html[data-theme="dark"] .gaab-theme-toggle [data-gaab-mode-icon="moon"] { display: none; }
html[data-theme="dark"] .gaab-theme-toggle [data-gaab-mode-icon="sun"] { display: block; }
.gaab-dou-site .gaab-theme-toggle:is(:hover,:focus) { background: var(--gaab-alt); color: var(--gaab-ink); }
.gaab-dou-site .gaab-theme-toggle:focus-visible { outline: 3px solid var(--gaab-action); outline-offset: 3px; }
.gaab-header--overlay .gaab-theme-toggle--desktop { color: #fff; }
.gaab-header--overlay .gaab-theme-toggle--desktop:is(:hover,:focus) { color: #fff; background: #101613; }
.gaab-header--overlay .gaab-theme-toggle--desktop:focus-visible { outline-color: #fff; }
@media (max-width:1024px) { .gaab-header .gaab-brand { width: 164px; } }
@media (max-width:767px) {
 .gaab-header-inner { grid-template-columns: minmax(0,1fr) auto; gap: 12px; }
 .gaab-dou-site .gaab-header .gaab-theme-toggle--desktop { display: none; }
 .gaab-header .gaab-mobile-nav { display: block; position: relative; justify-self: end; margin: 0; padding: 0; background: transparent; }
 .gaab-header .gaab-mobile-nav summary { min-width: 66px; min-height: 44px; font-family: Montserrat,sans-serif; }
 .gaab-mobile-panel { position: absolute; top: calc(100% + 12px); right: 0; width: min(280px,calc(100vw - 40px)); box-sizing: border-box; padding: 18px 24px; background: var(--gaab-paper); color: var(--gaab-ink); border: 1px solid var(--gaab-border); box-shadow: 0 12px 30px #0003; z-index: 50; }
 .gaab-header .gaab-mobile-panel .gaab-menu { display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 0; }
 .gaab-mobile-utility { display: flex; justify-content: flex-end; border-top: 1px solid var(--gaab-border); padding-top: 12px; margin-top: 12px; }
 .gaab-header--overlay .gaab-mobile-panel { --gaab-ink: #f1f3ef; --gaab-paper: #191e1b; --gaab-alt: #2b3530; --gaab-action: #63ddd3; --gaab-border: #414b45; }
 .gaab-header--overlay .gaab-mobile-panel :is(a,button):focus-visible { outline-color: #63ddd3; }
}
