:root {
  --typography--soft-black: #2f2f2f;
  --typography--solid-black: #1f1f1f;
  --main-color: #4435eb;
  --white: white;
  --background-color--gray: #efefef;
  --pale-periwinkle: #f2f2fc;
  --black: black;
  --background-color--soft-purple: #f6f6fd;
  --typography--softer-black: #3f3f3f;
  --typography--orange: #eb7b36;
}

body {
  color: var(--typography--soft-black);
  font-family: Neuehaasunica, sans-serif;
  font-size: 18px;
  line-height: 28px;
}

ul {
  text-align: left;
  margin-top: 24px;
  margin-bottom: 0;
  padding-left: 0;
}

li {
  margin-top: 16px;
  padding-left: 32px;
}

blockquote {
  border: 0 solid #000;
  margin-bottom: 0;
  padding: 0;
  font-size: 18px;
  font-style: italic;
  line-height: 28px;
}

.h1 {
  color: var(--typography--solid-black);
  letter-spacing: -.02em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 90px;
  font-weight: 500;
  line-height: 92px;
}

.h2 {
  color: var(--typography--solid-black);
  letter-spacing: -.015em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 67px;
  font-weight: 500;
  line-height: 76px;
}

.h3 {
  color: var(--typography--solid-black);
  letter-spacing: -.01em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 50px;
  font-weight: 500;
  line-height: 56px;
}

.h4 {
  color: var(--typography--solid-black);
  letter-spacing: -.005em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 36px;
  font-weight: 700;
  line-height: 40px;
}

.h5 {
  color: var(--typography--solid-black);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 28px;
  font-weight: 700;
  line-height: 36px;
}

.h6 {
  color: var(--typography--solid-black);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 28px;
}

.body1 {
  color: var(--typography--soft-black);
  margin-top: 20px;
  margin-bottom: 0;
  font-size: 22px;
  line-height: 36px;
}

.body2 {
  margin-top: 16px;
  margin-bottom: 0;
  font-size: 20px;
  line-height: 32px;
}

.body3 {
  margin-top: 16px;
  margin-bottom: 0;
  font-size: 18px;
  line-height: 28px;
}

.body4 {
  margin-top: 16px;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 24px;
}

.block-quote {
  border-left: 0 solid #000;
}

.eyebrow {
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 16px;
}

.footnote {
  color: var(--typography--solid-black);
  margin-top: 12px;
  margin-bottom: 0;
  font-size: 14px;
  line-height: 20px;
}

.cta_test {
  background-color: var(--main-color);
  color: var(--white);
  letter-spacing: .02em;
  border-radius: 4px;
  margin-top: 24px;
  padding: 12px 32px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
}

