*,*::before,*::after{box-sizing:border-box}
:root{
  --orange:#E0400F;
  --ink:#0C0C0C;
  --paper:#FFFFFF;
  --ash:#F4F2EE;
  --grey:#6E6E6B;
  --line:#E2E0DC;
  --wrap:1240px;
}
html,body{max-width:100%;overflow-x:hidden}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Space Mono",ui-monospace,monospace;
  font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;
  overflow-wrap:break-word;
}
img,svg,video,iframe{max-width:100%;height:auto}
a{color:inherit}
::selection{background:var(--orange);color:#fff}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0;background:var(--orange);color:#fff;padding:10px 16px;z-index:200}
.skip:focus{left:8px;top:8px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
@media(min-width:768px){.wrap{padding:0 28px}}

/* type primitives */
.dsp{
  font-family:"Archivo",system-ui,sans-serif;font-weight:800;text-transform:uppercase;
  letter-spacing:-0.02em;line-height:1.0;margin:0 0 22px;
  font-size:clamp(1.85rem,4.8vw,3.3rem);
}
.dsp--light{color:#fff}
.dsp--orange{color:var(--orange)}
.ix{
  font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--orange);margin:0 0 16px;display:flex;align-items:center;gap:12px;
}
.ix::after{content:"";flex:1;height:1px;background:currentColor;opacity:.4;max-width:120px}
.body{font-size:15px;line-height:1.8;margin:0 0 18px;max-width:56ch}
.body--light{color:#d9d7d3}
.cap{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--grey);margin:14px 0 0}

.btn{
  display:inline-block;background:var(--orange);color:#fff;text-decoration:none;
  font-family:"Space Mono",monospace;font-size:13px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;padding:16px 32px;border:0;border-radius:0;cursor:pointer;
  transition:background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.btn:hover{background:#B7330C;transform:translate(-2px,-2px);box-shadow:6px 6px 0 rgba(224,64,15,.28)}
.btn--sm{padding:11px 18px;font-size:11.5px}
.btn--full{width:100%;padding:18px 20px}
.tlink{font-size:13px;letter-spacing:.08em;text-decoration:underline;text-underline-offset:6px;color:#fff}
.tlink:hover{color:var(--orange)}

/* promo bar */
.promo{background:var(--ink);color:#fff;position:relative;z-index:60}
.promo__in{display:flex;gap:14px;align-items:center;justify-content:center;
  font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;padding:10px 20px;flex-wrap:wrap}
.promo__in a{color:var(--orange);text-decoration:none}
.promo__in a:hover{text-decoration:underline}

/* header */
.hdr{position:sticky;top:0;z-index:80;transition:background .3s ease,border-color .3s ease;
  background:transparent;border-bottom:1px solid rgba(255,255,255,.14)}
.hdr__in{display:flex;align-items:center;gap:16px;min-height:72px}
.hdr__logo{position:relative;display:block;flex:0 0 auto;width:96px;height:38px}
.hdr__logo img{position:absolute;left:0;top:0;width:auto;height:100%;object-fit:contain;transition:opacity .3s ease}
.hdr__logo .logo-b{opacity:0}
.hdr.is-solid{background:var(--paper);border-bottom-color:var(--line)}
.hdr.is-solid .logo-w{opacity:0}
.hdr.is-solid .logo-b{opacity:1}
.hdr.is-solid .nav a{color:var(--ink)}
.hdr.is-solid .burger{border-color:rgba(12,12,12,.35)}
.hdr.is-solid .burger span{background:var(--ink)}
.nav{display:none;margin-left:auto;gap:20px;min-width:0}
.nav a{color:#fff;text-decoration:none;font-size:12px;letter-spacing:.05em;position:relative;padding:6px 0;white-space:nowrap;transition:color .3s ease}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--orange);transition:right .25s ease}
.nav a:hover::after,.nav a[aria-current]::after{right:0}
.hdr__cta{display:none}
@media(min-width:1060px){
  .nav{display:flex}
  .hdr__cta{display:inline-block}
  .burger{display:none!important}
}
.burger{margin-left:auto;width:46px;height:46px;background:transparent;border:1px solid rgba(255,255,255,.45);
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;padding:0;flex:0 0 auto}
.burger span{display:block;width:20px;height:2px;background:#fff;transition:transform .25s ease,opacity .2s ease,background .3s ease}
.burger[aria-expanded="true"]{border-color:rgba(255,255,255,.45)}
.burger[aria-expanded="true"] span{background:#fff}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* mobile menu */
.mmenu{position:fixed;inset:0;z-index:90;background:var(--ink);padding:104px 22px 44px;
  display:flex;flex-direction:column;gap:26px;overflow-y:auto}
.mmenu[hidden]{display:none}
.mmenu__nav{display:flex;flex-direction:column}
.mmenu__nav a{color:#fff;text-decoration:none;font-family:"Archivo",sans-serif;font-weight:800;
  text-transform:uppercase;font-size:clamp(1.5rem,7vw,2.2rem);letter-spacing:-0.02em;line-height:1.15;
  padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.mmenu__nav a:hover{color:var(--orange)}
.mmenu__cta{text-align:center}
.mmenu__social{display:flex;gap:12px;flex-wrap:wrap}
.mmenu__social a,.ftr__social a{width:44px;height:44px;border:1px solid rgba(255,255,255,.35);border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:0 0 auto}
.mmenu__social a:hover,.ftr__social a:hover{border-color:var(--orange);color:var(--orange)}
.mmenu__social svg,.ftr__social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}

/* hero */
.hero{position:relative;background:var(--ink);min-height:clamp(580px,86vh,860px);
  display:flex;align-items:flex-end;margin-top:-73px;padding-top:73px;overflow:hidden}
.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 45%}
.hero__scrim{position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(12,12,12,.72) 0%,rgba(12,12,12,0) 26%),
    linear-gradient(96deg,rgba(12,12,12,.94) 0%,rgba(12,12,12,.76) 40%,rgba(12,12,12,.24) 74%,rgba(12,12,12,.55) 100%)}
.hero__in{position:relative;z-index:2;padding-top:90px;padding-bottom:76px}
.hero__meta{display:flex;align-items:center;gap:10px;color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;margin-bottom:20px}
.dot{width:9px;height:9px;background:var(--orange);border-radius:50%;display:inline-block;animation:pulse 2s infinite;flex:0 0 auto}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.hero__h1{
  font-family:"Archivo",sans-serif;font-weight:800;text-transform:uppercase;color:#fff;
  font-size:clamp(2.1rem,6.2vw,4.9rem);line-height:.96;letter-spacing:-0.025em;
  margin:0 0 24px;max-width:15ch;text-wrap:balance;
}
.hero__sub{color:#e3e1dd;font-size:14px;max-width:44ch;margin:0 0 32px;
  border-left:3px solid var(--orange);padding-left:14px}
.hero__cta{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.hero__fig{position:absolute;right:28px;bottom:24px;z-index:2;margin:0;display:none;
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.62)}
@media(min-width:900px){.hero__fig{display:block}}

/* marquee */
.marq{background:var(--ink);border-top:1px solid rgba(255,255,255,.14);
  border-bottom:1px solid rgba(255,255,255,.14);overflow:hidden;padding:16px 0;max-width:100%}
.marq__track{display:flex;width:max-content;animation:scroll 34s linear infinite}
.marq__set{font-family:"Archivo",sans-serif;font-weight:800;text-transform:uppercase;
  font-size:clamp(1rem,2.4vw,1.6rem);letter-spacing:-0.01em;color:#fff;padding-right:26px;white-space:nowrap}
.marq__set i{color:var(--orange);font-style:normal;padding:0 8px}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* platform */
.platform{background:var(--paper);padding:72px 0;overflow:hidden}
.platform__grid{display:grid;gap:48px}
.platform__media{position:relative;min-width:0}
.platform__media img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;object-position:52% 42%;position:relative;z-index:2}
.platform__block{position:absolute;left:-12px;top:-12px;width:48%;height:36%;background:var(--orange);z-index:1}
.platform__txt{min-width:0}
.platform__txt .btn{margin-top:8px}
@media(min-width:900px){
  .platform{padding:128px 0}
  .platform__grid{grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
  .platform__media{margin-right:-56px}
  .platform__block{left:-36px;top:-36px}
}

/* inside */
.inside{background:var(--ink);padding:72px 0;position:relative}
.inside::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;
  background-image:radial-gradient(#fff 1px,transparent 1px);background-size:4px 4px}
.inside .wrap{position:relative;z-index:2}
.inside__head{max-width:22ch;margin-bottom:40px}
.cells{display:grid;gap:0;border-top:1px solid rgba(255,255,255,.18)}
.cell{display:block;position:relative;text-decoration:none;color:#fff;padding:28px 44px 32px 0;
  border-bottom:1px solid rgba(255,255,255,.18);transition:background .25s ease,padding-left .25s ease;min-width:0}
.cell:hover{background:rgba(224,64,15,.1);padding-left:16px}
.cell__n{font-size:10.5px;font-weight:700;letter-spacing:.22em;color:var(--orange)}
.cell h3{font-family:"Archivo",sans-serif;font-weight:800;text-transform:uppercase;
  font-size:clamp(1.25rem,3.2vw,1.85rem);letter-spacing:-0.02em;line-height:1.05;margin:10px 0}
.cell p{margin:0;color:#b8b6b2;font-size:13.5px;max-width:42ch}
.cell__arrow{position:absolute;right:4px;top:28px;color:var(--orange);font-size:20px;
  opacity:0;transform:translateX(-8px);transition:.25s ease}
.cell:hover .cell__arrow{opacity:1;transform:translateX(0)}
@media(min-width:768px){
  .inside{padding:118px 0}
  .cells{grid-template-columns:1fr 1fr;column-gap:52px}
}

/* partners */
.partners{background:var(--paper);padding:72px 0}
.partners__head{display:grid;gap:24px;margin-bottom:44px}
.partners__title{min-width:0}
.partners__copy{font-size:14px;line-height:1.85;margin:0;max-width:52ch;
  border-left:3px solid var(--orange);padding-left:16px}
.partners__copy em{font-style:italic;font-weight:700}
.wall{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;
  border-top:1px solid var(--line);border-left:1px solid var(--line)}
.wall li{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ash);
  min-height:116px;display:flex;align-items:center;justify-content:center;padding:20px;min-width:0;
  transition:background .25s ease}
.wall li:hover{background:#fff}
.wall img{max-height:36px;width:auto;object-fit:contain;transition:transform .3s ease}
.wall img.tall{max-height:54px}
.wall li:hover img{transform:scale(1.05)}
@media(min-width:700px){.wall{grid-template-columns:repeat(3,1fr)}.wall img{max-height:40px}.wall img.tall{max-height:58px}}
@media(min-width:1000px){
  .partners{padding:128px 0}
  .partners__head{grid-template-columns:1fr 1fr;gap:56px;align-items:end}
  .wall{grid-template-columns:repeat(6,1fr)}
  .wall li{min-height:148px}
}

/* newsletter */
.news{background:var(--ink);padding:76px 0;position:relative}
.news::before{content:"";position:absolute;left:0;top:0;width:100%;height:6px;background:var(--orange)}
.news__grid{display:grid;gap:40px}
.news__h{font-size:clamp(2rem,5.6vw,3.8rem)}
.form{display:grid;gap:14px}
.form__row{display:grid;gap:14px}
.field{min-width:0}
.form input{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.3);color:#fff;
  font-family:"Space Mono",monospace;font-size:15px;padding:16px;border-radius:0}
.form input::placeholder{color:#8f8d89}
.form input:focus{border-color:var(--orange);outline:none;background:rgba(224,64,15,.08)}
.thanks{font-family:"Archivo",sans-serif;font-weight:800;text-transform:uppercase;color:var(--orange);
  font-size:clamp(1.6rem,5vw,2.4rem);letter-spacing:-0.02em;margin:0}
@media(min-width:900px){
  .news{padding:128px 0}
  .news__grid{grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
  .form__row{grid-template-columns:1fr 1fr}
}

/* footer */
.ftr{background:var(--ink);color:#fff;padding:56px 0 40px;border-top:1px solid rgba(255,255,255,.14)}
.ftr__top{display:grid;gap:26px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.14)}
.ftr__logo{display:block;line-height:0}
.ftr__logo img{height:52px;width:auto}
.ftr__nav{display:flex;flex-wrap:wrap;gap:10px 22px}
.ftr__nav a{color:#d6d4d0;text-decoration:none;font-size:12.5px;letter-spacing:.05em}
.ftr__nav a:hover{color:var(--orange)}
.ftr__bot{display:grid;gap:18px;padding-top:26px;align-items:center}
.ftr__social{display:flex;gap:12px;flex-wrap:wrap}
.ftr__mail{color:#fff;font-size:13px;text-decoration:underline;text-underline-offset:5px}
.ftr__mail:hover{color:var(--orange)}
.ftr__cr{margin:0;font-size:11px;letter-spacing:.14em;color:#8f8d89;text-transform:uppercase}
@media(min-width:860px){
  .ftr__top{grid-template-columns:auto 1fr;align-items:center}
  .ftr__nav{justify-content:flex-end}
  .ftr__bot{grid-template-columns:auto 1fr auto}
  .ftr__mail{justify-self:start}
  .ftr__cr{justify-self:end}
}

/* reveal — only hidden when JS is available */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none;transition:none}
  .marq__track{animation:none}
  .dot{animation:none}
  .btn:hover{transform:none}
}