/* Top External Menu */
.reclite_top_external {
  display: grid;
}
.reclite_top_external#reclite_top_external_mobile {
  display: none;
}
.reclite_top_external a {
  padding-block: 7px;
  z-index: 5;
  position: relative;
  background-color: var(--color-primary-white);
}

.top_external_link {
  position: absolute;
  left: 0;
  top: 10%;
  background-color: var(--color-primary-white);
  right: 0;
  box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.2);
  z-index: 4;
  transition: 400ms ease;
  opacity: 0;
}

.reclite_top_external_col.active .top_external_link {
  top: 100%;
  opacity: 1;
}

.top_external_link a {
  font-size: 14px;
  font-weight: 500;
}

.reclite_top_external a img {
  transition: 500ms ease;
}

.reclite_top_external_col a img {
  transform: scale(0.75);
  /* transform-origin: top; */
}

.reclite_top_external_col.active a img {
  transform: scale(1);
  /* transform-origin: top; */
}

.reclite_top_external_col:not(:last-child):after {
  content: "";
  position: absolute;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #e3e3e3;
  top: 0;
  z-index: 5;
}

.top_external_link a + svg {
  width: 100%;
}

.top_external_link:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 3px;
  width: 100%;
  background-color: var(--color-primary-green);
  z-index: 5;
}

/* Top Menu */

.reclite_site_header,
body.home .reclite_site_header.header_sticky {
  position: sticky;
  top: 0;
  z-index: 99;
  background-color: var(--color-primary-white);
  transition:
    background-color 300ms ease-in-out,
    top 100ms ease;
}

body.home .reclite_site_header {
  background-color: transparent;
}

.reclite_top_header_menu {
  background-color: var(--color-primary-blue);
  color: var(--color-primary-white);
}

.reclite_top_header_menu_nav a {
  color: var(--color-primary-white);
  font-size: 16px;
}

.top_right_menu .nav-link {
  font-size: 16px;
}

.reclite_translate {
  padding-left: 1.5rem;
  position: relative;
  display: flex;
  align-items: center;
}

.reclite_translate:before {
  content: "";
  position: absolute;
  left: 0;
  width: 1px;
  height: 60%;
  background: #94b1de;
}

/* Main Menu */

.site_header_main {
  padding-block: 12px;
  display: grid;
}

body.home .site_header_main {
  grid-template-columns: 15% 1fr;
}

:is(body:not(.home) .reclite_site_header) .site_header_main {
  grid-template-columns: 15% 1fr;
}

:is(.reclite_site_header.header_sticky, body:not(.home) .reclite_site_header)
  .menu-item
  .reclite_megamenu_arrow
  path {
  stroke: var(--color-text);
}

:is(body:not(.home) .reclite_site_header.header_sticky) .site_header_main {
  grid-template-columns: 15% 1fr;
}

.reclite_nav__container .reclite_menu_btn .top_nav_link.nav-link.nav-link {
  border: 1px solid var(--color-primary-white);
  border-radius: 10px;
  padding-inline: 1.25rem;
  margin-left: 1.75rem;
}

