/*-- -------------------------- -->
<---        Core Styles         -->
<--- -------------------------- -*/
/* Mobile */
@media only screen and (min-width: 0rem) {
	:root {
	  --primary: #1E3A8A;
	  --primaryLight: #001F3F;
	  --secondary: #E4A95F;
	  --secondaryLight: #FFBA43;
	  --headerColor: #1a1a1a;
	  --bodyTextColor: #4E4B66;
	  --bodyTextColorWhite: #FAFBFC;
	  /* 13px - 16px */
	  --topperFontSize: clamp(0.8125rem, 1.6vw, 1rem);
	  /* 31px - 49px */
	  --headerFontSize: clamp(1.9375rem, 3.9vw, 3.0625rem);
	  --bodyFontSize: 1rem;
	  /* 60px - 100px top and bottom */
	  --sectionPadding: clamp(3.75rem, 7.82vw, 6.25rem) 1rem;
	}
	html {
	  scroll-padding-top: 100px;
	  scroll-behavior: smooth;
	}
	/* inter-700 - latin */
	@font-face {
	  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	  font-family: 'Inter';
	  font-style: normal;
	  font-weight: 700;
	  src: url('/assets/fonts/inter-v18-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
	}
	/* inter-900 - latin */
	@font-face {
	  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	  font-family: 'Inter';
	  font-style: normal;
	  font-weight: 900;
	  src: url('/assets/fonts/inter-v18-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
	}
	/* dm-sans-regular - latin */
	@font-face {
	  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	  font-family: 'DM Sans';
	  font-style: normal;
	  font-weight: 400;
	  src: url('/assets/fonts/dm-sans-v15-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
	}
	body,
	html {
	  margin: 0;
	  padding: 0;
	  font-size: 100%;
	  font-family: 'DM Sans', Arial, sans-serif;
	  color: var(--bodyTextColor);
	  overflow-x: hidden;
	}
	*,
	*:before,
	*:after {
	  margin: 0;
	  padding: 0;
	  box-sizing: border-box;
	}
	body {
	  transition: background-color 0.3s;
	}
	.container {
	  position: relative;
	  width: 92%;
	  margin: auto;
	}
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
	  margin: 0;
	  color: var(--headerColor);
	}
	p,
	li,
	a {
	  font-size: 1rem;
	  line-height: 1.5em;
	  margin: 0;
	}
	p,
	li {
	  color: var(--bodyTextColor);
	}
	a:hover,
	button:hover {
	  cursor: pointer;
	}
	.cs-topper {
	  font-size: var(--topperFontSize);
	  line-height: 1.2em;
	  text-transform: uppercase;
	  text-align: inherit;
	  letter-spacing: .1em;
	  font-weight: 700;
	  color: var(--primary);
	  margin-bottom: 0.25rem;
	  display: block;
  
	  font-family: 'Inter', 'Arial', 'sans-serif';
	}
	body.dark-mode .cs-topper {
	  color: var(--secondary);
	}
	.cs-title {
	  font-size: var(--headerFontSize);
	  font-weight: 900;
	  line-height: 1.2em;
	  text-align: inherit;
	  max-width: 43.75rem;
	  margin: 0 0 1rem 0;
	  color: var(--headerColor);
	  position: relative;
  
	  font-family: 'Inter', 'Arial', 'sans-serif';
	}
	.cs-text {
	  font-size: var(--bodyFontSize);
	  line-height: 1.5em;
	  text-align: inherit;
	  width: 100%;
	  max-width: 40.625rem;
	  margin: 0;
	  color: var(--bodyTextColor);
	}
	.cs-button-solid {
	  font-size: 1rem;
	  /* 46px - 56px */
	  line-height: clamp(2.875rem, 5.5vw, 3.5rem);
	  text-decoration: none;
	  font-weight: 700;
	  text-align: center;
	  margin: 0;
	  color: #fff;
	  min-width: 9.375rem;
	  padding: 0 1.5rem;
	  background-color: var(--primary);
	  display: inline-block;
	  position: relative;
	  z-index: 1;
	  /* prevents padding from adding to the width */
	  box-sizing: border-box;
  
	  border-radius: 0.25rem;
	}
	.cs-button-solid:before {
	  content: '';
	  position: absolute;
	  height: 100%;
	  width: 0%;
	  background: #000;
	  opacity: 1;
	  top: 0;
	  left: 0;
	  z-index: -1;
	  transition: width .3s;
  
	  border-radius: 0.25rem;
	}
	.cs-button-solid:hover:before {
	  width: 100%;
	}
	.skip {
	  position: absolute;
	  top: 0;
	  left: 0;
	  opacity: 0;
	  z-index: -1111111;
	}
  
	.cs-button-alt {
	  background-color: transparent;
	  color: #000;
	  border: 1px solid #000;
	}
	.cs-button-alt:hover {
	  color: #fff;
	}
  
  }
  /*-- -------------------------- -->
  <---      Dark Mode Toggle      -->
  <--- -------------------------- -*/
  /* Mobile */
  @media only screen and (min-width: 0em) {
	body.dark-mode #dark-mode-toggle .cs-sun {
	  transform: translate(-50%, -50%);
	  opacity: 1;
	}
	body.dark-mode #dark-mode-toggle .cs-moon {
	  transform: translate(-50%, -150%);
	  opacity: 0;
	  fill: #fff;
	}
	#dark-mode-toggle {
	  display: block;
	  position: absolute;
	  width: 3rem;
	  height: 3rem;
	  background: transparent;
	  border: none;
	  overflow: hidden;
	  padding: 0;
	  z-index: 1000;
	}
	#dark-mode-toggle img,
	#dark-mode-toggle svg {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	  width: 1.25rem;
	  height: 1.25rem;
	  pointer-events: none;
	}
	#dark-mode-toggle .cs-moon {
	  z-index: 2;
	  transition: transform .3s, opacity .3s;
	}
	#dark-mode-toggle .cs-sun {
	  z-index: 1;
	  transform: translate(-50%, 100%);
	  opacity: 0;
	  transition: transform .3s, opacity .3s;
	}
  
  }
  /* Desktop */
  @media only screen and (min-width: 64em) {
	#dark-mode-toggle {
	  position: relative;
	  transform: none;
	  top: auto;
	  right: auto;
	  margin: 0;
	}
	#dark-mode-toggle:hover {
	  cursor: pointer;
	}
  }
  /*-- -------------------------- -->
  <---      Dark Mode Toggle      -->
  <--- -------------------------- -*/
  /* Mobile - 360px */
  @media only screen and (min-width: 0rem) {
	body.dark-mode #dark-mode-toggle .cs-sun {
	  opacity: 1;
	  transform: translate(-50%, -50%);
	}
	body.dark-mode #dark-mode-toggle .cs-moon {
	  opacity: 0;
	  transform: translate(-50%, -150%);
	}
	#dark-mode-toggle {
	  width: 3rem;
	  height: 3rem;
	  margin: 0;
	  padding: 0;
	  background: transparent;
	  border: none;
	  display: block;
	  order: 4;
	  position: relative;
	  z-index: 1000;
	  overflow: hidden;
	}
	#dark-mode-toggle img,
	#dark-mode-toggle svg {
	  width: 1.25rem;
	  height: 1.25rem;
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	  pointer-events: none;
	}
	#dark-mode-toggle .cs-moon {
	  z-index: 2;
	  transition: transform 0.3s, opacity 0.3s;
	}
	#dark-mode-toggle .cs-sun {
	  opacity: 0;
	  z-index: 1;
	  transform: translate(-50%, 100%);
	  transition: transform 0.3s, opacity 0.3s;
	}
  }
  /* Desktop - 1024px */
  @media only screen and (min-width: 64rem) {
	#dark-mode-toggle {
	  margin: 0;
	  position: relative;
	  top: auto;
	  right: auto;
	  transform: none;
	}
	#dark-mode-toggle:hover {
	  cursor: pointer;
	}
	
  }

  /*-- -------------------------- -->
<---     Mobile Navigation      -->
<--- -------------------------- -*/
/* Mobile - 1023px */
@media only screen and (max-width: 63.9375rem) {
	body.cs-open {
	  overflow: hidden;
	}
	body.scroll #cs-navigation {
	  width: 100%;
	  max-width: 100%;
	  top: 0;
	}
	body.scroll #cs-navigation:before {
	  border-radius: 0;
	}
	body.scroll #cs-navigation .cs-ul-wrapper {
	  top: 100%;
	}
	#cs-navigation {
	  width: 94%;
	  max-width: 80rem;
	  /* prevents padding from affecting height and width */
	  box-sizing: border-box;
	  /* 12px - 24px */
	  padding: clamp(0.75rem, 2vw, 1.5rem);
	  /* 12px - 24px */
	  border-radius: clamp(0.75rem, 2vw, 1.5rem);
	  position: fixed;
	  top: 2rem;
	  left: 50%;
	  z-index: 10000;
	  transform: translateX(-50%);
	  transition: top 0.3s, border-radius 0.3s, width 0.3s, max-width 0.3s;
	}
	#cs-navigation:before {
	  /* background color */
	  content: "";
	  width: 100%;
	  height: 100%;
	  background: #fff;
	  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	  opacity: 1;
	  /* 12px - 24px */
	  border-radius: clamp(0.75rem, 2vw, 1.5rem);
	  display: block;
	  position: absolute;
	  top: 0;
	  left: 50%;
	  transform: translateX(-50%);
	  transition: transform 0.2s, border-radius 0.3s ease-in-out;
	}
	#cs-navigation.cs-active:before {
	  transform: translateX(-50%) scale(1.03);
	}
	#cs-navigation.cs-active .cs-toggle {
	  transform: rotate(180deg);
	}
	#cs-navigation.cs-active .cs-ul-wrapper {
	  transform: scaleY(1);
	  transition-delay: 0.15s;
	}
	#cs-navigation.cs-active .cs-li {
	  opacity: 1;
	  transform: translateY(0);
	}
	#cs-navigation .cs-container {
	  width: 100%;
	  display: flex;
	  justify-content: flex-end;
	  align-items: center;
	  gap: 1.5rem;
	}
	#cs-navigation .cs-logo {
	  width: auto;
	  max-width: 12.5rem;
	  height: 100%;
	  margin: 0 auto 0 0;
	  /* prevents padding from affecting height and width */
	  box-sizing: border-box;
	  padding: 0;
	  display: flex;
	  justify-content: flex-start;
	  align-items: center;
	  z-index: 10;
	}
	#cs-navigation .cs-logo img {
	  width: 100%;
	  height: 100%;
	  /* ensures the image never overflows the container. It stays contained within it's width and height and expands to fill it then stops once it reaches an edge */
	  object-fit: contain;
	}
	#cs-navigation .cs-toggle {
	  width: 3.5rem;
	  height: 3.5rem;
	  margin: 0 0 0 auto;
	  background-color: var(--primary);
	  border: none;
	  border-radius: 0.25rem;
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  position: relative;
	  z-index: 10;
	  transition: transform 0.6s;
  
	  left: 1rem;
	}
	#cs-navigation .cs-nav {
	  /* sends it to the right in the 3rd position */
	  order: 3;
	}
	#cs-navigation .cs-contact-group {
	  display: none;
	  position: relative;
	  z-index: 10;
	}
	#cs-navigation .cs-phone {
	  font-size: 1rem;
	  line-height: 1.5em;
	  text-decoration: none;
	  margin: 0;
	  color: var(--headerColor);
	  display: flex;
	  justify-content: flex-start;
	  align-items: center;
	  gap: 0.5rem;
	  transition: opacity 0.3s, color 0.3s;
	}
	#cs-navigation .cs-phone-icon {
	  width: 1.5rem;
	  height: auto;
	  display: block;
	}
	#cs-navigation .cs-social {
	  display: none;
	}
	#cs-navigation .cs-active .cs-line1 {
	  top: 50%;
	  transform: translate(-50%, -50%) rotate(225deg);
	}
	#cs-navigation .cs-active .cs-line2 {
	  top: 50%;
	  transform: translate(-50%, -50%) translateY(0) rotate(-225deg);
	  transform-origin: center;
	}
	#cs-navigation .cs-active .cs-line3 {
	  opacity: 0;
	  bottom: 100%;
	}
	#cs-navigation .cs-box {
	  /* 24px - 28px */
	  width: clamp(1.5rem, 2vw, 1.75rem);
	  height: 1rem;
	  position: relative;
	}
	#cs-navigation .cs-line {
	  width: 100%;
	  height: 2px;
	  background-color: #fafbfc;
	  border-radius: 2px;
	  position: absolute;
	  left: 50%;
	  transform: translateX(-50%);
	}
	#cs-navigation .cs-line1 {
	  top: 0;
	  transition: transform 0.5s, top 0.3s, left 0.3s;
	  animation-duration: 0.7s;
	  animation-timing-function: ease;
	  animation-direction: normal;
	  animation-fill-mode: forwards;
	  transform-origin: center;
	}
	#cs-navigation .cs-line2 {
	  top: 50%;
	  transform: translateX(-50%) translateY(-50%);
	  transition: top 0.3s, left 0.3s, transform 0.5s;
	  animation-duration: 0.7s;
	  animation-timing-function: ease;
	  animation-direction: normal;
	  animation-fill-mode: forwards;
	}
	#cs-navigation .cs-line3 {
	  bottom: 0;
	  transition: bottom 0.3s, opacity 0.3s;
	}
	#cs-navigation .cs-ul-wrapper {
	  width: 100%;
	  height: auto;
	  padding-bottom: 2.4em;
	  background-color: #fff;
	  border-radius: 0 0 1.5rem 1.5rem;
	  position: absolute;
	  top: 85%;
	  left: 0;
	  z-index: -1;
	  overflow: hidden;
	  transform: scaleY(0);
	  transition: transform 0.4s;
	  transform-origin: top;
	}
	#cs-navigation .cs-ul {
	  width: 100%;
	  height: auto;
	  max-height: 65vh;
	  margin: 0;
	  padding: 4rem 0 0 0;
	  display: flex;
	  flex-direction: column;
	  justify-content: flex-start;
	  align-items: center;
	  gap: 1.25rem;
	  overflow: auto;
	}
	#cs-navigation .cs-li {
	  text-align: center;
	  list-style: none;
	  width: 100%;
	  margin-right: 0;
	  opacity: 0;
	  /* transition from these values */
	  transform: translateY(-70/16rem);
	  transition: transform 0.6s, opacity 0.9s;
	}
	#cs-navigation .cs-li:nth-of-type(1) {
	  transition-delay: 0.05s;
	}
	#cs-navigation .cs-li:nth-of-type(2) {
	  transition-delay: 0.1s;
	}
	#cs-navigation .cs-li:nth-of-type(3) {
	  transition-delay: 0.15s;
	}
	#cs-navigation .cs-li:nth-of-type(4) {
	  transition-delay: 0.2s;
	}
	#cs-navigation .cs-li:nth-of-type(5) {
	  transition-delay: 0.25s;
	}
	#cs-navigation .cs-li:nth-of-type(6) {
	  transition-delay: 0.3s;
	}
	#cs-navigation .cs-li:nth-of-type(7) {
	  transition-delay: 0.35s;
	}
	#cs-navigation .cs-li:nth-of-type(8) {
	  transition-delay: 0.4s;
	}
	#cs-navigation .cs-li:nth-of-type(9) {
	  transition-delay: 0.45s;
	}
	#cs-navigation .cs-li:nth-of-type(10) {
	  transition-delay: 0.5s;
	}
	#cs-navigation .cs-li:nth-of-type(11) {
	  transition-delay: 0.55s;
	}
	#cs-navigation .cs-li:nth-of-type(12) {
	  transition-delay: 0.6s;
	}
	#cs-navigation .cs-li:nth-of-type(13) {
	  transition-delay: 0.65s;
	}
	#cs-navigation .cs-li-link {
	  /* 16px - 24px */
	  font-size: clamp(1rem, 2.5vw, 1.5rem);
	  line-height: 1.2em;
	  text-decoration: none;
	  margin: 0;
	  color: var(--headerColor);
	  display: inline-block;
	  position: relative;
	}
	#cs-navigation .cs-li-link.cs-active {
	  color: var(--primary);
	}
	#cs-navigation .cs-li-link:hover {
	  color: var(--primary);
	}
	#cs-navigation .cs-button-solid {
	  display: none;
	}
  }
  /* Tablet - 768px */
  @media only screen and (min-width: 48rem) {
	#cs-navigation .cs-contact-group {
	  display: block;
	}
  }
  /* Dark Mode */
  @media only screen and (max-width: 63.9375rem) {
	body.dark-mode #cs-navigation:before {
	  background-color: var(--dark);
	}
	body.dark-mode #cs-navigation .cs-logo {
	  /* makes it white */
	  filter: grayscale(1) brightness(1000%);
	}
	body.dark-mode #cs-navigation .cs-toggle {
	  background-color: var(--secondary);
	}
	body.dark-mode #cs-navigation .cs-phone {
	  color: var(--bodyTextColorWhite);
	}
	body.dark-mode #cs-navigation .cs-phone-icon {
	  /* turns it white */
	  filter: grayscale(1) brightness(1000%);
	}
	body.dark-mode #cs-navigation .cs-line {
	  background-color: #fff;
	}
	body.dark-mode #cs-navigation .cs-ul-wrapper {
	  background-color: var(--medium);
	}
	body.dark-mode #cs-navigation .cs-li-link {
	  color: var(--bodyTextColorWhite);
	}
  }
