html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

#pagetop {
  font-family: Gotham-book, -apple-system, blinkmacsystemfont, segoe ui,
    helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
    Segoe UI Symbol;
  color: #004547;
  line-height: 1.4;
  position: relative;
}

.to-top {
  position: fixed;
  right: 0px;
  bottom: 20px;
  -webkit-transform: translateX(-50%) rotate(180deg);
  transform: translateX(-50%) rotate(180deg);
  width: 48px;
  height: 48px;
  z-index: 10;
  &:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 48px;
    height: 48px;
    background-color: #ebebeb;
    border: 2px solid #004547;
    border-radius: 50%;
    background-image: url("../img/arrow-teal.svg");
    background-repeat: repeat-y;
    background-position: center center;
    background-size: 40 40px;
    transition: background-color, background-position 0.3s ease;
  }
  &:hover::after {
    background-color: #004547;
    background-image: url("../img/arrow-white.svg");
    background-position-y: 1000%;
  }
}

section {
  &.lime {
    background-color: #e5ff66;
  }
  &.violet {
    background-color: #adb5ff;
  }
}

.lime {
  background-color: #e5ff66;
}

.container {
  max-width: 1340px;
  box-sizing: content-box;
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: 50px;
  padding-bottom: 50px;
  > :first-child {
    margin-top: 0;
  }
  > :last-child {
    margin-bottom: 0;
  }
}

.violet {
  background-color: #adb5ff;
  .row {
    .top .rank,
    .bot .fill div {
      background-color: #adb5ff;
      color: #004547;
    }
  }
}
.pink {
  background-color: #e5b2eb;
}
.orange {
  background-color: #ffcc7a;
}
.blue {
  background-color: #6edeff;
}
.lime {
  background-color: #e5ff66;
}
.teal {
  background-color: #004547;
  color: #fff;
  h2 {
    color: #adb5ff;
  }
  a,
  p {
    color: #fff;
  }
  &.blue-text {
    h2 {
      color: #6edeff;
    }
  }
  &.pink-text {
    h2 {
      color: #e5b2eb;
    }
  }
  &.orange-text {
    h2 {
      color: #ffcc7a;
    }
  }
}

img {
  max-width: 100%;
}

h1 {
  font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
    segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
    "Segoe UI Emoji", Segoe UI Symbol;
  font-weight: 700;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 110px;
  margin-bottom: 30px;
  -webkit-clip-path: inset(0 0 100% 0);
  clip-path: inset(0 0 100% 0);
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-animation: clipUp 1s 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
  animation: clipUp 1s 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
  span {
    color: #adb5ff;
  }
}

@-webkit-keyframes clipUp {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0);
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
  100% {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes clipUp {
  0% {
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0);
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
  100% {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

h2 {
  font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
    segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
    "Segoe UI Emoji", Segoe UI Symbol;
  font-weight: 700;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 100px;
  margin-bottom: 30px;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  opacity: 0;
  .text-smaller {
    font-size: 62px;
  }
}

h3 {
  font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
    segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
    "Segoe UI Emoji", Segoe UI Symbol;
  font-weight: 700;
  color: #004547;
  text-transform: uppercase;
  line-height: 0.8;
  letter-spacing: -0.01em;
  font-size: 78px;
  margin-bottom: 30px;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  opacity: 0;
  .text-smaller {
    font-size: 62px;
  }
}

h4 {
  font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
    helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
    Segoe UI Symbol;
  text-align: center;
}

p {
  margin: 1em 0;
  font-size: 16px;
  line-height: 26px;
  letter-spacing: -0.01em;
}

a,
b {
  font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
    helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
    Segoe UI Symbol;
}

.card {
  padding: 35px 10px;
  margin: 30px 0;
  border-radius: 35px;
  background: #fff;
  color: #004547;
  overflow: hidden;
  h3 {
    text-align: center;
    margin-bottom: 15px;
  }
  &.lessPadding {
    padding-top: 10px;
  }
  &.lime {
    background-color: #e5ff66;
  }
  &.teal {
    background-color: #004547;
    color: #fff;
    .row {
      .top .name {
        color: #fff;
      }
      .top .rank,
      .bot .fill div {
        background-color: #adb5ff;
        color: #004547;
      }
      .bot {
        color: #adb5ff;
      }
    }
    &.jimmy {
      display: flex;
      justify-content: center;
      padding-bottom: 0;
      padding-top: 23px;
    }
  }
  &.blue {
    .row {
      .top .name {
        color: #fff;
      }
      .top .rank,
      .bot .fill div {
        background-color: #6edeff;
        color: #004547;
      }
      .bot {
        color: #6edeff;
      }
    }
  }
  &.rows {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
  }
  .rows {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
  }
  &.rows-orange .row,
  .rows-orange .row {
    .top .rank,
    .bot .fill div {
      background-color: #ffcc7a;
      color: #004547;
    }
  }
  &.rows-pink .row,
  .rows-pink .row {
    .top .rank,
    .bot .fill div {
      background-color: #e5b2eb;
      color: #004547;
    }
    .bot {
      color: #e5b2eb;
    }
  }
  .rows.one-row .row {
    display: flex;
    align-items: center;
    gap: 8px;
    .top {
      width: 170px;
      gap: 8px;
      line-height: 1.1;
      margin: 0;
      align-items: center;
      .rank {
        background-color: initial;
        color: #fff;
        font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
          helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
          Segoe UI Symbol;
      }
    }
    .bot {
      flex: 1;
    }
  }
  .row {
    /* will-change: opacity, transform; */
    /* opacity: 0; */
    .top {
      margin-bottom: 5px;
      display: flex;
      gap: 5px;
      .rank {
        width: 22px;
        min-width: 22px;
        height: 22px;
        background-color: #e5ff66;
        border-radius: 50%;
        font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
          segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
          "Segoe UI Emoji", Segoe UI Symbol;
        font-weight: 700;
        font-size: 18px;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      .name {
      }
    }
    .bot {
      display: flex;
      gap: 5;
      align-items: center;
      font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
        helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
        Segoe UI Symbol;
      font-size: 18px;
      .fill div {
        background-color: #004547;
        border-radius: 8px;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        height: 30px;
        padding: 0 8px;
      }
    }
  }
}

#intro {
  img {
    margin-bottom: 10px;
    border-radius: 40px;
  }
}

#decking {
  .card {
    position: relative;
  }
  .parallax-image-wrapper {
    max-width: 190px;
    overflow: hidden;
    .parallax-image {
      width: 250%;
      max-width: 250%;
    }
  }
}

.parallax-image-wrapper {
  mask: url("../img/mask.svg");
  -webkit-mask: url("../img/mask.svg");
  position: relative;
  margin: auto;
  aspect-ratio: 1 / 1.08056872038;
  width: 100%;
  -webkit-mask-size: cover;
  mask-size: cover;
  height: auto;
  .parallax-image {
    width: 100%;
    height: auto;
    bottom: -150px;
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform-origin: center;
    transform-origin: center;
  }
}

.scrollable {
  height: 344px;
  overflow-y: scroll;
  &::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
  }
  &::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #e4e4e4;
  }
  h3 {
    margin-top: 30px;
  }
  > :first-child {
    margin-top: 0;
  }
}

#decking {
  h4 {
    text-align: left;
  }
  .parallax-image-wrapper {
    margin-bottom: 30px;
  }
}

