@property --registered-length-property-for-calculation {
  syntax: "<length>";
  initial-value: 0px;
  inherits: true;
}

:root {
  --primary-transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
  scrollbar-color: var(--color-primary-green--darkest) transparent;
  scrollbar-width: thin;
}

/* Make text look crisper and more legible in all browsers */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-size: clamp(0.875rem, 0.8218rem + 0.198vw, 1rem);
}

*::before,
*::after {
  box-sizing: border-box;
}

:is(h1, h2, h3, h4, h5, h6) {
  line-height: inherit;
}

img,
svg,
video {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
}

/* Richtext Elements Styles */
.u-richtext > * {
  margin-bottom: 1rem;
}
.u-richtext p {
  color: var(--color-primary-green--lighter);
}
.u-richtext :is(b, strong) {
  color: var(--color-primary-green--darkest);
}
.u-richtext a {
  text-decoration: var(--color-secondary-green--darkest) underline;
}
.u-richtext :is(h1, h2, h3, h4, h5, h6, b, strong) {
  font-weight: 500;
}
.u-richtext :is(ol, ul) li + li {
  margin-top: 0.75rem;
}
.u-richtext > :is(h1, h2) {
  margin-top: 2.5rem;
  margin-bottom: 1.5rem;
}
/* .u-richtext > :is(h3, h4) {
  margin-bottom: 1rem;
} */
.u-richtext > :is(.w-embed, .w-richtext-figure-type-image) {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.u-richtext > :first-child {
  margin-top: 0;
}
.u-richtext > :last-child {
  margin-bottom: 0;
}
/* === */

/* Other Elements Styles */
.u-line-clamp {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--_line-length, 3);
}

.u-pattern-square {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='8' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23F4EFE8'/%3E%3C/svg%3E");
}

.u-pattern-line {
  --_pattern-thickness: 1px;
  --_pattern-distance: clamp(0.2813rem, 0.2014rem + 0.297vw, 0.4688rem);
  background-size: var(--_pattern-distance);
  background-image: linear-gradient(
    to right,
    #0000 calc(var(--_pattern-distance) - var(--_pattern-thickness)),
    color-mix(
        in hsl,
        var(--_pattern-color, var(--color-neutral--gray-lighter))
          var(--_pattern-opacity, 100%),
        var(--color-neutral--transparent) 0%
      )
      calc(var(--_pattern-distance) - var(--_pattern-thickness))
  );
}

.u-border-line-inline {
  box-shadow: inset var(--sizes--decoration-border-width) 0 0
      var(--_line-color, var(--color-neutral--gray-lighter)),
    inset var(--sizes--decoration-border-width-inverse) 0 0 0
      var(--_line-color, var(--color-neutral--gray-lighter));
}

.u-border-line-outset-block,
.u-border-line-outset-start,
.u-border-line-outset-end {
  border-image-source: linear-gradient(
    var(--_line-color, var(--color-neutral--gray-lighter)) 0 0
  );
  border-image-slice: 1;
  border-image-outset: 0 100vw;
}
.u-border-line-outset-block {
  border-image-width: var(--sizes--decoration-border-width) 0;
}
.u-border-line-outset-start {
  border-image-width: var(--sizes--decoration-border-width) 0 0;
}
.u-border-line-outset-end {
  border-image-width: 0 0 var(--sizes--decoration-border-width);
}

.u-selection-element {
  --_box-size: 14px;
  --_box-border-width-outside: 0px;
  --_box-border-width-inside: 3px;
  --_box-border-color: var(--color-neutral--gray-lightest);
  --_box-background-color: var(--color-accent--blue-dark);
}

