/* sethu — additions on top of the shared system */

/* scenes: SVG illustration layers inside image slots */
.scene{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.scene--hero{opacity:.9;transform-origin:50% 100%;animation:sceneIn 2.2s var(--ease) both}
@keyframes sceneIn{from{transform:translateY(6%) scale(1.04);opacity:0}to{transform:none;opacity:.9}}
.trip .scene{transition:transform 1.2s var(--ease)}
.trip:hover .scene{transform:scale(1.04)}
.camp__img{overflow:hidden}

/* hero word: letter reveal */
.hero__word [data-split] span{display:inline-block;transform:translateY(110%);opacity:0;animation:letterUp 1.1s var(--ease) forwards}
@keyframes letterUp{to{transform:none;opacity:1}}
.hero__word{overflow:hidden;line-height:.98;bottom:-.06em}
.hero__cue{position:absolute;left:50%;bottom:8vh;width:1px;height:8vh;background:rgba(255,255,255,.35);overflow:hidden;z-index:3}
.hero__cue span{position:absolute;inset:0;background:#fff;transform:translateY(-100%);animation:cue 2.2s cubic-bezier(.65,0,.35,1) infinite}
@keyframes cue{to{transform:translateY(100%)}}

/* venture cards as links */
.trip{text-decoration:none;color:var(--white)}
.trip__go{display:inline-flex;gap:.5em;align-items:center;margin-top:1.4em;text-transform:uppercase;letter-spacing:.14em;font-size:.9em;opacity:.85}
.trip__go i{font-style:normal;display:inline-block;transition:transform .4s var(--ease)}
.trip:hover .trip__go i{transform:translateX(6px)}
.trip__scrim{transition:opacity .6s}
.trip:hover .trip__scrim{opacity:.85}

/* now */
.now{background:var(--light-grey);padding:var(--space-medium) var(--gutter)}
.now__grid{display:grid;grid-template-columns:1fr 1.4fr;gap:5vw;align-items:start;max-width:1400px;margin:0 auto}
.now__title{font-family:var(--font-serif);font-weight:500;font-size:var(--fs-h3);line-height:1.1;margin-top:1em;max-width:16ch}
.now__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}
.now__list li{display:grid;grid-template-columns:9em 1fr;gap:1.5em;padding:1.1em 0;border-top:1px solid var(--blue-faded);font-family:var(--font-serif);font-weight:500;font-size:clamp(16px,1.35vw,22px);line-height:1.4}
.now__list li:last-child{border-bottom:1px solid var(--blue-faded)}
.now__k{font-family:var(--font-ui);font-size:var(--fs-body);text-transform:uppercase;letter-spacing:.14em;opacity:.55;padding-top:.35em}

/* recognition */
.recog{padding:var(--space-medium) var(--gutter) 0;max-width:1400px;margin:0 auto}
.recog__list{list-style:none;padding:0;margin:1.5em 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0}
.recog__list li{padding:1.5em 1.5em 1.5em 0;border-top:1px solid var(--blue-faded);display:flex;flex-direction:column;gap:.5em}
.recog__list strong{font-family:var(--font-serif);font-weight:600;font-size:clamp(17px,1.5vw,24px);line-height:1.2}
.recog__list span{color:var(--grey);opacity:.85}

/* custom cursor (pointer devices only) */
.cursor{position:fixed;top:0;left:0;width:10px;height:10px;border-radius:50%;background:var(--orange);pointer-events:none;z-index:80;transform:translate(-50%,-50%);transition:width .3s var(--ease),height .3s var(--ease),background .3s;mix-blend-mode:difference;opacity:0}
body.has-cursor .cursor{opacity:1}
body.has-cursor .cursor.is-link{width:44px;height:44px;background:#fff}
body.has-cursor .cursor.is-drag{width:64px;height:64px;background:#fff}
@media (hover:none){.cursor{display:none}}

/* mobile flyout tab: sit on the panel edge rather than off-screen */
@media (max-width:900px){
  .flyout.is-open .flyout__tab{transform:translate(0,-50%)}
  .now__grid{grid-template-columns:1fr}
  .now__list li{grid-template-columns:1fr;gap:.3em}
}
@media (prefers-reduced-motion:reduce){
  .hero__word [data-split] span{animation:none;transform:none;opacity:1}
  .hero__cue span,.scene--hero{animation:none}
}

/* ---------- pass 3 ---------- */
.skip{position:fixed;top:-100px;left:var(--gutter);z-index:100;background:var(--dark-blue);color:#fff;padding:.6em 1em;border-radius:var(--radius)}
.skip:focus{top:var(--gutter)}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.pill:focus-visible{outline-offset:2px}

.curtain{position:fixed;inset:0;z-index:90;background:var(--deep-blue);display:grid;place-items:center;transform-origin:50% 0;animation:curtain 1.1s cubic-bezier(.76,0,.24,1) .9s forwards;pointer-events:none}
.curtain svg{opacity:0;animation:markIn .8s var(--ease) .1s forwards,markOut .5s ease .7s forwards}
@keyframes curtain{to{transform:scaleY(0)}}
@keyframes markIn{to{opacity:1}}
@keyframes markOut{to{opacity:0;transform:translateY(-12px)}}
body.is-loading{overflow:hidden}

.nav{transition:color .4s var(--ease),transform .5s var(--ease),opacity .5s var(--ease)}
.nav.is-hidden{transform:translateY(-110%);opacity:0;pointer-events:none}
.pill{will-change:transform}

.camp__year{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.14em;opacity:.55;margin-bottom:1.2em}

.hscroll__progress{position:absolute;left:var(--gutter);right:var(--gutter);bottom:3vh;height:1px;background:rgba(255,255,255,.18);z-index:5}
.hscroll__progress span{display:block;height:100%;width:100%;background:#fff;transform-origin:0 50%;transform:scaleX(0)}
.panel--cta ~ .hscroll__progress{display:none}

.footer__legal [data-clock]{font-variant-numeric:tabular-nums}

@media (prefers-reduced-motion:reduce){.curtain{display:none}.nav.is-hidden{transform:none;opacity:1;pointer-events:auto}}
