body:not(.admin-page) .site-header {
  position: absolute;
  z-index: 20;
  inset: 0 0 auto;
  border-bottom: 1px solid rgb(255 255 255 / 24%);
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

body:not(.admin-page) .site-header .bar {
  min-height: 5rem;
}

body:not(.admin-page) .site-header .brand-logo {
  filter: brightness(0) invert(1);
}

body:not(.admin-page) .site-header .primary-nav > a:not(.btn),
body:not(.admin-page) .site-header .nav-dropdown-trigger {
  color: rgb(255 255 255 / 90%);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body:not(.admin-page) .site-header .primary-nav > a:not(.btn):hover,
body:not(.admin-page) .site-header .nav-dropdown-trigger:hover,
body:not(.admin-page) .site-header .primary-nav > a:not(.btn)[aria-current="page"],
body:not(.admin-page) .site-header .nav-dropdown.is-active > .nav-dropdown-trigger {
  color: #e2c47e;
}

body:not(.admin-page) .site-header .primary-nav .btn {
  border: 1px solid rgb(255 255 255 / 70%);
  color: #fff;
  background: transparent;
}

body:not(.admin-page) .site-header .primary-nav .btn:hover {
  border-color: #e2c47e;
  color: #10233f;
  background: #e2c47e;
}

body:not(.admin-page) main#main .wrap {
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: clamp(1rem, 2.5vw, 2rem);
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type {
  position: relative;
  display: grid;
  min-height: 27rem;
  align-items: center;
  overflow: hidden;
  padding-block: 8rem 3.5rem;
  color: #fff;
  background-color: #10233f;
  background-image:
    linear-gradient(90deg, rgb(9 19 32 / 78%), rgb(9 19 32 / 52%)),
    url("/assets/images/hero-banner.jpg");
  background-position: center;
  background-size: cover;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type > .wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  text-align: center;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type [class*="hero-grid"],
body:not(.home-page):not(.admin-page) main#main > section:first-of-type .hero-grid {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: 0;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type [class*="hero-inner"],
body:not(.home-page):not(.admin-page) main#main > section:first-of-type .hero-content,
body:not(.home-page):not(.admin-page) main#main > section:first-of-type .page-intro .wrap {
  width: min(100%, 56rem);
  max-width: 56rem;
  text-align: center;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type h1 {
  max-width: 22ch;
  margin-inline: auto;
  color: #fff;
  font-size: clamp(2.4rem, 5vw, 4.4rem);
  line-height: 1.08;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type .eyebrow {
  justify-content: center;
  color: #e2c47e !important;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type p:not(.eyebrow),
body:not(.home-page):not(.admin-page) main#main > section:first-of-type .lead,
body:not(.home-page):not(.admin-page) main#main > section:first-of-type [class*="hero-lead"] {
  max-width: 52rem;
  margin-inline: auto;
  color: rgb(255 255 255 / 88%);
  font-size: clamp(.95rem, 1.4vw, 1.12rem);
  line-height: 1.7;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type [class*="hero-media"],
body:not(.home-page):not(.admin-page) main#main > section:first-of-type .hero-card-visual {
  display: none;
}

body:not(.home-page):not(.admin-page) main#main > section:first-of-type [class*="hero-actions"],
body:not(.home-page):not(.admin-page) main#main > section:first-of-type .hero-actions {
  justify-content: center;
}

body:not(.home-page):not(.admin-page) .page-intro {
  border: 0;
}

body:not(.admin-page) .site-footer {
  border-top: 1px solid #233b59;
  color: #e7ebf0;
  background: #0d1d32;
}

body:not(.admin-page) .site-footer .footer-top p,
body:not(.admin-page) .site-footer .footer-nav a,
body:not(.admin-page) .site-footer .footer-note {
  color: #c4cfdd;
}

body:not(.admin-page) .site-footer .footer-nav {
  border-color: #304158;
}

body:not(.admin-page) .site-footer .footer-nav a:hover {
  color: #e2c47e;
}

@media (max-width: 1100px) {
  body:not(.admin-page) .site-header .home-menu-toggle {
    border-color: rgb(255 255 255 / 70%);
    color: #fff;
    background: rgb(255 255 255 / 8%);
  }

  body:not(.admin-page) .site-header .home-menu-checkbox:checked ~ .primary-nav {
    border-color: #e1e4e8;
    background: #fff;
  }

  body:not(.admin-page) .site-header .home-menu-checkbox:checked ~ .primary-nav > a:not(.btn),
  body:not(.admin-page) .site-header .home-menu-checkbox:checked ~ .primary-nav .nav-dropdown-trigger {
    color: #40516a;
  }

  body:not(.admin-page) .site-header .home-menu-checkbox:checked ~ .primary-nav .btn {
    border-color: transparent;
    color: #fff;
    background: #10233f;
  }
}

@media (max-width: 600px) {
  body:not(.admin-page) main#main .wrap {
    max-width: 1200px;
    padding-inline: 1rem;
  }

  .services-page .search-input-wrap,
  .services-page .category-tabs {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .services-page .search-input {
    min-width: 0;
  }

  body:not(.home-page):not(.admin-page) main#main > section:first-of-type {
    min-height: 25rem;
    padding-block: 7rem 3rem;
  }

  body:not(.home-page):not(.admin-page) main#main > section:first-of-type h1 {
    font-size: clamp(2.2rem, 10vw, 3.2rem);
  }
}
