@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url("/assets/inter-400.ttf") format("truetype")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url("/assets/inter-600.ttf") format("truetype")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/barlow-condensed-500.ttf") format("truetype")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/barlow-condensed-600.ttf") format("truetype")}
:root{color-scheme:dark;--ink:#090909;--surface:#141311;--orange:#ec5a04;--text:#f1eee8;--muted:#bdb6ad;--error:#ffb29c;--line:#77716a;--gutter:clamp(20px,5vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}p,h1,h2,figure{margin:0}::selection{background:var(--orange);color:#090909}:focus-visible{outline:3px solid #ffd7af;outline-offset:5px}input:focus-visible{outline-offset:2px}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;z-index:20;top:12px;left:12px;padding:12px 20px;background:var(--orange);color:var(--ink);transform:translateY(-180%)}.skip-link:focus{transform:none}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:760px;min-height:max(760px,100svh);padding:28px var(--gutter) 22px;background:radial-gradient(ellipse at 50% 16%,#33190d44,transparent 55%),#090909;display:flex;flex-direction:column;align-items:center}.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,transparent 12%,#ffffff06 12.1%,transparent 12.2%,transparent 87.8%,#ffffff06 87.9%,transparent 88%),linear-gradient(0deg,#090909 2%,transparent 80%)}.hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.14;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='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.28' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.masthead{width:100%;display:flex;justify-content:space-between;align-items:center}.masthead img{width:94px;mix-blend-mode:screen}.masthead>span{display:flex;align-items:center;gap:12px;font-size:11px;text-transform:uppercase;letter-spacing:.17em;color:var(--muted)}.masthead i{width:4px;height:4px;background:var(--orange);border-radius:50%}.hero-light{position:absolute;z-index:-1;width:68%;height:45%;top:10%;border:1px solid #ec5a042b;box-shadow:0 0 75px #ec5a040c,inset 0 0 90px #ec5a0409;transform:perspective(500px) rotateX(-12deg);mask-image:linear-gradient(#000,transparent 90%);pointer-events:none}.hero-content{text-align:center;width:100%;margin:auto 0 40px;padding-top:60px}.hero h1{width:min(730px,80%);margin:0 auto 24px}.hero h1 img{width:100%;mix-blend-mode:screen}.opening{font-size:clamp(22px,2.6vw,36px);font-weight:400;letter-spacing:-.035em}.address{color:var(--muted);font-size:14px;margin-top:10px}.hero-form-wrap{width:min(1040px,100%);margin-bottom:auto}.waitlist-form{position:relative}.form-note{font-size:11px;color:var(--muted);margin-bottom:12px}.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.field label{display:block;font-size:13px;margin-bottom:8px;color:#e0dbd4}.field input{width:100%;height:54px;padding:10px 14px;border:1px solid var(--line);background:#171512;box-shadow:inset 0 1px 4px #0003;border-radius:3px;color:var(--text);transition:border-color .2s,background .2s}.field input:hover{background:#1e1a16}.field input:focus{border-color:var(--orange)}input[aria-invalid=true]{border-color:var(--error)}.field-error{display:block;color:var(--error);font-size:12px;line-height:1.4}.field-error:not(:empty){margin-top:7px}.form-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-top:22px}.permissions{max-width:590px}.consent{display:flex;align-items:flex-start;gap:11px;cursor:pointer;font-size:12px;color:var(--muted);min-height:32px;padding:4px 0}.consent input{flex-shrink:0;appearance:none;width:19px;height:19px;border:1px solid var(--line);background:#171512;margin:0;border-radius:2px;position:relative}.consent input:checked{background:var(--orange);border-color:var(--orange)}.consent input:checked::after{content:"";position:absolute;width:5px;height:9px;border:solid #090909;border-width:0 2px 2px 0;transform:rotate(45deg);left:6px;top:2px}.privacy{font-size:11px;color:var(--muted);margin:4px 0 0 30px}.privacy span{color:#a89e94}.submit{display:flex;gap:28px;align-items:center;justify-content:center;min-height:56px;min-width:260px;border:1px solid var(--orange);border-radius:3px;background:var(--orange);color:#090909;padding:14px 22px;font-size:16px;font-weight:600;transition:background .2s,box-shadow .2s}.submit:hover{background:#ff7423;box-shadow:0 0 32px #ec5a0426}.submit span{font-size:22px;font-weight:400}.submit:disabled{cursor:wait;opacity:.65}.form-status{font-size:14px;line-height:1.5;color:var(--error);max-width:700px}.form-status:not(:empty){padding:14px 0 0}.form-status.success{color:var(--text)}.scroll-cue{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:32px;padding-top:16px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.17em;border-top:1px solid #ffffff1c}.scroll-cue span:last-child{font-size:20px;color:var(--orange)}.noscript{padding:20px;color:var(--error)}
.experience{position:relative}.studio-stage{position:relative;background:#060606;overflow:hidden}.scene{margin:0;position:relative}.scene img{width:100%;height:auto;object-fit:cover}.studio-caption{display:flex;justify-content:space-between;position:absolute;bottom:28px;left:var(--gutter);right:var(--gutter);font-size:12px;letter-spacing:.04em;text-shadow:0 1px 8px #000;color:#e1d9d0;z-index:5}.scene-count{font-variant-numeric:tabular-nums}.scene-count,.portal,.ambient,.progress-track{display:none}.motion .experience{height:440svh}.motion .studio-stage{position:sticky;top:0;height:100svh}.motion .scene-stack{position:absolute;inset:0}.motion .scene{position:absolute;inset:0;opacity:0}.motion .scene:first-child{opacity:1}.motion .scene img{height:100%;object-position:center;transform:scale(1.02)}.motion .scene:nth-child(3) img{object-position:center 56%}.motion .scene-count,.motion .portal,.motion .ambient,.motion .progress-track{display:block}.portal{position:absolute;inset:-1px;z-index:3;pointer-events:none;background:linear-gradient(90deg,#060606 0%,#060606ad 5%,transparent 22%,transparent 78%,#060606ad 95%,#060606 100%);box-shadow:inset 0 80px 100px -60px #000,inset 0 -110px 100px -45px #000;transform:scaleX(var(--portal-scale,1))}.portal::before,.portal::after{content:"";position:absolute;top:8%;bottom:8%;width:1px;background:linear-gradient(transparent,#ff862866,transparent)}.portal::before{left:5%}.portal::after{right:5%}.ambient{position:absolute;pointer-events:none;z-index:4;width:75%;height:50%;left:12%;bottom:-40%;background:radial-gradient(ellipse,#ec5a0444,transparent 65%);transform:translateY(var(--glow-shift,0px))}.progress-track{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#ffffff16;z-index:5}.progress-track>div{height:100%;background:var(--orange);transform-origin:left;transform:scaleX(var(--progress,0))}
.location{padding-top:90px;background:#0d0d0c}.location-heading{padding:0 var(--gutter) 44px;display:flex;justify-content:space-between;align-items:end;gap:24px}.eyebrow{color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.18em;margin-bottom:12px}.location h2{font-size:clamp(52px,7vw,90px);line-height:1;letter-spacing:-.055em;font-weight:400}.location-heading>p{font-size:14px;color:var(--muted)}.map-wrap{width:100%;height:400px;background:#171717;border-top:1px solid #ffffff1c;border-bottom:1px solid #ffffff1c}.map-wrap iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(1) invert(.9) contrast(.88);color-scheme:normal}.map-wrap:focus-within{outline:3px solid #ffd7af;outline-offset:-3px}.final{padding:90px var(--gutter) 100px;background:radial-gradient(ellipse at 85% 100%,#ec5a0412,transparent 55%)}.final-heading{margin-bottom:36px}.final h2{font-size:clamp(36px,5vw,64px);line-height:1.1;letter-spacing:-.05em;font-weight:400}.final .waitlist-form{max-width:1200px}footer{margin:0 var(--gutter);padding:24px 0 32px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff1c}footer img{width:76px;mix-blend-mode:screen}footer span{font-size:11px;color:var(--muted)}
@media(min-width:1600px){.hero-content{margin-bottom:52px}.hero h1{width:850px}}
@media(max-width:700px){.hero{min-height:0;padding:20px var(--gutter) 16px}.masthead img{width:66px}.masthead>span{font-size:9px;letter-spacing:.1em;gap:8px}.hero-light{top:10%;height:25%;width:90%}.hero-content{padding-top:38px;margin:0 0 24px}.hero h1{width:100%;max-width:440px;margin-bottom:16px}.opening{font-size:24px}.address{max-width:290px;margin:8px auto 0;font-size:12px}.hero-form-wrap{margin:0;width:100%}.form-note{font-size:10px;margin-bottom:9px}.fields{grid-template-columns:1fr;gap:11px}.field label{font-size:12px;margin-bottom:5px}.field input{height:48px}.form-bottom{display:flex;flex-direction:column;gap:13px;margin-top:14px}.consent{font-size:11px;line-height:1.45;padding:3px 0;min-height:36px}.privacy{font-size:10px;margin-top:0}.submit{width:100%;min-height:52px;padding:11px 17px}.scroll-cue{margin-top:20px;font-size:9px;padding-top:10px}.motion .experience{height:360svh}.motion .studio-stage{height:100svh}.motion .scene img{object-fit:cover}.motion .scene:last-child img{object-position:51% center}.studio-caption{font-size:10px;bottom:23px}.location{padding-top:54px}.location-heading{align-items:start;flex-direction:column;gap:22px;padding-bottom:28px}.location-heading>p{font-size:13px}.map-wrap{height:330px}.final{padding-top:56px;padding-bottom:56px}.final-heading{margin-bottom:26px}.final .fields{gap:16px}footer{padding-bottom:24px}footer span{font-size:10px}}
@media(max-width:380px){.hero-content{padding-top:26px;margin-bottom:18px}.hero h1{margin-bottom:12px}.hero .fields{gap:8px}.hero .scroll-cue{margin-top:14px}}
/* Clean black replaces the rejected grain treatment. */
.hero{background:#090909}.hero::after{display:none}.hero-light{box-shadow:none}.hero::before{opacity:.35}
.motion-toggle{position:absolute;z-index:8;top:24px;right:var(--gutter);min-height:44px;padding:10px 16px;border:1px solid #8c8277;border-radius:3px;background:#090909df;color:#eee8e1;font-size:12px;cursor:pointer}.motion-toggle[hidden]{display:none}.motion-toggle:hover{background:#28231e}
.motion .experience{height:500svh}.motion .scene{isolation:isolate}.motion .scene img{will-change:transform;backface-visibility:hidden}.motion .portal{background:linear-gradient(90deg,#06060680,transparent 10%,transparent 90%,#06060680);box-shadow:inset 0 -100px 80px -65px #000}.motion .ambient{opacity:.4}
html[data-motion=reduced]{scroll-behavior:auto}html[data-motion=reduced] .scene img{transform:none!important;will-change:auto}html[data-motion=reduced] .portal,html[data-motion=reduced] .ambient{transform:none!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Clean, layered firelight: no grain, video, blur filters or extra image downloads. */
.hero{background:radial-gradient(ellipse at 50% 35%,#ec5a0424,transparent 65%),#090909}
.hero-fire{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;mask-image:linear-gradient(transparent,#000 12%,#000 48%,transparent 85%)}
.hero-fire i{position:absolute;inset:4% -12% 18%;transform-origin:50% 85%;background:radial-gradient(ellipse at 28% 66%,#ec5a045c,transparent 37%),radial-gradient(ellipse at 69% 61%,#b82b034d,transparent 35%),radial-gradient(ellipse at 49% 80%,#ff8a1738,transparent 42%);opacity:.7}
.hero-fire i+i{inset:8% 0 22%;background:radial-gradient(ellipse at 37% 68%,#ff761b45,transparent 30%),radial-gradient(ellipse at 65% 53%,#ec5a0440,transparent 29%);transform:scale(.95) rotate(-5deg)}
html[data-motion=full] .hero-fire i{animation:firelight-rise 9s ease-in-out infinite alternate!important}
html[data-motion=full] .hero-fire i+i{animation-name:firelight-curl!important;animation-duration:12s!important;animation-delay:-5s!important}
html[data-motion=full] .hero[data-glow-paused=true] .hero-fire i{animation-play-state:paused!important}
.glow-toggle{min-height:44px;border:0;background:transparent;color:var(--muted);font-size:10px;letter-spacing:.06em;padding:8px 16px;margin:-12px 0;text-transform:uppercase}
.glow-toggle[hidden]{display:none}.glow-toggle:hover{color:var(--text)}
@keyframes firelight-rise{0%{transform:translate3d(-2%,3%,0) scale(.96,1);opacity:.6}50%{opacity:.9}100%{transform:translate3d(3%,-5%,0) scale(1.05,1.12);opacity:.72}}
@keyframes firelight-curl{0%{transform:translate3d(3%,3%,0) rotate(-5deg) scale(.95);opacity:.55}100%{transform:translate3d(-4%,-6%,0) rotate(6deg) scale(1.12);opacity:.85}}
@media(max-width:700px){.hero-fire{mask-image:linear-gradient(transparent,#000 8%,#000 25%,transparent 65%)}.hero-fire i{inset:-12% -40% 28%}}

/* Flames originate at the hero floor; the upper canvas is completely transparent. */
.hero::before{display:none}.hero .scroll-cue{border-top:0}
.hero-flames{position:absolute;bottom:-45px;left:-6%;width:112%;height:min(70%,650px);z-index:-1;pointer-events:none;opacity:.64;filter:blur(38px);mask-image:linear-gradient(transparent,#000 28%,#000)}
.hero{background:radial-gradient(ellipse at 50% 85%,#ec5a0418,transparent 70%),#090909}
.hero h1 img{mix-blend-mode:screen}
.concept-disclosure{padding:18px var(--gutter);font-size:10px;color:var(--muted);background:#090909}
/* Accessibility controls remain available to keyboard users, without overlaying the design. */
.glow-toggle,.motion-toggle{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);border:0!important;white-space:nowrap}
.glow-toggle:focus-visible,.motion-toggle:focus-visible{clip-path:none;width:auto!important;height:auto!important;min-height:44px!important;padding:10px 16px!important;margin:0!important;background:#090909;z-index:10;right:20px;bottom:20px;top:auto}
.motion .scene-count{display:none}

/* Diffuse heat haze, with a shared dark-to-amber transition into the entrance. */
.hero::after{display:block;content:"";position:absolute;inset:auto 0 0;height:150px;z-index:-1;pointer-events:none;opacity:1;background:linear-gradient(transparent,#100b07)}
.studio-stage::after{content:"";position:absolute;inset:0 0 auto;height:150px;z-index:4;pointer-events:none;background:linear-gradient(#100b07,#24100666 35%,transparent);opacity:var(--entry-fade,1)}
@media(max-width:700px){.hero-flames{filter:blur(25px);bottom:-30px}.hero::after,.studio-stage::after{height:100px}}

/* Privacy notice */
.privacy a{text-decoration:underline;text-underline-offset:3px}.policy-page{min-height:100vh;background:radial-gradient(ellipse at 50% 0,#ec5a0416,transparent 34%),#090909}.policy-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px var(--gutter);border-bottom:1px solid var(--line)}.policy-header img{width:94px;mix-blend-mode:screen}.policy-header>a:last-child{font-size:13px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.policy{width:min(780px,calc(100% - 2 * var(--gutter)));margin:0 auto;padding:90px 0 110px}.policy h1{font-size:clamp(48px,8vw,88px);line-height:1;letter-spacing:-.055em;font-weight:400;margin:0 0 28px}.policy-intro{font-size:clamp(18px,2.3vw,24px);line-height:1.45;color:#e1d9d0;max-width:700px}.policy section{padding-top:42px;margin-top:42px;border-top:1px solid var(--line)}.policy h2{font-size:clamp(24px,3vw,32px);line-height:1.2;letter-spacing:-.025em;font-weight:500;margin:0 0 16px}.policy section p,.policy address{color:var(--muted);font-style:normal;line-height:1.75}.policy section p+p{margin-top:14px}.policy section a{color:var(--text);text-decoration:underline;text-underline-offset:4px}.policy-footer{max-width:none}.policy-footer a{display:block}.policy-footer img{width:76px}@media(max-width:700px){.policy-header{padding-top:20px;padding-bottom:20px}.policy-header img{width:66px}.policy{padding:58px 0 70px}.policy h1{font-size:48px}.policy section{padding-top:30px;margin-top:30px}.policy-footer{align-items:flex-start;gap:20px}.policy-footer span{text-align:right}}

/* HEAT privacy-page identity. */
.policy-page{position:relative;overflow:hidden}.policy-page::before{content:"";position:absolute;z-index:0;top:-220px;left:50%;width:min(900px,110vw);height:520px;transform:translateX(-50%);pointer-events:none;background:radial-gradient(ellipse,#ec5a042e,transparent 67%)}
.policy-header,.policy,.policy-footer{position:relative;z-index:1}.policy-header{background:#090909b8;border-bottom-color:#ec5a0448}.policy-header>a:last-child{font-family:"Barlow Condensed",Arial,sans-serif;font-size:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.policy>.eyebrow{color:var(--orange);font-family:"Barlow Condensed",Arial,sans-serif;font-size:14px;font-weight:600}.policy h1{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.policy-intro{padding-left:22px;border-left:3px solid var(--orange)}.policy h2{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:600;letter-spacing:.015em}.policy section{border-top-color:#ec5a0438}.policy section a:hover,.policy-header>a:last-child:hover{color:var(--orange)}

/* Display typography mirrors the logo's compact, athletic geometry. */
.opening,.address{font-family:"Barlow Condensed",Arial,sans-serif;text-transform:uppercase}
.opening{font-size:clamp(28px,3vw,42px);font-weight:600;line-height:1;letter-spacing:.065em}
.address{font-size:17px;font-weight:500;line-height:1.2;letter-spacing:.075em;margin-top:14px}
@media(max-width:700px){.opening{font-size:30px}.address{max-width:320px;margin:10px auto 0;font-size:15px}}

/* Full-screen success state, shown only after the CRM confirms the registration. */
body.heat-confirmed{margin:0!important;background:#090909!important}
body.heat-confirmed>:not(.confirmation){display:none!important}
.confirmation-page{min-height:100vh;min-height:100svh;overflow:hidden;background:#090909}
.confirmation{position:relative;isolation:isolate;min-height:100vh;min-height:100svh;display:grid;grid-template-rows:auto 1fr auto;align-items:center;padding:clamp(24px,4vw,52px) var(--gutter);overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#ec5a0429,transparent 54%),#090909}
.confirmation::before,.confirmation::after{content:"";position:absolute;z-index:-1;pointer-events:none}
.confirmation::before{inset:0;background:linear-gradient(90deg,transparent 12%,#ffffff08 12.1%,transparent 12.2%,transparent 87.8%,#ffffff08 87.9%,transparent 88%)}
.confirmation::after{left:50%;bottom:-26vh;width:min(980px,120vw);height:52vh;transform:translateX(-50%);background:radial-gradient(ellipse,#ec5a0457,transparent 68%);filter:blur(18px)}
.confirmation-glow{position:absolute;z-index:-1;inset:18% 12% 12%;border:1px solid #ec5a042e;box-shadow:inset 0 0 100px #ec5a040b,0 0 90px #ec5a040d;transform:perspective(600px) rotateX(-7deg);mask-image:linear-gradient(#000,transparent 92%)}
.confirmation-logo{width:clamp(76px,8vw,112px);mix-blend-mode:screen}
.confirmation-copy{width:min(980px,100%);text-align:center;justify-self:center}
.confirmation-kicker{margin-bottom:18px;color:var(--orange);font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(15px,1.6vw,19px);font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.confirmation h1{margin:0;color:var(--text);font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(64px,10vw,148px);font-weight:600;letter-spacing:-.025em;line-height:.86;text-transform:uppercase;text-wrap:balance;text-shadow:0 0 40px #ec5a041e}
.confirmation-copy>p:last-child{margin:clamp(24px,4vw,42px) auto 0;color:#d2cbc3;font-size:clamp(16px,1.6vw,20px)}
.confirmation-location{justify-self:end;color:var(--muted);font-family:"Barlow Condensed",Arial,sans-serif;font-size:15px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.confirmation-location span{padding:0 8px;color:var(--orange)}
@media(max-width:700px){.confirmation{padding:24px 20px}.confirmation-glow{inset:20% 4% 14%}.confirmation-copy{margin-top:-4vh}.confirmation h1{font-size:clamp(58px,20vw,92px);line-height:.88}.confirmation-location{justify-self:center;font-size:13px}.confirmation::after{bottom:-14vh;height:40vh}}
