:root{--paper:#f1eee7;--ink:#242721;--brown:#74513a;--line:#c9c6be;--display:Impact,'Arial Narrow',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}body.dialog-open{overflow:hidden}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:7px}img{display:block;width:100%;object-fit:cover}figure,p{margin:0}h1,h2,h3{margin:0;font-weight:400}h1,h2{font-family:var(--display);font-stretch:condensed;line-height:.98;letter-spacing:-.025em}h2{font-size:clamp(48px,6.4vw,104px)}h3{font-size:30px;line-height:1.2;letter-spacing:-1px}p+p{margin-top:20px}.header{position:absolute;z-index:10;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 4%;color:var(--paper)}.brand{position:relative;font-family:var(--display);font-size:25px;line-height:.86;letter-spacing:-.7px}.brand-dot{font-family:Arial;font-size:10px;position:absolute;right:-14px;top:0}.menu-toggle{display:flex;gap:17px;align-items:center;padding:14px 0;background:none;font-size:11px;font-weight:700;letter-spacing:1px}.menu-lines{width:28px;height:9px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}.hero{height:100svh;min-height:650px;max-height:1100px;position:relative;isolation:isolate;color:var(--paper);overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-position:center 43%}.hero-shade{background:rgba(15,24,19,.27);z-index:-1}.hero-top{position:absolute;left:4%;right:4%;top:145px;display:flex;justify-content:space-between;font-size:10px;line-height:1.7;letter-spacing:1.5px}.hero-top span:last-child{text-align:right}.hero-bottom{position:absolute;left:4%;right:4%;bottom:95px}.hero-intro{font-size:15px;margin-bottom:20px}.hero h1{font-size:clamp(70px,14.3vw,240px);white-space:nowrap;line-height:.88;letter-spacing:-.025em;margin-left:-.005em}.hero-baseline{display:flex;justify-content:space-between;align-items:center;margin-top:34px}.hero-baseline p{font-size:15px}.link-button{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;padding:17px 23px;font-size:11px;letter-spacing:1px;font-weight:700;transition:background .2s,color .2s}.link-button.light{border:1px solid rgba(241,238,231,.8)}.link-button.light:hover{background:var(--paper);color:var(--ink)}.scroll-note{position:absolute;bottom:26px;left:4%;right:4%;border-top:1px solid #ffffff50;padding-top:15px;font-size:9px;letter-spacing:1.5px;display:flex;justify-content:space-between}.section{padding:76px 6% 100px}.section-label{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:17px;margin-bottom:62px;font-size:10px;letter-spacing:1.2px;font-weight:700}.next-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:10%}.next-info{padding-top:8px;max-width:425px}.eyebrow{display:block;font-size:10px;letter-spacing:1.3px;font-weight:700;margin-bottom:21px}.next-info h3{margin-bottom:22px}.next-info p{color:#5e625a}.text-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid currentColor;padding:0 0 10px;margin-top:30px;background:transparent;font-size:10px;font-weight:700;letter-spacing:1px;text-align:left}.text-link:hover{color:var(--brown)}.bring{border-top:1px solid var(--line);margin-top:38px;padding-top:25px}.bring .eyebrow{margin-bottom:12px}.bring p{font-size:14px}.story{background:var(--ink);color:var(--paper)}.story .section-label{border-color:#ffffff35}.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.story h2{font-size:clamp(48px,5.7vw,91px);margin-bottom:36px}.story-copy p{font-size:15px;max-width:360px;color:#cbcfc3}.story-photo{align-self:stretch;position:relative;padding-top:6px}.story-photo img{height:100%;max-height:700px;min-height:490px;object-position:45% center}.story-photo figcaption{font-size:9px;letter-spacing:1px;margin-top:14px}.cream:hover{color:#c7a17c}.field h2{font-size:clamp(44px,5.6vw,88px);margin-bottom:60px}.photo-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:48px 6%;align-items:start}.photo-button{display:block;width:100%;padding:0;background:none;overflow:hidden}.photo-button img{transition:transform .5s}.photo-button:hover img{transform:scale(1.025)}.photo-wide img{aspect-ratio:1.52}.photo-tall{padding-top:100px}.photo-tall img{aspect-ratio:.88;object-position:center}.photo-grid figcaption{display:flex;justify-content:space-between;gap:8px;margin-top:14px;font-size:9px;letter-spacing:.8px}.photo-detail{width:70%;margin-top:-95px}.photo-detail img{aspect-ratio:1.2}.field-note{padding:35px 0 0;align-self:center}.field-note p{font-size:25px;line-height:1.45;letter-spacing:-.8px}.handwritten{display:block;font-family:Georgia,serif;font-style:italic;font-size:23px;margin-top:24px;color:var(--brown)}.merch{display:grid;grid-template-columns:1fr 1fr;background:#d7d0c1;min-height:670px}.merch-image img{height:100%;max-height:790px;object-position:center 35%}.merch-copy{padding:70px 12%;align-self:center}.merch h2{font-size:clamp(45px,5.3vw,83px);margin-bottom:28px}.merch-copy p{max-width:290px;font-size:15px}.coming-soon{display:inline-block;border-top:1px solid #aaa396;border-bottom:1px solid #aaa396;margin-top:32px;padding:14px 0;font-size:10px;letter-spacing:1px;font-weight:700}.merch-copy p.small-note{font-size:12px;margin-top:15px;color:#636254}.support{padding-bottom:120px}.support-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:center}.support-layout>div{max-width:390px}.support-layout p{color:#5e625a}.footer{background:var(--brown);color:var(--paper);padding:38px 4% 23px;overflow:hidden}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:1px}.footer-wordmark{display:block;font-family:var(--display);font-size:14.2vw;line-height:1.05;letter-spacing:-.025em;white-space:nowrap;margin:55px 0 38px}.footer-bottom{border-top:1px solid #ffffff40;padding-top:20px}dialog{border:0;padding:0;color:var(--ink)}dialog::backdrop{background:#171d18ba}.menu-dialog{background:var(--paper);width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:28px 6% 30px;overflow-y:auto}.menu-head{display:flex;justify-content:space-between;align-items:center}.close-button{display:flex;align-items:center;gap:19px;background:transparent;font-size:10px;letter-spacing:1px;font-weight:700;padding:12px 0}.close-button span{font-size:29px;line-height:1}.menu-dialog nav{margin:65px auto 45px;max-width:1200px}.menu-dialog nav a{display:flex;align-items:center;gap:24px;font-family:var(--display);font-size:clamp(36px,7vw,105px);line-height:1.17;border-bottom:1px solid var(--line);transition:color .2s}.menu-dialog nav a:hover{color:var(--brown)}.menu-dialog nav a span{font:10px Arial;align-self:center;letter-spacing:1px}.menu-dialog nav a i{font-family:Arial;font-style:normal;font-size:.55em;margin-left:auto}.menu-foot{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:1px}.content-dialog{width:calc(100% - 40px);max-width:760px;max-height:90svh;padding:35px 55px 55px;background:var(--paper)}.content-dialog>.close-button{margin-left:auto;margin-bottom:25px}.content-dialog h2{font-size:70px;margin-bottom:30px}.content-dialog p{font-size:16px}.content-dialog .eyebrow{font-size:10px}.photo-dialog{background:var(--ink);color:var(--paper);max-width:1100px;width:calc(100% - 40px);max-height:95svh;padding:20px}.photo-dialog>.close-button{margin-left:auto;margin-bottom:15px}.photo-dialog img{height:auto;max-height:70svh;object-fit:contain}.photo-dialog p{margin-top:16px;font-size:13px}#event-details{margin:25px 0}#event-details>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-top:1px solid var(--line)}#event-details dt{font-size:10px;font-weight:700;letter-spacing:1px}#event-details dd{margin:0;font-size:14px;text-align:right}
@media(min-width:1800px){.section{padding-left:calc((100% - 1584px)/2);padding-right:calc((100% - 1584px)/2)}}
@media(max-width:760px){.header{padding:22px 6%}.hero{min-height:620px;max-height:950px}.hero-top{top:125px;left:6%;right:6%;font-size:8px}.hero-bottom{left:6%;right:6%;bottom:100px}.hero h1{font-size:13.7vw}.hero-intro{font-size:13px;margin-bottom:18px}.hero-baseline{display:block;margin-top:25px}.hero-baseline p{font-size:13px}.hero-baseline .link-button{margin-top:23px;padding:14px 18px;font-size:9px;gap:30px}.scroll-note{left:6%;right:6%}.section{padding:50px 7% 70px}.section-label{margin-bottom:42px;font-size:8px;letter-spacing:.7px}.section-label span:last-child{text-align:right;max-width:150px}.next-layout,.story-layout,.support-layout{grid-template-columns:1fr;gap:35px}.next-info{max-width:none}.next-info h3{font-size:27px}.story h2{font-size:14vw;margin-bottom:25px}.story-copy p{max-width:none}.story-photo img{min-height:0;max-height:none;aspect-ratio:.87}.story-photo{margin-top:10px}.field h2{font-size:11.3vw;margin-bottom:35px}.photo-grid{gap:35px 6%;grid-template-columns:1.15fr 1fr}.photo-wide{grid-column:1/-1}.photo-tall{padding-top:0;grid-column:2;grid-row:2}.photo-detail{margin-top:0;width:100%;grid-column:1;grid-row:2}.photo-tall img{aspect-ratio:.7}.photo-grid figcaption{font-size:7px;letter-spacing:.4px}.field-note{grid-column:1/-1;padding:8px 0}.field-note p{font-size:23px}.merch{grid-template-columns:1fr;min-height:0}.merch-image img{max-height:580px;aspect-ratio:1.05;object-position:center 28%}.merch-copy{padding:45px 7% 55px}.merch h2{font-size:14vw}.merch-copy p{max-width:330px}.support-layout{gap:32px}.footer{padding:28px 6% 23px}.footer-top{font-size:7px}.footer-wordmark{font-size:13.7vw;margin:35px 0 28px}.footer-bottom{font-size:7px;flex-wrap:wrap}.footer-bottom span:last-child{display:none}.menu-dialog{padding:22px 6%}.menu-dialog nav{margin:70px 0 40px}.menu-dialog nav a{font-size:10.7vw;padding:13px 0;gap:12px}.menu-foot{font-size:8px;flex-wrap:wrap}.content-dialog{padding:20px 25px 35px}.content-dialog h2{font-size:50px}.content-dialog p{font-size:14px}.photo-dialog{padding:15px}.photo-dialog img{max-height:65svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.header{position:fixed;transition:background .2s,color .2s}.header.on-light{background:var(--paper);color:var(--ink);padding-top:16px;padding-bottom:16px}@media(prefers-reduced-motion:reduce){.header{transition:none}}

/* Motion adds to the existing composition; the still photo always sits below film. */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;z-index:-2}
.video-toggle{position:absolute;right:4%;top:205px;display:flex;align-items:center;gap:16px;min-height:44px;padding:10px 14px;background:transparent;border:1px solid #ffffff80;font-size:9px;font-weight:700;letter-spacing:1px}
.gallery-viewport{overflow:hidden;height:min(65svh,700px);touch-action:pan-y pinch-zoom}
.gallery-track{display:flex;width:100%;height:100%;transition:transform 420ms cubic-bezier(.22,1,.36,1)}
.gallery-slide{flex:0 0 100%;min-width:0;height:100%}
.photo-dialog .gallery-slide img{width:100%;height:100%;max-height:none;object-fit:contain;user-select:none}
.gallery-opening .gallery-track{transition:none}
.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px}
.gallery-control{flex-shrink:0;min-width:44px;min-height:44px;background:transparent;border:1px solid #ffffff50;font-size:20px}
.gallery-control:hover{background:#ffffff12}
.gallery-description{flex:1;text-align:center;min-width:0}
#photo-count{font-size:10px;letter-spacing:1px}
.photo-dialog #photo-caption{margin-top:5px}
.photo-dialog #gallery-hint{margin-top:14px;font-size:10px;letter-spacing:.3px;text-align:center;color:#cbcfc3}
@media(max-width:760px){.video-toggle{right:6%;top:180px}.gallery-viewport{height:58svh}.gallery-bottom{gap:10px}.photo-dialog #photo-caption{font-size:12px}.photo-dialog #gallery-hint{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.photo-button:hover img{transform:none}.hero-video,.video-toggle{display:none!important}}

/* Cinematic motion keeps the established type, palette and photo composition. */
.header{transition:transform 280ms cubic-bezier(.22,1,.36,1),background 200ms,color 200ms}
.header.is-hidden{transform:translateY(-110%);pointer-events:none}
.header:focus-within{transform:none;pointer-events:auto}
.menu-dialog{background:var(--ink);color:var(--paper)}
.menu-dialog nav a{border-color:#ffffff35}
.menu-dialog nav a:hover{color:#c7a17c}
.headline-line{display:block}
.trail-strip{padding:34px 0 40px;background:var(--paper);overflow:hidden}
.trail-strip-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 6% 22px;font-size:10px;font-weight:700;letter-spacing:1px}
.trail-strip-controls{display:flex;align-items:center;gap:14px}
.trail-strip-head{min-height:66px}
.trail-strip-controls button{min-height:44px;min-width:44px;background:transparent;border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.7px;padding:8px}
.trail-strip-controls button:disabled{opacity:.65;cursor:default}
.trail-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y pinch-zoom}
.trail-viewport::-webkit-scrollbar{display:none}
.trail-viewport.dragging{cursor:grabbing;user-select:none}
.trail-viewport:focus-visible{outline:2px solid var(--brown);outline-offset:-3px}
.trail-track{display:flex;width:max-content}
.trail-group{display:flex;gap:22px;padding-right:22px;flex-shrink:0}
.trail-group img{flex:0 0 340px;width:340px;height:240px;object-fit:cover;user-select:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:760px){.trail-strip{padding:24px 0 30px}.trail-strip-head{min-height:60px;padding:0 7% 16px;font-size:8px;letter-spacing:.5px}.trail-strip-controls{gap:5px}.trail-strip-controls button{font-size:8px;padding:6px;min-width:44px}.trail-group{gap:14px;padding-right:14px}.trail-group img{flex-basis:270px;width:270px;height:200px}}

/* Original illustrated logo and brief home entrance. */
.brand{display:inline-flex;align-items:center;gap:12px}
.brand-emblem{width:72px;height:48px;object-fit:contain;border-radius:2px}
.menu-brand .brand-emblem{width:96px;height:64px}
.footer-emblem{display:block;width:min(260px,65vw);margin:0 auto 30px}
.footer-emblem img{width:100%;height:auto;display:block}
.brand-intro{position:fixed;inset:0;z-index:1000;background:#10110e;display:grid;place-items:center;pointer-events:none}
.brand-intro[hidden]{display:none}
.brand-intro-inner{width:min(320px,75vw);text-align:center;color:var(--paper)}
.brand-intro-inner img{display:block;width:220px;max-width:100%;height:auto;margin:0 auto 24px;border-radius:3px}
.brand-intro-inner>span{display:block;font-size:12px;font-weight:700;letter-spacing:2px}
.brand-intro-bar{height:3px;background:#ffffff26;margin-top:24px;overflow:hidden}
.brand-intro-bar i{display:block;width:100%;height:100%;background:#c7a17c;transform:scaleX(0);transform-origin:left}
@media(max-width:760px){.brand{gap:9px}.brand-emblem{width:57px;height:38px}.menu-brand .brand-emblem{width:72px;height:48px}.brand-intro-inner img{width:190px}}

/* Familiar circular marks; the footer illustration becomes a quiet backdrop. */
.brand-emblem{width:52px;height:52px;object-fit:cover;border-radius:50%}
.menu-brand .brand-emblem{width:64px;height:64px}
.brand-intro-inner img{width:180px;height:180px;object-fit:cover;border-radius:50%}
.footer{position:relative;isolation:isolate}
.footer::before{content:"";position:absolute;inset:0;z-index:-1;background:url("assets/logo.png") center 48%/cover no-repeat;opacity:.16;mix-blend-mode:multiply;pointer-events:none}
@media(max-width:760px){.brand-emblem{width:44px;height:44px}.menu-brand .brand-emblem{width:52px;height:52px}.brand-intro-inner img{width:160px;height:160px}}

/* Three repeated gestures: a lift, a soft spring, and a drawn line. */
.brand-emblem{transition:transform 240ms cubic-bezier(.22,1,.36,1)}
.header .brand:focus-visible .brand-emblem{transform:scale(1.05) rotate(-3deg)}
.header .brand:active .brand-emblem{transform:scale(.95)}
.text-link{position:relative;border-bottom-color:transparent}
.text-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(.28);transform-origin:left;transition:transform 280ms cubic-bezier(.22,1,.36,1)}
.text-link:focus-visible::after{transform:scaleX(1)}
.text-link span,.link-button span{display:inline-block;transition:transform 240ms cubic-bezier(.22,1,.36,1)}
.text-link:focus-visible span,.link-button:focus-visible span{transform:translate(3px,-3px)}
.link-button{position:relative;isolation:isolate;overflow:hidden}
.link-button::before{content:"";position:absolute;inset:0;z-index:-1;background:#ffffff20;transform:translateX(-102%);transition:transform 300ms cubic-bezier(.22,1,.36,1)}
.link-button:focus-visible::before{transform:translateX(0)}
.motion-accent{position:relative;display:inline-block;padding-bottom:6px}
.motion-accent::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--brown);border-radius:45% 30% 50% 25%;transform-origin:left;transform:rotate(-1deg)}
.next[data-revealed] .motion-accent{animation:phrase-settle 480ms ease-out both}
.next[data-revealed] .motion-accent::after{animation:accent-draw 480ms 180ms cubic-bezier(.22,1,.36,1) backwards}
.photo-grid figcaption{transition:transform 240ms cubic-bezier(.22,1,.36,1)}
.photo-grid figure:focus-within figcaption{transform:translateY(-3px)}
.footer-bottom{position:relative;border-top-color:transparent}
.footer-bottom::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#ffffff55;transform-origin:left}
.footer.motion-entered::before{animation:footer-art-reveal 700ms cubic-bezier(.22,1,.36,1) backwards}
.footer.motion-entered .footer-bottom::before{animation:footer-line-draw 500ms 300ms cubic-bezier(.22,1,.36,1) backwards}
@keyframes logo-soft-spring{0%{transform:none}65%{transform:scale(1.055) rotate(-3deg)}85%{transform:scale(1.035) rotate(-1deg)}100%{transform:scale(1.05) rotate(-2deg)}}
@keyframes phrase-settle{0%{transform:translateX(-6px)}70%{transform:translateX(1px)}100%{transform:none}}
@keyframes accent-draw{from{transform:scaleX(0) rotate(-1deg)}to{transform:scaleX(1) rotate(-1deg)}}
@keyframes footer-art-reveal{from{transform:scale(.96);opacity:.08}to{transform:scale(1);opacity:.16}}
@keyframes footer-line-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(hover:hover) and (pointer:fine){
  .header .brand:hover .brand-emblem{animation:logo-soft-spring 360ms ease-out forwards}
  .header .brand:active .brand-emblem{animation:none;transform:scale(.95)}
  .text-link:hover::after{transform:scaleX(1)}
  .text-link:hover span,.link-button:hover span{transform:translate(3px,-3px)}
  .link-button:hover::before{transform:translateX(0)}
  .photo-grid figure:hover figcaption{transform:translateY(-3px)}
  .photo-grid .photo-button:hover img{transform:scale(1.035)}
}
@media(prefers-reduced-motion:reduce){
  .header .brand:hover .brand-emblem,.header .brand:focus-visible .brand-emblem,.header .brand:active .brand-emblem,
  .photo-grid figure:hover figcaption,.photo-grid figure:focus-within figcaption,.photo-grid .photo-button:hover img,
  .text-link:hover span,.text-link:focus-visible span,.link-button:hover span,.link-button:focus-visible span{transform:none}
}

/* More visible editorial movement, with stationary reading copy. */
.motion-banner{position:relative;padding:26px 0 48px;background:var(--ink);color:var(--paper);overflow:hidden}
.motion-banner-window{overflow:hidden}
.motion-banner-track{display:flex;width:max-content;animation:trail-words 26s linear infinite;animation-play-state:paused}
.motion-banner-track>span{flex-shrink:0;white-space:nowrap;font-family:var(--display);font-size:clamp(34px,5vw,72px);line-height:1.1;letter-spacing:-.02em}
.motion-banner-track i{font-style:normal;color:#c7a17c}
.motion-banner.ambient-visible .motion-banner-track{animation-play-state:running}
.ambient-pause{position:absolute;right:4%;bottom:4px;background:transparent;color:var(--paper);min-height:44px;font-size:9px;font-weight:700;letter-spacing:1px}
.ambient-pause:disabled{opacity:.65;cursor:default}
.story-photo{overflow:hidden}
.story-photo img{animation:trail-photo-breathe 10s ease-in-out infinite alternate;animation-play-state:paused;transform-origin:center}
.story-photo.ambient-visible img{animation-play-state:running}
.next .motion-accent.ambient-visible{animation:trail-phrase-drift 5s ease-in-out infinite}
.ambient-paused .motion-banner-track,.ambient-paused .story-photo img,.ambient-paused .motion-accent,
.ambient-background .motion-banner-track,.ambient-background .story-photo img,.ambient-background .motion-accent{animation-play-state:paused!important}
@keyframes trail-words{to{transform:translateX(-50%)}}
@keyframes trail-photo-breathe{from{transform:scale(1.01) translateY(0)}to{transform:scale(1.065) translateY(-4px)}}
@keyframes trail-phrase-drift{0%,100%{transform:translateX(-4px)}50%{transform:translateX(4px)}}
@media(max-width:760px){.motion-banner{padding:24px 0 44px}.ambient-pause{right:6%}.motion-banner-track{animation-duration:22s}}
@media(prefers-reduced-motion:reduce){.motion-banner-track{width:auto;display:block;padding:0 6%}.motion-banner-track>span{white-space:normal;font-size:30px;display:block}.motion-banner-track>span+span{display:none}.story-photo img,.motion-accent.ambient-visible{transform:none}}