#paint {
  background-color: #004547;
  h3 {
    color: #adb5ff;
  }
  .paint-buckets img {
    max-height: 180px;
  }
}

#who {
  background-color: #004547;
  h3 {
    color: #6edeff;
  }
}

#fence {
  h3 {
    color: #adb5ff;
  }
  .fence-container {
    display: flex;
    align-items: flex-start;
    margin-bottom: 16px;
    > :nth-child(1) {
      width: 24.2%;
    }
    > :nth-child(2) {
      width: 41.6%;
    }
    > :nth-child(3) {
      width: 28.4%;
    }
    > :nth-child(4) {
      width: 5.37%;
    }
    .fence {
      opacity: 0;
      -webkit-clip-path: inset(0 100% 0 0);
      clip-path: inset(0 100% 0 0);
    }
  }
  .key {
    .row {
      opacity: 0;
      display: flex;
      align-items: center;
      gap: 5px;
      &:not(:last-child) {
        margin-bottom: 10px;
      }
    }
    > :nth-child(1) .num {
      background-color: #004547;
      color: #fff;
    }
    > :nth-child(2) .num {
      background-color: #9fe31c;
      color: #004547;
    }
    > :nth-child(3) .num {
      background-color: #f4d311;
      color: #004547;
    }
    > :nth-child(4) .num {
      background-color: #ef3737;
      color: #fff;
    }
    .num {
      width: 42px;
      min-width: 42px;
      height: 34px;
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 4px;
      font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
        helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
        Segoe UI Symbol;
    }
  }
}

#mine {
  .container {
    .card {
      display: flex;
      flex-direction: column;
      gap: 30px;
    }
  }
}

#trades {
  background-color: #004547;
  h3 {
    color: #ffcc7a;
  }
}

#map {
  .card {
    text-align: center;
    display: grid;
    gap: 20px 10px;
    justify-content: center;
    justify-items: center;
    @media screen and (min-width: 520px) {
      img {
        grid-column: span 2;
      }
      grid-template-columns: 1fr 1fr;
    }
    .map-green,
    .map-red {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
      .map-heading {
        background-color: #9fe31c;
        border-radius: 4px;
        display: flex;
        padding: 2px 8px;
        color: #004547;
        text-align: center;
      }
      .map-sub {
        text-align: center;
        max-width: 220px;
      }
      .map-rows {
        display: flex;
        flex-direction: column;
        width: 100%;
        gap: 5px;
        opacity: 0;
        .map-row {
          background-color: #fff;
          color: #004547;
          border-radius: 20px;
          display: flex;
          .map-rank {
            width: 36px;
            height: 36px;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 50%;
          }
          .map-text {
            display: flex;
            flex: 1;
            align-items: center;
            justify-content: space-between;
            padding: 0 5px;
            > :last-child {
              width: 50px;
            }
          }
        }
      }
    }
    .map-green {
      .map-heading,
      .map-row .map-rank {
        background-color: #9fe31c;
      }
      .map-row {
        border: 1px solid #9fe31c;
      }
    }
    .map-red {
      .map-heading,
      .map-row .map-rank {
        background-color: #ef3737;
        color: #fff;
      }
      .map-row {
        border: 1px solid #ef3737;
      }
    }
  }
}

.list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  .list-item {
    display: flex;
    flex-direction: column;
    gap: 5px;
    .list-heading {
      display: flex;
      align-items: center;
      gap: 5px;
      .list-num {
        width: 22px;
        height: 22px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        background-color: #e5ff66;
        font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
          segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
          "Segoe UI Emoji", Segoe UI Symbol;
        font-weight: 700;
        font-size: 18px;
      }
    }
    .list-text {
      line-height: 1.6;
    }
  }
}

.card {
  .indoor-painting,
  .outdoor-painting {
    height: 120px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
      segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", Segoe UI Symbol;
    font-weight: 700;
    color: #e5b2eb;
    text-transform: uppercase;
    line-height: 0.8;
    letter-spacing: -0.01em;
    font-size: 20px;
    margin-bottom: 10px;
  }
  .indoor-painting {
    background: center center / cover url("../img/indoor-painting-m.jpg")
      no-repeat;
  }
  .outdoor-painting {
    margin-top: 5px;
    background: center center / cover url("../img/outdoor-painting-m.jpg")
      no-repeat;
  }
}

.table {
  overflow-x: scroll;
  padding-bottom: 10px;
  &::-webkit-scrollbar {
    -webkit-appearance: none;
    height: 7px;
    background-color: rgba(228, 228, 228, 0.2);
    border-radius: 10px;
  }
  &::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #e4e4e4;
  }
  table {
    border-collapse: collapse;
    width: 100%;
    overflow-x: scroll;
    min-width: 800px;
    thead {
      tr {
        border-bottom: 1px solid #000;
        th {
          padding: 0 10px 5px 10px;
          align-content: flex-end;
          text-align: left;
        }
        > :nth-child(3) {
          display: flex;
          justify-content: space-between;
          align-items: flex-end;
          gap: 25px;
          > :nth-child(2) {
            width: 120px;
          }
        }
      }
    }
    tbody {
      border-bottom: 1px solid #000;
      tr {
        td {
          padding: 10px;
        }
        &:nth-child(odd) {
          background-color: #f5f5f5;
        }
        > :nth-child(1) div {
          display: flex;
          gap: 16px;
          align-items: center;
          img {
            @media screen and (max-width: 1000px) {
              display: none;
            }
          }
        }
        > :nth-child(2) {
          font-size: 20px;
        }
        > :nth-child(3) {
          .bar {
            border: 1px solid #d5d5d5;
            border-radius: 30px;
            padding: 5px;
            padding-left: 35px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 25px;
            background: center left 12px / 15px 16px url("../img/search.svg")
                no-repeat,
              #fff;
            .search-term {
              display: inline-flex;
              div {
                width: 0%;
                word-break: break-all;
                height: 1.2em;
                overflow: hidden;
                &::before {
                  content: " ";
                  display: inline-block;
                }
              }
              &.type-ani div {
                -webkit-animation: t 2s linear forwards;
                animation: t 2s linear forwards;
              }
            }
            .search-num {
              width: 110px;
              font-size: 20px;
              background-color: #ffcc7a;
              border-radius: 20px;
              display: flex;
              align-items: center;
              justify-content: center;
              padding: 2px 22px;
            }
          }
        }
      }
    }
  }
}

@-webkit-keyframes t {
  90%,
  100% {
    width: 100%;
  }
}

@keyframes t {
  90%,
  100% {
    width: 100%;
  }
}

.paint-buckets {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 18px;
  img {
    height: 225px;
  }
  > :first-child {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0;
  }
  > :last-child {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0;
  }
}

.paint-map {
  width: 100%;
  height: 387px;
  padding: 0;
  background: right center / cover url("../img/paint-map.svg"), #fff;
  position: relative;
  @media screen and (min-width: 600px) {
    height: 500px;
  }
  @media screen and (min-width: 800px) {
    height: 700px;
  }
  .paint-map-fill {
    position: absolute;
    width: 100%;
    height: 100%;
    background: right center / cover url("../img/paint-map-fill.svg");
    opacity: 0;
  }
}

.taught {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px;
  img {
    width: 100%;
    max-width: 350px;
    opacity: 0;
  }
}

