/* The same material is used on the home, in each case, and on utility pages. */
body:is(.sober-home,.sober-case) .site-header[data-header-material] {
  --nav-ink: #172338;
  --nav-accent: var(--header-accent,#2848d8);
  --nav-glass: 242 247 255;
  --nav-density: .82;
  --nav-side: 9px;
  --nav-radius: 26px;
  --nav-shape: var(--header-reveal,0);
  --nav-dock-x: 72%;
  --nav-dock-light: 0;
  color: var(--nav-ink);
}
body:is(.sober-home,.sober-case) .site-header[data-header-material][data-project-theme="malakoff"] { --nav-glass: 253 244 242; }
body:is(.sober-home,.sober-case) .site-header[data-header-material][data-project-theme="cetelem"] { --nav-glass: 241 249 242; }
body:is(.sober-home,.sober-case) .site-header[data-header-material][data-project-theme="allianz"] { --nav-glass: 237 246 255; }
body:is(.sober-home,.sober-case) .site-header[data-header-material][data-project-theme="apphalt"] { --nav-glass: 241 244 255; }

body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-inner {
  position: relative;
  isolation: isolate;
  border-radius: var(--nav-radius);
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  transition: none !important;
}

body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: calc(4px * var(--nav-shape)) calc(var(--nav-side) * var(--nav-shape))
    calc(2px * var(--nav-shape));
  border: 1px solid rgb(145 164 191 / .22) !important;
  border-radius: var(--nav-radius) !important;
  background:
    radial-gradient(ellipse 124px 24px at var(--nav-dock-x) 101%,
      rgb(255 255 255 / calc(.84 * var(--nav-dock-light))), transparent 80%),
    linear-gradient(173deg, rgb(255 255 255 / .46), rgb(255 255 255 / .04) 35%, transparent 80%, rgb(255 255 255 / .24)),
    rgb(var(--nav-glass) / var(--nav-density)) !important;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .86), inset 0 -1px 2px rgb(62 100 149 / .13),
    0 2px 6px rgb(22 38 61 / .07), 0 11px 30px rgb(22 38 61 / .12) !important;
  pointer-events: none;
  opacity: min(1, calc(1.6 * var(--header-reveal,1)));
  transform: none !important;
  -webkit-backdrop-filter: blur(21px) saturate(138%) !important;
  backdrop-filter: blur(21px) saturate(138%) !important;
  transition: none !important;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material="integrated"] .header-inner::before {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material]:has(.project-switcher[open]) .header-inner::before {
  background: linear-gradient(171deg,#fffdfc,rgb(var(--nav-glass) / .93)) !important;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material]::after { content: none; }

.site-header[data-header-material] .brand {
  min-block-size: 44px;
}
.site-header[data-header-material] .brand > span {
  font-weight: 650;
  letter-spacing: -.02em;
}

body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-actions .language-switch {
  display: flex;
  gap: 0;
  padding: 2px;
  background: rgb(31 52 84 / .065);
  border: 0;
  border-radius: 15px;
  box-shadow: inset 0 0 0 1px rgb(26 57 101 / .045);
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-actions .language-switch > a {
  min-inline-size: 44px;
  inline-size: 44px;
  min-block-size: 44px;
  block-size: 44px;
  padding: 0;
  border-radius: 13px;
  color: var(--nav-ink);
  font: 650 11px/1 var(--sans,Arial,sans-serif);
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-actions .language-switch > a[aria-current] {
  background: rgb(255 255 255 / .90);
  color: color-mix(in srgb,var(--nav-accent) 83%,#172338);
  box-shadow: 0 1px 5px rgb(13 27 56 / .10), inset 0 0 0 1px rgb(21 48 77 / .06);
  font-weight: 700;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher > summary {
  min-block-size: 44px;
  border-radius: 13px;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher > summary > svg.project-switch-chevron {
  display: block !important;
  inline-size: 15px;
  block-size: 15px;
  min-inline-size: 15px;
  stroke: currentColor;
  stroke-width: 1.7;
  fill: none;
  transform: none !important;
  transition: rotate .18s ease;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher[open] > summary > svg.project-switch-chevron {
  rotate: 180deg;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher[open] > summary {
  background: color-mix(in srgb,var(--nav-accent) 9%,#fff);
  color: var(--nav-ink);
}

body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher .project-switch-panel {
  box-sizing: border-box;
  inset-block-start: calc(100% + 16px);
  max-block-size: min(494px, calc(100svh - 106px));
  padding: 10px;
  border: 1px solid rgb(197 210 227 / .86);
  border-radius: 20px;
  background: linear-gradient(152deg,#fff,#f6f9fd);
  color: var(--nav-ink);
  box-shadow: inset 0 1px #fff, 0 5px 12px rgb(15 31 56 / .09), 0 20px 55px rgb(15 31 56 / .18);
  overscroll-behavior: contain;
  transform-origin: top center;
  scrollbar-width: thin;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher[open] .project-switch-panel {
  animation: nav-panel-open .22s cubic-bezier(.18,.72,.26,1) both;
}
@keyframes nav-panel-open {
  from { translate: 0 -5px; scale: .985 .975; }
  to { translate: 0 0; scale: 1; }
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switch-panel > p {
  margin: 3px 10px 7px;
  padding: 3px 0;
  color: #51637a;
  font: 600 12px/1.4 var(--sans,Arial,sans-serif);
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switch-panel :is(.project-switch-home,.project-jump) {
  min-block-size: 48px;
  border-radius: 12px;
  color: var(--nav-ink);
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switch-panel a:is(:hover,[aria-current]) {
  background: color-mix(in srgb,var(--nav-accent) 8%,#f8fafd);
  color: color-mix(in srgb,var(--nav-accent) 82%,#172338);
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switch-panel .project-switch-utilities a {
  display: flex;
  align-items: center;
  gap: 5px;
  min-block-size: 44px;
  color: var(--nav-ink);
  border-radius: 10px;
  font: 550 12px/1.3 var(--sans,Arial,sans-serif);
  text-decoration: none;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switch-panel :is(a,.project-switch-utilities a) > svg {
  inline-size: 15px;
  block-size: 15px;
  flex: none;
}
body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switch-panel a[href="#main"] > .gn-v135-icon--up {
  transform: rotate(180deg);
}

body.sober-case .case-guide.is-floating {
  border-radius: 14px !important;
}
body.sober-case .case-guide.is-floating .case-guide-toggle {
  border-radius: 13px !important;
}

@media (max-width: 900px) {
  body:is(.sober-home,.sober-case) .site-header[data-header-material] {
    --nav-side: 0px;
    --nav-radius: 22px;
  }
}
@media (max-width: 800px) {
  body:is(.sober-home,.sober-case) .site-header[data-header-material] {
    --nav-density: .95;
  }
  body.sober-home .site-header[data-header-material][data-project-theme]:not([data-project-theme="default"]) {
    --nav-density: .90;
  }
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher .project-switch-panel {
    position: fixed;
    inset-inline: 10px;
    inset-block-start: calc(var(--gn-header-height,82px) + 1px);
    inline-size: auto;
  }
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .project-switcher > summary {
    background: color-mix(in srgb,var(--nav-accent) 5%,transparent);
  }
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-inner .brand > span {
    font-size: clamp(11px,3vw,13px);
  }
}
@media (max-width: 359px) {
  body.v147-atelier-page .site-header[data-header-material] .project-switch-identity img {
    min-inline-size: 0;
    max-inline-size: 100%;
    object-fit: contain;
  }
  body.sober-case .site-header[data-header-material][data-project-theme="apphalt"] .project-switch-identity > span {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  body:is(.sober-home,.sober-case) .site-header[data-header-material] { --nav-shape: 0; }
  .site-header[data-header-material] :is(.project-switch-panel,.project-switch-chevron) {
    animation: none !important;
    transition: none !important;
  }
}
html:is(.motion-reduced,.gn93-reading) body:is(.sober-home,.sober-case) .site-header[data-header-material] { --nav-shape: 0; }
html:is(.motion-reduced,.gn93-reading) .site-header[data-header-material] :is(.project-switch-panel,.project-switch-chevron) {
  animation: none !important;
  transition: none !important;
}
@media (prefers-reduced-transparency: reduce) {
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-inner::before {
    background: #fbfcff !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
}
@media (forced-colors: active) {
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-inner {
    border-color: CanvasText !important;
    background: Canvas !important;
  }
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-actions .language-switch > a[aria-current] {
    background: Highlight;
    color: HighlightText;
  }
}

@media (min-width: 1001px) {
  body.sober-home .site-header[data-header-material] .header-inner {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  }
  body.sober-home .site-header[data-header-material] .header-inner > .brand { justify-self: start; }
  body.sober-home .site-header[data-header-material] .desktop-nav {
    justify-self: center;
    gap: clamp(22px,2.6vw,38px);
    margin: 0;
  }
  body.sober-home .site-header[data-header-material] .header-inner > .header-actions { justify-self: end; }
  body.sober-home .site-header[data-header-material] .project-switcher > summary { min-inline-size: 144px; }
}
@media (min-width: 1181px) {
  body:is(.sober-home,.sober-case) .site-header[data-header-material] {
    --nav-side: 0px;
  }
  body:is(.sober-home,.sober-case) .site-header[data-header-material] .header-inner {
    /* A little room from the edges, without moving the hero or anchors. */
    width: min(1280px, calc(100% - 2 * var(--sober-gutter,22px) - 64px * var(--nav-shape)));
    max-width: calc(1280px - 64px * var(--nav-shape));
    padding-inline: calc(4px + 20px * var(--nav-shape));
  }
}