.u-selection-element::before {
  --_box-size-remain: calc(var(--_box-size) - var(--_box-border-width-inside));
  --_box-pattern-gradient: linear-gradient(
      to bottom,
      var(--_box-border-color) var(--_box-border-width-inside),
      #0000 var(--_box-border-width-inside) var(--_box-size-remain),
      var(--_box-border-color) var(--_box-size-remain)
    ),
    linear-gradient(
      to right,
      var(--_box-border-color) var(--_box-border-width-inside),
      var(--_box-background-color) var(--_box-border-width-inside)
        var(--_box-size-remain),
      var(--_box-border-color) var(--_box-size-remain)
    );
  --_box-pattern-size: var(--_box-size) var(--_box-size),
    var(--_box-size) var(--_box-size);
  --_box-pattern-position-right-top: right top, right top;
  --_box-pattern-position-right-bottom: right bottom, right bottom;
  --_box-pattern-position-left-bottom: left bottom, left bottom;
  content: "";
  position: absolute;
  pointer-events: none;
  user-select: none;
  inset: calc((var(--_box-size) / 2) * -1);
  background-image: var(--_box-pattern-gradient), var(--_box-pattern-gradient),
    var(--_box-pattern-gradient);
  background-repeat: no-repeat;
  background-size: var(--_box-pattern-size), var(--_box-pattern-size),
    var(--_box-pattern-size);
  background-position: var(--_box-pattern-position-right-top),
    var(--_box-pattern-position-right-bottom),
    var(--_box-pattern-position-left-bottom);

  filter: drop-shadow(
      min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px 0px
        var(--_box-border-color)
    )
    drop-shadow(
      0px min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px
        var(--_box-border-color)
    )
    drop-shadow(
      0px
        calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
        0px var(--_box-border-color)
    )
    drop-shadow(
      calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
        0px 0px var(--_box-border-color)
    );
}

.u-text-style-type-square {
  padding-inline-start: 1rem;
  background-image: linear-gradient(currentColor 0 0);
  background-size: 0.5rem 0.5rem;
  background-repeat: no-repeat;
  background-position-y: 45%;
}

.u-navbar-scroll-offset {
  padding-top: var(--navbar-height, 0);
  margin-top: calc(var(--navbar-height, 0) * -1);
}

@media screen and (max-width: 1399.98px) {
  .u-decoration-ruler {
    display: none;
  }
}

/* Buttons Styles */
.button.cc-primary {
  --_hover-color: var(--color-neutral--white);
  --_hover-bg: var(--color-primary-green--lightest);
}
.button.cc-secondary {
  --_hover-bg: var(--color-neutral--gray-lightest);
}
.button:is(.cc-primary, .cc-secondary):active {
  background-color: var(--_hover-bg);
}
.button.cc-primary:active {
  color: var(--_hover-color);
  border-color: var(--_hover-bg);
}
@media (hover: hover) {
  .button:is(.cc-primary, .cc-secondary):is(:hover, :focus-visible) {
    background-color: var(--_hover-bg);
  }
  .button.cc-primary:is(:hover, :focus-visible) {
    color: var(--_hover-color);
    border-color: var(--_hover-bg);
  }
}
@media (prefers-reduced-motion: no-preference) {
  .button {
    transition: all 0.3s var(--primary-transition-timing-function, ease);
  }
}

/* Section Navbar Style */
.skip-link:not(:focus-visible) {
  opacity: 0;
  height: 0;
}
html:has(.navbar_toggler[aria-expanded="true"]) {
  overflow: hidden;
}
.w-nav-overlay {
  background-color: rgba(3, 40, 13, 0.5);
}

.navbar_toggler:not(.w--open) [data-path-group="open"],
.navbar_toggler.w--open [data-path-group="close"] {
  display: none;
}

/* .navbar_nav_link:is(:hover, :focus-visible, .w--current) {
  text-decoration: var(--color-secondary-green--darkest) wavy underline;
} */

.navbar_nav_link {
  --_hover-color: var(--color-neutral--white);
  --_hover-bg: var(--color-accent--blue-dark);
}

.navbar_nav_link span {
  --_spacing: 7px;
  padding: calc(var(--_spacing) / 2) var(--_spacing);
  margin: calc((var(--_spacing) / 2) * -1) calc(var(--_spacing) * -1);
  border-radius: 3px;
}

.navbar_nav_link:active span {
  color: var(--_hover-color);
  background-color: var(--_hover-bg);
}