.bucket-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
  .bucket-box {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    justify-content: center;
    opacity: 0;
    > img {
      width: 74px;
    }
    .bucket-row {
      border-radius: 30px;
      border: 1px solid #d5d5d5;
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 6px;
      padding-right: 16px;
      .bucket-rank {
        width: 30px;
        height: 30px;
        background-color: #e5ff66;
        border-radius: 50%;
        font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
          segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
          "Segoe UI Emoji", Segoe UI Symbol;
        font-weight: 700;
        font-size: 24px;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      b {
        font-size: 18px;
      }
    }
  }
}

.barbados {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  > img {
    width: 100%;
    max-width: 260px;
  }
  .onecoat {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
    gap: 10px;
    > div {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 10px;
      opacity: 0;
      > :first-child {
        font-size: 18px;
        line-height: 1;
      }
    }
    > :nth-child(1) img {
      width: 100px;
    }
    > :nth-child(2) img {
      width: 86px;
    }
    > :nth-child(3) img {
      width: 73px;
    }
  }
  .popular-colours {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    > div {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 10px;
      opacity: 0;
      .circle {
        width: 80px;
        height: 80px;
        border-radius: 50%;
        border: 1px solid #004547;
      }
    }
    > :nth-child(1) .circle {
      background-color: #efeae4;
    }
    > :nth-child(2) .circle {
      background-color: #8e895f;
    }
    > :nth-child(3) .circle {
      background-color: #494e52;
    }
  }
}

.failed {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  .failed-split {
    width: 100%;
    max-width: 274px;
    position: relative;
    > :nth-child(1) {
      position: relative;
      z-index: 3;
    }
    > :nth-child(2) {
      position: absolute;
      left: 0;
      z-index: 2;
      opacity: 0;
    }
  }
}

.failed-table {
  display: grid;
  gap: 5px;
  overflow-y: scroll;
  padding-right: 10px;
  height: 147px;
  line-height: 1;
  @media screen and (min-width: 468px) {
    grid-template-columns: 1fr 1fr;
  }
  &::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
  }
  &::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #e4e4e4;
  }
  .failed-row {
    border-radius: 30px;
    border: 1px solid #fff;
    color: #004547;
    display: flex;
    flex: 1;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 10px 15px;
    text-align: left;
    > div {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 5px;
    }
  }
  > :nth-child(1) {
    background-color: #ffcc7a;
  }
  > :nth-child(2) {
    background-color: #ffd694;
  }
  > :nth-child(3) {
    background-color: #ffdca3;
  }
  > :nth-child(4) {
    background-color: #ffdea9;
  }
  > :nth-child(5) {
    background-color: #ffdfad;
  }
  > :nth-child(6) {
    background-color: #ffe2b2;
  }
  > :nth-child(7) {
    background-color: #ffe2b2;
  }
  > :nth-child(8) {
    background-color: #ffe2b3;
  }
  > :nth-child(9) {
    background-color: #ffefd4;
  }
  > :nth-child(10) {
    background-color: #fff2db;
  }
  > :nth-child(11) {
    background-color: #fff4e1;
  }
  > :nth-child(12) {
    background-color: #fff5e4;
  }
}

.rabbit {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  > b {
    font-size: 18px;
    text-align: center;
  }
  .rabbit-intro {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    > div {
      display: flex;
      gap: 4px;
    }
    > b {
      font-size: 18px;
      text-align: center;
    }
  }
  .rabbit-stats {
    display: flex;
    flex-direction: column;
    gap: 10px;
    .rabbit-row {
      width: 100%;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      align-items: center;
      justify-content: flex-end;
      background-color: #ffcc7a;
      color: #004547;
      border-radius: 20px;
      padding: 7px 10px;
      > div {
        display: flex;
        align-items: center;
        gap: 4px;
      }
      > :nth-child(2) {
        /* width: 200px; */
      }
      > :nth-child(3) {
        /* width: 100px; */
      }
    }
  }
}

.jump-to {
  background-color: #fff;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  -webkit-filter: drop-shadow(0px 2px 8px rgba(0, 0, 0, 0.1));
  filter: drop-shadow(0px 2px 8px rgba(0, 0, 0, 0.1));
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  z-index: 99999999999;
  &.hide:not(.jump-to-open) {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  &.jump-to-open {
    /* position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    top: 0; */
    #jump-top {
      .jump-btn {
        #menu-open {
          display: none;
        }
        #menu-close {
          display: block;
        }
      }
    }
    #jump-bot {
      -webkit-transform: translateY(0);
      transform: translateY(0);
    }
  }
  .container {
    padding-top: 26px;
    padding-bottom: 26px;
  }

  #jump-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    .jump-links {
      display: none;
    }
    a {
      display: flex;
    }
    .jump-btn {
      cursor: pointer;
      #menu-close {
        display: none;
      }
    }
  }
  #jump-bot {
    position: absolute;
    width: 100%;
    top: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
    align-items: center;
    text-align: center;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    height: calc(100vh - 74px);
    box-sizing: border-box;
    background-color: #fff;
  }
  .jump-options {
    display: flex;
    flex-direction: column;
    gap: 40px;
    justify-content: center;
    align-items: center;
    a {
      text-transform: uppercase;
      text-decoration: none;
      width: 100%;
      height: 48px;
      border-radius: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: normal;
      padding: 0 30px;
    }
    > :nth-child(1) {
      background-color: #e5ff66;
    }
    > :nth-child(2) {
      background-color: #adb5ff;
    }
    > :nth-child(3) {
      background-color: #6edeff;
    }
    > :nth-child(4) {
      background-color: #e5b2eb;
    }
    > :nth-child(5) {
      background-color: #ffcc7a;
    }
  }
}

@-webkit-keyframes tear-right {
  0% {
    -webkit-transform: rotate(0deg) translateX(0);
    transform: rotate(0deg) translateX(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-70deg) translateX(-500px);
    transform: rotate(-70deg) translateX(-500px);
  }
}

@keyframes tear-right {
  0% {
    -webkit-transform: rotate(0deg) translateX(0);
    transform: rotate(0deg) translateX(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-70deg) translateX(-500px);
    transform: rotate(-70deg) translateX(-500px);
  }
}

