@font-face { font-family:'Display Fallback'; src:local('Georgia'); size-adjust:78%; }
:root{color-scheme:dark;--void:#0f0f0e;--paper:#e5dfd1;--muted:#a39e94;--line:#d9cbb426;--accent:#c3ac84}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--void);color:var(--paper);font:16px/1.75 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
body::after{content:'';position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.intro{align-items:center;justify-content:center;flex-direction:column;color:#c2c2bf;opacity:1;transition:opacity 1.5s ease-in-out;outline:none}
.intro.is-leaving{opacity:0;pointer-events:none}
.intro-quote{font:clamp(32px,4.4vw,64px)/1.3 'Instrument Serif','Display Fallback',Georgia,serif;letter-spacing:.01em;text-align:center;width:min(1000px,calc(100vw - 40px));animation:intro-ghost 4.8s ease-in-out infinite}
.intro-line{display:block;min-height:1.3em}
.intro-word{display:inline-block;white-space:nowrap}
.intro-char{display:inline-block;opacity:0;animation:intro-letter .65s ease-out var(--reveal-delay,0ms) both}
.intro-skip{position:absolute;right:24px;bottom:22px;min-height:44px;padding:8px 12px;border:0;background:transparent;color:#878782;font:11px 'Courier Prime','Courier New',monospace;cursor:pointer}
.intro-skip:hover{color:#d1d1ce}
.intro-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes intro-letter{from{opacity:0}to{opacity:1}}
/* The dossier's breathing glow, in neutral grey with a readable minimum. */
@keyframes intro-ghost{
 0%,100%{opacity:.16;text-shadow:0 0 5px #c2c2bf08}
 26%{opacity:.32;text-shadow:0 0 9px #c2c2bf24}
 52%{opacity:.58;text-shadow:0 0 13px #c2c2bf47}
 72%{opacity:.22;text-shadow:0 0 7px #c2c2bf14}
 88%{opacity:.36;text-shadow:0 0 10px #c2c2bf26}
}
::selection{background:#c3ac843d;color:#fff}
a{color:inherit;text-underline-offset:5px}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.intro-skip:focus-visible{outline:1px solid #969692;outline-offset:0}
img{max-width:100%;display:block}
button,input{font:inherit}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:'Instrument Serif','Display Fallback',Georgia,serif;font-weight:400;line-height:1.03}
em{font-weight:400}
.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}
.eyebrow,.site-header,.button,.text-link,.art-caption,.footer,.signup-label,.signup-status{font-family:'Courier Prime','Courier New',monospace}
.eyebrow{color:var(--accent);font-size:11px;letter-spacing:.17em;text-transform:uppercase;line-height:1.6}
.section{padding-block:100px;background:var(--void)}
.skip-link{position:absolute;left:24px;top:-100px;z-index:20;background:var(--void);padding:12px}
.skip-link:focus{top:15px}
.cinema{position:relative;min-height:100vh;min-height:100svh;display:grid;place-items:center;background:var(--void);padding:70px 24px 110px}
.cinema-stage{width:min(1280px,100%);display:grid;place-items:center;position:relative}
.cinema-play{display:flex;flex-direction:column;align-items:center;gap:20px;border:0;background:transparent;color:#aaa69d;padding:24px;cursor:pointer;font:11px/1.5 'Courier Prime',monospace;letter-spacing:.13em;text-transform:uppercase}
.cinema-play>span:first-child{font:48px/1 Georgia,serif;color:#aaa69d88;transition:color .3s}
.cinema-play:hover:not(:disabled)>span:first-child{color:#ddd8cb}
.cinema-play:disabled{cursor:default;color:#7d7b74}
.cinema-pending{font:10px/1.6 'Courier Prime',monospace;letter-spacing:.08em;color:#676660}
.cinema-video{width:100%;max-height:78svh;aspect-ratio:16/9;object-fit:contain;background:var(--void);animation:cinema-enter 1s ease both}
.cinema-error{font:12px/1.6 'Courier Prime',monospace;color:var(--muted);text-align:center;margin-top:15px}
.cinema [hidden]{display:none}
.cinema-continue{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 20px;color:#858279;font:10px/1.5 'Courier Prime',monospace;letter-spacing:.12em;text-decoration:none}
.cinema-continue:hover{color:#c4beb0}
@keyframes cinema-enter{from{opacity:0}to{opacity:1}}
.hero{position:relative;min-height:100vh;min-height:100svh;isolation:isolate;overflow:clip;background:var(--void)}
.hero-art{position:absolute;top:0;bottom:0;width:90%;right:-12%;z-index:-2}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--void) 0%,#0f0f0eb0 17%,#0f0f0e10 43%),linear-gradient(0deg,var(--void),#0f0f0e88 8%,#0f0f0e00 28%),linear-gradient(180deg,var(--void),#0f0f0e00 18%)}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:94px;font-size:10px;letter-spacing:.11em;text-transform:uppercase}
.studio{text-decoration:none;line-height:1.5}
.studio span{display:block;color:var(--muted);font-size:9px;letter-spacing:.2em}
.site-header nav{display:flex;gap:30px}
.site-header nav a{text-decoration:none;color:#c9c4b8}
.site-header nav a:hover{color:#fff}
.hero-copy{padding-block:clamp(80px,13vh,160px) 110px}
.hero h1{font-size:clamp(72px,10.4vw,158px);letter-spacing:-.035em;margin:21px 0 9px}
.hero-tagline{font-family:'Instrument Serif','Display Fallback',Georgia,serif;font-size:clamp(28px,3.1vw,43px);color:#d3c7b3}
.hero-description{max-width:380px;margin-top:26px;color:#c0bcb3;font-size:15px}
.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:50px;padding:12px 23px;border:1px solid #ad977266;font-size:11px;letter-spacing:.04em;text-decoration:none;background:#0f0f0e55;transition:border-color .2s,background .2s}
.button:hover{border-color:var(--accent);background:#c3ac8412}
.text-link{display:inline-flex;gap:13px;align-items:center;font-size:11px;color:#c5bdad;text-decoration:none;min-height:44px;border-bottom:1px solid var(--line)}
.text-link:hover{color:#fff;border-color:var(--accent)}
.hero-status{margin-top:22px;color:#9d978c;font:10px/1.6 'Courier Prime',monospace;letter-spacing:.05em}
.premise{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-top:clamp(140px,18svh,220px);padding-bottom:clamp(120px,16svh,190px)}
.premise h2{font-size:clamp(45px,5vw,70px);margin-top:20px}
.premise h2 em{color:#b9a280}
.prose{color:var(--muted);max-width:500px;font-size:16px}
.prose p+p{margin-top:22px}
.world{position:relative;min-height:145svh;display:grid;isolation:isolate;background:var(--void)}
.world-stage{position:sticky;top:0;height:100svh;grid-area:1/1;align-self:start;z-index:-1;pointer-events:none}
.world-photo{position:absolute;inset:0;overflow:hidden}
.world-photo img{width:100%;height:100%;object-fit:cover;object-position:60% center;opacity:.6;filter:saturate(.65);transform:translate3d(0,var(--scene-y,0px),0) scale(1.045)}
.world-stage::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,var(--void),#0f0f0e00 25%,#0f0f0e00 68%,var(--void)),linear-gradient(90deg,#0f0f0ebf,#0f0f0e33 55%,#0f0f0e00);pointer-events:none}
.art-caption{color:#827e75;font-size:9px;letter-spacing:.06em;line-height:1.6}
.world .art-caption{position:absolute;right:32px;bottom:24px;font-size:8px;z-index:1;color:#77736a}
.world-copy{grid-area:1/1;align-self:center;position:relative;display:flex;flex-direction:column;gap:28px;padding-block:35svh 45svh}
.world h2{font-size:clamp(56px,6.5vw,94px);margin-top:12px}
.world .prose{max-width:440px;color:#bdb7aa}
.experience{position:relative;isolation:isolate;display:grid;min-height:145svh;background:var(--void)}
.experience-stage{position:sticky;top:0;height:100svh;grid-area:1/1;align-self:start;z-index:-1;pointer-events:none}
.experience-copy{grid-area:1/1;align-self:center;position:relative;padding-block:35svh 45svh}
.experience-copy .prose{margin-top:28px;max-width:440px;color:#bdb7aa}
.experience h2{margin-top:18px;font-size:clamp(44px,4.5vw,64px);max-width:620px}
.ritual-photo{position:absolute;inset:0;z-index:-1;margin:0;pointer-events:none}
.ritual-photo .art-frame{position:absolute;inset:0;overflow:hidden}
.ritual-photo img{width:100%;height:100%;object-fit:cover;object-position:center 66%;filter:saturate(.5);opacity:.42;transform:translate3d(0,var(--scene-y,0px),0) scale(1.045)}
.ritual-photo::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,var(--void),#0f0f0e00 30%,#0f0f0e00 68%,var(--void)),linear-gradient(90deg,#0f0f0ed9,#0f0f0e66 55%,#0f0f0e00);pointer-events:none;z-index:1}
.ritual-photo .art-caption{position:absolute;right:32px;bottom:24px;font-size:8px;color:#77736a;z-index:2}
.invocation{position:relative;isolation:isolate;min-height:100svh;display:grid;align-items:center;padding-block:clamp(160px,22svh,260px)}
.invocation-art{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.invocation-art img{width:100%;height:100%;object-fit:cover;object-position:65% center;opacity:.23;filter:saturate(.45)}
.invocation-art::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,var(--void),#0f0f0e00 28%,#0f0f0e00 65%,var(--void)),linear-gradient(90deg,var(--void),#0f0f0e88 65%)}
.invocation-art .art-caption{position:absolute;right:32px;bottom:24px;font-size:8px;z-index:1}
.invocation-copy{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.invocation h2{font-size:clamp(44px,4.5vw,64px);margin-top:20px}
.invocation h2 em{color:#b9a280}
.invocation .prose{color:#bdb7aa}
.invocation-last{font:clamp(26px,2.5vw,34px)/1.3 'Instrument Serif','Display Fallback',Georgia,serif;color:#dbd1c0}
.creed{position:relative;padding-block:120px;background:var(--void);text-align:center}
.creed-content{max-width:820px}
.creed h2{font-size:clamp(20px,2.4vw,34px);line-height:1.35;letter-spacing:.1em;text-transform:uppercase}
.creed-not{display:none;color:#bf5c58;font:inherit;letter-spacing:inherit}
.creed-lists{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:38px}
.creed-group{text-align:left;padding:26px 32px}
.creed-group h3{font:10px/1.6 'Courier Prime',monospace;letter-spacing:.18em;text-transform:uppercase;color:#918a7e;margin:0 0 22px}
.creed-label-prefix{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.creed-group ul{list-style:none;margin:0;padding:0}
.creed-group li{font:clamp(13px,1.1vw,16px)/1.7 Georgia,serif;font-variant-caps:small-caps;letter-spacing:.055em;color:#beb7aaad;margin:0 0 16px}
.creed-group li:last-child{margin-bottom:0}
.creed.is-sequenced{height:220svh;min-height:1200px;padding:0}
.creed.is-sequenced .creed-stage{position:sticky;top:0;height:100svh;display:grid;align-items:center}
.creed.is-sequenced .creed-not{display:inline-block;max-width:calc(var(--not-opacity,0) * 3em);overflow:clip;white-space:nowrap;vertical-align:baseline;opacity:var(--not-opacity,0);transform:translateY(calc((1 - var(--not-opacity,0)) * 8px))}
.creed.is-sequenced [data-creed-group='not']{opacity:var(--not-opacity,0)}
.creed.is-sequenced li{opacity:var(--line-opacity,0);transform:translateY(calc((1 - var(--line-opacity,0)) * 12px))}
.case-intro{text-align:center;padding:clamp(100px,14svh,180px) 24px 0}
.case-intro h2{font-size:clamp(42px,4.5vw,66px);margin:18px 0}
main #file.dossier-section{padding-bottom:clamp(120px,16svh,190px)}
.signup{padding:clamp(130px,18svh,220px) 0 clamp(130px,18svh,220px);text-align:center;border-top:1px solid var(--line)}
.signup h2{font-size:clamp(50px,6vw,84px);margin:22px 0}
.signup-copy{max-width:460px;margin:auto;color:var(--muted);font-size:15px}
.signup-form{max-width:570px;margin:30px auto 0;text-align:left}
.signup-label{display:block;font-size:10px;color:var(--muted);margin-bottom:9px;letter-spacing:.08em}
.signup-fields{display:flex;border:1px solid #c3ac843d}
.signup-fields input{min-width:0;flex:1;border:0;background:transparent;padding:16px 18px;color:var(--paper);font-size:14px}
.signup-fields input::placeholder{color:#79766f}
.signup-fields button{background:#c3ac840c;color:#aca293;border:0;border-left:1px solid var(--line);padding:16px 20px;font:10px/1.5 'Courier Prime',monospace}
.signup-fields :disabled{cursor:not-allowed;opacity:1}
.signup-status{margin-top:12px;font-size:10px;color:#928b7e;text-align:center}
.footer{min-height:110px;padding-block:28px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.1em;color:#8c877d}
.footer a{text-decoration:none}
.footer a:hover{color:var(--paper)}
@media(min-width:1800px){.hero-art{width:80%;right:-5%}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}
.premise{gap:48px}
.hero-art{right:-23%;width:110%}
.hero-description{max-width:330px}
}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}
.site-header{min-height:76px;gap:12px}
.site-header nav{gap:20px}
.site-header nav a:first-child{display:none}
.hero-art{width:140%;right:-20%;height:100%;bottom:0}
.hero-art img{object-position:50% 20%}
.hero-art::after{background:linear-gradient(0deg,var(--void),#0f0f0ebf 16%,#0f0f0e00 52%),linear-gradient(90deg,#0f0f0e55,#0f0f0e00 65%),linear-gradient(180deg,var(--void),#0f0f0e00 24%)}
.hero-copy{padding-top:278px;padding-bottom:65px}
.hero h1{font-size:16.2vw;margin-top:16px}
.hero-copy>.eyebrow{font-size:9px;letter-spacing:.08em}
.hero-tagline{font-size:31px}
.hero-description{max-width:100%;font-size:14px;margin-top:20px}
.hero-actions{gap:18px;margin-top:26px}
.button{padding-inline:19px;gap:17px}
.hero-status{margin-top:16px}
.premise{grid-template-columns:1fr;gap:28px}
.premise{padding-block:110px 120px}
.premise h2{font-size:49px}
.prose{font-size:15px}
.world{min-height:125svh}
.world-photo img{object-position:63% center;opacity:.48}
.world-copy{padding-block:28svh 36svh}
.world h2{font-size:70px}
.world .prose{max-width:310px}
.experience{min-height:125svh}
.experience-copy{padding-block:28svh 36svh}
.experience h2{font-size:49px}
.invocation{padding-block:130px}
.invocation-copy{grid-template-columns:1fr;gap:34px}
.invocation h2{font-size:49px}
.creed.is-sequenced .creed-lists{margin-top:30px}
.creed-group{padding:22px 14px}
.creed-group h3{font-size:9px;margin-bottom:18px}
.creed-group li{letter-spacing:.025em}
.experience-list{margin-top:28px}
.ritual-photo img{opacity:.33;object-position:62% 60%}
.case-intro{padding-top:100px}
.case-intro h2{font-size:44px}
main #file.dossier-section{padding-bottom:100px}
.signup{padding-block:100px 110px}
.signup h2{font-size:55px}
.signup-fields{flex-direction:column}
.signup-fields button{border-left:0;border-top:1px solid var(--line);padding-block:14px}
.footer{align-items:start;flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{transition-duration:0s!important}}

.premise>*,.world-copy>*,.experience>* { min-width:0; }
/* A quiet passage: a single word changes in response to the reader's scroll. */
.prose--intimate { font-family:'Instrument Serif','Display Fallback',Georgia,serif; font-size:clamp(25px,2.5vw,34px); line-height:1.45; color:#b5aea0; }
.experience { align-items:center; }
.experience-copy>.prose { margin-top:35px; }
.descent { position:relative; height:140svh; min-height:900px; background:var(--void); }
.descent-stage { position:sticky; top:22svh; height:56svh; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:30px 20px; text-align:center; overflow:clip; }
.descent-word { position:relative; font-family:'Instrument Serif','Display Fallback',Georgia,serif; font-size:clamp(65px,10vw,145px); line-height:1.2; letter-spacing:.07em; text-indent:.07em; width:9ch; color:#c4b8a3; }
.descent-line { margin-top:45px; font-family:'Instrument Serif','Display Fallback',Georgia,serif; font-size:clamp(25px,3vw,38px); font-style:italic; color:#928779; }
.descent-static { font:12px/1.6 'Courier Prime',monospace; color:var(--muted); margin-top:20px; }
.descent-word::before,.descent-word::after { content:attr(data-now); position:absolute; inset:0; pointer-events:none; opacity:0; }
.descent-word.is-torn::before { color:#b8b4ac; opacity:.45; animation:word-tear-a .21s steps(1) 1; }
.descent-word.is-torn::after { color:#8a8882; opacity:.35; animation:word-tear-b .21s steps(1) 1; }
@keyframes word-tear-a { 0% { transform:translate(-4px,-1px);clip-path:inset(0 0 60%); } 30% { transform:translate(5px,1px);clip-path:inset(45% 0 20%); } 65% { transform:translate(-5px,0);clip-path:inset(15% 0 65%); } 100% { transform:translate(3px,-1px);clip-path:inset(70% 0 0); } }
@keyframes word-tear-b { 0% { transform:translate(4px,0);clip-path:inset(60% 0 0); } 35% { transform:translate(-5px,-1px);clip-path:inset(20% 0 45%); } 70% { transform:translate(4px,1px);clip-path:inset(65% 0 10%); } 100% { transform:translate(-2px,0);clip-path:inset(0 0 70%); } }
@media(max-width:650px) { .prose--intimate { font-size:27px; } .descent { height:130svh;min-height:760px; } .descent-stage { top:18svh;height:64svh; } .descent-word { font-size:clamp(52px,15vw,80px); } .descent-line { margin-top:32px; } }
@media(prefers-reduced-motion:reduce) { .descent-word.is-torn,.descent-word.is-torn::before,.descent-word.is-torn::after { animation:none; } .descent-word::before,.descent-word::after { display:none; } }
.art-frame { overflow:clip; }
@media(prefers-reduced-motion:reduce){.intro-char{animation:none;opacity:1}.intro-quote{animation:none;opacity:.58;text-shadow:0 0 4px #c2c2bf10}.world-stage,.experience-stage{position:absolute;inset:0;height:100%}.world-photo img,.ritual-photo img{transform:none}.cinema-video{animation:none}}
@media(max-width:360px){.creed-content.wrap{width:calc(100% - 24px)}.creed-group{padding-inline:10px}}