.reclite_main_menu .reclite_nav__container .top_nav_link {
  color: var(--color-primary-white);
  padding-inline: 0;
  font-weight: 500;
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.reclite_main_menu .reclite_nav__container .top_nav_link svg {
  transition: 300ms ease-in-out;
}

.reclite_main_menu .reclite_nav__container .top_nav_link:not(.collapsed) svg {
  transform: rotate(180deg);
}

.reclite_main_menu
  .reclite_nav__container
  .top_nav_link:not(.collapsed)
  svg.reclite_megamenu_arrow
  path {
  stroke: var(--color-primary-green);
}

.reclite_site_header.header_sticky {
  background-color: var(--color-primary-white);
  box-shadow: 0px 7px 8px 0px rgba(0, 0, 0, 0.08);
  border-radius: 0 0px 10px 10px;
}

.reclite_site_header.header_sticky
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link {
  color: var(--color-text);
}

body:not(.home)
  .reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link {
  color: var(--color-text);
}

.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu:not(.collapsed) {
  color: var(--color-primary-green);
}

.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu::before,
.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu::after {
  content: "";
  position: absolute;
  height: 0;
  opacity: 0;
  transition: 300ms ease-in-out;
}

.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu::after {
  bottom: -1px;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-bottom: 25px solid #fff;
  z-index: 2;
}

.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu::before {
  border-left: 26px solid transparent;
  border-right: 26px solid transparent;
  border-bottom: 26px solid #bfbfbf;
  bottom: 0;
}

.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu:not(.collapsed)::before,
.reclite_site_header
  .reclite_main_menu
  .reclite_nav__container
  .top_nav_link.has_reclite_megamenu:not(.collapsed)::after {
  opacity: 1;
}

.reclite_site_header.header_sticky
  .reclite_nav__container
  .reclite_menu_btn
  .top_nav_link.nav-link.nav-link {
  border-color: var(--color-primary-blue);
}

body:not(.home)
  .reclite_site_header
  .reclite_nav__container
  .reclite_menu_btn
  .top_nav_link.nav-link.nav-link {
  border-color: var(--color-primary-blue);
}

.reclite_main_menu_items {
  gap: 20px;
}

.reclite_site_header .site_branding a {
  display: none;
}

.reclite_site_header.header_sticky .site_main_logo,
.reclite_site_header:not(.header_sticky) .site_white_logo,
body:not(.home) .reclite_site_header .site_main_logo {
  display: block;
}

.reclite_site_header.header_sticky .site_white_logo,
body:not(.home) .reclite_site_header .site_white_logo {
  display: none;
}

.social_icon {
  gap: 2.5rem;
}
.search-icon-modal svg {
  transform: none !important;
}
.reclite_megamenu_tab_link svg > path:nth-child(1) {
    fill: var(--reclite-color-primary);
}

/* Footer */

.reclite_site_footer {
  background-color: #f5f7fc;
}

.reclite_site_footer_main {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 2fr;
  padding-block: 2.5rem;
  gap: 6rem;
}

.reclite_site_footer_main .nav_footer {
  list-style: none;
  display: grid;
  gap: 1rem;
}

.reclite_site_footer_main .nav_footer a:is(:hover, :focus) {
  color: var(--color-primary-blue);
}

.footer_menu_main {
  position: relative;
}

.footer_menu_main:before {
  content: "";
  position: absolute;
  left: -3rem;
  width: 0.5px;
  height: 100%;
  background-color: #dedede;
}

.footer_top_main h6 {
  text-align: start;
}

.footer_menu_main h6 svg {
  display: none;
}

.contact_info svg {
  width: 20px;
  flex-shrink: 0;
  margin-top: 5px;
}

.contact_info svg path {
  fill: var(--color-primary-blue);
}

.copyright_text {
  background-color: #eaedf2;
  padding-block: 1.25rem;
}

.newsletter_form_main {
  max-width: 1096px;
  margin: auto;
}

.reclite_newsletter {
  padding-block: 5rem;
}

.reclite_newsletter_gif:before {
  content: "";
  width: 210px;
  height: 100px;
  background: #fff;
  position: absolute;
  z-index: -1;
}

.reclite_newsletter .reclite_newsletter_line {
  background-color: var(--color-primary-green);
  opacity: 1;
  position: absolute;
  left: 0;
  right: 0;
  z-index: -2;
}

.reclite_newsletter_text {
  margin-top: -3rem;
}

.reclite_newsletter_gif img {
  width: 300px;
  height: 300px;
}

.gform-loader {
  display: none !important;
}

/* Megamenu */

.reclite_megamenu_active #page:before {
  /* content: ''; */
  display: block;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 200vh;
}

.reclite_megamenu_container_collapse {
  position: absolute;
  left: 7vw;
  right: 7vw;
  top: 100%;
  z-index: 1;
  border-radius: 20px;
}

.reclite_megamenu_container {
  display: grid;
  grid-template-columns: 1.2fr 1fr 2fr 1.2fr;
/*   background-color: var(--color-secondary-blue); */
	background-color: var(--color-primary-white);
  --menu-padding: 1.5rem;
  --menu-side-padding: 1.5rem;
  --megamenu_color: #3c3c3c;
  --submenu_bgcolor: #f4f8ff;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.12);
  border: 1px solid #bfbfbf;
}

.reclite_megamenu_container ul {
  list-style: none;
  display: grid;
  gap: 2rem;
  height: 575px;
  overflow-y: auto;
}

.reclite_megamenu_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: 100%;
}

.reclite_megamenu_tab_content .tab-pane {
  height: 100%;
}

.reclite_megamenu_right_container {
  background-color: var(--submenu_bgcolor);
  display: flex;
  flex-direction: column;
}

.reclite_megamenu_pills.reclite_megamenu_pills .reclite_megamenu_tab_link,
.reclite_submenu_pills.reclite_submenu_pills .reclite_megamenu_tab_link {
  gap: 0.5rem;
  background-color: transparent;
  cursor: pointer;
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link) {
  font-weight: 500;
  color: var(--megamenu_color);
  padding: 0;
  display: flex;
  justify-content: space-between;
  font-size: 16px;
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_parent_link) {
  font-weight: 600;
  /* font-size: 18px; */
  color: var(--color-primary-blue);
  font-family: "Secondary Font";
  pointer-events: none;
}

