/* MIS Holding palette and 14px glass treatment; layout/offset behaviour stays unchanged. */
:root {
  --mis-header-height: 94px;
  --mis-fleet-toolbar-height: 58px;
  --mis-anchor-gap: 14px;
}

html {
  scroll-padding-top: calc(var(--mis-header-height) + var(--mis-adminbar-offset, 0px) + var(--mis-anchor-gap));
}

body {
  padding-top: var(--mis-header-height);
}

/* WordPress supplies its own html margin for the admin bar: do not add it again. */
body.admin-bar { --mis-adminbar-offset: 32px; }
html:has(body.admin-bar) { --mis-adminbar-offset: 32px; }

.site-header {
  position: fixed;
  top: var(--mis-adminbar-offset, 0px);
  right: 0;
  left: 0;
  z-index: 60;
  isolation: isolate;
  color: #fff;
  background: linear-gradient(115deg, #162136, #030a13);
  border-bottom-color: #ffffff28;
  box-shadow: 0 1px 0 #030a1333, inset 0 1px 0 #ffffff08;
  transition: background-color .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.site-header::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, #ffffff36 35%, #ffffff12 75%, transparent);
  pointer-events: none;
}

.site-header::after {
  content: '';
  position: absolute;
  inset: 1px 0 auto;
  height: 22px;
  background: linear-gradient(180deg, #ffffff05, transparent);
  pointer-events: none;
}

.site-header.is-scrolled {
  background: linear-gradient(115deg, #162136, #030a13);
  border-bottom-color: #ffffff28;
  box-shadow: 0 8px 26px #030a1324, inset 0 1px 0 #ffffff0a;
}

@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .site-header {
    background-color: #030a13ba;
    background-image: linear-gradient(115deg, #16213666, #030a1314);
    -webkit-backdrop-filter: blur(14px) saturate(120%);
    backdrop-filter: blur(14px) saturate(120%);
  }
  .site-header.is-scrolled {
    background-color: #030a13df;
    background-image: linear-gradient(115deg, #16213666, #030a1314);
  }
}

.site-header .brand,
.site-header .main-nav,
.site-header .header-contact,
.site-header .lang-switch,
.site-header .menu-toggle {
  position: relative;
  z-index: 1;
}

.site-header .submenu { z-index: 2; }

.site-header .main-nav > a,
.site-header .main-nav > .nav-group > a { font-weight: 500; }

.site-header .main-nav > a:hover,
.site-header .main-nav > .nav-group > a:hover,
.site-header .submenu a:hover { color: #ff6274; }

.site-header .header-contact {
  border-color: #ffffff60;
  border-radius: 30px;
  background: linear-gradient(155deg, #ffffff0c, #ffffff02);
  box-shadow: inset 0 1px 0 #ffffff0c;
  transition: background-color .3s ease, border-color .3s ease, color .3s ease;
}

.site-header .header-contact:hover,
.site-header .header-contact:focus-visible {
  color: #fff;
  border-color: #e71d36;
  background: linear-gradient(135deg, #e71d36eb, #e71d36ad), #030a13;
}

@media (min-width: 861px) {
  .site-header .submenu {
    background: linear-gradient(135deg, #162136f5, #030a13fa);
    color: #fff;
    border: 1px solid #ffffff28;
    box-shadow: 0 20px 45px #030a133d, inset 0 1px 0 #ffffff0a;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }
}

.skip { z-index: 100; }
.skip:focus { top: calc(var(--mis-adminbar-offset, 0px) + 10px); }

.fleet-toolbar {
  top: calc(var(--mis-header-height) + var(--mis-adminbar-offset, 0px));
}

/* Scroll padding already accounts for the header; fleet headings also clear their toolbar. */
.fleet-section {
  scroll-margin-top: var(--mis-fleet-toolbar-height);
}

@media (max-width: 1150px) {
  :root { --mis-header-height: 82px; }
}

@media (max-width: 860px) {
  :root { --mis-header-height: 80px; }

  .site-header .main-nav {
    position: absolute;
    top: 100%;
    max-height: calc(100dvh - var(--mis-header-height) - var(--mis-adminbar-offset, 0px));
    background: linear-gradient(135deg, #162136fa, #030a13fc);
    border-top: 1px solid #ffffff14;
    border-bottom: 1px solid #ffffff20;
    box-shadow: 0 18px 28px #030a1338, inset 0 1px 0 #ffffff08;
    overscroll-behavior: contain;
  }

  body.menu-open .site-header,
  body.menu-open .site-header.is-scrolled {
    background: linear-gradient(115deg, #162136, #030a13);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}

@media (max-width: 782px) {
  body.admin-bar,
  html:has(body.admin-bar) { --mis-adminbar-offset: 46px; }
}

@media (max-width: 600px) {
  :root { --mis-fleet-toolbar-height: 51px; }
}

@media (prefers-reduced-transparency: reduce) {
  .site-header,
  .site-header.is-scrolled,
  body.menu-open .site-header {
    background: linear-gradient(115deg, #162136, #030a13);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .site-header::after { background: none; }
  .site-header .submenu {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}

@media (prefers-reduced-transparency: reduce) and (min-width: 861px) {
  .site-header .submenu { background: linear-gradient(135deg, #162136, #030a13); }
}

@media (prefers-reduced-transparency: reduce) and (max-width: 860px) {
  .site-header .main-nav { background: linear-gradient(135deg, #162136, #030a13); }
}

@media (prefers-reduced-motion: reduce) {
  .site-header,
  .site-header .header-contact { transition: none; }
}

@media print {
  html { scroll-padding-top: 0; }
  body { padding-top: 0; }
  .site-header { position: relative; top: auto; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .fleet-toolbar { position: static; }
}
