/* Ad Hoc CMS v157 — technical cleanup of v156.
   The original rule order is preserved. Adjacent equal media blocks are merged.
   Repeated section headings preserve overrides across shared rules and media ranges. */


/* SHARED / CASCADE BOUNDARY */
@font-face{font-family:Onest;src:url("assets/fonts/OnestThin.woff2") format("woff2");font-weight:100;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestExtraLight.woff2") format("woff2");font-weight:200;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestLight.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestRegular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestMedium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestSemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestBold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestExtraBold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}

@font-face{font-family:Onest;src:url("assets/fonts/OnestBlack.woff2") format("woff2");font-weight:900;font-style:normal;font-display:swap}

:root {
  --ink: #1e2835;
  --muted: #67717f;
  --blue: #a5bedb;
  --blue-deep: #81a7d4;
  --dark: #1e2835;
  --paper: #f7f7f5;
  --white: #fff;
  --accent: #c81428;
  --header-h: 62px;
  --radius: 26px;
  --container: 1680px;
  --pad: 80px;
  --h1: clamp(48px,4.75vw,92px);
  --h2: clamp(38px,3.35vw,64px);
  --h3: clamp(23px,1.7vw,34px);
  --body: clamp(17px,1.08vw,21px);
}

/* TEAM */
.team-intro-mobile-title {
  display: none;
}


@media (min-width:1200px) {
  .team {
    --team-u: min(1px, calc(100vw / 1920));
    position: relative;
    width: 100%;
    height: calc(1080 * var(--team-u));
    min-height: calc(1080 * var(--team-u));
    overflow: hidden;
  }

  .team>.team-stage {
    position: relative;
    width: calc(1920 * var(--team-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .team-symbol {
    position: absolute;
    z-index: 0;
    left: calc(516 * var(--team-u));
    top: calc(158 * var(--team-u));
    width: calc(889 * var(--team-u));
    max-width: none;
    height: auto;
    opacity: 1;
    pointer-events: none;
  }

  .team-intro {
    position: absolute;
    z-index: 1;
    inset: 0;
    width: 100%;
  }

  .team-intro .team-intro-icon {
    position: absolute;
    left: calc(70 * var(--team-u));
    top: calc(59 * var(--team-u));
    width: calc(381 * var(--team-u));
    max-width: none;
    height: auto;
  }

  .team-intro h2 {
    position: absolute;
    left: calc(445 * var(--team-u));
    top: calc(75 * var(--team-u));
    width: calc(1390 * var(--team-u));
    margin: 0;
    text-align: center;
    letter-spacing: -.025em;
  }

  .team-intro h2 strong {
    display: block;
    color: #6398d6;
    font-size: calc(74 * var(--team-u));
    line-height: 1;
    font-weight: 600;
    white-space: nowrap;
  }

  .team-intro h2 span {
    display: block;
    margin-top: calc(24 * var(--team-u));
    color: #1e2835;
    font-size: calc(55 * var(--team-u));
    line-height: 1.18;
    font-weight: 500;
  }

  .team-grid {
    position: absolute;
    z-index: 2;
    left: calc(82 * var(--team-u));
    top: calc(386 * var(--team-u));
    display: grid;
    width: calc(1770 * var(--team-u));
    margin: 0;
  }

  .team-card {
    position: relative;
    display: block;
    width: calc(414 * var(--team-u));
    height: calc(312 * var(--team-u));
    margin: 0;
    padding: 0;
    overflow: hidden;
    appearance: none;
    border: calc(2 * var(--team-u)) solid #b2b7be;
    border-radius: calc(31 * var(--team-u));
    background: linear-gradient(180deg,#fff 0%,#e8e9eb 100%);
    color: #1e2835;
    font-family: Onest,sans-serif;
    text-align: left;
    cursor: pointer;
    -webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 55%,transparent 89%,transparent 100%);
    mask-image: linear-gradient(to bottom,#000 0%,#000 55%,transparent 89%,transparent 100%);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .team-card-head {
    position: absolute;
    left: calc(27 * var(--team-u));
    top: calc(18 * var(--team-u));
    display: flex;
    align-items: center;
    gap: calc(18 * var(--team-u));
  }

  .team-card-head img {
    display: block;
    width: calc(145 * var(--team-u));
    height: calc(145 * var(--team-u));
    max-width: none;
    object-fit: cover;
    border-radius: calc(14 * var(--team-u));
  }

  .team-card-name {
    display: block;
    width: calc(190 * var(--team-u));
    transform: translateY(calc(35 * var(--team-u)));
    font-size: calc(25 * var(--team-u));
    line-height: 1.15;
    font-weight: 600;
    letter-spacing: -.02em;
  }

  .team-card-quote {
    position: absolute;
    left: calc(28 * var(--team-u));
    top: calc(186 * var(--team-u));
    display: block;
    width: calc(358 * var(--team-u));
    max-height: calc(105 * var(--team-u));
    overflow: hidden;
    font-size: calc(20 * var(--team-u));
    line-height: 1.18;
    font-weight: 300;
    letter-spacing: -.018em;
  }

  .team-card:focus-visible {
    outline: calc(3 * var(--team-u)) solid #6398d6;
    outline-offset: calc(-5 * var(--team-u));
  }

}


/* SHARED / CASCADE BOUNDARY */
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--paper);
}

body {
  margin: 0;
  font-family: Onest,Arial,sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-weight: 300;
  overflow-x: hidden;
}

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

button, a {
  font: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

.container {
  width: min(var(--container),calc(100% - var(--pad)*2));
  margin-inline: auto;
  position: relative;
}

.section {
  position: relative;
  overflow: hidden;
  scroll-margin-top: var(--header-h);
}

.section-light {
  background: var(--paper);
}

.section-blue {
  background: var(--blue);
}

.section-dark {
  background: var(--dark);
  color: #fff;
}

.section-heading h2 {
  margin: 0;
  font-size: var(--h2);
  line-height: .98;
  letter-spacing: -.045em;
  font-weight: 600;
}

.section-heading p {
  margin: .8rem 0 0;
  font-size: clamp(20px,1.5vw,28px);
}

.section-heading.center {
  text-align: center;
}

/* PARTNERS */
.section-heading.compact {
  display: flex;
  align-items: baseline;
  gap: 28px;
}

/* SHARED */
.section-heading.inverse h2 span {
  font-weight: 300;
}

.brand-masthead {
  height: 198px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
}

.masthead-logo {
  width: min(620px,44vw);
  height: auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  height: var(--header-h);
  margin: 0;
  pointer-events: none;
  background: #1e2a38;
  color: #fff;
  transition: background .3s ease,box-shadow .3s ease,backdrop-filter .3s ease;
}

.site-header.is-stuck {
  background: rgba(30,42,56,.96);
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 rgba(255,255,255,.08),0 8px 24px rgba(8,15,24,.14);
}

.nav-shell {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-inline: 24px;
}

.primary-nav {
  pointer-events: auto;
  display: flex;
  gap: clamp(24px,1.5vw,34px);
  align-items: center;
  font-size: clamp(17px,1.05vw,20px);
  font-weight: 300;
  white-space: nowrap;
  color: #fff;
}

.primary-nav a {
  position: relative;
  padding: 19px 0 17px;
  color: #fff;
  transition: opacity .2s ease;
}

.primary-nav a:not(:last-child)::before {
  content: "•";
  position: absolute;
  right: calc(clamp(24px,1.5vw,34px)*-.57);
  top: 50%;
  transform: translate(50%,-52%);
  opacity: .9;
}

.primary-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .25s ease;
}

.primary-nav a.is-active {
  color: #a5c2df;
}

.primary-nav a.is-active::after, .primary-nav a:hover::after {
  transform: scaleX(1);
}

.mobile-menu-button {
  display: none;
}

/* HERO */
.hero {
  padding: 0 0 48px;
  min-height: 1015px;
  color: #fff;
  background: linear-gradient(90deg,#1e2835 0%,#1e2835 10%,#2b3745 30%,#445264 50%,#71849b 75%,#a5bedb 100%);
}

.hero-main {
  display: grid;
  grid-template-columns: 43% 57%;
  align-items: start;
  height: 690px;
}

.hero-visual {
  align-self: stretch;
  display: flex;
  align-items: flex-start;
}

.hero-visual img {
  width: 109%;
  max-width: none;
  margin-left: -17%;
  margin-top: 12px;
  opacity: .20;
}

.hero-copy {
  padding: 82px 0 0 0;
  min-width: 0;
}

.hero-copy h1 {
  margin: 0;
  font-size: clamp(54px,3.65vw,70px);
  line-height: .98;
  letter-spacing: -.035em;
  font-weight: 600;
  text-align: center;
  white-space: nowrap;
}

.hero-support {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 30px;
  margin-top: 142px;
  padding-right: 6px;
}

.hero-copy .hero-support>p {
  margin: 0;
  font-size: clamp(23px,1.48vw,28px);
  line-height: 1.3;
  text-align: right;
  font-weight: 300;
  white-space: nowrap;
}

.hero-years {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 0 0 auto;
}

.hero-years strong {
  font-size: clamp(126px,8.35vw,160px);
  line-height: .74;
  font-weight: 300;
  letter-spacing: -.075em;
}

.hero-years span {
  font-size: clamp(31px,2.25vw,43px);
  line-height: .86;
  margin-top: 8px;
  font-weight: 300;
}

.hero-stats {
  width: calc(100% - 120px);
  max-width: 1800px;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 56px;
  margin-top: 0;
}

.hero-stat {
  min-height: 250px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 38px;
  padding: 26px 28px 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  color: #344354;
  text-align: center;
  background: linear-gradient(180deg,#f3f8fe 0%,#dce8f5 48%,#bdd2eb 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}

.hero-stat strong {
  font-size: clamp(78px,6.25vw,120px);
  font-weight: 300;
  line-height: .82;
  letter-spacing: -.055em;
  color: #91b2db;
}

.hero-stat span {
  font-size: clamp(19px,1.28vw,25px);
  line-height: 1.18;
  margin-top: 20px;
  font-weight: 300;
}

.hero-stat-effie {
  overflow: hidden;
}

.hero-stat-effie>strong {
  position: absolute;
  z-index: 2;
  left: 60px;
  top: 35px;
}

.effie-visual {
  position: absolute;
  inset: 22px 18px 10px 68px;
  height: auto;
}

.effie-visual img {
  position: absolute;
  max-height: none;
  width: auto;
}

.effie-visual img:first-child {
  right: 2%;
  top: 9%;
  width: 64%;
}

.effie-visual img:last-child {
  left: 8%;
  bottom: 0;
  width: 49%;
}

/* PARTNERS */
.partners {
  padding: 120px 0 150px;
  min-height: 990px;
}

.partners-stage {
  position: relative;
  min-height: 690px;
  margin-top: 32px;
}

.partners-tree {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 380px;
  transform: translate(-50%,-42%);
}

.partner-cloud {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(6,1fr);
  grid-template-rows: repeat(3,1fr);
  align-items: center;
  justify-items: center;
  gap: 10px 30px;
}

.partner-cloud img {
  max-width: 160px;
  max-height: 78px;
  object-fit: contain;
}

.partner-cloud img:nth-child(3n/**/+2) {
  transform: translateY(-20px);
}

.partner-cloud img:nth-child(4n) {
  transform: translateY(26px);
}

/* PRINCIPLES */
.principles {
  padding: 125px 0 140px;
}

.principle-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 24px;
  margin-top: 72px;
}

.principle-card {
  position: relative;
  min-height: 360px;
  padding: 42px 30px 34px;
  border-radius: var(--radius);
  background: linear-gradient(145deg,#527cad 0%,#81a7d4 52%,#a5bedb 100%);
  overflow: hidden;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.principle-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("assets/img/s3-pattern.svg") center/cover no-repeat;
  opacity: .4;
}

.principle-card>* {
  position: relative;
  z-index: 1;
}

.principle-card img {
  width: 57%;
  max-height: 220px;
}

.principle-card h3 {
  margin: 15px 0 0;
  font-size: var(--h3);
  font-weight: 300;
  line-height: 1.05;
}


@media (min-width:1200px) {
  .principles {
    height: calc(1080 * min(1px, 100vw / 1920));
    min-height: calc(1080 * min(1px, 100vw / 1920));
    padding: 0;
    background: #3b4857;
  }

  .principles>.container {
    width: calc(1920 * min(1px, 100vw / 1920));
    max-width: none;
    height: 100%;
    margin-inline: auto;
  }

  .principles .section-heading {
    position: absolute;
    inset: 0;
    text-align: left;
  }

  .principles .principles-title {
    position: absolute;
    inset: 0;
    margin: 0;
    font-size: calc(78.5 * min(1px, 100vw / 1920));
    line-height: 1;
    letter-spacing: -.035em;
    font-weight: 400;
  }

  .principles .principles-line {
    position: absolute;
    display: flex;
    align-items: baseline;
    white-space: nowrap;
    line-height: 1;
  }

  .principles .principles-line strong {
    color: #fff;
    font: inherit;
    font-weight: 600;
  }

  .principles .principles-line em {
    color: #c0d2e6;
    font-family: Onest,sans-serif;
    font-size: calc(60 * min(1px, 100vw / 1920));
    line-height: 1;
    font-weight: 300;
    font-style: normal;
    letter-spacing: -.025em;
  }

  .principles .principles-line-1 {
    left: calc(275 * min(1px, 100vw / 1920));
    top: calc(93 * min(1px, 100vw / 1920));
    gap: calc(39 * min(1px, 100vw / 1920));
  }

  .principles .principles-line-2 {
    left: calc(387 * min(1px, 100vw / 1920));
    top: calc(200 * min(1px, 100vw / 1920));
    gap: calc(42 * min(1px, 100vw / 1920));
  }

  .principles .principles-line-3 {
    left: calc(531 * min(1px, 100vw / 1920));
    top: calc(307 * min(1px, 100vw / 1920));
  }

  .principles .principle-grid {
    position: absolute;
    left: calc(66 * min(1px, 100vw / 1920));
    top: calc(464 * min(1px, 100vw / 1920));
    display: grid;
    grid-template-columns: repeat(4,calc(416 * min(1px, 100vw / 1920)));
    gap: calc(42 * min(1px, 100vw / 1920));
    margin: 0;
  }

  .principles .principle-card {
    width: calc(416 * min(1px, 100vw / 1920));
    height: calc(518 * min(1px, 100vw / 1920));
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: url("assets/img/principles-frame-desktop.svg") 0 0/100% 100% no-repeat;
    overflow: hidden;
    display: block;
  }

  .principles .principle-card::before {
    display: none;
  }

  .principles .principle-card h3 {
    position: absolute;
    left: 0;
    top: calc(45 * min(1px, 100vw / 1920));
    width: 100%;
    margin: 0;
    color: #205899;
    font-size: calc(40 * min(1px, 100vw / 1920));
    line-height: 1.04;
    letter-spacing: -.025em;
    font-weight: 600;
    text-align: center;
  }

  .principles .principle-card:nth-child(3) h3 {
    top: calc(27 * min(1px, 100vw / 1920));
  }

  .principles .principle-card img {
    position: absolute;
    z-index: 1;
    width: auto;
    max-width: none;
    max-height: none;
    margin: 0;
  }

  .principles .principle-card:nth-child(1) img {
    width: calc(221 * min(1px, 100vw / 1920));
    left: calc(97 * min(1px, 100vw / 1920));
    top: calc(206 * min(1px, 100vw / 1920));
  }

  .principles .principle-card:nth-child(2) img {
    width: calc(258 * min(1px, 100vw / 1920));
    left: calc(83 * min(1px, 100vw / 1920));
    top: calc(195 * min(1px, 100vw / 1920));
  }

  .principles .principle-card:nth-child(3) img {
    width: calc(292 * min(1px, 100vw / 1920));
    left: calc(66 * min(1px, 100vw / 1920));
    top: calc(193 * min(1px, 100vw / 1920));
  }

  .principles .principle-card:nth-child(4) img {
    width: calc(297 * min(1px, 100vw / 1920));
    left: calc(56 * min(1px, 100vw / 1920));
    top: calc(207 * min(1px, 100vw / 1920));
  }

}


/* PROCESS */
.process {
  min-height: 930px;
  padding: 70px 0;
}

.section-pattern {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .28;
}

.process-wrap {
  height: 790px;
}

.process-map {
  position: relative;
  height: 100%;
  max-width: 1420px;
  margin: auto;
}

.road {
  position: absolute;
  left: 7%;
  right: 6%;
  top: 18%;
  width: 87%;
  height: 60%;
  object-fit: fill;
}

.process-point {
  position: absolute;
  font-size: clamp(26px,2.15vw,42px);
  line-height: 1;
  font-weight: 400;
  z-index: 2;
  opacity: 0;
  transform: translateY(18px);
  transition: .6s ease;
}

.process.is-visible .process-point {
  opacity: 1;
  transform: none;
}

.p1 {
  left: 7%;
  top: 17%;
  transition-delay: .1s;
}

.p2 {
  left: 45%;
  top: 11%;
  transition-delay: .2s;
}

.p3 {
  right: 5%;
  top: 27%;
  transition-delay: .3s;
}

.p4 {
  left: 8%;
  bottom: 16%;
  transition-delay: .4s;
}

.p5 {
  right: 4%;
  bottom: 12%;
  transition-delay: .5s;
}

.geo-mark {
  position: absolute;
  left: 46%;
  bottom: 19%;
  width: 90px;
}

/* SERVICES */
.services {
  padding: 120px 0 110px;
  min-height: 1000px;
}

.services-orbit {
  position: relative;
  height: 700px;
  margin-top: 45px;
}

.services-molecule {
  position: absolute;
  left: 50%;
  top: 52%;
  width: 390px;
  transform: translate(-50%,-50%);
}

.service-label {
  position: absolute;
  font-size: clamp(20px,1.55vw,30px);
  line-height: 1.15;
  font-weight: 300;
}

.s1 {
  left: 7%;
  top: 10%;
}

.s2 {
  right: 4%;
  top: 12%;
}

.s3 {
  left: 12%;
  top: 30%;
}

.s4 {
  right: 13%;
  top: 31%;
}

.s5 {
  left: 18%;
  top: 48%;
}

.s6 {
  right: 7%;
  top: 49%;
}

.s7 {
  left: 2%;
  bottom: 18%;
}

.s8 {
  right: 2%;
  bottom: 16%;
}

.s9 {
  left: 42%;
  bottom: 5%;
}

/* RESULTS */
.results {
  padding: 118px 0 120px;
  min-height: 1050px;
}

.results-dna {
  position: absolute;
  left: 2%;
  top: 21%;
  width: 210px;
  opacity: .9;
}

.results-grid {
  display: grid;
  grid-template-columns: repeat(6,1fr);
  gap: 70px 24px;
  margin-top: 86px;
  text-align: center;
}

.results-grid article {
  grid-column: span 2;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.results-grid article.wide {
  grid-column: span 3;
}

.results-grid strong {
  font-size: clamp(68px,6.6vw,126px);
  line-height: .9;
  font-weight: 300;
  letter-spacing: -.065em;
}

.results-grid span {
  margin-top: 20px;
  font-size: clamp(17px,1.15vw,22px);
  line-height: 1.25;
}

.results-note {
  text-align: center;
  margin: 70px 0 0;
  font-size: 14px;
  opacity: .75;
}

/* TEAM */
.team {
  padding: 120px 0 0;
}

.team-intro {
  display: grid;
  grid-template-columns: 160px 1fr;
  align-items: center;
  max-width: 1000px;
  margin: 0 auto 70px;
}

.team-intro img {
  width: 120px;
}

.team-intro p {
  margin: 0;
  font-size: clamp(27px,2.15vw,42px);
  line-height: 1.15;
}

.team-grid {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 18px;
}

/* REVIEWS */
.reviews {
  padding: 110px 0 120px;
}

.reviews-heading {
  margin-top: 100px;
}

.reviews-heading h2 {
  text-align: center;
  font-size: var(--h2);
  margin: 0;
  font-weight: 600;
  letter-spacing: -.04em;
}

.reviews-carousel {
  margin-top: 55px;
  overflow: hidden;
  mask-image: linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);
}

.reviews-track {
  display: flex;
  gap: 24px;
  width: max-content;
  padding: 0 4vw 20px;
  will-change: transform;
}

.review-card {
  width: min(520px,86vw);
  min-height: 470px;
  background: rgba(255,255,255,.45);
  border: 1px solid rgba(30,40,53,.14);
  border-radius: 26px;
  padding: 42px 36px 34px;
  display: flex;
  flex-direction: column;
  position: relative;
}

.quote-open {
  width: 46px;
  margin-bottom: 24px;
}

.review-text p {
  font-size: 18px;
  line-height: 1.45;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 7;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.review-card.is-expanded .review-text p {
  display: block;
  -webkit-line-clamp: unset;
}

.review-toggle {
  appearance: none;
  border: 0;
  background: none;
  padding: 0;
  margin: 16px 0 0;
  align-self: flex-start;
  text-decoration: underline;
  cursor: pointer;
  color: var(--ink);
}

.review-card footer {
  font-size: 14px;
  line-height: 1.35;
  margin-top: auto;
  padding-top: 28px;
  font-weight: 500;
}

/* CONTACTS */
.contacts {
  padding: 105px 0 100px;
  min-height: 900px;
}

.contacts-grid {
  display: grid;
  grid-template-columns: 45% 55%;
  align-items: center;
  min-height: 690px;
}

.contacts-visual img, .contacts-visual .contacts-face-svg {
  width: 112%;
  margin-left: -20%;
  opacity: .95;
}

.contacts-copy {
  padding-left: 6vw;
}

.contacts-logo {
  width: 230px;
  margin-bottom: 70px;
}

.contacts-lead {
  font-size: clamp(25px,2vw,38px);
  line-height: 1.22;
  margin: 0;
}

.contacts-info {
  margin-top: 56px;
  font-size: 18px;
  line-height: 1.6;
}

.contacts-info strong {
  font-size: 24px;
}

.contacts-info p {
  margin: 14px 0 0;
}

/* SHARED */
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .7s ease,transform .7s ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: none;
}

.stagger>* {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .55s ease,transform .55s ease;
}

.stagger.is-visible>* {
  opacity: 1;
  transform: none;
}

.stagger.is-visible>*:nth-child(2) {
  transition-delay: .08s;
}

.stagger.is-visible>*:nth-child(3) {
  transition-delay: .16s;
}

.stagger.is-visible>*:nth-child(4) {
  transition-delay: .24s;
}

.stagger.is-visible>*:nth-child(5) {
  transition-delay: .32s;
}


@media (max-width:1599px) {
  :root {
    --container: 1320px;
    --pad: 48px;
  }

  /* HERO */
  .hero {
    min-height: 1150px;
  }

  /* PARTNERS */
  .partners {
    min-height: 850px;
  }

  .partners-stage {
    min-height: 570px;
  }

  /* SERVICES */
  .services {
    min-height: 850px;
  }

  .services-orbit {
    height: 560px;
  }

  /* RESULTS */
  .results {
    min-height: 900px;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:1199px) {
  :root {
    --pad: 32px;
    --radius: 22px;
  }

  /* HERO */
  .hero {
    padding-top: 84px;
  }

  .hero-main {
    min-height: 610px;
  }

  /* PARTNERS */
  .partners {
    min-height: auto;
  }

  .partners-stage {
    min-height: 600px;
  }

  .partner-cloud {
    grid-template-columns: repeat(4,1fr);
    grid-template-rows: repeat(5,1fr);
  }

  .partner-cloud img:nth-child(n/**/+14) {
    display: none;
  }

  /* PRINCIPLES */
  .principle-grid {
    grid-template-columns: repeat(2,1fr);
  }

  .principle-card {
    min-height: 320px;
  }

  /* PROCESS */
  .process {
    min-height: 800px;
  }

  .process-wrap {
    height: 670px;
  }

  /* SERVICES */
  .services-orbit {
    height: 620px;
  }

  .services-molecule {
    width: 310px;
  }

  /* RESULTS */
  .results-dna {
    width: 150px;
    left: -2%;
  }

  /* TEAM */
  .team-intro {
    grid-template-columns: 130px 1fr;
  }

  .team-grid {
    grid-template-columns: repeat(2,1fr);
    gap: 36px 24px;
  }

  /* CONTACTS */
  .contacts {
    min-height: 760px;
  }

  .contacts-grid {
    min-height: 570px;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:767px) {
  :root {
    --h1: clamp(42px,12vw,64px);
    --h2: clamp(34px,9vw,48px);
    --body: 17px;
  }

  .container {
    width: calc(100% - var(--pad)*2);
  }

  .primary-nav a::after {
    display: none;
  }

  /* HERO */
  .hero-copy>p {
    font-size: 18px;
    margin-top: 30px;
  }

  .effie-visual {
    left: 20px;
    height: 115px;
  }

  /* PARTNERS */
  .section-heading.compact {
    display: block;
  }

  .partners-stage {
    margin-top: 44px;
  }

  .partner-cloud {
    grid-template-rows: auto;
    gap: 24px 18px;
  }

  .partner-cloud img {
    max-width: 100%;
    max-height: 52px;
  }

  .partner-cloud img:nth-child(n/**/+13) {
    display: none;
  }

  /* SHARED */
  .section-heading.inverse h2 {
    line-height: 1.07;
  }

  /* PRINCIPLES */
  .principle-grid {
    grid-template-columns: repeat(2,1fr);
    gap: 12px;
    margin-top: 44px;
  }

  .principle-card {
    min-height: 235px;
    padding: 26px 14px 22px;
  }

  .principle-card img {
    width: 68%;
  }

  .principle-card h3 {
    font-size: 19px;
  }

  /* PROCESS */
  .process-wrap {
    height: 730px;
  }

  .process-map {
    max-width: 430px;
  }

  .road {
    left: 50%;
    top: 7%;
    width: 440px;
    height: 620px;
    transform: translateX(-50%) rotate(90deg);
    object-fit: fill;
    opacity: .9;
  }

  .process-point {
    font-size: 27px;
  }

  .p1 {
    left: 4%;
    top: 5%;
  }

  .p2 {
    right: 1%;
    left: auto;
    top: 22%;
  }

  .p3 {
    left: 0;
    right: auto;
    top: 43%;
  }

  .p4 {
    right: 2%;
    left: auto;
    bottom: 27%;
  }

  .p5 {
    left: 4%;
    right: auto;
    bottom: 5%;
  }

  .geo-mark {
    width: 70px;
    left: 54%;
    bottom: 11%;
  }

  /* SHARED */
  .section-heading.center {
    text-align: left;
  }

  .section-heading h2 br {
    display: none;
  }

  /* SERVICES */
  .services-orbit {
    height: auto;
    margin-top: 44px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }

  .services-molecule {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    width: 180px;
    margin: 0 auto 34px;
  }

  .service-label {
    position: relative;
    inset: auto !important;
    padding: 15px 0;
    border-top: 1px solid rgba(30,40,53,.18);
    font-size: 20px;
  }

  .service-label:last-child {
    border-bottom: 1px solid rgba(30,40,53,.18);
  }

  /* RESULTS */
  .results-dna {
    right: -26px;
  }

  .results-grid {
    grid-template-columns: repeat(2,1fr);
    gap: 54px 16px;
    margin-top: 60px;
  }

  .results-grid article {
    grid-column: span 1;
  }

  .results-grid article.wide {
    grid-column: span 1;
  }

  .results-grid article:last-child {
    grid-column: 1/-1;
  }

  .results-grid strong {
    font-size: 58px;
  }

  .results-grid span {
    font-size: 15px;
  }

  .results-note {
    margin-top: 46px;
  }

  /* TEAM */
  .team {
    padding-top: 82px;
  }

  .team-intro {
    margin-bottom: 45px;
  }

  .team-intro img {
    width: 78px;
    margin-bottom: 24px;
  }

  .team-intro p {
    font-size: 27px;
  }

  .team-intro p br {
    display: none;
  }

  .team-grid {
    gap: 42px;
  }

  /* REVIEWS */
  .reviews-heading {
    margin-top: 82px;
  }

  .reviews-heading h2 {
    text-align: left;
  }

  .review-card {
    min-height: 430px;
    padding: 30px 24px;
  }

  .review-text p {
    font-size: 16px;
  }

  /* CONTACTS */
  .contacts-grid {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .contacts-logo {
    margin-bottom: 42px;
  }

  .contacts-lead {
    font-size: 27px;
  }

  .contacts-lead br {
    display: none;
  }

  .contacts-info {
    font-size: 16px;
    margin-top: 42px;
  }

  .contacts-info strong {
    font-size: 21px;
  }

  .contacts-visual {
    align-self: flex-start;
    margin-top: 38px;
  }

  .contacts-visual img {
    width: 100%;
    margin-left: -10%;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:390px) {
  :root {
    --pad: 16px;
  }

  /* PRINCIPLES */
  .principle-grid {
    grid-template-columns: 1fr;
  }

  /* PARTNERS */
  .partner-cloud {
    grid-template-columns: repeat(2,1fr);
  }

  /* RESULTS */
  .results-grid {
    grid-template-columns: 1fr;
  }

  .results-grid article, .results-grid article.wide, .results-grid article:last-child {
    grid-column: 1;
  }

  .results-grid strong {
    font-size: 64px;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:1599px) and (min-width:1200px) {
  .brand-masthead {
    height: 176px;
  }

  .masthead-logo {
    width: min(560px,42vw);
  }

  /* HERO */
  .hero {
    min-height: 900px;
  }

  .hero-main {
    height: 605px;
  }

  .hero-copy {
    padding-top: 70px;
  }

  .hero-copy h1 {
    font-size: clamp(48px,3.55vw,57px);
  }

  .hero-support {
    margin-top: 118px;
    gap: 24px;
  }

  .hero-copy .hero-support>p {
    font-size: 22px;
  }

  .hero-years strong {
    font-size: 126px;
  }

  .hero-years span {
    font-size: 33px;
  }

  .hero-stats {
    width: calc(100% - 96px);
    gap: 34px;
  }

  .hero-stat {
    min-height: 215px;
    border-radius: 32px;
  }

  .hero-stat strong {
    font-size: 88px;
  }

  .hero-stat span {
    font-size: 19px;
    margin-top: 16px;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:1199px) {
  .brand-masthead {
    height: 145px;
  }

  .masthead-logo {
    width: min(440px,52vw);
  }

  .site-header {
    height: 60px;
  }

  .primary-nav {
    font-size: 16px;
    gap: 23px;
  }

  .primary-nav a:not(:last-child)::before {
    right: -13px;
  }

  /* HERO */
  .hero {
    padding: 0 0 54px;
    min-height: auto;
  }

  .hero-main {
    grid-template-columns: 41% 59%;
    height: 570px;
  }

  .hero-copy {
    padding-top: 58px;
  }

  .hero-copy h1 {
    font-size: clamp(38px,4.2vw,50px);
    white-space: nowrap;
  }

  .hero-visual img {
    width: 118%;
    margin-left: -25%;
    margin-top: 18px;
    opacity: .20;
  }

  .hero-support {
    margin-top: 92px;
    gap: 18px;
  }

  .hero-copy .hero-support>p {
    font-size: 18px;
  }

  .hero-years strong {
    font-size: 102px;
  }

  .hero-years span {
    font-size: 27px;
  }

  .hero-stats {
    width: calc(100% - 64px);
    grid-template-columns: repeat(2,1fr);
    gap: 24px;
    margin-top: 8px;
  }

  .hero-stat {
    min-height: 185px;
    border-radius: 28px;
  }

  .hero-stat strong {
    font-size: 76px;
  }

  .hero-stat span {
    font-size: 18px;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:767px) {
  .mobile-menu-button {
    display: flex;
    pointer-events: auto;
    border: 0;
    background: transparent;
    align-items: center;
  }

  .menu-icon {
    position: relative;
  }

  .menu-icon i {
    position: absolute;
    left: 0;
    width: 100%;
    transition: .25s;
  }

  .site-header.menu-open .menu-icon i:first-child {
    top: 8px;
    transform: rotate(45deg);
  }

  .site-header.menu-open .menu-icon i:last-child {
    bottom: 9px;
    transform: rotate(-45deg);
  }

  .primary-nav {
    position: absolute;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    background: rgba(30,42,56,.98);
    transform: translateY(-130%);
    opacity: 0;
    transition: .28s;
    pointer-events: none;
    box-shadow: 0 12px 28px rgba(10,18,27,.25);
  }

  .site-header.menu-open .primary-nav {
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }

  .primary-nav a {
    border-bottom: 1px solid rgba(255,255,255,.12);
  }

  .primary-nav a::before, .primary-nav a::after {
    display: none;
  }

  .primary-nav a.is-active {
    font-weight: 600;
    color: #a5c2df;
  }

  /* HERO */
  .hero-main {
    flex-direction: column;
  }

  .hero-copy {
    order: 1;
  }

  .hero-visual {
    order: 2;
    align-self: flex-start;
    margin-top: 16px;
  }

  .hero-stats {
    margin-top: 28px;
  }

  .hero-stat strong {
    font-size: 60px;
  }

  .hero-stat span {
    font-size: 15px;
    margin-top: 12px;
  }

  .effie-visual {
    inset: 15px 10px 10px 26px;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (prefers-reduced-motion:reduce) {
  html {
    scroll-behavior: auto;
  }

  .reveal, .stagger>*, .process-point {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  /* REVIEWS */
  .reviews-track {
    transform: none !important;
  }

  /* SHARED */
  .site-header, .primary-nav {
    transition: none !important;
  }

}


/* HERO */
@media (min-width:1600px) {
  .hero-main {
    width: 100%;
    max-width: none;
  }

  .hero-visual {
    overflow: visible;
  }

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

  .hero-years span {
    flex-direction: column;
    justify-content: center;
  }

  .effie-visual {
    position: absolute;
    inset: 20px 18px 12px 68px;
  }

  .effie-visual img {
    position: absolute;
    width: auto;
    max-height: none;
  }

  .effie-visual .effie-logo {
    width: 54%;
    right: 3%;
    top: 12%;
  }

  .effie-visual .effie-award {
    width: 25%;
    bottom: 3%;
  }

  .effie-visual .award-one {
    left: 24%;
  }

  .effie-visual .award-two {
    left: 48%;
  }

  /* SHARED */
  .site-header {
    height: 60px;
  }

  /* HERO */
  .hero {
    min-height: auto;
  }

  .hero-main {
    grid-template-columns: 44% 56%;
  }

  .hero-copy {
    padding: 78px 66px 0 0;
  }

  .hero-copy h1 {
    letter-spacing: -.035em;
    font-weight: 600;
  }

  .hero-support {
    margin-top: 189px;
    gap: 31px;
    padding-right: 0;
  }

  .hero-years {
    gap: 16px;
  }

  .hero-years span {
    margin-top: 8px;
  }

  .hero-stats {
    margin-top: 0;
  }

  .hero-stat {
    border-radius: 38px;
    padding: 28px 28px 24px;
  }

  /* SHARED */
  .nav-shell {
    transform: none;
  }

  .primary-nav {
    font-size: 25px;
    font-weight: 400;
    gap: 39px;
  }

  .primary-nav a {
    padding: 18px 0 16px;
  }

  .primary-nav a:not(:last-child)::before {
    right: -22px;
  }

  .brand-masthead {
    height: 193px;
  }

  .masthead-logo {
    width: 521px;
    transform: translateY(-7px);
  }

  /* HERO */
  .hero-stat strong {
    font-size: 144px;
    font-weight: 600;
    line-height: .82;
  }

  .hero-stat span {
    font-size: 30px;
    line-height: 1.18;
    margin-top: 22px;
    font-weight: 300;
  }

  .hero-stat-effie .effie-visual {
    inset: 0;
  }

  .hero-stat-effie .effie-visual img.effie-logo {
    height: auto;
    right: auto;
    bottom: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award {
    height: auto;
    top: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-one {
    right: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-two {
    right: auto;
  }

  .hero {
    background: linear-gradient(90deg,#1e2835 0%,#1e2835 10%,#2b3745 30%,#445264 50%,#71849b 75%,#a5bedb 100%);
  }

  .hero-stat:not(.hero-stat-effie)>strong {
    position: relative;
    top: -2px;
    letter-spacing: -.025em;
  }

  .hero-stat:not(.hero-stat-effie)>span {
    position: relative;
    top: -7px;
    margin-top: 22px;
    font-size: 30px;
    font-weight: 300;
  }

  .hero-stat-effie>strong {
    letter-spacing: -.025em;
  }

  .hero-stat-effie>strong {
    top: 35px;
    font-size: 144px;
  }

  .hero-stat-effie .effie-visual img.effie-logo {
    width: 40%;
    left: 37%;
    top: 16%;
  }

  .hero-stat-effie .effie-visual img.effie-award {
    width: 25%;
    bottom: 8%;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-one {
    left: 24%;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-two {
    left: 49%;
  }

  .hero-stat-effie>strong {
    left: 82px;
    z-index: 1;
  }

  .hero-stat-effie .effie-visual {
    z-index: 2;
  }

}

@media (min-width:1921px) {
  .hero-copy {
    padding-right: calc((100vw - 1800px) / 2);
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (min-width:1200px) and (max-width:1919px) {
  :root {
    --header-h: 3.125vw;
  }

  .brand-masthead {
    height: 10.052083vw;
  }

  .masthead-logo {
    width: 27.135417vw;
    transform: translateY(-0.364583vw);
  }

  .site-header {
    height: 3.125vw;
  }

  .nav-shell {
    transform: none;
    padding-inline: 1.25vw;
  }

  .primary-nav {
    font-size: 1.302083vw;
    font-weight: 400;
    gap: 2.03125vw;
  }

  .primary-nav a {
    padding: .9375vw 0 .833333vw;
  }

  .primary-nav a:not(:last-child)::before {
    right: -1.145833vw;
  }

  /* HERO */
  .hero {
    background: linear-gradient(90deg,#1e2835 0%,#1e2835 10%,#2b3745 30%,#445264 50%,#71849b 75%,#a5bedb 100%);
  }

  .hero-visual {
    overflow: visible;
  }

  .hero-support {
    margin-top: 9.84375vw;
    padding-right: 0;
    gap: 1.614583vw;
    align-items: center;
  }

  .hero-years {
    gap: .833333vw;
  }

  .hero-years span {
    flex-direction: column;
    justify-content: center;
    margin-top: .416667vw;
  }

  .hero-stats {
    margin-top: 0;
  }

  .hero-stat-effie .effie-visual {
    inset: 0;
    z-index: 2;
  }

  .hero-stat-effie .effie-visual img.effie-logo {
    width: 40%;
    height: auto;
    left: 37%;
    right: auto;
    top: 16%;
    bottom: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award {
    width: 25%;
    height: auto;
    top: auto;
    bottom: 8%;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-one {
    left: 24%;
    right: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-two {
    left: 49%;
    right: auto;
  }

}

.tablet-line-break {
  display: none;
}



/* SHARED / CASCADE BOUNDARY */
@media (min-width:768px) and (max-width:1199px) {
  :root {
    --header-h: 3.67vw;
    --pad: 0px;
  }

  .brand-masthead {
    height: 11.93vw;
    min-height: 0;
  }

  .masthead-logo {
    width: 30.86vw;
    max-width: none;
    transform: none;
  }

  .site-header {
    height: 3.67vw;
    min-height: 0;
  }

  .nav-shell {
    padding: 0;
    justify-content: center;
  }

  .primary-nav {
    gap: 2.34vw;
    font-size: 1.65vw;
    line-height: 1;
    font-weight: 300;
  }

  .primary-nav a {
    padding: 1.00vw 0 .92vw;
  }

  .primary-nav a:not(:last-child)::before {
    right: -1.30vw;
  }

  .primary-nav a::after {
    bottom: .42vw;
  }

  /* HERO */
  .hero {
    background: linear-gradient(90deg,#1e2835 0%,#1e2835 10%,#2b3745 30%,#445264 50%,#71849b 75%,#a5bedb 100%);
  }

  .hero-copy {
    left: 42.55vw;
    right: 3.35vw;
    top: 4.02vw;
  }

  .hero-support {
    right: 0;
  }

  .hero-years {
    right: 0;
    align-items: center;
    justify-content: flex-end;
    gap: 1.05vw;
  }

  .hero-years span {
    flex-direction: column;
    justify-content: center;
    margin-top: .35vw;
  }

  /* PRINCIPLES */
  .principles {
    --principles-tablet-u: calc(100vw / 1199);
    position: relative;
    width: 100%;
    height: calc(719 * var(--principles-tablet-u));
    min-height: calc(719 * var(--principles-tablet-u));
    padding: 0;
    overflow: hidden;
    background: #3b4857;
  }

  .principles>.container {
    position: relative;
    width: calc(1199 * var(--principles-tablet-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .principles .section-heading {
    position: absolute;
    inset: 0;
    text-align: left;
  }

  .principles .principles-title {
    position: absolute;
    inset: 0;
    margin: 0;
    font-size: calc(50 * var(--principles-tablet-u));
    line-height: 1;
    letter-spacing: -.035em;
    font-weight: 400;
  }

  .principles .principles-line {
    position: absolute;
    display: flex;
    align-items: baseline;
    white-space: nowrap;
    line-height: 1;
  }

  .principles .principles-line strong {
    color: #fff;
    font: inherit;
    font-weight: 600;
  }

  .principles .principles-line em {
    color: #c0d2e6;
    font-family: Onest,sans-serif;
    font-size: calc(38 * var(--principles-tablet-u));
    line-height: 1;
    font-weight: 300;
    font-style: normal;
    letter-spacing: -.025em;
  }

  .principles .principles-line-1 {
    left: calc(154 * var(--principles-tablet-u));
    top: calc(59 * var(--principles-tablet-u));
    gap: calc(28 * var(--principles-tablet-u));
  }

  .principles .principles-line-2 {
    left: calc(229 * var(--principles-tablet-u));
    top: calc(131 * var(--principles-tablet-u));
    gap: calc(31 * var(--principles-tablet-u));
  }

  .principles .principles-line-3 {
    left: calc(326 * var(--principles-tablet-u));
    top: calc(202 * var(--principles-tablet-u));
  }

  .principles .principle-grid {
    position: absolute;
    left: calc(43 * var(--principles-tablet-u));
    top: calc(313 * var(--principles-tablet-u));
    display: grid;
    grid-template-columns: repeat(4,calc(256 * var(--principles-tablet-u)));
    gap: calc(24.333333 * var(--principles-tablet-u));
    margin: 0;
  }

  .principles .principle-card {
    position: relative;
    width: calc(256 * var(--principles-tablet-u));
    height: calc(343 * var(--principles-tablet-u));
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: url("assets/img/principles-frame-tablet.svg") 0 0/100% 100% no-repeat;
    overflow: hidden;
    display: block;
  }

  .principles .principle-card::before {
    display: none;
  }

  .principles .principle-card h3 {
    position: absolute;
    left: 0;
    top: calc(38 * var(--principles-tablet-u));
    width: 100%;
    margin: 0;
    color: #205899;
    font-size: calc(26 * var(--principles-tablet-u));
    line-height: 1.04;
    letter-spacing: -.025em;
    font-weight: 600;
    text-align: center;
  }

  .principles .principle-card:nth-child(3) h3 {
    top: calc(26 * var(--principles-tablet-u));
  }

  .principles .principle-card img {
    position: absolute;
    z-index: 1;
    max-width: none;
    max-height: none;
    margin: 0;
  }

  .principles .principle-card:nth-child(1) img {
    width: calc(134 * var(--principles-tablet-u));
    left: calc(58 * var(--principles-tablet-u));
    top: calc(153 * var(--principles-tablet-u));
  }

  .principles .principle-card:nth-child(2) img {
    width: calc(158 * var(--principles-tablet-u));
    left: calc(58 * var(--principles-tablet-u));
    top: calc(148 * var(--principles-tablet-u));
  }

  .principles .principle-card:nth-child(3) img {
    width: calc(180 * var(--principles-tablet-u));
    left: calc(42 * var(--principles-tablet-u));
    top: calc(146 * var(--principles-tablet-u));
  }

  .principles .principle-card:nth-child(4) img {
    width: calc(190 * var(--principles-tablet-u));
    left: calc(33 * var(--principles-tablet-u));
    top: calc(155 * var(--principles-tablet-u));
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:767px) {
  :root {
    --pad: 25px;
    --header-h: 43px;
  }

  .site-header {
    background: #1e2a38;
    color: #fff;
  }

  .nav-shell {
    justify-content: flex-end;
    padding: 0 20px;
  }

  .mobile-menu-button {
    color: #fff;
    padding: 0;
  }

  .menu-icon i {
    height: 1px;
    background: #fff;
  }

  .menu-icon i:first-child {
    top: 4px;
  }

  .menu-icon i:last-child {
    bottom: 4px;
  }

  /* HERO */
  .hero {
    background: linear-gradient(270deg,#8196af 0%,#364353 67%,#1e2835 93%,#1e2835 100%);
  }

  .hero-main {
    min-height: 0;
  }

  .hero-copy .hero-support>p {
    margin: 0;
    line-height: 1.22;
    text-align: left;
    font-weight: 300;
    white-space: nowrap;
  }

  .hero-years {
    justify-content: flex-start;
    align-items: center;
  }

  .hero-years span {
    flex-direction: column;
    line-height: .82;
    font-weight: 300;
  }

  .hero-visual {
    overflow: visible;
    pointer-events: none;
  }

}

@media (max-width:390px) {
  .hero-copy .hero-support>p {
    font-size: 4.36vw;
  }

  .hero-visual {
    top: 20vw;
  }

  .hero-years strong {
    font-size: 19.23vw;
  }

  .hero-years span {
    font-size: 7.18vw;
  }

  .hero-stat strong, .hero-stat:not(.hero-stat-effie)>strong, .hero-stat-effie>strong {
    font-size: 11.79vw;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:767px) {
  .menu-icon i:nth-child(1) {
    bottom: auto;
  }

  .menu-icon i:nth-child(2) {
    bottom: auto;
  }

  .menu-icon i:nth-child(3) {
    bottom: auto;
  }

  .site-header.menu-open .menu-icon i:nth-child(1) {
    top: 9px;
    transform: rotate(45deg);
  }

  .site-header.menu-open .menu-icon i:nth-child(2) {
    opacity: 0;
  }

  .site-header.menu-open .menu-icon i:nth-child(3) {
    top: 9px;
    bottom: auto;
    transform: rotate(-45deg);
  }

}


/* HERO */
@media (max-width:390px) {
  .hero-copy h1 {
    font-size: 6.79vw;
  }

  .hero-visual {
    left: -.51vw;
    width: 87.69vw;
  }

}


/* SHARED / CASCADE BOUNDARY */
@media (max-width:767px) {
  :root {
    --mobile-u: clamp(.820513px,.256410vw,1.230769px);
  }

  .brand-masthead {
    height: calc(80 * var(--mobile-u));
  }

  .masthead-logo {
    width: calc(214 * var(--mobile-u));
    transform: translateY(calc(-4 * var(--mobile-u)));
  }

  .site-header {
    height: calc(43 * var(--mobile-u));
  }

  .nav-shell {
    padding-inline: calc(20 * var(--mobile-u));
  }

  .mobile-menu-button {
    font-size: calc(17 * var(--mobile-u));
    gap: calc(16 * var(--mobile-u));
  }

  .menu-icon {
    width: calc(25 * var(--mobile-u));
    height: calc(19 * var(--mobile-u));
  }

  .menu-icon i:nth-child(1) {
    top: calc(3 * var(--mobile-u));
  }

  .menu-icon i:nth-child(2) {
    top: calc(9 * var(--mobile-u));
  }

  .menu-icon i:nth-child(3) {
    top: calc(15 * var(--mobile-u));
  }

  .site-header.menu-open .menu-icon i:nth-child(1), .site-header.menu-open .menu-icon i:nth-child(3) {
    top: calc(9 * var(--mobile-u));
  }

  .primary-nav {
    top: calc(43 * var(--mobile-u));
    padding: calc(10 * var(--mobile-u)) calc(20 * var(--mobile-u)) calc(18 * var(--mobile-u));
  }

  .primary-nav a {
    padding: calc(13 * var(--mobile-u)) 0;
  }

  /* HERO */
  .hero {
    padding-bottom: calc(22 * var(--mobile-u));
  }

  .hero-main {
    margin-inline: auto;
  }

  .hero-copy {
    padding-top: calc(16 * var(--mobile-u));
  }

  .hero-support {
    margin-top: calc(56 * var(--mobile-u));
  }

  .hero-copy .hero-support>p {
    font-size: calc(17 * var(--mobile-u));
  }

  .hero-years {
    gap: calc(14 * var(--mobile-u));
    margin-top: calc(19 * var(--mobile-u));
  }

  .hero-years span {
    margin-top: calc(4 * var(--mobile-u));
  }

  .hero-stats {
    margin-inline: auto;
  }

  .hero-stat strong, .hero-stat:not(.hero-stat-effie)>strong, .hero-stat-effie>strong {
    font-size: calc(46 * var(--mobile-u));
  }

}


/* PARTNERS */
@media (min-width:1600px) {
  .partners {
    height: 1080px;
    min-height: 1080px;
    padding: 0;
  }

  .partners>.container {
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
  }

  .partners .section-heading.compact {
    position: absolute;
    z-index: 3;
    align-items: baseline;
    gap: 28px;
  }

  .partners .section-heading h2 {
    font-weight: 600;
    letter-spacing: -.035em;
    color: #6599d6;
  }

  .partners .section-heading p {
    font-weight: 300;
    letter-spacing: -.02em;
    color: #202b39;
  }

  .partners-stage {
    position: absolute;
    inset: 0;
    margin: 0;
    min-height: 0;
    height: 1080px;
  }

  .partners-tree {
    position: absolute;
    height: auto;
    z-index: 1;
  }

  .partner-cloud {
    position: absolute;
    inset: 0;
    display: block;
    z-index: 2;
  }

  .partner-cloud img {
    position: absolute;
    display: block;
    max-width: none;
    max-height: none;
    width: auto;
    height: auto;
    object-fit: contain;
    transform: none !important;
  }

  .partners {
    background: linear-gradient(180deg,#ffffff 0%,#d8e5f5 100%);
  }

  .partners .section-heading.compact {
    display: block;
  }

  .partners .section-heading.compact {
    left: 95px;
    top: 49px;
  }

  .partners .section-heading h2 {
    font-size: 80px;
    line-height: .90;
  }

  .partners .section-heading p {
    margin: -1px 0 0 185px;
    font-size: 60px;
    line-height: 1;
  }

  .partners-tree {
    left: 977px;
    top: 224px;
    width: 574px;
    transform: translateX(-50%);
  }

  .partner-cloud img:nth-child(1) {
    left: 657px;
    top: 250px;
    width: 116px;
  }

  .partner-cloud img:nth-child(2) {
    left: 1175px;
    top: 225px;
    width: 203px;
  }

  .partner-cloud img:nth-child(3) {
    left: 1110px;
    top: 867px;
    width: 258px;
  }

  .partner-cloud img:nth-child(4) {
    left: 1258px;
    top: 444px;
    width: 310px;
  }

  .partner-cloud img:nth-child(5) {
    left: 1225px;
    top: 733px;
    width: 223px;
  }

  .partner-cloud img:nth-child(6) {
    left: 575px;
    top: 835px;
    width: 226px;
  }

  .partner-cloud img:nth-child(7) {
    left: 48px;
    top: 759px;
    width: 202px;
  }

  .partner-cloud img:nth-child(8) {
    left: 305px;
    top: 388px;
    width: 270px;
  }

  .partner-cloud img:nth-child(9) {
    left: 1600px;
    top: 506px;
    width: 252px;
  }

  .partner-cloud img:nth-child(10) {
    left: 91px;
    top: 246px;
    width: 165px;
  }

  .partner-cloud img:nth-child(11) {
    left: 277px;
    top: 687px;
    width: 397px;
  }

  .partner-cloud img:nth-child(12) {
    left: 1518px;
    top: 909px;
    width: 284px;
  }

  .partner-cloud img:nth-child(13) {
    left: 84px;
    top: 555px;
    width: 323px;
  }

  .partner-cloud img:nth-child(14) {
    left: 1494px;
    top: 212px;
    width: 312px;
  }

  .partner-cloud img:nth-child(15) {
    left: 1292px;
    top: 610px;
    width: 262px;
  }

  .partner-cloud img:nth-child(16) {
    left: 1585px;
    top: 700px;
    width: 226px;
  }

  .partner-cloud img:nth-child(17) {
    left: 512px;
    top: 507px;
    width: 154px;
  }

  .partner-cloud img:nth-child(18) {
    left: 181px;
    top: 958px;
    width: 283px;
  }

}

@media (min-width:1920px) {
  .partners {
    height: 1080px;
    min-height: 1080px;
    padding: 0;
    background: linear-gradient(180deg,#ffffff 0%,#d8e5f5 100%);
    overflow: hidden;
  }

  .partners>.container {
    width: 1920px;
    max-width: 1920px;
    height: 1080px;
    margin: 0 auto;
    position: relative;
  }

}

@media (min-width:1200px) and (max-width:1919px) {
  .partners {
    height: 56.25vw;
    min-height: 56.25vw;
    padding: 0;
    background: linear-gradient(180deg,#ffffff 0%,#d8e5f5 100%);
    overflow: hidden;
  }

  .partners>.container {
    width: 100%;
    max-width: none;
    height: 56.25vw;
    margin: 0;
    position: relative;
  }

  .partners .section-heading.compact {
    position: absolute;
    z-index: 3;
    display: block;
    left: 4.947917vw;
    top: 2.552083vw;
  }

  .partners .section-heading h2 {
    font-size: 4.166667vw;
    line-height: .90;
    font-weight: 600;
    letter-spacing: -.035em;
    color: #6599d6;
  }

  .partners .section-heading p {
    margin: -0.052083vw 0 0 9.635417vw;
    font-size: 3.125vw;
    line-height: 1;
    font-weight: 300;
    letter-spacing: -.02em;
    color: #202b39;
  }

  .partners-stage {
    position: absolute;
    inset: 0;
    margin: 0;
    min-height: 0;
    height: 56.25vw;
  }

  .partners-tree {
    position: absolute;
    left: 50.885417vw;
    top: 11.666667vw;
    width: 29.895833vw;
    height: auto;
    transform: translateX(-50%);
    z-index: 1;
  }

  .partner-cloud {
    position: absolute;
    inset: 0;
    display: block;
    z-index: 2;
  }

  .partner-cloud img {
    position: absolute;
    display: block;
    max-width: none;
    max-height: none;
    width: auto;
    height: auto;
    object-fit: contain;
    transform: none !important;
  }

  .partner-cloud img:nth-child(1) {
    left: 34.21875vw;
    top: 13.020833vw;
    width: 6.041667vw;
  }

  .partner-cloud img:nth-child(2) {
    left: 61.197917vw;
    top: 11.71875vw;
    width: 10.572917vw;
  }

  .partner-cloud img:nth-child(3) {
    left: 57.8125vw;
    top: 45.15625vw;
    width: 13.4375vw;
  }

  .partner-cloud img:nth-child(4) {
    left: 65.520833vw;
    top: 23.125vw;
    width: 16.145833vw;
  }

  .partner-cloud img:nth-child(5) {
    left: 63.802083vw;
    top: 38.177083vw;
    width: 11.614583vw;
  }

  .partner-cloud img:nth-child(6) {
    left: 29.947917vw;
    top: 43.489583vw;
    width: 11.770833vw;
  }

  .partner-cloud img:nth-child(7) {
    left: 2.5vw;
    top: 39.53125vw;
    width: 10.520833vw;
  }

  .partner-cloud img:nth-child(8) {
    left: 15.885417vw;
    top: 20.208333vw;
    width: 14.0625vw;
  }

  .partner-cloud img:nth-child(9) {
    left: 83.333333vw;
    top: 26.354167vw;
    width: 13.125vw;
  }

  .partner-cloud img:nth-child(10) {
    left: 4.739583vw;
    top: 12.8125vw;
    width: 8.59375vw;
  }

  .partner-cloud img:nth-child(11) {
    left: 14.427083vw;
    top: 35.78125vw;
    width: 20.677083vw;
  }

  .partner-cloud img:nth-child(12) {
    left: 79.0625vw;
    top: 47.34375vw;
    width: 14.791667vw;
  }

  .partner-cloud img:nth-child(13) {
    left: 4.375vw;
    top: 28.90625vw;
    width: 16.822917vw;
  }

  .partner-cloud img:nth-child(14) {
    left: 77.8125vw;
    top: 11.041667vw;
    width: 16.25vw;
  }

  .partner-cloud img:nth-child(15) {
    left: 67.291667vw;
    top: 31.770833vw;
    width: 13.645833vw;
  }

  .partner-cloud img:nth-child(16) {
    left: 82.552083vw;
    top: 36.458333vw;
    width: 11.770833vw;
  }

  .partner-cloud img:nth-child(17) {
    left: 26.666667vw;
    top: 26.40625vw;
    width: 8.020833vw;
  }

  .partner-cloud img:nth-child(18) {
    left: 9.427083vw;
    top: 49.895833vw;
    width: 14.739583vw;
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .partners {
    --partners-tablet-u: calc(100vw / 1199);
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#ffffff 0%,#d8e5f5 100%);
  }

  .partners>.container {
    position: relative;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .partners .section-heading.compact {
    position: absolute;
    z-index: 3;
    display: block;
    left: calc(59 * var(--partners-tablet-u));
    top: calc(37 * var(--partners-tablet-u));
  }

  .partners .section-heading h2 {
    margin: 0;
    font-size: calc(50 * var(--partners-tablet-u));
    line-height: .90;
    font-weight: 600;
    letter-spacing: -.035em;
    color: #6599d6;
  }

  .partners .section-heading p {
    margin: calc(5 * var(--partners-tablet-u)) 0 0 calc(118 * var(--partners-tablet-u));
    font-size: calc(37 * var(--partners-tablet-u));
    line-height: 1;
    font-weight: 300;
    letter-spacing: -.02em;
    color: #202b39;
  }

  .partners-stage {
    position: absolute;
    inset: 0;
    height: 100%;
    min-height: 0;
    margin: 0;
  }

  .partners-tree {
    position: absolute;
    left: calc(611 * var(--partners-tablet-u));
    top: calc(158 * var(--partners-tablet-u));
    width: calc(350 * var(--partners-tablet-u));
    height: auto;
    transform: translateX(-50%);
    z-index: 1;
    margin: 0;
  }

  .partner-cloud {
    position: absolute;
    inset: 0;
    display: block;
    z-index: 2;
  }

  .partner-cloud img {
    position: absolute;
    display: block !important;
    max-width: none;
    max-height: none;
    height: auto;
    object-fit: contain;
    transform: none !important;
  }

  .partner-cloud img:nth-child(1) {
    left: calc(409 * var(--partners-tablet-u));
    top: calc(160 * var(--partners-tablet-u));
    width: calc(89 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(2) {
    left: calc(736 * var(--partners-tablet-u));
    top: calc(159 * var(--partners-tablet-u));
    width: calc(123 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(3) {
    left: calc(689 * var(--partners-tablet-u));
    top: calc(558 * var(--partners-tablet-u));
    width: calc(174 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(4) {
    left: calc(790 * var(--partners-tablet-u));
    top: calc(302 * var(--partners-tablet-u));
    width: calc(194 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(5) {
    left: calc(772 * var(--partners-tablet-u));
    top: calc(441 * var(--partners-tablet-u));
    width: calc(138 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(6) {
    left: calc(363 * var(--partners-tablet-u));
    top: calc(539 * var(--partners-tablet-u));
    width: calc(148 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(7) {
    left: calc(27 * var(--partners-tablet-u));
    top: calc(493 * var(--partners-tablet-u));
    width: calc(132 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(8) {
    left: calc(192 * var(--partners-tablet-u));
    top: calc(262 * var(--partners-tablet-u));
    width: calc(169 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(9) {
    left: calc(1002 * var(--partners-tablet-u));
    top: calc(340 * var(--partners-tablet-u));
    width: calc(148 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(10) {
    left: calc(55 * var(--partners-tablet-u));
    top: calc(169 * var(--partners-tablet-u));
    width: calc(103 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(11) {
    left: calc(186 * var(--partners-tablet-u));
    top: calc(447 * var(--partners-tablet-u));
    width: calc(239 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(12) {
    left: calc(948 * var(--partners-tablet-u));
    top: calc(583 * var(--partners-tablet-u));
    width: calc(180 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(13) {
    left: calc(53 * var(--partners-tablet-u));
    top: calc(369 * var(--partners-tablet-u));
    width: calc(200 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(14) {
    left: calc(931 * var(--partners-tablet-u));
    top: calc(149 * var(--partners-tablet-u));
    width: calc(197 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(15) {
    left: calc(805 * var(--partners-tablet-u));
    top: calc(395 * var(--partners-tablet-u));
    width: calc(163 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(16) {
    left: calc(991 * var(--partners-tablet-u));
    top: calc(455 * var(--partners-tablet-u));
    width: calc(145 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(17) {
    left: calc(317 * var(--partners-tablet-u));
    top: calc(336 * var(--partners-tablet-u));
    width: calc(102 * var(--partners-tablet-u));
  }

  .partner-cloud img:nth-child(18) {
    left: calc(115 * var(--partners-tablet-u));
    top: calc(618 * var(--partners-tablet-u));
    width: calc(180 * var(--partners-tablet-u));
  }

  .partners {
    height: calc(709 * var(--partners-tablet-u));
    min-height: calc(709 * var(--partners-tablet-u));
  }

  .partners>.container {
    height: calc(719 * var(--partners-tablet-u));
    transform: translateY(calc(-5 * var(--partners-tablet-u)));
  }

}

@media (max-width:767px) {
  .partners {
    position: relative;
    width: 100%;
    height: calc(588 * var(--mobile-u));
    min-height: calc(588 * var(--mobile-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#ffffff 0%,#d8e5f5 100%);
  }

  .partners>.container {
    position: relative;
    width: calc(390 * var(--mobile-u));
    max-width: none;
    height: calc(611 * var(--mobile-u));
    margin: 0 auto;
    padding: 0;
  }

  .partners .section-heading.compact {
    position: absolute;
    z-index: 4;
    display: block;
    left: calc(25 * var(--mobile-u));
    top: calc(24 * var(--mobile-u));
    margin: 0;
    width: auto;
  }

  .partners .section-heading h2 {
    margin: 0;
    font-size: calc(27.6 * var(--mobile-u));
    line-height: .88;
    font-weight: 600;
    letter-spacing: -.035em;
    color: #6398d6;
  }

  .partners .section-heading p {
    margin: calc(1 * var(--mobile-u)) 0 0 0;
    font-size: calc(19.6 * var(--mobile-u));
    line-height: 1;
    font-weight: 300;
    letter-spacing: -.01em;
    color: #243140;
    white-space: nowrap;
  }

  .partners-stage {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    margin: 0;
  }

  .partners-tree {
    position: absolute;
    z-index: 1;
    left: calc(188 * var(--mobile-u));
    top: calc(100 * var(--mobile-u));
    width: calc(300 * var(--mobile-u));
    height: auto;
    margin: 0;
    transform: translateX(-50%);
  }

  .partner-cloud {
    position: absolute;
    z-index: 2;
    grid-template-columns: repeat(2,calc(161 * var(--mobile-u)));
    grid-auto-rows: calc(61 * var(--mobile-u));
    column-gap: calc(17 * var(--mobile-u));
    row-gap: calc(11 * var(--mobile-u));
    align-items: stretch;
    justify-items: stretch;
  }

  .partner-cloud img {
    inset: auto !important;
    display: block !important;
    box-sizing: border-box;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: contain;
    background: rgba(255,255,255,.60);
    border: calc(1.07 * var(--mobile-u)) solid #527cad;
    border-radius: calc(13.32 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(2) {
    order: 1;
  }

  .partner-cloud img:nth-child(1) {
    order: 2;
  }

  .partner-cloud img:nth-child(8) {
    order: 3;
  }

  .partner-cloud img:nth-child(4) {
    order: 4;
  }

  .partner-cloud img:nth-child(17) {
    order: 5;
  }

  .partner-cloud img:nth-child(15) {
    order: 6;
  }

  .partner-cloud img:nth-child(3) {
    order: 7;
  }

  .partner-cloud img:nth-child(5) {
    order: 8;
  }

  .partner-cloud img:nth-child(6) {
    order: 9;
  }

  .partner-cloud img:nth-child(14) {
    order: 10;
  }

  .partner-cloud img:nth-child(7) {
    order: 11;
  }

  .partner-cloud img:nth-child(18) {
    order: 12;
  }

  .partner-cloud img:nth-child(13) {
    order: 13;
  }

  .partner-cloud img:nth-child(9) {
    order: 14;
  }

  .partner-cloud img:nth-child(10), .partner-cloud img:nth-child(11), .partner-cloud img:nth-child(12), .partner-cloud img:nth-child(16) {
    display: none !important;
  }

  .partner-cloud img:nth-child(2) {
    padding: calc(3 * var(--mobile-u)) calc(20 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(1) {
    padding: calc(7 * var(--mobile-u)) calc(52 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(8) {
    padding: calc(15 * var(--mobile-u)) calc(14 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(4) {
    padding: calc(15 * var(--mobile-u)) calc(9 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(17) {
    padding: calc(7 * var(--mobile-u)) calc(40 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(15) {
    padding: calc(10 * var(--mobile-u)) calc(20 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(3) {
    padding: calc(5 * var(--mobile-u)) calc(24 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(5) {
    padding: calc(6 * var(--mobile-u)) calc(24 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(6) {
    padding: calc(5 * var(--mobile-u)) calc(43 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(14) {
    padding: calc(5 * var(--mobile-u)) calc(25 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(7) {
    padding: calc(4 * var(--mobile-u)) calc(45 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(18) {
    padding: calc(13 * var(--mobile-u)) calc(15 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(13) {
    padding: calc(20 * var(--mobile-u)) calc(10 * var(--mobile-u));
  }

  .partner-cloud img:nth-child(9) {
    padding: calc(10 * var(--mobile-u)) calc(20 * var(--mobile-u));
  }

  .partners {
    isolation: isolate;
  }

  .partners-tree {
    opacity: .30;
    mix-blend-mode: multiply;
  }

  .partner-cloud {
    left: 0;
    top: 0;
    width: calc(390 * var(--mobile-u));
    height: calc(611 * var(--mobile-u));
    display: block;
  }

  .partner-cloud img {
    position: absolute !important;
    width: calc(155.5 * var(--mobile-u)) !important;
    height: calc(59 * var(--mobile-u)) !important;
    transform: translateX(-50%) !important;
  }

  .partner-cloud img:nth-child(2) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(84 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(1) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(84 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(8) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(153 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(4) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(153 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(17) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(222 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(15) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(222 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(3) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(291 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(5) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(291 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(6) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(360 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(14) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(360 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(7) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(429 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(18) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(429 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(13) {
    left: calc(50% - 89 * var(--mobile-u)) !important;
    top: calc(498 * var(--mobile-u)) !important;
  }

  .partner-cloud img:nth-child(9) {
    left: calc(50% + 89 * var(--mobile-u)) !important;
    top: calc(498 * var(--mobile-u)) !important;
  }

  /* PRINCIPLES */
  .principles {
    --principles-mobile-u: var(--mobile-u);
    position: relative;
    width: 100%;
    height: calc(611 * var(--principles-mobile-u));
    min-height: calc(611 * var(--principles-mobile-u));
    padding: 0;
    overflow: hidden;
    background: #3b4857;
  }

  .principles>.container {
    position: relative;
    width: calc(390 * var(--principles-mobile-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .principles .section-heading {
    position: absolute;
    inset: 0;
    text-align: left;
  }

  .principles .principles-title {
    position: absolute;
    inset: 0;
    margin: 0;
    font-size: calc(28 * var(--principles-mobile-u));
    line-height: 1;
    letter-spacing: -.035em;
    font-weight: 400;
  }

  .principles .principles-line {
    position: absolute;
    display: flex;
    align-items: baseline;
    white-space: nowrap;
    line-height: 1;
  }

  .principles .principles-line strong {
    color: #fff;
    font: inherit;
    font-weight: 600;
  }

  .principles .principles-line em {
    color: #c0d2e6;
    font-family: Onest,sans-serif;
    font-size: calc(21 * var(--principles-mobile-u));
    line-height: 1;
    font-weight: 300;
    font-style: normal;
    letter-spacing: -.025em;
  }

  .principles .principles-line-1 {
    left: calc(25 * var(--principles-mobile-u));
    top: calc(16 * var(--principles-mobile-u));
    display: block;
  }

  .principles .principles-line-1 em {
    display: block;
    margin-left: calc(24 * var(--principles-mobile-u));
    margin-top: 0;
  }

  .principles .principles-line-2 {
    left: calc(68 * var(--principles-mobile-u));
    top: calc(78 * var(--principles-mobile-u));
    display: block;
  }

  .principles .principles-line-2 em {
    display: block;
    margin-left: calc(24 * var(--principles-mobile-u));
    margin-top: calc(6 * var(--principles-mobile-u));
  }

  .principles .principles-line-3 {
    left: calc(110 * var(--principles-mobile-u));
    top: calc(141 * var(--principles-mobile-u));
  }

  .principles .principle-grid {
    position: absolute;
    left: calc(14 * var(--principles-mobile-u));
    top: calc(185 * var(--principles-mobile-u));
    display: grid;
    grid-template-columns: calc(364 * var(--principles-mobile-u));
    grid-template-rows: repeat(4,calc(96 * var(--principles-mobile-u)));
    gap: calc(9 * var(--principles-mobile-u));
    margin: 0;
  }

  .principles .principle-card {
    position: relative;
    width: calc(364 * var(--principles-mobile-u));
    height: calc(96 * var(--principles-mobile-u));
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: url("assets/img/principles-frame-mobile.svg") 0 0/100% 100% no-repeat;
    overflow: hidden;
    display: block;
  }

  .principles .principle-card::before {
    display: none;
  }

  .principles .principle-card h3, .principles .principle-card:nth-child(3) h3 {
    position: absolute;
    left: calc(140 * var(--principles-mobile-u));
    top: 50%;
    width: calc(213 * var(--principles-mobile-u));
    margin: 0;
    transform: translateY(-50%);
    color: #205899;
    font-size: calc(22 * var(--principles-mobile-u));
    line-height: 1.05;
    letter-spacing: -.025em;
    font-weight: 600;
    text-align: left;
  }

  .principles .principle-card img {
    position: absolute;
    z-index: 1;
    max-width: none;
    max-height: none;
    margin: 0;
  }

  .principles .principle-card:nth-child(1) img {
    width: calc(70 * var(--principles-mobile-u));
    left: calc(40 * var(--principles-mobile-u));
    top: calc(7 * var(--principles-mobile-u));
  }

  .principles .principle-card:nth-child(2) img {
    width: calc(78 * var(--principles-mobile-u));
    left: calc(38 * var(--principles-mobile-u));
    top: calc(10 * var(--principles-mobile-u));
  }

  .principles .principle-card:nth-child(3) img {
    width: calc(84 * var(--principles-mobile-u));
    left: calc(34 * var(--principles-mobile-u));
    top: calc(7 * var(--principles-mobile-u));
  }

  .principles .principle-card:nth-child(4) img {
    width: calc(88 * var(--principles-mobile-u));
    left: calc(32 * var(--principles-mobile-u));
    top: calc(10 * var(--principles-mobile-u));
  }

}


/* PROCESS */
@media (min-width:768px) and (max-width:1199px) {
  .process {
    --process-u: min(1px, 100vw / 1199);
    --process-animation-speed: 0.65;
    --process-marker-animation-speed: 1;
    --process-marker-opacity-duration: .5;
    --process-label-delay: .25s;
    position: relative;
    width: 100%;
    height: calc(719 * var(--process-u));
    min-height: calc(719 * var(--process-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#fff 0%,#d2deed 100%);
  }

  .process>.section-pattern {
    display: none;
  }

  .process::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url("assets/img/process-pattern-desktop.svg");
    background-repeat: repeat-x;
    background-position: center center;
    background-size: calc(196.67 * var(--process-u)) calc(1194.96 * var(--process-u));
  }

  .process>.process-wrap {
    position: relative;
    z-index: 1;
    width: calc(1199 * var(--process-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .process .process-map {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
  }

  .process .road {
    position: absolute;
    left: calc(115 * var(--process-u));
    top: calc(207 * var(--process-u));
    width: calc(910 * var(--process-u));
    height: auto;
    max-width: none;
    object-fit: contain;
    transform: none;
    opacity: 1;
    z-index: 1;
  }

  .process .geo-mark {
    position: absolute;
    width: calc(110 * var(--process-u));
    height: auto;
    max-width: none;
    margin: 0;
    z-index: 3;
  }

  .process .geo-mark.g1 {
    left: calc(157 * var(--process-u));
    top: calc(35 * var(--process-u));
  }

  .process .geo-mark.g2 {
    left: calc(477 * var(--process-u));
    top: calc(60 * var(--process-u));
  }

  .process .geo-mark.g3 {
    left: calc(710 * var(--process-u));
    top: calc(161 * var(--process-u));
  }

  .process .geo-mark.g4 {
    left: calc(501 * var(--process-u));
    top: calc(329 * var(--process-u));
  }

  .process .geo-mark.g5 {
    left: calc(797 * var(--process-u));
    top: calc(433 * var(--process-u));
  }

  .process .process-point {
    position: absolute;
    z-index: 4;
    margin: 0;
    color: #202b39;
    font-family: Onest,sans-serif;
    font-size: calc(40 * var(--process-u));
    line-height: 1.08;
    font-weight: 400;
    letter-spacing: -.025em;
    opacity: 1;
    transform: none;
    transition: none;
    white-space: nowrap;
  }

  .process .process-point span {
    display: block;
  }

  .process .p1 {
    left: calc(285 * var(--process-u));
    top: calc(49 * var(--process-u));
  }

  .process .p2 {
    left: calc(604 * var(--process-u));
    top: calc(80 * var(--process-u));
  }

  .process .p3 {
    left: calc(840 * var(--process-u));
    top: calc(203 * var(--process-u));
  }

  .process .p4 {
    left: calc(292 * var(--process-u));
    top: calc(353 * var(--process-u));
  }

  .process .p5 {
    left: calc(927 * var(--process-u));
    top: calc(478 * var(--process-u));
  }

}

@media (min-width:1200px) {
  .process {
    --process-u: min(1px, 100vw / 1920);
    --process-animation-speed: 0.65;
    --process-marker-animation-speed: 1;
    --process-marker-opacity-duration: .5;
    --process-label-delay: .25s;
    position: relative;
    width: 100%;
    height: calc(1080 * var(--process-u));
    min-height: calc(1080 * var(--process-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#fff 0%,#d2deed 100%);
  }

  .process>.section-pattern {
    display: none;
  }

  .process::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url("assets/img/process-pattern-desktop.svg");
    background-repeat: repeat-x;
    background-position: center center;
    background-size: calc(295 * var(--process-u)) calc(1792.44 * var(--process-u));
  }

  .process>.process-wrap {
    position: relative;
    z-index: 1;
    width: calc(1920 * var(--process-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .process .process-map {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
  }

  .process .road {
    position: absolute;
    left: calc(234 * var(--process-u));
    top: calc(306 * var(--process-u));
    width: calc(1365 * var(--process-u));
    height: auto;
    max-width: none;
    object-fit: contain;
    transform: none;
    opacity: 1;
    z-index: 1;
  }

  .process .geo-mark {
    position: absolute;
    width: calc(165 * var(--process-u));
    height: auto;
    max-width: none;
    margin: 0;
    z-index: 3;
  }

  .process .geo-mark.g1 {
    left: calc(295 * var(--process-u));
    top: calc(46 * var(--process-u));
  }

  .process .geo-mark.g2 {
    left: calc(777 * var(--process-u));
    top: calc(84 * var(--process-u));
  }

  .process .geo-mark.g3 {
    left: calc(1126 * var(--process-u));
    top: calc(236 * var(--process-u));
  }

  .process .geo-mark.g4 {
    left: calc(811 * var(--process-u));
    top: calc(488 * var(--process-u));
  }

  .process .geo-mark.g5 {
    left: calc(1243 * var(--process-u));
    top: calc(645 * var(--process-u));
  }

  .process .process-point {
    position: absolute;
    z-index: 4;
    margin: 0;
    color: #202b39;
    font-family: Onest,sans-serif;
    font-size: calc(60 * var(--process-u));
    line-height: 1.08;
    font-weight: 400;
    letter-spacing: -.025em;
    opacity: 1;
    transform: none;
    transition: none;
    white-space: nowrap;
  }

  .process .process-point span {
    display: block;
  }

  .process .p1 {
    left: calc(480 * var(--process-u));
    top: calc(56 * var(--process-u));
  }

  .process .p2 {
    left: calc(967 * var(--process-u));
    top: calc(121 * var(--process-u));
  }

  .process .p3 {
    left: calc(1321 * var(--process-u));
    top: calc(269 * var(--process-u));
  }

  .process .p4 {
    left: calc(500 * var(--process-u));
    top: calc(532 * var(--process-u));
  }

  .process .p5 {
    left: calc(1439 * var(--process-u));
    top: calc(687 * var(--process-u));
  }

}

@media (min-width:768px) {
  .process .road-animated {
    display: block;
    overflow: visible;
  }

  .process .road-static {
    display: none;
  }

  .process .road-segment {
    opacity: 1;
    will-change: clip-path;
  }

  .process .road-segment-1, .process .road-segment-2, .process .road-segment-5 {
    clip-path: inset(0 100% 0 0);
  }

  .process .road-segment-3, .process .road-segment-4 {
    clip-path: inset(0 0 100% 0);
  }

  .process .geo-mark, .process .process-point, .process.is-visible .process-point {
    opacity: 0;
  }

  .process .geo-mark {
    transform: scale(0);
    transform-origin: 50% 100%;
  }

  .process .process-point, .process.is-visible .process-point {
    transform: none;
  }

  .process.process-animate .road-segment-1, .process.process-animate .road-segment-2, .process.process-animate .road-segment-5 {
    animation: processRoadRevealX var(--process-road-duration,.62s) ease-out forwards;
  }

  .process.process-animate .road-segment-3, .process.process-animate .road-segment-4 {
    animation: processRoadRevealY var(--process-road-duration,.62s) ease-out forwards;
  }

  .process.process-animate .road-segment-1 {
    animation-delay: var(--process-road-delay-1,0s);
  }

  .process.process-animate .road-segment-2 {
    animation-delay: var(--process-road-delay-2,.55s);
  }

  .process.process-animate .road-segment-3 {
    animation-delay: var(--process-road-delay-3,1.10s);
  }

  .process.process-animate .road-segment-4 {
    animation-delay: var(--process-road-delay-4,1.65s);
  }

  .process.process-animate .road-segment-5 {
    animation-delay: var(--process-road-delay-5,2.20s);
  }

  .process.process-animate .geo-mark {
    animation: processGeoIn var(--process-marker-duration,.35s) cubic-bezier(.2,.78,.25,1.18) forwards,
      processGeoOpaque var(--process-marker-opacity-transition,.5s) ease-out forwards;
  }

  .process.process-animate .process-point {
    animation: processLabelIn var(--process-marker-duration,.35s) ease-out forwards;
  }

  .process.process-animate .g1 {
    animation-delay: var(--process-marker-delay-1,.45s),var(--process-marker-delay-1,.45s);
  }

  .process.process-animate .g2 {
    animation-delay: var(--process-marker-delay-2,1.00s),var(--process-marker-delay-2,1.00s);
  }

  .process.process-animate .g3 {
    animation-delay: var(--process-marker-delay-3,1.55s),var(--process-marker-delay-3,1.55s);
  }

  .process.process-animate .g4 {
    animation-delay: var(--process-marker-delay-4,2.10s),var(--process-marker-delay-4,2.10s);
  }

  .process.process-animate .g5 {
    animation-delay: var(--process-marker-delay-5,2.65s),var(--process-marker-delay-5,2.65s);
  }

  .process.process-animate .p1 {
    animation-delay: calc(var(--process-marker-delay-1,.45s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p2 {
    animation-delay: calc(var(--process-marker-delay-2,1.00s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p3 {
    animation-delay: calc(var(--process-marker-delay-3,1.55s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p4 {
    animation-delay: calc(var(--process-marker-delay-4,2.10s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p5 {
    animation-delay: calc(var(--process-marker-delay-5,2.65s) + var(--process-label-delay,.25s));
  }

  /* SHARED */
  @keyframes processRoadRevealX{
      from{clip-path:inset(0 100% 0 0);}
      to{clip-path:inset(0 0 0 0);}
    }

  @keyframes processRoadRevealY{
      from{clip-path:inset(0 0 100% 0);}
      to{clip-path:inset(0 0 0 0);}
    }

  @keyframes processGeoIn{
      0%{transform:scale(0);}
      64%{transform:scale(1.10);}
      82%{transform:scale(.97);}
      100%{transform:scale(1);}
    }

  @keyframes processGeoOpaque{
      from{opacity:.5;}
      to{opacity:1;}
    }

  @keyframes processLabelIn{
      from{opacity:0;}
      to{opacity:1;}
    }

}


/* PROCESS */
@media (prefers-reduced-motion:reduce) {
  .process .road-static {
    display: block !important;
  }

  .process .road-animated {
    display: none !important;
  }

  .process .geo-mark, .process .process-point {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

}


/* CONTACTS */
@media (min-width:1200px) {
  .contacts {
    --contacts-u: min(1px,calc(100vw / 1920));
    position: relative;
    min-height: calc(1080 * var(--contacts-u));
    height: calc(1080 * var(--contacts-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(270deg,#a5bed8 0%,#8196af 19%,#364353 67%,#1e2835 93%,#1e2835 100%);
  }

  .contacts-stage {
    position: relative;
    width: calc(1920 * var(--contacts-u));
    height: calc(1080 * var(--contacts-u));
    margin: 0 auto;
  }

  .contacts-visual {
    position: absolute;
    left: calc(-45 * var(--contacts-u));
    top: calc(68 * var(--contacts-u));
    width: calc(612 * var(--contacts-u));
    height: calc(924 * var(--contacts-u));
  }

  .contacts-visual .contacts-face-svg {
    display: block;
    width: 100%;
    height: 100%;
    margin-left: 0;
    opacity: 0;
    pointer-events: none;
    overflow: visible;
    transition: none;
  }

  .contacts-visual .contacts-face-svg.is-assembled {
    opacity: .2;
    transition: opacity 1s linear;
  }

  .contacts-copy {
    position: absolute;
    inset: 0;
    padding: 0;
  }

  .contacts-logo {
    position: absolute;
    top: calc(75 * var(--contacts-u));
    right: calc(90 * var(--contacts-u));
    width: calc(571 * var(--contacts-u));
    height: auto;
    margin: 0;
  }

  .contacts-lead {
    position: absolute;
    left: calc(620 * var(--contacts-u));
    right: calc(95 * var(--contacts-u));
    top: calc(400 * var(--contacts-u));
    width: auto;
    margin: 0;
    color: #f2f4f7;
    font-size: calc(48 * var(--contacts-u));
    line-height: 1.24;
    font-weight: 300;
    letter-spacing: calc(-1.2 * var(--contacts-u));
    text-align: right;
  }

  .contacts-info {
    position: absolute;
    left: calc(697 * var(--contacts-u));
    top: calc(770 * var(--contacts-u));
    width: calc(1080 * var(--contacts-u));
    margin: 0;
    color: #c4d4e7;
    font-size: calc(39 * var(--contacts-u));
    line-height: 1.2;
    font-weight: 300;
  }

  .contacts-row {
    display: flex;
    align-items: center;
    gap: calc(22 * var(--contacts-u));
    margin: 0 0 calc(18 * var(--contacts-u));
  }

  .contacts-row img {
    flex: 0 0 auto;
    width: calc(33 * var(--contacts-u));
    height: calc(33 * var(--contacts-u));
  }

  .contacts-face-svg path.contacts-glyph {
    transform-box: fill-box;
    transform-origin: center;
    transform: translate(var(--scatter-x),var(--scatter-y)) rotate(var(--scatter-r)) scale(var(--scatter-s));
    opacity: 1;
    transition: none;
    transition-delay: var(--assemble-delay);
    will-change: transform,opacity;
  }

  .contacts-face-svg.is-assembled path.contacts-glyph {
    transition: transform var(--assemble-time) cubic-bezier(.16,.72,.2,1);
    transition-delay: var(--assemble-delay);
    transform: none;
    opacity: 1;
  }

}

@media (min-width:1200px) and (prefers-reduced-motion:reduce) {
  .contacts-visual .contacts-face-svg,
  .contacts-visual .contacts-face-svg.is-assembled {
    opacity: .2;
    transition: none;
  }

  .contacts-face-svg path.contacts-glyph,
  .contacts-face-svg.is-assembled path.contacts-glyph {
    transform: none;
    opacity: 1;
    transition: none;
  }

}

.contacts-lead-tablet {
  display: none;
}


@media (min-width:768px) and (max-width:1199px) {
  .contacts {
    --contacts-tu: calc(100vw / 1199);
    position: relative;
    height: calc(719 * var(--contacts-tu));
    min-height: calc(719 * var(--contacts-tu));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(270deg,#a5bed8 0%,#8196af 19%,#364353 67%,#1e2835 93%,#1e2835 100%);
  }

  .contacts-stage {
    position: relative;
    display: block;
    width: 100vw;
    height: calc(719 * var(--contacts-tu));
    min-height: 0;
    margin: 0;
  }

  .contacts-visual {
    position: absolute;
    left: calc(-22 * var(--contacts-tu));
    top: calc(43 * var(--contacts-tu));
    width: calc(422 * var(--contacts-tu));
    height: calc(640 * var(--contacts-tu));
    margin: 0;
    opacity: 1;
  }

  .contacts-visual .contacts-face-svg {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    overflow: visible;
    transition: none;
  }

  .contacts-visual .contacts-face-svg.is-assembled {
    opacity: .2;
    transition: opacity 1s linear;
  }

  .contacts-copy {
    position: absolute;
    inset: 0;
    padding: 0;
  }

  .contacts-logo {
    position: absolute;
    top: calc(55 * var(--contacts-tu));
    right: calc(74 * var(--contacts-tu));
    width: calc(337 * var(--contacts-tu));
    height: auto;
    margin: 0;
  }

  .contacts-lead-desktop {
    display: none;
  }

  .contacts-lead-tablet {
    display: block;
    position: absolute;
    left: calc(490 * var(--contacts-tu));
    right: calc(80 * var(--contacts-tu));
    top: calc(233 * var(--contacts-tu));
    width: auto;
    margin: 0;
    color: #f2f4f7;
    font-size: calc(32 * var(--contacts-tu));
    line-height: 1.28;
    font-weight: 300;
    letter-spacing: calc(-.55 * var(--contacts-tu));
    text-align: right;
  }

  .contacts-info {
    position: absolute;
    left: calc(495 * var(--contacts-tu));
    top: calc(510 * var(--contacts-tu));
    width: calc(650 * var(--contacts-tu));
    margin: 0;
    color: #c4d4e7;
    font-size: calc(28 * var(--contacts-tu));
    line-height: 1.2;
    font-weight: 300;
  }

  .contacts-row {
    display: flex;
    align-items: center;
    gap: calc(17 * var(--contacts-tu));
    margin: 0 0 calc(14 * var(--contacts-tu));
  }

  .contacts-row img {
    flex: 0 0 auto;
    width: calc(25 * var(--contacts-tu));
    height: calc(25 * var(--contacts-tu));
    margin: 0;
    opacity: 1;
  }

  .contacts-face-svg path.contacts-glyph {
    transform-box: fill-box;
    transform-origin: center;
    transform: translate(var(--scatter-x),var(--scatter-y)) rotate(var(--scatter-r)) scale(var(--scatter-s));
    opacity: 1;
    transition: none;
    transition-delay: var(--assemble-delay);
    will-change: transform,opacity;
  }

  .contacts-face-svg.is-assembled path.contacts-glyph {
    transition: transform var(--assemble-time) cubic-bezier(.16,.72,.2,1);
    transition-delay: var(--assemble-delay);
    transform: none;
    opacity: 1;
  }

}

@media (min-width:768px) and (max-width:1199px) and (prefers-reduced-motion:reduce) {
  .contacts-visual .contacts-face-svg,
  .contacts-visual .contacts-face-svg.is-assembled {
    opacity: .2;
    transition: none;
  }

  .contacts-face-svg path.contacts-glyph,
  .contacts-face-svg.is-assembled path.contacts-glyph {
    transform: none;
    opacity: 1;
    transition: none;
  }

}

.contacts-lead-mobile, .contacts-info-mobile {
  display: none;
}


@media (max-width:767px) {
  .contacts {
    --contacts-mu: min(1px,calc(100vw / 390));
    position: relative;
    height: calc(613 * var(--contacts-mu));
    min-height: calc(613 * var(--contacts-mu));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(270deg,#8196af 0%,#364353 67%,#1e2835 93%,#1e2835 100%);
  }

  .contacts-stage {
    position: relative;
    display: block;
    width: calc(393 * var(--contacts-mu));
    height: calc(613 * var(--contacts-mu));
    min-height: 0;
    margin: 0 auto;
  }

  .contacts-visual {
    position: absolute;
    left: calc(-23 * var(--contacts-mu));
    top: calc(167 * var(--contacts-mu));
    width: calc(233 * var(--contacts-mu));
    height: calc(355 * var(--contacts-mu));
    margin: 0;
    opacity: 1;
    order: initial;
  }

  .contacts-visual .contacts-face-svg {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    overflow: visible;
    transition: none;
  }

  .contacts-visual .contacts-face-svg.is-assembled {
    opacity: .2;
    transition: opacity 1s linear;
  }

  .contacts-copy {
    position: absolute;
    inset: 0;
    padding: 0;
    order: initial;
  }

  .contacts-logo {
    position: absolute;
    top: calc(22 * var(--contacts-mu));
    right: calc(25 * var(--contacts-mu));
    width: calc(195 * var(--contacts-mu));
    height: auto;
    margin: 0;
  }

  .contacts-lead-desktop, .contacts-lead-tablet {
    display: none;
  }

  .contacts-lead-mobile {
    display: block;
    position: absolute;
    left: calc(22 * var(--contacts-mu));
    right: calc(30 * var(--contacts-mu));
    top: calc(92 * var(--contacts-mu));
    width: auto;
    margin: 0;
    color: #f2f4f7;
    font-size: calc(18 * var(--contacts-mu));
    line-height: 1.17;
    font-weight: 300;
    letter-spacing: calc(-.15 * var(--contacts-mu));
    text-align: right;
  }

  .contacts-lead-mobile br {
    display: initial;
  }

  .contacts-info-main {
    display: none;
  }

  .contacts-info-mobile {
    transform: scale(1.03);
    transform-origin: left top;
    display: block;
    position: absolute;
    left: calc(123 * var(--contacts-mu));
    top: calc(487 * var(--contacts-mu));
    width: calc(250 * var(--contacts-mu));
    margin: 0;
    color: #c4d4e7;
    font-size: calc(14 * var(--contacts-mu));
    line-height: 1.28;
    font-weight: 300;
  }

  .contacts-info-mobile .contacts-row {
    display: flex;
    align-items: flex-start;
    gap: calc(8 * var(--contacts-mu));
    margin: 0 0 calc(8 * var(--contacts-mu));
  }

  .contacts-info-mobile .contacts-row img {
    flex: 0 0 auto;
    width: calc(14 * var(--contacts-mu));
    height: calc(14 * var(--contacts-mu));
    margin: calc(1 * var(--contacts-mu)) 0 0;
    opacity: 1;
  }

  .contacts-face-svg path.contacts-glyph {
    transform-box: fill-box;
    transform-origin: center;
    transform: translate(var(--scatter-x),var(--scatter-y)) rotate(var(--scatter-r)) scale(var(--scatter-s));
    opacity: 1;
    transition: none;
    transition-delay: var(--assemble-delay);
    will-change: transform,opacity;
  }

  .contacts-face-svg.is-assembled path.contacts-glyph {
    transition: transform var(--assemble-time) cubic-bezier(.16,.72,.2,1);
    transition-delay: var(--assemble-delay);
    transform: none;
    opacity: 1;
  }

}

@media (max-width:767px) and (prefers-reduced-motion:reduce) {
  .contacts-visual .contacts-face-svg,
  .contacts-visual .contacts-face-svg.is-assembled {
    opacity: .2;
    transition: none;
  }

  .contacts-face-svg path.contacts-glyph,
  .contacts-face-svg.is-assembled path.contacts-glyph {
    transform: none;
    opacity: 1;
    transition: none;
  }

}


/* PROCESS */
@media (max-width:767px) {
  .process {
    --process-u: var(--mobile-u);
    --process-animation-speed: 0.65;
    --process-marker-animation-speed: 1;
    --process-marker-opacity-duration: .5;
    --process-label-delay: .25s;
    position: relative;
    width: 100%;
    height: calc(611 * var(--process-u));
    min-height: calc(611 * var(--process-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#fff 0%,#d2deed 100%);
  }

  .process>.section-pattern {
    display: none;
  }

  .process::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url("assets/img/process-pattern-mobile.svg");
    background-repeat: repeat-x;
    background-position: center center;
    background-size: calc(167.7 * var(--process-u)) calc(1018.9 * var(--process-u));
  }

  .process>.process-wrap {
    position: relative;
    z-index: 1;
    width: calc(390 * var(--process-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .process .process-map {
    position: absolute;
    inset: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
  }

  .process .road-desktop-static, .process .road-desktop-animated, .process .geo-desktop {
    display: none !important;
  }

  .process .road-mobile-static, .process .road-mobile-animated {
    display: block;
  }

  .process .road-mobile-static, .process .road-mobile-animated {
    position: absolute;
    left: calc(42 * var(--process-u));
    top: calc(106 * var(--process-u));
    width: calc(303 * var(--process-u));
    height: auto;
    max-width: none;
    object-fit: contain;
    transform: none;
    opacity: 1;
    z-index: 1;
  }

  .process .road-mobile-static {
    display: none;
  }

  .process .road-mobile-animated {
    overflow: visible;
  }

  .process .geo-mobile {
    display: block;
    position: absolute;
    width: calc(54 * var(--process-u));
    height: auto;
    max-width: none;
    margin: 0;
    z-index: 3;
  }

  .process .geo-mobile.g1 {
    left: calc(64 * var(--process-u));
    top: calc(19 * var(--process-u));
  }

  .process .geo-mobile.g2 {
    left: calc(282 * var(--process-u));
    top: calc(121 * var(--process-u));
  }

  .process .geo-mobile.g3 {
    left: calc(124 * var(--process-u));
    top: calc(226 * var(--process-u));
  }

  .process .geo-mobile.g4 {
    left: calc(287 * var(--process-u));
    top: calc(348 * var(--process-u));
  }

  .process .geo-mobile.g5 {
    left: calc(40 * var(--process-u));
    top: calc(428 * var(--process-u));
  }

  .process .process-point {
    position: absolute;
    z-index: 4;
    margin: 0;
    color: #202b39;
    font-family: Onest,sans-serif;
    font-size: calc(22 * var(--process-u));
    line-height: 1.18;
    font-weight: 400;
    letter-spacing: -.025em;
    opacity: 1;
    transform: none;
    transition: none;
    white-space: nowrap;
  }

  .process .process-point span {
    display: block;
  }

  .process .process-business-break {
    display: none;
  }

  .process .p1 {
    left: calc(130 * var(--process-u));
    top: calc(59 * var(--process-u));
  }

  .process .p2 {
    left: calc(165 * var(--process-u));
    top: calc(177 * var(--process-u));
  }

  .process .p3 {
    left: calc(36 * var(--process-u));
    top: calc(330 * var(--process-u));
  }

  .process .p4 {
    left: calc(256 * var(--process-u));
    top: calc(314 * var(--process-u));
  }

  .process .p5 {
    left: calc(105 * var(--process-u));
    top: calc(454 * var(--process-u));
  }

  .process .mobile-road-segment {
    opacity: 1;
    will-change: clip-path;
  }

  .process .mobile-road-segment-1, .process .mobile-road-segment-2, .process .mobile-road-segment-3, .process .mobile-road-segment-4 {
    clip-path: inset(0 0 100% 0);
  }

  .process .mobile-road-segment-5 {
    clip-path: inset(0 0 0 100%);
  }

  .process .geo-mobile, .process .process-point, .process.is-visible .process-point {
    opacity: 0;
  }

  .process .geo-mobile {
    transform: scale(0);
    transform-origin: 50% 100%;
  }

  .process.process-animate .mobile-road-segment-1, .process.process-animate .mobile-road-segment-2, .process.process-animate .mobile-road-segment-3, .process.process-animate .mobile-road-segment-4 {
    animation: processMobileRoadRevealY var(--process-road-duration,.62s) ease-out forwards;
  }

  .process.process-animate .mobile-road-segment-5 {
    animation: processMobileRoadRevealRTL var(--process-road-duration,.62s) ease-out forwards;
  }

  .process.process-animate .mobile-road-segment-1 {
    animation-delay: var(--process-road-delay-1,0s);
  }

  .process.process-animate .mobile-road-segment-2 {
    animation-delay: var(--process-road-delay-2,.55s);
  }

  .process.process-animate .mobile-road-segment-3 {
    animation-delay: var(--process-road-delay-3,1.10s);
  }

  .process.process-animate .mobile-road-segment-4 {
    animation-delay: var(--process-road-delay-4,1.65s);
  }

  .process.process-animate .mobile-road-segment-5 {
    animation-delay: var(--process-road-delay-5,2.20s);
  }

  .process.process-animate .geo-mobile {
    animation: processGeoIn var(--process-marker-duration,.35s) cubic-bezier(.2,.78,.25,1.18) forwards,
      processGeoOpaque var(--process-marker-opacity-transition,.5s) ease-out forwards;
  }

  .process.process-animate .process-point {
    animation: processLabelIn var(--process-marker-duration,.35s) ease-out forwards;
  }

  .process.process-animate .geo-mobile.g1 {
    animation-delay: var(--process-marker-delay-1,.45s),var(--process-marker-delay-1,.45s);
  }

  .process.process-animate .geo-mobile.g2 {
    animation-delay: var(--process-marker-delay-2,1.00s),var(--process-marker-delay-2,1.00s);
  }

  .process.process-animate .geo-mobile.g3 {
    animation-delay: var(--process-marker-delay-3,1.55s),var(--process-marker-delay-3,1.55s);
  }

  .process.process-animate .geo-mobile.g4 {
    animation-delay: var(--process-marker-delay-4,2.10s),var(--process-marker-delay-4,2.10s);
  }

  .process.process-animate .geo-mobile.g5 {
    animation-delay: var(--process-marker-delay-5,2.65s),var(--process-marker-delay-5,2.65s);
  }

  .process.process-animate .p1 {
    animation-delay: calc(var(--process-marker-delay-1,.45s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p2 {
    animation-delay: calc(var(--process-marker-delay-2,1.00s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p3 {
    animation-delay: calc(var(--process-marker-delay-3,1.55s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p4 {
    animation-delay: calc(var(--process-marker-delay-4,2.10s) + var(--process-label-delay,.25s));
  }

  .process.process-animate .p5 {
    animation-delay: calc(var(--process-marker-delay-5,2.65s) + var(--process-label-delay,.25s));
  }

  /* SHARED */
  @keyframes processMobileRoadRevealY{
      from{clip-path:inset(0 0 100% 0);}
      to{clip-path:inset(0 0 0 0);}
    }

  @keyframes processMobileRoadRevealRTL{
      from{clip-path:inset(0 0 0 100%);}
      to{clip-path:inset(0 0 0 0);}
    }

  @keyframes processGeoIn{
      0%{transform:scale(0);}
      64%{transform:scale(1.10);}
      82%{transform:scale(.97);}
      100%{transform:scale(1);}
    }

  @keyframes processGeoOpaque{
      from{opacity:.5;}
      to{opacity:1;}
    }

  @keyframes processLabelIn{
      from{opacity:0;}
      to{opacity:1;}
    }

}


/* PROCESS */
@media (min-width:768px) {
  .process .road-mobile-static, .process .road-mobile-animated, .process .geo-mobile {
    display: none !important;
  }

}


/* SERVICES */
.services .services-float-group {
  display: contents;
}


@media (min-width:1200px) {
  .services {
    --services-u: min(1px, 100vw / 1920);
    position: relative;
    width: 100%;
    height: calc(1080 * var(--services-u));
    min-height: calc(1080 * var(--services-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#527cad 0%,#a5bedb 43%,#a5bedb 100%);
  }

  .services>.container {
    position: relative;
    width: calc(1920 * var(--services-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .services .section-heading {
    position: absolute;
    left: 0;
    top: calc(57 * var(--services-u));
    width: 100%;
    margin: 0;
    text-align: center;
  }

  .services .section-heading h2 {
    margin: 0;
    color: #fff;
    font-size: calc(78 * var(--services-u));
    line-height: 1.08;
    letter-spacing: -.025em;
    font-weight: 600;
  }

  .services .services-orbit {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    display: block;
  }

  .services .services-molecule {
    position: absolute;
    display: block;
    max-width: none;
    height: auto;
    margin: 0;
    transform: none;
  }

  .services .services-molecule-1 {
    left: calc(631 * var(--services-u));
    top: calc(409 * var(--services-u));
    width: calc(251 * var(--services-u));
  }

  .services .services-molecule-2 {
    left: calc(818 * var(--services-u));
    top: calc(293 * var(--services-u));
    width: calc(256.06 * var(--services-u));
  }

  .services .services-molecule-3 {
    left: calc(915 * var(--services-u));
    top: calc(450 * var(--services-u));
    width: calc(324.07 * var(--services-u));
  }

  .services .service-label {
    position: absolute;
    inset: auto;
    padding: 0;
    border: 0;
    color: #fff;
    font-size: calc(52 * var(--services-u));
    line-height: 1.12;
    letter-spacing: -.02em;
    font-weight: 300;
    white-space: nowrap;
  }

  .services .s1 {
    left: calc(263 * var(--services-u));
    top: calc(285 * var(--services-u));
  }

  .services .s2 {
    left: calc(1102 * var(--services-u));
    top: calc(352 * var(--services-u));
  }

  .services .s3 {
    left: calc(356 * var(--services-u));
    top: calc(404 * var(--services-u));
  }

  .services .s4 {
    left: calc(1235 * var(--services-u));
    top: calc(457 * var(--services-u));
  }

  .services .s5 {
    left: calc(480 * var(--services-u));
    top: calc(541 * var(--services-u));
  }

  .services .s6 {
    left: calc(1258 * var(--services-u));
    top: calc(588 * var(--services-u));
  }

  .services .s7 {
    left: calc(198 * var(--services-u));
    top: calc(736 * var(--services-u));
  }

  .services .s8 {
    left: calc(1234 * var(--services-u));
    top: calc(773 * var(--services-u));
    line-height: 1.12;
  }

  .services .s9 {
    left: calc(637 * var(--services-u));
    top: calc(876 * var(--services-u));
  }

  .services {
    --services-float-amplitude-min: 6;
    --services-float-amplitude-max: 16;
    --services-float-duration-min: 3;
    --services-float-duration-max: 6;
  }

  .services .services-float-group {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    will-change: transform;
    transform: translate3d(0,0,0);
  }

}

@media (min-width:1200px) and (prefers-reduced-motion:reduce) {
  .services .services-float-group {
    transition: none !important;
    transform: none !important;
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .services {
    --services-u: min(1px, 100vw / 1199);
    --services-float-amplitude-min: 7;
    --services-float-amplitude-max: 17;
    --services-float-duration-min: 3;
    --services-float-duration-max: 6;
    position: relative;
    width: 100%;
    height: calc(719 * var(--services-u));
    min-height: calc(719 * var(--services-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#527cad 0%,#a5bedb 43%,#a5bedb 100%);
  }

  .services>.container {
    position: relative;
    width: calc(1199 * var(--services-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .services .section-heading {
    position: absolute;
    left: 0;
    top: calc(32 * var(--services-u));
    width: 100%;
    margin: 0;
    text-align: center;
  }

  .services .section-heading h2 {
    margin: 0;
    color: #fff;
    font-size: calc(52 * var(--services-u));
    line-height: 1.15;
    letter-spacing: -.025em;
    font-weight: 600;
  }

  .services .section-heading h2 br {
    display: block;
  }

  .services .services-orbit {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    display: block;
  }

  .services .services-float-group {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    will-change: transform;
    transform: translate3d(0,0,0);
  }

  .services .services-molecule {
    position: absolute;
    display: block;
    max-width: none;
    height: auto;
    margin: 0;
    transform: none;
  }

  .services .services-molecule-1 {
    left: calc(380 * var(--services-u));
    top: calc(272 * var(--services-u));
    width: calc(167.333 * var(--services-u));
  }

  .services .services-molecule-2 {
    left: calc(504 * var(--services-u));
    top: calc(195 * var(--services-u));
    width: calc(170.707 * var(--services-u));
  }

  .services .services-molecule-3 {
    left: calc(569 * var(--services-u));
    top: calc(299 * var(--services-u));
    width: calc(216.047 * var(--services-u));
  }

  .services .service-label {
    position: absolute;
    inset: auto;
    padding: 0;
    border: 0;
    color: #fff;
    font-size: calc(34 * var(--services-u));
    line-height: 1.15;
    letter-spacing: -.02em;
    font-weight: 300;
    white-space: nowrap;
  }

  .services .s1 {
    left: calc(136 * var(--services-u));
    top: calc(185 * var(--services-u));
  }

  .services .s2 {
    left: calc(694 * var(--services-u));
    top: calc(229 * var(--services-u));
  }

  .services .s3 {
    left: calc(198 * var(--services-u));
    top: calc(262 * var(--services-u));
  }

  .services .s4 {
    left: calc(777 * var(--services-u));
    top: calc(294 * var(--services-u));
  }

  .services .s5 {
    left: calc(283 * var(--services-u));
    top: calc(356 * var(--services-u));
  }

  .services .s6 {
    left: calc(804 * var(--services-u));
    top: calc(391 * var(--services-u));
  }

  .services .s7 {
    left: calc(94 * var(--services-u));
    top: calc(486 * var(--services-u));
  }

  .services .s8 {
    left: calc(780 * var(--services-u));
    top: calc(510 * var(--services-u));
    line-height: 1.15;
  }

  .services .s9 {
    left: calc(386 * var(--services-u));
    top: calc(586 * var(--services-u));
  }

}

@media (min-width:768px) and (max-width:1199px) and (prefers-reduced-motion:reduce) {
  .services .services-float-group {
    transition: none !important;
    transform: none !important;
  }

}

.services .services-mobile-molecule {
  display: none;
}

.services .services-mobile-break {
  display: none;
}


@media (max-width:767px) {
  .services {
    --services-mobile-u: var(--mobile-u);
    --services-mobile-float-amplitude-min: 7;
    --services-mobile-float-amplitude-max: 17;
    --services-mobile-float-duration-min: 3;
    --services-mobile-float-duration-max: 6;
    position: relative;
    width: 100%;
    height: calc(611 * var(--services-mobile-u));
    min-height: calc(611 * var(--services-mobile-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#527cad 0%,#a5bedb 43%,#a5bedb 100%);
  }

  .services>.container {
    position: relative;
    width: calc(390 * var(--services-mobile-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .services .section-heading {
    position: absolute;
    left: calc(35 * var(--services-mobile-u));
    top: calc(29 * var(--services-mobile-u));
    width: calc(320 * var(--services-mobile-u));
    margin: 0;
    text-align: left;
  }

  .services .section-heading h2 {
    margin: 0;
    color: #fff;
    font-size: calc(28 * var(--services-mobile-u));
    line-height: 1.16;
    letter-spacing: -.025em;
    font-weight: 500;
  }

  .services .section-heading h2 br {
    display: block;
  }

  .services .section-heading h2 .services-mobile-break {
    display: inline;
  }

  .services .services-orbit {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    display: block;
  }

  .services .services-float-group {
    display: contents;
  }

  .services .services-molecule {
    display: none;
  }

  .services .service-label {
    position: absolute;
    inset: auto;
    margin: 0;
    padding: 0;
    border: 0 !important;
    color: #fff;
    font-size: calc(19 * var(--services-mobile-u));
    line-height: 1.2;
    letter-spacing: -.015em;
    font-weight: 300;
    white-space: nowrap;
    transform: none !important;
    transition: none !important;
  }

  .services .service-label::before {
    content: "• ";
  }

  .services .s1 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(196 * var(--services-mobile-u)) !important;
  }

  .services .s2 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(237 * var(--services-mobile-u)) !important;
  }

  .services .s5 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(278 * var(--services-mobile-u)) !important;
  }

  .services .s3 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(319 * var(--services-mobile-u)) !important;
  }

  .services .s4 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(360 * var(--services-mobile-u)) !important;
  }

  .services .s6 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(401 * var(--services-mobile-u)) !important;
  }

  .services .s7 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(442 * var(--services-mobile-u)) !important;
  }

  .services .s8 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(481 * var(--services-mobile-u)) !important;
    line-height: 1.18;
  }

  .services .s9 {
    left: calc(27 * var(--services-mobile-u)) !important;
    top: calc(545 * var(--services-mobile-u)) !important;
  }

  .services .services-mobile-molecule {
    display: block;
    position: absolute;
    max-width: none;
    height: auto;
    margin: 0;
    pointer-events: none;
    will-change: transform;
    transform: translate3d(0,0,0);
  }

  .services .services-mobile-molecule-1 {
    left: calc(263 * var(--services-mobile-u));
    top: calc(135 * var(--services-mobile-u));
    width: calc(130.84 * var(--services-mobile-u));
  }

  .services .services-mobile-molecule-2 {
    left: calc(228 * var(--services-mobile-u));
    top: calc(336 * var(--services-mobile-u));
    width: calc(185.22 * var(--services-mobile-u));
  }

}

@media (max-width:767px) and (prefers-reduced-motion:reduce) {
  .services .services-mobile-molecule {
    transition: none !important;
    transform: none !important;
  }

}


/* RESULTS */
@media (min-width:1200px) {
  .results {
    --results-u: min(1px, 100vw / 1920);
    position: relative;
    width: 100%;
    height: calc(1080 * var(--results-u));
    min-height: calc(1080 * var(--results-u));
    padding: 0;
    overflow: hidden;
    background: #1e2835;
  }

  .results>.container {
    position: relative;
    width: calc(1920 * var(--results-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .results .section-heading {
    position: absolute;
    left: 0;
    top: calc(44 * var(--results-u));
    width: 100%;
    margin: 0;
    text-align: center;
    z-index: 2;
  }

  .results .section-heading h2 {
    margin: 0;
    color: #d2dfed;
    font-size: calc(75 * var(--results-u));
    line-height: 1.2;
    letter-spacing: 0;
    font-weight: 500;
  }

  .results-dna {
    position: absolute;
    left: calc(483 * var(--results-u));
    top: calc(286 * var(--results-u));
    width: calc(953.43 * var(--results-u));
    max-width: none;
    height: auto;
    opacity: .3;
    mix-blend-mode: screen;
    z-index: 0;
    pointer-events: none;
  }

  .results-grid {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    text-align: center;
    z-index: 1;
  }

  .results-grid article, .results-grid article.wide {
    position: absolute;
    display: block;
    width: calc(620 * var(--results-u));
    height: auto;
    margin: 0;
  }

  .results-grid article:nth-child(1) {
    left: calc(40 * var(--results-u));
    top: calc(282 * var(--results-u));
  }

  .results-grid article:nth-child(2) {
    left: calc(632 * var(--results-u));
    top: calc(282 * var(--results-u));
  }

  .results-grid article:nth-child(3) {
    left: calc(1249 * var(--results-u));
    top: calc(282 * var(--results-u));
  }

  .results-grid article:nth-child(4) {
    left: calc(127 * var(--results-u));
    top: calc(721 * var(--results-u));
    width: calc(850 * var(--results-u));
  }

  .results-grid article:nth-child(5) {
    left: calc(958 * var(--results-u));
    top: calc(721 * var(--results-u));
    width: calc(850 * var(--results-u));
  }

  .results-grid strong {
    display: block;
    margin: 0;
    color: #a5bedb;
    font-size: calc(150 * var(--results-u));
    line-height: .9;
    font-weight: 600;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .results-grid article:nth-child(4) strong {
    color: #cedbeb;
    font-size: calc(140 * var(--results-u));
  }

  .results-grid article:nth-child(5) strong {
    color: #cedbeb;
  }

  .results-grid span {
    display: block;
    margin-top: calc(47 * var(--results-u));
    color: #fff;
    font-size: calc(44 * var(--results-u));
    line-height: 1.22;
    font-weight: 300;
    letter-spacing: 0;
  }

  .results-grid article:nth-child(4) span, .results-grid article:nth-child(5) span {
    margin-top: calc(41 * var(--results-u));
  }

  .results-note {
    position: absolute;
    left: 0;
    top: calc(1024 * var(--results-u));
    width: 100%;
    margin: 0;
    color: #c0d1e6;
    font-size: calc(22 * var(--results-u));
    line-height: 1.2;
    font-weight: 300;
    text-align: center;
    opacity: 1;
    z-index: 2;
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .results {
    --results-tablet-u: calc(100vw / 1199);
    position: relative;
    width: 100%;
    height: calc(719 * var(--results-tablet-u));
    min-height: calc(719 * var(--results-tablet-u));
    padding: 0;
    overflow: hidden;
    background: #1e2835;
  }

  .results>.container {
    position: relative;
    width: calc(1199 * var(--results-tablet-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .results .section-heading {
    position: absolute;
    left: 0;
    top: calc(34 * var(--results-tablet-u));
    width: 100%;
    margin: 0;
    text-align: center;
    z-index: 2;
  }

  .results .section-heading h2 {
    margin: 0;
    color: #d2dfed;
    font-size: calc(50 * var(--results-tablet-u));
    line-height: 1.27;
    letter-spacing: 0;
    font-weight: 500;
  }

  .results-dna {
    position: absolute;
    left: calc(300 * var(--results-tablet-u));
    top: calc(200 * var(--results-tablet-u));
    width: calc(600 * var(--results-tablet-u));
    max-width: none;
    height: auto;
    opacity: .3;
    mix-blend-mode: screen;
    z-index: 0;
    pointer-events: none;
  }

  .results-grid {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    text-align: center;
    z-index: 1;
  }

  .results-grid article, .results-grid article.wide {
    position: absolute;
    display: block;
    width: calc(390 * var(--results-tablet-u));
    height: auto;
    margin: 0;
  }

  .results-grid article:nth-child(1) {
    left: calc(28 * var(--results-tablet-u));
    top: calc(213 * var(--results-tablet-u));
  }

  .results-grid article:nth-child(2) {
    left: calc(393 * var(--results-tablet-u));
    top: calc(213 * var(--results-tablet-u));
  }

  .results-grid article:nth-child(3) {
    left: calc(774 * var(--results-tablet-u));
    top: calc(213 * var(--results-tablet-u));
  }

  .results-grid article:nth-child(4) {
    left: calc(116 * var(--results-tablet-u));
    top: calc(486 * var(--results-tablet-u));
    width: calc(470 * var(--results-tablet-u));
  }

  .results-grid article:nth-child(5) {
    left: calc(625 * var(--results-tablet-u));
    top: calc(486 * var(--results-tablet-u));
    width: calc(470 * var(--results-tablet-u));
  }

  .results-grid strong {
    display: block;
    margin: 0;
    color: #a5bedb;
    font-size: calc(89 * var(--results-tablet-u));
    line-height: .9;
    font-weight: 600;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .results-grid article:nth-child(4) strong {
    color: #cedbeb;
    font-size: calc(89 * var(--results-tablet-u));
  }

  .results-grid article:nth-child(5) strong {
    color: #cedbeb;
  }

  .results-grid span {
    display: block;
    margin-top: calc(31 * var(--results-tablet-u));
    color: #fff;
    font-size: calc(28 * var(--results-tablet-u));
    line-height: 1.18;
    font-weight: 300;
    letter-spacing: 0;
  }

  .results-grid article:nth-child(4) span, .results-grid article:nth-child(5) span {
    margin-top: calc(30 * var(--results-tablet-u));
  }

  .results-note {
    position: absolute;
    left: 0;
    top: calc(676 * var(--results-tablet-u));
    width: 100%;
    margin: 0;
    color: #c0d1e6;
    font-size: calc(17 * var(--results-tablet-u));
    line-height: 1.2;
    font-weight: 300;
    text-align: center;
    opacity: 1;
    z-index: 2;
  }

}

@media (max-width:767px) {
  .results {
    --results-mobile-u: var(--mobile-u);
    position: relative;
    width: 100%;
    height: calc(611 * var(--results-mobile-u));
    min-height: calc(611 * var(--results-mobile-u));
    padding: 0;
    overflow: hidden;
    background: #1e2835;
  }

  .results>.container {
    position: relative;
    width: calc(390 * var(--results-mobile-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .results .section-heading {
    position: absolute;
    left: calc(35 * var(--results-mobile-u));
    top: calc(33 * var(--results-mobile-u));
    width: calc(330 * var(--results-mobile-u));
    margin: 0;
    text-align: left;
    z-index: 2;
  }

  .results .section-heading h2 {
    margin: 0;
    color: #d2dfed;
    font-size: calc(27 * var(--results-mobile-u));
    line-height: 1.18;
    letter-spacing: 0;
    font-weight: 500;
  }

  .results .section-heading h2 br {
    display: block;
  }

  .results-dna {
    position: absolute;
    left: calc(-56 * var(--results-mobile-u));
    top: calc(244 * var(--results-mobile-u));
    width: calc(239 * var(--results-mobile-u));
    max-width: none;
    height: auto;
    opacity: .3;
    mix-blend-mode: screen;
    z-index: 0;
    pointer-events: none;
    transform: none;
  }

  .results-grid {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    text-align: left;
    z-index: 1;
  }

  .results-grid article, .results-grid article.wide, .results-grid article:last-child {
    position: absolute;
    left: 0;
    width: 100%;
    height: auto;
    margin: 0;
    display: block;
  }

  .results-grid article:nth-child(1) {
    top: calc(207 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(2) {
    top: calc(281 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(3) {
    top: calc(355 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(4) {
    top: calc(429 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(5) {
    top: calc(504 * var(--results-mobile-u));
  }

  .results-grid strong, .results-grid article:nth-child(4) strong, .results-grid article:nth-child(5) strong {
    position: absolute;
    right: calc(228 * var(--results-mobile-u));
    top: 0;
    display: block;
    margin: 0;
    color: #cedbeb;
    font-size: calc(35 * var(--results-mobile-u));
    line-height: .9;
    font-weight: 600;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .results-grid span, .results-grid article:nth-child(4) span, .results-grid article:nth-child(5) span {
    position: absolute;
    left: calc(185 * var(--results-mobile-u));
    top: calc(5 * var(--results-mobile-u));
    display: block;
    width: calc(190 * var(--results-mobile-u));
    margin: 0;
    color: #fff;
    font-size: calc(17 * var(--results-mobile-u));
    line-height: 1.3;
    font-weight: 300;
    letter-spacing: 0;
  }

  .results-grid article:nth-child(2) span {
    top: calc(-14 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(3) span {
    top: calc(8 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(4) span {
    top: calc(-2 * var(--results-mobile-u));
  }

  .results-grid article:nth-child(5) span {
    top: calc(-2 * var(--results-mobile-u));
  }

  .results-note {
    position: absolute;
    left: 0;
    top: calc(575 * var(--results-mobile-u));
    width: 100%;
    margin: 0;
    color: #c0d1e6;
    font-size: calc(13 * var(--results-mobile-u));
    line-height: 1.2;
    font-weight: 300;
    text-align: center;
    opacity: 1;
    z-index: 2;
    white-space: nowrap;
  }

}

.results-mobile-br {
  display: none;
}


@media (max-width:767px) {
  .results-mobile-br {
    display: inline;
  }

}


/* HERO */
@media (min-width:1600px) {
  .hero-main {
    position: relative;
  }

  .hero-copy {
    position: relative;
  }

  .hero-copy h1 {
    line-height: 1.105;
    text-align: right;
    white-space: nowrap;
  }

  .hero-support {
    position: absolute;
    margin: 0;
    padding: 0;
    transform: none;
    display: block;
  }

  .hero-support::before {
    content: "";
    position: absolute;
    border-right: 3px solid rgba(255,255,255,.95);
    border-bottom: 3px solid rgba(255,255,255,.95);
    pointer-events: none;
  }

  .hero-support::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 3px;
    background: rgba(255,255,255,.95);
    pointer-events: none;
  }

  .hero-years {
    position: absolute;
    height: 175px;
    margin: 0;
    display: block;
  }

  .hero-years strong {
    position: absolute;
    top: 0;
    font-size: 193px;
    line-height: .76;
    font-weight: 600;
  }

  .hero-years span {
    display: block;
    margin: 0;
    font-size: 54px;
    line-height: 1;
    letter-spacing: -.025em;
  }

  .hero-years span em {
    position: absolute;
    left: 0;
    font-size: 52px;
    line-height: 1;
    font-weight: 300;
    font-style: normal;
  }

  .hero-years span b {
    position: absolute;
  }

  .hero-copy .hero-support>p {
    position: absolute;
    margin: 0;
    font-size: 36px;
    line-height: 1.28;
    font-weight: 300;
    text-align: right;
    white-space: nowrap;
  }

}

.hero-support-copy-desktop {
  display: none;
}


@media (min-width:1600px) {
  .hero {
    padding-bottom: 47px;
  }

  .hero-main {
    height: 776px;
  }

  .hero-visual img {
    width: 1053px;
    margin-left: -206px;
    margin-top: -27px;
    opacity: .20;
  }

  .hero-copy {
    padding-top: 66px;
  }

  .hero-copy h1 {
    font-size: 79.4px;
  }

  .hero-support {
    left: -123px;
    top: 469px;
    width: 1143px;
    height: 252px;
  }

  .hero-support::after {
    width: 203px;
  }

  .hero-support-copy-default {
    display: none;
  }

  .hero-support-copy-desktop {
    display: block;
  }

  .hero-copy .hero-support>p {
    right: 47px;
    top: 118px;
    width: 945px;
  }

  .hero-years {
    left: 470px;
    top: -43px;
    width: 585px;
  }

  .hero-years strong {
    left: 181px;
    letter-spacing: 0;
  }

  .hero-years span em {
    top: 95px;
  }

  .hero-stats {
    width: 1792px;
    max-width: 1792px;
    gap: 58px;
  }

  .hero-stat {
    min-height: 257px;
  }

  .hero-support::before {
    inset: 0;
    border: 0;
    border-radius: 0;
    background: url("assets/img/Frame_for_Hero_1920.svg") 0 0 / 100% 100% no-repeat;
  }

  .hero-support::after {
    display: none;
  }

  .hero-years span b {
    top: 67px;
    right: -44px;
    font-size: 83px;
    line-height: 1;
    font-weight: 600;
  }

}

@media (min-width:1920px) {
  .hero {
    height: 1080px;
    min-height: 1080px;
    padding: 0 0 47px;
    overflow: hidden;
  }

  .hero-main {
    width: 1920px;
    max-width: 1920px;
    height: 776px;
    margin: 0 auto;
    grid-template-columns: 44% 56%;
  }

  .hero-copy {
    padding: 66px 66px 0 0;
  }

  .hero-stats {
    width: 1792px;
    max-width: 1792px;
    gap: 58px;
    margin-left: auto;
    margin-right: auto;
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .hero {
    position: relative;
    width: 100%;
    padding: 0;
    overflow: hidden;
  }

  .hero-main {
    position: relative;
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .hero-visual {
    position: absolute;
    height: auto;
    display: block;
    z-index: 1;
    opacity: 1;
  }

  .hero-visual img {
    width: 100%;
    max-width: none;
    margin: 0;
    opacity: .20;
  }

  .hero-copy {
    position: absolute;
    inset: 0;
    padding: 0;
    z-index: 3;
  }

  .hero-copy h1 {
    position: absolute;
    margin: 0;
    line-height: 1.18;
    letter-spacing: -.035em;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
  }

  .hero-support-copy-default {
    display: block;
  }

  .hero-support-copy-desktop {
    display: none;
  }

  .tablet-line-break {
    display: none;
  }

  .hero-support {
    position: absolute;
    margin: 0;
    padding: 0;
    display: block;
    transform: none;
  }

  .hero-support::before {
    content: "";
    position: absolute;
    inset: 0;
    border: 0;
    border-radius: 0;
    background: url("assets/img/Frame_for_Hero_1199.svg") 0 0 / 100% 100% no-repeat;
    pointer-events: none;
  }

  .hero-support::after {
    display: none;
  }

  .hero-copy .hero-support>p {
    position: absolute;
    margin: 0;
    line-height: 1.23;
    font-weight: 300;
    text-align: right;
    white-space: nowrap;
  }

  .hero-years {
    position: absolute;
    height: calc(100 * (100vw / 1199));
    margin: 0;
    display: block;
  }

  .hero-years strong {
    position: absolute;
    line-height: .76;
    font-weight: 600;
    letter-spacing: 0;
  }

  .hero-years span {
    display: block;
    margin: 0;
    line-height: 1;
    letter-spacing: -.025em;
  }

  .hero-years span em {
    position: absolute;
    line-height: 1;
    font-weight: 300;
    font-style: normal;
  }

  .hero-years span b {
    position: absolute;
    right: auto;
    line-height: 1;
    font-weight: 600;
  }

  .hero-stats {
    position: absolute;
    max-width: none;
    display: grid;
    grid-template-columns: 1fr;
    margin: 0;
    z-index: 4;
  }

  .hero-stat {
    padding: calc(17 * (100vw / 1199)) calc(16 * (100vw / 1199)) calc(13 * (100vw / 1199));
  }

  .hero-stat strong, .hero-stat:not(.hero-stat-effie)>strong {
    position: relative;
    top: 0;
    font-size: calc(81 * (100vw / 1199));
    line-height: .82;
    font-weight: 600;
    letter-spacing: -.055em;
  }

  .hero-stat span, .hero-stat:not(.hero-stat-effie)>span {
    position: relative;
    top: 0;
    margin-top: calc(15 * (100vw / 1199));
    font-size: calc(18 * (100vw / 1199));
    line-height: 1.16;
    font-weight: 300;
    white-space: nowrap;
  }

  .hero-stat-effie>strong {
    position: absolute;
    left: calc(67 * (100vw / 1199));
    top: calc(19 * (100vw / 1199));
    z-index: 1;
    font-size: calc(81 * (100vw / 1199));
    line-height: .82;
    font-weight: 600;
    letter-spacing: -.035em;
  }

  .hero-stat-effie .effie-visual {
    position: absolute;
    inset: 0;
    z-index: 2;
  }

  .hero-stat-effie .effie-visual img.effie-logo {
    width: 34%;
    height: auto;
    left: 40%;
    right: auto;
    top: 18%;
    bottom: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award {
    width: 19%;
    height: auto;
    top: auto;
    bottom: 8%;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-one {
    left: 30%;
    right: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-two {
    left: 52%;
    right: auto;
  }

  .hero-support {
    left: calc(429 * (100vw / 1199));
    top: calc(405 * (100vw / 1199));
    width: calc(716 * (100vw / 1199));
    height: calc(201 * (100vw / 1199));
  }

  .hero-copy .hero-support>p {
    top: calc(75 * (100vw / 1199));
    width: calc(595 * (100vw / 1199));
  }

  .hero-years {
    width: calc(386 * (100vw / 1199));
  }

  .hero-years span {
    font-size: calc(31.5 * (100vw / 1199));
  }

  .hero-stats {
    left: calc(37 * (100vw / 1199));
    top: calc(77 * (100vw / 1199));
    width: calc(256 * (100vw / 1199));
    gap: calc(17 * (100vw / 1199));
  }

  .hero-stat {
    width: calc(256 * (100vw / 1199));
    min-height: calc(137 * (100vw / 1199));
    height: calc(137 * (100vw / 1199));
    border-radius: calc(23.5 * (100vw / 1199));
  }

  .hero-stat strong, .hero-stat:not(.hero-stat-effie)>strong, .hero-stat:first-child>strong::after {
    font-size: calc(79.5 * (100vw / 1199));
  }

  .hero-stat:first-child>strong {
    font-size: 0;
  }

  .hero-stat:first-child>strong::after {
    font-size: calc(79.5 * (100vw / 1199));
    line-height: .82;
    font-weight: 600;
    letter-spacing: -.055em;
  }

  .hero-visual {
    left: calc(-17 * (100vw / 1199));
    top: calc(69 * (100vw / 1199));
    width: calc(697 * (100vw / 1199));
  }

  .hero-copy h1 {
    right: calc(42 * (100vw / 1199));
    top: calc(57 * (100vw / 1199));
    font-size: calc(50.1 * (100vw / 1199));
  }

  .hero-stat:first-child>strong::after {
    content: "25+";
  }

  .hero-copy .hero-support>p {
    right: calc(30 * (100vw / 1199));
    font-size: calc(28.1 * (100vw / 1199));
  }

  .hero {
    height: calc(709 * (100vw / 1199));
    min-height: calc(709 * (100vw / 1199));
    max-height: calc(709 * (100vw / 1199));
  }

  .hero-main {
    height: 100%;
  }

  .hero {
    --hero-years-x: 311;
    --hero-years-y: -33;
    --hero-years-more-x: 0;
    --hero-years-more-y: 61;
    --hero-years-more-size: 31.5;
    --hero-years-number-x: 117;
    --hero-years-number-y: 3;
    --hero-years-number-size: 118.5;
    --hero-years-word-x: 266;
    --hero-years-word-y: 50;
    --hero-years-word-size: 44;
  }

  .hero-years {
    left: calc(var(--hero-years-x) * (100vw / 1199));
    top: calc(var(--hero-years-y) * (100vw / 1199));
  }

  .hero-years strong {
    left: calc(var(--hero-years-number-x) * (100vw / 1199));
    top: calc(var(--hero-years-number-y) * (100vw / 1199));
    font-size: calc(var(--hero-years-number-size) * (100vw / 1199));
  }

  .hero-years span em {
    left: calc(var(--hero-years-more-x) * (100vw / 1199));
    top: calc(var(--hero-years-more-y) * (100vw / 1199));
    font-size: calc(var(--hero-years-more-size) * (100vw / 1199));
  }

  .hero-years span b {
    left: calc(var(--hero-years-word-x) * (100vw / 1199));
    top: calc(var(--hero-years-word-y) * (100vw / 1199));
    font-size: calc(var(--hero-years-word-size) * (100vw / 1199));
  }

}

@media (min-width:1200px) and (max-width:1919px) {
  .hero {
    height: 56.25vw;
    min-height: 56.25vw;
    max-height: 56.25vw;
    padding: 0 0 2.4479167vw;
    overflow: hidden;
  }

  .hero-main {
    width: 100vw;
    max-width: none;
    height: 40.4166667vw;
    margin: 0 auto;
    grid-template-columns: 44% 56%;
  }

  .hero-visual img {
    width: 54.84375vw;
    max-width: none;
    margin-left: -10.7291667vw;
    margin-top: -1.40625vw;
    opacity: .20;
  }

  .hero-copy {
    position: relative;
    padding: 3.4375vw 3.4375vw 0 0;
  }

  .hero-copy h1 {
    font-size: 4.1354167vw;
    line-height: 1.105;
    letter-spacing: -.035em;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
  }

  .hero-support-copy-default {
    display: none;
  }

  .hero-support-copy-desktop {
    display: block;
  }

  .hero-support {
    position: absolute;
    left: -6.40625vw;
    top: 24.4270833vw;
    width: 59.53125vw;
    height: 13.125vw;
    margin: 0;
    padding: 0;
    display: block;
  }

  .hero-support::before {
    content: "";
    position: absolute;
    inset: 0;
    border: 0;
    border-radius: 0;
    background: url("assets/img/Frame_for_Hero_1920.svg") 0 0/100% 100% no-repeat;
    pointer-events: none;
  }

  .hero-support::after {
    display: none;
  }

  .hero-copy .hero-support>p {
    position: absolute;
    right: 2.4479167vw;
    top: 6.1458333vw;
    width: 49.21875vw;
    margin: 0;
    font-size: 1.875vw;
    line-height: 1.28;
    font-weight: 300;
    text-align: right;
    white-space: nowrap;
  }

  .hero-years {
    position: absolute;
    left: 24.4791667vw;
    top: -2.2395833vw;
    width: 30.46875vw;
    height: 9.1145833vw;
    margin: 0;
    display: block;
  }

  .hero-years strong {
    position: absolute;
    left: 9.4270833vw;
    top: 0;
    font-size: 10.0520833vw;
    line-height: .76;
    font-weight: 600;
    letter-spacing: 0;
  }

  .hero-years span {
    display: block;
    margin: 0;
    font-size: 2.8125vw;
    line-height: 1;
    letter-spacing: -.025em;
  }

  .hero-years span em {
    position: absolute;
    left: 0;
    top: 4.9479167vw;
    font-size: 2.7083333vw;
    line-height: 1;
    font-weight: 300;
    font-style: normal;
  }

  .hero-years span b {
    position: absolute;
    right: -2.2916667vw;
    top: 3.4895833vw;
    font-size: 4.3229167vw;
    line-height: 1;
    font-weight: 600;
  }

  .hero-stats {
    width: 93.3333333vw;
    max-width: none;
    grid-template-columns: repeat(4,21.0677083vw);
    gap: 3.0208333vw;
    margin: 0 auto;
  }

  .hero-stat {
    width: 21.0677083vw;
    min-height: 13.3854167vw;
    height: 13.3854167vw;
    border-radius: 1.9791667vw;
    padding: 1.4583333vw 1.4583333vw 1.25vw;
  }

  .hero-stat strong {
    font-size: 7.5vw;
    font-weight: 600;
    line-height: .82;
  }

  .hero-stat span {
    font-size: 1.5625vw;
    line-height: 1.18;
    margin-top: 1.1458333vw;
    font-weight: 300;
  }

  .hero-stat:not(.hero-stat-effie)>strong {
    top: -.1041667vw;
    letter-spacing: -.025em;
  }

  .hero-stat:not(.hero-stat-effie)>span {
    top: -.3645833vw;
    margin-top: 1.1458333vw;
    font-size: 1.5625vw;
  }

  .hero-stat-effie>strong {
    left: 4.2708333vw;
    top: 1.8229167vw;
    font-size: 7.5vw;
    letter-spacing: -.025em;
    z-index: 1;
  }

}

@media (min-width:1200px) {
  .hero {
    --hero-support-x: -15;
  }

}

@media (min-width:1200px) and (max-width:1919px) {
  .hero-support {
    transform: translateX(calc(var(--hero-support-x) * (100vw / 1920)));
  }

}

@media (min-width:1920px) {
  .hero-support {
    transform: translateX(calc(var(--hero-support-x) * 1px));
  }

}

@media (max-width:767px) {
  .hero {
    --hero-mobile-u: clamp(.820513px,.256410vw,1.230769px);
    position: relative;
    padding: 0;
    overflow: hidden;
  }

  .hero-main {
    position: relative;
    display: block;
    width: calc(390 * var(--hero-mobile-u));
    height: 100%;
    margin: 0 auto;
  }

  .hero-copy {
    position: absolute;
    inset: 0;
    padding: 0;
    z-index: 3;
  }

  .hero-copy h1 {
    position: absolute;
    left: calc(25 * var(--hero-mobile-u));
    top: calc(20 * var(--hero-mobile-u));
    margin: 0;
    font-size: calc(26.5 * var(--hero-mobile-u));
    line-height: 1.18;
    letter-spacing: -.025em;
    font-weight: 600;
    text-align: left;
    white-space: nowrap;
  }

  .hero-visual {
    position: absolute;
    height: auto;
    margin: 0;
    opacity: 1;
    z-index: 1;
  }

  .hero-visual img {
    width: 100%;
    max-width: none;
    margin: 0;
    opacity: .20;
  }

  .hero-support {
    position: absolute;
    margin: 0;
    padding: 0;
    display: block;
    transform: none;
    z-index: 4;
  }

  .hero-support::before {
    content: "";
    position: absolute;
    border-left: calc(1.5 * var(--hero-mobile-u)) solid rgba(255,255,255,.95);
    border-bottom: calc(1.5 * var(--hero-mobile-u)) solid rgba(255,255,255,.95);
    pointer-events: none;
  }

  .hero-support::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: calc(68 * var(--hero-mobile-u));
    height: calc(1.5 * var(--hero-mobile-u));
    background: rgba(255,255,255,.95);
    pointer-events: none;
  }

  .hero-copy .hero-support>p, .hero-copy .hero-support>.hero-support-copy-default {
    display: block;
    position: absolute;
    left: calc(14 * var(--hero-mobile-u));
    right: auto;
    top: calc(34 * var(--hero-mobile-u));
    width: calc(310 * var(--hero-mobile-u));
    margin: 0;
    font-size: calc(14 * var(--hero-mobile-u));
    line-height: 1.32;
    font-weight: 300;
    text-align: left;
    white-space: normal;
  }

  .hero-support-copy-desktop {
    display: none;
  }

  .tablet-line-break {
    display: none;
  }

  .hero-years {
    position: absolute;
    height: calc(45 * var(--hero-mobile-u));
    margin: 0;
    display: block;
  }

  .hero-years strong {
    position: absolute;
    line-height: .82;
    font-weight: 600;
    letter-spacing: -.035em;
  }

  .hero-years span {
    display: block;
    margin: 0;
    font-size: 0;
  }

  .hero-years span em {
    position: absolute;
    line-height: 1;
    font-weight: 300;
    font-style: normal;
  }

  .hero-years span b {
    position: absolute;
    line-height: 1;
    font-weight: 600;
  }

  .hero-stats {
    position: absolute;
    max-width: none;
    margin: 0;
    display: grid;
    gap: calc(17 * var(--hero-mobile-u)) calc(16 * var(--hero-mobile-u));
    z-index: 5;
  }

  .hero-stat {
    border-radius: calc(14 * var(--hero-mobile-u));
    padding: calc(10 * var(--hero-mobile-u)) calc(8 * var(--hero-mobile-u)) calc(8 * var(--hero-mobile-u));
  }

  .hero-stat strong, .hero-stat:not(.hero-stat-effie)>strong {
    position: relative;
    top: 0;
    font-size: calc(46 * var(--hero-mobile-u));
    line-height: .82;
    font-weight: 600;
    letter-spacing: -.035em;
  }

  .hero-stat span, .hero-stat:not(.hero-stat-effie)>span {
    position: relative;
    top: 0;
    margin-top: calc(10 * var(--hero-mobile-u));
    font-size: calc(11 * var(--hero-mobile-u));
    line-height: 1.15;
    font-weight: 300;
    white-space: nowrap;
  }

  .hero-stat-effie>strong {
    position: absolute;
    left: calc(42 * var(--hero-mobile-u));
    top: calc(17 * var(--hero-mobile-u));
    font-size: calc(46 * var(--hero-mobile-u));
    line-height: .82;
    font-weight: 600;
    z-index: 1;
  }

  .hero-stat-effie .effie-visual {
    position: absolute;
    inset: 0;
    z-index: 2;
    height: auto;
  }

  .hero-stat-effie .effie-visual img.effie-logo {
    width: 38%;
    left: 39%;
    top: 18%;
    right: auto;
    bottom: auto;
    height: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award {
    width: 19%;
    top: auto;
    bottom: 4%;
    height: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-one {
    left: 32%;
    right: auto;
  }

  .hero-stat-effie .effie-visual img.effie-award.award-two {
    left: 54%;
    right: auto;
  }

  .hero {
    --hero-mobile-support-x: 20;
    --hero-mobile-support-y: 285;
    --hero-mobile-support-width: 341.03;
    --hero-mobile-support-height: 96.27;
    --hero-mobile-copy-x: 13;
    --hero-mobile-copy-y: 31;
    --hero-mobile-copy-width: 312;
    --hero-mobile-copy-size: 14;
    --hero-mobile-years-x: 13;
    --hero-mobile-years-y: -9;
    --hero-mobile-more-x: 0;
    --hero-mobile-more-y: 19;
    --hero-mobile-more-size: 17;
    --hero-mobile-number-x: 68;
    --hero-mobile-number-y: -7;
    --hero-mobile-number-size: 54;
    --hero-mobile-word-x: 139;
    --hero-mobile-word-y: 14;
    --hero-mobile-word-size: 23;
    height: calc(611 * var(--hero-mobile-u));
    min-height: calc(611 * var(--hero-mobile-u));
    max-height: calc(611 * var(--hero-mobile-u));
  }

  .hero-visual {
    left: calc(27 * var(--hero-mobile-u));
    top: calc(87 * var(--hero-mobile-u));
    width: calc(341 * var(--hero-mobile-u));
  }

  .hero-support {
    left: calc(var(--hero-mobile-support-x) * var(--hero-mobile-u));
    top: calc(var(--hero-mobile-support-y) * var(--hero-mobile-u));
    width: calc(var(--hero-mobile-support-width) * var(--hero-mobile-u));
    height: calc(var(--hero-mobile-support-height) * var(--hero-mobile-u));
  }

  .hero-support::before {
    inset: 0;
    border: 0;
    border-radius: 0;
    background: url("assets/img/Frame_for_Mobile_390.svg") 0 0/100% 100% no-repeat;
  }

  .hero-support::after {
    display: none;
  }

  .hero-copy .hero-support>.hero-support-copy-desktop {
    display: none;
  }

  .hero-copy .hero-support>.hero-support-copy-default {
    display: block;
    left: calc(var(--hero-mobile-copy-x) * var(--hero-mobile-u));
    top: calc(var(--hero-mobile-copy-y) * var(--hero-mobile-u));
    width: calc(var(--hero-mobile-copy-width) * var(--hero-mobile-u));
    font-size: calc(var(--hero-mobile-copy-size) * var(--hero-mobile-u));
    line-height: 1.32;
  }

  .hero-years {
    left: calc(var(--hero-mobile-years-x) * var(--hero-mobile-u));
    top: calc(var(--hero-mobile-years-y) * var(--hero-mobile-u));
    width: calc(194 * var(--hero-mobile-u));
  }

  .hero-years strong {
    left: calc(var(--hero-mobile-number-x) * var(--hero-mobile-u));
    top: calc(var(--hero-mobile-number-y) * var(--hero-mobile-u));
    font-size: calc(var(--hero-mobile-number-size) * var(--hero-mobile-u));
  }

  .hero-years span em {
    left: calc(var(--hero-mobile-more-x) * var(--hero-mobile-u));
    top: calc(var(--hero-mobile-more-y) * var(--hero-mobile-u));
    font-size: calc(var(--hero-mobile-more-size) * var(--hero-mobile-u));
  }

  .hero-years span b {
    left: calc(var(--hero-mobile-word-x) * var(--hero-mobile-u));
    top: calc(var(--hero-mobile-word-y) * var(--hero-mobile-u));
    font-size: calc(var(--hero-mobile-word-size) * var(--hero-mobile-u));
  }

  .hero-stats {
    left: 50%;
    top: calc(398 * var(--hero-mobile-u));
    width: calc(340 * var(--hero-mobile-u));
    transform: translateX(-50%);
    grid-template-columns: repeat(2,calc(162 * var(--hero-mobile-u)));
    column-gap: calc(16 * var(--hero-mobile-u));
    row-gap: calc(17 * var(--hero-mobile-u));
  }

  .hero-stat {
    width: calc(162 * var(--hero-mobile-u));
    height: calc(87 * var(--hero-mobile-u));
    min-height: calc(87 * var(--hero-mobile-u));
  }

}


/* TEAM */
@media (min-width:1200px) {
  .team {
    padding: 0;
    background: #e8e9eb;
  }

  .team-intro {
    display: block;
    max-width: none;
    margin: 0;
  }

  .team-grid {
    grid-template-columns: repeat(4, calc(414 * var(--team-u)));
    grid-template-rows: repeat(2, calc(312 * var(--team-u)));
    column-gap: calc(38 * var(--team-u));
    row-gap: calc(13 * var(--team-u));
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .team {
    --team-tablet-u: calc(100vw / 1199);
    position: relative;
    width: 100%;
    height: calc(719 * var(--team-tablet-u));
    min-height: calc(719 * var(--team-tablet-u));
    padding: 0;
    overflow: hidden;
    background: #e8e9eb;
  }

  .team>.team-stage {
    position: relative;
    width: calc(1199 * var(--team-tablet-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .team-symbol {
    position: absolute;
    z-index: 0;
    left: calc(342 * var(--team-tablet-u));
    top: calc(172 * var(--team-tablet-u));
    width: calc(557 * var(--team-tablet-u));
    max-width: none;
    height: auto;
    opacity: 1;
    pointer-events: none;
  }

  .team-intro {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .team-intro .team-intro-icon {
    position: absolute;
    left: calc(30 * var(--team-tablet-u));
    top: calc(38 * var(--team-tablet-u));
    width: calc(238 * var(--team-tablet-u));
    max-width: none;
    height: auto;
    margin: 0;
  }

  .team-intro h2 {
    position: absolute;
    left: calc(273 * var(--team-tablet-u));
    top: calc(38 * var(--team-tablet-u));
    width: calc(860 * var(--team-tablet-u));
    margin: 0;
    text-align: center;
    letter-spacing: -.025em;
  }

  .team-intro h2 strong {
    display: block;
    color: #6398d6;
    font-size: calc(48 * var(--team-tablet-u));
    line-height: 1;
    font-weight: 600;
    white-space: nowrap;
  }

  .team-intro h2 span {
    display: block;
    margin-top: calc(23 * var(--team-tablet-u));
    color: #1e2835;
    font-size: calc(34 * var(--team-tablet-u));
    line-height: 1.22;
    font-weight: 500;
  }

  .team-grid {
    position: absolute;
    z-index: 2;
    left: calc(48 * var(--team-tablet-u));
    top: calc(263 * var(--team-tablet-u));
    display: grid;
    grid-template-columns: repeat(4,calc(257 * var(--team-tablet-u)));
    grid-template-rows: repeat(2,calc(201 * var(--team-tablet-u)));
    column-gap: calc(25 * var(--team-tablet-u));
    row-gap: calc(11 * var(--team-tablet-u));
    width: calc(1103 * var(--team-tablet-u));
    margin: 0;
  }

  .team-card {
    position: relative;
    display: block;
    width: calc(257 * var(--team-tablet-u));
    height: calc(201 * var(--team-tablet-u));
    margin: 0;
    padding: 0;
    overflow: hidden;
    appearance: none;
    border: calc(2 * var(--team-tablet-u)) solid #b2b7be;
    border-radius: calc(19 * var(--team-tablet-u));
    background: linear-gradient(180deg,#fff 0%,#e8e9eb 100%);
    color: #1e2835;
    font-family: Onest,sans-serif;
    text-align: left;
    cursor: pointer;
    -webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 55%,transparent 86%,transparent 100%);
    mask-image: linear-gradient(to bottom,#000 0%,#000 55%,transparent 86%,transparent 100%);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .team-card-head {
    position: absolute;
    left: calc(17 * var(--team-tablet-u));
    top: calc(12 * var(--team-tablet-u));
    display: flex;
    align-items: center;
    gap: calc(11 * var(--team-tablet-u));
  }

  .team-card-head img {
    display: block;
    width: calc(90 * var(--team-tablet-u));
    height: calc(90 * var(--team-tablet-u));
    max-width: none;
    object-fit: cover;
    border-radius: calc(9 * var(--team-tablet-u));
  }

  .team-card-name {
    display: block;
    width: calc(122 * var(--team-tablet-u));
    transform: translateY(calc(22 * var(--team-tablet-u)));
    font-size: calc(16 * var(--team-tablet-u));
    line-height: 1.15;
    font-weight: 600;
    letter-spacing: -.02em;
  }

  .team-card-quote {
    position: absolute;
    left: calc(17 * var(--team-tablet-u));
    top: calc(116 * var(--team-tablet-u));
    display: block;
    width: calc(223 * var(--team-tablet-u));
    max-height: calc(74 * var(--team-tablet-u));
    overflow: hidden;
    font-size: calc(12.5 * var(--team-tablet-u));
    line-height: 1.18;
    font-weight: 300;
    letter-spacing: -.018em;
  }

  .team-card:focus-visible {
    outline: calc(3 * var(--team-tablet-u)) solid #6398d6;
    outline-offset: calc(-5 * var(--team-tablet-u));
  }

  .team-stagger .team-card {
    opacity: 0;
    transform: translateY(calc(18 * var(--team-tablet-u)));
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1);
  }

  .team-stagger.is-visible .team-card {
    opacity: 1;
    transform: translateY(0);
  }

  .team-stagger.is-visible .team-card:nth-child(2) {
    transition-delay: .09s;
  }

  .team-stagger.is-visible .team-card:nth-child(3) {
    transition-delay: .18s;
  }

  .team-stagger.is-visible .team-card:nth-child(4) {
    transition-delay: .27s;
  }

  .team-stagger.is-visible .team-card:nth-child(5) {
    transition-delay: .36s;
  }

  .team-stagger.is-visible .team-card:nth-child(6) {
    transition-delay: .45s;
  }

  .team-stagger.is-visible .team-card:nth-child(7) {
    transition-delay: .54s;
  }

  .team-stagger.is-visible .team-card:nth-child(8) {
    transition-delay: .63s;
  }

}

@media (max-width:767px) {
  .team {
    --team-mobile-u: var(--mobile-u);
    position: relative;
    width: 100%;
    height: calc(611 * var(--team-mobile-u));
    min-height: calc(611 * var(--team-mobile-u));
    padding: 0;
    overflow: hidden;
    background: #e8e9eb;
  }

  .team>.team-stage {
    position: relative;
    width: calc(390 * var(--team-mobile-u));
    max-width: none;
    height: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .team-symbol, .team-intro .team-intro-icon, .team-intro .team-intro-title {
    display: none;
  }

  .team-intro {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .team-intro .team-intro-mobile-title {
    position: absolute;
    left: calc(27 * var(--team-mobile-u));
    top: calc(19 * var(--team-mobile-u));
    display: block;
    width: calc(338 * var(--team-mobile-u));
    margin: 0;
    color: #1e2835;
    font-size: calc(18 * var(--team-mobile-u));
    line-height: 1.24;
    font-weight: 500;
    letter-spacing: -.02em;
    text-align: left;
  }

  .team-grid {
    position: absolute;
    z-index: 2;
    left: calc(25 * var(--team-mobile-u));
    top: calc(101 * var(--team-mobile-u));
    display: grid;
    grid-template-columns: repeat(2,calc(163 * var(--team-mobile-u)));
    grid-template-rows: repeat(4,calc(120 * var(--team-mobile-u)));
    column-gap: calc(14 * var(--team-mobile-u));
    row-gap: calc(5 * var(--team-mobile-u));
    width: calc(340 * var(--team-mobile-u));
    margin: 0;
  }

  .team-card {
    position: relative;
    display: block;
    width: calc(163 * var(--team-mobile-u));
    height: calc(120 * var(--team-mobile-u));
    margin: 0;
    padding: 0;
    overflow: hidden;
    appearance: none;
    border: calc(1 * var(--team-mobile-u)) solid #b2b7be;
    border-radius: calc(14 * var(--team-mobile-u));
    background: linear-gradient(180deg,#fff 0%,#e8e9eb 100%);
    color: #1e2835;
    font-family: Onest,sans-serif;
    text-align: left;
    cursor: pointer;
    -webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 59%,transparent 90%,transparent 100%);
    mask-image: linear-gradient(to bottom,#000 0%,#000 59%,transparent 90%,transparent 100%);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }

  .team-card:nth-child(1) {
    order: 1;
  }

  .team-card:nth-child(2) {
    order: 2;
  }

  .team-card:nth-child(3) {
    order: 5;
  }

  .team-card:nth-child(4) {
    order: 6;
  }

  .team-card:nth-child(5) {
    order: 3;
  }

  .team-card:nth-child(6) {
    order: 4;
  }

  .team-card:nth-child(7) {
    order: 7;
  }

  .team-card:nth-child(8) {
    order: 8;
  }

  .team-card-head {
    position: absolute;
    left: calc(10 * var(--team-mobile-u));
    top: calc(8 * var(--team-mobile-u));
    display: flex;
    align-items: center;
    gap: calc(7 * var(--team-mobile-u));
  }

  .team-card-head img {
    display: block;
    width: calc(57 * var(--team-mobile-u));
    height: calc(57 * var(--team-mobile-u));
    max-width: none;
    object-fit: cover;
    border-radius: calc(6 * var(--team-mobile-u));
  }

  .team-card-name {
    display: block;
    width: calc(79 * var(--team-mobile-u));
    transform: translateY(calc(16 * var(--team-mobile-u)));
    font-size: calc(10 * var(--team-mobile-u));
    line-height: 1.12;
    font-weight: 600;
    letter-spacing: -.02em;
  }

  .team-card-quote {
    position: absolute;
    left: calc(10 * var(--team-mobile-u));
    top: calc(73 * var(--team-mobile-u));
    display: block;
    width: calc(143 * var(--team-mobile-u));
    max-height: calc(40 * var(--team-mobile-u));
    overflow: hidden;
    font-size: calc(7 * var(--team-mobile-u));
    line-height: 1.18;
    font-weight: 300;
    letter-spacing: -.018em;
  }

  .team-card:focus-visible {
    outline: calc(2 * var(--team-mobile-u)) solid #6398d6;
    outline-offset: calc(-3 * var(--team-mobile-u));
  }

  .team-stagger .team-card {
    opacity: 0;
    transform: translateY(calc(14 * var(--team-mobile-u)));
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1);
  }

  .team-stagger.is-visible .team-card {
    opacity: 1;
    transform: translateY(0);
  }

  .team-stagger.is-visible .team-card:nth-child(2) {
    transition-delay: .09s;
  }

  .team-stagger.is-visible .team-card:nth-child(5) {
    transition-delay: .18s;
  }

  .team-stagger.is-visible .team-card:nth-child(6) {
    transition-delay: .27s;
  }

  .team-stagger.is-visible .team-card:nth-child(3) {
    transition-delay: .36s;
  }

  .team-stagger.is-visible .team-card:nth-child(4) {
    transition-delay: .45s;
  }

  .team-stagger.is-visible .team-card:nth-child(7) {
    transition-delay: .54s;
  }

  .team-stagger.is-visible .team-card:nth-child(8) {
    transition-delay: .63s;
  }

}


/* SHARED / CASCADE BOUNDARY */
body.team-modal-open {
  overflow: hidden;
}

/* TEAM */
.team-modal[hidden] {
  display: none;
}

.team-modal {
  position: fixed;
  z-index: 3000;
  inset: 0;
  display: block;
  background: rgba(30,40,53,.45);
  opacity: 0;
  transition: opacity .22s ease;
}

.team-modal.is-open {
  opacity: 1;
}

.team-modal-dialog {
  --team-modal-scale: 1;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1105px;
  height: 825px;
  transform: translate(-50%,-50%) scale(var(--team-modal-scale));
  transform-origin: center;
  opacity: 0;
  transition: opacity .2s ease,transform .22s ease;
}

.team-modal.is-open .team-modal-dialog {
  opacity: 1;
}

.team-modal-base {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 1105px;
  height: 825px;
  max-width: none;
  pointer-events: none;
}

.team-modal-content-mask {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 1105px;
  height: 825px;
  overflow: hidden;
  border-radius: 70px;
  pointer-events: none;
}

.team-modal-content-track {
  position: absolute;
  inset: 0;
  transform: translateX(var(--team-content-x,0px));
}

.team-modal-photo {
  position: absolute;
  z-index: 1;
  left: 53px;
  top: 54px;
  width: 522px;
  height: 519px;
  max-width: none;
  object-fit: cover;
  border-radius: 39px;
}

.team-modal-name {
  position: absolute;
  z-index: 2;
  left: 655px;
  top: 374px;
  width: 400px;
  margin: 0;
  color: #1e2835;
  font-size: 55px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -.025em;
}

.team-modal-quote {
  position: absolute;
  z-index: 2;
  left: 82px;
  top: 631px;
  width: 940px;
  max-height: 150px;
  margin: 0;
  overflow: hidden;
  color: #000;
  font-size: 32px;
  line-height: 1.28;
  font-weight: 300;
  letter-spacing: -.02em;
}

.team-modal-close, .team-modal-nav {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border: 0;
  color: #1e2835;
  background: transparent;
  cursor: pointer;
  box-shadow: none;
}

.team-modal-close {
  left: 1108px;
  top: -47px;
  width: 100px;
  height: 100px;
}

.team-modal-nav {
  top: 336px;
  width: 80px;
  height: 150px;
}

.team-modal-prev {
  left: -92px;
}

.team-modal-next {
  left: 1118px;
}

.team-modal-close img {
  width: 60px;
  height: 60px;
  max-width: none;
}

.team-modal-nav img {
  width: 40px;
  height: 110px;
  max-width: none;
}

.team-modal-next img {
  transform: rotate(180deg);
}

.team-modal-close:hover img, .team-modal-nav:hover img {
  filter: brightness(1.08);
}

.team-modal-close:focus-visible, .team-modal-nav:focus-visible {
  outline: 3px solid #6398d6;
  outline-offset: 3px;
}


@media (prefers-reduced-motion:reduce) {
  .team-modal, .team-modal-dialog {
    transition: none;
  }

}

@media (min-width:1200px) {
  .team-stagger .team-card {
    opacity: 0;
    transform: translateY(calc(28 * var(--team-u)));
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1);
  }

  .team-stagger.is-visible .team-card {
    opacity: 1;
    transform: translateY(0);
  }

  .team-stagger.is-visible .team-card:nth-child(2) {
    transition-delay: .09s;
  }

  .team-stagger.is-visible .team-card:nth-child(3) {
    transition-delay: .18s;
  }

  .team-stagger.is-visible .team-card:nth-child(4) {
    transition-delay: .27s;
  }

  .team-stagger.is-visible .team-card:nth-child(5) {
    transition-delay: .36s;
  }

  .team-stagger.is-visible .team-card:nth-child(6) {
    transition-delay: .45s;
  }

  .team-stagger.is-visible .team-card:nth-child(7) {
    transition-delay: .54s;
  }

  .team-stagger.is-visible .team-card:nth-child(8) {
    transition-delay: .63s;
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .team-modal {
    touch-action: none;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

}

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

}

@media (max-width:767px) {
  .team-modal {
    overflow: hidden;
    transition: opacity .32s ease;
  }

  .team-modal-dialog {
    width: 351px;
    height: 290px;
    transform: translate(-50%,-50%) scale(calc(var(--team-modal-scale) * .96));
    transition: opacity .38s ease,transform .4s cubic-bezier(.2,.72,.24,1);
    touch-action: none;
    user-select: none;
    -webkit-user-select: none;
    outline: none;
  }

  .team-modal.is-open .team-modal-dialog {
    opacity: 1;
    transform: translate(-50%,-50%) scale(var(--team-modal-scale));
  }

  .team-modal-dialog.team-modal-swipe-copy {
    pointer-events: none;
  }

  .team-modal.is-open .team-modal-dialog.team-modal-swipe-from-right {
    opacity: 0;
    transform: translate(calc(-50% + 110vw),-50%) scale(var(--team-modal-scale));
    transition: none;
  }

  .team-modal.is-open .team-modal-dialog.team-modal-swipe-from-left {
    opacity: 0;
    transform: translate(calc(-50% - 110vw),-50%) scale(var(--team-modal-scale));
    transition: none;
  }

  .team-modal.is-open .team-modal-dialog.team-modal-swipe-to-left {
    opacity: 0;
    transform: translate(calc(-50% - 110vw),-50%) scale(var(--team-modal-scale));
  }

  .team-modal.is-open .team-modal-dialog.team-modal-swipe-to-right {
    opacity: 0;
    transform: translate(calc(-50% + 110vw),-50%) scale(var(--team-modal-scale));
  }

  .team-modal-base {
    width: 351px;
    height: 290px;
  }

  .team-modal-content-mask {
    width: 351px;
    height: 290px;
    border-radius: 20px;
  }

  .team-modal-photo {
    z-index: 2;
    left: 17px;
    top: 16px;
    width: 165px;
    height: 165px;
    border-radius: 11px;
  }

  .team-modal-name {
    z-index: 3;
    left: 200px;
    top: 118px;
    width: 137px;
    font-size: 20px;
    line-height: 1.08;
    letter-spacing: -.025em;
  }

  .team-modal-quote {
    z-index: 3;
    left: 25px;
    top: 197px;
    width: 305px;
    max-height: 72px;
    font-size: 15.5px;
    line-height: 1.2;
    letter-spacing: -.01em;
  }

  .team-modal-close, .team-modal-nav {
    display: none;
  }

}

@media (prefers-reduced-motion:reduce) {
  .team-modal, .team-modal-dialog {
    transition: none !important;
  }

}


/* COMEBACK */
.comeback {
  display: none;
}

.comeback-balls-mobile {
  display: none;
}

.comeback-break-mobile {
  display: none;
}


@media (min-width:1200px) {
  .comeback {
    display: block;
    --comeback-u: clamp(.625px,.0520833333vw,1px);
    position: relative;
    width: 100%;
    height: calc(1080 * var(--comeback-u));
    min-height: calc(1080 * var(--comeback-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(-163deg,#77a1d4 0%,#a7c2e1 35%,#a0bdde 52%,#77a1d4 100%);
  }

  .comeback-stage {
    position: absolute;
    left: 50%;
    top: 0;
    width: calc(1920 * var(--comeback-u));
    height: calc(1080 * var(--comeback-u));
    transform: translateX(-50%);
  }

  .comeback-icon {
    position: absolute;
    z-index: 2;
    left: calc(84 * var(--comeback-u));
    top: calc(138 * var(--comeback-u));
    width: calc(355 * var(--comeback-u));
    height: auto;
  }

  .comeback-title {
    position: absolute;
    z-index: 2;
    left: calc(343 * var(--comeback-u));
    top: calc(75 * var(--comeback-u));
    margin: 0;
    font-size: calc(75 * var(--comeback-u));
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .comeback-title span {
    display: block;
  }

  .comeback-title span:first-child {
    color: #366499;
  }

  .comeback-title span:last-child {
    margin-left: calc(150 * var(--comeback-u));
    color: #4580c4;
  }

  .comeback-stat {
    position: absolute;
    z-index: 2;
    color: #fff;
    text-align: center;
    font-weight: 300;
    opacity: 0;
    transform: translateY(calc(24 * var(--comeback-u)));
    transition: opacity .75s ease,transform .75s cubic-bezier(.22,.61,.36,1);
  }

  .comeback.is-visible .comeback-stat {
    opacity: 1;
    transform: translateY(0);
  }

  .comeback.is-visible .comeback-stat-70 {
    transition-delay: .12s;
  }

  .comeback.is-visible .comeback-stat-50 {
    transition-delay: .27s;
  }

  .comeback.is-visible .comeback-stat-20 {
    transition-delay: .42s;
  }

  .comeback-stat strong {
    display: block;
    margin: 0;
    font-size: calc(180 * var(--comeback-u));
    line-height: .9;
    font-weight: 600;
    letter-spacing: 0;
  }

  .comeback-stat span {
    display: block;
    margin-top: calc(12 * var(--comeback-u));
    font-size: calc(44 * var(--comeback-u));
    line-height: 1.22;
    font-weight: 300;
    letter-spacing: 0;
  }

  .comeback-stat-70 {
    left: calc(105 * var(--comeback-u));
    top: calc(591 * var(--comeback-u));
    width: calc(430 * var(--comeback-u));
  }

  .comeback-stat-50 {
    left: calc(475 * var(--comeback-u));
    top: calc(353 * var(--comeback-u));
    width: calc(620 * var(--comeback-u));
  }

  .comeback-stat-20 {
    left: calc(923 * var(--comeback-u));
    top: calc(687 * var(--comeback-u));
    width: calc(310 * var(--comeback-u));
  }

  .comeback-balls {
    position: absolute;
    z-index: 1;
    left: calc(1298 * var(--comeback-u));
    top: calc(86 * var(--comeback-u));
    width: calc(542.18 * var(--comeback-u));
    height: calc(875.54 * var(--comeback-u));
    opacity: .65;
    mix-blend-mode: screen;
  }

}

@media (min-width:1200px) and (prefers-reduced-motion:reduce) {
  .comeback-stat {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

}

@media (min-width:768px) and (max-width:1199px) {
  .comeback {
    display: block;
    --comeback-u: clamp(.6405337781px,.0834028357vw,1px);
    position: relative;
    width: 100%;
    height: calc(719 * var(--comeback-u));
    min-height: calc(719 * var(--comeback-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(-163deg,#77a1d4 0%,#a7c2e1 35%,#a0bdde 52%,#77a1d4 100%);
  }

  .comeback-stage {
    position: absolute;
    left: 50%;
    top: 0;
    width: calc(1199 * var(--comeback-u));
    height: calc(719 * var(--comeback-u));
    transform: translateX(-50%);
  }

  .comeback-icon {
    position: absolute;
    z-index: 2;
    left: calc(52 * var(--comeback-u));
    top: calc(87 * var(--comeback-u));
    width: calc(221 * var(--comeback-u));
    height: auto;
  }

  .comeback-title {
    position: absolute;
    z-index: 2;
    left: calc(213 * var(--comeback-u));
    top: calc(41 * var(--comeback-u));
    margin: 0;
    font-size: calc(50 * var(--comeback-u));
    line-height: 1.25;
    font-weight: 500;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .comeback-title span {
    display: block;
  }

  .comeback-title span:first-child {
    color: #366499;
  }

  .comeback-title span:last-child {
    margin-left: calc(96 * var(--comeback-u));
    color: #4580c4;
  }

  .comeback-stat {
    position: absolute;
    z-index: 2;
    color: #fff;
    text-align: center;
    font-weight: 300;
    opacity: 0;
    transform: translateY(calc(15 * var(--comeback-u)));
    transition: opacity .75s ease,transform .75s cubic-bezier(.22,.61,.36,1);
  }

  .comeback.is-visible .comeback-stat {
    opacity: 1;
    transform: translateY(0);
  }

  .comeback.is-visible .comeback-stat-70 {
    transition-delay: .12s;
  }

  .comeback.is-visible .comeback-stat-50 {
    transition-delay: .27s;
  }

  .comeback.is-visible .comeback-stat-20 {
    transition-delay: .42s;
  }

  .comeback-stat strong {
    display: block;
    margin: 0;
    font-size: calc(115 * var(--comeback-u));
    line-height: .9;
    font-weight: 600;
    letter-spacing: 0;
  }

  .comeback-stat span {
    display: block;
    margin-top: calc(4 * var(--comeback-u));
    font-size: calc(28 * var(--comeback-u));
    line-height: 1.22;
    font-weight: 300;
    letter-spacing: 0;
  }

  .comeback-stat-70 {
    left: calc(59 * var(--comeback-u));
    top: calc(369 * var(--comeback-u));
    width: calc(300 * var(--comeback-u));
  }

  .comeback-stat-50 {
    left: calc(302 * var(--comeback-u));
    top: calc(228 * var(--comeback-u));
    width: calc(430 * var(--comeback-u));
  }

  .comeback-stat-20 {
    left: calc(558 * var(--comeback-u));
    top: calc(467 * var(--comeback-u));
    width: calc(200 * var(--comeback-u));
  }

  .comeback-balls {
    position: absolute;
    z-index: 1;
    left: calc(816 * var(--comeback-u));
    top: calc(87 * var(--comeback-u));
    width: calc(340 * var(--comeback-u));
    height: auto;
    opacity: .65;
    mix-blend-mode: screen;
  }

}

@media (min-width:768px) and (max-width:1199px) and (prefers-reduced-motion:reduce) {
  .comeback-stat {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

}

@media (max-width:767px) {
  .comeback {
    display: block;
    --comeback-u: var(--mobile-u);
    position: relative;
    width: 100%;
    height: calc(611 * var(--comeback-u));
    min-height: calc(611 * var(--comeback-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(-163deg,#77a1d4 0%,#a7c2e1 35%,#a0bdde 52%,#77a1d4 100%);
  }

  .comeback-stage {
    position: absolute;
    left: 50%;
    top: 0;
    width: calc(390 * var(--comeback-u));
    height: calc(611 * var(--comeback-u));
    transform: translateX(-50%);
  }

  .comeback-icon, .comeback-balls {
    display: none;
  }

  .comeback-title {
    position: absolute;
    z-index: 2;
    left: calc(27 * var(--comeback-u));
    top: calc(30 * var(--comeback-u));
    margin: 0;
    font-size: calc(28 * var(--comeback-u));
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .comeback-title span {
    display: block;
  }

  .comeback-title span:first-child {
    color: #366499;
  }

  .comeback-title span:last-child {
    margin-left: 0;
    color: #4580c4;
  }

  .comeback-stat {
    position: absolute;
    z-index: 2;
    color: #fff;
    text-align: left;
    font-weight: 300;
    opacity: 0;
    transform: translateY(calc(12 * var(--comeback-u)));
    transition: opacity .75s ease,transform .75s cubic-bezier(.22,.61,.36,1);
  }

  .comeback.is-visible .comeback-stat {
    opacity: 1;
    transform: translateY(0);
  }

  .comeback.is-visible .comeback-stat-70 {
    transition-delay: .12s;
  }

  .comeback.is-visible .comeback-stat-50 {
    transition-delay: .27s;
  }

  .comeback.is-visible .comeback-stat-20 {
    transition-delay: .42s;
  }

  .comeback-stat strong {
    display: block;
    margin: 0;
    font-size: calc(70 * var(--comeback-u));
    line-height: .9;
    font-weight: 600;
    letter-spacing: 0;
  }

  .comeback-stat span {
    display: block;
    margin-top: calc(07 * var(--comeback-u));
    font-size: calc(19 * var(--comeback-u));
    line-height: 1.25;
    font-weight: 300;
    letter-spacing: 0;
  }

  .comeback-stat-70 {
    left: calc(47 * var(--comeback-u));
    top: calc(139 * var(--comeback-u));
    width: calc(185 * var(--comeback-u));
  }

  .comeback-stat-50 {
    left: calc(47 * var(--comeback-u));
    top: calc(283 * var(--comeback-u));
    width: calc(180 * var(--comeback-u));
  }

  .comeback-stat-20 {
    left: calc(47 * var(--comeback-u));
    top: calc(449 * var(--comeback-u));
    width: calc(130 * var(--comeback-u));
  }

  .comeback-break-mobile {
    display: block;
  }

  .comeback-break-wide {
    display: none;
  }

  .comeback-balls-mobile {
    display: block;
    position: absolute;
    z-index: 1;
    left: calc(211 * var(--comeback-u));
    top: calc(142 * var(--comeback-u));
    width: calc(209.61 * var(--comeback-u));
    height: auto;
    opacity: .65;
    mix-blend-mode: screen;
  }

}

@media (max-width:767px) and (prefers-reduced-motion:reduce) {
  .comeback-stat {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

}


/* REVIEWS */
.reviews-desktop {
  display: none;
}

.reviews-modal[hidden] {
  display: none;
}

/* SHARED */
body.reviews-modal-open {
  overflow: hidden;
}



/* REVIEWS */
@media (min-width:768px) and (max-width:1199px) {
  .reviews {
    --reviews-tablet-u: calc(100vw / 1199);
    position: relative;
    width: 100%;
    height: calc(719 * var(--reviews-tablet-u));
    min-height: calc(719 * var(--reviews-tablet-u));
    padding: 0;
    overflow: hidden;
    background: #e8e9eb;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

  .reviews-legacy {
    display: none;
  }

  .reviews-desktop {
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
    width: calc(1199 * var(--reviews-tablet-u));
    height: calc(719 * var(--reviews-tablet-u));
    transform: translateX(-50%);
  }

  .reviews-desktop-background {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    content: url("assets/img/Reviews_Background_for_Tablet.svg");
    pointer-events: none;
  }

  .reviews-desktop-title {
    position: absolute;
    z-index: 2;
    left: 0;
    top: calc(50 * var(--reviews-tablet-u));
    width: 100%;
    margin: 0;
    color: #1e2835;
    font-size: calc(50 * var(--reviews-tablet-u));
    line-height: 1.15;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
  }

  .reviews-deck {
    position: absolute;
    z-index: 2;
    left: calc(68 * var(--reviews-tablet-u));
    top: 0;
    width: calc(1063 * var(--reviews-tablet-u));
    height: calc(595 * var(--reviews-tablet-u));
    touch-action: pan-y;
  }

  .reviews-deck-card {
    position: absolute;
    top: calc(310 * var(--reviews-tablet-u));
    width: calc(297 * var(--reviews-tablet-u));
    height: calc(285 * var(--reviews-tablet-u));
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: calc(22 * var(--reviews-tablet-u));
    color: #000;
    background: transparent;
    text-align: left;
    box-shadow: calc(5 * var(--reviews-tablet-u)) calc(9 * var(--reviews-tablet-u)) calc(10 * var(--reviews-tablet-u)) rgba(30,40,53,.32);
    opacity: 0;
    transform: translateY(calc(28 * var(--reviews-tablet-u)));
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1),box-shadow .32s ease;
  }

  .reviews-deck-card:nth-child(1) {
    left: 0;
    z-index: 7;
  }

  .reviews-deck-card:nth-child(2) {
    left: calc(128 * var(--reviews-tablet-u));
    z-index: 6;
  }

  .reviews-deck-card:nth-child(3) {
    left: calc(256 * var(--reviews-tablet-u));
    z-index: 5;
  }

  .reviews-deck-card:nth-child(4) {
    left: calc(383 * var(--reviews-tablet-u));
    z-index: 4;
  }

  .reviews-deck-card:nth-child(5) {
    left: calc(511 * var(--reviews-tablet-u));
    z-index: 3;
  }

  .reviews-deck-card:nth-child(6) {
    left: calc(639 * var(--reviews-tablet-u));
    z-index: 2;
  }

  .reviews-deck-card:nth-child(7) {
    left: calc(767 * var(--reviews-tablet-u));
    z-index: 1;
  }

  .reviews-deck-card>img {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    content: url("assets/img/Reviews_Small_Card_for_Tablet.svg");
    pointer-events: none;
    -webkit-user-drag: none;
  }

  .reviews-card-name {
    position: absolute;
    z-index: 2;
    left: calc(49 * var(--reviews-tablet-u));
    top: calc(35 * var(--reviews-tablet-u));
    width: calc(220 * var(--reviews-tablet-u));
    display: block;
  }

  .reviews-card-name strong {
    display: block;
    margin: 0;
    font-size: calc(28 * var(--reviews-tablet-u));
    line-height: 1.18;
    font-weight: 600;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .reviews-card-role {
    position: absolute;
    z-index: 2;
    left: calc(49 * var(--reviews-tablet-u));
    top: calc(121 * var(--reviews-tablet-u));
    width: calc(215 * var(--reviews-tablet-u));
    max-height: calc(142 * var(--reviews-tablet-u));
    display: block;
    overflow: hidden;
    font-size: calc(20 * var(--reviews-tablet-u));
    line-height: 1.15;
    font-weight: 300;
    letter-spacing: 0;
  }

  .reviews-stagger.is-visible .reviews-deck-card {
    opacity: 1;
    transform: translateY(0);
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(2) {
    transition-delay: .09s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(3) {
    transition-delay: .18s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(4) {
    transition-delay: .27s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(5) {
    transition-delay: .36s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(6) {
    transition-delay: .45s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(7) {
    transition-delay: .54s;
  }

  .reviews-stagger.is-revealed .reviews-deck-card {
    transition: transform .42s cubic-bezier(.2,.72,.25,1),box-shadow .32s ease;
  }

  .reviews-deck-card::after {
    content: "";
    position: absolute;
    z-index: 4;
    inset: 0;
    border-radius: inherit;
    background: rgba(59,72,87,.2);
    opacity: 0;
    pointer-events: none;
    transition: opacity .28s ease;
  }

  .reviews-deck.has-active .reviews-deck-card:not(.is-active)::after {
    opacity: 1;
  }

  .reviews-stagger.is-visible .reviews-deck-card.is-active {
    z-index: 20;
    transform: translateY(calc(-145 * var(--reviews-tablet-u)));
    box-shadow: calc(7 * var(--reviews-tablet-u)) calc(12 * var(--reviews-tablet-u)) calc(12 * var(--reviews-tablet-u)) rgba(30,40,53,.3);
  }

  .reviews-hit-zone {
    display: block;
    position: absolute;
    z-index: 30;
    top: calc(310 * var(--reviews-tablet-u));
    height: calc(285 * var(--reviews-tablet-u));
    pointer-events: none;
  }

  .reviews-stagger.is-revealed .reviews-hit-zone {
    pointer-events: auto;
    cursor: pointer;
  }

  .reviews-hit-zone-1 {
    left: 0;
    width: calc(297 * var(--reviews-tablet-u));
  }

  .reviews-hit-zone-2 {
    left: calc(297 * var(--reviews-tablet-u));
    width: calc(128 * var(--reviews-tablet-u));
  }

  .reviews-hit-zone-3 {
    left: calc(425 * var(--reviews-tablet-u));
    width: calc(128 * var(--reviews-tablet-u));
  }

  .reviews-hit-zone-4 {
    left: calc(553 * var(--reviews-tablet-u));
    width: calc(127 * var(--reviews-tablet-u));
  }

  .reviews-hit-zone-5 {
    left: calc(680 * var(--reviews-tablet-u));
    width: calc(128 * var(--reviews-tablet-u));
  }

  .reviews-hit-zone-6 {
    left: calc(808 * var(--reviews-tablet-u));
    width: calc(128 * var(--reviews-tablet-u));
  }

  .reviews-hit-zone-7 {
    left: calc(936 * var(--reviews-tablet-u));
    width: calc(128 * var(--reviews-tablet-u));
  }

}

@media (min-width:1200px) {
  .reviews {
    --reviews-u: clamp(.625px,.0520833333vw,1px);
    position: relative;
    width: 100%;
    height: calc(1080 * var(--reviews-u));
    min-height: calc(1080 * var(--reviews-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#e8e9eb 0%,#d2d5d9 100%);
  }

  .reviews::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url("assets/img/process-pattern-desktop.svg");
    background-repeat: repeat-x;
    background-position: center center;
    background-size: calc(295 * var(--reviews-u)) calc(1792.44 * var(--reviews-u));
    opacity: .77;
  }

  .reviews-legacy {
    display: none;
  }

  .reviews-desktop {
    display: block;
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    width: calc(1920 * var(--reviews-u));
    height: calc(1080 * var(--reviews-u));
    transform: translateX(-50%);
  }

  .reviews-desktop-background {
    display: none;
  }

  .reviews-desktop-title {
    position: absolute;
    z-index: 2;
    left: 0;
    top: calc(68 * var(--reviews-u));
    width: 100%;
    margin: 0;
    color: #1e2835;
    font-size: calc(75 * var(--reviews-u));
    line-height: 1.15;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
  }

  .reviews-deck {
    position: absolute;
    z-index: 2;
    left: calc(110 * var(--reviews-u));
    top: calc(90 * var(--reviews-u));
    width: calc(1700 * var(--reviews-u));
    height: calc(738 * var(--reviews-u));
  }

  .reviews-deck-card {
    position: absolute;
    top: calc(407 * var(--reviews-u));
    width: calc(475 * var(--reviews-u));
    height: calc(331 * var(--reviews-u));
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: calc(35 * var(--reviews-u));
    color: #000;
    background: transparent;
    text-align: left;
    cursor: pointer;
    box-shadow: calc(8 * var(--reviews-u)) calc(14 * var(--reviews-u)) calc(15 * var(--reviews-u)) rgba(30,40,53,.32);
    transform: translateY(0);
    transition: transform .42s cubic-bezier(.2,.72,.25,1),box-shadow .32s ease;
  }

  .reviews-deck-card:nth-child(1) {
    left: 0;
    z-index: 7;
  }

  .reviews-deck-card:nth-child(2) {
    left: calc(204 * var(--reviews-u));
    z-index: 6;
  }

  .reviews-deck-card:nth-child(3) {
    left: calc(409 * var(--reviews-u));
    z-index: 5;
  }

  .reviews-deck-card:nth-child(4) {
    left: calc(613 * var(--reviews-u));
    z-index: 4;
  }

  .reviews-deck-card:nth-child(5) {
    left: calc(817 * var(--reviews-u));
    z-index: 3;
  }

  .reviews-deck-card:nth-child(6) {
    left: calc(1022 * var(--reviews-u));
    z-index: 2;
  }

  .reviews-deck-card:nth-child(7) {
    left: calc(1226 * var(--reviews-u));
    z-index: 1;
  }

  .reviews-deck-card>img {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    pointer-events: none;
  }

  .reviews-deck-card::after {
    content: "";
    position: absolute;
    z-index: 4;
    inset: 0;
    border-radius: inherit;
    background: rgba(59,72,87,.2);
    opacity: 0;
    pointer-events: none;
    transition: opacity .28s ease;
  }

  .reviews-deck.has-active .reviews-deck-card:not(.is-active)::after {
    opacity: 1;
  }

  .reviews-deck-card.is-active {
    z-index: 20;
    transform: translateY(calc(-183 * var(--reviews-u)));
    box-shadow: calc(10 * var(--reviews-u)) calc(18 * var(--reviews-u)) calc(18 * var(--reviews-u)) rgba(30,40,53,.3);
  }

  .reviews-card-name {
    position: absolute;
    z-index: 2;
    left: calc(79 * var(--reviews-u));
    top: calc(26 * var(--reviews-u));
    width: calc(350 * var(--reviews-u));
    display: block;
  }

  .reviews-card-name strong {
    display: block;
    margin: 0;
    font-size: calc(51 * var(--reviews-u));
    line-height: 1.18;
    font-weight: 600;
    letter-spacing: .0em;
    white-space: nowrap;
  }

  .reviews-card-role {
    position: absolute;
    z-index: 2;
    left: calc(79 * var(--reviews-u));
    top: calc(160 * var(--reviews-u));
    width: calc(340 * var(--reviews-u));
    max-height: calc(143 * var(--reviews-u));
    display: block;
    overflow: hidden;
    font-size: calc(31 * var(--reviews-u));
    line-height: 1.2;
    font-weight: 300;
    letter-spacing: .0em;
  }

  .reviews-deck-card:focus-visible {
    outline: calc(3 * var(--reviews-u)) solid #6398d6;
    outline-offset: calc(-5 * var(--reviews-u));
  }

  .reviews-stagger .reviews-deck-card {
    opacity: 0;
    transform: translateY(calc(45 * var(--reviews-u)));
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1),box-shadow .32s ease;
  }

  .reviews-stagger.is-visible .reviews-deck-card {
    opacity: 1;
    transform: translateY(0);
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(2) {
    transition-delay: .09s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(3) {
    transition-delay: .18s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(4) {
    transition-delay: .27s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(5) {
    transition-delay: .36s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(6) {
    transition-delay: .45s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(7) {
    transition-delay: .54s;
  }

  .reviews-stagger.is-visible .reviews-deck-card.is-active {
    transform: translateY(calc(-183 * var(--reviews-u)));
  }

  .reviews-hit-zone {
    position: absolute;
    z-index: 30;
    top: calc(407 * var(--reviews-u));
    height: calc(331 * var(--reviews-u));
    cursor: pointer;
    pointer-events: none;
  }

  .reviews-stagger.is-revealed .reviews-hit-zone {
    pointer-events: auto;
  }

  .reviews-hit-zone-1 {
    left: 0;
    width: calc(475 * var(--reviews-u));
  }

  .reviews-hit-zone-2 {
    left: calc(475 * var(--reviews-u));
    width: calc(204 * var(--reviews-u));
  }

  .reviews-hit-zone-3 {
    left: calc(679 * var(--reviews-u));
    width: calc(205 * var(--reviews-u));
  }

  .reviews-hit-zone-4 {
    left: calc(884 * var(--reviews-u));
    width: calc(204 * var(--reviews-u));
  }

  .reviews-hit-zone-5 {
    left: calc(1088 * var(--reviews-u));
    width: calc(204 * var(--reviews-u));
  }

  .reviews-hit-zone-6 {
    left: calc(1292 * var(--reviews-u));
    width: calc(205 * var(--reviews-u));
  }

  .reviews-hit-zone-7 {
    left: calc(1497 * var(--reviews-u));
    width: calc(204 * var(--reviews-u));
  }

}

.reviews-modal {
  position: fixed;
  z-index: 3100;
  inset: 0;
  display: block;
  background: rgba(30,40,53,.45);
  opacity: 0;
  transition: opacity .22s ease;
}

.reviews-modal.is-open {
  opacity: 1;
}

.reviews-modal-dialog {
  --reviews-modal-scale: 1;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1102px;
  height: 779px;
  transform: translate(-50%,calc(-50% + var(--reviews-modal-y,14px))) scale(var(--reviews-modal-scale));
  transform-origin: center;
  opacity: 0;
  transition: opacity .38s ease,transform .42s cubic-bezier(.2,.72,.25,1);
}

.reviews-modal.is-open .reviews-modal-dialog {
  --reviews-modal-y: 0px;
  opacity: 1;
}

.reviews-modal-base {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 1102px;
  height: 779px;
  max-width: none;
  pointer-events: none;
}

.reviews-modal-content-mask {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 1102px;
  height: 779px;
  overflow: hidden;
  border-radius: 70px;
  pointer-events: none;
}

.reviews-modal-content-track {
  position: absolute;
  inset: 0;
  transform: translateX(var(--reviews-content-x,0px));
}

.reviews-modal-name {
  position: absolute;
  z-index: 2;
  left: 79px;
  top: 86px;
  width: 900px;
  margin: 0;
  color: #3b4857;
  font-size: 51px;
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: .0em;
}

.reviews-modal-role {
  position: absolute;
  z-index: 2;
  left: 79px;
  top: 146px;
  width: 900px;
  max-height: 77px;
  margin: 0;
  overflow: hidden;
  color: #3b4857;
  font-size: 32px;
  line-height: 1.18;
  font-weight: 600;
  letter-spacing: .0em;
}

.reviews-modal-quote {
  position: absolute;
  z-index: 2;
  left: 139px;
  top: 252px;
  width: 833px;
  max-height: 485px;
  margin: 0;
  overflow: hidden;
  color: #67717f;
  font-size: 37px;
  line-height: 1.2;
  font-weight: 300;
  letter-spacing: .0em;
}

.reviews-modal-close, .reviews-modal-nav {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  box-shadow: none;
}

.reviews-modal-close {
  left: 1118px;
  top: -48px;
  width: 70px;
  height: 70px;
}

.reviews-modal-nav {
  top: 315px;
  width: 80px;
  height: 150px;
}

.reviews-modal-prev {
  left: -112px;
}

.reviews-modal-next {
  left: 1134px;
}

.reviews-modal-close img {
  width: 60px;
  height: 60px;
  max-width: none;
}

.reviews-modal-nav img {
  width: 40px;
  height: 110px;
  max-width: none;
}

.reviews-modal-next img {
  transform: rotate(180deg);
}

.reviews-modal-close:hover img, .reviews-modal-nav:hover img {
  filter: brightness(1.08);
}

.reviews-modal-close:focus-visible, .reviews-modal-nav:focus-visible {
  outline: 3px solid #6398d6;
  outline-offset: 3px;
}


@media (min-width:768px) and (max-width:1199px) {
  .reviews-modal {
    transition-duration: .38s;
    touch-action: none;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

  .reviews-modal-dialog {
    touch-action: none;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

}

@media (max-width:767px) {
  .reviews {
    --reviews-mobile-u: var(--mobile-u);
    position: relative;
    width: 100%;
    height: calc(611 * var(--reviews-mobile-u));
    min-height: calc(611 * var(--reviews-mobile-u));
    padding: 0;
    overflow: hidden;
    background: linear-gradient(180deg,#e8e9eb 0%,#d2d5d9 100%);
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

  .reviews::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url("assets/img/process-pattern-mobile.svg");
    background-repeat: repeat-x;
    background-position: center center;
    background-size: calc(167.7 * var(--reviews-mobile-u)) calc(1018.9 * var(--reviews-mobile-u));
    opacity: .65;
  }

  .reviews-legacy {
    display: none;
  }

  .reviews-desktop {
    display: block;
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    width: calc(390 * var(--reviews-mobile-u));
    height: calc(611 * var(--reviews-mobile-u));
    transform: translateX(-50%);
  }

  .reviews-desktop-background {
    display: none;
  }

  .reviews-desktop-title {
    position: absolute;
    z-index: 2;
    left: calc(34 * var(--reviews-mobile-u));
    top: calc(24 * var(--reviews-mobile-u));
    width: calc(150 * var(--reviews-mobile-u));
    margin: 0;
    color: #1e2835;
    font-size: calc(28 * var(--reviews-mobile-u));
    line-height: 1.16;
    font-weight: 500;
    letter-spacing: 0;
    text-align: left;
    white-space: normal;
  }

  .reviews-deck {
    position: absolute;
    z-index: 2;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .reviews-deck-card {
    position: absolute;
    width: calc(162 * var(--reviews-mobile-u));
    height: calc(132.02 * var(--reviews-mobile-u));
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: calc(16 * var(--reviews-mobile-u));
    color: #000;
    background: transparent;
    text-align: left;
    box-shadow: calc(3 * var(--reviews-mobile-u)) calc(6 * var(--reviews-mobile-u)) calc(7 * var(--reviews-mobile-u)) rgba(30,40,53,.14);
    opacity: 0;
    transform: translateY(calc(14 * var(--reviews-mobile-u)));
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1);
  }

  .reviews-deck-card:nth-child(1) {
    left: calc(202 * var(--reviews-mobile-u));
    top: calc(23 * var(--reviews-mobile-u));
  }

  .reviews-deck-card:nth-child(2) {
    left: calc(25 * var(--reviews-mobile-u));
    top: calc(168 * var(--reviews-mobile-u));
  }

  .reviews-deck-card:nth-child(3) {
    left: calc(202 * var(--reviews-mobile-u));
    top: calc(168 * var(--reviews-mobile-u));
  }

  .reviews-deck-card:nth-child(4) {
    left: calc(25 * var(--reviews-mobile-u));
    top: calc(313 * var(--reviews-mobile-u));
  }

  .reviews-deck-card:nth-child(5) {
    left: calc(202 * var(--reviews-mobile-u));
    top: calc(313 * var(--reviews-mobile-u));
  }

  .reviews-deck-card:nth-child(6) {
    left: calc(25 * var(--reviews-mobile-u));
    top: calc(458 * var(--reviews-mobile-u));
  }

  .reviews-deck-card:nth-child(7) {
    left: calc(202 * var(--reviews-mobile-u));
    top: calc(458 * var(--reviews-mobile-u));
  }

  .reviews-deck-card>img {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    content: url("assets/img/Reviews_Small_Card_for_Mobile.svg");
    pointer-events: none;
    -webkit-user-drag: none;
  }

  .reviews-card-name {
    position: absolute;
    z-index: 2;
    left: calc(18 * var(--reviews-mobile-u));
    top: calc(8 * var(--reviews-mobile-u));
    width: calc(130 * var(--reviews-mobile-u));
    display: block;
  }

  .reviews-card-name strong {
    display: block;
    margin: 0;
    font-size: calc(18 * var(--reviews-mobile-u));
    line-height: 1.25;
    font-weight: 600;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .reviews-card-role {
    position: absolute;
    z-index: 2;
    left: calc(18 * var(--reviews-mobile-u));
    top: calc(57 * var(--reviews-mobile-u));
    width: calc(132 * var(--reviews-mobile-u));
    max-height: calc(61 * var(--reviews-mobile-u));
    display: block;
    overflow: hidden;
    font-size: calc(10.7 * var(--reviews-mobile-u));
    line-height: 1.17;
    font-weight: 300;
    letter-spacing: 0;
  }

  .reviews-stagger.is-visible .reviews-deck-card {
    opacity: 1;
    transform: translateY(0);
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(2) {
    transition-delay: .08s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(3) {
    transition-delay: .16s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(4) {
    transition-delay: .24s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(5) {
    transition-delay: .32s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(6) {
    transition-delay: .40s;
  }

  .reviews-stagger.is-visible:not(.is-revealed) .reviews-deck-card:nth-child(7) {
    transition-delay: .48s;
  }

  .reviews-hit-zone {
    display: none;
  }

  .reviews-modal {
    display: block;
    overflow: hidden;
    transition: opacity .32s ease;
  }

  .reviews-modal-dialog {
    width: 350.5px;
    height: 290px;
    transform: translate(-50%,calc(-50% + 10px)) scale(calc(var(--reviews-modal-scale) * .96));
    transition: opacity .38s ease,transform .4s cubic-bezier(.2,.72,.24,1);
    touch-action: none;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }

  .reviews-modal.is-open .reviews-modal-dialog {
    opacity: 1;
    transform: translate(-50%,-50%) scale(var(--reviews-modal-scale));
  }

  .reviews-modal-dialog.reviews-modal-mobile-swipe-copy {
    pointer-events: none;
  }

  .reviews-modal.is-open .reviews-modal-dialog.reviews-modal-mobile-swipe-from-right {
    opacity: 0;
    transform: translate(calc(-50% + 110vw),-50%) scale(var(--reviews-modal-scale));
    transition: none;
  }

  .reviews-modal.is-open .reviews-modal-dialog.reviews-modal-mobile-swipe-from-left {
    opacity: 0;
    transform: translate(calc(-50% - 110vw),-50%) scale(var(--reviews-modal-scale));
    transition: none;
  }

  .reviews-modal.is-open .reviews-modal-dialog.reviews-modal-mobile-swipe-to-left {
    opacity: 0;
    transform: translate(calc(-50% - 110vw),-50%) scale(var(--reviews-modal-scale));
  }

  .reviews-modal.is-open .reviews-modal-dialog.reviews-modal-mobile-swipe-to-right {
    opacity: 0;
    transform: translate(calc(-50% + 110vw),-50%) scale(var(--reviews-modal-scale));
  }

  .reviews-modal-base {
    width: 350.5px;
    height: 290px;
  }

  .reviews-modal-content-mask {
    width: 350.5px;
    height: 290px;
    border-radius: 25px;
  }

  .reviews-modal-name {
    left: 25px;
    top: 18px;
    width: 300px;
    color: #3b4857;
    font-size: 22px;
    line-height: 1.08;
    font-weight: 600;
    letter-spacing: 0;
  }

  .reviews-modal-role {
    left: 25px;
    top: 48px;
    width: 300px;
    max-height: 48px;
    color: #3b4857;
    font-size: 12.5px;
    line-height: 1.15;
    font-weight: 600;
    letter-spacing: 0;
  }

  .reviews-modal-quote {
    left: 33px;
    top: 97px;
    width: 288px;
    max-height: 185px;
    color: #67717f;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 300;
    letter-spacing: 0;
  }

  .reviews-modal-close, .reviews-modal-nav {
    display: none;
  }

}

@media (prefers-reduced-motion:reduce) {
  .reviews-stagger .reviews-deck-card {
    opacity: 1;
    transform: none;
  }

  .reviews-deck-card, .reviews-deck-card::after, .reviews-modal, .reviews-modal-dialog {
    transition: none !important;
  }

}


/* HERO: fade the face after the opening transitions finish. */
.hero .hero-visual img {
  opacity: 0;
  transition: none;
}

.hero.is-face-visible .hero-visual img {
  opacity: .2;
  transition: opacity 0.85s linear;
}

@media (prefers-reduced-motion:reduce) {
  .hero .hero-visual img,
  .hero.is-face-visible .hero-visual img {
    opacity: .2;
    transition: none;
  }
}

/* HERO: stagger the four statistic cards on entry. */
.hero .hero-stats.stagger > .hero-stat {
  opacity: 0;
  transform: translateY(24px);
  transition: none;
}

.hero .hero-stats.stagger.is-visible > .hero-stat {
  opacity: 1;
  transform: none;
  transition: opacity .7s ease,transform .7s ease;
  transition-delay: 0s;
}

.hero .hero-stats.stagger.is-visible > .hero-stat:nth-child(2) {
  transition-delay: .12s;
}

.hero .hero-stats.stagger.is-visible > .hero-stat:nth-child(3) {
  transition-delay: .24s;
}

.hero .hero-stats.stagger.is-visible > .hero-stat:nth-child(4) {
  transition-delay: .36s;
}

@media (prefers-reduced-motion:reduce) {
  .hero .hero-stats.stagger > .hero-stat,
  .hero .hero-stats.stagger.is-visible > .hero-stat {
    opacity: 1;
    transform: none;
    transition: none;
    transition-delay: 0s;
  }
}

/* REVIEWS: company logos on Desktop small cards only. */
.reviews-card-logo {
  display: none;
}

@media (min-width:1200px) {
  .reviews-deck-card > .reviews-card-logo {
    display: block;
    position: absolute;
    z-index: 3;
    right: calc(var(--review-logo-right) * var(--reviews-u));
    top: calc(var(--review-logo-top) * var(--reviews-u));
    width: calc(var(--review-logo-width) * var(--reviews-u));
    height: calc(var(--review-logo-height) * var(--reviews-u));
    pointer-events: none;
    user-select: none;
  }

  .reviews-card-logo > img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
    pointer-events: none;
    -webkit-user-drag: none;
  }

  .reviews-deck-card:nth-child(1) {
    --review-logo-width: 68;
    --review-logo-height: 68;
    --review-logo-right: 29;
    --review-logo-top: 14;
  }

  .reviews-deck-card:nth-child(2) {
    --review-logo-width: 104.5;
    --review-logo-height: 52.5;
    --review-logo-right: 31;
    --review-logo-top: 17;
  }

  .reviews-deck-card:nth-child(3) {
    --review-logo-width: 130.5;
    --review-logo-height: 57;
    --review-logo-right: 22;
    --review-logo-top: 16;
  }

  .reviews-deck-card:nth-child(4) {
    --review-logo-width: 181;
    --review-logo-height: 39;
    --review-logo-right: 10;
    --review-logo-top: 23;
  }

  .reviews-deck-card:nth-child(5) {
    --review-logo-width: 110;
    --review-logo-height: 45;
    --review-logo-right: 20;
    --review-logo-top: 18;
  }

  .reviews-deck-card:nth-child(6) {
    --review-logo-width: 160;
    --review-logo-height: 43;
    --review-logo-right: 12;
    --review-logo-top: 17;
  }

  .reviews-deck-card:nth-child(7) {
    --review-logo-width: 104.5;
    --review-logo-height: 85.5;
    --review-logo-right: 17;
    --review-logo-top: 10;
  }
}

/* REVIEWS: Tablet logos, scaled from Desktop artwork. */
@media (min-width:768px) and (max-width:1199px) {
  .reviews-deck-card > .reviews-card-logo {
    display: block;
    position: absolute;
    z-index: 3;
    right: calc(var(--review-logo-right) * var(--reviews-tablet-u));
    top: calc(var(--review-logo-top) * var(--reviews-tablet-u));
    width: calc(var(--review-logo-width) * var(--reviews-tablet-u));
    height: calc(var(--review-logo-height) * var(--reviews-tablet-u));
    pointer-events: none;
    user-select: none;
  }

  .reviews-card-logo > img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
    pointer-events: none;
    -webkit-user-drag: none;
  }

  .reviews-deck-card:nth-child(1) {
    --review-logo-width: 52.36;
    --review-logo-height: 52.36;
    --review-logo-right: 17;
    --review-logo-top: 15;
  }

  .reviews-deck-card:nth-child(2) {
    --review-logo-width: 80.465;
    --review-logo-height: 40.425;
    --review-logo-right: 19;
    --review-logo-top: 17;
  }

  .reviews-deck-card:nth-child(3) {
    --review-logo-width: 100.485;
    --review-logo-height: 43.89;
    --review-logo-right: 15;
    --review-logo-top: 16;
  }

  .reviews-deck-card:nth-child(4) {
    --review-logo-width: 139.37;
    --review-logo-height: 30.03;
    --review-logo-right: 12;
    --review-logo-top: 20;
  }

  .reviews-deck-card:nth-child(5) {
    --review-logo-width: 84.7;
    --review-logo-height: 34.65;
    --review-logo-right: 18;
    --review-logo-top: 17;
  }

  .reviews-deck-card:nth-child(6) {
    --review-logo-width: 123.2;
    --review-logo-height: 33.11;
    --review-logo-right: 12;
    --review-logo-top: 16;
  }

  .reviews-deck-card:nth-child(7) {
    --review-logo-width: 73.15;
    --review-logo-height: 59.85;
    --review-logo-right: 18;
    --review-logo-top: 13;
  }
}

/* REVIEWS: modal logo follows the review content and its small-card dimensions. */
.reviews-modal-logo {
  display: none;
  position: absolute;
  z-index: 2;
  max-width: none;
  object-fit: contain;
  pointer-events: none;
  -webkit-user-drag: none;
}

@media (min-width:768px) {
  .reviews-modal-logo:not([hidden]) {
    display: block;
  }
}

/* REVIEWS modal logos: manual controls, offsets in visible px. */
/* Desktop: independent modal logo controls. */
@media (min-width:1200px) {
  .reviews-modal-dialog {
    --review-modal-logo-scale: 1.35;
    --review-modal-logo-right-add: 25px;
    --review-modal-logo-top-add: 15px;
    --review-modal-logo-x: 0px; /* positive moves right */
    --review-modal-logo-y: 0px; /* positive moves down */
  }
}

/* Tablet: independent modal logo controls. */
@media (min-width:768px) and (max-width:1199px) {
  .reviews-modal-dialog {
    --review-modal-logo-scale: 1.3;
    --review-modal-logo-right-add: 15px;
    --review-modal-logo-top-add: 5px;
    --review-modal-logo-x: 0px; /* positive moves right */
    --review-modal-logo-y: 0px; /* positive moves down */
  }
}

.reviews-modal-logo {
  width: calc(var(--review-logo-base-width) * var(--review-modal-logo-scale));
  height: calc(var(--review-logo-base-height) * var(--review-modal-logo-scale));
  right: calc(var(--review-logo-base-right) + (var(--review-modal-logo-right-add) - var(--review-modal-logo-x)) * var(--review-logo-inverse-scale));
  top: calc(var(--review-logo-base-top) + (var(--review-modal-logo-top-add) + var(--review-modal-logo-y)) * var(--review-logo-inverse-scale));
}

/* Override the controls per range or per logo as needed:
@media (min-width:768px) and (max-width:1199px) {
  .reviews-modal-dialog { --review-modal-logo-x: 0px; }
}
.reviews-modal-dialog[data-review-logo="1"] {
  --review-modal-logo-scale: 1.25;
  --review-modal-logo-x: 0px;
  --review-modal-logo-y: 0px;
}
*/

/* Keep scrollbar-dependent viewport dimensions stable across modal open/close. */
html {
  overflow-y: scroll;
}

/* MOBILE / TABLET: avoid a body scroll container that prevents the header sticking. */
@media (max-width:1199px) {
  body {
    overflow-x: clip;
  }
}