.container {
  max-width: 1208px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.container.flexbox__vertical-center {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.container.grid {
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.container.footer-w {
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  border-top: 2px solid #d8d8d8;
  justify-content: space-between;
  align-items: center;
  max-width: 1128px;
  padding-bottom: 12px;
  padding-left: 0;
  padding-right: 0;
  display: flex;
}

.section {
  padding-top: 48px;
  padding-bottom: 48px;
}

.header__section {
  padding-top: 64px;
  padding-bottom: 48px;
}

.margin__top-24px-w {
  height: 0;
  margin-top: 24px;
}

.margin__top-16px {
  margin-top: 16px;
}

.margin__top-32px-w {
  height: 0;
  margin-top: 32px;
}

._6__column-w {
  width: 100%;
  max-width: 568px;
}

.margin__top-12px-w {
  height: 0;
  margin-top: 12px;
}

.margin__top-16px-w {
  height: 0;
  margin-top: 16px;
}

.flexbox__horizontal-center {
  justify-content: center;
  align-items: center;
  display: flex;
}

.flexbox__horizontal-center.gap__12px, .flexbox__horizontal-center.logo {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
}

.no__spacing {
  margin: 0;
  padding: 0;
}

.no__margin {
  margin: 0;
}

.margin__top-12px {
  margin-top: 0;
}

.margin__top-8px {
  margin-top: 8px;
}

.margin__top-8px-w {
  height: 0;
  margin-top: 8px;
}

.margin__top-24px {
  margin-top: 24px;
}

.margin__top-32px {
  margin-top: 32px;
}

.no__padding {
  padding: 0;
}

.italic {
  font-style: italic;
}

.bg__gray {
  background-color: var(--background-color--gray);
}

.text__align-left {
  text-align: left;
}

.li {
  margin-top: 0;
  padding-left: 0;
}

._3__column-w {
  max-width: 268px;
}

.footer {
  max-width: 1168px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.link {
  color: var(--typography--solid-black);
  padding-top: 16px;
  padding-bottom: 16px;
  font-size: 16px;
  line-height: 24px;
  transition: color .2s ease-in-out;
  display: block;
}

.link:hover {
  color: var(--main-color);
}

.cookie__dialog {
  z-index: 9999999;
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  border: 2px solid var(--pale-periwinkle);
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 479px;
  padding: 24px;
  transition: transform .375s ease-in-out;
  display: flex;
  position: fixed;
  top: auto;
  bottom: 20px;
  left: auto;
  right: 20px;
  transform: scale(0);
}

.cookie__dialog-heading {
  color: var(--typography--solid-black);
  letter-spacing: 0;
  text-transform: none;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
}

.cookie__dialog-paragraph {
  color: var(--typography--soft-black);
  margin-bottom: 0;
  font-size: 16px;
  line-height: 24px;
}

.cookie__dialog-button-w {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  margin-top: 8px;
  display: flex;
}

.cookie__dialog-accept {
  background-color: var(--main-color);
  color: #fff;
  padding: 12px 24px;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.cookie__dialog-decline {
  color: var(--typography--soft-black);
  background-color: rgba(255, 255, 255, 0);
  padding: 10px 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.cta {
  background-color: var(--main-color);
  color: #fff;
  letter-spacing: .02px;
  border: 2px solid #111;
  border-radius: 4px;
  margin-top: 24px;
  padding: 12px 32px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  text-decoration: none;
  transition: all .125s cubic-bezier(.68, -.55, .265, 1.55);
  display: block;
  box-shadow: 2px 4px #111;
}

.cta:hover {
  transform: translate(-2px, -2px);
  box-shadow: 4px 6px #111;
}

.cta:active {
  transform: translate(2px, 2px);
  box-shadow: 0 0 #111;
}

.background__color-brand {
  background-color: var(--pale-periwinkle);
}

.portrait__linktree {
  border-radius: 100%;
  box-shadow: 4px 4px 4px rgba(17, 17, 17, .35);
}

.figcaption {
  margin-top: 8px;
}

.flexbox__vertical-center.gap__12px {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-flow: column;
  display: flex;
}

.white-cta-icon {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  background-color: var(--white);
  color: var(--typography--solid-black);
  letter-spacing: .02px;
  border: 2px solid #111;
  border-radius: 4px;
  flex-flow: row-reverse;
  justify-content: center;
  align-items: center;
  margin-top: 24px;
  padding: 12px 32px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  text-decoration: none;
  transition: all .125s cubic-bezier(.68, -.55, .265, 1.55);
  display: flex;
  box-shadow: 2px 4px #111;
}

.white-cta-icon:hover {
  transform: translate(-2px, -2px);
  box-shadow: 4px 6px #111;
}

.white-cta-icon:active {
  transform: translate(2px, 2px);
  box-shadow: 0 0 #111;
}

.white-cta-icon.margin__top-0px {
  margin-top: 0;
}

@media screen and (max-width: 991px) {
  .section {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .header__section {
    padding-top: 72px;
    padding-bottom: 48px;
  }
}

@media screen and (max-width: 767px) {
  .h2 {
    font-size: 53px;
    line-height: 60px;
  }

  .h3 {
    font-size: 40px;
    line-height: 44px;
  }

  .body1 {
    font-size: 20px;
    line-height: 32px;
  }

  .section {
    padding-top: 36px;
    padding-bottom: 36px;
  }

  .header__section {
    padding-top: 60px;
    padding-bottom: 40px;
  }
}

@media screen and (max-width: 479px) {
  .h2 {
    font-size: 36px;
    line-height: 40px;
  }

  .h3 {
    font-size: 32px;
    line-height: 36px;
  }

  .h4 {
    font-size: 28px;
    line-height: 32px;
  }

  .body1 {
    font-size: 18px;
    line-height: 28px;
  }

  .body3 {
    font-size: 16px;
    line-height: 24px;
  }

  .cta_test {
    width: 100%;
  }

  .container.footer-w {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    text-align: center;
    flex-flow: column;
  }

  .section {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .header__section {
    padding-top: 48px;
    padding-bottom: 32px;
  }

  .flexbox__horizontal-center {
    flex-direction: column;
  }

  .flexbox__horizontal-center.gap__12px {
    grid-column-gap: 4px;
    grid-row-gap: 4px;
  }

  .flexbox__horizontal-center.logo {
    grid-column-gap: 4px;
    grid-row-gap: 4px;
    flex-flow: row;
  }

  .cookie__dialog {
    top: auto;
    bottom: 0%;
    left: 0%;
    right: 0%;
  }

  .cookie__dialog-button-w {
    flex-direction: column-reverse;
    width: 100%;
  }

  .cookie__dialog-accept, .cookie__dialog-decline, .cta, .white-cta-icon {
    width: 100%;
  }
}


@font-face {
  font-family: 'Neuehaasunica';
  src: url('../fonts/NeueHaasUnicaPro-Bold.woff2') format('woff2'), url('../fonts/NeueHaasUnicaPro-Bold.woff') format('woff'), url('../fonts/NeueHaasUnicaPro-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neuehaasunica';
  src: url('../fonts/NeueHaasUnicaPro-Italic.woff2') format('woff2'), url('../fonts/NeueHaasUnicaPro-Italic.woff') format('woff'), url('../fonts/NeueHaasUnicaPro-Italic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Neuehaasunica';
  src: url('../fonts/NeueHaasUnicaPro-Regular.woff2') format('woff2'), url('../fonts/NeueHaasUnicaPro-Regular.woff') format('woff'), url('../fonts/NeueHaasUnicaPro-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neuehaasunica';
  src: url('../fonts/NeueHaasUnicaW1GMedium-Regular.woff2') format('woff2'), url('../fonts/NeueHaasUnicaW1GMedium-Regular.woff') format('woff'), url('../fonts/NeueHaasUnicaW1GMedium-Regular.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}