/* ==========================================================================
   Openn™ — work listing page (work.html) — page-scoped styles
   Reuses global .work / .work__item / .work__name from styles.css
   ========================================================================== */

/* thin dotted hairline under the fixed nav */
.page-line {
  width: 100%;
  border-top: 1px dotted var(--grey-200);
  margin-top: 5rem;
}

/* ---------- head: display heading | label + desc | year ---------- */
.work-page__head {
  display: grid;
  grid-template-columns: 1fr 1fr 0.5fr;
  gap: 1.5rem;
  place-items: end start;
  width: 100%;
}

.work-page__heading-wrap {
  position: relative;
}

.work-page__heading {
  position: relative;
  font-family: var(--font-display);
  font-size: 8rem;
  line-height: 0.85;
  font-weight: 600;
  letter-spacing: 0;
}

.work-page__heading .work__number {
  top: 0.25rem;
  right: -1.25rem;
}

.work-page__head-texts {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  max-width: 22rem;
}

.work-page__year {
  justify-self: end;
  font-family: var(--font-display);
  font-size: 8rem;
  line-height: 0.85;
  font-weight: 600;
  letter-spacing: 0;
}

/* ---------- listing spacing ---------- */
.spacer-huge {
  width: 100%;
  padding-top: 5rem;
}

.work-page__list {
  gap: 8rem;
}

/* listing pill: title only, plus a "View work" hover pill */
.work-page__pill {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.9);
  padding: 0.75rem 1rem;
  border-radius: 4rem;
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #fff;
  font-family: var(--font-label);
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.35s var(--ease), transform 0.35s var(--ease);
  pointer-events: none;
}

.work-page__item:hover .work-page__pill {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

/* ---------- responsive ---------- */
@media (max-width: 991px) {
  .work-page__heading,
  .work-page__year {
    font-size: 6.5rem;
  }
}

@media (max-width: 767px) {
  .work-page__head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
  }

  .work-page__heading,
  .work-page__year {
    font-size: 4.5rem;
  }

  .work-page__year {
    display: none;
  }

  .spacer-huge {
    padding-top: 3rem;
  }

  .work-page__list {
    gap: 3rem;
  }
}

/* ---------- line draw (template .line ix: scaleX 0 -> 1 on scroll) ---------- */
.js .page-line[data-reveal] {
  opacity: 1;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 1.1s var(--ease);
}

.js .page-line[data-reveal].is-in {
  transform: scaleX(1);
}
