:root{--oa-ink:#080808;--oa-paper:#eee9dd;--oa-red:#ed231d;--oa-line:rgba(238,233,221,.2)}

/* The opening names the world before it explains the system. */
.rv-hero-shade{background:linear-gradient(90deg,rgba(5,5,5,.98),rgba(5,5,5,.72) 42%,rgba(5,5,5,.18) 78%,rgba(5,5,5,.35))}
.rv-hero-copy{max-width:420px;width:auto;font-size:15px}
.rv-actions{margin-top:32px}

/* One observation is encountered before the visitor sees the full archive. */
.rv-first-observation{min-height:92svh;padding:clamp(80px,10vw,160px) 5vw;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:7vw;align-items:center;background:var(--oa-ink);color:var(--oa-paper);border-bottom:1px solid var(--oa-line)}
.rv-first-copy h2{max-width:820px;margin:0;font:600 clamp(62px,7.2vw,124px)/.84 var(--rv-display);letter-spacing:-.045em;text-transform:uppercase}
.rv-first-copy>p:not(.rv-eyebrow){max-width:520px;margin:34px 0;color:rgba(238,233,221,.68);font-size:15px;line-height:1.7}
.rv-first-art{min-height:650px;margin:0;padding:clamp(35px,5vw,80px);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#050505;color:var(--oa-paper);border:1px solid var(--oa-line);overflow:hidden}
.rv-first-art img{width:100%;height:min(70vh,720px);display:block;object-fit:contain}
.rv-first-art figcaption{width:100%;padding-top:24px;border-top:1px solid var(--oa-line);font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}

.rv-piece-status{margin:0 0 24px;color:rgba(238,233,221,.52);font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.rv-piece--light .rv-piece-status{color:rgba(8,8,8,.58)}

/* Participation becomes a deliberate chapter in the journey, not a floating utility. */
.rv-invitation{padding:clamp(90px,12vw,190px) 7vw;background:var(--oa-red);color:#fff}
.rv-invitation .rv-eyebrow b{color:var(--oa-ink)}
.rv-invitation h2{max-width:1100px;margin:0;font:600 clamp(82px,11vw,180px)/.79 var(--rv-display);letter-spacing:-.055em;text-transform:uppercase}
.rv-invitation>p:not(.rv-eyebrow){max-width:620px;margin:34px 0 48px;font-size:18px;line-height:1.55}
.rv-observation-prompt{width:100%;min-height:150px;padding:28px clamp(22px,3vw,48px);border:1px solid rgba(255,255,255,.72);display:flex;align-items:flex-end;justify-content:space-between;gap:35px;background:rgba(8,8,8,.08);color:#fff;text-align:left;cursor:pointer}
.rv-observation-prompt span{align-self:flex-start;color:rgba(255,255,255,.72);font-size:15px}
.rv-observation-prompt b{font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.rv-observation-prompt:hover,.rv-observation-prompt:focus-visible{background:var(--oa-ink)}
.rv-invitation small{max-width:760px;margin-top:22px;display:block;color:rgba(255,255,255,.72);font-size:10px;line-height:1.6;letter-spacing:.06em}

.rv-observation-intro{grid-template-columns:1fr}

@media(max-width:900px){
  .rv-hero{min-height:820px}
  .rv-first-observation{grid-template-columns:1fr;gap:55px;padding:90px 24px}
  .rv-first-copy h2{font-size:clamp(58px,15vw,96px)}
  .rv-first-art{min-height:560px;padding:34px 20px}
  .rv-first-art img{height:55vh}
  .rv-invitation{padding:95px 24px}
  .rv-invitation h2{font-size:20vw}
}

@media(max-width:520px){
  .rv-hero-copy{font-size:13px}
  .rv-first-observation{min-height:auto;padding:78px 20px}
  .rv-first-copy h2{font-size:16vw}
  .rv-first-copy>p:not(.rv-eyebrow){font-size:13px}
  .rv-first-art{min-height:480px}
  .rv-first-art img{height:430px}
  .rv-piece-status{margin-bottom:18px;font-size:7px}
  .rv-piece .rv-view{font-size:8px}
  .rv-piece .rv-view:before{content:none}
  .rv-observation-prompt{min-height:180px;align-items:flex-start;flex-direction:column}
  .rv-observation-prompt b{font-size:10px}
  .rv-invitation>p:not(.rv-eyebrow){font-size:15px}
}

@media(prefers-reduced-motion:reduce){.rv-observation-prompt{transition:none}}