@media (hover: hover) {
  .navbar_nav_link:is(:hover, :focus-visible, .w--current) span {
    color: var(--_hover-color);
    background-color: var(--_hover-bg);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .navbar_nav_link span {
    transition: color 0.2s ease, background-color 0.1s ease;
  }
}

/* @media (prefers-reduced-motion: no-preference) {
  .navbar_nav_link {
    transition: color 0.2s ease;
  }
} */

@media (prefers-reduced-motion: reduce) {
  .navbar_nav {
    transition: none !important;
  }
}

@media screen and (max-width: 390px) {
  .navbar_brand_image {
    width: 2rem;
    object-fit: cover;
    object-position: left;
    aspect-ratio: 1.03/1;
  }
}
@media screen and (max-width: 424.98px),
  (min-width: 992px) and (max-width: 1100px) {
  .navbar_actions .button {
    padding-inline: 1rem;
    letter-spacing: -0.01666666666em;
  }
  .navbar_actions .button_icon {
    display: none;
  }
}
@media screen and (max-width: 991.98px) {
  .navbar_actions .button {
    height: 2rem;
  }
}
@media screen and (min-width: 868px) {
  .navbar_wrapper {
    box-shadow: inset 0 -1px 0 var(--color-neutral--gray-lighter);
  }
}
@media screen and (min-width: 992px) {
  .navbar_nav_item + .navbar_nav_item::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateX(-50%) translateY(-50%);
    width: 1px;
    height: 8px;
    background-color: var(--color-neutral--gray-light);
    pointer-events: none;
  }
  .navbar_nav_link {
    padding: 0.5rem clamp(0.625rem, -0.7589rem + 2.2321vw, 1.25rem);
  }
}

/* Section Home Banner Style */
.section-home-header::after {
  --_offset: 1.75rem;
  content: "";
  position: absolute;
  bottom: 0;
  left: var(--_offset);
  right: var(--_offset);
  width: calc(100% - (var(--_offset) * 2));
  max-width: 1268px;
  margin-inline: auto;
  height: 1rem;
  background-image: url("https://cdn.prod.website-files.com/69b90234467037aa6314013b/69d3c3e91ecd1d5bb9f31b3a_bottom-line-pattern.svg");
  background-position: left bottom;
  background-repeat: repeat-x;
  pointer-events: none;
  user-select: none;
}

@media screen and (max-width: 991.98px) {
  .home-header_brand_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 1fr;
    background-color: var(--color-neutral--gray-lighter);
    border: 1px solid var(--color-neutral--gray-lighter);
    gap: 1px;
  }
}

@media screen and (max-width: 599.98px) {
  .home-header_brand_grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width: 319.98px) {
  .home-header_brand_grid {
    grid-template-columns: 1fr;
  }
}

@media screen and (min-width: 992px) {
  .home-header_top {
    align-items: center;
    justify-content: space-between;
  }
  .home-header_top_left {
    flex-grow: 1;
  }
  .home-header_top_right {
    flex-basis: clamp(25rem, 11.9911rem + 20.9821vw, 30.875rem);
    padding-bottom: clamp(5.3125rem, -0.6384rem + 9.5982vw, 8rem);
    border-inline: 1px solid var(--color-neutral--gray-lighter);
  }
  .home-header_top_right_pattern {
    height: clamp(9.375rem, 2.5938rem + 10.9375vw, 12.4375rem);
  }
  .home-header_top_right_block {
    padding: 1.25rem;
  }

  .home-header_brand {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: 1fr 1fr;
    background-color: var(--color-neutral--gray-lighter);
    border: 1px solid var(--color-neutral--gray-lighter);
    gap: 1px;
  }

  .home-header_brand_heading {
    grid-column: 3/5;
    grid-row: 1/-1;
    background-image: url("data:image/svg+xml,%3Csvg width='8' height='8' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='3' height='3' fill='%23D9D9D9'/%3E%3C/svg%3E");
    box-shadow: inset 0 0 0 2px var(--color-surface--hero-bg);
    background-position: 7px 5px;
  }

  .home-header_brand_title {
    padding: clamp(0.625rem, -0.4821rem + 1.7857vw, 1.125rem)
      clamp(1rem, -0.7991rem + 2.9018vw, 1.8125rem);
    background-color: var(--color-neutral--gray-lightest);
    border: 1px solid currentColor;
  }

  .home-header_brand_title::after {
    --_box-size: 6px;
    --_box-border-width-outside: 4px;
    --_box-border-color: var(--color-neutral--gray-lightest);
    --_box-background-color: var(--color-primary-green--lighter);
    --_box-pattern-gradient: linear-gradient(var(--_box-background-color) 0 0);
    --_box-pattern-size: var(--_box-size) var(--_box-size);
    content: "";
    position: absolute;
    pointer-events: none;
    user-select: none;
    background-repeat: no-repeat;
    inset: calc(
      (
          var(--_box-size) +
            min(var(--_box-size), abs(var(--_box-border-width-outside)))
        ) * -1
    );
    background-size: var(--_box-pattern-size), var(--_box-pattern-size),
      var(--_box-pattern-size), var(--_box-pattern-size);
    background-image: var(--_box-pattern-gradient), var(--_box-pattern-gradient),
      var(--_box-pattern-gradient), var(--_box-pattern-gradient);
    background-position: left top, right top, right bottom, left bottom;
    filter: drop-shadow(
        min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px 0px
          var(--_box-border-color)
      )
      drop-shadow(
        0px min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px
          var(--_box-border-color)
      )
      drop-shadow(
        0px
          calc(
            min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1
          )
          0px var(--_box-border-color)
      )
      drop-shadow(
        calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
          0px 0px var(--_box-border-color)
      );
  }

  .home-header_brand_grid {
    display: contents;
  }
}

