/* Tablet and desktop navigation override. Phone navigation remains unchanged. */
@media (min-width: 481px) and (max-width: 1600px) {
  body .site-header,
  body.home-page .site-header {
    min-height: 134px;
    flex-wrap: wrap;
  }

  body .site-header .mobile-toggle,
  body.home-page .site-header .mobile-toggle {
    display: none !important;
  }

  body .site-header nav,
  body.home-page .site-header nav,
  body .site-header.nav-open nav,
  body.home-page .site-header.nav-open nav {
    display: grid !important;
    order: 10;
    width: 100%;
    height: 58px;
    flex: 0 0 100%;
    grid-template-columns: repeat(11, minmax(0, 1fr));
    align-items: stretch;
    overflow: visible;
    padding: 0;
    border-top: 1px solid rgba(255,255,255,.17);
  }

  body .site-header nav .nav-item {
    position: relative;
    display: block;
    min-width: 0;
  }

  body .site-header nav .nav-menu-button,
  body .site-header nav .nav-direct,
  body .site-header nav .contact-link,
  body .site-header nav .translate-link,
  body.home-page .site-header nav .nav-menu-button,
  body.home-page .site-header nav .nav-direct,
  body.home-page .site-header nav .contact-link,
  body.home-page .site-header nav .translate-link {
    width: 100%;
    height: 58px;
    min-height: 58px;
    justify-content: center !important;
    gap: 4px;
    margin: 0;
    padding: 0 clamp(3px, .38vw, 7px);
    font-size: clamp(10px, .78vw, 12px);
    line-height: 1.15;
    text-align: center;
    white-space: normal;
  }
}

@media (min-width: 481px) and (max-width: 760px) {
  body .site-header,
  body.home-page .site-header {
    min-height: 214px;
  }

  body .site-header nav,
  body.home-page .site-header nav,
  body .site-header.nav-open nav,
  body.home-page .site-header.nav-open nav {
    height: auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: 46px;
  }

  body .site-header nav .nav-menu-button,
  body .site-header nav .nav-direct,
  body .site-header nav .contact-link,
  body .site-header nav .translate-link,
  body.home-page .site-header nav .nav-menu-button,
  body.home-page .site-header nav .nav-direct,
  body.home-page .site-header nav .contact-link,
  body.home-page .site-header nav .translate-link {
    height: 46px;
    min-height: 46px;
    font-size: 10px;
  }

  body .site-header nav .mega {
    position: fixed;
    top: 76px;
    left: 12px !important;
    right: 12px !important;
    width: auto;
    max-height: calc(100vh - 100px);
  }
}

.page-bottom-back {
  position: fixed;
  left: max(18px, env(safe-area-inset-left));
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 250;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 2px;
  background: rgba(4,24,36,.94);
  box-shadow: 0 10px 28px rgba(0,0,0,.28);
  color: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .7px;
  cursor: pointer;
  backdrop-filter: blur(8px);
}

.page-bottom-back span {
  color: #00b7ad;
  font-size: 20px;
  line-height: 1;
}

.page-bottom-back:hover,
.page-bottom-back:focus-visible {
  border-color: #00b7ad;
  background: #073044;
  outline: none;
}

@media (max-width: 760px) {
  .page-bottom-back {
    left: max(12px, env(safe-area-inset-left));
    bottom: max(12px, env(safe-area-inset-bottom));
    min-height: 42px;
    padding: 0 13px;
  }
}

/* CONTACT must remain visible and turn solid white on interaction. */
body .site-header nav a.contact-link:hover,
body .site-header nav a.contact-link:focus-visible,
body .site-header nav a.contact-link:active,
body.home-page .site-header nav a.contact-link:hover,
body.home-page .site-header nav a.contact-link:focus-visible,
body.home-page .site-header nav a.contact-link:active {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 0 0 1px rgba(255,255,255,.35);
}

