.page-header {
  background: var(--header-background);
  z-index: var(--z-index-transparent-header);
  position: fixed;
  top: 0;
}

.page-header__upper {
  display: none;
}

.page-header__lower {
  height: var(--header-lower-height);
  max-height: var(--header-lower-height);
  position: relative;
}

.page-header__lower-wrapper {
  display: flex;
  align-items: center;
  height: 100%;
  gap: var(--size-12);
}

.page-header__logo {
  width: auto;
  max-width: var(--header-logo-width);
  margin-inline-end: auto;
}

.page-header__logo img {
  height: 3.125rem;
  max-width: var(--header-logo-width);
  width: 100%;
}

.page-header__menu {
  margin-inline-end: -0.5rem;
}

.page-header :where(.svg-icon) {
  height: 24px;
  width: 24px;
}

.menu-toggle__close {
  height: var(--size-16);
  width: var(--size-16);
}

.phone__icon .svg-icon {
  height: var(--size-28);
  width: var(--size-28);
}

.phone__number,
.page-header__search-lower,
.element-expanded--true > .icon--open,
.element-expanded--false > .icon--close,
.nav__container ul.element-expanded--false {
  display: none;
}

.element-expanded--true > .icon--close,
.page-header__search.element-expanded--true .page-header__search-lower {
  display: block;
}

@media (max-width: 67.4375rem) {
  .nav__slide-in {
    position: absolute;
    inset-inline-start: 100%;
    top: calc(var(--header-lower-height) + var(--header-slide-in-nav-offset));
    background: var(--color-primary);
    padding-inline: var(--inset-padding-md);
    width: var(--slide-in-nav-width);
    max-width: 100%;
    height: calc(100vh - var(--header-lower-height) - var(--header-slide-in-nav-offset));
    z-index: var(--z-index-nav-slide-in);
    transform: translate3d(0, 0, 0);
    transition: transform 0.3s ease-in-out, top 0.3s ease-in-out, height 0.3s ease-in-out;
    will-change: transform, top, height;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior-y: contain;
  }
  .has-primary-nav .nav__slide-in {
    transform: translate3d(-100%, 0, 0);
    box-shadow: var(--shadow-sm);
  }
  .is-sticky .nav__slide-in {
    top: calc(var(--header-lower-height-sticky) + var(--header-slide-in-nav-offset));
    height: calc(100vh - var(--header-lower-height-sticky) - var(--header-slide-in-nav-offset));
  }
  .page-header__lower {
    transition: max-height 0.3s ease-in-out;
    contain: layout;
  }
  .has-sticky-nav .page-header__lower {
    max-height: var(--header-lower-height-sticky);
  }
  .page-header__lower::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--header-background);
    box-shadow: var(--shadow-sm);
    z-index: -1;
    opacity: 0;
    transition: opacity 0.2s ease-in;
  }
  .has-header-bg-fade .page-header__lower::before {
    opacity: 1;
  }
  .nav__overflow {
    padding-block-start: var(--body-gutter);
    max-height: 100%;
    min-height: calc(100.1vh - var(--header-lower-height) - var(--header-slide-in-nav-offset));
  }
  .is-sticky .nav__overflow {
    min-height: calc(100.1vh - var(--header-lower-height-sticky) - var(--header-slide-in-nav-offset));
  }
  .nav__overflow::after {
    content: "";
    height: 180px;
    display: block;
  }
  .nav__utility {
    padding-top: 2rem;
  }
  .page-header__search {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
  }
  .page-header__search-upper .btn {
    margin-left: -0.9rem;
  }
  .page-header__enquiry {
    margin-top: calc(var(--size-36) - var(--nav-item-padding-block));
    padding-top: var(--size-40);
    border-top: 1px solid rgba(255, 255, 255, 0.8);
  }
}
@media (prefers-reduced-motion: reduce) {
  .nav__slide-in,
  .page-header__lower {
    transition: none !important;
  }
}
.nav__container :where(ul) {
  margin-block-start: 0;
}

.nav__container :where(ul ul) {
  padding-inline-start: var(--list-indent);
}

.nav__container :where(li) {
  font-size: var(--fs-nav-primary-level-1);
  padding-block: var(--nav-item-padding-block);
  margin-top: 0;
  line-height: var(--lh-p-lg);
  text-wrap: balance;
  font-weight: var(--fw-light);
}

.nav-li-level2 {
  font-size: var(--fs-nav-primary-level-2);
}

.nav-li-level3 {
  font-size: var(--fs-nav-primary-level-3);
  line-height: var(--lh-p-md);
}

.nav-ul-level2,
.nav-ul-level3 {
  padding-top: var(--nav-item-padding-block);
}

.has-subnav > div {
  margin-inline-end: var(--btn-height);
}

.nav__container :where(li:has(.subnav-toggle-button)) {
  position: relative;
}

.overlay {
  position: fixed;
  inset: 0;
  z-index: var(--z-index-modal-window);
  background: rgba(0, 0, 0, 0.5);
}

.nav__overlay.overlay {
  position: absolute;
  z-index: var(--z-index-nav-slide-in-ovelay);
  animation-name: fade-in;
  animation-duration: 0.4s;
  background: transparent;
}

.page-header__search-lower {
  margin-bottom: 1.5rem;
}

.page-header__search-lower .btn {
  margin-left: 0.5rem;
}

.search__inputs {
  margin-top: 0.5rem;
  display: flex;
}

.nav__utility :where(li) {
  margin-top: var(--size-12);
  font-size: var(--fs-nav-secondary-utility-titles);
  line-height: var(--lh-p-md);
  padding-block: 0;
  font-weight: var(--fw-light);
}

.nav__utility :where(li:first-child) {
  margin-top: 0;
}

.subnav-toggle-button {
  position: absolute;
  right: -1rem;
  top: 0;
}

.subnav-toggle-button .svg-icon {
  height: 12px;
  width: 12px;
  will-change: transform;
  transform: rotate(0deg);
  transition: var(--hover-transition-short-rotate);
}

.subnav-toggle-button.element-expanded--true .svg-icon {
  transform: rotate(180deg);
}

.subnav-toggle-button {
  height: calc(var(--lh-list) + var(--nav-item-padding-block) * 2);
}

.animated-underlines :where(a:not(.btn)),
.animated-underlines :where(.animated-underlines--add) {
  text-decoration-line: none;
  position: relative;
  display: inline;
}

.animated-underlines :where(a:not(.btn)),
.animated-underlines :where(.animated-underlines--add) {
  --animated-line-color: currentColor;
}

.animated-underlines :where(a:not(.btn))::after,
.animated-underlines :where(.animated-underlines--add)::after {
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  width: 100%;
  background: var(--animated-line-color);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s;
}

.animated-underlines :where(a:not(.btn)):hover::after,
.animated-underlines :where(a:not(.btn)):active::after,
.animated-underlines :where(.animated-underlines--add):hover::after,
.animated-underlines :where(.animated-underlines--add):active::after {
  transform: scaleX(1);
}

.animated-underlines--ignore::after {
  display: none;
}

@media (min-width: 768px) {
  .page-header__lower-wrapper {
    gap: var(--size-24);
  }
  .nav__overflow {
    padding-block-start: calc(var(--body-gutter) - 0.5rem);
  }
}

/*# sourceMappingURL=/assets/application/base/header-fa5bec60.css.map */