/* Section Footer Style */
.footer_top {
  --_padding-block: clamp(2rem, 0.7228rem + 4.7525vw, 5rem);
  --_padding-inline: 1.25rem;
}
.footer_top_left,
.footer_top_right {
  padding-inline: var(--_padding-inline);
}
.footer_top_left {
  padding-block-start: var(--_padding-block);
}
.footer_top_right {
  padding-block-end: var(--_padding-block);
}
.footer_block address {
  font-style: normal;
}

.footer_bottom_list li + li::before {
  content: "|";
}

.footer_block_inner:first-of-type {
  padding-block-start: var(--spacing--footer-block-inner-block);
}

.footer_block_inner > * {
  padding-left: 1rem;
}

.footer_block_list a:not(.footer_block_social-link) {
  display: flex;
  gap: 10px;
}

.footer_block_list a:has(> svg) {
  box-sizing: content-box;
}

:where(.footer_block_list, .footer_bottom_copyright)
  a:not(.footer_block_social-link)
  [data-scramble-target],
.footer_block_list a:not(.footer_block_social-link):has(> svg) {
  --_stretch-size: 0.5rem;
  padding: var(--_stretch-size);
  margin: calc(var(--_stretch-size) * -1);
}

.footer_block_social-link {
  --_hover-color: var(--color-neutral--white);
  --_hover-bg: var(--color-primary-green--lightest);
}
.footer a:not(.footer_block_social-link):active {
  text-decoration: var(--color-secondary-green--darkest) wavy underline;
}
.footer_block_social-link:active {
  color: var(--_hover-color);
  background-color: var(--_hover-bg);
}

div.footer_bottom_list_link {
  cursor: not-allowed;
}

@media (hover: hover) {
  .footer a:not(.footer_block_social-link):is(:hover, :focus-visible) {
    text-decoration: var(--color-secondary-green--darkest) wavy underline;
  }
  .footer_block_social-link:is(:hover, :focus-visible) {
    color: var(--_hover-color);
    background-color: var(--_hover-bg);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .footer_block_social-link {
    transition: color 0.3s var(--primary-transition-timing-function, ease),
      background-color 0.3s var(--primary-transition-timing-function, ease);
  }
}

@media screen and (min-width: 768px) {
  .footer_top {
    --_padding-inline: clamp(1.875rem, 0.5893rem + 2.6786vw, 3rem);
    grid-template-columns: auto 63.59375%;
  }
  .footer_top_left {
    padding-block-end: var(--_padding-block);
  }
  .footer_top_right {
    padding-block-start: var(--_padding-block);
    box-shadow: inset var(--sizes--decoration-border-width) 0 0 0
      var(--color-surface--footer-border);
  }
}

/* Flex layout footer design code */
.footer_block_list li {
  position: relative;
}
.footer_block_list li + li::before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.08);
  top: 50%;
  left: -1rem;
  transform: translate(-50%, -50%);
  height: 12px;
  width: 1px;
  pointer-events: none;
}

