/* Пасхалка за занавесом (blocks/egg.html) + сам занавес (blocks/curtain.js).
   Язык orangelabel.com: PF DinText, #221603, контейнер сайта, .about-title / .about-description / .project-subtitle.
   Фон — жёлтый с текстурой из orange-26/credits, как сцена под поднятым занавесом. */

/* ── занавес: всё, что лежит в body (кроме пасхалки), сдвигается вверх ──
   translate ставим «листьям»: детям body и детям .pin-spacer (у закреплённых секций GSAP — position:fixed,
   и сдвиг их родителя сломал бы fixed). Свойство translate не мешает transform, который ставит GSAP. */
body.v69c-move > :not(.pin-spacer):not(#v69-egg):not(#cmx-root):not(script):not(style):not(link),
body.v69c-move > .pin-spacer > * {
  translate: 0 calc(-1 * var(--v69c-y, 0px)) !important;  /* GSAP ставит закреплённым секциям inline translate:none */
  transition: translate .14s cubic-bezier(.2,.7,.3,1);
}
body.v69c-spring > :not(.pin-spacer):not(#v69-egg):not(#cmx-root):not(script):not(style):not(link),
body.v69c-spring > .pin-spacer > * { transition: translate .55s cubic-bezier(.3,1.7,.45,1); }
body.v69c-anim > :not(.pin-spacer):not(#v69-egg):not(#cmx-root):not(script):not(style):not(link),
body.v69c-anim > .pin-spacer > * { transition: translate var(--v69c-dur, 1.25s) cubic-bezier(.68,0,.18,1); }

/* тень от нижнего края занавеса — висит сразу под экраном и уезжает вверх вместе с сайтом */
.v69c-hem { position: fixed; left: 0; right: 0; top: 100%; height: 120px; pointer-events: none; z-index: 1; display: none;
  background: linear-gradient(rgba(34,22,3,.55), rgba(34,22,3,.2) 28%, rgba(34,22,3,.06) 60%, rgba(34,22,3,0)); }
body.v69c-armed .v69c-hem { display: block; }

/* ── сцена ── */
#v69-egg { position: fixed; inset: 0; z-index: -1; visibility: hidden; overflow-y: auto; overscroll-behavior: contain;
  scrollbar-width: none; outline: none; color: #221603;
  background: #FFD500 url("egg/texture.jpg") center / cover no-repeat; }
#v69-egg::-webkit-scrollbar { display: none; }
body.v69c-armed #v69-egg { visibility: visible; }
body.v69c-open #v69-egg { z-index: 2147483000; }

/* «свет на сцене»: пока занавес внизу, сцена в полутени, при подъёме свет набирается */
.v69egg-dim { position: fixed; inset: 0; z-index: 3; pointer-events: none; background: #221603; opacity: .42;
  transition: opacity 1.6s cubic-bezier(.4,0,.2,1) .15s; }
body.v69c-up .v69egg-dim { opacity: 0; }

.v69egg .nw { white-space: nowrap; }
.v69egg-head { padding-top: 84px; }
.v69egg-head .project-subtitle { margin-bottom: 20px; }
.v69egg-head .about-title { margin-bottom: 24px; }
.v69egg-head .about-description { margin-bottom: 0; }

/* ряд версий: 4 компьютера + «сейчас» */
.v69h-row { --w: min(1180px, calc(100vw - 120px)); list-style: none; margin: 36px auto 0; padding: 0; width: var(--w);
  display: grid; grid-template-columns: repeat(4, 1fr) .72fr; }
.v69h-ver { display: flex; flex-direction: column; align-items: center; min-width: 0; margin: 0; }
.v69h-dev { width: calc(100% - 24px); aspect-ratio: 1064 / 1218; display: flex; align-items: flex-end; justify-content: center; }
.v69h-dev img { width: 100%; height: auto; display: block; transition: transform .35s cubic-bezier(.2,.7,.2,1); transform-origin: 50% 100%;
  filter: drop-shadow(0 18px 18px rgba(34,22,3,.12)); }
a.v69h-dev:hover img { transform: translateY(-6px); }

/* линия времени: два отрезка по бокам от годов (без подложки — фон с текстурой) */
.v69h-yr { align-self: stretch; height: 40px; margin-top: 28px; display: flex; align-items: center; gap: 14px; }
.v69h-yr::before, .v69h-yr::after { content: ""; flex: 1; height: 1px; background: rgba(34,22,3,.4); }
.v69h-ver:first-child .v69h-yr::before { background: none; }
.v69h-ver:last-child .v69h-yr::after { background: linear-gradient(90deg, rgba(34,22,3,.4), rgba(34,22,3,0)); }
.v69h-yr span { font-family: "PF DinText Light", sans-serif; font-size: 22px; letter-spacing: .02em; white-space: nowrap; text-transform: uppercase; }
.v69h-yr b { font-family: "PF DinText Thin", sans-serif; font-weight: 100; margin: 0 4px; }

.v69h-lg { height: 110px; display: flex; align-items: center; justify-content: center; margin-top: 22px; }
.v69h-lg a { display: block; }
.v69h-logo { height: 68px; width: auto; max-width: 210px; display: block; }
.v69h-logo.blot { height: 92px; }
.v69h-logo.now { height: 62px; }

.v69h-now .v69h-dev { width: calc(100% - 16px); aspect-ratio: auto; height: calc((var(--w) / 4.72 - 24px) * 1218 / 1064); }
.v69h-scr { display: block; width: 100%; aspect-ratio: 16 / 10; border: 1px solid #221603; padding: 6px; background: #fff; margin-bottom: 18%; }
.v69h-scr img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 50%; display: block; filter: none; }

/* благодарности: 4 колонки, имя и фамилия разведены от осевой, как в титрах */
.v69egg-thanks { margin-top: 150px; padding-top: 72px; border-top: 1px solid rgba(34,22,3,.4); }
.v69egg-thanks .intro { margin-bottom: 56px; display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; align-items: end; }
.v69egg-thanks .intro .about-title { margin-bottom: 0; }
.v69egg-thanks .intro p, .v69egg-thanks .outro p { font-family: "PF DinText Light", sans-serif; font-size: 20px; line-height: 1.3; margin: 0; }
.v69egg-thanks .cols { display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 24px; align-items: start; }
.v69egg-thanks .grp + .grp { margin-top: 64px; }
.v69egg-thanks .grp h3 { font-family: "PF DinText Regular", sans-serif; font-weight: 400; font-size: 16px; line-height: 1.25; min-height: 40px;
  text-transform: uppercase; margin: 0 0 16px; display: flex; align-items: flex-end; }
.v69egg-thanks .grp + .grp h3 { min-height: 0; }
.v69egg-thanks .grp.cont h3 { visibility: hidden; }
.v69egg-thanks .names { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 88px 1fr; column-gap: 6px; row-gap: 6px;
  font-family: "PF DinText Light", sans-serif; font-size: 16px; line-height: 1.25; text-transform: uppercase; }
.v69egg-thanks .names li { display: contents; font: inherit; }  /* у сайта li — 24px Thin */
.v69egg-thanks .names .fn { text-align: right; }
.v69egg-thanks .names .ln { text-align: left; font-family: "PF DinText Regular", sans-serif; }
.v69egg-thanks .names .note { grid-column: 1 / -1; font-size: 16px; line-height: 1.25; text-transform: none; margin-top: 12px; text-wrap: balance; }
.v69egg-thanks .outro { margin-top: 72px; }

.v69egg-end { padding: 96px 24px 64px; display: flex; justify-content: flex-end; }
.v69egg-back { appearance: none; border: 0; background: none; padding: 0; cursor: pointer; color: inherit; display: flex; align-items: center; gap: 8px;
  font-family: "PF DinText Regular", sans-serif; font-size: 16px; text-transform: uppercase; }
.v69egg-back span { border-bottom: 1px solid currentColor; }
.v69egg-back i { font-size: 24px; }

@media (prefers-reduced-motion: reduce) {
  body.v69c-move > *, body.v69c-move > .pin-spacer > *, .v69egg-dim { transition: none !important; }
}
