:root{
  --orange:#ED6B1F;
  --orange-deep:#C4470A;
  --mint:#7DDDD1;
  --ink:#0B0B0C;
  --surface:#171719;
  --off:#F6F4F1;
  --muted:#A5A29E;
  --line:#26262a;
  --wrap:1200px;
}
*,*::before,*::after{box-sizing:border-box;}
html,body{max-width:100%;overflow-x:hidden;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--ink);color:var(--off);
  font-family:'Jost',system-ui,sans-serif;font-weight:400;
  font-size:1.05rem;line-height:1.6;-webkit-font-smoothing:antialiased;
  overflow-wrap:break-word;
}
img,svg,video,iframe{max-width:100%;height:auto;display:block;}
a{color:inherit;}
h1,h2,h3,p,figure,blockquote{margin:0;}
ul{margin:0;padding:0;list-style:none;}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px;width:100%;}
@media(min-width:760px){.wrap{padding:0 24px;}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;}
.skip{position:absolute;left:-9999px;top:0;background:var(--orange);color:var(--ink);padding:10px 16px;z-index:200;}
.skip:focus{left:8px;top:8px;}

.label{
  font-size:.68rem;font-weight:500;letter-spacing:.24em;text-transform:uppercase;
  color:var(--mint);margin:0 0 22px;
}
.h-xl{
  font-weight:800;text-transform:uppercase;letter-spacing:-.02em;line-height:.94;
  font-size:clamp(2.1rem,6.4vw,4.4rem);
}
.h-mega{
  font-weight:800;text-transform:uppercase;letter-spacing:-.02em;line-height:.9;
  font-size:clamp(2.3rem,7.4vw,5.4rem);
}

/* PROMO BAR */
.promo{background:#101012;border-bottom:1px solid var(--line);}
.promo a{
  display:block;text-align:center;text-decoration:none;padding:9px 16px;
  font-size:.62rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);
}
.promo a:hover{color:var(--orange);}

/* HEADER */
.hdr{position:sticky;top:0;z-index:100;background:rgba(11,11,12,.55);backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;transition:background .3s,border-color .3s;}
.hdr.solid{background:rgba(11,11,12,.96);border-bottom-color:var(--line);}
.hdr-in{max-width:var(--wrap);margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:14px;justify-content:space-between;}
.wordmark{
  text-decoration:none;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
  font-size:.58rem;line-height:1.35;max-width:52%;min-width:0;
}
@media(min-width:560px){.wordmark{letter-spacing:.14em;font-size:.62rem;max-width:60%;}}
@media(min-width:900px){.wordmark{font-size:.72rem;letter-spacing:.18em;max-width:none;white-space:nowrap;}}
.nav-d{display:none;align-items:center;gap:26px;}
@media(min-width:900px){.nav-d{display:flex;}}
.nav-d a{
  text-decoration:none;font-size:.68rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--off);
  padding:6px 0;transition:color .2s;white-space:nowrap;
}
.nav-d a:not(.btn-cta):hover{color:var(--orange);}
.btn-cta{
  background:var(--orange);color:var(--ink)!important;padding:11px 20px!important;border-radius:2px;
  font-weight:700;transition:background .2s,transform .2s;
}
.btn-cta:hover{background:var(--orange-deep);transform:translateY(-2px);}
.burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:44px;flex:0 0 auto;
  background:none;border:0;cursor:pointer;padding:0 8px;}
@media(min-width:900px){.burger{display:none;}}
.burger span{display:block;height:2px;background:var(--off);width:100%;}

