@import url("font.css");
@import url("header.css");
@import url("footer.css");

:root {
  --color-white: white;
  --color-black: black;

  --color-primary: #000;
  --color-secondary: #278ef5;
  --color-tertiary: #f58e27;
}

.color-white {
  color: var(--color-white);
}

.color-black {
  color: var(--color-black);
}

.color-primary {
  color: var(--color-primary);
}

.color-secondary {
  color: var(--color-secondary);
}

.color-tertiary {
  color: var(--color-tertiary);
}

/* Background utilities */
.bg_color-primary {
  background-color: var(--color-primary);
}

.bg_color-secondary {
  background-color: var(--color-secondary);
}

.bg_color-tertiary {
  background-color: var(--color-tertiary);
}

button {
  background-color: transparent;
  border: none;
}

/* Button defaults */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border: 1px solid transparent;
  border-radius: 0;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-24);
  line-height: var(--line-height-24);
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition:
    color 0.25s ease,
    background-color 0.25s ease,
    border-color 0.25s ease;
}

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

.btn.primary:hover,
.btn.primary:focus {
  color: var(--color-white);
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
}

.btn.secondary {
  color: var(--color-primary);
  background-color: transparent;
  border-color: var(--color-primary);
}

.btn.secondary:hover,
.btn.secondary:focus {
  color: var(--color-white);
  background-color: var(--color-primary);
  border-color: var(--color-primary);
}

.btn:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

figure {
  margin: 0 0 0 !important;
}

/*
******************************
default settings DO NOT change
******************************
*/

.fade_in_element {
  opacity: 0;
  transform: translate3d(0, 80px, 0) scale(0.985);
  backface-visibility: hidden;
  transform-style: preserve-3d;
  will-change: transform, opacity;
  transition:
    transform 1.8s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 1.6s ease-out;
}

.fade_in_element.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  will-change: auto;
}

@media (max-width: 768px) {
  .fade_in_element {
    transform: translate3d(0, 45px, 0) scale3d(0.99, 0.99, 1);
    transition-duration: 1.1s;
  }
}

@media (prefers-reduced-motion: reduce) {
  .fade_in_element {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.block-my-none {
  --block-padding-top: 0rem;
  --block-padding-bottom: 0rem;
}

.block-my-default {
  --block-padding-top: 2.1875rem;
  --block-padding-bottom: 2.1875rem;
}

.block-my-80-0 {
  --block-padding-top: 2.1875rem;
  --block-padding-bottom: 0rem;
}

.block-my-0-80 {
  --block-padding-top: 0rem;
  --block-padding-bottom: 2.1875rem;
}

.padding-my-none {
  --extra-padding-top: 0rem;
  --extra-padding-bottom: 0rem;
}

.padding-my-default {
  --extra-padding-top: 2.1875rem;
  --extra-padding-bottom: 2.1875rem;
}

.padding-my-80-0 {
  --extra-padding-top: 2.1875rem;
  --extra-padding-bottom: 0rem;
}

.padding-my-0-80 {
  --extra-padding-top: 0rem;
  --extra-padding-bottom: 2.1875rem;
}

@media (min-width: 768px) {
  .block-my-default {
    --block-padding-top: 4.375rem;
    --block-padding-bottom: 4.375rem;
  }

  .block-my-80-0 {
    --block-padding-top: 4.375rem;
    --block-padding-bottom: 0rem;
  }

  .block-my-0-80 {
    --block-padding-top: 0rem;
    --block-padding-bottom: 4.375rem;
  }

  .padding-my-default {
    --extra-padding-top: 4.375rem;
    --extra-padding-bottom: 4.375rem;
  }

  .padding-my-80-0 {
    --extra-padding-top: 4.375rem;
    --extra-padding-bottom: 0rem;
  }

  .padding-my-0-80 {
    --extra-padding-top: 0rem;
    --extra-padding-bottom: 4.375rem;
  }
}

@media (min-width: 1920px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1720px;
  }
}

@media (min-width: 1720px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1520px)/2);
  }
}

.dw_padding_left {
  padding-left: max(0px, (100vw - 1320px)/2);
}

.dw_padding_right {
  padding-right: max(0px, (100vw - 1320px)/2);
}

.dw_margin_left {
  margin-left: max(0px, (100vw - 1320px)/2);
}

.dw_margin_right {
  margin-right: max(0px, (100vw - 1320px)/2);
}

.dw_margin_left_child .has_content:first-child {
  padding-left: max(0px, (100vw - 1320px)/2);
}

.dw_margin_right_child .has_content:last-child {
  margin-right: max(0px, (100vw - 1320px)/2);
}

@media only screen and (min-width: 992px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 960px)/2);
  }
}

@media only screen and (min-width: 1140px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 960px)/2);
  }
}

@media only screen and (min-width: 1200px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1140px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 1140px)/2);
  }
}

@media only screen and (min-width: 1400px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1320px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 1320px)/2);
  }
}

@media only screen and (min-width: 1920px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1720px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 1720px)/2);
  }
}

@media only screen and (max-width: 992px) {
  .dw_padding_left {
    padding-left: 24px;
    padding-right: 24px;
  }

  .dw_padding_right {
    padding-right: 24px;
    padding-left: 24px;
  }

  .dw_margin_left {
    margin-left: 24px;
  }

  .dw_margin_right {
    margin-right: 24px;
  }
}

@media only screen and (min-width: 1920px) {
  .offcanvas-body.dw_padding_left {
    padding-left: 48px;
  }
}

.layout-block {
  position: relative;
}

.layout-block.has-effect-parallax,
.layout-block.has-effect-parallax-up {
  background-size: cover !important;
  background-repeat: no-repeat !important;
  will-change: background-position;
}

.layout-block.has-effect-parallax {
  background-position: center var(--parallax-position, 50%) !important;
}

.layout-block.has-effect-parallax-up {
  background-position: center var(--parallax-position, 50%) !important;
}
.layout-block.has-effect-stack {
  position: sticky;
  top: 0;
  min-height: 100vh;
  background-color: #fff;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  transform: scale(var(--stack-scale, 1));
  transform-origin: center top;
  will-change: transform;
}