@media screen and (max-width: 991.99px) {
  .footer_middle {
    display: grid;
  }
}
@media screen and (min-width: 992px) {
  .footer_middle {
    display: flex;
  }
  .footer_block:last-of-type {
    flex-grow: 1;
  }
}
@media screen and (min-width: 1200px) {
  .footer_block:first-of-type:has(li:only-of-type) {
    flex-basis: 11.4375rem;
  }
  .footer_block:last-of-type {
    flex-basis: 31.25rem;
  }
}
@media screen and (min-width: 600px) and (max-width: 991.99px) {
  .footer_middle {
    --_column-count: 2;
    grid-template-columns: repeat(var(--_column-count), 1fr);
  }
  .footer_block:nth-of-type(odd):last-of-type {
    grid-column: span 2;
  }
}

/* Grid layout footer design code */
/*
@media screen and (min-width: 600px) {
  .footer_middle {
    --_column-count: 2;
    grid-template-columns: repeat(var(--_column-count), 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .footer_middle {
    --_column-count: 3;
  }
}
@media screen and (399.98px < width < 599.98px) {
  .footer_block:has(.footer_block_inner:nth-child(2)) {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .footer_block:has(.footer_block_inner:nth-child(2)) .footer_block_inner {
    padding-block-start: var(--spacing--footer-block-inner);
    box-shadow: inherit;
  }
} */

/* Section CTA Style */
.section-cta {
  --_line-color: var(--color-primary-green--lighter);
}
.cta-badge .button.cc-primary {
  border-color: currentColor;
  padding: clamp(0.1875rem, 0.1077rem + 0.297vw, 0.375rem)
    clamp(0.4375rem, 0.3045rem + 0.495vw, 0.75rem);
}
.cta-badge_header {
  background-image: linear-gradient(
    color-mix(
      in hsl,
      var(--color-primary-green--darkest) 10%,
      var(--color-neutral--transparent) 0%
    )
  );
  background-size: 1px 18px;
  background-repeat: no-repeat;
  background-position: 100%;
}
.section-cta_footer {
  --_pattern-color: var(--color-primary-green--lighter);
}

/* Section Projects Style */
.project-card_header {
  --_pattern-color: var(--color-primary-green--darkest);
  --_pattern-opacity: 5%;
}

@media screen and (min-width: 800px) {
  .section-projects .projects_grid {
    --registered-length-property-for-calculation: min(
      var(--sizes--container-1200),
      calc(100vw - (var(--section-spacing--inline) * 2))
    );
    --_calculated-unitless-value: calc(
      10000 *
        tan(atan2(var(--registered-length-property-for-calculation), 10000px))
    );
    counter-reset: section-container-width var(--_calculated-unitless-value);
    grid-auto-rows: 1fr;
  }
  .section-projects .projects_grid::before {
    --_decoration-line-color: var(--color-accent--orange-dark);
    --_decoration-line-thickness: 1px;
    --_decoration-line-distance: 4px;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    background-image: repeating-linear-gradient(
      to right,
      #0000 0 var(--_decoration-line-distance),
      var(--_decoration-line-color) var(--_decoration-line-distance)
        calc(var(--_decoration-line-distance) * 2)
    );
    height: var(--_decoration-line-thickness);
    border-image-source: linear-gradient(var(--_decoration-line-color) 0 0);
    border-image-slice: 0 1;
    border-image-width: 0 100vw;
    border-image-outset: 0px 100vw;
  }
  .section-projects .projects_grid::after {
    --_hr-line-thickness: var(--sizes--decoration-border-width);
    content: counter(section-container-width);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--color-accent--orange-dark);
    font-size: 0.625rem;
    padding: 0.3438rem 0.5rem;
    border-radius: var(--sizes--rounded-pill);
    color: var(--color-neutral--white);
    font-family: var(--font-family--secondary);
    letter-spacing: -0.01em;
    line-height: 1;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .project-card_header_image {
    transition: transform 0.28s var(--primary-transition-timing-function, ease);
  }
}

@media (hover: hover) {
  .project-card:has(a:not(:hover, :focus-visible)) .project-card_header_image {
    transform: translateY(0.8rem);
  }
}

