:root {
  --black: #000;
  --white: #fff;
  --white2: #F5F5F7;
  --white3: #FAFAFC;
  --primary: #FF9A01;
  --secondary-light: #0b83df;
  --secondary: #0370C1;
  --secondary2: #01589c;
  --secondary3: #004880;
  --secondaryDark: #062b47;
  --body: #f9f9f9;
  --bodyDark: #0D1B2A;
  --stroke: -0.5px -0.5px 0 rgba(0, 0, 0, 1),
      0.5px -0.5px 0 rgba(0, 0, 0, 1),
      -0.5px 0.5px 0 rgba(0, 0, 0, 1),
      0.5px 0.5px 0 rgba(0, 0, 0, 1),
      0px 0px 1px rgba(0, 0, 0, 0.9),
      0px 0px 2px rgba(0, 0, 0, 0.9);
  --cta: 0px 0px 3px rgba(0, 0, 0, 0.125),
      0px 0px 2px rgba(0, 0, 0, 0.25),
      0px 0px 1.5px rgba(0, 0, 0, 0.5),
      0px 0px 1px rgba(0, 0, 0, .75);
  --cta-light: 0px 0px 3px rgba(0, 0, 0, 0.125),
      0px 0px 2px rgba(0, 0, 0, 0.25),
      0px 0px 1.5px rgba(0, 0, 0, 0.125),
      0px 0px 1px rgba(0, 0, 0, .25);
}

