/* The hero alone owns this motion system; the rest of the page stays quiet. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero--interactive{isolation:isolate}
.hero-title-line{display:block;overflow:clip;padding-bottom:.13em;margin-bottom:-.13em}
.hero-title-line>span{display:block;animation:hero-line-enter 1.05s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.12s + var(--line)*.13s)}
.hero--interactive .hero-copy>.eyebrow{animation:hero-soft-enter .8s .08s both}
.hero--interactive .hero-description{animation:hero-soft-enter 1s .45s both}
.hero--interactive .hero-buttons{animation:hero-soft-enter 1s .58s both}
.hero--interactive .hero-footnote{animation:hero-soft-enter 1s .7s both}
.hero-experience{--hero-x:0px;--hero-y:0px;--orbit-x:0px;--orbit-y:0px;--light-x:65%;--light-y:35%;touch-action:pan-y;isolation:isolate;animation:hero-curtain 1.35s cubic-bezier(.16,1,.3,1) both;background:#899a70}
.hero-experience:after{z-index:1;pointer-events:none;background:linear-gradient(180deg,#13291d20,transparent 35%,#13291d05 62%,#172d24a3)}
.hero-depth{position:absolute;inset:-28px;transform:translate3d(var(--hero-x),var(--hero-y),0);will-change:transform}
.hero-scene-layer{position:absolute;inset:0;opacity:0;transform:scale(1.055);transition:opacity .9s ease,transform 1.6s cubic-bezier(.16,1,.3,1)}
.hero-scene-layer.is-active{opacity:1;transform:scale(1)}
.hero-scene-layer img{height:100%;width:100%;object-fit:cover;object-position:62% center}
.hero-scene-layer[data-scene-layer="1"] img{object-position:59% center}
.hero-scene-layer[data-scene-layer="2"] img{object-position:51% center}
.hero-light{position:absolute;inset:0;background:radial-gradient(ellipse 46% 40% at var(--light-x) var(--light-y),#fff4c746,transparent 85%);mix-blend-mode:screen;opacity:0;transition:opacity .7s;z-index:2;pointer-events:none}
.hero-experience.is-exploring .hero-light{opacity:.7}
.hero-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;opacity:.85}
.hero-orbit{position:absolute;width:clamp(210px,25vw,365px);aspect-ratio:1;left:69%;top:43%;pointer-events:none;z-index:2;opacity:.65;transform:translate(calc(-50% + var(--orbit-x)),calc(-50% + var(--orbit-y)));transition:left 1.4s cubic-bezier(.16,1,.3,1),top 1.4s cubic-bezier(.16,1,.3,1),opacity .6s,width 1.4s}
.hero-orbit svg{width:100%;height:100%;fill:none;stroke:#fffdeb;animation:hero-orbit-turn 65s linear infinite}
.orbit-fine{stroke-width:.6;opacity:.38}.orbit-dash{stroke-width:.65;stroke-dasharray:1 21;opacity:.6}.orbit-arc{stroke-width:1.3;opacity:.8}.orbit-point{fill:#fffae1;stroke:none}.orbit-tick{stroke-width:.7;opacity:.65}
.hero-experience[data-scene="1"] .hero-orbit{left:66%;top:48%;width:clamp(185px,21vw,300px);opacity:.45}
.hero-experience[data-scene="2"] .hero-orbit{left:51%;top:59%;width:clamp(230px,29vw,410px);opacity:.32}
.hero-chapters{position:absolute;top:30px;left:30px;z-index:6;display:flex;align-items:center;gap:3px;padding:5px;background:#182e2538;border:1px solid #fffdef60;border-radius:40px;backdrop-filter:blur(18px);animation:hero-soft-enter 1s .65s both;box-shadow:0 6px 30px #173e3208}
.hero-chapter{border-radius:30px;background:transparent;color:#fffef0;display:flex;align-items:center;gap:10px;min-height:43px;padding:10px 16px;line-height:1.3;transition:color .35s,background .35s,box-shadow .35s}
.hero-chapter>span{font-size:10px;letter-spacing:1px;opacity:.72}.hero-chapter strong{font-size:14px;font-weight:500;white-space:nowrap}.hero-chapter:hover{background:#fffff51c}.hero-chapter[aria-selected="true"]{background:#fcfbef;color:#173e32;box-shadow:0 2px 6px #173e3214}
.hero-chapter:focus-visible,.hero-motion-toggle:focus-visible{outline:2px solid #fffdeb;outline-offset:5px}
.hero-experience .hero-image-label{left:32px;bottom:35px;max-width:calc(100% - 150px);z-index:5;animation:hero-soft-enter 1s .75s both}
.hero-experience .hero-image-label strong{font-size:9px;letter-spacing:2.4px;margin-bottom:7px}
.hero-experience .hero-image-label span:not(.sr-only){font:400 20px/1.6 var(--serif);letter-spacing:.3px}
html[lang="en"] .hero-experience .hero-image-label span:not(.sr-only){font:italic 22px/1.4 Georgia,serif}
.hero-experience .hero-image-label .label-line{height:50px;background:#fffdeb85}
.hero-experience .hero-side-note{font-size:8px;top:107px;opacity:.72;animation:hero-soft-enter 1s .8s both;pointer-events:none}
.hero-explore-hint{position:absolute;z-index:5;left:32px;bottom:118px;display:flex;align-items:center;gap:10px;color:#fffce7b8;pointer-events:none;font-size:9px;letter-spacing:1.3px;animation:hero-soft-enter 1s .9s both}
.explore-glyph{width:13px;height:20px;display:block;border:1px solid #fffce77a;border-radius:10px;position:relative}.explore-glyph i{position:absolute;width:2px;height:4px;background:#fffce7;top:4px;left:4.5px;border-radius:2px;animation:hero-mouse-tick 2.6s ease infinite}
.touch-hint{display:none}
.hero-experience .hero-photo-count{display:flex;align-items:center;gap:8px;right:78px;bottom:35px;z-index:5;font-size:8px;letter-spacing:1px;animation:hero-soft-enter 1s .9s both}
.hero-photo-count b{font-size:12px;font-weight:400}.hero-photo-count>span{opacity:.6}
.hero-motion-toggle{position:absolute;z-index:6;right:26px;bottom:29px;width:35px;height:35px;border:1px solid #fffbe97a;background:#fffbea0c;border-radius:50%;color:#fffce7;display:grid;place-items:center;backdrop-filter:blur(10px);transition:background .3s;animation:hero-soft-enter 1s 1s both}
.hero-motion-toggle:hover{background:#fffbea26}.hero-motion-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.hero-experience[data-paused="true"] .hero-orbit svg,.hero-experience[data-paused="true"] .explore-glyph i{animation-play-state:paused}
.hero-experience[data-paused="true"] .hero-depth{transition:transform .6s ease}
.hero-experience[data-reduced="true"] .hero-motion-toggle{display:none}
.hero-experience[data-reduced="true"] .hero-explore-hint{display:none}
@keyframes hero-line-enter{from{transform:translateY(108%);opacity:.15}to{transform:translateY(0);opacity:1}}
@keyframes hero-soft-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-curtain{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes hero-orbit-turn{to{transform:rotate(360deg)}}
@keyframes hero-mouse-tick{0%,100%{transform:translateY(0);opacity:.4}45%{transform:translateY(5px);opacity:1}}
@media(max-width:1150px){.hero-chapters{left:24px;top:24px}.hero-chapter{padding-inline:12px;gap:7px;min-height:40px}.hero-chapter strong{font-size:13px}.hero-experience .hero-photo-count>span{display:none}.hero-experience .hero-image-label{left:26px}.hero-explore-hint{left:26px}.hero-experience .hero-image-label span:not(.sr-only){font-size:18px}}
@media(max-width:900px){.hero-chapters{left:20px;top:23px;gap:1px;padding:4px}.hero-chapter{gap:5px;padding-inline:10px;min-height:38px}.hero-chapter strong{font-size:12px}.hero-chapter>span{font-size:9px}.hero-experience .hero-image-label{left:23px;max-width:calc(100% - 95px);bottom:31px}.hero-experience .hero-image-label strong{font-size:8px;letter-spacing:1.5px}.hero-experience .hero-image-label span:not(.sr-only){font-size:16px}.hero-experience .hero-photo-count{display:none}.hero-motion-toggle{right:20px;bottom:30px;width:31px;height:31px}.hero-explore-hint{left:24px;font-size:8px;bottom:111px;letter-spacing:1px}.hero-orbit{width:240px;left:69%}html[lang="en"] .hero-chapter{padding-inline:8px}html[lang="en"] .hero-chapter strong{font-size:12px}html[lang="en"] .hero-chapters{left:16px}}
@media(max-width:640px){.hero-experience{height:395px}.hero-depth{inset:-20px}.hero-chapters{left:20px;top:20px;padding:4px;gap:2px}.hero-chapter{min-height:38px;padding-inline:12px;gap:8px}.hero-chapter strong{font-size:13px}.hero-chapter>span{font-size:9px}.hero-experience .hero-side-note{top:94px;right:12px;font-size:7px;letter-spacing:2px}.hero-experience .hero-image-label{left:22px;bottom:24px}.hero-experience .hero-image-label .label-line{height:44px}.hero-experience .hero-image-label span:not(.sr-only){font-size:18px}.hero-explore-hint{bottom:96px;left:23px;font-size:8px}.hero-motion-toggle{bottom:26px;right:20px}.hero-orbit{width:245px;left:70%;top:43%;opacity:.55}.hero-experience[data-scene="1"] .hero-orbit{width:210px}.hero-experience[data-scene="2"] .hero-orbit{width:280px;top:56%}html[lang="en"] .hero-chapters{left:20px}html[lang="en"] .hero-chapter{padding-inline:10px;gap:6px}html[lang="en"] .hero-chapter strong{font-size:12px}html[lang="en"] .hero-experience .hero-image-label span:not(.sr-only){font-size:20px}}
@media(max-width:360px){.hero-chapters{left:15px;right:29px}.hero-chapter{padding-inline:8px;gap:6px;flex:1;justify-content:center}.hero-chapter strong{font-size:12px}html[lang="en"] .hero-chapters{left:15px}html[lang="en"] .hero-chapter{padding-inline:7px;gap:4px}html[lang="en"] .hero-chapter strong{font-size:12px}.hero-experience .hero-image-label span:not(.sr-only){font-size:16px}.hero-experience .hero-image-label strong{font-size:7px}.hero-explore-hint{font-size:7px}}
@media(min-width:641px) and (max-width:900px){.hero-explore-hint{bottom:145px}}
@media(max-width:640px){.hero-explore-hint{display:none}}
@media(hover:none),(pointer:coarse){.pointer-hint{display:none}.touch-hint{display:inline}.explore-glyph{height:16px;width:12px;transform:rotate(-15deg);border-radius:5px}.explore-glyph i{left:4px;top:4px;height:3px;animation:none}.hero-light{display:none}}
@media(prefers-reduced-motion:reduce){.hero--interactive *,.hero--interactive{animation:none!important;transition:none!important}.hero-depth{transform:none!important;will-change:auto}.hero-orbit{opacity:.3}.hero-explore-hint,.hero-atmosphere,.hero-motion-toggle{display:none}.hero-scene-layer{transform:none}.hero-experience{clip-path:none}}

/* Larger chapter labels, with spacing matched to the available photo width. */
@media(min-width:641px) and (max-width:900px){
  .hero-chapters{max-width:calc(100% - 32px)}
  .hero-chapter,html[lang="en"] .hero-chapter{padding-inline:6px;gap:4px}
}
@media(max-width:640px){
  .hero-chapters{right:20px;justify-content:space-between}
  .hero-chapter,html[lang="en"] .hero-chapter{padding-inline:8px;gap:5px;flex:1;justify-content:center}
  .hero-chapter strong,html[lang="en"] .hero-chapter strong{font-size:13px}
}
@media(max-width:380px){
  .hero-chapters,html[lang="en"] .hero-chapters{left:15px;right:15px}
  .hero-chapter>span{display:none}
  .hero-chapter strong,html[lang="en"] .hero-chapter strong{font-size:12px}
}
