:root{--color-bg: #0a0a0a;--color-text: #e8e4df;--color-accent: #c9b99a;--color-muted: rgba(232, 228, 223, .72);--font-display: "Cormorant Garamond", serif;--font-body: "Outfit", sans-serif;--text-shadow-overlay: 0 1px 8px rgba(0, 0, 0, .55), 0 0 2px rgba(0, 0, 0, .4)}*{margin:0;padding:0;box-sizing:border-box}button:focus-visible,[tabindex]:focus-visible,a:focus-visible{outline:1px solid var(--color-accent);outline-offset:4px;outline-style:solid}.pin:focus-visible{outline:none}.pin:focus-visible .pin-dot{transform:scale(1.6);box-shadow:0 0 22px #c9b99ae6}.pin:focus-visible .pin-card{background:#0a0a0a80;outline:1px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.scroll-line{animation:none!important;opacity:.8!important}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);cursor:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}body.no-scroll,html.no-scroll{overflow:hidden}body.in-finale .look-info,body.in-finale .scroll-hint,body.in-finale .credits-marquee,body.in-finale .credits-cartel{opacity:0!important;pointer-events:none!important;transition:opacity .6s ease}@media (pointer: coarse){body{cursor:auto}.cursor-ring,.cursor-dot{display:none!important}}.cursor-ring{position:fixed;width:12px;height:12px;border:1px solid var(--color-accent);border-radius:50%;pointer-events:none;z-index:9999;transition:transform .15s ease;mix-blend-mode:difference;top:0;left:0;transform:translate3d(-100px,-100px,0)}.cursor-dot{position:fixed;width:3px;height:3px;background:var(--color-accent);border-radius:50%;pointer-events:none;z-index:9999;top:0;left:0;transform:translate3d(-100px,-100px,0)}#canvas-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1}canvas{display:block}#scroll-container{position:relative;z-index:0;height:800vh;width:100%}.overlay{position:fixed;z-index:10;pointer-events:none;text-shadow:var(--text-shadow-overlay)}.audio-toggle,.lang-toggle,.credits-marquee,.credits-cartel,.pin,.poster-toast{text-shadow:var(--text-shadow-overlay)}.brand{top:40px;left:50%;transform:translate(-50%);text-align:center}.brand h1{font-family:var(--font-display);font-weight:300;font-size:1.1rem;letter-spacing:1.2em;text-transform:uppercase;color:var(--color-text);opacity:0;animation:fadeIn 2s ease .5s forwards}.brand .subtitle{font-family:var(--font-body);font-weight:300;font-size:.62rem;letter-spacing:.5em;color:var(--color-muted);margin-top:8px;opacity:0;animation:fadeIn 2s ease 1s forwards}.season-tag{bottom:40px;left:40px;writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--font-body);font-weight:400;font-size:.7rem;letter-spacing:.45em;color:#e8e4dfd9;opacity:0;animation:fadeIn 2s ease 1.5s forwards;text-shadow:0 1px 10px rgba(0,0,0,.8),0 0 2px rgba(0,0,0,.6)}.look-counter{bottom:40px;right:40px;text-align:right;opacity:0;animation:fadeIn 2s ease 1.5s forwards}.look-counter .current{font-family:var(--font-display);font-weight:300;font-size:3rem;line-height:1;color:var(--color-accent)}.look-counter .total{font-family:var(--font-body);font-weight:200;font-size:.6rem;letter-spacing:.3em;color:var(--color-muted)}.look-info{top:50%;right:60px;transform:translateY(-50%);text-align:right;transition:opacity .8s ease}.look-info .look-name{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:1.8rem;color:var(--color-text);perspective:600px;display:block}.look-info .look-fabric{font-family:var(--font-body);font-weight:300;font-size:.62rem;letter-spacing:.4em;text-transform:uppercase;color:var(--color-accent);margin-top:12px}.look-info .look-desc{font-family:var(--font-body);font-weight:300;font-size:.76rem;color:#e8e4dfe0;margin-top:10px;max-width:230px;margin-left:auto;line-height:1.65;opacity:0;transform:translateY(15px);transition:all .8s cubic-bezier(.16,1,.3,1) .5s}.look-info.visible .look-desc{opacity:1;transform:translateY(0)}.look-info .look-name .char{display:inline-block;opacity:0;transform:translateY(.6em) rotateX(-75deg);transform-origin:50% 100%;transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i, 0) * 35ms)}.look-info.visible .look-name .char{opacity:1;transform:translateY(0) rotateX(0)}.look-info .look-fabric .word{display:inline-block;opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .55s cubic-bezier(.16,1,.3,1);transition-delay:calc(.28s + var(--i, 0) * 55ms)}.look-info.visible .look-fabric .word{opacity:1;transform:translateY(0)}.scroll-hint{bottom:56px;left:50%;transform:translate(-50%);text-align:center;opacity:0;animation:fadeIn 2s ease 2.5s forwards,scrollHintBob 2.6s ease-in-out 4.5s infinite;transition:opacity .6s ease;z-index:25}.scroll-hint.hidden{opacity:0!important;animation-play-state:paused}.scroll-hint .scroll-hint-main{font-family:var(--font-body);font-weight:400;font-size:.78rem;letter-spacing:.55em;text-transform:uppercase;color:var(--color-accent);display:block;text-shadow:0 2px 14px rgba(0,0,0,.7)}.scroll-hint .scroll-hint-sub{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:.85rem;letter-spacing:.04em;color:#e8e4dfd9;display:block;margin-top:8px;text-shadow:0 2px 12px rgba(0,0,0,.7)}.scroll-line{width:1px;height:64px;background:linear-gradient(to bottom,var(--color-accent),transparent);margin:16px auto 0;animation:scrollPulse 1.6s ease infinite;position:relative}.scroll-line:after{content:"";position:absolute;left:50%;bottom:-3px;transform:translate(-50%) rotate(45deg);width:8px;height:8px;border-right:1px solid var(--color-accent);border-bottom:1px solid var(--color-accent);box-shadow:2px 2px 8px #c9b99a66}@keyframes scrollHintBob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-8px)}}.poster-hint{top:40px;left:40px;display:flex;align-items:center;gap:10px;opacity:0;animation:fadeIn 2s ease 3s forwards;transition:opacity .6s ease;pointer-events:none}.poster-hint-key{font-family:var(--font-body);font-weight:400;font-size:.62rem;letter-spacing:.1em;color:var(--color-accent);background:transparent;border:1px solid var(--color-accent);padding:4px 9px;min-width:22px;text-align:center}.poster-hint-label{font-family:var(--font-body);font-weight:300;font-size:.55rem;letter-spacing:.4em;text-transform:uppercase;color:var(--color-muted)}.intro-overlay{position:fixed;inset:0;background:var(--color-bg);z-index:100;overflow:hidden;transition:opacity 1.2s ease}.intro-overlay.hidden{opacity:0;pointer-events:none}.intro-corner{position:absolute;font-family:var(--font-body);font-weight:200;font-size:.62rem;letter-spacing:.5em;text-transform:uppercase;color:var(--color-muted);opacity:0;transform:translateY(6px);transition:opacity .7s ease,transform .8s cubic-bezier(.16,1,.3,1)}.intro-corner.revealed{opacity:1;transform:translateY(0)}.intro-corner--tl{top:46px;left:56px}.intro-corner--tr{top:46px;right:56px}.intro-corner--bl{bottom:46px;left:56px}.intro-corner--br{bottom:46px;right:56px}.intro-playing .intro-corner{animation:introCornerIn .7s cubic-bezier(.16,1,.3,1) both}.intro-playing .intro-corner--tl{animation-delay:1.3s}.intro-playing .intro-corner--tr{animation-delay:1.37s}.intro-playing .intro-corner--bl{animation-delay:1.44s}.intro-playing .intro-corner--br{animation-delay:1.51s}@keyframes introCornerIn{to{opacity:1;transform:translateY(0)}}.intro-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:100%;padding:0 2rem;pointer-events:none}.intro-title{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(3rem,10vw,8.5rem);letter-spacing:.12em;line-height:.95;color:var(--color-text);perspective:800px;margin-bottom:2.2rem}.intro-title .char{display:inline-block;opacity:0;transform:translateY(.5em) rotateX(-70deg);transform-origin:50% 100%;will-change:transform,opacity}.intro-title .char--space{width:.35em}.intro-playing .intro-title .char{animation:introCharIn .9s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--char-index, 0) * 35ms)}@keyframes introCharIn{to{opacity:1;transform:translateY(0) rotateX(0)}}.intro-banner{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin:0 auto 1.6rem;max-width:520px}.intro-banner-line{flex:1 1 auto;height:1px;background:var(--color-accent);transform:scaleX(0);transform-origin:center}.intro-banner-line:first-child{transform-origin:right}.intro-banner-line:last-child{transform-origin:left}.intro-playing .intro-banner-line{animation:introLineIn .9s cubic-bezier(.77,0,.175,1) .5s both}@keyframes introLineIn{to{transform:scaleX(1)}}.intro-banner-label{font-family:var(--font-body);font-weight:200;font-size:.62rem;letter-spacing:.55em;text-transform:uppercase;color:var(--color-accent);white-space:nowrap;opacity:0;transform:translateY(6px)}.intro-playing .intro-banner-label{animation:introBannerLabelIn .7s cubic-bezier(.16,1,.3,1) .85s both}@keyframes introBannerLabelIn{to{opacity:1;transform:translateY(0)}}.intro-season{font-family:var(--font-body);font-weight:200;font-size:.78rem;letter-spacing:.48em;text-transform:uppercase;color:var(--color-text);opacity:0}.intro-playing .intro-season{opacity:1}.intro-season .word{display:inline-block;opacity:0;transform:translateY(8px)}.intro-playing .intro-season .word{animation:introWordIn .5s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--word-index, 0) * 50ms + 1.2s)}@keyframes introWordIn{to{opacity:1;transform:translateY(0)}}.intro-progress-wrap{position:absolute;bottom:44px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:1rem;opacity:0}.intro-playing .intro-progress-wrap{animation:introFadeIn .6s ease 1.6s both}@keyframes introFadeIn{to{opacity:1}}.intro-progress-rail{width:280px;height:1px;background:#e8e4df14;overflow:hidden;position:relative}.intro-progress-fill{position:absolute;top:0;left:0;height:100%;width:0%;background:var(--color-accent);transition:width .25s ease}.intro-progress-label{font-family:var(--font-body);font-weight:200;font-size:.5rem;letter-spacing:.5em;color:var(--color-muted);min-width:3ch;text-align:left}.crossfade-overlay{position:fixed;inset:0;z-index:9;pointer-events:none;overflow:hidden;background:var(--color-bg);will-change:opacity}.crossfade-overlay canvas{display:block;width:100%;height:100%;object-fit:cover}.flash{position:fixed;inset:0;background:#fff;pointer-events:none;z-index:8;opacity:0;transition:opacity .05s ease}.flash.active{opacity:.8}.pin-layer{position:fixed;inset:0;pointer-events:none;z-index:15}.pin{position:absolute;top:0;left:0;transform:translate3d(-100px,-100px,0);transition:opacity .25s ease;will-change:transform,opacity;background:transparent;border:none;padding:0;font:inherit;cursor:none;display:block}.pin-dot{width:16px;height:16px;border:1px solid var(--color-accent);border-radius:50%;background:#0a0a0a59;backdrop-filter:blur(2px);position:absolute;top:-8px;left:-8px;box-shadow:0 0 16px #c9b99a73;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease}.pin-dot:after{content:"";position:absolute;inset:4px;background:var(--color-accent);border-radius:50%;transition:transform .3s cubic-bezier(.16,1,.3,1)}.pin-dot:before{content:"";position:absolute;top:50%;left:100%;width:44px;height:1px;background:linear-gradient(to right,#c9b99a8c,#c9b99a00);transform:translateY(-.5px);pointer-events:none}.pin:hover .pin-dot,.pin.expanded .pin-dot{transform:scale(1.5);box-shadow:0 0 28px #c9b99ad9}.pin-card{position:absolute;top:-14px;left:52px;padding:12px 40px 12px 18px;border-left:1px solid var(--color-accent);white-space:nowrap;backdrop-filter:blur(4px);background:#0a0a0a73;transition:padding .35s cubic-bezier(.16,1,.3,1),background-color .35s ease,max-width .35s cubic-bezier(.16,1,.3,1);display:block;text-align:left}.pin-toggle{position:absolute;top:10px;right:12px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-weight:200;font-size:1.1rem;line-height:1;color:var(--color-accent);transition:transform .35s cubic-bezier(.16,1,.3,1);transform-origin:center}.pin.expanded .pin-toggle{transform:rotate(45deg)}.pin:hover .pin-card{background:#0a0a0aa6}.pin-label{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:1.15rem;color:var(--color-text);line-height:1.15;display:block}.pin-detail{font-family:var(--font-body);font-weight:300;font-size:.6rem;letter-spacing:.32em;text-transform:uppercase;color:var(--color-accent);margin-top:8px;display:block}.pin-description{font-family:var(--font-body);font-weight:300;font-size:.78rem;line-height:1.6;color:#e8e4dfe0;margin-top:14px;display:block;white-space:normal;max-width:0;max-height:0;opacity:0;overflow:hidden;transition:opacity .3s ease,max-width .4s cubic-bezier(.16,1,.3,1),max-height .4s cubic-bezier(.16,1,.3,1),margin-top .4s cubic-bezier(.16,1,.3,1)}.pin.expanded .pin-card{background:#0a0a0ac7;padding:16px 22px 20px}.pin.expanded .pin-description{max-width:320px;max-height:280px;opacity:1}@media (pointer: coarse){.pin{cursor:pointer}}@media (max-width: 768px){.pin-card{left:16px;padding:8px 10px}.pin-label{font-size:.8rem}.pin-detail{font-size:.5rem;letter-spacing:.25em}.pin.expanded .pin-description{max-width:220px;font-size:.65rem}}.progress-bar{position:fixed;bottom:0;left:0;height:2px;background:linear-gradient(to right,transparent 0%,var(--color-accent) 30%,var(--color-accent) 70%,transparent 100%);box-shadow:0 0 14px #c9b99a66;z-index:20;width:0%;transition:width .1s linear}.progress-bar:after{content:"";position:absolute;right:-3px;top:-2px;width:6px;height:6px;background:var(--color-accent);border-radius:50%;box-shadow:0 0 10px #c9b99ae6}.audio-toggle{position:fixed;top:40px;right:40px;z-index:30;background:transparent;border:1px solid var(--color-muted);padding:10px 14px;display:flex;gap:10px;align-items:center;font-family:var(--font-body);font-weight:200;font-size:.55rem;letter-spacing:.4em;text-transform:uppercase;color:var(--color-text);cursor:none;pointer-events:auto;opacity:0;animation:fadeIn 2s ease 2s forwards;transition:border-color .3s ease,color .3s ease}.audio-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.audio-toggle-state{color:var(--color-accent);font-weight:400}.audio-toggle[data-on=true] .audio-toggle-state{color:var(--color-text)}.lang-toggle{position:fixed;top:40px;right:188px;z-index:30;background:transparent;border:1px solid var(--color-muted);padding:10px 14px;display:flex;gap:6px;align-items:center;font-family:var(--font-body);font-weight:200;font-size:.55rem;letter-spacing:.4em;text-transform:uppercase;color:var(--color-text);cursor:none;pointer-events:auto;opacity:0;animation:fadeIn 2s ease 2s forwards;transition:border-color .3s ease,color .3s ease}.lang-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.lang-toggle-current{color:var(--color-accent);font-weight:400}.lang-toggle-sep{opacity:.4}.lang-toggle-other{opacity:.6}@media (pointer: coarse){.audio-toggle,.lang-toggle{cursor:pointer}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes introReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes lineReveal{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes scrollPulse{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(5px)}}@media (max-width: 768px){.brand{top:24px}.brand h1{font-size:.75rem;letter-spacing:.8em}.season-tag{bottom:24px;left:20px;font-size:.45rem}.look-counter{bottom:24px;right:20px}.look-counter .current{font-size:2rem}.look-info{inset:auto auto 100px 20px;text-align:left;transform:none}.look-info .look-name{font-size:1.3rem}.look-info .look-desc{margin-left:0;max-width:60vw}.scroll-hint{bottom:60px}.intro-overlay h1{letter-spacing:.4em}.audio-toggle{top:20px;right:20px;padding:8px 10px;font-size:.45rem;letter-spacing:.3em}.lang-toggle{top:20px;right:130px;padding:8px 10px;font-size:.45rem;letter-spacing:.3em}}.finale-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;z-index:40;background:linear-gradient(180deg,#0a0a0ad1,#0a0a0a59 35% 65%,#0a0a0aeb);transition:opacity 1s ease}.finale-overlay.visible{opacity:1;pointer-events:auto}.finale-inner{width:min(920px,88vw);text-align:center;padding:4rem 1.5rem 3.5rem}.finale-stamp{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin-bottom:2.2rem}.finale-stamp-line{flex:0 1 60px;height:1px;background:#c9b99a80}.finale-stamp-label{font-family:var(--font-body);font-weight:200;font-size:.62rem;letter-spacing:.55em;text-transform:uppercase;color:var(--color-accent);white-space:nowrap}.finale-title{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(3rem,9vw,7.2rem);line-height:.95;color:var(--color-text);letter-spacing:.04em;perspective:900px}.finale-title span{display:inline-block;transform-origin:50% 100%;will-change:transform,opacity}.finale-title-a{margin-right:.2em}.finale-subtitle{margin-top:1.2rem;font-family:var(--font-body);font-weight:200;font-size:.8rem;letter-spacing:.45em;text-transform:uppercase;color:var(--color-muted)}.finale-divider{width:0;max-width:280px;height:1px;margin:2.4rem auto;background:#c9b99a66;transform:scaleX(0);transform-origin:center;transition:transform .8s cubic-bezier(.16,1,.3,1)}.finale-overlay.visible .finale-divider{width:280px;transform:scaleX(1)}.finale-credits{list-style:none;padding:0;margin:0 auto 2.6rem;max-width:620px;text-align:left}.finale-credit{display:grid;grid-template-columns:56px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(232,228,223,.08);align-items:baseline}.finale-credit:last-child{border-bottom:none}.finale-credit-num{font-family:var(--font-body);font-weight:200;font-size:.6rem;letter-spacing:.45em;color:#c9b99aa6;padding-top:.4rem}.finale-credit-body{display:flex;flex-direction:column;gap:.25rem}.finale-credit-name{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:1.35rem;color:var(--color-text);letter-spacing:-.005em}.finale-credit-title{font-family:var(--font-body);font-weight:200;font-size:.7rem;color:#e8e4dfb8;letter-spacing:.08em}.finale-credit-meta{font-family:var(--font-body);font-weight:300;font-size:.58rem;letter-spacing:.35em;text-transform:uppercase;color:var(--color-accent);text-decoration:none;margin-top:.15rem;transition:color .3s ease,letter-spacing .3s ease}a.finale-credit-meta:hover{color:var(--color-text);letter-spacing:.42em}.finale-submit{margin:2.2rem auto 0;padding:1.6rem 1.8rem;border:1px solid rgba(201,185,154,.35);max-width:520px;text-align:center}.finale-submit-title{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:1.5rem;letter-spacing:.02em;color:var(--color-accent);margin-bottom:.7rem}.finale-submit-body{font-family:var(--font-body);font-weight:300;font-size:.75rem;line-height:1.6;letter-spacing:.05em;color:#e8e4dfc7;margin:0 0 1.2rem}.finale-submit-cta{display:inline-block;font-family:var(--font-body);font-weight:400;font-size:.62rem;letter-spacing:.55em;text-transform:uppercase;color:var(--color-accent);border-bottom:1px solid currentColor;padding-bottom:4px;text-decoration:none;transition:color .3s ease,letter-spacing .3s ease}.finale-submit-cta:hover{color:var(--color-text);letter-spacing:.62em}.finale-author{margin:1.4rem auto 0;max-width:520px;display:flex;flex-wrap:wrap;gap:.5em;justify-content:center;align-items:center;font-family:var(--font-body);font-weight:300;font-size:.58rem;letter-spacing:.35em;text-transform:uppercase;color:#e8e4df8c}.finale-author-label{opacity:.7}.finale-author-name{color:var(--color-text);font-weight:400;letter-spacing:.42em}.finale-author-sep{opacity:.4;letter-spacing:.2em}.finale-author-link{color:var(--color-accent);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px;transition:color .3s ease,border-color .3s ease}.finale-author-link:hover{color:var(--color-text);border-bottom-color:currentColor}.finale-cta{margin-top:.5rem}.finale-replay{background:transparent;border:none;cursor:pointer;color:var(--color-accent);padding:1rem 0;display:inline-flex;align-items:center;gap:1rem;transition:color .3s ease,gap .35s cubic-bezier(.16,1,.3,1)}.finale-replay-line{width:44px;height:1px;background:currentColor;transition:width .35s ease}.finale-replay-label{font-family:var(--font-body);font-weight:300;font-size:.65rem;letter-spacing:.55em;text-transform:uppercase;white-space:nowrap}.finale-replay:hover{color:var(--color-text);gap:1.5rem}.finale-replay:hover .finale-replay-line{width:60px}.finale-footer{margin-top:2rem;font-family:var(--font-body);font-weight:200;font-size:.5rem;letter-spacing:.55em;text-transform:uppercase;color:#e8e4df59}@media (max-width: 700px){.finale-title{font-size:clamp(2.4rem,13vw,4.5rem)}.finale-credit-name{font-size:1.1rem}.finale-credit-title{font-size:.62rem}.finale-credit{grid-template-columns:44px 1fr}}.poster-toast{position:fixed;bottom:44px;left:50%;transform:translate(-50%,14px);padding:14px 28px;background:#0a0a0ad9;border:1px solid rgba(201,185,154,.35);backdrop-filter:blur(8px);font-family:var(--font-body);font-weight:300;font-size:.65rem;letter-spacing:.4em;text-transform:uppercase;color:var(--color-accent);opacity:0;pointer-events:none;z-index:30;transition:opacity .35s ease,transform .45s cubic-bezier(.16,1,.3,1)}.poster-toast.visible{opacity:1;transform:translate(-50%)}.poster-preview{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .35s ease}.poster-preview.visible{opacity:1;pointer-events:auto}.poster-preview-backdrop{position:absolute;inset:0;background:#050505d1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.poster-preview-frame{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.2rem;max-height:90vh;transform:translateY(10px);transition:transform .5s cubic-bezier(.16,1,.3,1)}.poster-preview.visible .poster-preview-frame{transform:translateY(0)}.poster-preview-img{display:block;max-height:82vh;max-width:min(46vw,520px);width:auto;height:auto;border:1px solid rgba(201,185,154,.22);box-shadow:0 40px 80px #0009,0 0 2px #c9b99a26}.poster-preview-actions{display:flex;gap:2rem;align-items:center}.poster-preview-download,.poster-preview-close{font-family:var(--font-body);font-weight:300;font-size:.6rem;letter-spacing:.5em;text-transform:uppercase;background:transparent;border:1px solid rgba(232,228,223,.35);padding:11px 22px;color:var(--color-text);cursor:none;text-decoration:none;transition:border-color .3s ease,color .3s ease,letter-spacing .3s ease}.poster-preview-download{color:var(--color-accent);border-color:var(--color-accent)}.poster-preview-download:hover,.poster-preview-close:hover{letter-spacing:.58em;color:var(--color-text);border-color:var(--color-text)}@media (pointer: coarse){.poster-preview-download,.poster-preview-close{cursor:pointer}}.credits-marquee{position:fixed;inset:0;pointer-events:none;z-index:3;display:flex;flex-direction:column;justify-content:center;overflow:hidden;opacity:0;transition:opacity .8s ease}.credits-marquee.visible{opacity:1}.credits-marquee-title{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(5rem,17vw,20rem);line-height:.9;color:#e8e4df38;white-space:nowrap;letter-spacing:-.02em;transform:translate3d(var(--marquee-x, 40vw),0,0);will-change:transform;mix-blend-mode:screen;text-shadow:0 2px 24px rgba(201,185,154,.18)}.credits-marquee-meta{align-self:center;margin-top:1.4rem;font-family:var(--font-body);font-weight:300;font-size:.72rem;letter-spacing:.42em;text-transform:uppercase;color:#e8e4df47;text-align:center;padding:0 1rem}.credits-cartel{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.credits-cartel.visible{opacity:1;transform:translateY(0);pointer-events:auto}.credits-cartel-inner{text-align:center;max-width:68ch;padding:0 2rem}.credits-cartel-label{font-family:var(--font-body);font-weight:200;font-size:.68rem;letter-spacing:.55em;text-transform:uppercase;color:#c9b99ab3;margin-bottom:1.6rem}.credits-cartel-title{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(2.4rem,6.2vw,5.2rem);line-height:1.05;color:var(--color-text);letter-spacing:-.01em;margin-bottom:1.3rem}.credits-cartel-creator{font-family:var(--font-body);font-weight:300;font-size:.95rem;letter-spacing:.32em;text-transform:uppercase;color:var(--color-text);margin-bottom:1.1rem}.credits-cartel-link{display:inline-block;font-family:var(--font-body);font-weight:300;font-size:.7rem;letter-spacing:.38em;text-transform:uppercase;color:var(--color-accent);text-decoration:none;padding-bottom:.25rem;border-bottom:1px solid rgba(201,185,154,.35);transition:color .3s ease,border-color .3s ease}.credits-cartel-link:hover{color:var(--color-text);border-color:var(--color-accent)}@media (max-width: 700px){.credits-marquee-title{font-size:clamp(3.5rem,22vw,12rem)}.credits-marquee-meta{font-size:.6rem;letter-spacing:.32em}.credits-cartel-label{font-size:.55rem;letter-spacing:.42em}.credits-cartel-creator{font-size:.82rem;letter-spacing:.22em}}.mobile-block{display:none;position:fixed;inset:0;z-index:10000;background:var(--color-bg);color:var(--color-text);align-items:center;justify-content:center;padding:2.5rem 1.6rem;overflow:hidden}@media (pointer: coarse),(max-width: 900px){.mobile-block{display:flex}body>:not(.mobile-block){display:none!important}}.mobile-block-inner{max-width:420px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.4rem;animation:mobileBlockIn 1.2s cubic-bezier(.16,1,.3,1) .15s both}.mobile-block-stamp{display:flex;align-items:center;gap:1rem}.mobile-block-line{width:28px;height:1px;background:var(--color-accent)}.mobile-block-label{font-family:var(--font-body);font-weight:200;font-size:.58rem;letter-spacing:.45em;text-transform:uppercase;color:var(--color-accent)}.mobile-block-title{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(2.4rem,15vw,4.2rem);line-height:.95;letter-spacing:.04em;color:var(--color-text)}.mobile-block-title-a{margin-right:.2em}.mobile-block-headline{font-family:var(--font-display);font-weight:300;font-style:italic;font-size:clamp(1.05rem,5vw,1.4rem);line-height:1.35;color:var(--color-text);max-width:18ch;margin-top:.4rem}.mobile-block-body{font-family:var(--font-body);font-weight:300;font-size:.82rem;line-height:1.65;letter-spacing:.05em;color:#e8e4dfc7;margin:0}.mobile-block-footer{margin-top:.8rem;font-family:var(--font-body);font-weight:200;font-size:.55rem;letter-spacing:.55em;text-transform:uppercase;color:#e8e4df66}@keyframes mobileBlockIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