/* Section Services Style */
.service-card_figure::after {
  --_box-size: 9px;
  --_box-background-color: var(--color-primary-green--lightest);
  --_box-pattern-gradient: linear-gradient(var(--_box-background-color) 0 0);
  --_box-pattern-size: var(--_box-size) var(--_box-size);
  content: "";
  position: absolute;
  pointer-events: none;
  user-select: none;
  background-repeat: no-repeat;
  inset: calc((var(--_box-size) / 2) * -1);
  background-size: var(--_box-pattern-size), var(--_box-pattern-size),
    var(--_box-pattern-size), var(--_box-pattern-size);
  background-image: var(--_box-pattern-gradient), var(--_box-pattern-gradient),
    var(--_box-pattern-gradient), var(--_box-pattern-gradient);
  background-position: left top, right top, right bottom, left bottom;
}

@media screen and (min-width: 768px) {
  .services_header_right {
    justify-items: start;
  }
  .services_grid {
    grid-template-columns: 1fr 1fr;
  }
  .service-card:is(:nth-child(4n), :nth-child(4n + 1)) {
    grid-column: span 2;
  }
}
@media screen and (min-width: 992px) {
  .services_grid {
    grid-template-columns: 0.46666666666fr 0.06666666666fr 0.46666666666fr;
  }
}

/* Section Features Style */
@media screen and (max-width: 420px) {
  .feature-card_header {
    flex-direction: column-reverse;
    gap: 0.75rem;
  }
}

/* Section Integrations Style */
@media screen and (min-width: 992px) {
  .integrations_wrapper {
    align-items: flex-end;
  }
  .integrations_header_pattern {
    height: 5rem;
  }
}

/* Section FAQ Style */
.faq-list [data-faq="listitem"] {
  border-top: 1px solid var(--color-neutral--gray-lighter);
}
.faq-card:has(.faq-toggler:focus-visible) {
  outline: auto;
}
.faq-card:not([open]) .faq-toggler_icon {
  color: var(--color-primary-green--lighter);
  background-color: var(--color-neutral--gray-lighter);
}
.faq-card[open] .faq-toggler_icon {
  color: var(--color-neutral--white);
  background-color: var(--color-primary-green--dark);
}
.faq-toggler_icon::before,
.faq-toggler_icon::after {
  content: "";
  position: absolute;
  width: clamp(0.5rem, 0.3936rem + 0.396vw, 0.75rem);
  height: 1.286px;
  border-radius: var(--sizes--rounded-pill);
  background-color: currentColor;
}
.faq-card:not([open]) .faq-toggler_icon::after {
  rotate: 90deg;
}
.faq-card[open] .faq-toggler_icon::after {
  opacity: 0;
}

@media (prefers-reduced-motion: no-preference) {
  .faq-toggler_icon {
    transition: background-color 0.2s ease;
  }
  .faq-toggler_icon::before,
  .faq-toggler_icon::after {
    transition: all 0.2s ease;
  }
}
@media screen and (min-width: 768px) {
  .faq-wrapper {
    grid-template-columns: 43% 1fr;
  }
}
@media screen and (min-width: 992px) {
  .faq-wrapper {
    grid-template-columns: 36.484375% 1fr;
  }
}

/*
=================
  Contact Page
=================
*/

/* Section Contact Banner Style */
.contact-banner_embed > div {
  min-height: clamp(32rem, 29.8447rem + 8.0198vw, 37.0625rem);
  padding-top: 100%;
}

@media screen and (min-width: 992px) {
  .contact-banner_wrapper,
  .contact-banner_right,
  .contact-banner_embed::before {
    border-image-source: linear-gradient(
      var(--color-neutral--gray-lighter) 0 0
    );
    border-image-slice: 1;
  }

  .contact-banner_wrapper {
    border-image-width: 0 1px;
    border-image-outset: 0 0 100vh;
  }

  .contact-banner_right {
    border-image-width: 0 0 0 1px;
    border-image-outset: var(--section-spacing--block) 0 100vh;
  }

  .contact-banner_embed::before {
    border-image-width: 1px 0 0;
    border-image-outset: 0 100vw 0 0;
    position: absolute;
    top: -1px;
    height: 1px;
    width: 100%;
  }

  .contact-banner_left {
    max-width: 37rem;
    padding-inline: clamp(0rem, -0.8515rem + 3.1683vw, 2rem);
  }
  .contact-banner_right {
    flex-grow: 1;
    max-width: 36.75rem;
  }
}