@media only screen and (min-width: 0px) {
  main section [class$=-inner] {
    padding: 100px 0 125px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 800px) {
  main section [class$=-inner] {
    padding: 75px 0;
  }
}
@media only screen and (min-width: 0px) {
  html section [class$=-header] {
    margin-bottom: clamp(25px, 3vw, 35px);
  }
  html section [class$=-header] .topper {
    display: block;
    font-family: "Inter", system-ui, "Segoe UI", Helvetica, Arial, sans-serif;
    font-size: clamp(1.25em, 3.5vw, 1.75em);
    font-weight: 900;
    letter-spacing: -1px;
    color: var(--primary);
    text-shadow: none;
    line-height: 1.5;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 800px) {
  html section [class$=-header] .topper {
    margin-bottom: 5px;
  }
}
@media only screen and (min-width: 0px) {
  html section [class$=-header] h2 {
    font-weight: normal;
    font-size: clamp(1.75em, 3.5vw, 2.5em);
    line-height: 1.25;
    letter-spacing: 0.25px;
    margin-bottom: 20px;
    color: var(--secondary);
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 800px) {
  html section [class$=-header] h2 {
    letter-spacing: 0.25px;
  }
}
@media only screen and (min-width: 0px) {
  html section [class$=-header] h3 {
    font-size: clamp(1.125em, 2vw, 1.3em);
  }
  html section [class$=-header] p {
    max-width: 800px;
    line-height: 1.75;
    margin-bottom: 25px;
  }
  html section [class$=-header] p:last-of-type {
    margin-bottom: 35px;
  }
  html section [class$=-header] a {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
    font-weight: bold;
    line-height: 1.5;
    border-radius: 100vw;
    padding: 25px 30px;
    font-size: 0.95em;
    box-shadow: 0px 0px 3px rgb(0, 0, 0);
    text-shadow: var(--cta);
    color: white;
    background: var(--primary);
    transition: 0.1s;
  }
  html section [class$=-header] a:hover {
    background: var(--white);
    color: black;
    text-shadow: none;
    transition: 0.1s;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 500px) {
  html section [class$=-header] a {
    padding: 22px 20px;
    font-size: 0.95em;
  }
}
@media only screen and (min-width: 0px) {
  html section [class$=-header] .cta-button {
    gap: 20px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 500px) {
  html section [class$=-header] .cta-button {
    gap: 15px;
  }
}
@media only screen and (min-width: 0px) {
  html section [class$=-header] .cta-button .cta-1 {
    background: var(--secondary);
    transition: 0.1s;
  }
  html section [class$=-header] .cta-button .cta-1:hover {
    transition: 0.1s;
    background-color: white;
    color: black;
  }
  html.dark section [class$=-header] .topper {
    color: var(--primary);
  }
  html.dark section [class$=-header] h2 {
    color: white;
  }
  html.dark section [class$=-header] p {
    color: white;
  }
  html.dark section [class$=-header] .cta-button .cta-1a {
    background: var(--secondary);
  }
  html.dark section [class$=-header] .cta-button .cta-1a:hover {
    background-color: var(--body);
    color: black;
  }
  html.dark section [class$=-header] .cta-button .cta-1 {
    background: var(--secondary2);
  }
  html.dark section [class$=-header] .cta-button .cta-1:hover {
    background-color: var(--body);
    color: black;
  }
}
@media only screen and (min-width: 0px) {
  html [class~=primary-cta] {
    display: inline-block;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
    font-weight: bold;
    line-height: 1.5;
    border-radius: 100vw;
    padding: 25px 30px;
    font-size: 0.95rem;
    box-shadow: 0px 0px 3px rgb(0, 0, 0);
    text-shadow: var(--cta);
    color: white;
    background: var(--primary);
  }
  html [class~=primary-cta]:hover {
    background: var(--white);
    color: black;
    text-shadow: none;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 500px) {
  html [class~=primary-cta] {
    padding: 22px 20px;
  }
}
@media only screen and (min-width: 0px) {
  html.dark [class~=primary-cta] p {
    color: white;
  }
}
@media only screen and (min-width: 0px) {
  html .arrow-primary {
    display: none;
  }
  html .arrow-secondary {
    display: inline;
  }
  html.dark .arrow-primary {
    display: inline;
  }
  html.dark .arrow-secondary {
    display: none;
  }
}
html header nav {
  position: relative;
}
html header nav .nav-links {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html header nav .nav-links {
    align-items: normal;
  }
}
html header nav .nav-links li {
  position: relative;
}
html header nav .nav-links li a {
  color: black;
  padding: 39px 20px;
  line-height: 1.5;
}
@media only screen and (min-width: 0px) and (max-width: 1400px) {
  html header nav .nav-links li a {
    padding: 39px 10px;
  }
}
@media (hover: hover) and (pointer: fine) {
  html header nav .nav-links li a:hover {
    color: var(--secondary);
    -webkit-text-decoration: 2px underline var(--secondary);
            text-decoration: 2px underline var(--secondary);
    text-underline-offset: 5px;
  }
}
html header nav .nav-links li a {
  font-size: 15px;
}
html header nav .nav-links li .nest-trigger {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 39px 20px;
  line-height: 1.5;
}
@media only screen and (min-width: 0px) and (max-width: 1400px) {
  html header nav .nav-links li .nest-trigger {
    padding: 39px 10px;
  }
}
@media (hover: hover) and (pointer: fine) {
  html header nav .nav-links li .nest-trigger:hover {
    color: var(--secondary);
    -webkit-text-decoration: 2px underline var(--secondary);
            text-decoration: 2px underline var(--secondary);
    text-underline-offset: 5px;
  }
}
html header nav .nav-links li .nest-trigger {
  font-size: 15px;
  touch-action: manipulation;
}
html header nav .nav-links li .nest-trigger span {
  color: inherit;
}
@media (hover: hover) and (pointer: fine) {
  html header nav .nav-links li .nest-trigger:hover span {
    color: var(--secondary);
  }
}
html header nav .nav-links li .active {
  -webkit-text-decoration: 2px underline var(--secondary);
          text-decoration: 2px underline var(--secondary);
  text-underline-offset: 5px;
}
html header nav .nav-links li .arrow-down {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  position: relative;
  right: 0px;
}
html header nav .nav-links li .drop-down {
  padding: 0;
  display: none;
}
@media (hover: hover) and (pointer: fine) {
  html header nav .nav-links li:hover > .nest-trigger {
    color: var(--secondary);
  }
  html header nav .nav-links li:hover > .nest-trigger span {
    color: var(--secondary);
  }
  html header nav .nav-links li:hover .drop-down {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    width: -moz-fit-content;
    width: fit-content;
    background: var(--body);
    width: 100%;
    border-bottom: 3px solid var(--secondary);
    border-top: 3px solid var(--secondary);
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.25);
    padding: 5px 5px 12px 35px;
  }
}
@media only screen and (hover: hover) and (pointer: fine) and (min-width: 1101px) {
  html header nav .nav-links li:hover .drop-down {
    min-width: 275px;
  }
}
@media only screen and (hover: hover) and (pointer: fine) and (min-width: 0px) and (max-width: 1100px) {
  html header nav .nav-links li:hover .drop-down {
    box-shadow: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  html header nav .nav-links li:hover .drop-down li a {
    display: block;
    padding: 10px 15px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html header nav {
    display: block;
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    bottom: 0;
    height: auto;
    width: 300px;
    background-color: var(--body);
    border-left: 8px solid var(--secondary);
    transform: translateX(100%);
    transition: transform 0.3s ease;
    pointer-events: none;
    overflow: hidden;
  }
  html header nav.open {
    transform: translateX(0);
    pointer-events: auto;
  }
  html header nav .nav-links {
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    display: flex;
    flex-direction: column;
    padding: 0 20px calc(40px + env(safe-area-inset-bottom));
  }
  html header nav .nav-links li {
    width: 100%;
    display: flex;
    justify-content: left;
  }
  html header nav .nav-links li a {
    padding: 15px;
  }
  html header nav .nav-links li a:focus {
    outline: none;
  }
  html header nav .nav-links li.nest {
    display: block;
  }
  html header nav .nav-links li.nest .nest-trigger {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px;
    text-align: left;
    text-decoration: none;
  }
  html header nav .nav-links li.nest .nest-trigger span {
    color: inherit;
    transition: color 0.15s ease;
  }
  html header nav .nav-links li.nest .nest-trigger img {
    position: relative;
    top: 1px;
    width: 8px;
    height: 8px;
    transition: transform 0.25s ease;
    transform: rotate(0deg);
  }
  html header nav .nav-links li.nest .drop-down {
    display: block;
    position: relative;
    top: 0;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(-4px);
    padding: 0 15px;
    margin: 0;
    transition: max-height 0.3s ease, opacity 0.2s ease, transform 0.3s ease, padding 0s ease;
    border-top: 0px solid transparent;
    border-bottom: 0px solid transparent;
  }
  html header nav .nav-links li.nest .drop-down li a {
    width: 100%;
    display: block;
    padding: 12px 15px;
  }
  html header nav .nav-links li.nest.is-open .nest-trigger span {
    color: var(--secondary);
  }
  html header nav .nav-links li.nest.is-open .drop-down {
    height: auto;
    max-height: 700px;
    opacity: 1;
    transform: translateY(0);
    padding: 0;
    border-top: 2px solid var(--secondary);
    border-bottom: 2px solid var(--secondary);
    background: hsla(206, 97%, 38%, 0.1);
  }
  html header nav .nav-links li.nest.is-open .nest-trigger img {
    transform: rotate(180deg);
  }
}

html .services-nav-links li {
  position: relative;
}
@media only screen and (min-width: 1101px) {
  html .services-nav-links li {
    left: 25px !important;
  }
}
html .services-nav-links li {
  padding: 0;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .services-nav-links li {
    padding-left: 40px;
    padding-right: 15px;
  }
}
html .services-nav-links li a {
  max-width: 255px;
}
@media only screen and (min-width: 1101px) {
  html .services-nav-links li a {
    padding: 15px 0px 15px 8px !important;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .services-nav-links li a {
    padding: 0;
  }
}
html .services-nav-links .service-link::before {
  flex-shrink: 0;
  content: "";
  background-image: url(../_partials/icons-spread.webp);
  background-repeat: no-repeat;
  background-size: 550px;
  position: absolute;
  left: -47px;
  top: 9px;
  width: 45px;
  height: 35px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .services-nav-links .service-link::before {
    background-size: 500px;
    left: 9px;
    top: 9px;
    width: 40px;
    height: 30px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .services-nav-links .icon-1::before {
    background-position: 0px -4px;
  }
  html .services-nav-links .icon-2::before {
    background-position: -39px -3px;
  }
  html .services-nav-links .icon-3::before {
    background-position: -79px -3px;
  }
  html .services-nav-links .icon-4::before {
    background-position: -159px -2px;
  }
  html .services-nav-links .icon-5::before {
    background-position: -117px -2px;
    top: 10px;
  }
  html .services-nav-links .icon-6::before {
    top: 10px;
    background-position: -200px -2px;
  }
  html .services-nav-links .icon-7::before {
    top: 8px;
    left: 8px;
    background-position: -424px -2px;
  }
  html .services-nav-links .service-link.icon-1:hover::before {
    background-position: 0px -68.25px;
  }
  html .services-nav-links .service-link.icon-2:hover::before {
    background-position: -39px -67.25px;
  }
  html .services-nav-links .service-link.icon-3:hover::before {
    background-position: -79px -67.25px;
  }
  html .services-nav-links .service-link.icon-4:hover::before {
    background-position: -159px -66.25px;
  }
  html .services-nav-links .service-link.icon-5:hover::before {
    top: 10px;
    background-position: -117px -66.25px;
  }
  html .services-nav-links .service-link.icon-6:hover::before {
    top: 10px;
    background-position: -200px -66.25px;
  }
  html .services-nav-links .service-link.icon-7:hover::before {
    top: 8px;
    left: 8px;
    background-position: -424px -66.25px;
  }
}
@media only screen and (min-width: 1101px) {
  html .services-nav-links .icon-1::before {
    background-position: 0px -4px;
  }
  html .services-nav-links .icon-2::before {
    background-position: -42px -3px;
  }
  html .services-nav-links .icon-3::before {
    background-position: -87px -3px;
  }
  html .services-nav-links .icon-4::before {
    background-position: -175px -2px;
  }
  html .services-nav-links .icon-5::before {
    background-position: -129px -2px;
  }
  html .services-nav-links .icon-6::before {
    background-position: -220px -2px;
  }
  html .services-nav-links .icon-7::before {
    left: -47px;
    background-position: -467px -2px;
  }
  html .services-nav-links .service-link.icon-1:hover::before {
    background-position: 0px -74.75px;
  }
  html .services-nav-links .service-link.icon-2:hover::before {
    background-position: -42px -73.75px;
  }
  html .services-nav-links .service-link.icon-3:hover::before {
    background-position: -87px -73.75px;
  }
  html .services-nav-links .service-link.icon-5:hover::before {
    background-position: -129px -72.75px;
  }
  html .services-nav-links .service-link.icon-4:hover::before {
    background-position: -175px -72.75px;
  }
  html .services-nav-links .service-link.icon-6:hover::before {
    background-position: -220px -72.75px;
  }
  html .services-nav-links .service-link.icon-7:hover::before {
    left: -47px;
    background-position: -467.25px -72.75px;
  }
}

@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html.dark .services-nav-links .icon-1::before {
    background-position: 0px -35px;
  }
  html.dark .services-nav-links .icon-2::before {
    background-position: -39px -35px;
  }
  html.dark .services-nav-links .icon-3::before {
    background-position: -77px -35px;
  }
  html.dark .services-nav-links .icon-4::before {
    background-position: -158px -35px;
  }
  html.dark .services-nav-links .icon-5::before {
    background-position: -117px -35px;
  }
  html.dark .services-nav-links .icon-6::before {
    top: 10px;
    background-position: -199px -35px;
  }
  html.dark .services-nav-links .icon-7::before {
    top: 8px;
    left: 8px;
    background-position: -424px -34px;
  }
  html.dark .services-nav-links .icon-1:hover::before {
    background-position: 0px -100px;
  }
  html.dark .services-nav-links .icon-2:hover::before {
    background-position: -39px -100px;
  }
  html.dark .services-nav-links .icon-3:hover::before {
    background-position: -77px -100px;
  }
  html.dark .services-nav-links .icon-4:hover::before {
    background-position: -158px -100px;
  }
  html.dark .services-nav-links .icon-5:hover::before {
    background-position: -117px -100px;
  }
  html.dark .services-nav-links .icon-6:hover::before {
    top: 10px;
    background-position: -199px -100px;
  }
  html.dark .services-nav-links .icon-7:hover::before {
    top: 8px;
    left: 8px;
    background-position: -423.5px -98.75px !important;
  }
}
@media only screen and (min-width: 1101px) {
  html.dark .services-nav-links .icon-1::before {
    background-position: 0px -39px;
  }
  html.dark .services-nav-links .icon-2::before {
    background-position: -42px -38px;
  }
  html.dark .services-nav-links .icon-3::before {
    background-position: -87px -37px;
  }
  html.dark .services-nav-links .icon-4::before {
    background-position: -175px -39px;
  }
  html.dark .services-nav-links .icon-5::before {
    background-position: -129px -39px;
  }
  html.dark .services-nav-links .icon-6::before {
    background-position: -220px -39px;
  }
  html.dark .services-nav-links .icon-7::before {
    background-size: 500px;
    width: 30px;
    height: 30px;
    top: 12px;
    left: -36px;
    background-position: -433px -36px;
  }
  html.dark .services-nav-links .service-link.icon-1:hover::before {
    background-position: 0px -110px;
  }
  html.dark .services-nav-links .service-link.icon-2:hover::before {
    background-position: -42px -109.5px;
  }
  html.dark .services-nav-links .service-link.icon-3:hover::before {
    background-position: -87px -108px;
  }
  html.dark .services-nav-links .service-link.icon-4:hover::before {
    background-position: -175px -110px;
  }
  html.dark .services-nav-links .service-link.icon-5:hover::before {
    background-position: -129px -110.5px;
  }
  html.dark .services-nav-links .service-link.icon-6:hover::before {
    background-position: -220px -110.5px;
  }
  html.dark .services-nav-links .service-link.icon-7:hover::before {
    background-size: 500px;
    width: 30px;
    height: 30px;
    top: 12px;
    left: -35px;
    background-position: -433.75px -100.625px;
  }
}

@media only screen and (min-width: 0px) and (max-width: 1100px) {
  header nav .nav-links li.nest.is-open .drop-down.services-nav-links {
    padding: 4px 0 !important;
  }
}
html .area-nav-links {
  width: 250px !important;
  min-width: 250px !important;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .area-nav-links {
    padding: 2px 25px 0 28px !important;
  }
}
html .area-nav-links .area-icon::before {
  flex-shrink: 0;
  content: "";
  background-image: url(../_partials/icons-spread.webp);
  background-repeat: no-repeat;
  background-size: 500px;
  position: absolute;
  background-position-x: -337px;
  left: -22px;
  top: 4px;
  width: 25px;
  height: 31px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .area-nav-links .area-icon::before {
    background-size: 500px;
    left: -18px;
    top: 7px;
    width: 23px;
    height: 30px;
  }
}
html .area-nav-links .area-icon:hover::before {
  background-position-y: -64.5px;
}
html .area-nav-links .all-area-icon::before {
  flex-shrink: 0;
  content: "";
  background-image: url(../_partials/icons-spread.webp);
  background-size: 500px;
  position: absolute;
  background-position-x: -434px;
  background-position-y: -1px;
  left: -20px;
  top: 5.5px;
  width: 25px;
  height: 34px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .area-nav-links .all-area-icon::before {
    left: -17px;
  }
}
html .area-nav-links .all-area-icon:hover::before {
  background-position-y: -65.25px;
  background-position-x: -434.25px;
}

html.dark .drop-down.area-nav-links .all-area-icon {
  padding: 15px;
}
html.dark .drop-down.area-nav-links .all-area-icon::before {
  left: -20px;
  top: 5.5px;
  width: 25px;
  height: 34px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html.dark .drop-down.area-nav-links .all-area-icon::before {
    left: -17px;
  }
}
html.dark .drop-down.area-nav-links .area-icon::before {
  background-position-y: -33px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html.dark .drop-down.area-nav-links .area-icon::before {
    background-size: 500px;
    left: -18px;
    top: 8px;
    width: 23px;
    height: 30px;
  }
}
html.dark .drop-down.area-nav-links .area-icon:hover::before {
  background-position-y: -98px;
}
html.dark .drop-down.area-nav-links .all-area-icon::before {
  background-position-y: -27.5px;
}
html.dark .drop-down.area-nav-links .all-area-icon:hover::before {
  background-position-y: -92.25px;
  background-position-x: -433.625px;
}

html .resource-nav-links {
  width: 250px !important;
  min-width: 250px !important;
}
@media only screen and (min-width: 1101px) {
  html .resource-nav-links {
    padding: 0px 0px 0px 30px;
  }
  html .resource-nav-links .resource-icon {
    padding: 15px 15px 15px 20px !important;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .resource-nav-links {
    padding: 5px 15px 0px 20px !important;
  }
  html .resource-nav-links .resource-icon {
    padding: 12px 15px 12px 29px !important;
  }
  html .resource-nav-links .finance {
    width: 200px;
  }
}
html .resource-nav-links .resource-icon::before {
  flex-shrink: 0;
  content: "";
  background-image: url(../_partials/icons-spread.webp);
  background-repeat: no-repeat;
  background-size: 500px;
  position: absolute;
  background-position-x: -337px;
  left: -21px;
  top: 9px;
  width: 33px;
  height: 33px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .resource-nav-links .resource-icon::before {
    background-size: 500px;
    left: -15px;
    top: 5px;
    width: 35px;
    height: 33px;
  }
}
@media only screen and (min-width: 1101px) {
  html .resource-nav-links .resource-icon::before li a {
    position: relative;
    left: 5px;
  }
}
html .resource-nav-links .resource-icon:hover::before {
  background-position-y: -64.5px;
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .resource-nav-links .icon-1::before {
    background-position: -359px -1px;
  }
  html .resource-nav-links .icon-2::before {
    background-position: -304px -2px;
  }
  html .resource-nav-links .icon-3::before {
    background-position: -240px 0px;
  }
  html .resource-nav-links .icon-4::before {
    background-position: -272px 0px;
  }
  html .resource-nav-links .icon-5::before {
    background-position: -463px -1.5px;
  }
  html .resource-nav-links .icon-6::before {
    background-position: -391px -1px;
  }
  html .resource-nav-links .icon-1:hover::before {
    background-position: -359px -65.25px;
  }
  html .resource-nav-links .icon-2:hover::before {
    background-position: -304px -66.25px;
  }
  html .resource-nav-links .icon-3:hover::before {
    background-position: -240px -64.25px;
  }
  html .resource-nav-links .icon-4:hover::before {
    background-position: -272px -64.25px;
  }
  html .resource-nav-links .icon-5:hover::before {
    background-position: -463px -65.75px;
  }
  html .resource-nav-links .icon-6:hover::before {
    background-position: -391px -65.25px;
  }
}
@media only screen and (min-width: 1101px) {
  html .resource-nav-links .icon-1::before {
    background-position: -363px -2px;
  }
  html .resource-nav-links .icon-2::before {
    background-position: -308px 0px;
  }
  html .resource-nav-links .icon-3::before {
    background-position: -243px 0px;
  }
  html .resource-nav-links .icon-4::before {
    background-position: -274px 0px;
  }
  html .resource-nav-links .icon-5::before {
    background-position: -466.5px -0.5px;
  }
  html .resource-nav-links .icon-6::before {
    top: 8px;
    background-position: -393px 2px;
  }
  html .resource-nav-links .icon-1:hover::before {
    background-position: -363px -66.25px;
  }
  html .resource-nav-links .icon-2:hover::before {
    background-position: -308px -64.25px;
  }
  html .resource-nav-links .icon-3:hover::before {
    background-position: -243px -64.25px;
  }
  html .resource-nav-links .icon-4:hover::before {
    background-position: -274px -64.25px;
  }
  html .resource-nav-links .icon-5:hover::before {
    background-position: -466.5px -64.75px;
  }
  html .resource-nav-links .icon-6:hover::before {
    top: 8px;
    background-position: -393px -62.25px;
  }
}

@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html.dark .resource-nav-links .icon-1::before {
    background-position: -359px -33px;
  }
  html.dark .resource-nav-links .icon-2::before {
    background-position: -304px -33px;
  }
  html.dark .resource-nav-links .icon-3::before {
    background-position: -240px -33px;
  }
  html.dark .resource-nav-links .icon-4::before {
    background-position: -273px -33px;
  }
  html.dark .resource-nav-links .icon-5::before {
    background-position: -463px -33px;
  }
  html.dark .resource-nav-links .icon-6::before {
    background-position: -391px -33px;
  }
  html.dark .resource-nav-links .icon-1:hover::before {
    background-position: -359px -98px;
  }
  html.dark .resource-nav-links .icon-2:hover::before {
    background-position: -304px -98px;
  }
  html.dark .resource-nav-links .icon-3:hover::before {
    background-position: -240px -98px;
  }
  html.dark .resource-nav-links .icon-4:hover::before {
    background-position: -273px -98px;
  }
  html.dark .resource-nav-links .icon-5:hover::before {
    background-position: -463px -98px;
  }
  html.dark .resource-nav-links .icon-6:hover::before {
    background-position: -391px -98px;
  }
}
@media only screen and (min-width: 1101px) {
  html.dark .resource-nav-links .icon-1::before {
    background-position: -362.25px -33.5px;
  }
  html.dark .resource-nav-links .icon-2::before {
    background-position: -308.125px -33.75px;
  }
  html.dark .resource-nav-links .icon-3::before {
    background-position: -243px -33.5px;
  }
  html.dark .resource-nav-links .icon-4::before {
    background-position: -274.125px -33.75px;
  }
  html.dark .resource-nav-links .icon-5::before {
    background-position: -466.75px -33.75px;
  }
  html.dark .resource-nav-links .icon-6::before {
    top: 8px;
    background-position: -392.25px -30.75px;
  }
  html.dark .resource-nav-links .resource-icon.icon-1:hover::before {
    background-position: -362px -98.5px;
  }
  html.dark .resource-nav-links .resource-icon.icon-2:hover::before {
    background-position: -308px -98.5px;
  }
  html.dark .resource-nav-links .resource-icon.icon-3:hover::before {
    background-position: -243px -98.5px;
  }
  html.dark .resource-nav-links .resource-icon.icon-4:hover::before {
    background-position: -274px -98.5px;
  }
  html.dark .resource-nav-links .resource-icon.icon-5:hover::before {
    background-position: -466.5px -98.5px;
  }
  html.dark .resource-nav-links .resource-icon.icon-6:hover::before {
    top: 8px;
    background-position: -392px -95.5px;
  }
}

@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html.dark body header nav {
    border-left: 8px solid var(--primary);
  }
}
html.dark body header nav .nav-links {
  background-color: var(--bodyDark);
}
@media only screen and (min-width: 1101px) {
  html.dark body header nav .nav-links {
    max-height: 100px;
  }
}
html.dark body header nav .nav-links li.nest.is-open .nest-trigger span {
  color: var(--primary) !important;
}
html.dark body header nav .nav-links li.nest.is-open .drop-down {
  border-top: 2px solid var(--primary);
  border-bottom: 2px solid var(--primary);
  background: rgb(11, 23, 35);
}
html.dark body header nav li .arrow-down {
  filter: brightness(0) invert(1);
}
html.dark body header nav li a,
html.dark body header nav li .nest-trigger {
  color: white;
  -webkit-text-decoration: 2px underline transparent;
          text-decoration: 2px underline transparent;
  text-underline-offset: 5px;
}
html.dark body header nav li a span,
html.dark body header nav li .nest-trigger span {
  color: inherit;
  -webkit-text-decoration: 2px underline transparent;
          text-decoration: 2px underline transparent;
  text-underline-offset: 5px;
}
@media (hover: hover) and (pointer: fine) {
  html.dark body header nav li a:hover,
  html.dark body header nav li .nest-trigger:hover {
    color: var(--primary) !important;
    -webkit-text-decoration: 2px underline var(--primary);
            text-decoration: 2px underline var(--primary);
    text-underline-offset: 5px;
  }
  html.dark body header nav li a:hover span,
  html.dark body header nav li .nest-trigger:hover span {
    -webkit-text-decoration: 2px underline var(--primary);
            text-decoration: 2px underline var(--primary);
    color: var(--primary) !important;
  }
}
html.dark body header nav li .active {
  -webkit-text-decoration: 2px underline var(--primary);
          text-decoration: 2px underline var(--primary);
  text-underline-offset: 5px;
}
html.dark body header nav li span.active {
  -webkit-text-decoration: 2px underline var(--primary);
          text-decoration: 2px underline var(--primary);
  text-underline-offset: 5px;
}
@media (hover: hover) and (pointer: fine) {
  html.dark body header nav li:hover > .nest-trigger {
    color: var(--primary) !important;
  }
  html.dark body header nav li:hover > .nest-trigger span {
    color: var(--primary) !important;
  }
  html.dark body header nav li:hover .drop-down {
    background: rgba(10, 20, 31, 0.98);
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (hover: hover) and (pointer: fine) and (min-width: 0px) and (max-width: 1100px) {
  html.dark body header nav li:hover .drop-down {
    border-top: 0px solid var(--primary);
    border-bottom: 0px solid var(--primary);
  }
}
@media only screen and (hover: hover) and (pointer: fine) and (min-width: 1101px) {
  html.dark body header nav li:hover .drop-down {
    border-top: 3px solid var(--primary);
    border-bottom: 3px solid var(--primary);
  }
}
@media (hover: hover) and (pointer: fine) {
  html.dark body header nav li:hover .drop-down li a {
    color: var(--white);
  }
}

.service-link::before,
.resource-icon::before,
.area-icon::before,
.all-area-icon::before,
.area-icon::before {
  background-image: url(../../_partials/icons-spread.webp) !important;
}

@media only screen and (min-width: 0px) {
  html .intro {
    background: var(--body);
    background-image: url(/assets/images/globals/bg.webp);
  }
  html .intro .intro-inner {
    width: min(1300px, 90%);
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 50px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .intro .intro-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 25px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 800px) {
  html .intro .intro-inner {
    width: 90%;
  }
}
@media only screen and (min-width: 0px) {
  html .intro .intro-header {
    flex: 1;
    max-width: 620px;
    margin-bottom: 0;
  }
  html .intro .intro-header h2 {
    max-width: 620px;
    letter-spacing: 0;
  }
  html .intro .intro-header p {
    line-height: 1.75;
    color: var(--black);
  }
  html .intro .intro-header .cta-button {
    display: flex;
    gap: 20px;
    align-items: center;
  }
}
@media only screen and (min-width: 0px) and (max-width: 500px) {
  html .intro .intro-header .cta-button {
    gap: 15px;
  }
}
@media only screen and (min-width: 0px) {
  html .intro .intro-header .cta-button .cta-1 {
    background: var(--secondary);
  }
  html .intro .intro-header .cta-button .cta-1:hover {
    background-color: white;
    color: black;
  }
  html .intro .intro-image {
    flex: 1;
    width: 100%;
    max-width: 625px;
    aspect-ratio: 6.5/6;
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.35);
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .intro .intro-image {
    max-width: 400px;
  }
}
@media only screen and (min-width: 0px) {
  html .intro .intro-image img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
  html .intro .intro-image .image,
  html .intro .intro-image picture {
    display: block;
    width: 100%;
    height: 100%;
  }
  html.dark .intro {
    background: var(--bodyDark);
  }
  html.dark .intro .intro-header h2,
  html.dark .intro .intro-header p {
    color: var(--white);
  }
  html.dark .intro .intro-header .cta-button .cta-1 {
    background: var(--secondary2);
  }
  html.dark .intro .intro-header .cta-button .cta-1:hover {
    background-color: var(--body);
    color: black;
  }
}
@media only screen and (min-width: 0px) {
  html .systems {
    background: var(--secondary2);
    background-image: url(/assets/images/globals/textures/wall.png);
  }
  html .systems .systems-inner {
    width: min(1600px, 90%);
    margin: 0 auto;
  }
}
@media only screen and (min-width: 0px) and (max-width: 800px) {
  html .systems .systems-inner {
    width: 90%;
  }
}
@media only screen and (min-width: 0px) {
  html .systems .systems-items {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
  }
  html .systems .systems-items .items-header {
    margin: 0 auto 35px;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: clamp(25px, 3vw, 75px);
    color: white;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .systems .systems-items .items-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
@media only screen and (min-width: 0px) {
  html .systems .systems-items .items-header .topper {
    text-shadow: var(--cta);
  }
  html .systems .systems-items .items-header h2 {
    min-width: 300px;
    margin-bottom: 0;
    color: white;
    max-width: 550px;
    text-shadow: var(--cta);
  }
  html .systems .systems-items .items-header p {
    max-width: 750px;
    margin-bottom: 0 !important;
    text-shadow: var(--cta-light);
  }
  html .systems .systems-items ul {
    width: 100%;
    text-align: left;
    justify-content: center;
    align-items: center;
    max-width: 1300px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    margin-bottom: 35px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 1100px) {
  html .systems .systems-items ul {
    grid-template-columns: 1fr;
    padding: 0;
  }
}
@media only screen and (min-width: 0px) {
  html .systems .systems-items ul li {
    position: relative;
    line-height: 1.5;
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-shadow: var(--cta-light);
    max-width: 450px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 5px;
    padding: 15px 25px 15px 25px;
    color: white;
    min-height: 100%;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.35);
  }
  html .systems .systems-items ul li h3 {
    font-size: clamp(1.25em, 3vw, 1.5em);
    margin-bottom: 10px;
    color: white;
    text-shadow: var(--cta);
  }
  html .systems .systems-items ul li p {
    margin-bottom: 0;
    color: white;
    text-shadow: var(--cta-light);
  }
  html .systems .systems-items ul li:hover {
    background: rgba(255, 255, 255, 0.15);
  }
  html .systems .systems-items ul li:hover h3 {
    color: var(--primary);
  }
  html .systems .systems-items ul li:hover .image {
    filter: drop-shadow(1.5px 1.5px 10px var(--primary));
  }
  html .systems .systems-items ul li .image {
    background-image: url("/assets/images/services/railings/railings-spread.png");
    background-repeat: no-repeat;
    background-size: 228px;
    width: 68px;
    height: 58px;
    margin-bottom: 5px;
    filter: drop-shadow(1.5px 1.5px 2px rgba(0, 0, 0, 0.65));
  }
  html .systems .systems-items ul li .r1 {
    background-position: -15px -1px;
  }
  html .systems .systems-items ul li .r2 {
    background-position: -87px -10px;
  }
  html .systems .systems-items ul li .r3 {
    background-position: -153px -5px;
  }
  html .systems .systems-items ul li .r4 {
    background-position: -17px -76px;
  }
  html .systems .systems-items ul li .r5 {
    background-position: -85px -80px;
  }
  html .systems .systems-items ul li .r6 {
    background-position: -158px -79px;
  }
  html .systems .systems-items ul li .r7 {
    background-position: -17px -146px;
  }
  html .systems .systems-items ul li .r8 {
    background-position: -87px -153px;
  }
  html .systems .systems-items ul li .r9 {
    background-position: -165px -147px;
  }
  html .systems .systems-items .cta-header {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
  }
  html.dark .systems {
    background: var(--secondaryDark);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html.dark .systems .systems-items .items-header h2 {
    color: var(--white);
  }
}
@media only screen and (min-width: 0px) {
  html .replace-signs {
    background: var(--body);
    background-image: url(/assets/images/globals/bg.webp);
    background-size: cover;
    background-position: bottom;
  }
  html .replace-signs .replace-signs-inner .top {
    width: min(1300px, 90%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.25fr 0.95fr;
    gap: 40px;
    align-items: start;
    margin-bottom: 50px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 950px) {
  html .replace-signs .replace-signs-inner .top {
    width: 90%;
    grid-template-columns: 1fr;
    gap: 25px;
  }
}
@media only screen and (min-width: 0px) {
  html .replace-signs .replace-header {
    max-width: 760px;
    margin-bottom: 0;
  }
  html .replace-signs .replace-header p {
    line-height: 1.75;
  }
  html .replace-signs .replace-list-wrap {
    width: 100%;
  }
  html .replace-signs .replace-list {
    background: var(--bodyDark);
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.18);
    border-top: 4px solid var(--primary);
    padding: 28px 28px 8px;
    background: var(--secondary2);
    background-image: url(/assets/images/globals/textures/wall.png);
    border-radius: 5px;
  }
  html .replace-signs .replace-list h3 {
    color: white;
    margin-bottom: 25px;
    font-size: clamp(1.125em, 3vw, 1.25em);
  }
  html .replace-signs .replace-list ul {
    padding: 0;
    margin: 0;
    list-style: none;
  }
  html .replace-signs .replace-list li {
    position: relative;
    color: white;
    line-height: 1.7;
    padding: 0 0 15px 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  }
  html .replace-signs .replace-list li::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--primary);
    position: absolute;
    left: 0;
    top: 13px;
  }
  html .replace-signs .replace-list li:last-child {
    border: none;
    margin-bottom: 5px;
  }
  html .replace-signs .replace-images {
    width: min(1300px, 90%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 5px;
    margin-bottom: clamp(35px, 3vw, 50px);
    overflow: hidden;
  }
}
@media only screen and (min-width: 0px) and (max-width: 800px) {
  html .replace-signs .replace-images {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 0px) {
  html .replace-signs .replace-images a {
    overflow: hidden;
  }
  html .replace-signs .replace-images a img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    transition: 0.2s;
  }
  html .replace-signs .replace-images a img:hover {
    transform: scale(1.025);
  }
  html.dark .replace-signs {
    background: var(--bodyDark);
  }
  html.dark .replace-signs .replace-content h2,
  html.dark .replace-signs .replace-content p {
    color: white;
  }
  html.dark .replace-signs .replace-list {
    background: var(--secondaryDark);
  }
}
@media only screen and (min-width: 0px) {
  html .why-choose {
    background: var(--secondary2);
    background-image: url(/assets/images/globals/textures/wall.png);
  }
  html .why-choose .why-choose-inner {
    width: min(1300px, 90%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
  }
}
@media only screen and (min-width: 0px) and (max-width: 950px) {
  html .why-choose .why-choose-inner {
    width: 90%;
    grid-template-columns: 1fr;
    gap: 25px;
  }
}
@media only screen and (min-width: 0px) {
  html .why-choose .why-choose-header .topper {
    text-shadow: var(--cta);
  }
  html .why-choose .why-choose-header h2,
  html .why-choose .why-choose-header p {
    color: white;
    text-shadow: var(--cta);
  }
  html .why-choose .why-choose-header p {
    text-shadow: var(--cta-light);
    line-height: 1.75;
  }
  html .why-choose .why-choose-header .cta-button {
    display: flex;
    gap: 20px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 500px) {
  html .why-choose .why-choose-header .cta-button {
    gap: 15px;
  }
}
@media only screen and (min-width: 0px) {
  html .why-choose .why-choose-header .cta-button .cta-1 {
    background: var(--secondary);
  }
  html .why-choose .why-choose-header .cta-button .cta-1:hover {
    background-color: white;
    color: black;
  }
  html .why-choose .why-choose-items {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
  }
}
@media only screen and (min-width: 0px) and (max-width: 650px) {
  html .why-choose .why-choose-items {
    grid-template-columns: 1fr;
  }
}
@media only screen and (min-width: 0px) {
  html .why-choose .item {
    background: rgba(0, 0, 0, 0.25);
    padding: 15px 20px 20px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.35);
    border-radius: 5px;
  }
  html .why-choose .item:hover {
    background: rgba(0, 0, 0, 0.35);
  }
  html .why-choose .item h3 {
    color: white;
    margin-bottom: 10px;
    text-shadow: var(--cta);
  }
  html .why-choose .item h3::before {
    content: "";
    background-image: url("/assets/images/globals/logo-icon.webp");
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    position: relative;
    top: 5px;
    margin-right: 2px;
    width: 28px;
    height: 28px;
    filter: drop-shadow(1px 1px 0px rgba(0, 0, 0, 0.5));
  }
  html .why-choose .item p {
    color: white;
    line-height: 1.75;
    margin-bottom: 0;
    text-shadow: var(--cta-light);
  }
  html.dark .why-choose {
    background: var(--secondaryDark);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html.dark .why-choose .item {
    background: rgba(0, 0, 0, 0.25);
  }
  html.dark .why-choose .item:hover {
    background: rgba(0, 0, 0, 0.35);
  }
}
@media only screen and (min-width: 0px) {
  html .gallery {
    background: var(--body);
    background-image: url(/assets/images/globals/bg.webp);
  }
  html .gallery .gallery-inner {
    width: min(1300px, 90%);
    margin: 0 auto;
    text-align: center;
    padding-bottom: 100px;
  }
  html .gallery .gallery-inner .gallery-images {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 5px;
    margin-bottom: clamp(35px, 3vw, 50px);
    overflow: hidden;
  }
}
@media only screen and (min-width: 0px) and (max-width: 800px) {
  html .gallery .gallery-inner .gallery-images {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 0px) {
  html .gallery .gallery-inner .gallery-images a {
    overflow: hidden;
  }
  html .gallery .gallery-inner .gallery-images a img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    transition: 0.2s;
  }
  html .gallery .gallery-inner .gallery-images a img:hover {
    transform: scale(1.025);
  }
  html .gallery .gallery-inner .gallery-cta {
    display: block;
    margin: 0 auto;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
    font-weight: bold;
    line-height: 1.5;
    border-radius: 100vw;
    padding: 25px 30px;
    font-size: 0.95em;
    box-shadow: 0 0 3px rgb(0, 0, 0);
    text-shadow: var(--cta);
    color: white;
    background: var(--primary);
    transition: 0.1s;
  }
  html .gallery .gallery-inner .gallery-cta:hover {
    background: var(--white);
    color: black;
    text-shadow: none;
  }
  html .gallery .gallery-inner .gallery-header h2 {
    margin-bottom: 5px;
  }
  html .gallery .gallery-inner .gallery-header h2 span {
    font-family: "Anton", system-ui, "Segoe UI", Helvetica, Arial, sans-serif;
    color: var(--primary);
  }
  html .gallery .gallery-inner .gallery-header p {
    margin: 0 auto;
  }
  html.dark .gallery {
    background: var(--bodyDark);
  }
}
@media only screen and (min-width: 0px) {
  html .faq {
    background: var(--secondary2);
    background-image: url(/assets/images/globals/textures/wall.png);
  }
  html .faq .faq-inner {
    max-width: min(1300px, 90%);
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    gap: 50px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 1100px) {
  html .faq .faq-inner {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
}
@media only screen and (min-width: 0px) {
  html .faq .faq-inner .faq-header {
    color: white;
    display: flex;
    flex-direction: column;
    text-shadow: var(--cta);
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 1100px) {
  html .faq .faq-inner .faq-header {
    gap: 0;
  }
}
@media only screen and (min-width: 0px) {
  html .faq .faq-inner .faq-header .topper {
    text-shadow: var(--cta);
  }
  html .faq .faq-inner .faq-header h2 {
    color: white;
  }
  html .faq .faq-inner .faq-header .cta-button {
    display: flex;
    flex-direction: row;
    gap: 20px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (max-width: 500px) {
  html .faq .faq-inner .faq-header .cta-button {
    gap: 15px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) {
  html .faq .faq-inner .faq-block {
    max-width: 800px;
    margin-bottom: 7.5px;
  }
  html .faq .faq-inner .faq-block strong {
    color: var(--secondary);
  }
  html .faq .faq-inner .faq-block .faq-question {
    padding: 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border: 2px solid var(--secondary3);
    border-radius: 2.5px;
    background: rgba(0, 0, 0, 0.2);
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.75);
    font-family: "Inter", system-ui, "Segoe UI", Helvetica, Arial, sans-serif;
    color: white;
  }
  html .faq .faq-inner .faq-block .faq-question:hover {
    background: rgba(0, 0, 0, 0.35);
    cursor: pointer;
    background: var(--secondary);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html .faq .faq-inner .faq-block .faq-question h3 {
    font-family: "Inter", system-ui, "Segoe UI", Helvetica, Arial, sans-serif;
    letter-spacing: -0.5px;
    text-shadow: var(--cta);
  }
  html .faq .faq-inner .faq-block .faq-question h2 {
    font-size: clamp(16px, 3.75vw, 18px);
    color: white;
    font-weight: 500;
    line-height: 1.5;
  }
  html .faq .faq-inner .faq-block .faq-question .faq-lines {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 30px;
    margin-right: 5px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) and (min-width: 0px) and (max-width: 450px) {
  html .faq .faq-inner .faq-block .faq-question .faq-lines {
    position: relative;
    right: 5px;
  }
}
@media only screen and (min-width: 0px) and (min-width: 0px) {
  html .faq .faq-inner .faq-block .faq-question .faq-lines div {
    position: absolute;
    width: 18px;
    height: 2px;
    background-color: white;
  }
  html .faq .faq-inner .faq-block .faq-question .faq-lines .line-1 {
    transition: 0.3s;
    transform: rotate(0);
  }
  html .faq .faq-inner .faq-block .faq-question .faq-lines .line-2 {
    transition: 0.3s;
    transform: rotate(90deg);
  }
  html .faq .faq-inner .faq-block .faq-question.active {
    transition: 0.3s;
    background: var(--secondary);
  }
  html .faq .faq-inner .faq-block .faq-question.active .line-1 {
    transition: 0.3s;
    transform: rotate(360deg);
  }
  html .faq .faq-inner .faq-block .faq-question.active .line-2 {
    transform: rotate(360deg);
    transition: 0.3s;
  }
  html .faq .faq-inner .faq-block .faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.1s ease, opacity 0.3s ease;
    margin-top: 7.5px;
    border-radius: 7.5px;
    box-shadow: 0px 0px 3px black;
    padding: 0 25px;
    background: rgba(0, 0, 0, 0.15);
    background: rgba(0, 0, 0, 0.35);
  }
  html .faq .faq-inner .faq-block .faq-answer p {
    text-shadow: var(--cta);
    color: white;
    margin-bottom: 20px;
    line-height: 1.75;
  }
  html .faq .faq-inner .faq-block .faq-answer p:last-child {
    margin-bottom: 5px;
  }
  html .faq .faq-inner .faq-block .faq-answer p a {
    font-size: 1em;
    color: white;
  }
  html .faq .faq-inner .faq-block .faq-answer p a:hover {
    color: var(--primary);
  }
  html .faq .faq-inner .faq-block .faq-answer a {
    font-size: 15px;
    font-weight: bolder;
    color: var(--secondary);
    -webkit-text-decoration: 2px underline var(--primary);
            text-decoration: 2px underline var(--primary);
    text-underline-offset: 5px;
    transition: 0.2s;
  }
  html .faq .faq-inner .faq-block .faq-answer li {
    color: white;
    font-family: "DM Sans", sans-serif;
    line-height: 1.75;
    margin-bottom: 25px;
  }
  html .faq .faq-inner .faq-block .faq-answer.active {
    display: block;
    height: 100%;
    max-height: 1000px;
    opacity: 1;
    padding: 20px;
  }
}
@media only screen and (min-width: 0px) {
  html.dark .faq {
    background: var(--secondaryDark);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html.dark .faq .faq-inner .faq-question {
    background: var(--secondary3);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html.dark .faq .faq-inner .faq-question:hover {
    background: var(--secondary);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html.dark .faq .faq-inner .faq-question.active {
    background: var(--secondary);
    background-image: url(/assets/images/globals/textures/wall-dark.png);
  }
  html.dark .faq .faq-inner .faq-answer.active {
    background: rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (min-width: 0px) {
  html .cta {
    height: 650px;
    max-height: 800px;
    background: var(--secondaryDark);
    background-image: url(/assets/images/services/railings/cta.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top;
    background-attachment: fixed;
    border-top: 3px solid var(--secondary);
    border-bottom: 3px solid var(--secondary);
  }
}
@media only screen and (min-width: 0px) and (max-width: 700px) {
  html .cta {
    background-attachment: local;
    background-image: url(/assets/images/services/railings/cta-mobile.webp);
    height: 520px;
  }
}
@media only screen and (min-width: 0px) {
  html .cta .cta-inner {
    background: rgba(0, 0, 0, 0.45);
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-shadow: var(--cta);
    text-align: center;
  }
  html .cta .cta-inner .cta-header {
    width: 94%;
    margin: 0 auto;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  html .cta .cta-inner .cta-header h2 {
    color: white;
    font-size: clamp(1.75em, 3.5vw, 2.5em);
    line-height: 1.5;
    text-shadow: var(--cta);
    text-wrap: balance;
  }
  html .cta .cta-inner .cta-header p {
    max-width: 760px;
    margin: 0 auto 35px;
    text-shadow: var(--cta);
    font-size: clamp(1em, 3vw, 1.125em);
  }
  html.dark .cta {
    border-top: 3px solid var(--secondaryDark);
    border-bottom: 3px solid var(--secondaryDark);
  }
}/*# sourceMappingURL=railings-local.css.map */