/*-- -------------------------- -->
<---     Navigation Dropdown    -->
<--- -------------------------- -*/
/* Mobile - 1023px */
@media only screen and (max-width: 63.9375rem) {
	#cs-navigation .cs-li {
	  text-align: center;
	  width: 100%;
	  display: block;
	}
	#cs-navigation .cs-dropdown {
	  color: var(--bodyTextColorWhite);
	  position: relative;
	}
	#cs-navigation .cs-dropdown.cs-active .cs-drop-ul {
	  height: auto;
	  margin: 0.75rem 0 0 0;
	  padding: 0.75rem 0;
	  opacity: 1;
	  visibility: visible;
	}
	#cs-navigation .cs-dropdown.cs-active .cs-drop-link {
	  opacity: 1;
	}
	#cs-navigation .cs-dropdown .cs-li-link {
	  position: relative;
	  transition: opacity 0.3s;
	}
	#cs-navigation .cs-drop-icon {
	  width: 0.9375rem;
	  height: auto;
	  position: absolute;
	  top: 50%;
	  right: -1.25rem;
	  transform: translateY(-50%);
	}
	#cs-navigation .cs-drop-ul {
	  width: 100%;
	  height: 0;
	  margin: 0;
	  padding: 0;
	  background-color: var(--primary);
	  opacity: 0;
	  display: flex;
	  visibility: hidden;
	  flex-direction: column;
	  justify-content: flex-start;
	  align-items: center;
	  gap: 0.75rem;
	  overflow: hidden;
	  transition: padding 0.3s, margin 0.3s, height 0.3s, opacity 0.3s, visibility 0.3s;
	}
	#cs-navigation .cs-drop-li {
	  list-style: none;
	}
	#cs-navigation .cs-li-link.cs-drop-link {
	  /* 14px - 16px */
	  font-size: clamp(0.875rem, 2vw, 1.25rem);
	  color: #fff;
	}
  }
  /* Desktop - 1024px */
  @media only screen and (min-width: 64rem) {
	#cs-navigation .cs-dropdown {
	  position: relative;
	}
	#cs-navigation .cs-dropdown:hover {
	  cursor: pointer;
  
	  
	}
	#cs-navigation .cs-dropdown:hover .cs-drop-ul {
	  opacity: 1;
	  visibility: visible;
	  transform: scaleY(1);
	}
	#cs-navigation .cs-dropdown:hover .cs-drop-li {
	  opacity: 1;
	  transform: translateY(0);
	}
	#cs-navigation .cs-drop-icon {
	  width: 0.9375rem;
	  height: auto;
	  display: inline-block;
	}
	#cs-navigation .cs-drop-ul {
	  min-width: 12.5rem;
	  margin: 0;
	  padding: 0;
	  background-color: #fff;
	  box-shadow: inset rgba(149, 157, 165, 0.1) 0px 8px 10px;
	  opacity: 0;
	  border-bottom: 5px solid var(--primary);
	  border-radius: 0 0 1.5rem 1.5rem;
	  visibility: hidden;
	  /* if you have 8 or more links in your dropdown nav, uncomment the columns property to make the list into 2 even columns. Change it to 3 or 4 if you need extra columns. Then remove the transition delays on the cs-drop-li so they don't have weird scattered animations */
	  position: absolute;
	  top: 100%;
	  z-index: -100;
	  overflow: hidden;
	  transform: scaleY(0);
	  transition: transform 0.3s, visibility 0.3s, opacity 0.3s;
	  transform-origin: top;
	}
	#cs-navigation .cs-drop-li {
	  font-size: 1rem;
	  text-decoration: none;
	  list-style: none;
	  width: 100%;
	  height: auto;
	  opacity: 0;
	  display: block;
	  transform: translateY(-0.625rem);
	  transition: opacity 0.6s, transform 0.6s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(1) {
	  transition-delay: 0.05s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(2) {
	  transition-delay: 0.1s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(3) {
	  transition-delay: 0.15s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(4) {
	  transition-delay: 0.2s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(5) {
	  transition-delay: 0.25s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(6) {
	  transition-delay: 0.3s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(7) {
	  transition-delay: 0.35s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(8) {
	  transition-delay: 0.4s;
	}
	#cs-navigation .cs-drop-li:nth-of-type(9) {
	  transition-delay: 0.45s;
	}
	#cs-navigation .cs-li-link.cs-drop-link {
	  font-size: 1rem;
	  line-height: 1.5em;
	  text-transform: capitalize;
	  text-decoration: none;
	  white-space: nowrap;
	  width: 100%;
	  /* prevents padding from affecting height and width */
	  box-sizing: border-box;
	  padding: 0.75rem;
	  color: var(--headerColor);
	  display: block;
	  transition: color 0.3s, background-color 0.3s;
	}
	#cs-navigation .cs-li-link.cs-drop-link:hover {
	  color: var(--bodyTextColorWhite);
	  background-color: var(--primary);
	}
	#cs-navigation .cs-li-link.cs-drop-link:before {
	  display: none;
	}
  }
  /* Dark Mode - Desktop */
  @media only screen and (min-width: 64rem) {
	body.dark-mode #cs-navigation .cs-drop-ul {
	  background-color: var(--dark);
	}
	body.dark-mode #cs-navigation .cs-li-link.cs-drop-link:hover {
	  color: var(--bodyTextColorWhite);
	}
  }
  /*-- -------------------------- -->
  <---     Desktop Navigation     -->
  <--- -------------------------- -*/
  /* Small Desktop - 1024px */
  @media only screen and (min-width: 64rem) {
	body.scroll #cs-navigation {
	  width: 100%;
	  max-width: 100%;
	  border-radius: 0;
	  top: 0;
	}
	#cs-navigation {
	  width: 94%;
	  max-width: 90rem;
	  height: 6rem;
	  /* prevents padding from affecting height and width */
	  box-sizing: border-box;
	  /* 12px - 24px */
	  padding: clamp(0.75rem, 2vw, 1.5rem) 0;
	  background-color: #fff;
	  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	  /* 12px - 24px */
	  border-radius: clamp(0.75rem, 2vw, 1.5rem);
	  display: flex;
	  align-items: center;
	  position: fixed;
	  top: 2rem;
	  left: 50%;
	  z-index: 10000;
	  transform: translateX(-50%);
	  transition: top 0.3s, border-radius 0.3s, width 0.3s, max-width 0.3s;
	}
	#cs-navigation .cs-container {
	  width: 100%;
	  max-width: 90rem;
	  margin: auto;
	  /* prevents padding from affecting height and width */
	  box-sizing: border-box;
	  padding: 0 1.5rem;
	  display: flex;
	  justify-content: space-between;
	  align-items: center;
	  gap: 1.5rem;
	}
	#cs-navigation .cs-toggle {
	  display: none;
	}
	#cs-navigation .cs-logo {
	  width: 18.4%;
	  max-width: 21.875rem;
	  height: 3rem;
	  /* margin-right auto pushes everything away from it to the right */
	  margin: 0 auto 0 0;
	  padding: 0;
	  display: flex;
	  justify-content: flex-start;
	  align-items: center;
	  z-index: 100;
	}
	#cs-navigation .cs-logo img {
	  width: auto;
	  height: 100%;
	  /* ensures the image never overflows the container. It stays contained within it's width and height and expands to fill it then stops once it reaches an edge */
	  object-fit: contain;
	}
	#cs-navigation .cs-contact-group {
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  gap: 1.5rem;
	}
	#cs-navigation .cs-phone {
	  font-size: 1rem;
	  line-height: 1.5em;
	  text-decoration: none;
	  margin: 0;
	  color: var(--headerColor);
	  display: flex;
	  justify-content: flex-start;
	  align-items: center;
	  gap: 0.5rem;
	  transition: opacity 0.3s, color 0.3s;
	}
	#cs-navigation .cs-phone-icon {
	  width: 1.5rem;
	  height: auto;
	  display: block;
	}
	#cs-navigation .cs-social {
	  height: 2rem;
	  opacity: 1;
	  display: none;
	  visibility: visible;
	  justify-content: center;
	  align-items: center;
	  gap: 0.5rem;
	  transition: opacity 0.3s, visibility 0.3s, height 0.3s;
	}
	#cs-navigation .cs-social-link {
	  text-decoration: none;
	  width: 2rem;
	  height: 2rem;
	  background-color: #f7f7f7;
	  border-radius: 50%;
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  transition: background-color 0.3s;
	}
	#cs-navigation .cs-social-link:hover {
	  background-color: var(--primary);
	}
	#cs-navigation .cs-social-link:hover .cs-social-icon {
	  opacity: 1;
	  filter: grayscale(1) brightness(10000%);
	}
	#cs-navigation .cs-social-icon {
	  width: 0.75rem;
	  height: auto;
	  opacity: 0.6;
	  display: block;
	  transition: opacity 0.3s;
	}
	#cs-navigation .cs-ul-wrapper {
	  height: 100%;
	  display: flex;
	  align-items: center;
	  /* absolutely positioned to be dead center */
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	}
	#cs-navigation .cs-ul {
	  width: 100%;
	  height: 100%;
	  margin: 0;
	  padding: 0;
	  display: flex;
	  justify-content: flex-start;
	  align-items: center;
	  /* 20px - 36px */
	  gap: clamp(1.25rem, 2.6vw, 2.25rem);
	}
	#cs-navigation .cs-li {
	  list-style: none;
	  height: 100%;
	  padding: 0;
	  display: flex;
	  align-items: center;
	  /* prevent flexbox from squishing it */
	  flex: none;
	}
	#cs-navigation .cs-li-link {
	  font-size: 1rem;
	  line-height: 1.5em;
	  text-decoration: none;
	  margin: 0;
	  color: var(--headerColor);
	  display: block;
	  position: relative;
	  transition: color 0.3s;
	}
	#cs-navigation .cs-li-link:hover {
	  color: var(--primary);
	}
	#cs-navigation .cs-li-link.cs-active {
	  color: var(--primary);
	}
	#cs-navigation .cs-button-solid {
	  font-size: 1rem;
	  font-weight: 700;
	  /* 46px - 56px */
	  line-height: clamp(2.875em, 5.5vw, 3.5em);
	  text-align: center;
	  text-decoration: none;
	  min-width: 9.375rem;
	  margin: 0;
	  /* prevents padding from adding to the width */
	  box-sizing: border-box;
	  padding: 0 2rem;
	  color: #fff;
	  background-color: var(--primary);
	  display: inline-block;
	  position: relative;
	  z-index: 1;
	  transition: color 0.3s;
  
	  border-radius: 0.25rem;
	}
	#cs-navigation .cs-button-solid:before {
	  content: "";
	  width: 0%;
	  height: 100%;
	  background: #000;
	  opacity: 1;
	  position: absolute;
	  top: 0;
	  left: 0;
	  z-index: -1;
	  transition: width 0.3s;
  
	  border-radius: 0.25rem;
	}
	#cs-navigation .cs-button-solid:hover {
	  color: #fff;
	}
	#cs-navigation .cs-button-solid:hover:before {
	  width: 100%;
	}
  }
  /* Large Desktop - 1300px */
  @media only screen and (min-width: 81.25rem) {
	#cs-navigation .cs-social {
	  display: flex;
	}
  }
  /* Dark Mode */
  @media only screen and (min-width: 64rem) {
	body.dark-mode #cs-navigation {
	  background-color: var(--dark);
	}
	body.dark-mode #cs-navigation .cs-logo {
	  /* turns it white */
	  filter: grayscale(1) brightness(1000%);
	}
	body.dark-mode #cs-navigation .cs-li-link,
	body.dark-mode #cs-navigation .cs-phone {
	  color: var(--bodyTextColorWhite);
	}
	body.dark-mode #cs-navigation .cs-phone-icon {
	  filter: grayscale(1) brightness(10005);
	}
	body.dark-mode #cs-navigation .cs-li-link.cs-active {
	  color: var(--secondary);
	}
	body.dark-mode #cs-navigation .cs-li-link:hover {
	  color: var(--secondary);
	}
  }
								  
  /*-- -------------------------- -->
  <---          Banner            -->
  <--- -------------------------- -*/
  @media only screen and (min-width: 0rem) {
	#banner-1402 {
		padding: var(--sectionPadding);
		padding-top: clamp(11.875rem, 25vw, 16.75rem);
		padding-bottom: 6.25rem;
		overflow: hidden;
		position: relative;
		z-index: 1;
	}
  
	#banner-1402 .cs-container {
		text-align: center;
		width: 100%;
		max-width: 80rem;
		margin: auto;
		display: flex;
		justify-content: center;
		align-items: flex-start;
		flex-direction: column;
		gap: clamp(0.5rem, 1vw, 0.75rem);
	}
  
	#banner-1402 .cs-int-title {
		font-size: clamp(2.4375rem, 6.4vw, 3.8125rem);
		font-weight: 900;
		line-height: 1.2em;
		text-align: inherit;
		margin: 0;
		color: var(--bodyTextColorWhite);
		position: relative;
	}
  
	#banner-1402 .cs-breadcrumbs {
		display: flex;
		justify-content: center;
		align-items: center;
	}
  
	#banner-1402 .cs-link {
		font-size: 1rem;
		line-height: 1.2em;
		text-decoration: none;
		color: var(--bodyTextColorWhite);
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
	}
  
	#banner-1402 .cs-link:last-of-type::after {
		display: none;
	}
  
	#banner-1402 .cs-link:after {
		content: "";
		width: 0.4375rem;
		height: 0.75rem;
		margin: 0 1rem;
		background: url("/assets/icons/white-chev.svg");
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		position: relative;
		display: block;
	}
  
	#banner-1402 .cs-link.cs-active {
		color: var(--primary);
	}
  
	#banner-1402 .cs-background {
		width: 100%;
		height: 100%;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}
  
	#banner-1402 .cs-background:before {
		content: "";
		width: 100%;
		height: 100%;
		background: #000;
		opacity: 0.4;
		position: absolute;
		display: block;
		top: 0;
		left: 0;
		z-index: 1;
	}
  
	#banner-1402 .cs-background:after {
		content: "";
		width: 100%;
		height: 40%;
		background: -webkit-gradient(linear, left top, left bottom, from(#000000), to(rgba(0, 0, 0, 0)));
		background: -o-linear-gradient(top, #000000 0%, rgba(0, 0, 0, 0) 100%);
		background: linear-gradient(to bottom, #000000 0%, rgba(0, 0, 0, 0) 100%);
		position: absolute;
		display: block;
		top: 0;
		left: 0;
		z-index: 2;
	}
  
	#banner-1402 .cs-background img {
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		object-fit: cover;
	}
  }
  
  @media only screen and (min-width: 0rem) {
	#banner-1402 .cs-background:before {
		width: 50%;
		height: 100%;
		background: -webkit-gradient(linear, left top, right top, from(#000000), to(rgba(0, 0, 0, 0)));
		background: -o-linear-gradient(left, #000000 0%, rgba(0, 0, 0, 0) 100%);
		background: linear-gradient(to right, #000000 0%, rgba(0, 0, 0, 0) 100%);
		opacity: 1;
	}
  }
  /*-- -------------------------- -->
  <---       Contact Us           -->
  <--- -------------------------- -*/
  
  @media only screen and (min-width: 0rem) {
	#contact-1392 {
		padding: var(--sectionPadding);
		padding-bottom: 0;
		background-color: #f7f7f7;
		position: relative;
		z-index: 10;
	}
  
	#contact-1392 .cs-container {
		width: 100%;
		max-width: 36.5rem;
		margin: auto;
		display: flex;
		justify-content: center;
		align-items: stretch;
		flex-direction: column;
		column-gap: auto;
		gap: clamp(2rem, 3vw, 3rem);
		position: relative;
	}
  
	#contact-1392 .cs-content {
		text-align: left;
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
  
	#contact-1392 .cs-title {
		max-width: 23ch;
	}
  
	#contact-1392 .cs-text {
		margin-bottom: 1rem;
	}
  
	#contact-1392 .cs-text:last-of-type {
		margin-bottom: 2rem;
	}
  
	#contact-1392 .cs-ul {
		text-align: left;
		width: 100%;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 1.5rem;
		position: relative;
	}
  
	#contact-1392 .cs-li {
		list-style: none;
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 1.25rem;
	}
  
	#contact-1392 .cs-li:hover .cs-icon-wrapper {
		transform: scale(1.1);
	}
  
	#contact-1392 .cs-header {
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1.2em;
		margin-bottom: 0.75rem;
		color: var(--headerColor);
		display: block;
	}
  
	#contact-1392 .cs-link {
		font-size: 1rem;
		line-height: 1.5em;
		text-decoration: none;
		color: var(--headerColor);
		display: block;
		position: relative;
	}
  
	#contact-1392 .cs-link:hover {
		text-decoration: underline;
	}
  
	#contact-1392 .cs-icon-wrapper {
		width: 3.75rem;
		height: 3.75rem;
		margin: 0;
		border-radius: 50%;
		border: 1px solid #bababa;
		display: flex;
		justify-content: center;
		align-items: center;
		flex: none;
		transition: transform 0.3s;
	}
  
	#contact-1392 .cs-icon {
		width: 1.5rem;
		height: auto;
		display: block;
	}
  
	#contact-1392 .cs-form {
		width: 100%;
		max-width: 39.375rem;
		margin-bottom: calc(clamp(1.875rem, 7vw, 6.25rem)*-1);
		padding: clamp(1.5rem, 5.18vw, 3rem) clamp(1rem, 4vw, 3rem);
		box-sizing: border-box;
		background-color: #fff;
		border-radius: 1rem;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.75rem;
	}
  
	#contact-1392 .cs-h3 {
		font-size: clamp(1.25rem, 3vw, 2.4375rem);
		line-height: 1.2em;
		font-weight: 700;
		margin: 0 0 0.25rem 0;
		color: var(--headerColor);
	}
  
	#contact-1392 .cs-label {
		font-size: clamp(0.875rem, 1.5vw, 1rem);
		width: 100%;
		color: var(--headerColor);
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		gap: 0.25rem;
	}
  
	#contact-1392 .cs-input {
		font-family: "DM Sans", Arial, sans-serif;
		font-size: 1rem;
		width: 100%;
		height: 3.5rem;
		padding: 0;
		padding-left: 1.5rem;
		color: var(--headerColor);
		background-color: #f7f7f7;
		border-radius: 0.5rem;
		border: none;
		box-sizing: border-box;
	}
  
	#contact-1392 .cs-input::placeholder {
		color: #7d799c;
		opacity: 0.6;
	}
  
	#contact-1392 .cs-textarea {
		min-height: 7.5rem;
		padding-top: 1.5rem;
		margin-bottom: 0.75rem;
		font-family: inherit;
	}
  
	#contact-1392 .cs-submit {
		min-width: 12.5rem;
		border-style: none;
	}
  
	#contact-1392 .cs-submit:hover {
		color: #fff;
	}
  }
  
  @media only screen and (min-width: 48rem) {
	#contact-1392 .cs-container {
		max-width: 80rem;
		flex-direction: row;
		justify-content: space-between;
	}
  
	#contact-1392 .cs-content {
		width: 47%;
		flex: none;
	}
  
	#contact-1392 .cs-submit {
		width: auto;
	}
  }
  
  @media only screen and (min-width: 64rem) {
	#contact-1392 .cs-form {
		width: 46%;
		max-width: 36.125rem;
	}
  
	#contact-1392 .cs-submit {
		width: auto;
	}
  }
  
  @media only screen and (min-width: 93.75rem) {
	#contact-1392 .cs-graphic {
		display: block;
	}
  }
  
  @media only screen and (min-width: 0rem) {
	body.dark-mode #contact-1392 {
		background-color: rgba(0, 0, 0, 0.2);
	}
  
	body.dark-mode #contact-1392 .cs-title, body.dark-mode #contact-1392 .cs-text, body.dark-mode #contact-1392 .cs-header, body.dark-mode #contact-1392 .cs-link, body.dark-mode #contact-1392 .cs-label, body.dark-mode #contact-1392 .cs-h3 {
		color: var(--bodyTextColorWhite);
	}
  
	body.dark-mode #contact-1392 .cs-contact-text, body.dark-mode #contact-1392 .cs-link {
		opacity: 0.8;
	}
  
	body.dark-mode #contact-1392 .cs-icon-wrapper {
		border-color: #fff;
	}
  
	body.dark-mode #contact-1392 .cs-icon {
		filter: grayscale(1) brightness(1000%);
	}
  
	body.dark-mode #contact-1392 .cs-form {
		background-color: var(--medium);
	}
  
	body.dark-mode #contact-1392 .cs-input {
		background-color: rgba(255, 255, 255, 0.2);
		color: #fff;
	}
  
	body.dark-mode #contact-1392 .cs-input::placeholder {
		color: #fff;
		opacity: 0.8;
	}
  
	body.dark-mode #contact-1392 .cs-graphic {
		opacity: 0.4;
	}
  }
  
  /*-- -------------------------- -->
  <---          Footer            -->
  <--- -------------------------- -*/
  
  @media only screen and (min-width: 0rem) {
	#footer-1392 {
		padding: var(--sectionPadding);
		padding-top: clamp(5rem, 7vw, 6.25rem);
		background-color: #1a1a1a;
		position: relative;
		z-index: 1;
	}
  
	#footer-1392 .cs-container {
		width: 100%;
		max-width: 80rem;
		margin: auto;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
  
	#footer-1392 .cs-top {
		width: 100%;
		margin-bottom: 2.5rem;
		padding-bottom: clamp(1.5rem, 5vw, 4rem);
		border-bottom: 1px solid #484848;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: clamp(1.25rem, 4vw, 2.5rem);
	}
  
	#footer-1392 .cs-ul {
		margin: 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		row-gap: 0.5rem;
		column-gap: clamp(1.5rem, 4vw, 2.25rem);
	}
  
	#footer-1392 .cs-li {
		list-style: none;
	}
  
	#footer-1392 .cs-link {
		font-size: clamp(0.875rem, 1.5vw, 1rem);
		line-height: 1.5em;
		text-decoration: none;
		margin: 0;
		color: #bababa;
		display: block;
		transition: color 0.3s;
	}
  
	#footer-1392 .cs-link:hover {
		color: var(--primary);
	}
  
	#footer-1392 .cs-logo {
		width: 100%;
		max-width: 16.0625rem;
		height: auto;
		display: block;
	}
  
	#footer-1392 .cs-logo-img {
		width: 100%;
		height: auto;
		display: block;
	}
  
	#footer-1392 .cs-bottom {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 1rem;
	}
  
	#footer-1392 .cs-social {
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0.5rem;
	}
  
	#footer-1392 .cs-social-li {
		list-style: none;
	}
  
	#footer-1392 .cs-social-link {
		width: 2rem;
		height: 2rem;
		background-color: #484848;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		transition: background-color 0.3s;
	}
  
	#footer-1392 .cs-social-link:hover {
		background-color: var(--primary);
	}
  
	#footer-1392 .cs-social-link:hover .cs-social-icon {
		filter: grayscale(1) brightness(1000%);
		opacity: 1;
	}
  
	#footer-1392 .cs-social-icon {
		width: 0.75rem;
		height: auto;
		display: block;
		opacity: 0.6;
		transition: opacity 0.3s;
	}
  
	#footer-1392 .cs-copyright {
		font-size: 1rem;
		color: #bababa;
		line-height: 1.5em;
		margin: 0;
		display: block;
	}
  
	#footer-1392 .cs-copyright-link, #footer-1392 .cs-separater {
		font-size: 1rem;
		text-decoration: none;
		color: #bababa;
		transition: color 0.3s;
	}
  
	#footer-1392 .cs-copyright-link:hover, #footer-1392 .cs-separater:hover {
		color: var(--primary);
	}
  
	#footer-1392 .cs-separater {
		margin: 0 1rem;
		display: inline-block;
	}
  }
  
  @media only screen and (min-width: 48rem) {
	#footer-1392 .cs-top {
		align-items: flex-start;
	}
  
	#footer-1392 .cs-bottom {
		flex-direction: row;
		justify-content: center;
	}
  
	#footer-1392 .cs-flex {
		margin: 0 auto;
	}
  
	#footer-1392 .cs-social {
		order: 3;
	}
  }
  
  @media only screen and (min-width: 0rem) {
	body.dark-mode #footer-1392 {
		background-color: rgba(0, 0, 0, 0.6);
	}
  }
  
  
  