.reclite_megamenu_item:has(.reclite_parent_link) {
  display: none;
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link)
  svg {
  flex-shrink: 0;
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link)
  svg
  path {
  transition: 300ms ease-in-out;
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link):is(
    :hover,
    :focus
  ) {
  color: var(--color-primary-blue);
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link.active) {
  font-weight: 600;
  color: var(--color-primary-blue);
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link):is(
    :hover,
    :focus
  )
  svg
  path,
.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_tab_link.active, .reclite_megamenu_single_link.active)
  svg
  path {
  opacity: 1;
}

.reclite_site_header
  .reclite_main_menu
  :is(
    .reclite_megamenu_pills.reclite_megamenu_pills,
    .reclite_submenu_pills.reclite_submenu_pills
  )
  :is(.reclite_megamenu_single_link.active) {
  background-color: transparent;
}

.reclite_megamenu_pills.reclite_megamenu_pills,
.reclite_submenu_pills.reclite_submenu_pills {
  padding: var(--menu-padding);
  align-content: flex-start;
}

.reclite_megamenu_pills.reclite_megamenu_pills {
  background-color: var(--color-primary-white);
}

.reclite_megamenu_grid > .reclite_submenu_pills.reclite_submenu_pills {
  background-color: var(--submenu_bgcolor);
}

.reclite_submenu_tab_content:empty {
  background-color: var(--submenu_bgcolor);
}

.reclite_megamenu_item:not(:last-child):after {
  content: "";
  position: absolute;
  bottom: -1rem;
  width: 100%;
  height: 0.5px;
  background-color: #ebebeb;
}

