*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert
}

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

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none
}

a,
button {
  cursor: revert
}

ol,
ul,
menu,
summary {
  list-style: none
}

ol {
  counter-reset: revert
}

table {
  border-collapse: collapse
}

input,
textarea {
  -webkit-user-select: auto
}

textarea {
  white-space: revert
}

meter {
  -webkit-appearance: revert;
  appearance: revert
}

:where(pre) {
  all: revert;
  box-sizing: border-box
}

::placeholder {
  color: unset
}

:where([hidden]) {
  display: none
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto
}

:where([draggable=true]) {
  -webkit-user-drag: element
}

:where(dialog:modal) {
  all: revert;
  box-sizing: border-box
}

::-webkit-details-marker {
  display: none
}

[x-cloak] {
  display: none !important
}

body {
  min-height: 100hv;
  margin: auto;
  font-family: "Scandia", system-ui, sans-serif;
  font-weight: normal;
  background-color: #f2f0ef;
  background-size: 100%;
  color: #000;
  scroll-behavior: smooth;
  overflow-x: hidden
}

body.mobile-menu-on {
  margin-top: 16vh;
  overflow-y: hidden
}

@media screen and (min-width: 639px) {
  body {
    min-width: 639px
  }
}

body.figma-visible {
  background-image: url(../img/desktop-bg-1920.png);
  background-repeat: no-repeat
}

@media screen and (max-width: 639px) {
  body.figma-visible {
    background-image: url(../img/iphone-bg-375.png)
  }
}

.button,
.button-submit {
  padding: .6rem 2.2rem;
  border-radius: 100px;
  font-weight: 700;
  font-size: clamp(15px, 1vw, 24px);
  letter-spacing: .5;
  background-color: #000;
  fill: #000;
  color: #fff;
  text-align: center;
  line-height: 1;
  transition: background-color 120ms ease-in;
  user-select: none;
  cursor: pointer;
  white-space: nowrap
}

@media screen and (max-width: 639px) {

  .button,
  .button-submit {
    padding: 12px 36px
  }
}

.button:hover,
.button-submit:hover {
  background-color: hsl(0, 0%, 15%);
  fill: #000
}

.button.button--blue,
.button-submit.button--blue {
  background-color: #03f
}

.button.button--blue:hover,
.button-submit.button--blue:hover {
  background-color: hsl(228, 100%, 65%)
}

.button.button--orange,
.button-submit.button--orange {
  background-color: #ff8000
}

.button.button--orange:hover,
.button-submit.button--orange:hover {
  background-color: rgb(255, 166.1, 76.5)
}

.svg-button {
  transition: color 250ms ease-in;
  color: #03f
}

.svg-button:hover {
  color: hsl(228, 100%, 65%)
}

.text-on-path {
  position: absolute;
  user-select: none;
  pointer-events: none
}

#text-on-path-1-desktop {
  top: -48px
}

#text-on-path-2-desktop {
  top: -140px;
  left: 0
}

#text-on-path-1-desktop,
#text-on-path-2-desktop {
  transform: scale(1.15)
}

@media screen and (max-width: 639px) {

  #text-on-path-1-desktop,
  #text-on-path-2-desktop {
    display: none
  }
}

#text-on-path-0-mobile,
#text-on-path-1-mobile,
#text-on-path-2-mobile {
  transform: scale(1.25);
  display: none
}

@media screen and (max-width: 639px) {

  #text-on-path-0-mobile,
  #text-on-path-1-mobile,
  #text-on-path-2-mobile {
    display: block
  }
}

#text-on-path-0-mobile {
  bottom: -5px;
  z-index: 1;
  transform: scale(1.15) !important
}

#text-on-path-1-mobile {
  top: -7vh;
  left: 24px
}

#text-on-path-2-mobile {
  top: 30px;
  transform: scale(1.45)
}

@media screen and (min-width: 639px) {
  .ml-5p {
    margin-left: 5%
  }
}

@media screen and (min-width: 639px) {
  .ml-10p {
    margin-left: 10%
  }
}

@media screen and (min-width: 639px) {
  .ml-15p {
    margin-left: 15%
  }
}

@media screen and (min-width: 639px) {
  .ml-20p {
    margin-left: 20%
  }
}

@media screen and (min-width: 639px) {
  .ml-25p {
    margin-left: 25%
  }
}

@media screen and (min-width: 639px) {
  .ml-30p {
    margin-left: 30%
  }
}

@media screen and (min-width: 639px) {
  .ml-35p {
    margin-left: 35%
  }
}

@media screen and (min-width: 639px) {
  .ml-40p {
    margin-left: 40%
  }
}

@media screen and (min-width: 639px) {
  .ml-45p {
    margin-left: 45%
  }
}

@media screen and (min-width: 639px) {
  .ml-50p {
    margin-left: 50%
  }
}

@media screen and (min-width: 639px) {
  .ml-55p {
    margin-left: 55%
  }
}

@media screen and (min-width: 639px) {
  .ml-60p {
    margin-left: 60%
  }
}

@media screen and (min-width: 639px) {
  .ml-65p {
    margin-left: 65%
  }
}

@media screen and (min-width: 639px) {
  .ml-70p {
    margin-left: 70%
  }
}

@media screen and (min-width: 639px) {
  .ml-75p {
    margin-left: 75%
  }
}

@media screen and (min-width: 639px) {
  .ml-80p {
    margin-left: 80%
  }
}

@media screen and (min-width: 639px) {
  .ml-85p {
    margin-left: 85%
  }
}

@media screen and (min-width: 639px) {
  .ml-90p {
    margin-left: 90%
  }
}

@media screen and (min-width: 639px) {
  .ml-95p {
    margin-left: 95%
  }
}

@media screen and (min-width: 639px) {
  .ml-100p {
    margin-left: 100%
  }
}

@media screen and (min-width: 639px) {
  .ml-4 {
    margin-left: 4px
  }
}

@media screen and (min-width: 639px) {
  .ml-8 {
    margin-left: 8px
  }
}

@media screen and (min-width: 639px) {
  .ml-12 {
    margin-left: 12px
  }
}

@media screen and (min-width: 639px) {
  .ml-14 {
    margin-left: 14px
  }
}

@media screen and (min-width: 639px) {
  .ml-15 {
    margin-left: 15px
  }
}

@media screen and (min-width: 639px) {
  .ml-16 {
    margin-left: 16px
  }
}

@media screen and (min-width: 639px) {
  .ml-18 {
    margin-left: 18px
  }
}

@media screen and (min-width: 639px) {
  .ml-20 {
    margin-left: 20px
  }
}

@media screen and (min-width: 639px) {
  .ml-22 {
    margin-left: 22px
  }
}

@media screen and (min-width: 639px) {
  .ml-24 {
    margin-left: 24px
  }
}

@media screen and (min-width: 639px) {
  .ml-28 {
    margin-left: 28px
  }
}

@media screen and (min-width: 639px) {
  .ml-32 {
    margin-left: 32px
  }
}

@media screen and (min-width: 639px) {
  .ml-36 {
    margin-left: 36px
  }
}

@media screen and (min-width: 639px) {
  .ml-42 {
    margin-left: 42px
  }
}

@media screen and (min-width: 639px) {
  .ml-48 {
    margin-left: 48px
  }
}

@media screen and (min-width: 639px) {
  .ml-56 {
    margin-left: 56px
  }
}

@media screen and (min-width: 639px) {
  .ml-64 {
    margin-left: 64px
  }
}

@media screen and (min-width: 639px) {
  .ml-72 {
    margin-left: 72px
  }
}

@media screen and (min-width: 639px) {
  .ml-96 {
    margin-left: 96px
  }
}