.card-blocks {
  background-color: #adb5ff;
  margin: 0 8px;
  position: relative;
  border-radius: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 60px 10px 24px 10px;
  margin-top: 30px;
  position: relative;
  /* transform: translateX(120%); */
  .rings {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -30%);
    transform: translate(-50%, -30%);
    padding: 0 10px;
    max-width: 100%;
    width: 100%;
    max-width: 538px;
    @media screen and (min-width: 1000px) {
      padding-left: 15px;
      padding-right: 60px;
    }
  }
  .card-fall {
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 2;
    -webkit-perspective: 1000px;
    perspective: 1000px; /* Enables 3D effect */

    /* .card-fall-cont {
      height: auto;
      overflow: hidden;
      padding: 20px;
      background: #adb5ff;
      box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05);

      &:before,
      &:after {
        content: "";
        height: 2px;
        position: absolute;
        left: 0;
        right: 0;
        clip-path: polygon(
          0% 0%,
          5% 100%,
          10% 0%,
          15% 100%,
          20% 0%,
          25% 100%,
          30% 0%,
          35% 100%,
          40% 0%,
          45% 100%,
          50% 0%,
          55% 100%,
          60% 0%,
          65% 100%,
          70% 0%,
          75% 100%,
          80% 0%,
          85% 100%,
          90% 0%,
          95% 100%,
          100% 0%
        );
      }
      &:before {
        background-color: #000;
        top: 0;
      }
    } */
    .card-fall-inner {
      background-color: #fff;
      margin: 0 35px;
      margin-top: 60px;
      padding: 90px 20px;
    }
    h4 {
      font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
        segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
        "Segoe UI Emoji", Segoe UI Symbol;
      font-weight: 700;
      color: #004547;
      text-transform: uppercase;
      line-height: 0.8;
      letter-spacing: -0.01em;
      font-size: 60px;
      @media screen and (min-width: 700px) {
        font-size: 80px;
      }

      @media screen and (min-width: 1100px) {
        font-size: 90px;
      }
    }
  }

  .card-fall {
    position: absolute;
    width: 100%;
    height: 100%;
    padding-top: 40px;
    .torn-strip {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 43px;
      background: #adb5ff;
      z-index: 2;
      /* transform: rotate(180deg); */
      border-bottom: 1px dashed #ccc;
      /* https://smoothshadows.com/#djEsMSw1LDAuMDgsMjQsLTQzLDAsIzAzMDcxMiwjZjNmNGY2LCNmZmZmZmYsMg%3D%3D */
      /* https://smoothshadows.com/#djEsMSw1LDAuMDgsMjQsNDEsMCwjMDMwNzEyLCNmM2Y0ZjYsI2ZmZmZmZiwy */
      box-shadow: 0px 2px 1px rgba(3, 7, 18, 0.02),
        0px 7px 4px rgba(3, 7, 18, 0.03), 0px 15px 9px rgba(3, 7, 18, 0.05),
        0px 26px 15px rgba(3, 7, 18, 0.06), 0px 41px 24px rgba(3, 7, 18, 0.08);
    }

    .card-fall-cont {
      position: absolute;
      top: 43px;
      left: 0;
      width: 100%;
      height: calc(100% - 43px);
      font-size: 48px;
      font-weight: bold;
      color: #333;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 1;
      border-radius: 0 0 10px 10px;
      overflow: hidden;
      -webkit-filter: drop-shadow(1px 1px 5px #000);
      filter: drop-shadow(1px 1px 5px #000);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;

      /* backface-visibility: hidden; */
      -webkit-transform-origin: right;
      transform-origin: right;
      -webkit-transform-style: preserve-3d;
      transform-style: preserve-3d;
      -webkit-backface-visibility: visible;
      backface-visibility: visible;
      -webkit-perspective: 1000;
      perspective: 1000;
      &.fall-ani {
        -webkit-animation: tear-right 1.5s 1s ease-in-out forwards;
        animation: tear-right 1.5s 1s ease-in-out forwards;
      }
      /* &:after {
        content: "";
        right: 0px;
        bottom: 0px;
        position: absolute;
        z-index: -1;
        top: 0px;
        left: 0px;
        background: #adb5ff;
        transform-style: preserve-3d;
      } */
      .card-fall-shadow {
        width: 100%;
        height: 100%;
        background: #adb5ff;
        border-top: 1px dashed #ccc;
        /* clip-path: polygon(
          0% 10px,
          10% 0,
          20% 10px,
          30% 0,
          40% 10px,
          50% 0,
          60% 10px,
          70% 0,
          80% 10px,
          90% 0,
          100% 10px,
          100% 100%,
          0% 100%
        ); */
      }
    }
  }
  .card-block {
    color: #004547;
    background-color: #fff;
    border-radius: 10px;
    padding: 10px 10px 18px 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    .block-rank {
      width: 27px;
      height: 27px;
      background-color: #adb5ff;
      border-radius: 50%;
      font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
        segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
        "Segoe UI Emoji", Segoe UI Symbol;
      font-weight: 700;
      font-size: 22px;
      line-height: normal;
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .block-label {
      line-height: normal;
    }
    .block-perc {
      font-size: 26px;
      background-color: #adb5ff;
      width: 75px;
      height: 36px;
      border-radius: 10px;
      line-height: normal;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }
}

#prof {
  h2 {
    font-size: min(19vw, 100px);
  }
}

#year {
  .card {
    > :first-child {
      margin-bottom: 20px;
    }
  }
}

#country {
  background-color: #004547;
  h3 {
    color: #e5b2eb;
  }
}

#partners {
  h2 {
    font-size: min(23vw, 100px);
  }
}

.jimmy {
  overflow: hidden;
  img {
    opacity: 0;
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
  }
}

.failed-map-m {
  opacity: 0;
}

.longest {
  position: relative;
  img {
    width: 100%;
  }
  .longest-m {
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    position: absolute;
    top: 0;
    left: 0;
    transition: all 3s cubic-bezier(0.075, 0.82, 0.165, 1);
  }
}
.longest-ani {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.longest .longest-m.longest-ani {
  /* animation: swoosh 2s linear forwards; */
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

/* @keyframes swoosh {
  0% {
    clip-path: polygon(0 100%, 0 0, 0 100%, 26% 100%, 50% 50%, 100% 100%);
  }
  5% {
    clip-path: polygon(0 100%, 0 0, 0 100%, 0 100%, 50% 50%, 100% 100%);
  }
  33% {
    clip-path: polygon(0 100%, 0 0, 0 100%, 0 0, 50% 50%, 100% 100%);
  }
  66% {
    clip-path: polygon(0 100%, 0 0, 10% 0, 100% 0, 50% 50%, 100% 100%);
  }
  100% {
    clip-path: polygon(0 100%, 0 0, 100% 0, 100% 0%, 100% 50%, 100% 100%);
  }
} */

@media screen and (max-width: 999px) {
  .dual-container {
    .inner-container {
      max-width: 1340px;
      box-sizing: content-box;
      margin-right: auto;
      margin-left: auto;
      padding-left: 24px;
      padding-right: 24px;
      padding-top: 50px;
      padding-bottom: 50px;
      > :first-child {
        margin-top: 0;
      }
      > :last-child {
        margin-bottom: 0;
      }
    }
  }
}

.desktop {
  display: none;
}

section {
  .rows {
    .row {
      .bot {
        > span {
          opacity: 0;
          &.text-ani {
            -webkit-animation: aniText 0.5s 0.9s cubic-bezier(0.17, 0.55, 0.55, 1)
              forwards;
            animation: aniText 0.5s 0.9s cubic-bezier(0.17, 0.55, 0.55, 1)
              forwards;
          }
        }
        .fill {
          background-color: initial;
          position: relative;
          padding: 0;
          justify-content: flex-start;
          &.text-ani div span {
            -webkit-animation: aniText 0.5s 0.9s cubic-bezier(0.17, 0.55, 0.55, 1)
              forwards;
            animation: aniText 0.5s 0.9s cubic-bezier(0.17, 0.55, 0.55, 1)
              forwards;
          }
          div {
            width: 0;
            height: 100%;
            display: flex;
            border-radius: 8px;
            height: 30px;
            display: flex;
            align-items: center;
            span {
              position: absolute;
              right: 0;
              padding: 0 8px;
              opacity: 0;
            }
          }
          /* &:before {
            content: "";
            position: absolute;
            width: 72.14px;
            height: 58.13px;
            top: 50%;
            left: 0;
            transform: translate(-100%, -50%);
            background: center center / contain
              url("../img/roller-teal.svg") no-repeat;
          } */
          &.roller-ani::before {
            -webkit-animation: aniRoller 0.9s cubic-bezier(0.17, 0.55, 0.55, 1) forwards;
            animation: aniRoller 0.9s cubic-bezier(0.17, 0.55, 0.55, 1) forwards;
          }
        }
      }
    }
  }
}

@-webkit-keyframes aniText {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 100%;
  }
}

@keyframes aniText {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 100%;
  }
}