.reclite_megamenu_side_container {
  padding: var(--menu-side-padding);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.reclite_megamenu_side_container h4 {
  font-family: "Primary Font", sans-serif;
}

.reclite_megamenu_left_container {
  display: flex;
}

.reclite_megamenu_left_container:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.reclite_megamenu_side_btn {
  background-color: var(--color-primary-white);
  color: var(--color-text);
  justify-content: space-between;
}

.reclite_menu_desc {
  /* font-size: var(--fs-20); */
}

.reclite_megamenu_side_container hr {
  color: rgba(214, 214, 214, 0.43);
  margin-block: 14px;
}

.reclite_megamenu_bottom_contact {
  flex-grow: 1;
  align-content: end;
}

.reclite_megamenu_bottom_contact p {
  color: #727272;
}

.reclite_megamenu_bottom_contact :is(p, a) {
  font-size: 14px;
}

.reclite_megamenu_quick_links {
  display: grid;
  gap: 0.5rem;
}

.reclite_megamenu_quick_links > p,
.reclite_megamenu_announcement_box_inner > p {
  font-size: 15px;
  letter-spacing: 1.2px;
}

.reclite_megamenu_quick_links a {
  color: #6785b2;
  /* font-size: var(--fs-20);/ */
  font-size: 16px;
}

.reclite_megamenu_quick_links a:is(:hover, :focus) {
  color: var(--color-primary-blue);
}

.reclite_megamenu_quick_links.reclite_quick_link_menu_object,
.reclite_megamenu_bottom_contact.reclite_contact_menu_object,
.reclite_megamenu_announcement_box.reclite_announcement_menu_object {
  display: none;
}

.reclite_megamenu_bottom_contact.reclite_contact_menu_object.active,
.reclite_megamenu_announcement_box.reclite_announcement_menu_object.active {
  display: block;
}

.reclite_megamenu_quick_links.reclite_quick_link_menu_object.active {
  display: grid;
}

.reclite_megamenu_announcement_view_all {
  font-size: 12px;
  padding: 4px 7px;
}

.reclite_announcement_content :is(p, a) {
  font-size: var(--fs-14);
}

.reclite_announcement_content p {
  margin-bottom: 10px;
}

.reclite_announcement_content p span {
  /* display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden; */
}

.reclite_announcement_content p + span {
  font-size: 12px;
  /* color: var(--color-primary-green); */
}

.reclite_announcement_content p a {
  color: var(--color-primary-green);
}

.reclite_announcement_content {
  display: grid;
  gap: 1rem;
}

.reclite_megamenu_bottom_contact img {
  margin-left: -1rem;
  width: 80px;
  height: 80px;
}

/* width */
.reclite_megamenu_container ul::-webkit-scrollbar {
  width: 3px;
}

/* Track */
.reclite_megamenu_container ul::-webkit-scrollbar-track {
  background-color: #fff;
  border-radius: 10px;
}

/* Handle */
.reclite_megamenu_container ul::-webkit-scrollbar-thumb {
  background: #c4c4c4;
  border-radius: 10px;
  border-top: 0px solid #c4c4c4;
  border-bottom: 0px solid #c4c4c4;
  border-left: 0px solid #c4c4c4;
  border-right: 0px solid #c4c4c4;
}
.reclite_mobile_menu_link {
  display: none;
}

/* ==========================================================================
   A11y: Focus visibility for keyboard navigation
   ========================================================================== */

/* Ensure all interactive megamenu elements have visible focus indicators */
.reclite_megamenu_tab_link:focus-visible,
.reclite_megamenu_single_link:focus-visible,
.reclite_megamenu_quick_links a:focus-visible,
.reclite_megamenu_side_btn:focus-visible,
.top_nav_link:focus-visible {
  outline: 2px solid var(--color-primary-blue);
  outline-offset: 2px;
}

/* Mobile toggle focus */
.mobile_toggle:focus-visible {
  outline: 2px solid var(--color-primary-blue);
  outline-offset: 4px;
  border-radius: 4px;
}

/* Back button focus in mobile megamenu */
.reclite_megamenu_back_btn:focus-visible {
  outline: 2px solid var(--color-primary-blue);
  outline-offset: 2px;
}

/* Skip to content link (add to your HTML if not present) */
.skip-to-content {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: 999;
  padding: 10px 20px;
  background: var(--color-primary-blue);
  color: var(--color-primary-white);
  font-weight: 600;
  text-decoration: none;
}

.skip-to-content:focus {
  position: fixed;
  top: 10px;
  left: 10px;
  width: auto;
  height: auto;
  overflow: visible;
  z-index: 9999;
  border-radius: 4px;
}

@media (min-width: 1920px) {
  .site_header_main {
    grid-template-columns: 15% 1fr;
  }
  /* .reclite_site_header.header_sticky .site_header_main {
		grid-template-columns: 15% 1fr;
	} */
  .reclite_site_header .reclite_main_menu .reclite_nav__container .nav-link {
    font-size: 18px;
  }
  .reclite_megamenu_container {
    --menu-padding: 1.875rem;
    --menu-side-padding: 2.25rem;
  }
  .reclite_megamenu_side_container hr {
    margin-block: 1.15rem;
  }
  .reclite_announcement_content {
    gap: 20px;
  }
  .reclite_megamenu_bottom_contact :is(p, a) {
    font-size: 16px;
  }
  .reclite_megamenu_bottom_contact img {
    width: 100px;
    height: 100px;
  }
  .reclite_newsletter_gif img {
    width: 320px;
    height: 320px;
  }
  .reclite_megamenu_container ul {
    height: 670px;
  }
}

@media (min-width: 1680px) {
  .top_right_menu .nav-link {
    padding-block: 12px;
  }
}

@media (max-width: 1680px) {
  .reclite_top_header_menu {
    font-size: 14px;
  }
}

@media (max-width: 1440px) {
  .reclite_megamenu_quick_links > p,
  .reclite_megamenu_announcement_box_inner > p {
    font-size: 14px;
  }
}

@media (max-width: 1366px) {
  .reclite_top_external a {
    padding-block: 4px;
  }
  .reclite_top_external_col a img {
    transform: scale(0.65);
  }
  .reclite_top_external_col.active a img {
    transform: scale(0.9);
  }
  .reclite_top_header_menu_nav a,
  .top_right_menu .nav-link {
    font-size: 14px;
  }
  body.home .site_header_main {
    grid-template-columns: 80px 1fr;
  }
  .reclite_main_menu .reclite_nav__container .top_nav_link {
    font-size: 15px;
  }
  .reclite_megamenu_quick_links a,
  .reclite_site_header
    .reclite_main_menu
    :is(
      .reclite_megamenu_pills.reclite_megamenu_pills,
      .reclite_submenu_pills.reclite_submenu_pills
    )
    :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link) {
    font-size: 14px;
  }
  .reclite_announcement_content :is(p, a) {
    font-size: 12px;
  }
  .reclite_announcement_content p + span {
    font-size: 11px;
  }
  .reclite_announcement_content p {
    margin-bottom: 5px;
  }
  .reclite_site_header
    .reclite_main_menu
    :is(
      .reclite_megamenu_pills.reclite_megamenu_pills,
      .reclite_submenu_pills.reclite_submenu_pills
    )
    :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link)
    svg {
    width: 20px;
    height: 20px;
  }
  .reclite_megamenu_container ul {
    height: 480px;
  }
  .reclite_megamenu_quick_links > p,
  .reclite_megamenu_announcement_box_inner > p {
    font-size: 13px;
  }
  .reclite_megamenu_bottom_contact img {
    width: 60px;
    height: 60px;
  }
  .reclite_megamenu_bottom_contact :is(p, a) {
    font-size: 13px;
  }
  :is(body:not(.home) .reclite_site_header) .site_header_main {
    grid-template-columns: 15% 1fr;
  }
  :is(body:not(.home) .reclite_site_header.header_sticky) .site_header_main {
    grid-template-columns: 15% 1fr;
  }
  .reclite_newsletter_gif img {
    width: 210px;
    height: 210px;
  }
  .reclite_newsletter_gif:before {
    width: 160px;
  }
}

