body.finishing-pass .section {
  position: relative;
  border-top-color: transparent;
}
body.finishing-pass .section:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    #b294db45 24%,
    #a893ca25 65%,
    transparent
  );
  pointer-events: none;
}
.finishing-pass .section-label {
  display: flex;
  align-items: center;
  gap: 13px;
  color: #a995c1;
}
.finishing-pass .section-label:before {
  content: "";
  width: 21px;
  height: 1px;
  background: #b699df88;
}
.finishing-pass .section[data-section-number]:after {
  content: attr(data-section-number);
  position: absolute;
  right: 0;
  top: 30px;
  font:
    500 clamp(90px, 13vw, 165px)/1 "Space Grotesk",
    sans-serif;
  letter-spacing: -8px;
  color: #b29acb06;
  pointer-events: none;
  z-index: -1;
}
.finishing-pass .contact {
  display: block;
  padding: clamp(65px, 8vw, 110px) clamp(22px, 4vw, 60px);
  margin-top: 30px;
  margin-bottom: 35px;
  border-radius: 22px;
  border: 1px solid #b396da27;
  background:
    radial-gradient(ellipse at 85% 15%, #9263c719, transparent 65%),
    linear-gradient(140deg, #17122280, #0b0e1800);
  overflow: hidden;
}
.finishing-pass .contact:before {
  left: 8%;
  right: 8%;
}
.finishing-pass .contact:after {
  display: none;
}
.finishing-pass .contact h2 {
  max-width: 900px;
  font-size: clamp(43px, 6.2vw, 82px);
  line-height: 1.12;
  margin: 25px 0 32px;
  letter-spacing: -0.055em;
}
.finishing-pass .contact-details {
  display: flex;
  flex-wrap: wrap;
  gap: 13px 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #aa8ac122;
  margin-bottom: 30px;
}
.finishing-pass .contact-details a {
  font-size: clamp(12px, 1.35vw, 17px);
  color: #baa5d2;
  overflow-wrap: anywhere;
}
.finishing-pass .contact-bottom {
  align-items: center;
  gap: 22px;
}
.finishing-pass .contact-bottom p {
  max-width: 250px;
  line-height: 1.9;
  color: #938aab;
}
.finishing-pass .contact-bottom > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.finishing-pass .balanced-portrait {
  transform: perspective(900px) rotateX(var(--portrait-x, 0deg))
    rotateY(var(--portrait-y, 0deg));
  transition: transform 0.65s cubic-bezier(0.2, 0.7, 0.2, 1);
  transform-style: preserve-3d;
}
.finishing-pass .balanced-portrait > img {
  backface-visibility: hidden;
}
.finishing-pass .balanced-portrait .balanced-aura {
  transition: opacity 0.5s;
  opacity: 0.65;
}
.finishing-pass .balanced-portrait:hover .balanced-aura {
  opacity: 1;
}
.intro-portrait-transfer {
  position: fixed;
  z-index: 10000;
  border-radius: 50%;
  pointer-events: none;
  object-fit: cover;
  clip-path: circle(48%);
  filter: drop-shadow(0 0 22px #9c63d644);
}
@media (max-width: 1000px) {
  .finishing-pass .contact-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
  .finishing-pass .contact-bottom p {
    max-width: none;
  }
}
@media (max-width: 680px) {
  .finishing-pass .section[data-section-number]:after {
    font-size: 90px;
    top: 23px;
  }
  .finishing-pass .section-label {
    font-size: 8px;
    letter-spacing: 1.5px;
  }
  .finishing-pass .contact {
    padding: 42px 22px;
    border-radius: 15px;
    margin-top: 15px;
  }
  .finishing-pass .contact h2 {
    font-size: clamp(35px, 9.5vw, 49px);
    letter-spacing: -0.045em;
  }
  .finishing-pass .contact-details {
    flex-direction: column;
    gap: 14px;
  }
  .finishing-pass .contact-bottom > div {
    width: 100%;
  }
  .finishing-pass .contact-bottom .button {
    flex: 1 1 125px;
    justify-content: center;
    padding: 13px 15px;
  }
  .finishing-pass .balanced-portrait {
    transform: none;
  }
  .finishing-pass .focus-grid h3 {
    overflow-wrap: break-word;
  }
}
@media (prefers-reduced-motion: reduce) {
  .finishing-pass .balanced-portrait {
    transform: none;
    transition: none;
  }
}