@-webkit-keyframes aniRoller {
  0% {
    left: 0;
  }
  100% {
    left: 100%;
  }
}

@keyframes aniRoller {
  0% {
    left: 0;
  }
  100% {
    left: 100%;
  }
}

@media screen and (min-width: 1000px) {
  .jump-to {
    /* position: initial; */
    /* filter: none; */
    &.hide:not(.jump-to-open) {
      -webkit-transform: none;
      transform: none;
    }
    &.jump-to-open {
      -webkit-transform: none;
      transform: none;
      #jump-top {
        .jump-btn {
          #menu-open {
            display: none;
          }
          #menu-close {
            display: block;
          }
        }
      }
      #jump-bot {
        display: none;
      }
    }
    .container {
      padding-top: 10px;
      padding-bottom: 10px;
    }

    #jump-top {
      justify-content: space-between;
      > a {
        /* display: none; */
      }
      .jump-btn {
        display: none;
      }
      .jump-links {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        .jump-label {
          display: none;
          white-space: nowrap;
          width: -webkit-fit-content;
          width: -moz-fit-content;
          width: fit-content;
        }
        .jump-options {
          display: flex;
          flex-direction: row;
          flex-wrap: wrap;
          gap: 10px;
          text-align: center;
          width: -webkit-fit-content;
          width: -moz-fit-content;
          width: fit-content;
          a {
            width: -webkit-fit-content;
            width: -moz-fit-content;
            width: fit-content;
            font-size: 14px;
            max-width: 140px;
            line-height: 1.15;
            padding: 0 10px;
          }
          > :last-child {
            max-width: 200px;
          }
        }
      }
    }
    #jump-bot {
      display: none;
    }
  }

  .arrow-link {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 48px;
    height: 48px;
    &:after {
      content: "";
      position: absolute;
      right: 0;
      bottom: 0;
      width: 48px;
      height: 48px;
      background-color: #ebebeb;
      border-radius: 50%;
      background-image: url("../img/arrow-teal.svg");
      background-repeat: repeat-y;
      background-position: center center;
      background-size: 40 40px;
      transition: background-color, background-position 0.3s ease;
    }
    &:hover::after {
      background-color: #e5ff66;
      background-position-y: 580%;
    }

    &.arrow-teal {
      &::after {
        background-color: #004547;
        background-image: url("../img/arrow-white.svg");
      }
      &:hover::after {
        background-color: #adb5ff;
        background-image: url("../img/arrow-teal.svg");
      }
    }
    &.arrow-lime {
      &::after {
        background-color: #004547;
        background-image: url("../img/arrow-white.svg");
      }
      &:hover::after {
        background-color: #e5ff66;
        background-image: url("../img/arrow-teal.svg");
      }
    }
    &.arrow-violet {
      &:hover::after {
        background-color: #adb5ff;
      }
    }
    &.arrow-blue {
      &:hover::after {
        background-color: #6edeff;
      }
    }
    &.arrow-dark-blue {
      &::after {
        background-color: #004547;
        background-image: url("../img/arrow-white.svg");
      }
      &:hover::after {
        background-color: #6edeff;
        background-image: url("../img/arrow-teal.svg");
      }
    }
    &.arrow-orange {
      &:hover::after {
        background-color: #ffcc7a;
      }
    }
    &.arrow-dark-orange {
      &::after {
        background-color: #004547;
        background-image: url("../img/arrow-white.svg");
      }
      &:hover::after {
        background-color: #ffcc7a;
        background-image: url("../img/arrow-teal.svg");
      }
    }
    &.arrow-pink {
      &:hover::after {
        background-color: #e5b2eb;
      }
    }
    &.arrow-dark-pink {
      &::after {
        background-color: #004547;
        background-image: url("../img/arrow-white.svg");
      }
      &:hover::after {
        background-color: #e5b2eb;
        background-image: url("../img/arrow-teal.svg");
      }
    }
    &.arrow-white {
      &::after {
        background-color: #004547;
        background-image: url("../img/arrow-white.svg");
      }
      &:hover::after {
        background-color: #ebebeb;
        background-image: url("../img/arrow-teal.svg");
      }
    }
  }

  .dual-container {
    max-width: 1340px;
    box-sizing: content-box;
    margin-right: auto;
    margin-left: auto;
    padding-left: 50px;
    padding-right: 50px;
    padding-top: 50px;
    padding-bottom: 50px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    .dual-left {
      padding-right: 70px;
      position: relative;
      padding-bottom: 60px;
      .arrow-link {
        left: 39%;
      }
    }
    .dual-right {
      padding-left: 70px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }
  .mobile {
    display: none;
  }

  .desktop {
    display: block;
  }

  .container {
    position: relative;
  }

  h1 {
    line-height: 0.8;
    letter-spacing: -0.01em;
    font-size: 150px;
    margin-bottom: 50px;
  }

  h2 {
    text-transform: uppercase;
    line-height: 0.8;
    letter-spacing: -0.01em;
    font-size: 120px;
    margin-bottom: 30px;
    .text-smaller {
      font-size: 50px;
    }
  }

  h3 {
    font-size: 90px;
  }

  p {
    margin: 1em 0;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: -0.01em;
  }

  b {
    font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
      helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
      Segoe UI Symbol;
  }

  .card {
    padding: 50px 30px;
    margin: 0;
    border-radius: 60px;
    background: #fff;
    color: #004547;

    h3 {
      text-align: center;
      margin-bottom: 15px;
    }
    &.lessPadding {
      padding-top: 10px;
    }
    &.lime {
      background-color: #e5ff66;
    }
    &.teal {
      background-color: #004547;
      color: #fff;
      .row {
        .top .name {
          color: #fff;
        }
        .top .rank,
        .bot .fill div {
          background-color: #adb5ff;
          color: #004547;
        }
        .bot {
          color: #adb5ff;
        }
      }
      &.jimmy {
        padding: 5px;
        padding-top: 25px;
        padding-bottom: 0;
      }
    }
    &.blue {
      .row {
        .top .name {
          color: #fff;
        }
        .top .rank,
        .bot .fill div {
          background-color: #6edeff;
          color: #004547;
        }
        .bot {
          color: #6edeff;
        }
      }
    }
    &.rows {
      display: flex;
      flex-direction: column;
      gap: 15px;
      width: 100%;
    }
    .rows {
      display: flex;
      flex-direction: column;
      gap: 15px;
      width: 100%;
    }
    &.rows-orange .row,
    .rows-orange .row {
      .top .rank,
      .bot .fill div {
        background-color: #ffcc7a;
        color: #004547;
      }
    }
    &.rows-pink .row,
    .rows-pink .row {
      .top .rank,
      .bot .fill div {
        background-color: #e5b2eb;
        color: #004547;
      }
    }
    .rows.one-row .row {
      display: flex;
      align-items: center;
      gap: 8px;
      .top {
        width: 170px;
        gap: 8px;
        line-height: 1.1;
        margin: 0;
        align-items: center;
        .rank {
          background-color: initial;
          color: #fff;
          font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
            helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
            Segoe UI Symbol;
        }
      }
      .bot {
        flex: 1;
      }
    }
    .row {
      .top {
        .rank {
          width: 30px;
          min-width: 30px;
          height: 30px;
          font-size: 24px;
        }
      }
      .bot {
        display: flex;
        gap: 5;
        align-items: center;
        font-family: Gotham-black, -apple-system, blinkmacsystemfont, segoe ui,
          helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
          Segoe UI Symbol;
        font-size: 18px;
        .fill div {
          background-color: #004547;
          border-radius: 8px;
          color: #fff;
          display: flex;
          align-items: center;
          justify-content: flex-end;
          height: 30px;
          padding: 0 8px;
        }
      }
    }
  }

  #intro {
    .container {
      padding-bottom: 60px;
      margin-bottom: 40px;
      h1 {
        grid-column: span 2;
        margin: 0;
      }
      img {
        order: 2;
      }
    }
  }

  #diy {
    background: #004547;
    background: linear-gradient(
      90deg,
      rgba(0, 69, 71, 1) 0%,
      rgba(0, 69, 71, 1) 50%,
      rgba(229, 255, 102, 1) 50%,
      rgba(229, 255, 102, 1) 100%
    );
    h2 {
      color: #e5ff66;
    }
    .outer-container {
      display: grid;
      grid-template-columns: 1fr 1fr;
      > :last-child {
        .parallax-image-wrapper {
          width: 555px;
          height: 543px;
          -webkit-mask-size: 100%;
          mask-size: 100%;
          .parallax-image {
            width: 100%;
            height: 200%;
          }
        }
      }
    }
  }

  #delay {
    .container {
      display: grid;
      grid-template-columns: 0.85fr 1.15fr;
      gap: 60px;
      align-items: flex-start;
      .card {
        padding-top: 130px;
        padding-bottom: 130px;
      }
      .card img {
        width: 100%;
      }
    }
  }

  .container {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 60px;
  }

  #avoided,
  #trades {
    .container {
      .card {
        margin-top: 0;
        padding: 40px;
        .row {
          display: grid;
          grid-template-columns: 210px 50px 1fr;
          gap: 12px;
          align-items: center;
          .top {
            align-items: center;
          }
          .fill div {
            height: 50px;
          }
        }
      }
    }
  }

  .inner-container {
    background-color: initial;
  }

  .container-text {
    position: relative;
    padding-bottom: 60px;
  }

  #decking {
    background: rgba(173, 181, 255, 1);
    .container {
      .container-text {
        display: grid;
        grid-template-columns: 205px 1fr;
        align-content: flex-start;
        align-items: flex-start;
        -webkit-column-gap: 30px;
        -moz-column-gap: 30px;
        column-gap: 30px;
        h3 {
          grid-column: span 2;
        }
      }
      > .card {
        padding: 27px 66px;
      }
      .scrollable {
        height: 750px;
        /* display: grid;
        grid-template-columns: 1fr 210px;
        gap: 30px;
        padding-right: 10px;
        > * {
          grid-column: span 2;
          order: 3;
        }
        .parallax-image-wrapper {
          order: 2;
          grid-column: 2;
        }
        .side-text {
          order: 1;
          grid-column: 1;
        } */
      }
    }
  }

  #year {
    .card {
      padding: 27px 30px;
      .big-row {
        display: grid;
        grid-template-columns: 140px 1fr;
        gap: 30px;
        .outdoor-painting,
        .indoor-painting {
          height: 100%;
          border-radius: 40px;
          position: relative;
          margin-bottom: 0;
          h4 {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 500px;
            -webkit-transform: translate(-50%, -50%) rotate(-90deg);
            transform: translate(-50%, -50%) rotate(-90deg);
            font-size: 48px;
            font-family: roc-grotesk-compressed, -apple-system,
              blinkmacsystemfont, segoe ui, helvetica, arial, sans-serif,
              "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol;
            font-weight: 700;
            text-align: center;
            letter-spacing: -0.01em;
          }
        }

        .indoor-painting {
          background: center center / cover url("../img/indoor-painting-d.jpg")
            no-repeat;
        }
        .outdoor-painting {
          margin-top: 0px;
          background: center center / cover url("../img/outdoor-painting-d.jpg")
            no-repeat;
        }
      }
      .rows {
        .bot {
          color: #e5b2eb;
          .fill {
            height: 30px;
          }
        }
      }
    }
  }

  #gardens {
    background: #004547;
    background: linear-gradient(
      90deg,
      rgba(0, 69, 71, 1) 0%,
      rgba(0, 69, 71, 1) 50%,
      rgba(173, 181, 255, 1) 50%,
      rgba(173, 181, 255, 1) 100%
    );
    h2 {
      color: #adb5ff;
    }
    .parallax-image-wrapper {
      -webkit-mask: url("../img/bucket-gardens.svg");
      mask: url("../img/bucket-gardens.svg");
      aspect-ratio: 1 / 1.08108108108;
      width: 100%;
      -webkit-mask-size: cover;
      mask-size: cover;
      height: auto;
      .parallax-image {
        width: 100%;
        height: auto;
        bottom: -200px;
      }
    }
  }

  #partners {
    .parallax-image-wrapper {
      -webkit-mask: url("../img/bucket-companions.svg");
      mask: url("../img/bucket-companions.svg");
      aspect-ratio: 1 / 1.06846846847;
      width: 100%;
      -webkit-mask-size: cover;
      mask-size: cover;
      height: auto;
      .parallax-image {
        width: 190%;
        max-width: 190%;
        height: auto;
        bottom: -120px;
        left: -30%;
      }
    }
  }

  #diy {
    .parallax-image-wrapper {
      -webkit-mask: url("../img/bucket-diy.svg");
      mask: url("../img/bucket-diy.svg");
      aspect-ratio: 1 / 0.9783783784;
      width: 100%;
      max-width: 555px;
      -webkit-mask-size: cover;
      mask-size: cover;
      height: auto;
      .parallax-image {
        width: 180%;
        max-width: 180%;
        height: auto;
        bottom: -100px;
      }
    }
  }

  #lick {
    .parallax-image-wrapper {
      -webkit-mask: url("../img/bucket-lick.svg");
      mask: url("../img/bucket-lick.svg");
      aspect-ratio: 1 / 0.8900900901;
      width: 100%;
      max-width: 555px;
      -webkit-mask-size: cover;
      mask-size: cover;
      height: auto;
      .parallax-image {
        width: 100%;
        max-width: 100%;
        height: auto;
        bottom: -180px;
      }
    }
  }

  #prof {
    .parallax-image-wrapper {
      -webkit-mask: url("../img/bucket-gardens.svg");
      mask: url("../img/bucket-gardens.svg");
      aspect-ratio: 1 / 1.08108108108;
      width: 100%;
      max-width: 555px;
      -webkit-mask-size: cover;
      mask-size: cover;
      height: auto;
      .parallax-image {
        width: 100%;
        max-width: 100%;
        height: auto;
        bottom: -180px;
      }
    }
  }

  #conclusion {
    .parallax-image-wrapper {
      -webkit-mask: url("../img/bucket-diy.svg");
      mask: url("../img/bucket-diy.svg");
      aspect-ratio: 1 / 0.9783783784;
      width: 100%;
      max-width: 555px;
      -webkit-mask-size: cover;
      mask-size: cover;
      height: auto;
      .parallax-image {
        width: 100%;
        max-width: 100%;
        height: auto;
        bottom: -180px;
      }
    }
  }

  #couples {
    .container {
      .rows {
        /* position: relative; */
        /* .line {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          left: 242px;
          width: 1px;
          height: 100%;
          background-color: #6edeff;
        } */
        gap: 0;
        .row {
          display: grid;
          grid-template-columns: 210px 1fr;
          line-height: normal;
          align-items: center;
          gap: 12px;
          .top {
            align-items: center;
            margin: 0;
            border-right: 1px solid #6edeff;
            height: 100%;
            gap: 12px;
            padding-right: 12px;
          }
          .bot {
            padding: 7px 0;
            .fill div {
              height: 50px;
            }
          }
        }
      }
    }
  }

  #conclusion {
    background: #004547;
    background: linear-gradient(
      90deg,
      rgba(0, 69, 71, 1) 0%,
      rgba(0, 69, 71, 1) 50%,
      rgba(229, 255, 102, 1) 50%,
      rgba(229, 255, 102, 1) 100%
    );
    h2 {
      color: #e5ff66;
      font-size: 110px;
    }
    .inner-container.white {
      background-color: #fff;
      padding: 50px 36px;
      border-radius: 60px;
      margin-top: 60px;
    }
  }

  .scrollable {
    height: 344px;
    overflow-y: scroll;
    &::-webkit-scrollbar {
      -webkit-appearance: none;
      width: 7px;
      background-color: rgba(255, 255, 255, 0.2);
      border-radius: 10px;
    }
    &::-webkit-scrollbar-thumb {
      border-radius: 10px;
      background-color: #e4e4e4;
    }
    h3 {
      margin-top: 30px;
    }
    > :first-child {
      margin-top: 0;
    }
  }

  #fence {
    background-color: #004547;
    .container {
      h3 {
        color: #adb5ff;
      }
      .card {
        padding: 27px 58px;
        padding-bottom: 82px;
      }
    }
    .fence-container {
      display: flex;
      align-items: flex-start;
      margin-bottom: 16px;
      > :nth-child(1) {
        width: 24.2%;
      }
      > :nth-child(2) {
        width: 41.6%;
      }
      > :nth-child(3) {
        width: 28.4%;
      }
      > :nth-child(4) {
        width: 5.37%;
      }
      .fence {
        opacity: 0;
        -webkit-clip-path: inset(0 100% 0 0);
        clip-path: inset(0 100% 0 0);
      }
    }
    .key {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      line-height: normal;
      .row:not(:last-child) {
        margin-bottom: 0;
      }
      > :nth-child(1) {
        max-width: 215px;
      }
      > :nth-child(2) {
        max-width: 310px;
      }
      > :nth-child(3) {
        max-width: 370px;
      }
      > :nth-child(4) {
        max-width: 240px;
      }
    }
  }

  #map {
    .card {
      grid-template-columns: 1fr 1fr;
      align-items: center;
      padding: 82px 17px;
      gap: 5px;
      img {
        grid-column: span 1;
        order: 2;
        display: none;
      }
      .map-red {
        order: 3;
      }
    }
  }

  #mine {
    background-color: #adb5ff;
    .container {
      .card {
        padding: 42px 60px;
        .big-row {
          display: grid;
          grid-template-columns: 100px 1fr;
          gap: 10px;
        }
        .rows {
          gap: 10px;
        }
        .top {
          margin: 0;
        }
        .row {
          .bot {
            .fill div {
              background-color: #adb5ff;
              color: #004547;
              height: 30px;
            }
          }
        }
      }
    }
  }

  #paint {
    background-color: #004547;
    h3 {
      color: #adb5ff;
    }
    .paint-map {
      height: 700px;
      background: url("../img/paint-map.svg") 100% / cover no-repeat, #fff;
    }
    .paint-buckets img {
      max-height: 200px;
    }
  }

  #maintenance {
    background-color: #adb5ff;
    .scrollable {
      height: 700px;
      padding-right: 10px;
      h4 {
        text-align: left;
      }
    }
  }

  #partners {
    .blue {
      background-color: initial;
      h2 {
        color: #6edeff;
      }
    }
    background: linear-gradient(
      90deg,
      #004547 0%,
      #004547 50%,
      #6edeff 50%,
      #6edeff 100%
    );
  }

  #lick {
    .pink {
      background-color: initial;
      h2 {
        color: #e5b2eb;
      }
    }
    background: linear-gradient(
      90deg,
      #004547 0%,
      #004547 50%,
      #e5b2eb 50%,
      #e5b2eb 100%
    );
  }
  #prof {
    h2 {
      font-size: 90px;
    }
    .orange {
      background-color: initial;
      h2 {
        color: #ffcc7a;
      }
    }
    background: linear-gradient(
      90deg,
      #004547 0%,
      #004547 50%,
      #ffcc7a 50%,
      #ffcc7a 100%
    );
  }

  #mistakes {
    .container {
      .card {
        display: grid;
        grid-template-columns: 274px 1fr;
        padding: 40px 40px 71px 40px;
        b,
        .failed-map-m {
          grid-column: span 2;
        }
        .failed-table {
          display: none;
        }
        .rows {
          background-color: initial;
          gap: 10px;
          .row {
            .top {
              margin-bottom: 0;
            }
            .bot {
              .fill {
                height: 30px;
                min-width: 60px;
              }
            }
          }
        }
      }
    }
  }

  #queries {
    background-color: #ffcc7a;
    .container {
      align-items: flex-start;
    }
  }

  .list {
    display: flex;
    flex-direction: column;
    gap: 15px;
    .list-item {
      display: flex;
      flex-direction: column;
      gap: 5px;
      .list-heading {
        display: flex;
        align-items: center;
        gap: 5px;
        .list-num {
          width: 22px;
          height: 22px;
          display: flex;
          justify-content: center;
          align-items: center;
          border-radius: 50%;
          background-color: #e5ff66;
          font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
            segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
            "Segoe UI Emoji", Segoe UI Symbol;
          font-weight: 700;
          font-size: 18px;
        }
      }
      .list-text {
        line-height: 1.6;
      }
    }
  }

  .card {
    .indoor-painting,
    .outdoor-painting {
      height: 120px;
      border-radius: 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
        segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
        "Segoe UI Emoji", Segoe UI Symbol;
      font-weight: 700;
      color: #e5b2eb;
      text-transform: uppercase;
      line-height: 0.8;
      letter-spacing: -0.01em;
      font-size: 20px;
    }
    .indoor-painting {
      background: center center / cover url("../img/indoor-painting-m.jpg")
        no-repeat;
    }
    .outdoor-painting {
      margin-top: 5px;
      background: center center / cover url("../img/outdoor-painting-m.jpg")
        no-repeat;
    }
  }

  .table {
    overflow-x: scroll;
    padding-bottom: 10px;
    &::-webkit-scrollbar {
      -webkit-appearance: none;
      height: 7px;
      background-color: rgba(228, 228, 228, 0.2);
      border-radius: 10px;
    }
    &::-webkit-scrollbar-thumb {
      border-radius: 10px;
      background-color: #e4e4e4;
    }
    table {
      /* overflow-x: auto; */
      min-width: 690px;
      tr {
        line-height: normal;
        > :first-child {
          max-width: 170px;
        }
        > :nth-child(2) {
          max-width: 100px;
        }
      }
      tbody tr > :nth-child(3) .bar {
        gap: 10px;
      }
    }
  }

  .paint-map {
    width: 100%;
    height: 387px;
    padding: 0;
    background: right center / cover url("../img/paint-map.svg"), #fff;
  }

  .taught {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 70px;
    img {
      width: 100%;
      max-width: 100%;
      opacity: 0;
    }
    .taught0,
    .taught1 {
      position: relative;
      img {
        position: absolute;
        top: 0;
      }
      > :first-child {
        position: relative;
      }
    }
    .taught0 {
      max-width: 617px;
      margin-left: 20px;
    }
    .taught1 {
      max-width: 657px;
    }
  }

  .bucket-list {
    justify-content: space-around;
    gap: 20px;
    .bucket-box {
      width: 200px;
      > img {
        width: auto;
        height: 100px;
      }
    }
  }

  #reddit {
    background-color: #6edeff;
  }

  .barbados {
    > img {
      max-width: 284px;
    }
    .onecoat {
      gap: 50px;
      > :nth-child(1) img {
        width: 151px;
      }
      > :nth-child(2) img {
        width: 130px;
      }
      > :nth-child(3) img {
        width: 111px;
      }
    }
    .popular-colours {
      width: 100%;
      justify-content: space-between;
      max-width: 465px;
    }
  }

  .failed {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
  }

  .failed-table {
    display: grid;
    gap: 5px;
    overflow-y: scroll;
    padding-right: 10px;
    height: 147px;
    line-height: 1;
    @media screen and (min-width: 468px) {
      grid-template-columns: 1fr 1fr;
    }
    &::-webkit-scrollbar {
      -webkit-appearance: none;
      width: 7px;
      background-color: rgba(255, 255, 255, 0.2);
      border-radius: 10px;
    }
    &::-webkit-scrollbar-thumb {
      border-radius: 10px;
      background-color: #e4e4e4;
    }
    .failed-row {
      border-radius: 30px;
      border: 1px solid #fff;
      color: #004547;
      display: flex;
      flex: 1;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      min-height: 44px;
      padding: 10px 15px;
      text-align: left;
      > div {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
      }
    }
    > :nth-child(1) {
      background-color: #ffcc7a;
    }
    > :nth-child(2) {
      background-color: #ffd694;
    }
    > :nth-child(3) {
      background-color: #ffdca3;
    }
    > :nth-child(4) {
      background-color: #ffdea9;
    }
    > :nth-child(5) {
      background-color: #ffdfad;
    }
    > :nth-child(6) {
      background-color: #ffe2b2;
    }
    > :nth-child(7) {
      background-color: #ffe2b2;
    }
    > :nth-child(8) {
      background-color: #ffe2b3;
    }
    > :nth-child(9) {
      background-color: #ffefd4;
    }
    > :nth-child(10) {
      background-color: #fff2db;
    }
    > :nth-child(11) {
      background-color: #fff4e1;
    }
    > :nth-child(12) {
      background-color: #fff5e4;
    }
  }

  .rabbit-intro.mobile {
    display: none;
  }
  #rabbit {
    .arrow-link {
      opacity: 1;
    }
    .rows {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      .row {
        opacity: 1;
        display: grid;
        grid-template-columns: 150px 1fr;
        .top {
          width: auto;
        }
        .rank {
          font-size: 16px;
        }
        .bot {
          .fill {
            height: 30px;
            div {
              width: 100%;
              span {
                opacity: 1;
              }
            }
          }
        }
      }
      > :nth-child(1) {
        order: 1;
      }
      > :nth-child(2) {
        order: 3;
      }
      > :nth-child(3) {
        order: 5;
      }
      > :nth-child(4) {
        order: 7;
      }
      > :nth-child(5) {
        order: 9;
      }
      > :nth-child(6) {
        order: 2;
      }
      > :nth-child(7) {
        order: 4;
      }
      > :nth-child(8) {
        order: 6;
      }
      > :nth-child(9) {
        order: 8;
      }
      > :nth-child(10) {
        order: 10;
      }
    }
  }

  .to-top {
    right: 20px;
    bottom: 20px;
    width: 60px;
    height: 60px;
    &:after {
      width: 60px;
      height: 60px;
    }
    &:hover::after {
      background-position-y: 290%;
    }
  }

  .card-blocks {
    background-color: #adb5ff;
    margin: 0 50px;
    position: relative;
    border-radius: 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 60px 10px 24px 10px;
    margin-top: 50px;
    .rings {
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translate(-50%, -30%);
      transform: translate(-50%, -30%);
      padding: 0 10px;
      max-width: 100%;
      width: 100%;
      max-width: 538px;
    }
    .card-block {
      color: #004547;
      background-color: #fff;
      border-radius: 10px;
      padding: 10px 10px 18px 10px;
      text-align: center;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      .block-rank {
        width: 27px;
        height: 27px;
        background-color: #adb5ff;
        border-radius: 50%;
        font-family: roc-grotesk-compressed, -apple-system, blinkmacsystemfont,
          segoe ui, helvetica, arial, sans-serif, "Apple Color Emoji",
          "Segoe UI Emoji", Segoe UI Symbol;
        font-weight: 700;
        font-size: 22px;
        line-height: normal;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      .block-perc {
        font-size: 26px;
        background-color: #adb5ff;
        width: 75px;
        height: 36px;
        border-radius: 10px;
        line-height: normal;
        display: flex;
        align-items: center;
        justify-content: center;
      }
    }
  }

  .jimmy {
    overflow: hidden;
    img {
      opacity: 0;
      -webkit-transform: translateX(100px);
      transform: translateX(100px);
    }
  }
}