/* MOBILE NAV */
.mobnav{position:fixed;inset:0;z-index:150;background:var(--ink);display:flex;align-items:center;justify-content:center;}
.mobnav[hidden]{display:none;}
.mobnav::before{content:"?";position:absolute;right:-.1em;bottom:-.2em;font-size:24rem;font-weight:800;line-height:.7;color:#131315;pointer-events:none;}
.mobnav nav{position:relative;display:flex;flex-direction:column;gap:2px;text-align:center;padding:20px;}
.mobnav a{
  text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
  font-size:clamp(1.7rem,9vw,2.4rem);padding:12px 20px;
}
.mobnav a:hover{color:var(--orange);}
.mob-cta{color:var(--orange);}
.mob-close{position:absolute;top:10px;right:12px;background:none;border:0;color:var(--off);font-size:2.4rem;line-height:1;width:48px;height:48px;cursor:pointer;z-index:2;}

/* HERO */
.hero{position:relative;padding:clamp(44px,8vh,86px) 0 clamp(56px,9vh,104px);overflow:hidden;}
.hero-glow{position:absolute;top:-20%;right:-20%;width:75%;padding-bottom:75%;
  background:radial-gradient(circle,rgba(237,107,31,.30),transparent 66%);filter:blur(30px);pointer-events:none;}
.hero-in{position:relative;z-index:1;}
.tagline{display:block;font-weight:800;letter-spacing:-.025em;line-height:.9;
  font-size:clamp(2.25rem,7.4vw,6.2rem);text-transform:uppercase;}
.tl-l{display:block;}
.tl-2{color:var(--orange);}
.tl-3{padding-left:.05em;}
.hero-lower{display:grid;gap:34px;margin-top:clamp(30px,5vw,54px);align-items:end;}
@media(min-width:940px){
  .hero-lower{grid-template-columns:.85fr 1.15fr;gap:46px;}
}
.hero-acts{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;min-width:0;}
.btn-big{
  display:inline-block;background:var(--orange);color:var(--ink);text-decoration:none;
  padding:17px 30px;border-radius:2px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.74rem;
  transition:transform .2s,background .2s;box-shadow:0 14px 40px rgba(237,107,31,.26);
}
.btn-big:hover{background:var(--orange-deep);transform:translateY(-3px);}
.hero-note{flex:1 0 100%;color:var(--muted);font-size:.92rem;letter-spacing:.02em;max-width:30ch;
  border-left:2px solid var(--mint);padding-left:14px;}
.link-mint,.link-orange{
  text-decoration:none;font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;
  border-bottom:1px solid currentColor;padding-bottom:3px;display:inline-block;
}
.link-mint{color:var(--mint);}
.link-orange{color:var(--orange);}
.link-mint:hover,.link-orange:hover{color:var(--off);}
.hero-media{min-width:0;}
@media(min-width:940px){.hero-media{margin-bottom:-6vw;}}
.hero-frame{position:relative;border:1px solid #2e2e34;overflow:hidden;
  box-shadow:0 40px 90px rgba(0,0,0,.65);}
.hero-frame img{width:100%;}
.play{
  position:absolute;inset:0;margin:auto;width:clamp(64px,14vw,92px);height:clamp(64px,14vw,92px);border-radius:50%;
  background:rgba(11,11,12,.55);border:2px solid var(--off);color:var(--off);cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background .25s,transform .25s,border-color .25s;
}
.play svg{width:36%;height:36%;fill:currentColor;margin-left:8%;}
.play:hover{background:var(--orange);border-color:var(--orange);color:var(--ink);transform:scale(1.07);}
.vidnote{margin-top:10px;font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:#6d6a67;}
.scroll-cue{
  display:none;text-decoration:none;color:var(--muted);font-size:.6rem;letter-spacing:.28em;
  text-transform:uppercase;margin:70px auto 0;width:max-content;text-align:center;
}
@media(min-width:940px){.scroll-cue{display:block;}}
.scroll-cue i{display:block;width:1px;height:38px;background:var(--muted);margin:12px auto 0;animation:drop 1.8s infinite;}
@keyframes drop{0%{transform:scaleY(.2);transform-origin:top;}50%{transform:scaleY(1);transform-origin:top;}100%{transform:scaleY(.2);transform-origin:bottom;}}

/* EQ divider */
.eq{display:flex;align-items:flex-end;gap:4px;height:46px;padding:0 20px;overflow:hidden;
  border-top:1px solid #212125;border-bottom:1px solid #212125;background:var(--surface);}
.eq span{flex:1 1 0;min-width:0;background:var(--orange);height:20%;animation:bounce 1.4s ease-in-out infinite;opacity:.85;}
.eq span:nth-child(3n){background:var(--mint);opacity:.45;}
.eq span:nth-child(2n){animation-delay:.2s;}
.eq span:nth-child(3n){animation-delay:.45s;}
.eq span:nth-child(5n){animation-delay:.7s;}
.eq span:nth-child(7n){animation-delay:.95s;}
@keyframes bounce{0%,100%{height:14%;}50%{height:88%;}}

/* ON DEMAND */
.ondemand{position:relative;padding:clamp(68px,11vh,140px) 0;overflow:hidden;}
.ghost-q{
  position:absolute;right:-.14em;top:-.2em;font-size:clamp(16rem,40vw,36rem);font-weight:800;
  line-height:.7;color:#131315;pointer-events:none;user-select:none;z-index:0;
}
.od-grid{position:relative;z-index:1;display:grid;gap:34px;align-items:center;}
@media(min-width:860px){.od-grid{grid-template-columns:.9fr 1.1fr;gap:60px;}}
.od-img{min-width:0;}
.od-img img{
  width:100%;max-width:400px;aspect-ratio:1;object-fit:cover;object-position:50% 60%;
  border-radius:50%;box-shadow:0 30px 70px rgba(0,0,0,.6);
}
.od-txt{min-width:0;}
.lede{color:var(--muted);font-size:1.05rem;margin:20px 0 26px;max-width:44ch;}

/* OFFERINGS */
.offer{padding:clamp(56px,9vh,110px) 0;}
.bento{display:grid;gap:14px;}
@media(min-width:860px){
  .bento{grid-template-columns:1.1fr 1fr;}
  .tile-c{grid-column:1 / -1;}
}
.tile{
  position:relative;display:flex;flex-direction:column;text-decoration:none;background:var(--surface);
  min-width:0;border:1px solid var(--line);transition:border-color .3s,transform .3s;
}
.tile:hover{border-color:var(--orange);transform:translateY(-4px);}
.tile-img{position:relative;display:block;overflow:hidden;flex:1 1 auto;}
.tile-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
@media(min-width:860px){
  .tile-a .tile-img,.tile-b .tile-img{height:330px;}
  .tile-c .tile-img{height:280px;}
}
.tile-img::after{
  content:"";position:absolute;inset:0;background:var(--orange);opacity:0;
  mix-blend-mode:multiply;transition:opacity .4s;pointer-events:none;
}
.tile:hover .tile-img img{transform:scale(1.06);}
.tile:hover .tile-img::after{opacity:.4;}
.tile-cap{
  display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:16px 18px 18px;font-size:.85rem;color:var(--muted);
  border-top:1px solid var(--line);background:var(--ink);
}
.tile-cap i{font-style:normal;color:var(--orange);flex:0 0 auto;}
.tile:hover .tile-cap{color:var(--off);}

/* FLASH MARQUEE */
.flash{background:var(--orange);color:var(--ink);padding:20px 0;overflow:hidden;}
.marquee{overflow:hidden;width:100%;}
.mq-track{display:flex;gap:24px;white-space:nowrap;width:max-content;animation:mq 34s linear infinite;}
.mq-track span{font-weight:800;text-transform:uppercase;letter-spacing:0;font-size:clamp(1.15rem,3.4vw,2.3rem);}
@keyframes mq{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* PRESS */
.press{padding:clamp(40px,6vh,72px) 0;border-bottom:1px solid #1d1d21;}
.press-in{display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px;}
.press-lbl{font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--mint);}
.press ul{display:flex;flex-wrap:wrap;gap:10px 26px;}
.press li{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500;}

/* TESTIMONIALS */
.says{padding:clamp(68px,11vh,140px) 0;background:var(--ink);}
.says-head{display:flex;flex-wrap:wrap;align-items:center;gap:22px 30px;margin-bottom:44px;}
.says-art{width:min(230px,58%);border:1px solid var(--line);}
.says-sub{color:var(--muted);max-width:26ch;font-size:1rem;}
.quotes{display:grid;gap:18px;}
@media(min-width:900px){
  .quotes{grid-template-columns:1fr 1fr;gap:22px 26px;align-items:start;}
}
.qcard{
  position:relative;background:var(--surface);border:1px solid #27272c;padding:38px 26px 28px;
  min-width:0;transition:box-shadow .3s,border-color .3s;
}
.qcard:hover{border-color:var(--orange);box-shadow:0 24px 60px rgba(0,0,0,.55);}
.qmark{position:absolute;top:-.16em;left:14px;font-size:5rem;line-height:1;color:var(--orange);opacity:.5;font-weight:800;}
.qcard blockquote{font-size:1.05rem;font-weight:400;line-height:1.6;position:relative;}
@media(min-width:900px){.qcard blockquote{font-size:1.1rem;}}
.qcard blockquote b{font-weight:700;color:var(--orange);}
.qcard-o blockquote b{color:var(--mint);}
.qcard figcaption{margin-top:20px;padding-top:16px;border-top:1px solid #2d2d32;
  font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);line-height:1.5;}
.qcard figcaption strong{color:var(--off);}

/* GALLERY */
.gal{padding:clamp(68px,11vh,140px) 0;background:var(--surface);}
.gal-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px;}
.gal-h{font-weight:800;letter-spacing:-.02em;line-height:1;font-size:clamp(1.5rem,5vw,3rem);}
.gal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;grid-auto-flow:dense;}
@media(min-width:700px){.gal-grid{grid-template-columns:repeat(4,1fr);gap:10px;}}
.gt{position:relative;display:block;overflow:hidden;background:var(--ink);min-width:0;aspect-ratio:1;}
.gt img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.gt::after{content:"";position:absolute;inset:0;background:var(--orange);opacity:0;mix-blend-mode:multiply;transition:opacity .35s;}
.gt:hover img{transform:scale(1.09);}
.gt:hover::after{opacity:.45;}
@media(min-width:700px){
  .gt-big{grid-column:span 2;grid-row:span 2;}
  .gt-wide{grid-column:span 2;aspect-ratio:2 / 1;}
}

/* FINAL */
.final{position:relative;background:var(--orange);color:var(--ink);padding:clamp(68px,12vh,150px) 0;overflow:hidden;}
.final-ghost{position:absolute;right:-.08em;top:-.22em;font-size:clamp(16rem,36vw,32rem);font-weight:800;line-height:.7;
  color:rgba(11,11,12,.09);pointer-events:none;user-select:none;}
.final-in{position:relative;max-width:900px;}
.final p{margin:22px 0 34px;max-width:52ch;font-size:1.06rem;font-weight:500;}
.btn-ink{
  display:inline-block;background:var(--ink);color:var(--off);text-decoration:none;
  padding:18px 34px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:.76rem;
  transition:transform .2s,background .2s;
}
.btn-ink:hover{background:#000;transform:translateY(-3px);}

/* FOOTER */
.ftr{background:var(--ink);padding:56px 0 32px;border-top:1px solid #1d1d21;}
.ftr-grid{display:grid;gap:30px;}
@media(min-width:800px){.ftr-grid{grid-template-columns:1.5fr .7fr .7fr;}}
.ftr-mark{font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;}
.ftr-tag{color:var(--muted);margin-top:12px;max-width:32ch;}
.ftr-nav,.ftr-soc{display:flex;flex-direction:column;gap:10px;}
.ftr-nav a,.ftr-soc a{text-decoration:none;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);width:max-content;padding:2px 0;}
.ftr-nav a:hover,.ftr-soc a:hover{color:var(--orange);}
.copy{max-width:var(--wrap);margin:44px auto 0;padding:0 20px;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#6d6a67;}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{animation:none!important;transition:none!important;}
  .reveal{opacity:1;transform:none;}
}