/* A single geometry for all public pages; page-specific CSS cannot shift the menu. */
html { scrollbar-gutter:stable; }
header.site-header.site-header--shared { display:block; position:sticky; inset:auto; top:0; z-index:50; height:80px; min-height:80px; margin:0; padding:0; border:0; border-bottom:1px solid rgba(28,53,94,.12); background:#fff; color:#1C355E; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; font-family:Manrope,Arial,sans-serif; }
.site-header--shared,.site-header--shared * { box-sizing:border-box; }
.site-header--shared .global-header-inner { width:min(1376px,calc(100% - 96px)); height:79px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:32px; position:relative; }
.site-header--shared a { text-decoration:none; color:#1C355E; transform:none; }
.site-header--shared .global-brand { display:inline-flex; align-items:center; flex:0 1 auto; min-width:0; min-height:72px; margin:0; padding:8px; font:800 22px/1.25 Manrope,Arial,sans-serif; letter-spacing:-.03em; white-space:nowrap; }
.site-header--shared .global-brand--swimtech img { width:80px; height:60px; max-width:none; object-fit:contain; margin:0; padding:0; }
.site-header--shared .global-brand--dual { gap:22px; font-size:16px; letter-spacing:-.02em; }
.site-header--shared .global-brand-divider { color:#536779; }
.site-header--shared .global-navigation { display:grid; grid-template-columns:64px 112px 128px 174px; gap:32px; align-items:center; width:574px; margin:0; padding:0; flex:0 0 574px; position:static; background:transparent; border:0; box-shadow:none; }
.site-header--shared .global-link,.site-header--shared .global-contact { display:flex; align-items:center; justify-content:flex-start; width:100%; min-height:48px; height:48px; padding:0; margin:0; font:700 16px/1.5 Manrope,Arial,sans-serif; letter-spacing:0; white-space:nowrap; }
.site-header--shared .global-link:hover,.site-header--shared .global-link[aria-current] { color:#1C355E; text-decoration:underline; text-decoration-color:#9BB9CC; text-decoration-thickness:2px; text-underline-offset:8px; }
.site-header--shared .global-contact { justify-content:center; background:#1C355E; color:#fff; border:1px solid #1C355E; border-radius:10px; padding:10px 18px; text-align:center; }
.site-header--shared .global-contact:hover { background:#536779; border-color:#536779; color:#fff; }
.site-header--shared :is(a,button,summary):focus-visible { outline:3px solid #1C355E; outline-offset:4px; }
.site-header--shared .global-services { display:flex; align-items:center; gap:0; position:relative; width:112px; min-height:48px; }
.site-header--shared .global-services > a { flex:1; }
.site-header--shared .global-service-menu { margin:0; padding:0; border:0; position:static; }
.site-header--shared .global-service-menu > summary { display:flex; align-items:center; justify-content:center; width:44px; min-height:48px; height:48px; margin:0; padding:0; border:0; border-radius:8px; cursor:pointer; list-style:none; background:transparent; color:#1C355E; }
.site-header--shared .global-service-menu > summary::after { content:none; }
.site-header--shared .global-service-menu > summary::-webkit-details-marker { display:none; }
.site-header--shared svg { width:18px; height:18px; stroke:currentColor; stroke-width:1.6; fill:none; margin:0; flex-shrink:0; }
.site-header--shared .global-service-menu[open] > summary { background:#F7F8FA; }
.site-header--shared .global-service-menu[open] > summary svg { transform:rotate(180deg); }
.site-header--shared .global-service-panel { position:absolute; top:calc(100% + 12px); left:-16px; width:260px; max-height:calc(100dvh - 110px); overflow-y:auto; padding:12px; border:1px solid rgba(28,53,94,.16); border-radius:12px; background:#fff; box-shadow:0 12px 24px rgba(28,53,94,.08); }
.site-header--shared .global-service-panel a { display:flex; align-items:center; min-height:48px; padding:10px 12px; border-radius:6px; font:600 16px/1.5 Manrope,Arial,sans-serif; white-space:normal; }
.site-header--shared .global-service-panel a:hover { background:#F7F8FA; color:#1C355E; }
.site-header--shared .global-menu-toggle { display:none; }
@media(max-width:1100px) {
  .site-header--shared .global-header-inner { width:calc(100% - 64px); gap:24px; }
  .site-header--shared .global-navigation { display:none; position:absolute; top:79px; left:-32px; right:-32px; width:auto; max-height:calc(100dvh - 80px); overflow-y:auto; overscroll-behavior:contain; padding:16px 32px 24px; background:#fff; grid-template-columns:minmax(0,1fr); gap:8px; border-bottom:1px solid rgba(28,53,94,.16); box-shadow:0 12px 24px rgba(28,53,94,.08); }
  .site-header--shared .global-navigation.is-open { display:grid; }
  .site-header--shared .global-menu-toggle { display:inline-flex; align-items:center; justify-content:center; gap:10px; height:48px; width:96px; flex:0 0 96px; padding:10px 12px; border:1px solid rgba(28,53,94,.2); border-radius:8px; color:#1C355E; background:#fff; font:700 16px/1.5 Manrope,Arial,sans-serif; cursor:pointer; margin:0; }
  .site-header--shared .global-menu-toggle[aria-expanded=true] { background:#F7F8FA; }
  .site-header--shared .global-services { display:block; width:100%; position:relative; }
  .site-header--shared .global-services > a { width:calc(100% - 44px); }
  .site-header--shared .global-service-menu { display:block; }
  .site-header--shared .global-service-menu > summary { position:absolute; right:0; top:0; }
  .site-header--shared .global-service-panel { position:static; grid-column:1/-1; width:100%; max-height:none; border:0; box-shadow:none; border-radius:0; padding:4px 0 12px 16px; background:#F7F8FA; }
  .site-header--shared .global-contact { margin-top:8px; }
}
@media(max-width:600px) {
  .site-header--shared .global-header-inner { width:calc(100% - 40px); gap:16px; }
  .site-header--shared .global-navigation { left:-20px; right:-20px; padding-inline:20px; }
  .site-header--shared .global-brand--oskar { font-size:19px; }
  .site-header--shared .global-brand--dual { flex-direction:column; align-items:flex-start; justify-content:center; gap:2px; font-size:14px; }
  .site-header--shared .global-brand-divider { display:none; }
}
@media(prefers-reduced-motion:reduce) { .site-header--shared * { transition:none!important; } }
