:root {
  --jackson-navy: #071a3d;
  --jackson-blue: #0b2e6d;
  --jackson-ink: #132136;
  --jackson-muted: #526070;
  --jackson-line: #d7deea;
  --jackson-ice: #f5f8fc;
  --jackson-map: #d9eaff;
}

html,
body,
.captured-route,
.awx-main,
.awx-content {
  max-width: 100%;
  overflow-x: clip !important;
}

.captured-route .awx-section {
  padding-block: clamp(64px, 8vw, 118px) !important;
}

.captured-route .awx-section--light {
  background: #fff !important;
}

.captured-route .awx-section--default {
  background: var(--jackson-ice) !important;
}

.captured-route .awx-section__inner,
.captured-route .awx-belly,
.captured-route .awx-page-footer-inner {
  width: min(100% - clamp(32px, 8vw, 144px), 1480px) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}

.captured-route .awx-section--side-by-side > .awx-section__inner,
.captured-route .awx-related-pages.awx-section--side-by-side > .awx-section__inner {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: clamp(28px, 4vw, 56px) !important;
  align-items: start !important;
}

.captured-route .awx-section__hgroup-wrapper,
.captured-route .awx-section__hgroup,
.captured-route .awx-section__hgroup-wrapper .awx-section__title {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  inline-size: auto !important;
  max-inline-size: none !important;
  writing-mode: horizontal-tb !important;
}

.captured-route .awx-section__title {
  color: var(--jackson-navy) !important;
  font-size: clamp(2.15rem, 3.6vw, 4.55rem) !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

.captured-route .awx-related-pages .awx-section__title {
  font-size: clamp(2rem, 3vw, 3.6rem) !important;
}

.captured-route .awx-section__hgroup-wrapper .awx-related-pages__description {
  max-width: 56rem !important;
  margin-top: 1.2rem !important;
  color: var(--jackson-muted) !important;
  font-size: clamp(1rem, 1.05vw, 1.12rem) !important;
  line-height: 1.62 !important;
  white-space: normal !important;
}

.captured-route .awx-section__content.jackson-grid,
.captured-route .jackson-grid {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)) !important;
  gap: clamp(22px, 2.4vw, 38px) !important;
}

.captured-route .awx-related-pages.awx-section--side-by-side .awx-section__content.jackson-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)) !important;
}

.captured-route .jackson-grid.jackson-grid--wide {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)) !important;
}

.captured-route .awx-card {
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(7, 26, 61, 0.12) !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(7, 26, 61, 0.08) !important;
}

.captured-route .awx-card__link {
  display: grid !important;
  min-height: 100% !important;
  color: inherit !important;
  text-decoration: none !important;
}

.captured-route .awx-card__picture {
  overflow: hidden !important;
  background: var(--jackson-navy) !important;
}

.captured-route .awx-card__picture .jackson-local-image,
.captured-route .awx-announcement .jackson-local-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 230px !important;
  object-fit: cover !important;
}

.captured-route .awx-card__content {
  display: grid !important;
  gap: 12px !important;
  align-content: start !important;
  min-width: 0 !important;
  padding: clamp(18px, 2vw, 28px) !important;
}