@media (min-width: 1200px) {
  .reclite_main_menu_items .top_nav_link .menu_arrow {
    display: none;
  }
}

@media (max-width: 1200px) {
  header,
  .reclite_top_external,
  .reclite_top_header_menu {
    /* display: none; */
  }
  .reclite_top_header_menu {
    padding-block: 10px;
  }
  .reclite_site_footer_main {
    gap: 3rem;
  }
  .footer_menu_main:before {
    left: -2rem;
  }
  .reclite_site_header
    .reclite_main_menu
    .reclite_nav__container
    .top_nav_link.has_reclite_megamenu:not(.collapsed):after {
    content: none;
  }
  .site_navigation_main {
    position: fixed;
    top: 0;
    background: var(--color-primary-white);
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 99;
    --border_color: #dff5ff;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: 400ms ease-in-out;
  }
  .site_navigation_main.toggle_active {
    transform: translateX(0);
  }
  .site_navigation_main .navbar {
    width: 100%;
    /* gap: 1.25rem; */
    overflow-x: hidden;
  }
  .reclite_main_menu {
    transition: transform 400ms ease-in-out;
  }
  .reclite_main_menu_items {
    position: relative;
    gap: 0;
  }
  .reclite_megamenu_container_collapse {
    width: 300vw;
    left: 100%;
    top: 0;
  }
  .reclite_megamenu_container {
    border: 0;
    border-radius: 0;
  }
  .reclite_megamenu_side_container {
    display: none;
  }
  .reclite_megamenu_pills.reclite_megamenu_pills,
  .reclite_submenu_pills.reclite_submenu_pills {
    width: 100vw;
    padding-inline: 7vw;
    gap: 0;
    padding-block: 0;
  }
  .reclite_megamenu_item:not(:last-child):after {
    content: none;
  }
  .reclite_main_menu .reclite_nav__container .top_nav_link {
    justify-content: start;
  }
  .reclite_nav__container .reclite_menu_btn .top_nav_link.nav-link.nav-link {
    margin: 0;
  }
  .reclite_megamenu_container ul {
    height: auto;
  }
  .top_external_link {
    opacity: 1;
    position: static;
    box-shadow: none;
  }
  .reclite_top_external_col {
    border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
  }
  .top_external_link:after {
    content: none;
  }
  .reclite_top_external_col:not(:last-child):after {
    width: 0.8px;
  }
  .reclite_top_external#reclite_top_external_desktop {
    display: none;
  }
  .reclite_top_external#reclite_top_external_mobile {
    display: grid;
    padding-inline: 7vw;
  }
  .reclite_top_external_col.active a img,
  .reclite_top_external_col a img {
    transform: scale(1);
    height: 32px;
    object-fit: contain;
  }
  .reclite_top_external a.reclite_top_external_collapse {
    padding: 8px 20px;
    text-align: center;
  }
  .reclite_top_external a {
    padding-inline: 10px;
    font-size: 12px;
  }
  body .reclite_site_header #reclite_site_branding_mobile .site_white_logo {
    display: none;
  }
  body .reclite_site_header #reclite_site_branding_mobile .site_main_logo {
    display: block;
  }
  body:not(.home)
    .reclite_site_header
    .reclite_nav__container
    .reclite_menu_btn
    .top_nav_link.nav-link.nav-link,
  .reclite_site_header.header_sticky
    .reclite_nav__container
    .reclite_menu_btn
    .top_nav_link.nav-link.nav-link {
    border-color: var(--border_color);
  }
  .reclite_nav__container .reclite_menu_btn .top_nav_link.nav-link.nav-link,
  .reclite_main_menu .reclite_main_menu_items li .top_nav_link {
    padding: 0;
    padding-block: 14px;
    margin-inline: 7vw;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
    justify-content: space-between;
  }
  .reclite_site_header
    .reclite_main_menu
    :is(
      .reclite_megamenu_pills.reclite_megamenu_pills,
      .reclite_submenu_pills.reclite_submenu_pills
    )
    :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link) {
    padding-block: 14px;
    border-top: 1px solid var(--border_color);
    border-radius: 0;
  }
  .reclite_main_menu .reclite_main_menu_items li .top_nav_link,
  .reclite_main_menu .reclite_main_menu_items li:last-child .top_nav_link {
    border-top: 1px solid var(--border_color);
  }
  .reclite_main_menu .reclite_main_menu_items li:last-child .top_nav_link {
    border-bottom: 1px solid var(--border_color);
  }
  .reclite_megamenu_mobile_title_container {
    padding-block: 9.5px;
    border-top: 1px solid var(--border_color);
  }
  .reclite_main_menu .reclite_nav__container .top_nav_link {
    color: var(--color-text);
  }
  .top_right_menu_mobile .reclite_translate {
    display: none;
  }
  body.home .site_header_main {
    grid-template-columns: 40px 100px 1fr;
    align-items: center;
    gap: 2rem;
  }
  :is(.reclite_site_header.header_sticky, body:not(.home) .reclite_site_header)
    .site_header_main {
    gap: 2rem;
    grid-template-columns: 40px 80px 1fr;
    align-items: center;
  }
  :is(body:not(.home) .reclite_site_header.header_sticky) .site_header_main {
    grid-template-columns: 40px 80px 1fr;
  }
  .top_right_menu:not(.top_right_menu_mobile) li:not(.reclite_translate) {
    display: none;
  }
  .reclite_site_header.header_sticky .mobile_toggle svg path,
  body:not(.home) .mobile_toggle svg path {
    fill: var(--color-primary-blue);
  }
  .reclite_main_menu
    .reclite_nav__container
    .top_nav_link
    svg.reclite_megamenu_arrow {
    display: none;
  }
  .reclite_main_menu_items .top_nav_link .menu_arrow path {
    opacity: 1;
  }
  .reclite_megamenu_container {
    box-shadow: none;
    --submenu_bgcolor: var(--color-primary-white);
    background-color: var(--color-primary-white);
  }

	.reclite_megamenu_back_btn, .reclite_megamenu_back_btn {
    box-shadow: none !important;
	}

	.mobile_toggle, .mobile_toggle {
    box-shadow: none !important;
	}

  .reclite_megamenu_back_btn {
    font-size: 12px;
  }
  .mobile_only_branding {
    padding-top: 8px;
    padding-bottom: 18px;
  }
  .mobile_quick_link_text {
    color: var(--color-primary-green);
    letter-spacing: 1.3px;
  }
  .footer_menu_main_1:before {
    content: none;
  }
  .reclite_translate:before {
    content: none;
  }
  .reclite_nav__container .top_right_menu_mobile .top_nav_link {
    justify-content: space-between;
    color: #808080;
  }
  .top_right_menu_mobile .top_nav_link:after {
    content: "";
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="6" height="10" viewBox="0 0 6 10" fill="none"><path d="M1.47461 1.03996L4.73461 4.29996C5.11961 4.68496 5.11961 5.31496 4.73461 5.69996L1.47461 8.95996" stroke="%23636363" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-repeat: no-repeat;
    width: 8px;
    height: 12px;
    background-size: contain;
  }
  .reclite_megamenu_main_title {
    font-size: 20px;
  }
  .reclite_mobile_site_name {
    font-size: 24px;
    font-weight: 700;
    font-family: "Secondary Font", sans-serif;
    color: var(--color-primary-blue);
	display: none;
  }
  .reclite_site_header
    .reclite_main_menu
    :is(
      .reclite_megamenu_pills.reclite_megamenu_pills,
      .reclite_submenu_pills.reclite_submenu_pills
    )
    :is(.reclite_parent_link) {
    font-family: "Primary Font", sans-serif;
    pointer-events: all;
  }

  .reclite_megamenu_item:has(.reclite_parent_link) {
    display: block;
  }
}