@media screen and (768px <= width < 992px) {
  .contact-banner_left {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}

/*
=================
  Slider Collection Page
=================
*/

/* Section Slider Collection Banner Style */
.slider-collection-banner_footer {
  --_section-line-pattern-distance: 13px;
  --_section-line-pattern-thickness: var(--sizes--decoration-border-width);
  --_section-line-pattern-area: calc(
    (
        100% -
          var(
            --_section-line-pattern-container-size,
            var(--sizes--container-1200)
          )
      ) / 2
  );
  --_section-line-pattern-gradient: #0000 0
      var(--_section-line-pattern-distance),
    var(--_section-line-pattern-color, var(--color-neutral--gray-lighter))
      var(--_section-line-pattern-distance)
      calc(
        var(--_section-line-pattern-distance) +
          var(--_section-line-pattern-thickness)
      );
  background-image: repeating-linear-gradient(
      to left,
      var(--_section-line-pattern-gradient)
    ),
    repeating-linear-gradient(to right, var(--_section-line-pattern-gradient));
  background-size: var(--_section-line-pattern-area) 100%;
  background-repeat: no-repeat;
  background-position-x: left, right;
}

.slider-collection-banner_footer .projects_grid {
  grid-auto-rows: 1fr;
}

.slider-collection-card_header::after {
  --_box-size: 7px;
  --_box-border-width-outside: 1px;
  --_box-border-color: var(--color-accent--blue-dark);
  --_box-background-color: #fff;
  --_box-pattern-gradient: linear-gradient(var(--_box-background-color) 0 0);
  --_box-pattern-size: var(--_box-size) var(--_box-size);
  content: "";
  position: absolute;
  pointer-events: none;
  user-select: none;
  background-repeat: no-repeat;
  inset: calc((var(--_box-size) / 2) * -1);
  background-size: var(--_box-pattern-size), var(--_box-pattern-size),
    var(--_box-pattern-size), var(--_box-pattern-size);
  background-image: var(--_box-pattern-gradient), var(--_box-pattern-gradient),
    var(--_box-pattern-gradient), var(--_box-pattern-gradient);
  background-position: left top, right top, right bottom, left bottom;
  filter: drop-shadow(
      min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px 0px
        var(--_box-border-color)
    )
    drop-shadow(
      0px min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px
        var(--_box-border-color)
    )
    drop-shadow(
      0px
        calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
        0px var(--_box-border-color)
    )
    drop-shadow(
      calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
        0px 0px var(--_box-border-color)
    );
}

.slider-collection-card_body:has(.category-badge:nth-of-type(3)) {
  flex-wrap: wrap-reverse;
}

@media screen and (min-width: 1300px) {
  .slider-collection-banner_footer {
    --registered-length-property-for-calculation: calc(
      (100vw - var(--sizes--container-1200)) / 2
    );
    --_calculated-unitless-value: calc(
      10000 *
        tan(atan2(var(--registered-length-property-for-calculation), 10000px))
    );
    counter-reset: section-inline-gap-width var(--_calculated-unitless-value);
  }
  .slider-collection-banner_footer::before,
  .slider-collection-banner_footer::after {
    --_hr-line-thickness: var(--sizes--decoration-border-width);
    content: counter(section-inline-gap-width);
    position: absolute;
    top: 50%;
    background-color: var(--color-accent--orange-dark);
    font-size: 0.625rem;
    padding: 0.3438rem 0.5rem;
    border-radius: var(--sizes--rounded-pill);
    color: var(--color-neutral--white);
    font-family: var(--font-family--secondary);
    letter-spacing: -0.01em;
    line-height: 1;
    border-image-source: linear-gradient(
      #0000 0 calc(50% - (var(--_hr-line-thickness) / 2)),
      var(--color-accent--orange-dark)
        calc(50% - (var(--_hr-line-thickness) / 2))
        calc(50% + (var(--_hr-line-thickness) / 2)),
      #0000 calc(50% + (var(--_hr-line-thickness) / 2))
    );
    border-image-slice: 50%;
    border-image-outset: 0 30vw;
    border-image-width: 100%;
    z-index: -1;
  }
  .slider-collection-banner_footer::before {
    left: calc(var(--_section-line-pattern-area) / 2);
    transform: translate(-50%, -50%);
  }
  .slider-collection-banner_footer::after {
    right: calc(var(--_section-line-pattern-area) / 2);
    transform: translate(50%, -50%);
  }
}

/*
=================
  Services Page
=================
*/

/* Section Services Banner Style */
.services-banner_right_top {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='8' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23DAE9DD'/%3E%3C/svg%3E");
}

@media screen and (min-width: 992px) {
  .services-banner_wrapper {
    align-items: center;
  }
  .services-banner_right {
    flex-basis: clamp(25rem, 11.9911rem + 20.9821vw, 30.875rem);
    border-inline: 1px solid var(--color-neutral--gray-lighter);
  }
}

/* Section Process Style */
.process_grid {
  box-shadow: inset 0 0 0 var(--sizes--decoration-border-width)
    var(--color-neutral--gray-lighter);
}

.process-card {
  box-shadow: inset var(--sizes--decoration-border-width-inverse)
    var(--sizes--decoration-border-width-inverse) 0 0
    var(--color-neutral--gray-lighter);
}

.process-card::after {
  --_box-size: 7px;
  --_box-border-width-outside: 2px;
  --_box-border-color: var(--color-neutral--white);
  --_box-background-color: var(--color-neutral--gray-lighter);
  --_box-pattern-gradient: linear-gradient(var(--_box-background-color) 0 0);
  --_box-pattern-size: var(--_box-size) var(--_box-size);
  content: "";
  position: absolute;
  pointer-events: none;
  user-select: none;
  background-repeat: no-repeat;
  inset: calc((var(--_box-size) / 2) * -1);
  background-size: var(--_box-pattern-size), var(--_box-pattern-size),
    var(--_box-pattern-size), var(--_box-pattern-size);
  background-image: var(--_box-pattern-gradient), var(--_box-pattern-gradient),
    var(--_box-pattern-gradient), var(--_box-pattern-gradient);
  background-position: left top, right top, right bottom, left bottom;
  filter: drop-shadow(
      min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px 0px
        var(--_box-border-color)
    )
    drop-shadow(
      0px min(var(--_box-size), abs(var(--_box-border-width-outside))) 0px
        var(--_box-border-color)
    )
    drop-shadow(
      0px
        calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
        0px var(--_box-border-color)
    )
    drop-shadow(
      calc(min(var(--_box-size), abs(var(--_box-border-width-outside))) * -1)
        0px 0px var(--_box-border-color)
    );
}

@media screen and (max-width: 991.98px) {
  .process_bottom {
    --_pattern-distance: 0;
  }
  .process_grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.9375rem), 1fr));
  }
}