.captured-route .awx-card__title {
  margin: 0 !important;
  color: var(--jackson-navy) !important;
  font-size: clamp(1.08rem, 1.25vw, 1.45rem) !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

.captured-route .awx-card__description {
  margin: 0 !important;
  color: var(--jackson-muted) !important;
  font-size: clamp(0.95rem, 0.95vw, 1.04rem) !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

.captured-route .jackson-detail-layout {
  width: min(100%, 1280px) !important;
  max-width: none !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 520px) minmax(0, 720px) !important;
  gap: clamp(28px, 4vw, 64px) !important;
  align-items: start !important;
}

.captured-route .jackson-detail-layout > .awx-media {
  position: relative !important;
  top: auto !important;
  overflow: hidden !important;
  border: 10px solid #fff !important;
  box-shadow: 0 24px 60px rgba(7, 26, 61, 0.16) !important;
}

.captured-route .jackson-detail-layout > .awx-media .jackson-local-image {
  aspect-ratio: 4 / 3 !important;
}

.captured-route .jackson-service-body {
  width: 100% !important;
  max-width: 1060px !important;
  color: var(--jackson-ink) !important;
}

.captured-route .jackson-detail-layout .jackson-service-body,
.captured-route[data-route="/contact"] .jackson-copy-stack {
  padding: clamp(26px, 3vw, 46px) !important;
  background: #fff !important;
  border-left: 7px solid var(--jackson-navy) !important;
  box-shadow: 0 22px 54px rgba(7, 26, 61, 0.1) !important;
}

.captured-route .jackson-service-body p,
.captured-route .jackson-index-copy,
.captured-route .jackson-copy-stack p {
  font-size: clamp(1rem, 1.02vw, 1.12rem) !important;
  line-height: 1.72 !important;
}

.captured-route .jackson-service-body .awx-button {
  width: max-content !important;
  max-width: 100% !important;
}

.captured-route .ynhlv-h-breadcrumbs {
  margin: 0 0 clamp(22px, 3vw, 40px) !important;
  color: var(--jackson-navy) !important;
  font-size: 0.9rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.captured-route .ynhlv-h-breadcrumbs ol {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 10px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  counter-reset: none !important;
}

.captured-route .ynhlv-h-breadcrumbs li {
  display: inline-flex !important;
  gap: 10px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  counter-increment: none !important;
}

.captured-route .ynhlv-h-breadcrumbs li::marker,
.captured-route .ynhlv-h-breadcrumbs li::before {
  content: none !important;
  display: none !important;
}

.captured-route .ynhlv-h-breadcrumbs li + li::before {
  content: "/" !important;
  display: inline !important;
  color: #8794a8 !important;
}

.captured-route .ynhlv-h-breadcrumbs a {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent !important;
}

.captured-route .jackson-form select {
  width: 100% !important;
  box-sizing: border-box !important;
  border: 1px solid currentColor !important;
  border-radius: 0 !important;
  padding: 14px 48px 14px 16px !important;
  font: inherit !important;
  color: var(--jackson-ink) !important;
  background:
    linear-gradient(45deg, transparent 50%, currentColor 50%) calc(100% - 24px) 52% / 7px 7px no-repeat,
    linear-gradient(135deg, currentColor 50%, transparent 50%) calc(100% - 18px) 52% / 7px 7px no-repeat,
    #fff !important;
  appearance: none !important;
}

.captured-route[data-route="/contact"] .jackson-detail-layout {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr) !important;
}

.captured-route[data-route="/contact"] .jackson-contact-lines a {
  display: inline-flex !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  font-weight: 800 !important;
  color: var(--jackson-navy) !important;
  text-decoration: none !important;
}

.captured-route .ynhlv-h-contact-map iframe {
  display: block !important;
  width: 100% !important;
  min-height: 300px !important;
  border: 0 !important;
}

.captured-route .jackson-footer {
  background: var(--jackson-navy) !important;
  color: #fff !important;
  padding: clamp(56px, 7vw, 96px) 0 42px !important;
}

.captured-route .jackson-footer__inner {
  width: min(100% - clamp(32px, 7vw, 132px), 1460px) !important;
  margin-inline: auto !important;
}

.captured-route .jackson-footer__lead {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr) !important;
  gap: clamp(24px, 4vw, 72px) !important;
  align-items: end !important;
  padding-bottom: clamp(32px, 4vw, 54px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.captured-route .jackson-footer__eyebrow {
  margin: 0 0 14px !important;
  color: var(--jackson-map) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.captured-route .jackson-footer h2 {
  max-width: 880px !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(2rem, 4.2vw, 5rem) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
}

.captured-route .jackson-footer__actions {
  display: grid !important;
  gap: 12px !important;
}

.captured-route .jackson-footer a {
  color: inherit !important;
  text-decoration: none !important;
}

.captured-route .jackson-footer__actions a,
.captured-route .jackson-footer__bottom a {
  display: inline-flex !important;
  justify-content: center !important;
  padding: 13px 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.32) !important;
  font-weight: 800 !important;
}

.captured-route .jackson-footer__map {
  margin-block: clamp(30px, 4vw, 54px) !important;
  border: 1px solid rgba(255, 255, 255, 0.26) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}

.captured-route .jackson-footer__map iframe {
  display: block !important;
  width: 100% !important;
  height: clamp(260px, 28vw, 420px) !important;
  border: 0 !important;
}

.captured-route .jackson-footer__links {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(22px, 3vw, 44px) !important;
  padding-bottom: clamp(30px, 4vw, 52px) !important;
}

.captured-route .jackson-footer__column h3 {
  margin: 0 0 18px !important;
  color: var(--jackson-map) !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.captured-route .jackson-footer__column ul {
  display: grid !important;
  gap: 11px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.captured-route .jackson-footer__column a {
  display: inline-flex !important;
  max-width: 100% !important;
  color: rgba(255, 255, 255, 0.88) !important;
  line-height: 1.35 !important;
}

.captured-route .jackson-footer__bottom {
  display: flex !important;
  gap: 20px !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: rgba(255, 255, 255, 0.72) !important;
}

.captured-route .awx-menu-drawer {
  width: min(92vw, 540px) !important;
  max-width: 100vw !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

.captured-route .awx-menu-dialog-drawer {
  min-height: 100dvh !important;
  padding-bottom: 64px !important;
  box-sizing: border-box !important;
}

.captured-route .awx-menu-drawer .awx-menu-list {
  list-style: none !important;
  padding-left: 0 !important;
}

.captured-route .awx-menu-drawer .awx-menu-list__link {
  display: inline-flex !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 1180px) {
  .captured-route .awx-related-pages.awx-section--side-by-side > .awx-section__inner,
  .captured-route .jackson-detail-layout,
  .captured-route[data-route="/contact"] .jackson-detail-layout,
  .captured-route .jackson-footer__lead {
    grid-template-columns: 1fr !important;
  }

  .captured-route .awx-section__content.jackson-grid,
  .captured-route .jackson-grid,
  .captured-route .jackson-grid.jackson-grid--wide {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .captured-route .awx-section {
    padding-block: 46px !important;
  }

  .captured-route .awx-section__inner,
  .captured-route .awx-belly,
  .captured-route .awx-page-footer-inner,
  .captured-route .jackson-footer__inner {
    width: min(100% - 32px, 100%) !important;
  }

  .captured-route .awx-section__content.jackson-grid,
  .captured-route .jackson-grid,
  .captured-route .jackson-grid.jackson-grid--wide,
  .captured-route .jackson-footer__links {
    grid-template-columns: 1fr !important;
  }

  .captured-route .awx-card__picture .jackson-local-image,
  .captured-route .awx-announcement .jackson-local-image {
    min-height: 210px !important;
  }

  .captured-route .jackson-detail-layout .jackson-service-body,
  .captured-route[data-route="/contact"] .jackson-copy-stack {
    padding: 22px !important;
    border-left-width: 5px !important;
  }

  .captured-route .jackson-footer h2 {
    font-size: clamp(2rem, 14vw, 3.5rem) !important;
  }

  .captured-route .jackson-footer__bottom {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .captured-route .awx-menu-drawer {
    width: 100vw !important;
  }
}
