@font-face {
  font-family: Mulish;
  font-style: italic;
  font-weight: 200 1000;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/mulish/v18/1Pttg83HX_SGhgqk2jovaqQ.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Mulish;
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/mulish/v18/1Ptvg83HX_SGhgqk3wot.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

#appcove-landing {
  container-type: inline-size;
  display: block;
  background-color: #fff;

  & * {
    box-sizing: border-box;
  }

  & .landing-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background-color: #fff;
    padding: 1rem 2rem;
    box-shadow: none;
    border-bottom: none;
  }

  & .header-container {
    max-width: 1600px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  & .company-logo-header {
    display: block;
    text-decoration: none;

    & img {
      display: block;
      height: 28px;
      width: auto;
    }

    &:hover img {
      opacity: .8;
    }
  }

  & .header-signin {
    padding: .5rem 1.25rem;
    background-color: #0000;
    color: #0b4a67;
    font-family: Adelle Sans, Mulish, sans-serif;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: .03em;
    text-decoration: none;
    transition: color .2s;

    &:hover {
      color: #13a89e;
    }
  }

  & appcove-sheet {
    --u: min(.12941rem, 100cqi / 612);
    --ink: #231f20;
    --navy: #0b4a67;
    --navy-deep: #001734;
    --teal: #13a89e;
    --teal-dark: #006880;
    --beige: #f4efe8;
    display: grid;
    grid-template-columns: calc(var(--u) * 422.2) calc(var(--u) * 189.8);
    width: calc(var(--u) * 612);
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    font-family: Adelle Sans, Mulish, sans-serif;
    font-size: calc(var(--u) * 8.5);
    line-height: calc(var(--u) * 11);
    color: var(--ink);
    background-color: #fff;
  }

  & hero-art {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    width: calc(var(--u) * 243.9);
    height: calc(var(--u) * 245.4);
    pointer-events: none;

    & img {
      display: block;
      width: 100%;
      height: 100%;
    }
  }

  & sheet-main {
    display: block;
    position: relative;
    z-index: 1;
    padding: calc(var(--u) * 37.5) calc(var(--u) * 23.2) calc(var(--u) * 41.7) calc(var(--u) * 36);
  }

  & hero-band {
    display: grid;
    grid-template-columns: calc(var(--u) * 121.5) calc(var(--u) * 251.5);
    align-items: end;
    margin-bottom: calc(var(--u) * 23.5);
  }

  & hero-facts {
    display: block;
    position: relative;
    top: calc(var(--u) * 3.64);

    & p {
      font-size: calc(var(--u) * 8.5);
      font-weight: 800;
      line-height: calc(var(--u) * 15);
      margin: 0;
      white-space: nowrap;
    }

    & strong {
      font-size: calc(var(--u) * 7.5);
      font-weight: 800;
      color: var(--teal-dark);
    }
  }

  & hero-lede {
    display: block;
  }

  & .appcove-title {
    font-size: calc(var(--u) * 42.78);
    font-weight: 100;
    line-height: 1;
    color: var(--navy);
    margin: 0 0 calc(var(--u) * 12) 0;
  }

  & .highlight-text {
    font-size: calc(var(--u) * 15);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.02em;
    color: var(--teal);
    margin: 0 0 calc(var(--u) * 11.1) 0;

    & .text-navy {
      color: var(--navy);
    }
  }

  & p.important-text {
    font-size: calc(var(--u) * 10);
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: -.03em;
    color: var(--navy);
    margin: 0 0 calc(var(--u) * 6.5) 0;
  }

  & .body-text {
    font-size: calc(var(--u) * 8.5);
    font-weight: 350;
    line-height: calc(var(--u) * 11);
    letter-spacing: -.006em;
    margin: 0;
  }

  & pa-header, & pa-row {
    display: grid;
    grid-template-columns: calc(var(--u) * 158.5) calc(var(--u) * 46) calc(var(--u) * 158.5);
    align-items: start;
  }

  & pa-header {
    margin-bottom: calc(var(--u) * 12.1);

    & h2 {
      font-size: calc(var(--u) * 15);
      font-weight: 800;
      line-height: 1.2;
      color: var(--navy);
      margin: 0;
    }

    & .x-answers {
      grid-column: 3;
    }
  }

  & pa-row {
    margin: calc(var(--u) * 12.7) 0 calc(var(--u) * 10.7) 0;

    & p {
      font-size: calc(var(--u) * 8.5);
      font-weight: 350;
      line-height: calc(var(--u) * 11);
      margin: 0;
    }
  }

  & pa-arrow {
    display: flex;
    justify-content: flex-start;
    padding-left: calc(var(--u) * 6.65);

    & .arrow-disc {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      width: calc(var(--u) * 22.8);
      height: calc(var(--u) * 22.8);
      margin-top: calc(var(--u) * 1.55);
      border-radius: 50%;
      background-color: var(--teal-dark);
      box-shadow: 0 0 0 calc(var(--u) * 1.55) var(--teal);
    }

    & svg {
      display: block;
      width: calc(var(--u) * 11.6);
      height: calc(var(--u) * 10.5);
    }
  }

  & hr.dashed-rule {
    all: initial;
    display: block;
    height: max(1px, calc(var(--u) * .5));
    margin: 0;
    background-image: repeating-linear-gradient(to right,
        #006880 0 calc(var(--u) * 2),
        transparent calc(var(--u) * 2) calc(var(--u) * 4));
  }

  & .section-title {
    font-size: calc(var(--u) * 15);
    font-weight: 800;
    line-height: 1.2;
    color: var(--teal);
    margin: calc(var(--u) * 19.8) 0 calc(var(--u) * 12) 0;
  }

  & key-staff-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 0 calc(var(--u) * .3) 0 calc(var(--u) * .5);
    column-gap: calc(var(--u) * 21.2);
    row-gap: calc(var(--u) * 8.6);
    margin-bottom: calc(var(--u) * 32.7);
  }

  & key-staff-card {
    display: block;
    height: calc(var(--u) * 51.4);
    padding: calc(var(--u) * 8.8) calc(var(--u) * 12) 0 calc(var(--u) * 12);
    border-radius: calc(var(--u) * 6);
    background-color: var(--beige);

    & strong {
      display: block;
      font-size: calc(var(--u) * 8.5);
      font-weight: 800;
      line-height: calc(var(--u) * 11);
    }

    & p {
      margin: 0;
      font-size: calc(var(--u) * 8.5);
      font-weight: 550;
      line-height: calc(var(--u) * 11);
    }

    & .staff-years {
      display: block;
      font-size: calc(var(--u) * 7.5);
      font-weight: 800;
      line-height: calc(var(--u) * 11);
      color: var(--teal);
    }
  }

  & .contact-label {
    font-size: calc(var(--u) * 7.5);
    font-weight: 800;
    line-height: calc(var(--u) * 11);
    color: var(--teal-dark);
    margin: 0 0 calc(var(--u) * 5.6) 0;
  }

  & contact-grid {
    display: grid;
    grid-template-columns: calc(var(--u) * 99) 1fr;

    & p {
      font-size: calc(var(--u) * 8.5);
      font-weight: 550;
      line-height: calc(var(--u) * 11.1);
      margin: 0;
    }

    & strong {
      font-weight: 800;
    }
  }

  & .company-logo {
    margin-top: calc(var(--u) * 29.3);

    & img {
      display: block;
      width: calc(var(--u) * 102.6);
      height: calc(var(--u) * 26.3);
    }
  }

  & sheet-rail {
    display: block;
    padding: calc(var(--u) * 36.1) calc(var(--u) * 13) calc(var(--u) * 47.3) calc(var(--u) * 14.3);
    background-color: var(--beige);

    & .timeline-heading {
      font-size: calc(var(--u) * 15);
      font-weight: 800;
      line-height: 1.2;
      color: var(--navy);
      margin: 0 0 calc(var(--u) * 5.1) 0;
    }

    & .timeline-subtitle {
      font-size: calc(var(--u) * 7.5);
      font-weight: 800;
      line-height: calc(var(--u) * 11);
      color: var(--teal-dark);
      margin: 0 0 calc(var(--u) * 16.1) 0;
    }
  }

  & timeline-list {
    display: block;
    padding-left: calc(var(--u) * 12);
    background-image: repeating-linear-gradient(to bottom,
        #006880 0 calc(var(--u) * 2),
        transparent calc(var(--u) * 2) calc(var(--u) * 4));
    background-size: max(1px, calc(var(--u) * .5)) calc(100% - var(--u) * 5.5);
    background-position: calc(var(--u) * 3.7) calc(var(--u) * 5.5);
    background-repeat: no-repeat;
  }

  & timeline-item {
    display: block;
    position: relative;
    margin-bottom: calc(var(--u) * 7.5);

    &:last-child {
      margin-bottom: 0;
    }

    & .timeline-dot {
      position: absolute;
      left: calc(var(--u) * -12);
      top: calc(var(--u) * 1.25);
      width: calc(var(--u) * 7.4);
      height: calc(var(--u) * 7.4);
      border-radius: 50%;

      &.dot-active {
        background-color: var(--teal);
      }

      &.dot-inactive {
        background-color: var(--navy-deep);
      }
    }

    & .timeline-year {
      margin: 0;
      line-height: calc(var(--u) * 8.8);
    }

    & .timeline-year-num {
      font-size: calc(var(--u) * 7.5);
      font-weight: 800;
      color: var(--teal-dark);
    }

    & .active-project, & .inactive-project {
      font-size: calc(var(--u) * 7.5);
      font-weight: 800;
      font-style: italic;
      white-space: nowrap;
    }

    & .active-project {
      color: var(--teal);
    }

    & .inactive-project {
      color: var(--navy-deep);
    }

    & strong {
      display: block;
      font-size: calc(var(--u) * 8.5);
      font-weight: 800;
      line-height: calc(var(--u) * 11.2);
    }

    & small {
      display: block;
      font-size: calc(var(--u) * 8.5);
      font-weight: 550;
      line-height: calc(var(--u) * 11);
      letter-spacing: -.02em;
    }
  }
}