@media screen and (min-width: 1100px) {
  .jump-to #jump-top .jump-links .jump-label {
    display: block;
  }
}

@media screen and (min-width: 1300px) {
  .card-blocks {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    padding: 100px 35px 50px 35px;
  }
  h2 {
    font-size: 200px;
  }
}

@media screen and (min-width: 1200px) {
  h2 {
    text-transform: uppercase;
    line-height: 0.8;
    letter-spacing: -0.01em;
    font-size: 160px;
    margin-bottom: 30px;
    .text-smaller {
      font-size: 62px;
    }
  }
  #decking {
    .container {
      .scrollable {
        display: grid;
        grid-template-columns: 1fr 210px;
        gap: 30px;
        padding-right: 10px;
        > * {
          grid-column: span 2;
          order: 3;
        }
        .parallax-image-wrapper {
          order: 2;
          grid-column: 2;
        }
        .side-text {
          order: 1;
          grid-column: 1;
        }
      }
    }
  }
  #map {
    .card {
      grid-template-columns: 1fr 2fr 1fr;
      > img {
        display: block;
      }
    }
  }
  #prof {
    h2 {
      font-size: 120px;
    }
  }
  #partners {
    h2 {
      font-size: 140px;
    }
  }
  #conclusion {
    h2 {
      font-size: 140px;
    }
  }
}

@media screen and (min-width: 1430px) {
  h1 {
    font-size: 200px;
  }
  #prof {
    h2 {
      font-size: 140px;
    }
  }
  #partners {
    h2 {
      font-size: 160px;
    }
  }
  #conclusion {
    h2 {
      font-size: 160px;
    }
  }
}
