@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600&display=swap');
:root{--ink:#111110;--paper:#ede9df;--red:#e93625}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer} .preview{position:fixed;top:0;width:100%;text-align:center;background:var(--red);color:white;z-index:20;font-size:10px;letter-spacing:2px;padding:5px}header{position:absolute;top:28px;z-index:15;display:flex;align-items:center;width:100%;padding:22px 4%;gap:28px}header img{width:57px}header .menu{margin-left:auto;font-size:12px;letter-spacing:2px}header button{background:none;color:var(--paper);border:1px solid #ffffff60;width:44px;height:44px;border-radius:50%;font-size:30px}nav{position:fixed;inset:26px 0 0;background:var(--red);z-index:14;padding:110px 8%}nav a{display:block;font-family:'Barlow Condensed',sans-serif;font-size:clamp(38px,7vw,90px);text-transform:uppercase;border-bottom:1px solid #ffffff50;padding:10px}nav[hidden]{display:none}.entrance{min-height:100svh;padding:150px 7% 35px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 50% 60%,#444238 0%,#171714 55%,#0b0b0b 90%);position:relative}.coordinates{font-size:11px;line-height:1.7;letter-spacing:2px;margin-bottom:35px}.sign{border:1px solid #69665e;padding:35px 6% 20px;box-shadow:0 0 70px #e7dcc515,inset 0 0 50px #ffffff05;background:#161614;transform:rotate(-2deg)}.sign img{width:100%;height:clamp(170px,31vw,390px);object-fit:contain;filter:drop-shadow(0 0 12px #ffffff25)}.tiny{font-size:11px;letter-spacing:2px;font-weight:600}.sign-bottom{border-top:1px solid #646158;display:flex;justify-content:space-between;padding-top:15px;font-size:10px;letter-spacing:3px}.enter{align-self:center;margin:45px 0 20px;font-size:12px;letter-spacing:3px}.enter span{display:inline-block;margin-left:25px}.edge{text-align:center;font-size:9px;letter-spacing:3px;opacity:.45}.screen{position:relative;min-height:90svh;overflow:hidden;background:#181818}.screen video,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{background:linear-gradient(90deg,#0009,#0003),linear-gradient(0deg,#000a,transparent)}.screen-content{position:relative;padding:70px 7% 100px}h1,h2,h3{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;text-transform:uppercase;line-height:.88;margin:28px 0}h1{font-size:clamp(65px,11.5vw,170px);max-width:1100px}i{font-family:Georgia,serif;font-weight:400;text-transform:none}h2{font-size:clamp(60px,8vw,120px)}.screen-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:50px;gap:25px}.screen-bottom p{font-size:20px;line-height:1.6}.pill{display:inline-block;background:var(--red);color:white;border:0;border-radius:100px;padding:20px 27px;font-size:12px;letter-spacing:1px}.play{position:absolute;bottom:24px;right:7%;background:transparent;border:1px solid #ffffff80;padding:10px;color:white;font-size:10px;letter-spacing:2px}.packages{background:var(--paper);color:var(--ink);padding:65px 6%}.section-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.section-top>span{font-size:10px;letter-spacing:1px}.tickets{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:65px 0 25px;align-items:start}.ticket{background:#f8f5ed;padding:25px;border:1px solid #ccc7bd;box-shadow:4px 6px 0 #15151515;transform:rotate(-2deg)}.ticket:nth-child(3){transform:rotate(2deg)}.ticket.featured{background:var(--red);color:white;transform:translateY(-20px)}.ticket-top{font-size:10px;letter-spacing:1.5px;border-bottom:1px solid currentColor;padding-bottom:20px}.ticket h3{font-size:clamp(28px,3.6vw,56px)}.price{font-family:'Barlow Condensed',sans-serif;font-size:clamp(65px,8vw,112px);margin:15px 0;line-height:1}.price small{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px}.ticket p:not(.price){font-size:14px}.ticket ul{padding:20px 0 20px 16px;font-size:14px;line-height:1.8;min-height:165px}.ticket a{display:block;border-top:1px dashed currentColor;padding-top:22px;font-weight:600;font-size:12px;letter-spacing:1px}.fine{font-size:12px;line-height:1.6;opacity:.7}.other{border-top:1px solid #aaa;margin-top:55px;padding-top:30px;display:flex;gap:30px;align-items:center;flex-wrap:wrap}.other>span{font-size:10px;max-width:150px;letter-spacing:2px}.other a{font-family:'Barlow Condensed';font-size:36px}.other p{font-size:12px;margin-left:auto}.about{display:grid;grid-template-columns:1fr 1fr;padding:100px 7%;gap:60px}.about h2{font-size:clamp(52px,6vw,90px)}.about p{line-height:1.8;color:#c4c0b7}.about .intro{font-size:25px;color:var(--paper)}.contact{background:var(--red);padding:70px 7%;color:var(--paper)}.contact form{max-width:850px;display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:50px 0}.contact label{font-size:12px}.contact input{display:block;width:100%;padding:15px 0;border:0;border-bottom:1px solid #ffffff80;background:transparent;color:white;outline-offset:5px;border-radius:0}.contact input::placeholder{color:#ffffffa0}.full{grid-column:1/-1}.contact .pill{background:var(--ink);justify-self:start}.contact>a{font-size:18px}footer{padding:45px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:10px;letter-spacing:1px}footer img{width:180px}a:hover{opacity:.8}.gallery{padding:140px 6% 80px}.gallery-intro{max-width:550px;line-height:1.8;color:#aaa}.films{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:50px;align-items:start}.films video{width:100%;display:block;background:#222}.films .wide{grid-column:span 3}.films .wide video{max-height:75vh}.back{display:inline-block;margin-top:40px;border-bottom:1px solid;padding-bottom:8px}@media(max-width:700px){header{padding:18px 5%}header img{width:45px}.entrance{padding:140px 6% 40px}.sign{padding:22px 6%}.sign .tiny{font-size:8px}.sign-bottom{font-size:8px;letter-spacing:1px}.screen-content{padding:60px 6% 110px}h1{font-size:19vw}.screen-bottom{display:block;margin-top:35px}.screen-bottom p{font-size:17px}.section-top>span{display:none}.tickets{grid-template-columns:1fr;gap:25px;margin-top:45px}.ticket{transform:none!important;padding:30px}.ticket h3{font-size:48px}.price{font-size:100px}.ticket ul{min-height:0}.about{grid-template-columns:1fr;padding:65px 6%;gap:10px}.contact form{grid-template-columns:1fr}.full{grid-column:auto}.other{gap:20px}.other>span{max-width:none;width:100%}.other p{margin-left:0}.films{grid-template-columns:1fr 1fr;gap:12px}.films .wide{grid-column:span 2}footer{flex-wrap:wrap}footer>span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.camera-journey{position:relative;background:#090909}.camera-stage{position:sticky;top:0;height:100svh;overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#3c3a30,#080808 72%)}
.wall-logo{position:absolute;top:13%;left:18%;width:64%;text-align:center}.wall-logo img{width:100%;height:30vh;object-fit:contain;filter:drop-shadow(0 0 15px #fff7)}.wall-logo p{font-size:10px;letter-spacing:3px}
.camera-rig{position:absolute}.camera-art{width:100%;height:100%;object-fit:contain}.camera-scroll{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:2px;white-space:nowrap}.camera-caption{position:absolute;bottom:8%;left:5%;font-size:9px;letter-spacing:2px}
.lcd{position:absolute;overflow:hidden;background:#101010;color:#eee;container-type:inline-size;border-radius:2px}.lcd.recording:after{content:'';position:absolute;inset:3px;border:2px solid #e93625;pointer-events:none;z-index:5}.lcd-content{position:relative}.lcd-intro{display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(ellipse,#35352c,#080808);padding:5%}.lcd-intro img{width:94%;max-height:78%;object-fit:contain}.lcd-intro p{font-size:1.5cqw;letter-spacing:.45cqw;text-align:center;margin:2% 0 0}.screen-snow{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;z-index:6}
.lcd #packages{background:#101010;color:#eee;padding:6%;margin:0;opacity:1}.lcd h2{font-size:9cqw}.lcd .tickets{gap:2cqw;margin-top:7cqw}.lcd .ticket{transform:none;background:#171717;color:#eee;border-color:#555;padding:3cqw}.lcd .ticket.featured{background:#eee;color:#111}.lcd .ticket h3{font-size:4.5cqw}.lcd .price{font-size:10cqw}.lcd .ticket p:not(.price),.lcd .ticket ul{font-size:1.7cqw}.lcd .ticket ul{min-height:0}.lcd .about{padding:7%;gap:5%}.lcd .about h2{font-size:7cqw}.lcd .about .intro{font-size:3cqw}.lcd .contact{padding:7%}.lcd footer{padding:5%}.lcd .section-top>span{font-size:1.3cqw}
@media(max-width:700px){.wall-logo{left:7%;width:86%;top:18%}.wall-logo p{font-size:8px}.camera-caption{display:none}.lcd .tickets{grid-template-columns:1fr}.lcd .ticket h3{font-size:9cqw}.lcd .price{font-size:18cqw}.lcd .ticket p:not(.price),.lcd .ticket ul{font-size:3.7cqw}.lcd .about .intro{font-size:5cqw}.lcd-intro p{font-size:1.8cqw;letter-spacing:.2cqw}}

.package-tabs{display:none}.wall-logo{filter:brightness(.06)}
@media(max-width:700px){
.lcd{border:8px solid #292929;box-shadow:0 0 0 5px #070707,0 0 0 9px #444;border-radius:9px}
.package-tabs{display:flex;gap:4px;margin:10px 0}.package-tabs button{flex:1;background:#222;color:#eee;border:1px solid #666;padding:9px 2px;font-size:11px}.package-tabs button[aria-selected=true]{background:#eee;color:#111}
.lcd #packages{padding:14px 12px}.lcd #packages h2{font-size:26px;margin:10px 0}.lcd #packages h2 br{display:none}.lcd #packages .section-top{display:none}.lcd .tickets{display:block;margin:8px 0}.lcd .ticket{display:none;padding:14px}.lcd .ticket.selected{display:block}.lcd .ticket-top{font-size:9px;padding-bottom:8px}.lcd .ticket h3{font-size:25px;margin:10px 0}.lcd .price{font-size:44px;margin:8px 0}.lcd .price small{font-size:9px}.lcd .ticket p:not(.price),.lcd .ticket ul{font-size:12px;line-height:1.5}.lcd .ticket ul{padding:5px 0 5px 16px;margin:6px 0}.lcd .ticket a{padding-top:10px;font-size:10px}.lcd .ticket p:not(.price){margin:7px 0}
}

/* The LCD becomes the page at the end of the approach. */
.lcd{border:0!important;box-shadow:none!important;border-radius:0!important}.lcd.recording:after{opacity:var(--frame-opacity,1)}.lcd.expanded:after{display:none}

.contact textarea{display:block;width:100%;padding:15px 0;border:0;border-bottom:1px solid #ffffff80;background:transparent;color:white;font:inherit;resize:vertical}.contact textarea::placeholder{color:#ffffffa0}

/* A directional key and a broad soft fill, each driven by its own fixture. */
.camera-stage{--key:0;--fill:0;background:#080808}
.wall-logo{filter:none;isolation:isolate}
.wall-logo img{filter:none}
.logo-base{opacity:.055}
.logo-key,.logo-fill{position:absolute;inset:0;pointer-events:none}
.logo-key{opacity:var(--key);mask-image:radial-gradient(ellipse at 0% 32%,#000 8%,#000c 38%,#0003 75%,transparent 100%);filter:drop-shadow(-2px 1px 2px #fff2)}
.logo-fill{opacity:calc(var(--fill)*.7);mask-image:radial-gradient(ellipse at 100% 40%,#000 5%,#000c 45%,#0004 85%,transparent 115%)}
.wall-logo:before,.wall-logo:after{content:'';position:absolute;inset:-20% -15%;z-index:-1;pointer-events:none}
.wall-logo:before{background:radial-gradient(ellipse at 14% 45%,#b6b0a222,transparent 65%);opacity:var(--key)}
.wall-logo:after{background:radial-gradient(ellipse at 90% 40%,#b8c0cd16,transparent 75%);opacity:var(--fill)}
.studio-lights{position:absolute;inset:0;pointer-events:none}
.studio-fixture{position:absolute;top:25%;width:clamp(50px,8vw,115px);height:45%;--power:var(--key)}
.key-fixture{left:3%;transform:rotate(-8deg)}
.fill-fixture{right:3%;transform:rotate(8deg);--power:var(--fill)}
.light-head{position:relative;width:100%;height:75px;background:linear-gradient(110deg,#414141,#121212 45%,#292929);border:2px solid #555;border-radius:8px;box-shadow:0 6px 15px #000;z-index:2;transform:perspective(240px) rotateY(-28deg)}
.light-face{position:absolute;inset:12%;background:#272727;border:2px solid #080808;box-shadow:inset 0 0 9px #000}
.light-face:after{content:'';position:absolute;inset:0;background:#fff6df;opacity:var(--power);box-shadow:0 0 22px #ffefd699}
.key-fixture .light-head:before,.key-fixture .light-head:after{content:'';position:absolute;left:-10%;width:120%;height:22px;background:linear-gradient(#333,#111);border:1px solid #494949;z-index:3;clip-path:polygon(0 0,100% 0,90% 100%,10% 100%)}
.key-fixture .light-head:before{top:-17px;transform:rotate(180deg)}
.key-fixture .light-head:after{bottom:-17px}
.fill-fixture .light-head{height:110px;clip-path:polygon(24% 0,76% 0,100% 24%,100% 76%,76% 100%,24% 100%,0 76%,0 24%);border-radius:0;transform:perspective(240px) rotateY(28deg)}
.fill-fixture .light-face{inset:8%;clip-path:inherit;background:#484848}
.fill-fixture .light-face:after{background:#f4f6fa}
.light-stand{position:absolute;top:60px;bottom:0;left:48%;width:5px;background:linear-gradient(90deg,#080808,#626262,#151515)}
.light-stand:before{content:'';position:absolute;bottom:0;left:-30px;width:65px;height:40px;background:#353535;clip-path:polygon(47% 0,53% 0,100% 100%,94% 100%,50% 15%,6% 100%,0 100%)}
@media(max-width:700px){.studio-fixture{top:26%;width:48px;height:30%}.key-fixture{left:-18px}.fill-fixture{right:-18px}.light-head{height:44px}.fill-fixture .light-head{height:64px}.light-stand{top:40px}.wall-logo{left:10%;width:80%}.wall-logo p{letter-spacing:1.6px}.key-fixture .light-head:before,.key-fixture .light-head:after{height:12px}.key-fixture .light-head:before{top:-9px}.key-fixture .light-head:after{bottom:-9px}}

/* Keep the camera composited and the phone viewport stable while browser chrome moves. */
.camera-rig{will-change:transform;transform-origin:50% 50%}.lcd-content{will-change:transform}.camera-stage{overflow-anchor:none}.camera-journey{overflow-anchor:none}@media(max-width:700px){.logo-key{filter:none}}