/* Refinery Systems: centered, wider and clearly readable unit menu. */
@media (min-width: 481px) and (max-width: 1600px) {
  body .site-header nav > .nav-item:nth-child(4) .mega {
    position: fixed;
    top: 134px;
    left: 50% !important;
    right: auto !important;
    width: min(960px, calc(100vw - 48px));
    max-height: calc(100vh - 154px);
    padding: 26px 28px;
    transform: translate(-50%, -8px);
  }

  body .site-header nav > .nav-item:nth-child(4):hover .mega,
  body .site-header nav > .nav-item:nth-child(4):focus-within .mega,
  body .site-header nav > .nav-item:nth-child(4).open .mega {
    transform: translate(-50%, 0) !important;
  }
}

@media (min-width: 1601px) {
  body .site-header nav > .nav-item:nth-child(4) .mega {
    position: fixed;
    top: 82px;
    left: 50% !important;
    right: auto !important;
    width: min(960px, calc(100vw - 48px));
    max-height: calc(100vh - 102px);
    padding: 26px 28px;
    transform: translate(-50%, -8px);
  }

  body .site-header nav > .nav-item:nth-child(4):hover .mega,
  body .site-header nav > .nav-item:nth-child(4):focus-within .mega,
  body .site-header nav > .nav-item:nth-child(4).open .mega {
    transform: translate(-50%, 0) !important;
  }
}

@media (min-width: 481px) and (max-width: 760px) {
  body .site-header nav > .nav-item:nth-child(4) .mega {
    top: 214px;
    width: calc(100vw - 24px);
    max-height: calc(100vh - 226px);
    padding: 20px 18px;
  }
}

/* One shared dark appearance for every navigation dropdown, on every page. */
body .site-header nav .mega {
  background: #071e30;
  color: #fff;
  border-top-color: #00a99d;
  font-family: inherit;
  text-shadow: none;
}

body .site-header nav .mega-head {
  border-bottom-color: #29495f;
}

body .site-header nav .mega-head b {
  color: #00a99d;
}

body .site-header nav .mega-head a,
body .site-header nav .mega-links a,
body .site-header nav .mega-links span {
  color: #fff;
}

body .site-header nav .mega-links a {
  background: #0d2b41;
  border-color: transparent;
}

body .site-header nav .mega-links a:hover,
body .site-header nav .mega-links a:focus-visible {
  background: #12364f;
  color: #fff;
  border-color: #00a99d;
}

body .site-header nav .mega-links a:focus-visible {
  outline: 2px solid #00a99d;
  outline-offset: 1px;
}

body .site-header nav .mega-links small {
  color: #9fb3c1;
}

body .site-header nav .mega-head b,
body .site-header nav .mega-head a,
body .site-header nav .mega-links span,
body .site-header nav .mega-links small {
  -webkit-text-fill-color: currentColor;
  text-shadow: none;
}

/* Refinery Systems landing page: centered, spacious and legible. */
body.refinery-systems-page .catalog .wrap {
  width: min(1120px, 88vw);
}

body.refinery-systems-page .catalog-group {
  margin-bottom: 58px;
}

body.refinery-systems-page .catalog-group h2 {
  margin-bottom: 20px;
  padding: 0 4px 14px;
  color: #123f3d;
  font-size: 21px;
  line-height: 1.3;
  letter-spacing: .35px;
}

body.refinery-systems-page .link-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

body.refinery-systems-page .tech-link {
  min-height: 180px;
  padding: 22px;
}

body.refinery-systems-page .tech-link strong {
  color: #123f3d;
  font-size: 17px;
  line-height: 1.4;
}

body.refinery-systems-page .tech-link span {
  margin-top: 11px;
  color: #506b6a;
  font-size: 13px;
  line-height: 1.65;
}

@media (max-width: 760px) {
  body.refinery-systems-page .catalog .wrap {
    width: 90vw;
  }

  body.refinery-systems-page .link-grid {
    grid-template-columns: 1fr;
  }

  body.refinery-systems-page .catalog-group h2 {
    font-size: 19px;
  }
}