@media (max-width: 1180px) {
  .page-template-department-page .reclite_site_footer {
    padding-bottom: 3rem;
  }
}

@media (max-width: 1024px) {
  .reclite_site_footer_main {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .contact_info svg {
    width: 15px;
    height: 18px;
    margin-top: 3px;
  }
  .footer_top_main {
    grid-row: 1;
    grid-column: span 3;
  }
  .footer_top_main h6 {
    text-align: center;
  }
  .footer_menu_main:first-child:before {
    content: none;
  }
}

@media (max-width: 880px) {
  .reclite_nav__container .reclite_menu_btn .top_nav_link.nav-link.nav-link,
  .reclite_main_menu .reclite_main_menu_items li .top_nav_link {
    margin-inline: 3rem;
  }
  .reclite_top_external#reclite_top_external_mobile,
  .reclite_megamenu_pills.reclite_megamenu_pills,
  .reclite_submenu_pills.reclite_submenu_pills {
    padding-inline: 3rem;
  }
  .copyright_text {
    padding-block: 1rem;
    flex-direction: column;
    gap: 10px !important;
  }
}

@media (max-width: 520px) {
  .reclite_site_footer_main {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .reclite_nav__container .reclite_menu_btn .top_nav_link.nav-link.nav-link,
  .reclite_main_menu .reclite_main_menu_items li .top_nav_link {
    margin-inline: 0;
    padding: 14px;
  }
  .reclite_top_external#reclite_top_external_mobile {
    padding: 0;
  }
  .reclite_megamenu_pills.reclite_megamenu_pills,
  .reclite_submenu_pills.reclite_submenu_pills {
    padding-inline: 0;
  }
  .mobile_only_branding .site_main_logo img {
    width: 70px;
  }
  .mobile_toggle svg {
    width: 20px;
    height: 14px;
  }
  .mobile_toggle_close svg {
    width: 19px;
    height: 19px;
  }
  .site_header_main {
    align-items: center;
  }
  :is(.reclite_site_header.header_sticky, body:not(.home) .reclite_site_header)
    .site_header_main {
    gap: 1.25rem;
    grid-template-columns: 20px 1fr 1fr;
  }
  body.home .site_header_main {
    grid-template-columns: 20px 1fr 1fr;
    gap: 1.25rem;
  }
  :is(body:not(.home) .reclite_site_header.header_sticky) .site_header_main {
    grid-template-columns: 20px 70px 1fr;
  }
  .reclite_translate .top_nav_link {
    padding-block: 0;
  }
  .reclite_site_header
    .reclite_main_menu
    :is(
      .reclite_megamenu_pills.reclite_megamenu_pills,
      .reclite_submenu_pills.reclite_submenu_pills
    )
    :is(.reclite_megamenu_tab_link, .reclite_megamenu_single_link) {
    padding-inline: 14px;
  }
  .reclite_megamenu_mobile_title_container {
    padding-inline: 14px;
  }
  .footer_menu_main h6 svg {
    display: block;
    transition: 300ms ease-in-out;
  }
  .footer_top_main {
    grid-column: span 1;
    padding-bottom: 2rem;
  }
  .footer_menu_main h6 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: 14px;
    border-top: 1px solid #a4c8e8;
  }
  .footer_menu_main:before {
    content: none;
  }
  footer .reclite_nav__container {
    padding-bottom: 1rem;
  }
  .footer_menu_main h6:not(.collapsed) svg {
    transform: rotate(-180deg);
  }
  .reclite_newsletter {
    padding-block: 2rem;
  }
  .copyright_text p,
  .op_company_name {
    font-size: 12px;
  }
  .page-template-department-page .reclite_site_footer {
    padding-bottom: 4rem;
  }
  .page-template-services-page .reclite_site_footer {
    padding-bottom: 3rem;
  }
  .reclite_mobile_menu_link {
    display: block;
  }
}