@media screen and (min-width: 992px) {
  .process_bottom {
    --_pattern-distance: 10px;
    padding-inline: 40px;
    box-shadow: inset var(--sizes--decoration-border-width-inverse)
      var(--sizes--decoration-border-width-inverse) 0 0
      var(--color-neutral--gray-lighter);
    border-top: var(--sizes--decoration-border-width) solid
      var(--color-neutral--gray-lighter);
  }
  .process_grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
  .process_grid,
  .process-card {
    background-color: var(--color-neutral--white);
  }
  .process-card {
    gap: 0.75rem;
  }
  .process-card:first-of-type {
    grid-row: 1/-1;
    align-content: space-between;
  }
  .process-card:not(:first-of-type) {
    grid-template-columns: auto 1fr;
    padding: clamp(1.5rem, -0.1607rem + 2.6786vw, 2.25rem)
      clamp(1.5rem, -0.7143rem + 3.5714vw, 2.5rem);
  }
  .process-card:not(:first-of-type) .process-card_icon {
    width: 1.5rem;
    margin-top: 2px;
  }
}

/* .navbar_brand_image {
  animation: preload 3s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
@keyframes preload {
  0%,
  45% {
    position: relative;
    transform: translate(29vw, 45vh) scale(4);
    z-index: 1000000;
    background-color: var(--color-surface--hero-bg);
    box-shadow: 0 0 0 100vw var(--color-surface--hero-bg);
  }
  70% {
    position: relative;
    z-index: 1000000;
    background-color: var(--color-surface--hero-bg);
    box-shadow: 0 0 0 100vw var(--color-surface--hero-bg);
  }
}
*/