@media screen and (min-width: 639px) {
  .ml-128 {
    margin-left: 128px
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-5p {
    margin-left: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-10p {
    margin-left: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-15p {
    margin-left: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-20p {
    margin-left: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-25p {
    margin-left: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-30p {
    margin-left: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-35p {
    margin-left: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-40p {
    margin-left: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-45p {
    margin-left: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-50p {
    margin-left: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-55p {
    margin-left: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-60p {
    margin-left: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-65p {
    margin-left: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-70p {
    margin-left: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-75p {
    margin-left: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-80p {
    margin-left: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-85p {
    margin-left: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-90p {
    margin-left: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-95p {
    margin-left: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-100p {
    margin-left: 100% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-4 {
    margin-left: 4px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-8 {
    margin-left: 8px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-12 {
    margin-left: 12px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-14 {
    margin-left: 14px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-15 {
    margin-left: 15px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-16 {
    margin-left: 16px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-18 {
    margin-left: 18px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-20 {
    margin-left: 20px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-22 {
    margin-left: 22px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-24 {
    margin-left: 24px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-28 {
    margin-left: 28px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-32 {
    margin-left: 32px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-36 {
    margin-left: 36px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-42 {
    margin-left: 42px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-48 {
    margin-left: 48px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-56 {
    margin-left: 56px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-64 {
    margin-left: 64px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-72 {
    margin-left: 72px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-96 {
    margin-left: 96px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-ml-128 {
    margin-left: 128px !important
  }
}

@media screen and (min-width: 639px) {
  .mr-5p {
    margin-right: 5%
  }
}

@media screen and (min-width: 639px) {
  .mr-10p {
    margin-right: 10%
  }
}

@media screen and (min-width: 639px) {
  .mr-15p {
    margin-right: 15%
  }
}

@media screen and (min-width: 639px) {
  .mr-20p {
    margin-right: 20%
  }
}

@media screen and (min-width: 639px) {
  .mr-25p {
    margin-right: 25%
  }
}

@media screen and (min-width: 639px) {
  .mr-30p {
    margin-right: 30%
  }
}

@media screen and (min-width: 639px) {
  .mr-35p {
    margin-right: 35%
  }
}

@media screen and (min-width: 639px) {
  .mr-40p {
    margin-right: 40%
  }
}

@media screen and (min-width: 639px) {
  .mr-45p {
    margin-right: 45%
  }
}

@media screen and (min-width: 639px) {
  .mr-50p {
    margin-right: 50%
  }
}

@media screen and (min-width: 639px) {
  .mr-55p {
    margin-right: 55%
  }
}

@media screen and (min-width: 639px) {
  .mr-60p {
    margin-right: 60%
  }
}

@media screen and (min-width: 639px) {
  .mr-65p {
    margin-right: 65%
  }
}

@media screen and (min-width: 639px) {
  .mr-70p {
    margin-right: 70%
  }
}

@media screen and (min-width: 639px) {
  .mr-75p {
    margin-right: 75%
  }
}

@media screen and (min-width: 639px) {
  .mr-80p {
    margin-right: 80%
  }
}

@media screen and (min-width: 639px) {
  .mr-85p {
    margin-right: 85%
  }
}

@media screen and (min-width: 639px) {
  .mr-90p {
    margin-right: 90%
  }
}

@media screen and (min-width: 639px) {
  .mr-95p {
    margin-right: 95%
  }
}

@media screen and (min-width: 639px) {
  .mr-100p {
    margin-right: 100%
  }
}

@media screen and (min-width: 639px) {
  .mr-4 {
    margin-right: 4px
  }
}

@media screen and (min-width: 639px) {
  .mr-8 {
    margin-right: 8px
  }
}

@media screen and (min-width: 639px) {
  .mr-12 {
    margin-right: 12px
  }
}

@media screen and (min-width: 639px) {
  .mr-14 {
    margin-right: 14px
  }
}

@media screen and (min-width: 639px) {
  .mr-15 {
    margin-right: 15px
  }
}

@media screen and (min-width: 639px) {
  .mr-16 {
    margin-right: 16px
  }
}

@media screen and (min-width: 639px) {
  .mr-18 {
    margin-right: 18px
  }
}

@media screen and (min-width: 639px) {
  .mr-20 {
    margin-right: 20px
  }
}

@media screen and (min-width: 639px) {
  .mr-22 {
    margin-right: 22px
  }
}

@media screen and (min-width: 639px) {
  .mr-24 {
    margin-right: 24px
  }
}

@media screen and (min-width: 639px) {
  .mr-28 {
    margin-right: 28px
  }
}

@media screen and (min-width: 639px) {
  .mr-32 {
    margin-right: 32px
  }
}

@media screen and (min-width: 639px) {
  .mr-36 {
    margin-right: 36px
  }
}

@media screen and (min-width: 639px) {
  .mr-42 {
    margin-right: 42px
  }
}

@media screen and (min-width: 639px) {
  .mr-48 {
    margin-right: 48px
  }
}

@media screen and (min-width: 639px) {
  .mr-56 {
    margin-right: 56px
  }
}

@media screen and (min-width: 639px) {
  .mr-64 {
    margin-right: 64px
  }
}

@media screen and (min-width: 639px) {
  .mr-72 {
    margin-right: 72px
  }
}

@media screen and (min-width: 639px) {
  .mr-96 {
    margin-right: 96px
  }
}

@media screen and (min-width: 639px) {
  .mr-128 {
    margin-right: 128px
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-5p {
    margin-right: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-10p {
    margin-right: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-15p {
    margin-right: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-20p {
    margin-right: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-25p {
    margin-right: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-30p {
    margin-right: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-35p {
    margin-right: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-40p {
    margin-right: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-45p {
    margin-right: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-50p {
    margin-right: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-55p {
    margin-right: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-60p {
    margin-right: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-65p {
    margin-right: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-70p {
    margin-right: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-75p {
    margin-right: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-80p {
    margin-right: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-85p {
    margin-right: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-90p {
    margin-right: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-95p {
    margin-right: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-100p {
    margin-right: 100% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-4 {
    margin-right: 4px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-8 {
    margin-right: 8px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-12 {
    margin-right: 12px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-14 {
    margin-right: 14px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-15 {
    margin-right: 15px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-16 {
    margin-right: 16px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-18 {
    margin-right: 18px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-20 {
    margin-right: 20px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-22 {
    margin-right: 22px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-24 {
    margin-right: 24px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-28 {
    margin-right: 28px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-32 {
    margin-right: 32px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-36 {
    margin-right: 36px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-42 {
    margin-right: 42px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-48 {
    margin-right: 48px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-56 {
    margin-right: 56px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-64 {
    margin-right: 64px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-72 {
    margin-right: 72px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-96 {
    margin-right: 96px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mr-128 {
    margin-right: 128px !important
  }
}

@media screen and (min-width: 639px) {
  .mt-5p {
    margin-top: 5%
  }
}

@media screen and (min-width: 639px) {
  .mt-10p {
    margin-top: 10%
  }
}

@media screen and (min-width: 639px) {
  .mt-15p {
    margin-top: 15%
  }
}

@media screen and (min-width: 639px) {
  .mt-20p {
    margin-top: 20%
  }
}

@media screen and (min-width: 639px) {
  .mt-25p {
    margin-top: 25%
  }
}

@media screen and (min-width: 639px) {
  .mt-30p {
    margin-top: 30%
  }
}

@media screen and (min-width: 639px) {
  .mt-35p {
    margin-top: 35%
  }
}

@media screen and (min-width: 639px) {
  .mt-40p {
    margin-top: 40%
  }
}

@media screen and (min-width: 639px) {
  .mt-45p {
    margin-top: 45%
  }
}

@media screen and (min-width: 639px) {
  .mt-50p {
    margin-top: 50%
  }
}

@media screen and (min-width: 639px) {
  .mt-55p {
    margin-top: 55%
  }
}

@media screen and (min-width: 639px) {
  .mt-60p {
    margin-top: 60%
  }
}

@media screen and (min-width: 639px) {
  .mt-65p {
    margin-top: 65%
  }
}

@media screen and (min-width: 639px) {
  .mt-70p {
    margin-top: 70%
  }
}

@media screen and (min-width: 639px) {
  .mt-75p {
    margin-top: 75%
  }
}

@media screen and (min-width: 639px) {
  .mt-80p {
    margin-top: 80%
  }
}

@media screen and (min-width: 639px) {
  .mt-85p {
    margin-top: 85%
  }
}

@media screen and (min-width: 639px) {
  .mt-90p {
    margin-top: 90%
  }
}

@media screen and (min-width: 639px) {
  .mt-95p {
    margin-top: 95%
  }
}

@media screen and (min-width: 639px) {
  .mt-100p {
    margin-top: 100%
  }
}

@media screen and (min-width: 639px) {
  .mt-4 {
    margin-top: 4px
  }
}

@media screen and (min-width: 639px) {
  .mt-8 {
    margin-top: 8px
  }
}

@media screen and (min-width: 639px) {
  .mt-12 {
    margin-top: 12px
  }
}

@media screen and (min-width: 639px) {
  .mt-14 {
    margin-top: 14px
  }
}

@media screen and (min-width: 639px) {
  .mt-15 {
    margin-top: 15px
  }
}

@media screen and (min-width: 639px) {
  .mt-16 {
    margin-top: 16px
  }
}

@media screen and (min-width: 639px) {
  .mt-18 {
    margin-top: 18px
  }
}

@media screen and (min-width: 639px) {
  .mt-20 {
    margin-top: 20px
  }
}

@media screen and (min-width: 639px) {
  .mt-22 {
    margin-top: 22px
  }
}

@media screen and (min-width: 639px) {
  .mt-24 {
    margin-top: 24px
  }
}

@media screen and (min-width: 639px) {
  .mt-28 {
    margin-top: 28px
  }
}

@media screen and (min-width: 639px) {
  .mt-32 {
    margin-top: 32px
  }
}

@media screen and (min-width: 639px) {
  .mt-36 {
    margin-top: 36px
  }
}

@media screen and (min-width: 639px) {
  .mt-42 {
    margin-top: 42px
  }
}

@media screen and (min-width: 639px) {
  .mt-48 {
    margin-top: 48px
  }
}

@media screen and (min-width: 639px) {
  .mt-56 {
    margin-top: 56px
  }
}

@media screen and (min-width: 639px) {
  .mt-64 {
    margin-top: 64px
  }
}

@media screen and (min-width: 639px) {
  .mt-72 {
    margin-top: 72px
  }
}

@media screen and (min-width: 639px) {
  .mt-96 {
    margin-top: 96px
  }
}

@media screen and (min-width: 639px) {
  .mt-128 {
    margin-top: 128px
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-5p {
    margin-top: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-10p {
    margin-top: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-15p {
    margin-top: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-20p {
    margin-top: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-25p {
    margin-top: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-30p {
    margin-top: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-35p {
    margin-top: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-40p {
    margin-top: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-45p {
    margin-top: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-50p {
    margin-top: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-55p {
    margin-top: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-60p {
    margin-top: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-65p {
    margin-top: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-70p {
    margin-top: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-75p {
    margin-top: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-80p {
    margin-top: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-85p {
    margin-top: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-90p {
    margin-top: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-95p {
    margin-top: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-100p {
    margin-top: 100% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-4 {
    margin-top: 4px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-8 {
    margin-top: 8px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-12 {
    margin-top: 12px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-14 {
    margin-top: 14px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-15 {
    margin-top: 15px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-16 {
    margin-top: 16px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-18 {
    margin-top: 18px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-20 {
    margin-top: 20px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-22 {
    margin-top: 22px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-24 {
    margin-top: 24px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-28 {
    margin-top: 28px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-32 {
    margin-top: 32px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-36 {
    margin-top: 36px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-42 {
    margin-top: 42px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-48 {
    margin-top: 48px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-56 {
    margin-top: 56px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-64 {
    margin-top: 64px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-72 {
    margin-top: 72px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-96 {
    margin-top: 96px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mt-128 {
    margin-top: 128px !important
  }
}

@media screen and (min-width: 639px) {
  .mb-5p {
    margin-bottom: 5%
  }
}

@media screen and (min-width: 639px) {
  .mb-10p {
    margin-bottom: 10%
  }
}

@media screen and (min-width: 639px) {
  .mb-15p {
    margin-bottom: 15%
  }
}

@media screen and (min-width: 639px) {
  .mb-20p {
    margin-bottom: 20%
  }
}

@media screen and (min-width: 639px) {
  .mb-25p {
    margin-bottom: 25%
  }
}

@media screen and (min-width: 639px) {
  .mb-30p {
    margin-bottom: 30%
  }
}

@media screen and (min-width: 639px) {
  .mb-35p {
    margin-bottom: 35%
  }
}

@media screen and (min-width: 639px) {
  .mb-40p {
    margin-bottom: 40%
  }
}

@media screen and (min-width: 639px) {
  .mb-45p {
    margin-bottom: 45%
  }
}

@media screen and (min-width: 639px) {
  .mb-50p {
    margin-bottom: 50%
  }
}

@media screen and (min-width: 639px) {
  .mb-55p {
    margin-bottom: 55%
  }
}

@media screen and (min-width: 639px) {
  .mb-60p {
    margin-bottom: 60%
  }
}

@media screen and (min-width: 639px) {
  .mb-65p {
    margin-bottom: 65%
  }
}

@media screen and (min-width: 639px) {
  .mb-70p {
    margin-bottom: 70%
  }
}

@media screen and (min-width: 639px) {
  .mb-75p {
    margin-bottom: 75%
  }
}

@media screen and (min-width: 639px) {
  .mb-80p {
    margin-bottom: 80%
  }
}

@media screen and (min-width: 639px) {
  .mb-85p {
    margin-bottom: 85%
  }
}

@media screen and (min-width: 639px) {
  .mb-90p {
    margin-bottom: 90%
  }
}

@media screen and (min-width: 639px) {
  .mb-95p {
    margin-bottom: 95%
  }
}

@media screen and (min-width: 639px) {
  .mb-100p {
    margin-bottom: 100%
  }
}

@media screen and (min-width: 639px) {
  .mb-4 {
    margin-bottom: 4px
  }
}

@media screen and (min-width: 639px) {
  .mb-8 {
    margin-bottom: 8px
  }
}

@media screen and (min-width: 639px) {
  .mb-12 {
    margin-bottom: 12px
  }
}

@media screen and (min-width: 639px) {
  .mb-14 {
    margin-bottom: 14px
  }
}

@media screen and (min-width: 639px) {
  .mb-15 {
    margin-bottom: 15px
  }
}

@media screen and (min-width: 639px) {
  .mb-16 {
    margin-bottom: 16px
  }
}

@media screen and (min-width: 639px) {
  .mb-18 {
    margin-bottom: 18px
  }
}

@media screen and (min-width: 639px) {
  .mb-20 {
    margin-bottom: 20px
  }
}

@media screen and (min-width: 639px) {
  .mb-22 {
    margin-bottom: 22px
  }
}

@media screen and (min-width: 639px) {
  .mb-24 {
    margin-bottom: 24px
  }
}

@media screen and (min-width: 639px) {
  .mb-28 {
    margin-bottom: 28px
  }
}

@media screen and (min-width: 639px) {
  .mb-32 {
    margin-bottom: 32px
  }
}

@media screen and (min-width: 639px) {
  .mb-36 {
    margin-bottom: 36px
  }
}

@media screen and (min-width: 639px) {
  .mb-42 {
    margin-bottom: 42px
  }
}

@media screen and (min-width: 639px) {
  .mb-48 {
    margin-bottom: 48px
  }
}

@media screen and (min-width: 639px) {
  .mb-56 {
    margin-bottom: 56px
  }
}

@media screen and (min-width: 639px) {
  .mb-64 {
    margin-bottom: 64px
  }
}

@media screen and (min-width: 639px) {
  .mb-72 {
    margin-bottom: 72px
  }
}

@media screen and (min-width: 639px) {
  .mb-96 {
    margin-bottom: 96px
  }
}

@media screen and (min-width: 639px) {
  .mb-128 {
    margin-bottom: 128px
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-5p {
    margin-bottom: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-10p {
    margin-bottom: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-15p {
    margin-bottom: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-20p {
    margin-bottom: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-25p {
    margin-bottom: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-30p {
    margin-bottom: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-35p {
    margin-bottom: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-40p {
    margin-bottom: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-45p {
    margin-bottom: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-50p {
    margin-bottom: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-55p {
    margin-bottom: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-60p {
    margin-bottom: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-65p {
    margin-bottom: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-70p {
    margin-bottom: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-75p {
    margin-bottom: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-80p {
    margin-bottom: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-85p {
    margin-bottom: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-90p {
    margin-bottom: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-95p {
    margin-bottom: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-100p {
    margin-bottom: 100% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-4 {
    margin-bottom: 4px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-8 {
    margin-bottom: 8px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-12 {
    margin-bottom: 12px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-14 {
    margin-bottom: 14px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-15 {
    margin-bottom: 15px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-16 {
    margin-bottom: 16px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-18 {
    margin-bottom: 18px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-20 {
    margin-bottom: 20px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-22 {
    margin-bottom: 22px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-24 {
    margin-bottom: 24px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-28 {
    margin-bottom: 28px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-32 {
    margin-bottom: 32px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-36 {
    margin-bottom: 36px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-42 {
    margin-bottom: 42px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-48 {
    margin-bottom: 48px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-56 {
    margin-bottom: 56px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-64 {
    margin-bottom: 64px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-72 {
    margin-bottom: 72px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-96 {
    margin-bottom: 96px !important
  }
}

@media screen and (max-width: 639px) {
  .mob-mb-128 {
    margin-bottom: 128px !important
  }
}

@media screen and (min-width: 639px) {
  .w-5p {
    width: 5%
  }
}

@media screen and (min-width: 639px) {
  .w-10p {
    width: 10%
  }
}

@media screen and (min-width: 639px) {
  .w-15p {
    width: 15%
  }
}

@media screen and (min-width: 639px) {
  .w-20p {
    width: 20%
  }
}

@media screen and (min-width: 639px) {
  .w-25p {
    width: 25%
  }
}

@media screen and (min-width: 639px) {
  .w-30p {
    width: 30%
  }
}

@media screen and (min-width: 639px) {
  .w-35p {
    width: 35%
  }
}

@media screen and (min-width: 639px) {
  .w-40p {
    width: 40%
  }
}

@media screen and (min-width: 639px) {
  .w-45p {
    width: 45%
  }
}

@media screen and (min-width: 639px) {
  .w-50p {
    width: 50%
  }
}

@media screen and (min-width: 639px) {
  .w-55p {
    width: 55%
  }
}

@media screen and (min-width: 639px) {
  .w-60p {
    width: 60%
  }
}

@media screen and (min-width: 639px) {
  .w-65p {
    width: 65%
  }
}

@media screen and (min-width: 639px) {
  .w-70p {
    width: 70%
  }
}

@media screen and (min-width: 639px) {
  .w-75p {
    width: 75%
  }
}

@media screen and (min-width: 639px) {
  .w-80p {
    width: 80%
  }
}

@media screen and (min-width: 639px) {
  .w-85p {
    width: 85%
  }
}

@media screen and (min-width: 639px) {
  .w-90p {
    width: 90%
  }
}

@media screen and (min-width: 639px) {
  .w-95p {
    width: 95%
  }
}

@media screen and (min-width: 639px) {
  .w-100p {
    width: 100%
  }
}

@media screen and (max-width: 639px) {
  .mob-w-5p {
    width: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-10p {
    width: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-15p {
    width: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-20p {
    width: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-25p {
    width: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-30p {
    width: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-35p {
    width: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-40p {
    width: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-45p {
    width: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-50p {
    width: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-55p {
    width: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-60p {
    width: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-65p {
    width: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-70p {
    width: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-75p {
    width: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-80p {
    width: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-85p {
    width: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-90p {
    width: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-95p {
    width: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-w-100p {
    width: 100% !important
  }
}

@media screen and (min-width: 639px) {
  .minw-5p {
    min-width: 5%
  }
}

@media screen and (min-width: 639px) {
  .minw-10p {
    min-width: 10%
  }
}

@media screen and (min-width: 639px) {
  .minw-15p {
    min-width: 15%
  }
}

@media screen and (min-width: 639px) {
  .minw-20p {
    min-width: 20%
  }
}

@media screen and (min-width: 639px) {
  .minw-25p {
    min-width: 25%
  }
}

@media screen and (min-width: 639px) {
  .minw-30p {
    min-width: 30%
  }
}

@media screen and (min-width: 639px) {
  .minw-35p {
    min-width: 35%
  }
}

@media screen and (min-width: 639px) {
  .minw-40p {
    min-width: 40%
  }
}

@media screen and (min-width: 639px) {
  .minw-45p {
    min-width: 45%
  }
}

@media screen and (min-width: 639px) {
  .minw-50p {
    min-width: 50%
  }
}

@media screen and (min-width: 639px) {
  .minw-55p {
    min-width: 55%
  }
}

@media screen and (min-width: 639px) {
  .minw-60p {
    min-width: 60%
  }
}

@media screen and (min-width: 639px) {
  .minw-65p {
    min-width: 65%
  }
}

@media screen and (min-width: 639px) {
  .minw-70p {
    min-width: 70%
  }
}

@media screen and (min-width: 639px) {
  .minw-75p {
    min-width: 75%
  }
}

@media screen and (min-width: 639px) {
  .minw-80p {
    min-width: 80%
  }
}

@media screen and (min-width: 639px) {
  .minw-85p {
    min-width: 85%
  }
}

@media screen and (min-width: 639px) {
  .minw-90p {
    min-width: 90%
  }
}

@media screen and (min-width: 639px) {
  .minw-95p {
    min-width: 95%
  }
}

@media screen and (min-width: 639px) {
  .minw-100p {
    min-width: 100%
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-5p {
    min-width: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-10p {
    min-width: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-15p {
    min-width: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-20p {
    min-width: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-25p {
    min-width: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-30p {
    min-width: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-35p {
    min-width: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-40p {
    min-width: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-45p {
    min-width: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-50p {
    min-width: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-55p {
    min-width: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-60p {
    min-width: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-65p {
    min-width: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-70p {
    min-width: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-75p {
    min-width: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-80p {
    min-width: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-85p {
    min-width: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-90p {
    min-width: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-95p {
    min-width: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-minw-100p {
    min-width: 100% !important
  }
}

@media screen and (min-width: 639px) {
  .maxw-5p {
    max-width: 5%
  }
}

@media screen and (min-width: 639px) {
  .maxw-10p {
    max-width: 10%
  }
}

@media screen and (min-width: 639px) {
  .maxw-15p {
    max-width: 15%
  }
}

@media screen and (min-width: 639px) {
  .maxw-20p {
    max-width: 20%
  }
}

@media screen and (min-width: 639px) {
  .maxw-25p {
    max-width: 25%
  }
}

@media screen and (min-width: 639px) {
  .maxw-30p {
    max-width: 30%
  }
}

@media screen and (min-width: 639px) {
  .maxw-35p {
    max-width: 35%
  }
}

@media screen and (min-width: 639px) {
  .maxw-40p {
    max-width: 40%
  }
}

@media screen and (min-width: 639px) {
  .maxw-45p {
    max-width: 45%
  }
}

@media screen and (min-width: 639px) {
  .maxw-50p {
    max-width: 50%
  }
}

@media screen and (min-width: 639px) {
  .maxw-55p {
    max-width: 55%
  }
}

@media screen and (min-width: 639px) {
  .maxw-60p {
    max-width: 60%
  }
}

@media screen and (min-width: 639px) {
  .maxw-65p {
    max-width: 65%
  }
}

@media screen and (min-width: 639px) {
  .maxw-70p {
    max-width: 70%
  }
}

@media screen and (min-width: 639px) {
  .maxw-75p {
    max-width: 75%
  }
}

@media screen and (min-width: 639px) {
  .maxw-80p {
    max-width: 80%
  }
}

@media screen and (min-width: 639px) {
  .maxw-85p {
    max-width: 85%
  }
}

@media screen and (min-width: 639px) {
  .maxw-90p {
    max-width: 90%
  }
}

@media screen and (min-width: 639px) {
  .maxw-95p {
    max-width: 95%
  }
}

@media screen and (min-width: 639px) {
  .maxw-100p {
    max-width: 100%
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-5p {
    max-width: 5% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-10p {
    max-width: 10% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-15p {
    max-width: 15% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-20p {
    max-width: 20% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-25p {
    max-width: 25% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-30p {
    max-width: 30% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-35p {
    max-width: 35% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-40p {
    max-width: 40% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-45p {
    max-width: 45% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-50p {
    max-width: 50% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-55p {
    max-width: 55% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-60p {
    max-width: 60% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-65p {
    max-width: 65% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-70p {
    max-width: 70% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-75p {
    max-width: 75% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-80p {
    max-width: 80% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-85p {
    max-width: 85% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-90p {
    max-width: 90% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-95p {
    max-width: 95% !important
  }
}

@media screen and (max-width: 639px) {
  .mob-maxw-100p {
    max-width: 100% !important
  }
}

@media screen and (min-width: 639px) {
  .pt-5p {
    padding-top: 5%
  }
}

@media screen and (min-width: 639px) {
  .pt-10p {
    padding-top: 10%
  }
}

@media screen and (min-width: 639px) {
  .pt-15p {
    padding-top: 15%
  }
}

@media screen and (min-width: 639px) {
  .pt-20p {
    padding-top: 20%
  }
}

@media screen and (min-width: 639px) {
  .pt-25p {
    padding-top: 25%
  }
}

@media screen and (min-width: 639px) {
  .pt-30p {
    padding-top: 30%
  }
}

@media screen and (min-width: 639px) {
  .pt-35p {
    padding-top: 35%
  }
}

@media screen and (min-width: 639px) {
  .pt-40p {
    padding-top: 40%
  }
}

@media screen and (min-width: 639px) {
  .pt-45p {
    padding-top: 45%
  }
}

@media screen and (min-width: 639px) {
  .pt-50p {
    padding-top: 50%
  }
}

@media screen and (min-width: 639px) {
  .pt-55p {
    padding-top: 55%
  }
}

@media screen and (min-width: 639px) {
  .pt-60p {
    padding-top: 60%
  }
}

@media screen and (min-width: 639px) {
  .pt-65p {
    padding-top: 65%
  }
}

@media screen and (min-width: 639px) {
  .pt-70p {
    padding-top: 70%
  }
}

@media screen and (min-width: 639px) {
  .pt-75p {
    padding-top: 75%
  }
}

@media screen and (min-width: 639px) {
  .pt-80p {
    padding-top: 80%
  }
}

@media screen and (min-width: 639px) {
  .pt-85p {
    padding-top: 85%
  }
}

@media screen and (min-width: 639px) {
  .pt-90p {
    padding-top: 90%
  }
}

@media screen and (min-width: 639px) {
  .pt-95p {
    padding-top: 95%
  }
}

@media screen and (min-width: 639px) {
  .pt-100p {
    padding-top: 100%
  }
}

@media screen and (min-width: 639px) {
  .pt-4 {
    padding-top: 4px
  }
}

@media screen and (min-width: 639px) {
  .pt-8 {
    padding-top: 8px
  }
}

@media screen and (min-width: 639px) {
  .pt-12 {
    padding-top: 12px
  }
}

@media screen and (min-width: 639px) {
  .pt-14 {
    padding-top: 14px
  }
}

@media screen and (min-width: 639px) {
  .pt-15 {
    padding-top: 15px
  }
}

@media screen and (min-width: 639px) {
  .pt-16 {
    padding-top: 16px
  }
}

@media screen and (min-width: 639px) {
  .pt-18 {
    padding-top: 18px
  }
}

@media screen and (min-width: 639px) {
  .pt-20 {
    padding-top: 20px
  }
}

@media screen and (min-width: 639px) {
  .pt-22 {
    padding-top: 22px
  }
}

@media screen and (min-width: 639px) {
  .pt-24 {
    padding-top: 24px
  }
}

@media screen and (min-width: 639px) {
  .pt-28 {
    padding-top: 28px
  }
}

@media screen and (min-width: 639px) {
  .pt-32 {
    padding-top: 32px
  }
}

@media screen and (min-width: 639px) {
  .pt-36 {
    padding-top: 36px
  }
}

@media screen and (min-width: 639px) {
  .pt-42 {
    padding-top: 42px
  }
}

@media screen and (min-width: 639px) {
  .pt-48 {
    padding-top: 48px
  }
}

@media screen and (min-width: 639px) {
  .pt-56 {
    padding-top: 56px
  }
}

@media screen and (min-width: 639px) {
  .pt-64 {
    padding-top: 64px
  }
}

@media screen and (min-width: 639px) {
  .pt-72 {
    padding-top: 72px
  }
}

@media screen and (min-width: 639px) {
  .pt-96 {
    padding-top: 96px
  }
}

@media screen and (min-width: 639px) {
  .pt-128 {
    padding-top: 128px
  }
}

@media screen and (min-width: 639px) {
  .pl-5p {
    padding-left: 5%
  }
}

@media screen and (min-width: 639px) {
  .pl-10p {
    padding-left: 10%
  }
}

@media screen and (min-width: 639px) {
  .pl-15p {
    padding-left: 15%
  }
}

@media screen and (min-width: 639px) {
  .pl-20p {
    padding-left: 20%
  }
}

@media screen and (min-width: 639px) {
  .pl-25p {
    padding-left: 25%
  }
}

@media screen and (min-width: 639px) {
  .pl-30p {
    padding-left: 30%
  }
}

@media screen and (min-width: 639px) {
  .pl-35p {
    padding-left: 35%
  }
}

@media screen and (min-width: 639px) {
  .pl-40p {
    padding-left: 40%
  }
}

@media screen and (min-width: 639px) {
  .pl-45p {
    padding-left: 45%
  }
}

@media screen and (min-width: 639px) {
  .pl-50p {
    padding-left: 50%
  }
}

@media screen and (min-width: 639px) {
  .pl-55p {
    padding-left: 55%
  }
}

@media screen and (min-width: 639px) {
  .pl-60p {
    padding-left: 60%
  }
}

@media screen and (min-width: 639px) {
  .pl-65p {
    padding-left: 65%
  }
}

@media screen and (min-width: 639px) {
  .pl-70p {
    padding-left: 70%
  }
}

@media screen and (min-width: 639px) {
  .pl-75p {
    padding-left: 75%
  }
}

@media screen and (min-width: 639px) {
  .pl-80p {
    padding-left: 80%
  }
}

@media screen and (min-width: 639px) {
  .pl-85p {
    padding-left: 85%
  }
}

@media screen and (min-width: 639px) {
  .pl-90p {
    padding-left: 90%
  }
}

@media screen and (min-width: 639px) {
  .pl-95p {
    padding-left: 95%
  }
}

@media screen and (min-width: 639px) {
  .pl-100p {
    padding-left: 100%
  }
}

@media screen and (min-width: 639px) {
  .pl-4 {
    padding-left: 4px
  }
}

@media screen and (min-width: 639px) {
  .pl-8 {
    padding-left: 8px
  }
}

@media screen and (min-width: 639px) {
  .pl-12 {
    padding-left: 12px
  }
}

@media screen and (min-width: 639px) {
  .pl-14 {
    padding-left: 14px
  }
}

@media screen and (min-width: 639px) {
  .pl-15 {
    padding-left: 15px
  }
}

@media screen and (min-width: 639px) {
  .pl-16 {
    padding-left: 16px
  }
}

@media screen and (min-width: 639px) {
  .pl-18 {
    padding-left: 18px
  }
}

@media screen and (min-width: 639px) {
  .pl-20 {
    padding-left: 20px
  }
}

@media screen and (min-width: 639px) {
  .pl-22 {
    padding-left: 22px
  }
}

@media screen and (min-width: 639px) {
  .pl-24 {
    padding-left: 24px
  }
}

@media screen and (min-width: 639px) {
  .pl-28 {
    padding-left: 28px
  }
}

@media screen and (min-width: 639px) {
  .pl-32 {
    padding-left: 32px
  }
}

@media screen and (min-width: 639px) {
  .pl-36 {
    padding-left: 36px
  }
}

@media screen and (min-width: 639px) {
  .pl-42 {
    padding-left: 42px
  }
}

@media screen and (min-width: 639px) {
  .pl-48 {
    padding-left: 48px
  }
}

@media screen and (min-width: 639px) {
  .pl-56 {
    padding-left: 56px
  }
}

@media screen and (min-width: 639px) {
  .pl-64 {
    padding-left: 64px
  }
}

@media screen and (min-width: 639px) {
  .pl-72 {
    padding-left: 72px
  }
}

@media screen and (min-width: 639px) {
  .pl-96 {
    padding-left: 96px
  }
}

@media screen and (min-width: 639px) {
  .pl-128 {
    padding-left: 128px
  }
}

@media screen and (min-width: 639px) {
  .pr-4 {
    padding-right: 4px
  }
}

@media screen and (min-width: 639px) {
  .pr-8 {
    padding-right: 8px
  }
}

@media screen and (min-width: 639px) {
  .pr-12 {
    padding-right: 12px
  }
}

@media screen and (min-width: 639px) {
  .pr-14 {
    padding-right: 14px
  }
}

@media screen and (min-width: 639px) {
  .pr-15 {
    padding-right: 15px
  }
}

@media screen and (min-width: 639px) {
  .pr-16 {
    padding-right: 16px
  }
}

@media screen and (min-width: 639px) {
  .pr-18 {
    padding-right: 18px
  }
}

@media screen and (min-width: 639px) {
  .pr-20 {
    padding-right: 20px
  }
}

@media screen and (min-width: 639px) {
  .pr-22 {
    padding-right: 22px
  }
}

@media screen and (min-width: 639px) {
  .pr-24 {
    padding-right: 24px
  }
}

@media screen and (min-width: 639px) {
  .pr-28 {
    padding-right: 28px
  }
}

@media screen and (min-width: 639px) {
  .pr-32 {
    padding-right: 32px
  }
}

@media screen and (min-width: 639px) {
  .pr-36 {
    padding-right: 36px
  }
}

@media screen and (min-width: 639px) {
  .pr-42 {
    padding-right: 42px
  }
}

@media screen and (min-width: 639px) {
  .pr-48 {
    padding-right: 48px
  }
}

@media screen and (min-width: 639px) {
  .pr-56 {
    padding-right: 56px
  }
}

@media screen and (min-width: 639px) {
  .pr-64 {
    padding-right: 64px
  }
}

@media screen and (min-width: 639px) {
  .pr-72 {
    padding-right: 72px
  }
}

@media screen and (min-width: 639px) {
  .pr-96 {
    padding-right: 96px
  }
}

@media screen and (min-width: 639px) {
  .pr-128 {
    padding-right: 128px
  }
}

@media screen and (min-width: 639px) {
  .pr-5p {
    padding-right: 5%
  }
}

@media screen and (min-width: 639px) {
  .pr-10p {
    padding-right: 10%
  }
}

@media screen and (min-width: 639px) {
  .pr-15p {
    padding-right: 15%
  }
}

@media screen and (min-width: 639px) {
  .pr-20p {
    padding-right: 20%
  }
}

@media screen and (min-width: 639px) {
  .pr-25p {
    padding-right: 25%
  }
}

@media screen and (min-width: 639px) {
  .pr-30p {
    padding-right: 30%
  }
}

@media screen and (min-width: 639px) {
  .pr-35p {
    padding-right: 35%
  }
}

@media screen and (min-width: 639px) {
  .pr-40p {
    padding-right: 40%
  }
}

@media screen and (min-width: 639px) {
  .pr-45p {
    padding-right: 45%
  }
}

@media screen and (min-width: 639px) {
  .pr-50p {
    padding-right: 50%
  }
}

@media screen and (min-width: 639px) {
  .pr-55p {
    padding-right: 55%
  }
}

@media screen and (min-width: 639px) {
  .pr-60p {
    padding-right: 60%
  }
}

@media screen and (min-width: 639px) {
  .pr-65p {
    padding-right: 65%
  }
}

@media screen and (min-width: 639px) {
  .pr-70p {
    padding-right: 70%
  }
}

@media screen and (min-width: 639px) {
  .pr-75p {
    padding-right: 75%
  }
}

@media screen and (min-width: 639px) {
  .pr-80p {
    padding-right: 80%
  }
}

@media screen and (min-width: 639px) {
  .pr-85p {
    padding-right: 85%
  }
}

@media screen and (min-width: 639px) {
  .pr-90p {
    padding-right: 90%
  }
}

@media screen and (min-width: 639px) {
  .pr-95p {
    padding-right: 95%
  }
}

@media screen and (min-width: 639px) {
  .pr-100p {
    padding-right: 100%
  }
}

@media screen and (min-width: 639px) {
  .fz-4 {
    font-size: 4px
  }
}

@media screen and (min-width: 639px) {
  .fz-8 {
    font-size: 8px
  }
}

@media screen and (min-width: 639px) {
  .fz-12 {
    font-size: 12px
  }
}

@media screen and (min-width: 639px) {
  .fz-14 {
    font-size: 14px
  }
}

@media screen and (min-width: 639px) {
  .fz-15 {
    font-size: 15px
  }
}

@media screen and (min-width: 639px) {
  .fz-16 {
    font-size: 16px
  }
}

@media screen and (min-width: 639px) {
  .fz-18 {
    font-size: 18px
  }
}

@media screen and (min-width: 639px) {
  .fz-20 {
    font-size: 20px
  }
}

@media screen and (min-width: 639px) {
  .fz-22 {
    font-size: 22px
  }
}

@media screen and (min-width: 639px) {
  .fz-24 {
    font-size: 24px
  }
}

@media screen and (min-width: 639px) {
  .fz-28 {
    font-size: 28px
  }
}

@media screen and (min-width: 639px) {
  .fz-32 {
    font-size: 32px
  }
}

@media screen and (min-width: 639px) {
  .fz-36 {
    font-size: 36px
  }
}

@media screen and (min-width: 639px) {
  .fz-42 {
    font-size: 42px
  }
}

@media screen and (min-width: 639px) {
  .fz-48 {
    font-size: 48px
  }
}

@media screen and (min-width: 639px) {
  .fz-56 {
    font-size: 56px
  }
}

@media screen and (min-width: 639px) {
  .fz-64 {
    font-size: 64px
  }
}

@media screen and (min-width: 639px) {
  .fz-72 {
    font-size: 72px
  }
}

@media screen and (min-width: 639px) {
  .fz-96 {
    font-size: 96px
  }
}

@media screen and (min-width: 639px) {
  .fz-128 {
    font-size: 128px
  }
}

@media screen and (max-width: 639px) {
  .display-hide-mobile {
    display: none
  }
}

.display-inline-block {
  display: inline-block
}

.display-flex {
  display: flex
}

.display-flex-column {
  display: flex;
  flex-direction: column
}

.flex-align-center {
  align-items: center
}

.flex-end {
  justify-content: flex-end
}

.flex-space-between {
  justify-content: space-between
}

.flex-column {
  flex: 1
}

.flex-gap-5 {
  gap: 5%
}

.flex-self-end {
  align-self: end
}

.flex-1 {
  flex: 1
}

.m-auto {
  margin: auto
}

@media screen and (max-width: 639px) {
  .mob-m-auto {
    margin: auto
  }
}

.position-relative {
  position: relative
}

.position-absolute {
  position: absolute
}

.position-fixed {
  position: fixed
}

.overflow-hidden {
  overflow: hidden
}

.left-0 {
  left: 0
}

.top-0 {
  top: 0
}

.float-left {
  float: left
}

.float-right {
  float: right
}

.clearfix {
  zoom: 1
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table
}

.clearfix:after {
  clear: both
}

#page-header {
  position: relative;
  height: clamp(24px, 10vw, 96px);
  padding: 0 4%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden
}

@media screen and (max-width: 639px) {
  #page-header {
    top: 0;
    left: 0;
    right: 0;
    height: 9vh;
    min-height: 16vh;
    padding-bottom: 20px;
    z-index: 100
  }
}

.mobile-menu-on #page-header {
  position: fixed
}

#page-header .page-header__logo {
  width: clamp(100px, 15vw, 320px)
}

@media screen and (max-width: 639px) {
  #page-header .page-header__logo {
    width: 31vw
  }
}

#page-header .page-header__links {
  display: flex;
  gap: .5vw
}

#page-header .page-header__links svg {
  width: clamp(18px, 5.5vw, 42px)
}

@media screen and (max-width: 639px) {
  #page-header .page-header__links {
    display: none
  }
}

#page-header .mobile-menu-toggle-wrapper {
  display: none;
  position: fixed;
  justify-content: center;
  align-items: center;
  right: 0;
  height: 9vh;
  width: 12vh;
  z-index: 1000000
}

@media screen and (max-width: 639px) {
  #page-header .mobile-menu-toggle-wrapper {
    display: flex
  }
}

#page-header .page-header__menu-open {
  display: none;
  width: 42px;
  height: 42px;
  background: url(../img/icon-menu-burger.svg) center -8px no-repeat;
  background-size: 120%;
  cursor: pointer
}

@media screen and (max-width: 639px) {
  #page-header .page-header__menu-open {
    display: block
  }
}

#page-header .page-header__menu-open.visible {
  background-image: url(../img/icon-menu-close.svg)
}

#mobile-menu {
  position: fixed;
  display: none;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  justify-items: center;
  align-items: center;
  padding: 0 4%;
  z-index: 50;
  transition: all 120ms ease-in;
  background-color: #f2f0ef
}

@media screen and (max-width: 639px) {
  #mobile-menu {
    position: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start
  }
}

#mobile-menu.visible {
  opacity: 1
}

#mobile-menu a {
  font-size: 10vw;
  line-height: 2.2
}

#contact-sidebar {
  position: fixed;
  left: 0;
  top: 26vw;
  padding: 0;
  font-weight: 700;
  line-height: 1.8;
  white-space: nowrap;
  color: #fff;
  background-color: #03f;
  z-index: 10000;
  transition: all 120ms ease-in;
  transform-origin: top right;
  transform: translateX(calc(-100% + 32px));
  height: 129px !important;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: stretch;
}

@media screen and (max-width: 639px) {
  #contact-sidebar {
    display: none
  }
}

/* Removed hover effect */

#contact-sidebar.visible {
  transform: translateX(0)
}

#contact-sidebar.visible .contact-sidebar-toggle__icon {
  transform: rotate(180deg)
}

#contact-sidebar p {
  font-size: 18px;
  letter-spacing: .2px;
  line-height: 1.8;
  white-space: unset
}

#contact-sidebar .svg-icon {
  width: 16px;
  height: 16px;
  top: 4px;
  position: relative;
  margin-right: 2px
}

#contact-sidebar .link {
  display: inline-block;
  margin-left: 3px;
  text-decoration: underline
}

#contact-sidebar #contact-sidebar-toggle {
  position: relative;
  /* Relative positioning */
  width: 32px;
  height: auto;
  /* Fit text */
  min-height: 25px;
  /* Minimum 25px */
  display: flex;
  align-items: center;
  justify-content: center;
  /* Removed absolute offsets */
  font-size: 14px;
  letter-spacing: .2;
  writing-mode: vertical-rl;
  text-align: center;
  cursor: pointer;
  user-select: none;
  transition: all 120ms ease-in;
  z-index: 100
}

#contact-sidebar #contact-sidebar-toggle:hover {
  background-color: rgb(51, 91.8, 255)
}

#contact-sidebar #contact-sidebar-toggle .contact-sidebar-toggle__icon {
  width: 20px;
  height: 20px;
  margin-top: 10px
}

#contact-sidebar-overlay {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: gray;
  z-index: 1;
  opacity: 0
}

#contact-sidebar-mobile {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0px;
  font-weight: 700;
  line-height: 1.8;
  white-space: nowrap;
  color: #fff;
  background-color: #03f;
  z-index: 40;
  transition: all 120ms ease-in;
  display: none
}

@media screen and (max-width: 639px) {
  #contact-sidebar-mobile {
    display: block
  }
}

#contact-sidebar-mobile.visible .contact-sidebar-toggle__icon {
  transform: rotate(90deg) !important
}

#contact-sidebar-mobile .svg-icon {
  width: 56px;
  height: 56px;
  top: 4px;
  position: relative;
  margin-right: 2px
}

#contact-sidebar-mobile #contact-sidebar-mobile__toggle {
  position: absolute;
  left: 0;
  right: 0;
  top: -56px;
  bottom: 0;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  letter-spacing: .5px;
  text-align: center;
  cursor: pointer;
  user-select: none;
  background-color: #03f;
  z-index: 40
}

#contact-sidebar-mobile #contact-sidebar-mobile__toggle .contact-sidebar-toggle__icon {
  width: 18px;
  height: 18px;
  margin-left: 10px;
  transform: rotate(-90deg)
}

#contact-sidebar-mobile p {
  padding-bottom: 20px;
  display: flex;
  justify-content: space-around
}

.sections-wrapper {
  padding: 0 4%;
  overflow: hidden
}

@media screen and (max-width: 639px) {
  .sections-wrapper {
    position: relative;
    top: -32px
  }
}

.page-section {
  position: relative
}

#section-1 .offset-line-2 {
  display: inline-block;
  transform: translateX(16vw)
}

@media screen and (max-width: 639px) {
  #section-1 .offset-line-2 {
    transform: translateX(40px)
  }
}

#section-1 .symbol-ampersand-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 500vh;
  background: url(../img/symbol-&-desktop.svg) no-repeat;
  background-position: right 20px top 11vw;
  background-size: 37%;
  z-index: -1
}

@media screen and (max-width: 639px) {
  #section-1 .symbol-ampersand-bg {
    position: absolute;
    top: -32px;
    height: 100vh;
    background-image: url(../img/symbol-&-mobile-3.svg);
    background-position: top 1% left 97%;
    background-size: 84%
  }
}

#section-2 {
  opacity: 1
}

#section-3 {
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 639px) {
  #section-3 {
    flex-direction: column
  }
}

#section-3 blockquote {
  display: flex;
  align-items: center;
  max-width: 28%
}

@media screen and (max-width: 639px) {
  #section-3 blockquote {
    max-width: 100%;
    margin-bottom: 12%
  }
}

#section-3 p {
  margin-top: -10px
}

#section-3 h2 {
  margin-right: 5%;
  font-size: clamp(36px, 4.8vw, 96px);
  font-weight: 700;
  font-style: italic;
  line-height: .7;
  text-align: right
}

@media screen and (max-width: 639px) {
  #section-3 h2 {
    font-size: 15vw;
    min-width: 45%;
    text-align: right
  }
}

@media screen and (max-width: 639px) {
  #section-4 .offset-line-1 {
    z-index: -1
  }
}

#section-4 .offset-line-2 {
  transform: translateX(34vw)
}

@media screen and (max-width: 639px) {
  #section-4 .offset-line-2 {
    transform: none;
    z-index: 10
  }
}

#section-4 .offset-line-3 {
  transform: translateX(9vw);
  position: relative;
  display: inline-block;
  z-index: 1
}

@media screen and (max-width: 639px) {
  #section-4 .offset-line-3 {
    transform: none
  }
}

#section-5 .section-partners-logos {
  display: flex;
  justify-content: space-between;
  gap: 15%
}

@media screen and (max-width: 639px) {
  #section-5 .section-partners-logos {
    justify-content: center;
    display: flex;
    flex-wrap: wrap
  }
}

#section-5 .section-partners-logos li {
  width: 25%;
  display: flex;
  align-items: center
}

@media screen and (max-width: 639px) {
  #section-5 .section-partners-logos li {
    width: 35%
  }
}

#section-5 .section-partners-logos img {
  max-inline-size: 100%;
  max-block-size: 100%
}

@media screen and (max-width: 639px) {
  #section-6 .position-absolute {
    position: static
  }
}

@media screen and (max-width: 639px) {
  #section-6 .offset-line-2 {
    transform: none;
    z-index: 1
  }
}

#section-6 .offset-line-1 {
  display: inline-block;
  position: relative;
  z-index: 1;
  transform: translateX(30vw)
}

@media screen and (max-width: 639px) {
  #section-6 .offset-line-1 {
    transform: none
  }
}

#section-6 .offset-line-2 {
  display: inline-block;
  transform: translateX(35vw)
}

@media screen and (max-width: 639px) {
  #section-6 .offset-line-2 {
    transform: none
  }
}

#section-6 .offset-line-3 {
  display: inline-block;
  transform: translateX(35px);
  z-index: 1
}

@media screen and (max-width: 1024px) {
  #section-6 .offset-line-3 {
    transform: translateX(200px)
  }
}

@media screen and (max-width: 639px) {
  #section-6 .offset-line-3 {
    transform: translateX(0)
  }
}

#section-7 {
  display: flex
}

@media screen and (max-width: 639px) {
  #section-7 {
    display: block;
    margin-top: -15vh
  }
}

#section-7 .col-left {
  margin-top: 20px;
  margin-right: 10%;
  margin-bottom: 10vh
}

@media screen and (max-width: 639px) {
  #section-7 .col-left {
    margin-right: 0
  }
}

#page-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2% 4%;
  background-color: #000;
  color: #fff
}

@media screen and (max-width: 639px) {
  #page-footer {
    flex-direction: column;
    margin-top: 10%;
    padding: 5vh 5vh 5vh;
    line-height: 2;
    text-align: right
  }
}

#page-footer .page-footer__scrollup {
  display: block;
  width: clamp(20px, 2vw, 32px);
  height: clamp(20px, 2vw, 32px);
  background: url(../img/icon-arrow-top.svg) no-repeat center;
  background-size: cover
}

@media screen and (max-width: 639px) {
  #page-footer .page-footer__scrollup {
    display: none
  }
}

#page-footer #contact-us-button {
  display: none;
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 10
}

@media screen and (max-width: 639px) {
  #page-footer #contact-us-button {
    display: block
  }
}

h1,
h2,
h3 {
  white-space: nowrap;
  word-break: keep-all
}

h1,
h2,
h3,
h4,
p {
  text-wrap: balance
}

strong {
  font-weight: 700
}

em {
  font-style: italic
}

h1 {
  font-size: clamp(4rem, 11vw, 12rem);
  line-height: clamp(5rem, 12vw - 2rem, 10.5rem)
}

@media screen and (max-width: 639px) {
  h1 {
    font-size: 16.5vw !important;
    line-height: 1;
    letter-spacing: -1
  }
}

h2 {
  font-size: clamp(2.05rem, 5.506vw - .306rem, 5rem);
  line-height: clamp(2.1rem, 6.367vw - .367rem, 6rem)
}

@media screen and (max-width: 639px) {
  h2 {
    font-size: 9.5vw;
    line-height: 1.1;
    letter-spacing: -0.25
  }
}

h3 {
  font-size: clamp(1rem, 1vw + 1rem, 2.4rem);
  line-height: clamp(2.1rem, 2.254vw + .7rem, 3.875rem);
  font-weight: 700
}

h4 {
  font-size: clamp(1rem, 1.85vw, 2rem);
  line-height: clamp(1.4rem, 2.7vw, 2.8rem);
  font-weight: 700
}

p {
  font-size: clamp(1rem, .7vw + .5rem, 1.375rem);
  line-height: clamp(1.4rem, 1vw + .7rem, 1.925rem);
  letter-spacing: .2px
}

@media screen and (max-width: 639px) {
  p {
    font-size: 15px
  }
}

.color-blue {
  color: #03f
}

.text-nowrap {
  white-space: nowrap
}

.text-center {
  text-align: center
}

.text-right {
  text-align: right
}

@media screen and (max-width: 639px) {
  .mob-text-right {
    text-align: right
  }
}

@media screen and (max-width: 639px) {
  .mob-text-center {
    text-align: center
  }
}

form .contact-form__chooser {
  margin-bottom: 8vh
}

form .contact-form__chooser div {
  margin-right: 3vw
}

form fieldset.input-fields>* {
  margin-bottom: 8vh;
  min-width: 14vw
}

form .input-text {
  padding: 5px 0;
  width: 100%;
  border-bottom: 1px solid #000
}

form .input-text:focus {
  border-bottom-color: #03f
}

form .input-text::placeholder {
  color: rgba(0, 0, 0, 0)
}

form textarea.input-text {
  padding: 5px 0;
  overflow: hidden !important;
  resize: vertical
}

@media screen and (max-width: 639px) {
  form textarea.input-text {
    margin-top: 5px
  }
}

form textarea:invalid {
  max-height: 30px
}

form textarea.input-text+.input-text-floating-label {
  transform: translateY(-5px)
}

form .input-text-group {
  position: relative
}

form .input-text-floating-label {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  pointer-events: none;
  transition: all 120ms ease-in;
  transform-origin: top left
}

form .input-text:focus+.input-text-floating-label,
form .input-text:not(:placeholder-shown)+.input-text-floating-label {
  font-weight: 700;
  transform: translateY(-4vh);
  letter-spacing: .85;
  opacity: 1
}

form .input-radio {
  display: block !important;
  position: relative;
  width: 18px !important;
  height: 18px !important;
  margin-right: 8px;
  background: rgba(0, 0, 0, 0);
  border-radius: 100%;
  border: 1px solid #000
}

form .input-radio:checked {
  border-color: #03f;
  background-color: #fff
}

form .input-radio:checked:after {
  position: absolute;
  content: "";
  width: 50%;
  height: 50%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border-radius: 100%;
  background: #03f
}

form .contact-form__chooser label {
  display: flex;
  align-items: center;
  margin-right: 5%;
  cursor: pointer
}

/* Additional helper classes */
.color-red {
  color: #ff0000;
}

.p-20 {
  padding: 20px;
}

.section-3-number {
  font-size: clamp(36px, 4.8vw, 96px);
  font-weight: 700;
  font-style: italic;
  line-height: 0.7;
  text-align: right;
}

@media (max-width: 768px) {
  .section-3-number {
    font-size: 15vw;
    min-width: 45%;
  }
}

.mt-neg-10 {
  margin-top: -10px;
}

.mr-5p {
  margin-right: 5%;
}

.maxw-28p {
  max-width: 28%;
}

.mob-mb-12p {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .mob-mb-12p {
    margin-bottom: 12%;
  }
}

.justify-between {
  justify-content: space-between;
}

.mob-flex-column {
  flex-direction: row;
}

@media (max-width: 768px) {
  .mob-flex-column {
    flex-direction: column;
  }
}

.align-items-center {
  align-items: center;
}