@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Montserrat:wght@400;500;600&display=swap";:root{--ink:#070a11;--navy:#0d1420;--cream:#f3ecde;--muted:#bdb5a7;--gold:#b99a61;--gold-pale:#d9c392;--serif:"Cormorant Garamond", Georgia, serif;--sans:Montserrat, Arial, sans-serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}body,#root{min-height:100%;margin:0}body{color:var(--cream);background:var(--ink);font-family:var(--serif)}body.modal-open{overflow:hidden}button{font:inherit}.experience{isolation:isolate;min-height:100svh;position:relative;overflow:hidden}.backdrop{z-index:-3;background-color:#0d1420;background-position:50%;background-repeat:no-repeat;background-size:cover;animation:28s ease-in-out infinite alternate drift;position:fixed;inset:-4%;transform:scale(1.02)}.experience:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(at 50% 28%,#0000 0,#00000024 45%,#000000c2 110%);position:fixed;inset:0}.grain{z-index:20;opacity:.032;pointer-events:none;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='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");animation:.24s steps(2,end) infinite grain;position:fixed;inset:-50%}.intro{min-height:100dvh;padding:max(2rem,env(safe-area-inset-top)) max(1.5rem,env(safe-area-inset-right)) max(2rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left));text-align:center;place-content:center;justify-items:center;animation:1.4s both intro-in;display:grid}.intro-rule{background:linear-gradient(transparent,var(--gold));width:1px;height:68px;margin-bottom:1.5rem;position:relative}.intro-rule span{border:1px solid var(--gold);background:var(--ink);width:7px;height:7px;position:absolute;bottom:-3px;left:-3px;transform:rotate(45deg)}.eyebrow,.clearance,.section-label,.evidence-meta,.audio-control,.scan-label,.clue-note,footer,.dossier-header{font-family:var(--sans);text-transform:uppercase}.eyebrow{color:var(--gold-pale);letter-spacing:.38em;margin:0;font-size:.65rem;font-weight:600;line-height:1.5}h1{letter-spacing:-.055em;text-transform:uppercase;text-shadow:0 4px 35px #000;margin:1.25rem 0 1.35rem;font-size:clamp(3.1rem,10vw,7.6rem);font-weight:500;line-height:.75}h1 em{color:var(--gold-pale);letter-spacing:.08em;text-transform:none;margin-top:.27em;font-size:.58em;font-weight:400;display:inline-block}.clearance{color:var(--muted);letter-spacing:.25em;margin:.5rem 0 3rem;font-size:.55rem}.begin-button{min-height:50px;color:var(--cream);font:500 .61rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;cursor:pointer;background:#060a1173;border:1px solid #b99a61b8;padding:0 1.65rem;transition:background .25s,color .25s,box-shadow .25s;position:relative}.begin-button:before,.begin-button:after{content:"";background:var(--gold);width:28px;height:1px;position:absolute;top:50%}.begin-button:before{right:calc(100% + 13px)}.begin-button:after{left:calc(100% + 13px)}.begin-button:hover,.begin-button:focus-visible{color:var(--ink);background:var(--gold-pale);outline:2px solid var(--cream);outline-offset:5px;box-shadow:0 0 40px #b99a612e}.is-begun .intro{display:none}.audio-control{z-index:15;top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));min-height:42px;color:var(--muted);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.13em;cursor:pointer;background:#070a11c7;border:1px solid #d9c39242;border-radius:30px;align-items:center;gap:.65rem;padding:.55rem .7rem;font-size:.51rem;display:flex;position:fixed}.audio-control:focus-visible,.evidence-card:focus-visible,.lightbox-close:focus-visible{outline:2px solid var(--gold-pale);outline-offset:4px}.sound-bars{align-items:center;gap:2px;height:12px;display:flex}.sound-bars i{background:var(--gold);width:2px;height:9px;animation:.8s ease-in-out infinite alternate sound;display:block}.sound-bars i:nth-child(2){height:12px;animation-delay:-.3s}.sound-bars i:nth-child(3){height:6px;animation-delay:-.55s}.sound-bars.is-quiet i{height:2px;animation:none}.letter{letter-spacing:.003em;width:min(100% - 2.5rem,680px);margin:0 auto;padding:clamp(5rem,13vh,9rem) 0 5rem;font-size:clamp(1.2rem,2.25vw,1.48rem);line-height:1.82;animation:1.2s both reveal}.letter p{text-wrap:pretty;margin:0 0 1.65em}.dossier-header{color:var(--gold);letter-spacing:.24em;border-bottom:1px solid #b99a6161;justify-content:space-between;padding-bottom:1rem;font-size:.55rem;display:flex}.salutation{color:var(--gold-pale);font-size:clamp(2.2rem,7vw,3.2rem);font-style:italic;line-height:1;margin:3.3rem 0 2.3rem!important}.emphasis{color:#fffaf0;font-size:clamp(1.55rem,4vw,2.15rem);font-weight:600;line-height:1.25;margin:2.5em 0!important}.emphasis:before{content:"";background:var(--gold);width:34px;height:1px;margin:0 13px 7px 0;display:inline-block}.warning{border-left:1px solid var(--gold);margin:3rem 0;padding:1.4rem 0 0 1.3rem}.warning p{margin:0 0 .15rem;font-size:1.5em;line-height:1.15}.final-order{font-size:clamp(1.4rem,3.4vw,1.82rem)}.signoff{margin:4rem 0 2rem}.signoff p{margin:0}.signoff p:last-child{color:var(--gold-pale);margin-top:.2rem;font-size:3rem;font-style:italic}.evidence-section{width:min(94vw,920px);margin:5rem 50% 6rem;transform:translate(-50%)}.section-label{color:var(--gold);text-align:center;letter-spacing:.25em;font-size:.54rem;margin:0 auto 2.6rem!important}.evidence-grid{grid-template-columns:repeat(3,1fr);align-items:center;display:grid}.evidence-card{color:#161616;cursor:zoom-in;background:#e8e3d9;border:0;width:100%;margin:0;padding:8px 8px 10px;transition:transform .35s,box-shadow .35s;display:block;box-shadow:0 18px 45px #0009}.evidence-card:hover{z-index:2;transform:rotate(0)translateY(-8px)scale(1.035);box-shadow:0 25px 55px #000000b3}.evidence-1{transform:rotate(-3.5deg)translate(8px)}.evidence-2{z-index:1;transform:rotate(1.4deg)translateY(-8px)}.evidence-3{transform:rotate(3deg)translate(-8px)}.photo-frame{aspect-ratio:4/3;background:#252525;display:grid;overflow:hidden}.photo-frame img{object-fit:cover;filter:grayscale(.7)contrast(1.08)sepia(.1);width:100%;height:100%}.asset-placeholder{color:#938c80;font:500 .55rem/1.6 var(--sans);letter-spacing:.08em;text-align:center;overflow-wrap:anywhere;background:linear-gradient(135deg,#24272a,#121416);place-content:center;padding:1rem;display:grid}.asset-placeholder small{color:var(--gold-pale);letter-spacing:.2em;text-transform:uppercase;font-size:.58rem}.evidence-meta{letter-spacing:.12em;justify-content:space-between;padding:.6rem .2rem 0;font-size:.44rem;display:flex}.clue{text-align:center;background:linear-gradient(#0000,#070a11e0 14%,#070a11 40%);justify-items:center;min-height:100svh;padding:clamp(6rem,14vh,10rem) 1.5rem;display:grid;position:relative}.clue:before{content:"";border:1px solid #b99a6114;border-radius:50%;width:min(600px,90vw);height:min(600px,90vw);position:absolute;top:10%;left:50%;transform:translate(-50%);box-shadow:0 0 80px #b99a610a}.clue h2{margin:1.1rem 0 3rem;font-size:clamp(2.5rem,7vw,4.5rem);font-weight:400;line-height:.95}.qr-shell{width:min(72vw,300px);box-shadow:0 0 0 1px var(--gold),0 0 70px #b99a6124;background:#fff;padding:18px;animation:4s ease-in-out infinite pulse;position:relative}.qr-shell img{aspect-ratio:1;object-fit:contain;width:100%;display:block}.qr-placeholder{aspect-ratio:1;color:#111;font-family:var(--sans);border:2px dashed #aaa;place-content:center;display:grid}.qr-placeholder span{letter-spacing:.1em;font-size:4rem;font-weight:600}.qr-placeholder small{margin-top:.3rem;font-size:.65rem}.scan-label{color:var(--gold-pale);letter-spacing:.38em;margin:2.4rem 0 .8rem;font-size:.75rem;font-weight:600}.clue-note{color:#7e7a73;letter-spacing:.2em;margin:0;font-size:.5rem}footer{padding:1.4rem max(1.5rem,env(safe-area-inset-right)) max(1.4rem,env(safe-area-inset-bottom));color:#6f6b64;letter-spacing:.2em;border-top:1px solid #b99a6121;justify-content:space-between;font-size:.48rem;display:flex}.lightbox{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#030508f0;place-items:center;padding:4rem 1.25rem 1.25rem;display:grid;position:fixed;inset:0}.lightbox figure{color:#171717;background:#e8e3d9;width:min(100%,900px);margin:0;padding:10px 10px 12px;box-shadow:0 20px 70px #000}.lightbox img{object-fit:contain;background:#111;width:100%;max-height:72vh;display:block}.lightbox figcaption{font:500 .55rem var(--sans);letter-spacing:.15em;text-transform:uppercase;justify-content:space-between;padding:.7rem .2rem 0;display:flex}.lightbox-close{top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));min-height:44px;color:var(--cream);font:500 .6rem var(--sans);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #ffffff4d;padding:.5rem .8rem;position:absolute}@keyframes intro-in{0%{opacity:0;transform:translateY(12px)}}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}}@keyframes drift{to{transform:scale(1.06)translate(-.7%,.5%)}}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(2%,-3%)}50%{transform:translate(-3%,2%)}75%{transform:translate(3%,3%)}}@keyframes sound{to{height:3px}}@keyframes pulse{50%{box-shadow:0 0 0 1px var(--gold),0 0 90px #b99a613d}}@media (width<=650px){.backdrop{background-position:58%}.letter{width:min(100% - 2.2rem,680px);padding-top:6rem}.evidence-section{margin-top:4rem;margin-bottom:5rem}.evidence-grid{grid-template-columns:1fr;width:min(82vw,370px);margin:auto}.evidence-card{margin-bottom:-.75rem}.evidence-1{transform:rotate(-2deg)}.evidence-2{transform:rotate(1.5deg)}.evidence-3{transform:rotate(-1deg)}.audio-control>span:last-child{display:none}.audio-control{justify-content:center;width:44px;padding:0}.begin-button:before,.begin-button:after{width:15px}.begin-button:before{right:calc(100% + 8px)}.begin-button:after{left:calc(100% + 8px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.backdrop{transform:none}}