/* ---------- Signed-in account dropdown (Registration Info → account menu) ---------- */
.reclite_account_nav_item {
  position: relative;
}

.reclite_account_menu_panel {
  display: none;
  flex-direction: column;
  min-width: 220px;
  padding: 0.5rem;
  background-color: var(--color-primary-white, #ffffff);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 10px;
  box-shadow: 0px 7px 8px 0px rgba(0, 0, 0, 0.12);
}

.reclite_account_menu_panel.is-open {
  display: flex;
}

.reclite_account_welcome {
  display: block;
  padding: 0.5rem 0.75rem;
  margin-bottom: 0.25rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  color: var(--color-text, #1a1a1a);
  font-weight: 700;
  font-size: 15px;
  line-height: 1.3;
}

.reclite_account_link {
  display: block;
  width: 100%;
  padding: 0.55rem 0.75rem;
  border: none;
  border-radius: 6px;
  background: none;
  color: var(--color-text, #1a1a1a);
  font-size: 15px;
  font-weight: 500;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 200ms ease-in-out, color 200ms ease-in-out;
}

.reclite_account_link:hover,
.reclite_account_link:focus-visible {
  background-color: rgba(0, 0, 0, 0.04);
  color: var(--color-primary-green, #00662c);
}

.reclite_account_signout {
  margin-top: 0.25rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 0 0 6px 6px;
  color: var(--reclite-color-primary, #002d72);
}

.reclite_account_signout[disabled] {
  opacity: 0.6;
  cursor: default;
}

/* Desktop: float the panel below the trigger. */
@media (min-width: 1200px) {
  .reclite_account_menu_panel {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1000;
    margin-top: 0.75rem;
  }
}

/* Mobile: expand in-flow inside the slide-out nav. */
@media (max-width: 1200px) {
  .reclite_account_menu_panel {
    width: 100%;
    margin-top: 0.5rem;
    box-shadow: none;
  }
}

/* Signed-in trigger: round initials avatar (replaces the pill button). */
.reclite_account_nav_item .reclite_account_toggle.nav-link {
  padding: 0;
  margin-left: 1.5rem;
}

.reclite_account_avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background-color: var(--color-primary-white, #ffffff);
  color: var(--color-text, #1a1a1a);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  transition: box-shadow 200ms ease-in-out, border-color 200ms ease-in-out;
}

.reclite_account_toggle:hover .reclite_account_avatar,
.reclite_account_toggle:focus-visible .reclite_account_avatar,
.reclite_account_toggle[aria-expanded="true"] .reclite_account_avatar {
  border-color: var(--color-primary-green, #00662c);
  box-shadow: 0 0 0 3px rgba(0, 102, 44, 0.15);
}

@media (max-width: 1200px) {
  .reclite_account_nav_item .reclite_account_toggle.nav-link {
    margin-left: 0;
  }
}

/* Unread notification count badge (add class "reclite-notif-count" to a menu item). */
.reclite-notif-count .top_nav_link,
.reclite-notif-count > a {
  position: relative;
}

.reclite_notif_badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  margin-left: 6px;
  padding: 0 5px;
  border-radius: 999px;
  background-color: #d92d20;
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  vertical-align: middle;
}

/* Notification badge overlay on the initials avatar (shown when dropdown is closed). */
.reclite_account_nav_item .reclite_account_toggle.nav-link {
  position: relative;
}

.reclite_account_avatar_badge {
  position: absolute;
  top: -3px;
  right: -3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  border: 2px solid var(--color-primary-white, #ffffff);
  background-color: #d92d20;
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

/* When the dropdown is open, hide the avatar overlay — the count then shows on
   the actual notification menu item inside the panel. */
.reclite_account_toggle[aria-expanded="true"] .reclite_account_avatar_badge {
  display: none;
}

/* Mobile: pin the "Register / Sign in" / account item (reclite-auth-toggle)
   to the top of the stacked main menu. Desktop order is unchanged. */
@media (max-width: 1199.98px) {
  .reclite_main_menu_items > li.reclite-auth-toggle {
    order: -1;
  }
}

/* Signed-in account item: the text label + arrow are the MOBILE trigger;
   desktop keeps the round initials avatar. */
.reclite_account_label {
  display: none;
}

@media (max-width: 1199.98px) {
  /* Render the account trigger like any other top-level row
     ("Program & Passes"): full name text on the left, blue arrow on the right. */
  .reclite_account_nav_item .reclite_account_avatar {
    display: none;
  }
  .reclite_account_nav_item .reclite_account_label {
    display: inline;
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
  }
  .reclite_main_menu .reclite_main_menu_items li.reclite_account_nav_item .reclite_account_toggle.nav-link {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  /* The theme rotates an open trigger's svg 180deg; like the mega menu rows
     the arrow keeps pointing right (the panel slides in from the right). */
  .reclite_main_menu .reclite_nav__container .reclite_account_nav_item .reclite_account_toggle .menu_arrow {
    flex: 0 0 auto;
    transform: none;
  }
  /* Unread badge sits inline after the name instead of on the avatar corner. */
  .reclite_account_nav_item .reclite_account_avatar_badge {
    position: static;
    border: 0;
  }
  .reclite_account_toggle[aria-expanded="true"] .reclite_account_avatar_badge {
    display: inline-flex;
  }
  .reclite_account_toggle[aria-expanded="true"] .reclite_account_avatar_badge[hidden] {
    display: none;
  }

  /* Slide-over panel, positioned exactly like the mega menu collapse:
     one screen to the right of the menu list (the ul is the offset parent),
     brought into view by the shared translateX(-100%) on .reclite_main_menu. */
  .reclite_main_menu_items > li.reclite_account_nav_item {
    position: static;
  }
  .reclite_account_nav_item .reclite_account_menu_panel {
    position: absolute;
    left: 100%;
    top: 0;
    width: 100vw;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background-color: var(--color-primary-white, #ffffff);
  }
  .reclite_account_nav_item .reclite_account_welcome {
    display: none;
  }
  /* Rows match the mega menu's single links. */
  .reclite_account_nav_item .reclite_account_link {
    padding: 14px;
    border-top: 1px solid var(--border_color);
    border-radius: 0;
    color: var(--color-text, #1a1a1a);
    font-size: 16px;
    font-weight: 500;
  }
  .reclite_account_nav_item .reclite_account_link:last-child {
    border-bottom: 1px solid var(--border_color);
  }
  /* Sign out is a <button>: the theme pills every button at ID-level
     specificity, so use :not(#_) to render it as a plain row like the links. */
  .reclite_account_nav_item .reclite_account_signout:not(#_) {
    display: block;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 14px;
    border: 0;
    border-top: 1px solid var(--border_color);
    border-bottom: 1px solid var(--border_color);
    border-radius: 0;
    background: none;
    box-shadow: none;
    color: var(--reclite-color-primary, #002d72);
    font-size: 16px;
    font-weight: 500;
    text-align: left;
  }
  .reclite_account_nav_item .reclite_account_signout:not(#_)::before,
  .reclite_account_nav_item .reclite_account_signout:not(#_)::after {
    content: none !important;
    display: none !important;
  }
}
