/* experience proof */
.experience-section {
  --experience-rail-offset: clamp(218px, 24svh, 270px);
  --section-space: clamp(96px, 8vw, 120px);
  --experience-start-space: clamp(136px, 10.5vw, 164px);
  --experience-end-space: clamp(64px, 5vw, 80px);
  --experience-tail-space: clamp(72px, 9svh, 108px);
  position: relative;
  padding: var(--experience-start-space) var(--pad) var(--experience-end-space);
  display: grid;
  grid-template-columns: minmax(330px, .56fr) minmax(620px, 1fr);
  gap: clamp(34px, 3.4vw, 64px);
  align-items: start;
}

.experience-section .rail-title {
  font-size: var(--type-section-size);
  font-weight: var(--weight-display);
  letter-spacing: var(--tracking-display);
  line-height: var(--type-section-line);
}

.experience-rail {
  position: sticky;
  top: var(--experience-rail-offset);
  grid-column: 1;
  grid-row: 1;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: clamp(4px, .8vw, 12px);
  min-height: 0;
  min-width: 0;
  padding-bottom: 0;
}

.experience-list {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  gap: clamp(8px, 2svh, 32px);
}

.experience-title-window {
  position: relative;
  height: calc(var(--type-heading-size) + 8px);
  overflow: hidden;
}

.experience-item {
  position: absolute;
  inset: 0 auto auto 0;
  color: var(--soft);
  font-size: var(--type-heading-size);
  font-weight: var(--weight-display);
  line-height: var(--type-heading-line);
  letter-spacing: var(--tracking-display);
  opacity: 0;
  transform: translateY(calc(var(--experience-offset, 1) * 105%));
  transition:
    transform .333s cubic-bezier(0,0,0,1),
    opacity .133s cubic-bezier(.75,0,.85,1);
}

.experience-item.is-active {
  color: rgba(255,255,255,.52);
  opacity: 1;
  transform: translateY(0);
}

.experience-detail-stack {
  position: relative;
  min-height: clamp(210px, 26vh, 270px);
}

.experience-detail {
  position: absolute;
  inset: 0 0 auto 0;
  display: grid;
  gap: 16px;
  opacity: 0;
  transition: opacity .167s linear;
}

.experience-detail.is-active {
  opacity: 1;
  transition-delay: .167s;
}

.experience-detail span {
  color: rgba(255,255,255,.48);
  font-family: var(--mono);
  font-size: var(--type-utility-size);
  line-height: var(--type-utility-line);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.experience-detail p {
  max-width: 500px;
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: var(--type-body-size);
  font-weight: var(--weight-body);
  line-height: var(--type-body-line);
  letter-spacing: var(--tracking-body);
  text-wrap: pretty;
}

.experience-stack {
  grid-column: 2;
  grid-row: 1;
  display: grid;
  gap: clamp(18px, 2vw, 30px);
  min-width: 0;
  padding-bottom: 0;
}

.experience-tail-spacer {
  min-height: var(--experience-tail-space);
}

.experience-card {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  scroll-margin-top: var(--experience-rail-offset);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 6px;
  background: #050505;
  isolation: isolate;
  opacity: .2;
  filter: saturate(.78) brightness(.7);
  transition:
    opacity .167s linear,
    filter .167s linear,
    border-color .167s linear,
    transform .333s cubic-bezier(.22,1,.36,1);
}

.experience-card.is-current {
  opacity: 1;
  border-color: rgba(241,255,46,.28);
  filter: saturate(1.06) brightness(1.08);
}

.experience-card:hover {
  transform: translateY(-4px) scale(1.006);
}

.experience-logo-panel {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(34px, 5vw, 82px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(232,232,224,.9)),
    #f4f4ec;
}

.experience-logo-panel img {
  display: block;
  width: min(62%, 280px);
  max-height: 150px;
  object-fit: contain;
}

.experience-card:first-child .experience-logo-panel img {
  width: min(78%, 400px);
  max-height: 166px;
}

@media (max-width: 920px) {
  .experience-section {
    padding: var(--section-space) var(--pad) clamp(64px, 12vw, 88px);
    grid-template-columns: 1fr;
    gap: 0;
  }

  .experience-rail,
  .experience-list,
  .experience-title-window,
  .experience-detail-stack,
  .experience-stack {
    display: contents;
  }

  .experience-section .rail-title {
    grid-row: 1;
    margin-bottom: clamp(52px, 14vw, 72px);
  }

  .experience-item {
    position: relative;
    inset: auto;
    margin-bottom: 14px;
    color: rgba(255,255,255,.92);
    opacity: 1;
    transform: none;
    font-weight: var(--weight-display);
    line-height: var(--type-heading-line);
  }

  .experience-item.is-active {
    color: rgba(255,255,255,.92);
  }

  .experience-detail {
    position: static;
    margin-bottom: clamp(26px, 7vw, 38px);
    padding: 0;
    border: 0;
    opacity: 1;
  }

  .experience-card,
  .experience-card.is-current {
    aspect-ratio: 4 / 3;
    margin-bottom: clamp(70px, 18vw, 104px);
    scroll-margin-top: 104px;
    border-color: rgba(255,255,255,.12);
    opacity: 1;
    filter: none;
    transition: none;
  }

  .experience-card:hover {
    transform: none;
  }

  .experience-item:nth-child(1) { grid-row: 2; }
  .experience-detail:nth-child(1) { grid-row: 3; }
  .experience-card:nth-child(1) { grid-row: 4; }
  .experience-item:nth-child(2) { grid-row: 5; }
  .experience-detail:nth-child(2) { grid-row: 6; }
  .experience-card:nth-child(2) { grid-row: 7; }
  .experience-item:nth-child(3) { grid-row: 8; }
  .experience-detail:nth-child(3) { grid-row: 9; }
  .experience-card:nth-child(3) { grid-row: 10; }
  .experience-item:nth-child(4) { grid-row: 11; }
  .experience-detail:nth-child(4) { grid-row: 12; }
  .experience-card:nth-child(4) { grid-row: 13; margin-bottom: 0; }

  .experience-tail-spacer {
    display: none;
  }
}
