*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html,
body{
  min-height:100%;
  overflow-y:auto;
  overscroll-behavior-y:auto;
}

body{
  font-family:'Roboto Condensed', sans-serif;
  background:#000;
  color:#ddd;
  overflow-x:hidden;
  touch-action:pan-y;
}

.scroll-bg-main,
.scroll-bg-reveal{
  position:fixed;
  inset:-8vh 0;
  pointer-events:none;
  z-index:-2;
}

.scroll-bg-main{
  background:
    linear-gradient(rgba(0,0,0,.34), rgba(0,0,0,.56)),
    url("images/meathead-jungle-bg.jpg");
  background-size:cover;
  background-position:center calc(50% + var(--bg-shift, 0px));
  transform:translate3d(0, 0, 0);
  filter:brightness(1.22) contrast(1.06) saturate(1.08);
}

.scroll-bg-reveal{
  background:
    radial-gradient(circle at 50% 47%, rgba(179,18,23,.16), transparent 28%),
    linear-gradient(rgba(0,0,0,.02), rgba(0,0,0,.18) 50%, rgba(0,0,0,.42)),
    url("images/meathead-jungle-maw-bg-elongated.png");
  background-size:auto 142vh;
  background-repeat:no-repeat;
  background-position:center calc(100% + var(--reveal-shift, 120px));
  opacity:var(--reveal-opacity, 0);
  transform:translate3d(0, 0, 0);
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 70% 10%, rgba(255,255,255,.38), transparent 24%),
    radial-gradient(circle at 82% 16%, rgba(255,255,255,.22), transparent 18%);
  mix-blend-mode:screen;
  opacity:0;
  animation:lightningFlash 7s infinite;
  z-index:9999;
}

@keyframes lightningFlash{
  0%, 94%, 100%{ opacity:0; }
  95%{ opacity:.18; }
  96%{ opacity:0; }
  97%{ opacity:.28; }
  98%{ opacity:0; }
}

a{
  color:white;
  text-decoration:none;
}

h1,h2,h3,h4{
  font-family:'Bebas Neue', sans-serif;
  letter-spacing:2px;
  text-transform:uppercase;
  font-weight:400;
}

p{
  color:#aaa;
  line-height:1.6;
}

/* HEADER */

.site-header{
  position:sticky;
  top:12px;
  z-index:999;
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:calc(100% - 32px);
  margin:12px auto 0;
  padding:12px 34px;
  min-height:104px;
  background:rgba(0,0,0,.86);
  backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:2px;
  overflow:visible;
}

.brand{
  margin:0;
  line-height:0;
  overflow:visible;
}

.site-logo{
  display:block;
  height:116px;
  width:auto;
  max-width:420px;
  object-fit:contain;
  margin:-24px 0 -28px -10px;
  filter:drop-shadow(0 0 14px rgba(179,18,23,.18));
  transition:opacity .35s ease, transform .35s ease;
}

.site-logo:hover{
  opacity:.92;
  transform:scale(1.015);
}

nav{
  position:relative;
  z-index:5;
  display:flex;
  align-items:center;
  gap:28px;
}

nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  opacity:.8;
  font-weight:700;
  letter-spacing:1px;
}

nav a:hover{
  opacity:1;
}

.nav-project-logo{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:2px 4px;
  border:0;
  background:transparent;
  vertical-align:middle;
  opacity:.92;
  transform:none;
}

.nav-project-logo img{
  display:block;
  width:132px;
  height:auto;
  max-height:34px;
  object-fit:contain;
  filter:
    drop-shadow(0 0 5px rgba(0,0,0,1))
    drop-shadow(0 0 12px rgba(255,255,255,.14))
    drop-shadow(0 0 18px rgba(199,51,43,.22));
}

.nav-project-logo-colosseum{
  background:transparent;
}

.nav-project-logo-colosseum img{
  width:138px;
  max-height:31px;
  filter:
    drop-shadow(0 0 5px rgba(0,0,0,1))
    drop-shadow(0 0 14px rgba(143,246,230,.18))
    drop-shadow(0 0 22px rgba(255,92,42,.10));
}

/* HERO */

.hero-poster{
  background:#000;
}

.hero-poster img{
  width:100%;
  height:auto;
  display:block;
}

/* JUNGLE WORLD BACKGROUND */

.intro-section,
.art-section,
.text-section,
.split-section,
.full-art,
.red-face-section,
.story-section,
.creator-section,
.final-line{
  position:relative;
  background:transparent;
}

.intro-section::after,
.text-section::after,
.split-section::after,
.full-art::after,
.red-face-section::after,
.story-section::after,
.creator-section::after,
.final-line::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 70% 12%, rgba(255,165,40,.18), transparent 20%),
    radial-gradient(circle at 80% 8%, rgba(255,255,255,.08), transparent 12%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 4px);
  mix-blend-mode:screen;
  opacity:.24;
}

section > *{
  position:relative;
  z-index:2;
}

/* LAUNCH / KIT */

.launch-block{
  padding:0 40px 60px;
  background:transparent;
}

.launch-content{
  max-width:1200px;
  margin:0 auto;
  margin-top:-24px;
  padding:40px;
  background:
    radial-gradient(circle at top left, rgba(179,18,23,.10), transparent 34%),
    linear-gradient(180deg, rgba(10,10,10,.78), rgba(3,3,3,.66));
  border:1px solid rgba(179,18,23,.28);
  box-shadow:inset 0 0 40px rgba(255,255,255,.03);
}

.launch-text{
  margin-bottom:15px;
}

.launch-text h2{
  margin:0 0 10px;
  font-size:42px;
  line-height:1;
}

.launch-text p{
  margin:0 0 25px;
}

.launch-meta{
  max-width:1200px;
  margin:15px auto 0;
  font-size:14px;
  color:#888;
}

.launch-meta span{
  color:#e11;
  font-weight:bold;
}

.kit-form-wrap{
  margin-top:10px;
  min-height:70px;
}

.kit-form-wrap > div,
.kit-form-wrap .formkit-form,
.kit-form-wrap .seva-form,
.kit-form-wrap .formkit-fields,
.kit-form-wrap .formkit-container{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  max-width:none !important;
}

.kit-form-wrap .formkit-header,
.kit-form-wrap .formkit-subheader,
.kit-form-wrap .formkit-powered-by-convertkit-container,
.kit-form-wrap .formkit-powered-by-convertkit,
.kit-form-wrap [data-element="powered-by"],
.kit-form-wrap .formkit-guarantee,
.kit-form-wrap small{
  display:none !important;
}

.kit-form-wrap form{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  padding:0 !important;
  box-shadow:none !important;
}

.kit-form-wrap input[type="email"],
.kit-form-wrap input[type="text"],
.kit-form-wrap input{
  flex:1 !important;
  min-width:260px !important;
  padding:14px !important;
  background:#0b0b0b !important;
  border:1px solid #333 !important;
  color:#fff !important;
  font-size:16px !important;
  border-radius:0 !important;
  box-shadow:none !important;
  box-sizing:border-box !important;
}

.kit-form-wrap input::placeholder{
  color:#9a9a9a !important;
}

.kit-form-wrap button{
  padding:14px 24px !important;
  background:#b31217 !important;
  border:none !important;
  color:#fff !important;
  font-family:'Bebas Neue', sans-serif !important;
  font-weight:400 !important;
  letter-spacing:2px !important;
  cursor:pointer !important;
  transition:.2s !important;
  border-radius:0 !important;
  box-shadow:none !important;
  text-transform:uppercase !important;
  box-sizing:border-box !important;
}

.kit-form-wrap button:hover{
  background:#d2191f !important;
}

.kit-form-wrap [class*="success"],
.kit-form-wrap [class*="Success"],
.kit-form-wrap .formkit-alert,
.kit-form-wrap .formkit-alert-success,
.kit-form-wrap .formkit-message,
.kit-form-wrap .formkit-success,
.kit-form-wrap .seva-success,
.kit-form-wrap .success,
.kit-form-wrap .alert-success{
  background:linear-gradient(180deg, #0a0a0a 0%, #111 100%) !important;
  border:1px solid #222 !important;
  color:#ff2a2a !important;
  padding:18px !important;
  font-weight:700 !important;
  text-align:center !important;
  border-radius:0 !important;
  box-shadow:none !important;
  letter-spacing:.5px !important;
  position:relative;
}

/* STORY SECTIONS */

.intro-section{
  min-height:70vh;
  display:grid;
  place-items:center;
  padding:90px 28px;
}

.intro-section h2{
  font-size:clamp(3rem, 10vw, 9rem);
  line-height:.9;
  text-align:center;
  text-shadow:0 0 34px rgba(179,18,23,.22);
}

.art-section{
  padding:90px 40px;
}

.art-wrap{
  max-width:900px;
  margin:0 auto;
}

.art-wrap img,
.split-image img{
  width:100%;
  display:block;
  max-height:760px;
  object-fit:contain;
  border:0;
  box-shadow:
    0 35px 100px rgba(0,0,0,.82),
    0 0 60px rgba(179,18,23,.10);
  background:transparent;
  transition:transform .45s ease, filter .45s ease, box-shadow .45s ease;
}

.art-wrap img:hover,
.split-image img:hover,
.full-art img:hover,
.red-face-section img:hover{
  transform:scale(1.012);
  filter:contrast(1.08);
  box-shadow:
    0 40px 110px rgba(0,0,0,.88),
    0 0 70px rgba(179,18,23,.16);
}

.impact-art img{
  max-height:760px;
}

.text-section{
  padding:90px 40px;
}

.big-text{
  max-width:960px;
  margin:0 auto;
  font-size:clamp(2rem, 5vw, 5rem);
  line-height:1.02;
  letter-spacing:-.03em;
  text-transform:uppercase;
  color:#e9e9e9;
  text-shadow:
    0 3px 18px rgba(0,0,0,.95),
    0 0 40px rgba(0,0,0,.85);
}

.keep-case{
  text-transform:none !important;
  color:inherit !important;
}

.big-text span{
  color:rgba(255,255,255,.68);
}

.flag-beam{
  position:relative;
  display:inline-block;
  isolation:isolate;
  color:transparent !important;
  -webkit-text-fill-color:transparent;
  background:var(--flag-image);
  background-size:var(--flag-size, cover);
  background-position:var(--flag-position, center);
  background-repeat:no-repeat;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-stroke:.65px #071a44;
  text-shadow:none !important;
  filter:
    var(--flag-filter, none)
    drop-shadow(.65px 0 0 #3d0000)
    drop-shadow(-.65px 0 0 #3d0000)
    drop-shadow(0 .65px 0 #3d0000)
    drop-shadow(0 -.65px 0 #3d0000);
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}

.flag-beam::before,
.flag-beam::after{
  display:none !important;
}

.flag-beam-communist{
  --flag-image:url("images/communist-symbol.png");
  --flag-size:118% auto;
  --flag-position:center;
  --flag-filter:saturate(1.18) contrast(1.12) brightness(1.04);
}

.flag-beam-american{
  --flag-image:url("images/american-flag-texture.jpg");
  --flag-size:130% auto;
  --flag-position:center 52%;
  --flag-filter:contrast(1.34) brightness(1.36) saturate(1.18);
  -webkit-text-stroke:.9px rgba(226,238,255,.72);
  filter:
    var(--flag-filter)
    drop-shadow(1px 0 0 #7b0909)
    drop-shadow(-1px 0 0 #7b0909)
    drop-shadow(0 1px 0 #062657)
    drop-shadow(0 -1px 0 #062657)
    drop-shadow(0 0 10px rgba(235,245,255,.18));
}

.fragment-text{
  max-width:900px;
  margin:0 auto;
  padding-left:28px;
  border-left:4px solid #b31217;
  font-size:clamp(2.3rem, 6vw, 6rem);
  line-height:.98;
  font-weight:900;
  letter-spacing:-.04em;
  text-transform:uppercase;
  text-shadow:
    0 3px 18px rgba(0,0,0,.95),
    0 0 40px rgba(0,0,0,.85);
}

.fragment-text span{
  color:#d71920;
}

.split-section{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:44px;
  align-items:center;
  max-width:1180px;
  margin:0 auto;
  padding:90px 40px;
}

.split-section.reverse{
  grid-template-columns:1.05fr .95fr;
}

.split-text h2{
  font-size:clamp(2rem, 4vw, 4.5rem);
  line-height:1;
  margin:0 0 24px;
  text-shadow:
    0 3px 18px rgba(0,0,0,.95),
    0 0 40px rgba(0,0,0,.85);
}

.split-text p{
  color:rgba(255,255,255,.72);
  font-size:1.05rem;
}

.split-image img{
  max-height:620px;
}

.full-art{
  padding:80px 40px;
  text-align:center;
}

.full-art img{
  width:auto;
  max-width:900px;
  max-height:85vh;
  object-fit:contain;
  display:block;
  margin:0 auto;
  background:transparent;
  border:0;
  box-shadow:
    0 35px 100px rgba(0,0,0,.82),
    0 0 60px rgba(179,18,23,.10);
  transition:transform .45s ease, filter .45s ease, box-shadow .45s ease;
}

.red-face-section{
  padding:80px 40px;
  text-align:center;
}

.red-face-section img{
  width:auto;
  max-width:760px;
  max-height:85vh;
  object-fit:contain;
  display:block;
  margin:0 auto;
  background:transparent;
  border:0;
  box-shadow:
    0 35px 100px rgba(0,0,0,.82),
    0 0 60px rgba(179,18,23,.10);
  transition:transform .45s ease, filter .45s ease, box-shadow .45s ease;
}

.story-section{
  padding:90px 40px;
}

.story-inner{
  max-width:980px;
  margin:0 auto;
}

.story-inner h2{
  font-size:clamp(2.4rem, 6vw, 6.5rem);
  line-height:.95;
  margin:0 0 36px;
  text-shadow:
    0 3px 18px rgba(0,0,0,.95),
    0 0 40px rgba(0,0,0,.85);
}

.story-inner p{
  margin:0 0 18px;
  font-size:clamp(1.25rem, 2.4vw, 2rem);
  color:rgba(255,255,255,.74);
}

/* CREATORS */

.creator-section{
  padding:120px 20px;
  text-align:center;
}

.creator-section h2{
  font-size:52px;
  margin-bottom:10px;
  text-shadow:
    0 3px 18px rgba(0,0,0,.95),
    0 0 40px rgba(0,0,0,.85);
}

.creator-sub{
  color:#888;
  margin-bottom:60px;
}

.creator-grid{
  display:flex;
  justify-content:center;
  gap:40px;
  flex-wrap:wrap;
  max-width:900px;
  margin:0 auto 60px;
}

.creator-card{
  width:260px;
  background:rgba(0,0,0,.42);
  border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(4px);
  transition:.3s;
}

.creator-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,0,0,.5);
}

.creator-image img{
  width:100%;
  height:300px;
  object-fit:cover;
  filter:grayscale(100%) contrast(130%) brightness(85%);
}

.creator-info{
  padding:20px;
}

.creator-info h3{
  font-size:26px;
}

.creator-info span{
  display:block;
  color:#aaa;
  font-size:14px;
  margin:6px 0;
}

.creator-info p{
  color:#ff2a2a;
  font-size:13px;
  letter-spacing:1px;
}

/* SOCIAL ICONS */

.socials{
  margin-top:12px;
  display:flex;
  justify-content:center;
  gap:12px;
}

.socials img{
  width:26px;
  height:26px;
  object-fit:contain;
  opacity:.7;
  transition:.2s;
  filter:grayscale(100%) contrast(120%);
}

.socials img:hover{
  opacity:1;
  filter:none;
  transform:scale(1.1);
}

/* FINAL TRAILER LINE */

.final-line{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:120px 40px;
  text-align:center;
  background:transparent;
}

.final-line h2{
  font-size:clamp(3rem, 9vw, 9rem);
  line-height:.92;
  max-width:1200px;
  color:#f0f0f0;
  text-shadow:
    0 3px 18px rgba(0,0,0,.95),
    0 0 40px rgba(0,0,0,.85),
    0 0 34px rgba(179,18,23,.22);
}

.final-line span{
  color:#d71920;
}

.final-first,
.final-second{
  display:inline-block;
}

.final-line.is-visible .final-first{
  animation:finalPunch .9s ease both;
}

.final-line.is-visible .final-second{
  animation:finalPunch .9s ease .22s both;
}

@keyframes finalPunch{
  from{
    opacity:0;
    transform:scale(.96) translateY(18px);
    filter:blur(2px);
  }
  to{
    opacity:1;
    transform:scale(1) translateY(0);
    filter:blur(0);
  }
}

/* FOOTER */

footer{
  border-top:1px solid #222;
  padding:34px 40px 30px;
  text-align:center;
  background:transparent;
  letter-spacing:.16em;
  text-transform:uppercase;
}

footer p{
  margin-top:18px;
  color:rgba(221,221,221,.62);
  font-size:12px;
  letter-spacing:.18em;
}

.footer-nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
}

.footer-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:10px 16px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.46);
  color:rgba(255,255,255,.84);
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  transition:border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}

.footer-nav a:hover{
  transform:translateY(-1px);
  border-color:rgba(179,18,23,.72);
  background:rgba(179,18,23,.18);
  color:#fff;
}

/* MARSILI INK HOME */

.home-page{
  background:#050606;
  color:#eff5ef;
}

.home-page::after{
  display:none;
}

.home-bg{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-3;
  background:
    #050606;
}

.home-bg::before,
.home-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:.34;
}

.home-bg::before{
  background-image:
    linear-gradient(90deg, rgba(5,6,6,.16), rgba(5,6,6,.08) 45%, rgba(5,6,6,.20)),
    url("images/marsili-ink-home-hero.jpg");
  filter:brightness(1.04) contrast(1.08) saturate(1.08);
}

.home-bg::after{
  background:
    radial-gradient(circle at 68% 18%, rgba(143,246,230,.14), transparent 20%),
    radial-gradient(circle at 14% 86%, rgba(205,51,43,.16), transparent 25%),
    linear-gradient(180deg, rgba(0,0,0,.03), rgba(0,0,0,.42) 64%, rgba(0,0,0,.76)),
    linear-gradient(90deg, rgba(0,0,0,.56), transparent 46%, rgba(0,0,0,.40)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.026) 0 1px, transparent 1px 4px);
}

.home-header{
  background:rgba(4,5,5,.84);
  border-bottom:1px solid rgba(143,246,230,.16);
}

.home-hero{
  min-height:calc(100vh - 96px);
  display:grid;
  align-items:end;
  padding:clamp(92px, 12vh, 160px) 40px 76px;
  position:relative;
  overflow:hidden;
}

.home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(0,0,0,.02), rgba(0,0,0,.24) 58%, rgba(0,0,0,.70)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 4px);
  pointer-events:none;
}

.home-hero-inner{
  position:relative;
  z-index:1;
  width:min(100%, 1180px);
  margin:0 auto;
}

.home-kicker,
.home-section-head p,
.work-meta,
.signal-number{
  color:#8ff6e6;
  font-weight:700;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.home-kicker{
  font-size:clamp(.8rem, 1.1vw, 1rem);
  margin-bottom:18px;
}

.home-hero h1{
  font-size:clamp(5.6rem, 17vw, 16rem);
  line-height:.78;
  text-shadow:
    0 0 46px rgba(0,0,0,.88),
    0 0 18px rgba(143,246,230,.12);
}

.home-lede{
  max-width:760px;
  margin-top:26px;
  font-size:clamp(1.3rem, 2.3vw, 2.1rem);
  color:#d5ded6;
}

.home-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:34px;
}

.home-actions a{
  display:inline-flex;
  align-items:center;
  min-height:48px;
  padding:13px 18px 11px;
  border:1px solid rgba(143,246,230,.34);
  background:rgba(10,24,22,.72);
  color:#f4fff9;
  font-family:'Bebas Neue', sans-serif;
  font-size:1.35rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:background .25s ease, border-color .25s ease, transform .25s ease;
}

.home-actions a:first-child{
  background:#c7332b;
  border-color:#ff4c3d;
}

.home-actions a:hover{
  transform:translateY(-2px);
  border-color:rgba(143,246,230,.78);
}

.home-works{
  width:min(100% - 80px, 1260px);
  margin:0 auto;
  padding:92px 0;
}

.home-section-head{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:end;
  margin-bottom:26px;
  border-bottom:1px solid rgba(143,246,230,.22);
  padding-bottom:18px;
}

.home-section-head h2{
  font-size:clamp(3.6rem, 8vw, 7rem);
  line-height:.86;
  color:#f4fff9;
  text-align:right;
}

.work-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.work-card{
  min-height:620px;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  border:1px solid rgba(143,246,230,.18);
  background:#080909;
  isolation:isolate;
}

.work-card > img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:brightness(.78) contrast(1.1) saturate(.9);
  transform:scale(1.01);
  transition:transform .7s ease, filter .7s ease;
  z-index:-2;
}

.work-card-meathead > img{
  object-position:52% 30%;
  transform:scale(1.38);
}

.work-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.45) 38%, rgba(0,0,0,.92)),
    linear-gradient(90deg, rgba(0,0,0,.72), transparent 58%);
  z-index:-1;
}

.work-card:hover > img{
  transform:scale(1.055);
  filter:brightness(.94) contrast(1.14) saturate(1);
}

.work-card-meathead:hover > img{
  transform:scale(1.43);
}

.work-card-content{
  width:100%;
  padding:32px;
}

.work-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:18px;
  font-size:.78rem;
}

.work-meta span{
  border:1px solid rgba(143,246,230,.30);
  background:rgba(5,12,11,.70);
  padding:7px 9px 5px;
}

.work-card h3{
  font-size:clamp(4rem, 9vw, 8rem);
  line-height:.82;
  color:#fff;
}

.work-logo{
  display:block;
  width:min(100%, 520px);
  height:auto;
  margin:0 0 18px;
  object-fit:contain;
  position:relative;
  z-index:1;
  filter:
    drop-shadow(0 6px 16px rgba(0,0,0,.94))
    drop-shadow(0 0 12px rgba(208,57,49,.18));
}

.work-logo-meathead{
  max-width:560px;
}

.work-logo-colosseum{
  max-width:620px;
  margin-top:4px;
  filter:
    drop-shadow(0 8px 18px rgba(0,0,0,.95))
    drop-shadow(0 0 14px rgba(143,246,230,.14));
}

.work-card p{
  max-width:520px;
  margin-top:18px;
  color:#e3e6df;
  font-size:clamp(1.25rem, 2vw, 1.6rem);
}

.work-card-meathead h3{
  color:#d03931;
}

.home-signal{
  width:min(100% - 80px, 1180px);
  margin:0 auto 72px;
  padding:34px;
  display:grid;
  grid-template-columns:minmax(240px, 420px) 1fr;
  gap:36px;
  align-items:center;
  border-top:1px solid rgba(143,246,230,.24);
  border-bottom:1px solid rgba(143,246,230,.24);
  background:linear-gradient(90deg, rgba(12,27,24,.78), rgba(12,27,24,.38));
}

.signal-number{
  display:block;
  color:#ff493c;
  font-family:'Bebas Neue', sans-serif;
  font-size:4.6rem;
  line-height:.8;
}

.home-signal h2{
  margin-top:12px;
  font-size:clamp(2.8rem, 5vw, 5.2rem);
  line-height:.88;
}

.home-signal p{
  max-width:680px;
  color:#d8ded8;
  font-size:clamp(1.2rem, 2vw, 1.55rem);
}

.home-about{
  width:min(100% - 80px, 1120px);
  margin:0 auto 96px;
  display:grid;
  grid-template-columns:minmax(220px, 360px) 1fr;
  gap:36px;
  align-items:center;
  padding:34px;
  border:1px solid rgba(143,246,230,.20);
  background:
    linear-gradient(90deg, rgba(255,73,60,.08), transparent 34%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 5px),
    rgba(4,9,8,.72);
}

.home-portrait{
  position:relative;
  overflow:hidden;
  background:#020303;
  border:1px solid rgba(143,246,230,.24);
  box-shadow:
    0 24px 70px rgba(0,0,0,.58),
    inset 0 0 0 1px rgba(255,255,255,.03);
}

.home-portrait::before,
.home-portrait::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
}

.home-portrait::before{
  background:
    linear-gradient(90deg, transparent 0 12%, rgba(255,70,56,.16) 12% 16%, transparent 16% 46%, rgba(143,246,230,.11) 46% 49%, transparent 49%),
    linear-gradient(180deg, transparent 0 23%, rgba(255,255,255,.20) 23% 24%, transparent 24% 46%, rgba(240,71,50,.16) 46% 49%, transparent 49% 100%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.11) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(90deg, rgba(0,0,0,.24) 0 2px, transparent 2px 7px);
  mix-blend-mode:screen;
  opacity:.48;
}

.home-portrait::after{
  background:
    radial-gradient(circle at 50% 42%, transparent 0 36%, rgba(0,0,0,.58) 74%),
    linear-gradient(180deg, rgba(143,246,230,.08), transparent 24%, rgba(255,73,60,.10));
}

.home-dossier-photo::before{
  animation:dossierInterference 5.8s steps(1,end) infinite;
}

.home-dossier-photo span,
.home-dossier-photo::marker{
  display:none;
}

.home-dossier-photo span{
  position:absolute;
  left:14px;
  bottom:12px;
  z-index:4;
  display:block;
  padding:6px 8px 5px;
  background:rgba(2,6,6,.74);
  color:#8ff6e6;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.home-dossier-photo::after{
  content:attr(data-file);
  display:grid;
  place-items:start end;
  padding:12px;
  color:rgba(255,73,60,.86);
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  background:
    radial-gradient(circle at 50% 42%, transparent 0 36%, rgba(0,0,0,.58) 74%),
    linear-gradient(180deg, rgba(143,246,230,.08), transparent 24%, rgba(255,73,60,.10));
}

.home-portrait img{
  width:100%;
  aspect-ratio:1 / 1.08;
  object-fit:cover;
  image-rendering:pixelated;
  filter:grayscale(.68) contrast(1.86) brightness(.69) saturate(.58);
  transform:scale(1.055);
}

.home-dossier-photo img{
  animation:
    dossierPhotoPulse 6.4s steps(1,end) infinite,
    dossierPhotoGlitch 4.9s steps(1,end) infinite;
}

.home-about-copy h2{
  font-size:clamp(3.8rem, 8vw, 7.5rem);
  line-height:.82;
  color:#fff;
}

.readout-title,
.readout-line{
  animation:readoutMaterialize .9s steps(14,end) both;
  text-shadow:
    0 0 12px rgba(143,246,230,.18),
    0 2px 14px rgba(0,0,0,.88);
}

.readout-title{
  display:inline-block;
  position:relative;
  color:#f3f7f0;
  animation-duration:1.15s;
}

.readout-title::after{
  content:"";
  display:inline-block;
  width:.08em;
  height:.72em;
  margin-left:.08em;
  background:#8ff6e6;
  box-shadow:0 0 14px rgba(143,246,230,.58);
  animation:readoutCursor 1s steps(1,end) infinite;
}

.readout-line{
  clip-path:inset(0 100% 0 0);
}

.readout-line-two{
  animation-delay:.28s;
}

.readout-line-three{
  animation-delay:.56s;
}

.home-about-copy p{
  max-width:680px;
  margin-top:18px;
  color:#cfd8d0;
  font-size:clamp(1.15rem, 2vw, 1.45rem);
}

.home-socials{
  display:flex;
  gap:12px;
  margin-top:24px;
}

.home-socials a{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border:1px solid rgba(143,246,230,.28);
  background:rgba(10,22,20,.78);
}

.home-socials img{
  width:22px;
  height:22px;
  object-fit:contain;
}

@keyframes readoutMaterialize{
  0%{
    opacity:0;
    clip-path:inset(0 100% 0 0);
    filter:blur(2px);
    transform:translateY(4px);
  }
  18%{
    opacity:.72;
  }
  100%{
    opacity:1;
    clip-path:inset(0 0 0 0);
    filter:blur(0);
    transform:translateY(0);
  }
}

@keyframes readoutCursor{
  0%, 48%{
    opacity:1;
  }
  49%, 100%{
    opacity:0;
  }
}

@keyframes dossierInterference{
  0%, 18%, 22%, 48%, 54%, 100%{
    transform:translate3d(0,0,0);
    opacity:.42;
  }
  19%{
    transform:translate3d(-8px,0,0);
    opacity:.64;
  }
  51%{
    transform:translate3d(10px,0,0);
    opacity:.58;
  }
}

@keyframes dossierPhotoPulse{
  0%, 24%, 27%, 66%, 68%, 100%{
    filter:grayscale(.68) contrast(1.86) brightness(.69) saturate(.58);
  }
  25%{
    filter:grayscale(.92) contrast(2.28) brightness(.78) saturate(.42);
  }
  67%{
    filter:grayscale(.58) contrast(2.05) brightness(.62) saturate(.68);
  }
}

@keyframes dossierPhotoGlitch{
  0%, 15%, 17%, 42%, 44%, 72%, 74%, 100%{
    transform:scale(1.055) translate3d(0,0,0);
  }
  16%{
    transform:scale(1.065) translate3d(-5px,0,0);
  }
  43%{
    transform:scale(1.055) translate3d(4px,-1px,0);
  }
  73%{
    transform:scale(1.062) translate3d(-2px,2px,0);
  }
}

.home-footer{
  border-top:1px solid rgba(143,246,230,.12);
}

.home-footer .footer-nav a,
.colosseum-footer .footer-nav a{
  border-color:rgba(143,246,230,.24);
  background:rgba(5,12,12,.62);
  color:rgba(219,255,249,.86);
}

.home-footer .footer-nav a:hover,
.colosseum-footer .footer-nav a:hover{
  border-color:rgba(143,246,230,.62);
  background:rgba(143,246,230,.10);
  color:#fff;
}

/* COLOSSEUM */

.colosseum-page{
  background:#050707;
  color:#e4ebe6;
}

.colosseum-page::after{
  display:none;
}

.colosseum-bg{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-2;
  background:
    radial-gradient(ellipse at 52% 105%, rgba(255,77,36,.34), transparent 34%),
    radial-gradient(ellipse at 72% 96%, rgba(255,165,70,.18), transparent 22%),
    radial-gradient(circle at 70% 18%, rgba(114,245,229,.26), transparent 17%),
    radial-gradient(circle at 16% 82%, rgba(196,22,14,.22), transparent 26%),
    linear-gradient(90deg, rgba(5,8,7,.52), rgba(20,32,29,.30), rgba(5,8,7,.80)),
    linear-gradient(rgba(5,7,7,.36), rgba(5,7,7,.82)),
    url("images/colosseum-sky-spread-web.jpg");
  background-size:cover;
  background-position:center;
  filter:saturate(.78) contrast(1.14) brightness(.70);
}

.colosseum-header{
  background:rgba(4,7,7,.86);
  border-bottom:1px solid rgba(143,246,230,.22);
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset;
}

.colosseum-hero{
  position:relative;
  min-height:calc(100vh - 96px);
  display:grid;
  align-items:end;
  overflow:hidden;
  background:#050707;
}

.colosseum-hero > img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.72) contrast(1.06) brightness(.70);
  animation:colosseumImageJolt 9s infinite steps(1, end);
}

.colosseum-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 75% 22%, rgba(126,255,235,.22), transparent 18%),
    radial-gradient(circle at 36% 48%, rgba(232,247,238,.10), transparent 20%),
    linear-gradient(90deg, rgba(5,7,7,.96), rgba(5,7,7,.60) 54%, rgba(5,7,7,.88)),
    linear-gradient(0deg, rgba(5,7,7,.98), rgba(5,7,7,.34) 58%, rgba(5,7,7,.42)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.028) 0 1px, transparent 1px 4px),
    repeating-linear-gradient(90deg, rgba(124,240,225,.035) 0 1px, transparent 1px 16px);
}

.colosseum-battle-fx{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  mix-blend-mode:screen;
}

.colosseum-battle-fx span{
  position:absolute;
  display:block;
  pointer-events:none;
}

.colosseum-battle-fx::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 28% 24%, rgba(255,244,205,.42), transparent 24%),
    radial-gradient(circle at 72% 36%, rgba(255,75,42,.30), transparent 22%),
    linear-gradient(90deg, rgba(255,255,255,.10), transparent 50%);
  opacity:0;
  animation:colosseumFlashWash 6.8s infinite ease-in-out;
}

.colosseum-battle-fx::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 19%, rgba(255,70,38,.15), transparent 18%),
    radial-gradient(circle at 82% 31%, rgba(255,245,210,.12), transparent 20%),
    radial-gradient(circle at 57% 66%, rgba(143,246,230,.10), transparent 22%);
  opacity:.44;
  animation:colosseumWarGlow 5.2s infinite ease-in-out alternate;
}

.blast{
  width:28vw;
  height:20vw;
  max-width:360px;
  max-height:260px;
  min-width:160px;
  min-height:120px;
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(255,255,245,1) 0 4%, rgba(255,218,120,.82) 13%, rgba(252,74,38,.46) 30%, transparent 66%);
  filter:blur(2px);
  opacity:0;
  transform:scale(.35);
  animation:colosseumBlast 7.4s infinite ease-out;
}

.blast-one{
  left:22%;
  top:16%;
  animation-delay:.4s;
}

.blast-two{
  right:18%;
  top:30%;
  animation-delay:2.8s;
}

.blast-three{
  left:48%;
  bottom:29%;
  animation-delay:5.2s;
}

.tracer{
  width:38vw;
  height:3px;
  max-width:520px;
  background:linear-gradient(90deg, transparent, rgba(255,246,210,.95), rgba(255,58,35,.72), transparent);
  box-shadow:0 0 12px rgba(255,238,190,.75), 0 0 20px rgba(237,47,33,.35);
  opacity:0;
  transform-origin:center;
  animation:colosseumTracer 4.8s infinite linear;
}

.tracer-one{
  left:4%;
  top:35%;
  transform:rotate(-12deg);
}

.tracer-two{
  right:10%;
  top:21%;
  transform:rotate(154deg);
  animation-delay:1.6s;
}

.tracer-three{
  left:42%;
  top:54%;
  transform:rotate(-28deg);
  animation-delay:3.1s;
}

.smoke{
  width:44vw;
  height:34vw;
  max-width:620px;
  max-height:440px;
  border-radius:50%;
  background:
    radial-gradient(circle at 38% 48%, rgba(210,220,206,.17), transparent 44%),
    radial-gradient(circle at 64% 34%, rgba(255,255,255,.09), transparent 36%),
    radial-gradient(circle at 50% 60%, rgba(40,48,44,.28), transparent 68%);
  filter:blur(18px);
  opacity:.42;
  animation:colosseumSmoke 18s infinite ease-in-out alternate;
}

.smoke-one{
  left:4%;
  top:6%;
}

.smoke-two{
  right:-6%;
  bottom:16%;
  animation-delay:-7s;
}

.colosseum-hero-copy{
  position:relative;
  z-index:4;
  width:min(1180px, calc(100% - 56px));
  margin:0 auto;
  padding:0 0 72px;
}

.colosseum-kicker{
  margin:0 0 14px;
  color:#8ff6e6;
  font-size:15px;
  font-weight:700;
  letter-spacing:.24em;
  text-transform:uppercase;
}

@keyframes colosseumBlast{
  0%, 14%, 28%, 100%{
    opacity:0;
    transform:scale(.35);
  }
  16%{
    opacity:.95;
    transform:scale(.86);
  }
  20%{
    opacity:.42;
    transform:scale(1.28);
  }
  24%{
    opacity:0;
    transform:scale(1.6);
  }
}

@keyframes colosseumFlashWash{
  0%, 10%, 24%, 46%, 63%, 100%{
    opacity:0;
  }
  14%{
    opacity:.42;
  }
  17%{
    opacity:.72;
  }
  21%{
    opacity:.10;
  }
  53%{
    opacity:.36;
  }
  58%{
    opacity:0;
  }
}

@keyframes colosseumWarGlow{
  from{
    opacity:.22;
    filter:blur(1px);
  }
  to{
    opacity:.52;
    filter:blur(3px);
  }
}

@keyframes colosseumTracer{
  0%, 58%, 100%{
    opacity:0;
    translate:-22vw 0;
  }
  60%{
    opacity:.92;
  }
  64%{
    opacity:0;
    translate:28vw 0;
  }
}

@keyframes colosseumSmoke{
  from{
    transform:translate3d(-2%, 1%, 0) scale(1);
  }
  to{
    transform:translate3d(4%, -3%, 0) scale(1.12);
  }
}

@keyframes colosseumImageJolt{
  0%, 18%, 19%, 60%, 61%, 100%{
    transform:translate3d(0,0,0) scale(1);
  }
  18.5%, 60.5%{
    transform:translate3d(-3px,2px,0) scale(1.006);
  }
}

@keyframes colosseumHorizonBurn{
  0%, 100%{
    opacity:.68;
    transform:translateY(2%) scale(1);
    filter:blur(6px) saturate(1.12);
  }
  38%{
    opacity:.90;
    transform:translateY(-2%) scale(1.04);
    filter:blur(9px) saturate(1.32);
  }
  44%{
    opacity:.98;
    filter:blur(11px) saturate(1.45);
  }
  70%{
    opacity:.76;
    transform:translateY(-1%) scale(1.02);
  }
}

@keyframes colosseumArtilleryFlash{
  0%, 20%, 27%, 48%, 58%, 76%, 100%{
    opacity:.18;
  }
  22%{
    opacity:.82;
  }
  24%{
    opacity:.28;
  }
  52%{
    opacity:.74;
  }
  80%{
    opacity:.92;
  }
  84%{
    opacity:.22;
  }
}

@media (prefers-reduced-motion:reduce){
  .colosseum-hero > img,
  .colosseum-battle-fx::before,
  .colosseum-battle-fx::after,
  .colosseum-final::before,
  .colosseum-final::after,
  .blast,
  .tracer,
  .smoke{
    animation:none;
  }

  .blast,
  .tracer{
    opacity:0;
  }
}

.colosseum-title-heading{
  position:relative;
  display:inline-grid;
  margin:0 0 20px;
  padding:8px 0 6px;
  line-height:0;
  isolation:isolate;
}

.colosseum-title-heading::before,
.colosseum-title-heading::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
}

.colosseum-title-heading::before{
  inset:-18px -36px -20px;
  background:
    radial-gradient(ellipse at 50% 62%, rgba(255,92,42,.42), transparent 60%),
    radial-gradient(ellipse at 18% 20%, rgba(255,235,170,.16), transparent 45%),
    radial-gradient(ellipse at 50% 52%, rgba(5,7,7,.70), rgba(5,7,7,.34) 48%, transparent 72%);
  filter:blur(12px);
}

.colosseum-title-heading::after{
  inset:-10px -22px -12px;
  background:
    linear-gradient(90deg, transparent, rgba(143,246,230,.08) 28%, rgba(255,73,60,.10) 54%, transparent),
    repeating-linear-gradient(0deg, transparent 0 5px, rgba(255,255,255,.035) 5px 6px);
  box-shadow:
    0 0 30px rgba(255,75,36,.18),
    0 0 42px rgba(0,0,0,.52);
  opacity:.36;
  mask-image:linear-gradient(90deg, transparent, #000 24%, #000 76%, transparent);
}

.colosseum-title-logo{
  position:relative;
  z-index:1;
  display:block;
  width:min(74vw, 720px);
  height:auto;
  margin:0;
  filter:
    drop-shadow(0 7px 18px rgba(0,0,0,1))
    drop-shadow(0 0 4px rgba(0,0,0,1))
    drop-shadow(0 0 18px rgba(255,92,42,.34))
    drop-shadow(0 0 22px rgba(143,246,230,.24));
}

.colosseum-line{
  margin:0;
  max-width:760px;
  color:#e7eee6;
  text-shadow:
    0 5px 26px rgba(0,0,0,1),
    0 0 2px rgba(0,0,0,1),
    0 0 16px rgba(143,246,230,.18);
  font-family:'Bebas Neue', sans-serif;
  font-size:clamp(2.5rem, 5.2vw, 5.4rem);
  line-height:.9;
  letter-spacing:.02em;
  text-transform:uppercase;
}

.colosseum-access{
  padding:42px 40px 80px;
}

.colosseum-access-inner{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(360px,.9fr);
  gap:28px;
  align-items:center;
  max-width:1180px;
  margin:0 auto;
  padding:34px 38px;
  border:1px solid rgba(143,246,230,.26);
  border-top:4px solid rgba(143,246,230,.68);
  background:
    radial-gradient(circle at top left, rgba(143,246,230,.14), transparent 32%),
    linear-gradient(135deg, rgba(188,30,20,.10), transparent 26%),
    linear-gradient(180deg, rgba(13,23,21,.88), rgba(5,7,7,.76));
  box-shadow:0 32px 90px rgba(0,0,0,.55);
}

.colosseum-access h2,
.colosseum-panel h2{
  margin:0 0 10px;
  color:#eef5ec;
  font-size:clamp(2.4rem, 5vw, 5.2rem);
  line-height:.92;
}

.colosseum-access p{
  margin:0;
  color:rgba(228,235,230,.74);
}

.colosseum-format{
  margin-top:20px !important;
  max-width:620px;
  color:rgba(228,235,230,.62) !important;
  font-size:clamp(1.08rem, 1.8vw, 1.45rem);
  line-height:1.45;
  letter-spacing:.02em;
}

.colosseum-status{
  min-width:0;
  padding:20px;
  border-left:3px solid #8ff6e6;
  background:
    linear-gradient(90deg, rgba(143,246,230,.10), transparent),
    rgba(255,255,255,.035);
  text-transform:uppercase;
}

.colosseum-status span{
  display:block;
  margin:0 0 8px;
  color:#8ff6e6;
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
}

.colosseum-status strong{
  display:block;
  color:#f1f7ef;
  font-family:'Bebas Neue', sans-serif;
  font-size:34px;
  font-weight:400;
}

.colosseum-signup{
  text-transform:none;
}

.colosseum-signup p{
  max-width:480px;
  margin:0 0 16px;
  color:rgba(228,235,230,.72);
  font-size:1rem;
  line-height:1.35;
}

.colosseum-signup .kit-form-wrap{
  margin-top:14px;
  min-height:72px;
}

.colosseum-signup .kit-form-wrap input[type="email"],
.colosseum-signup .kit-form-wrap input[type="text"],
.colosseum-signup .kit-form-wrap input{
  background:rgba(2,8,8,.82) !important;
  border-color:rgba(143,246,230,.26) !important;
}

.colosseum-signup .kit-form-wrap input:focus{
  border-color:rgba(143,246,230,.72) !important;
  outline:none !important;
}

.colosseum-signup .kit-form-wrap button{
  background:#ff4737 !important;
  color:#07100f !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.colosseum-signup .kit-form-wrap button:hover{
  background:#8ff6e6 !important;
}

.colosseum-opening{
  max-width:1180px;
  margin:0 auto;
  padding:6px 40px 120px;
  display:grid;
  grid-template-columns:.74fr 1.26fr;
  gap:44px;
  align-items:start;
}

.colosseum-opening-copy{
  position:sticky;
  top:96px;
  padding:18px 0 0;
  border-top:1px solid rgba(143,246,230,.38);
}

.colosseum-opening-copy span{
  display:block;
  margin:0 0 18px;
  color:#8ff6e6;
  font-size:12px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.colosseum-opening-copy h2{
  margin:0 0 20px;
  color:#f3f7f0;
  font-family:'Bebas Neue', sans-serif;
  font-size:clamp(3rem, 5.3vw, 6rem);
  font-weight:400;
  line-height:.9;
  text-transform:uppercase;
  text-shadow:0 5px 24px rgba(0,0,0,.88);
}

.colosseum-opening-copy p{
  max-width:420px;
  margin:0;
  color:rgba(229,236,231,.78);
  font-size:clamp(1.05rem, 1.7vw, 1.35rem);
  line-height:1.42;
}

.colosseum-opening-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}

.opening-page{
  position:relative;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(143,246,230,.26);
  background:#050707;
  cursor:zoom-in;
  box-shadow:
    0 22px 55px rgba(0,0,0,.52),
    inset 0 0 0 1px rgba(255,255,255,.035);
  transition:transform .28s ease, border-color .28s ease, filter .28s ease;
}

.opening-page:hover,
.opening-page:focus-visible{
  transform:translateY(-4px);
  border-color:rgba(143,246,230,.72);
  filter:brightness(1.08);
  outline:none;
}

.opening-page::before{
  content:attr(data-page);
  position:absolute;
  left:10px;
  top:10px;
  z-index:2;
  padding:5px 7px 4px;
  background:rgba(5,7,7,.72);
  color:#8ff6e6;
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
}

.opening-page::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, transparent 64%, rgba(5,7,7,.22)),
    repeating-linear-gradient(90deg, rgba(143,246,230,.08) 0 1px, transparent 1px 12px);
  mix-blend-mode:multiply;
  opacity:.42;
}

.opening-page img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(100%) contrast(1.08);
}

.opening-page-large{
  grid-column:span 2;
  grid-row:span 2;
}

.page-lightbox{
  position:fixed;
  inset:0;
  z-index:1200;
  display:none;
  place-items:center;
  padding:72px 28px 40px;
  background:
    radial-gradient(circle at 50% 45%, rgba(143,246,230,.12), transparent 34%),
    rgba(0,0,0,.88);
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}

.page-lightbox.is-open{
  display:grid;
  opacity:1;
  pointer-events:auto;
}

.page-lightbox img{
  display:block;
  max-width:min(92vw, 980px);
  max-height:86vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border:1px solid rgba(143,246,230,.36);
  background:#050707;
  box-shadow:0 28px 90px rgba(0,0,0,.76);
}

.page-lightbox span{
  position:fixed;
  left:28px;
  top:28px;
  color:#ff4737;
  font-family:'Bebas Neue', sans-serif;
  font-size:clamp(3rem, 8vw, 7rem);
  line-height:1;
}

.page-lightbox-close{
  position:fixed;
  right:28px;
  top:28px;
  z-index:2;
  border:1px solid rgba(143,246,230,.42);
  background:rgba(5,7,7,.86);
  color:#f3f7f0;
  padding:10px 13px 8px;
  font-family:'Bebas Neue', sans-serif;
  font-size:22px;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}

.colosseum-statement{
  min-height:70vh;
  display:grid;
  place-items:center;
  padding:90px 40px;
  text-align:center;
}

.colosseum-statement p{
  max-width:1080px;
  color:#f1f7ef;
  font-size:clamp(3.4rem, 9vw, 9rem);
  line-height:.88;
  letter-spacing:.01em;
  text-transform:uppercase;
  font-family:'Bebas Neue', sans-serif;
  text-shadow:
    0 4px 18px rgba(0,0,0,.96),
    0 0 24px rgba(143,246,230,.16);
}

.colosseum-statement span{
  color:#f04732;
  text-shadow:
    0 4px 18px rgba(0,0,0,.96),
    0 0 20px rgba(240,71,50,.18);
}

.colosseum-machine{
  max-width:1180px;
  margin:0 auto;
  padding:0 40px 110px;
}

.colosseum-machine-intro{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  justify-items:center;
  text-align:center;
  padding:0 0 30px;
  border-bottom:1px solid rgba(143,246,230,.22);
}

.colosseum-machine-intro span{
  color:#8ff6e6;
  font-size:12px;
  font-weight:700;
  letter-spacing:.26em;
  text-transform:uppercase;
}

.colosseum-machine-intro h2{
  margin:0;
  max-width:980px;
  color:#f1f7ef;
  font-size:clamp(3.2rem, 7vw, 7.5rem);
  line-height:.86;
}

.colosseum-machine-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  border-bottom:1px solid rgba(143,246,230,.22);
}

.colosseum-machine-grid article{
  position:relative;
  overflow:hidden;
  min-height:320px;
  padding:30px 28px 66px;
  border-left:1px solid rgba(143,246,230,.20);
  background:
    linear-gradient(180deg, rgba(12,20,19,.82), rgba(5,7,7,.76)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.027) 0 1px, transparent 1px 9px),
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(143,246,230,.035) 18px 19px);
  box-shadow:0 1px 0 rgba(143,246,230,.12) inset;
}

.colosseum-machine-grid article:first-child{
  border-left:0;
}

.colosseum-machine-grid article::before{
  content:attr(data-stamp);
  position:absolute;
  right:20px;
  top:16px;
  color:rgba(143,246,230,.07);
  font-family:'Bebas Neue', sans-serif;
  font-size:clamp(7rem, 14vw, 13rem);
  line-height:.8;
  letter-spacing:.02em;
  pointer-events:none;
}

.colosseum-machine-grid article::after{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  bottom:22px;
  height:22px;
  opacity:.34;
  background:
    linear-gradient(90deg, rgba(240,71,50,.66) 0 12%, transparent 12% 16%, rgba(143,246,230,.46) 16% 18%, transparent 18% 25%, rgba(228,235,230,.22) 25% 27%, transparent 27% 37%, rgba(143,246,230,.46) 37% 39%, transparent 39% 48%, rgba(228,235,230,.20) 48% 56%, transparent 56% 64%, rgba(143,246,230,.36) 64% 66%, transparent 66% 100%),
    repeating-linear-gradient(90deg, rgba(228,235,230,.45) 0 2px, transparent 2px 7px);
  clip-path:polygon(0 0, 100% 0, 96% 100%, 0 100%);
}

.machine-card-code{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:0 0 44px;
  padding:0 0 18px;
  border-bottom:1px solid rgba(143,246,230,.18);
}

.machine-card-code::before,
.machine-card-code::after{
  content:"";
  position:absolute;
  bottom:-1px;
  width:34px;
  height:1px;
  background:#f04732;
}

.machine-card-code::before{
  left:0;
}

.machine-card-code::after{
  right:0;
}

.machine-card-code span{
  display:block;
  color:#f04732;
  font-family:'Bebas Neue', sans-serif;
  font-size:42px;
  line-height:.8;
}

.machine-card-code small{
  max-width:160px;
  color:rgba(143,246,230,.68);
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1.35;
  text-align:right;
  text-transform:uppercase;
}

.machine-symbol{
  position:absolute;
  z-index:1;
  right:28px;
  top:105px;
  width:128px;
  height:128px;
  opacity:.62;
  pointer-events:none;
  filter:drop-shadow(0 8px 22px rgba(0,0,0,.6));
}

.machine-symbol::before,
.machine-symbol::after,
.machine-symbol span,
.machine-symbol span::before,
.machine-symbol span::after{
  content:"";
  position:absolute;
  box-sizing:border-box;
}

.union-state-symbol::before{
  left:14px;
  right:14px;
  top:4px;
  height:98px;
  border:6px solid rgba(47,82,108,.82);
  border-bottom:0;
  border-radius:68px 68px 0 0;
  background:
    radial-gradient(ellipse at center, rgba(14,49,82,.52), rgba(14,49,82,.20) 52%, transparent 54%),
    linear-gradient(90deg, transparent 0 27%, rgba(12,44,76,.70) 27% 73%, transparent 73%);
  box-shadow:
    0 0 0 1px rgba(143,246,230,.12),
    inset 0 0 26px rgba(143,246,230,.08);
}

.union-state-symbol::after{
  left:12px;
  right:12px;
  bottom:17px;
  height:24px;
  border-left:6px solid rgba(47,82,108,.82);
  border-right:6px solid rgba(47,82,108,.82);
  border-bottom:6px solid rgba(47,82,108,.82);
  background:
    linear-gradient(90deg, rgba(240,71,50,.62), transparent 24%, transparent 76%, rgba(240,71,50,.62)),
    linear-gradient(180deg, transparent, rgba(12,44,76,.32));
}

.union-state-symbol span{
  left:50%;
  top:23px;
  width:68px;
  height:80px;
  transform:translateX(-50%);
  background:
    linear-gradient(64deg, transparent 0 39%, rgba(236,226,204,.88) 40% 53%, transparent 54%),
    linear-gradient(116deg, transparent 0 39%, rgba(236,226,204,.88) 40% 53%, transparent 54%),
    linear-gradient(180deg, rgba(236,226,204,.18), transparent 34%);
  clip-path:polygon(50% 0, 100% 100%, 74% 100%, 50% 34%, 26% 100%, 0 100%);
  filter:drop-shadow(0 0 10px rgba(236,226,204,.14));
}

.union-state-symbol span::before,
.union-state-symbol span::after{
  left:-34px;
  width:136px;
  height:9px;
  background:
    linear-gradient(90deg, transparent 0 7%, rgba(240,71,50,.68) 7% 43%, transparent 43% 57%, rgba(240,71,50,.68) 57% 93%, transparent 93%);
  box-shadow:0 0 18px rgba(240,71,50,.10);
}

.union-state-symbol span::before{
  top:18px;
}

.union-state-symbol span::after{
  top:56px;
}

.symbol-combine::before{
  left:23px;
  right:23px;
  top:18px;
  height:62px;
  border:3px solid rgba(143,246,230,.45);
  border-bottom:0;
  border-radius:44px 44px 0 0;
}

.symbol-combine::after{
  left:18px;
  right:18px;
  bottom:22px;
  height:58px;
  border:2px solid rgba(241,247,239,.34);
  background:
    repeating-linear-gradient(90deg, rgba(143,246,230,.34) 0 2px, transparent 2px 12px),
    linear-gradient(90deg, rgba(240,71,50,.36), transparent 34%);
}

.symbol-combine span{
  left:50%;
  top:65px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(240,71,50,.78);
  transform:translateX(-50%);
}

.symbol-combine span::after{
  left:7px;
  top:14px;
  width:4px;
  height:24px;
  background:rgba(240,71,50,.68);
}

.symbol-coliseum::before{
  inset:14px;
  border:3px solid rgba(143,246,230,.48);
  border-radius:50%;
}

.symbol-coliseum::after{
  inset:34px;
  border:2px solid rgba(241,247,239,.34);
  border-radius:50%;
  box-shadow:0 0 0 18px rgba(143,246,230,.055);
}

.symbol-coliseum span{
  left:50%;
  top:50%;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#f04732;
  transform:translate(-50%, -50%);
}

.symbol-coliseum span::before,
.symbol-coliseum span::after{
  top:7px;
  width:54px;
  height:2px;
  background:rgba(240,71,50,.62);
}

.symbol-coliseum span::before{
  right:24px;
}

.symbol-coliseum span::after{
  left:24px;
}

.colosseum-machine-grid h3{
  position:relative;
  z-index:2;
  display:inline-block;
  margin:0 0 14px;
  padding:10px 12px 8px;
  color:#f1f7ef;
  font-size:clamp(2.2rem, 3.4vw, 4rem);
  line-height:.9;
  background:rgba(4,7,7,.82);
  box-shadow:
    0 0 0 1px rgba(143,246,230,.10),
    0 10px 28px rgba(0,0,0,.38);
  text-shadow:0 2px 14px rgba(0,0,0,1);
}

.colosseum-machine-grid h3::after{
  content:"";
  display:block;
  width:82px;
  height:10px;
  margin:18px 0 0;
  background:
    linear-gradient(90deg, #f04732 0 46%, transparent 46% 54%, rgba(143,246,230,.52) 54% 100%);
}

.colosseum-machine-grid p{
  position:relative;
  z-index:2;
  max-width:300px;
  margin:4px 0 0;
  padding:14px 16px 15px;
  color:rgba(241,247,239,.86);
  background:
    linear-gradient(90deg, rgba(5,7,7,.92), rgba(5,7,7,.72)),
    linear-gradient(90deg, rgba(240,71,50,.14) 0 4px, transparent 4px);
  box-shadow:
    0 0 0 1px rgba(143,246,230,.10),
    0 16px 34px rgba(0,0,0,.42);
  font-weight:700;
  text-shadow:0 2px 8px rgba(0,0,0,1);
}

.machine-card-union{
  background:
    radial-gradient(circle at 80% 12%, rgba(143,246,230,.09), transparent 36%),
    linear-gradient(180deg, rgba(12,20,19,.82), rgba(5,7,7,.76)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.027) 0 1px, transparent 1px 9px),
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(143,246,230,.035) 18px 19px);
}

.machine-card-combine{
  background:
    radial-gradient(circle at 84% 22%, rgba(227,188,132,.11), transparent 38%),
    linear-gradient(180deg, rgba(12,20,19,.82), rgba(5,7,7,.76)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.027) 0 1px, transparent 1px 9px),
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(143,246,230,.035) 18px 19px);
}

.machine-card-coliseum{
  background:
    radial-gradient(circle at 76% 16%, rgba(240,71,50,.12), transparent 40%),
    linear-gradient(180deg, rgba(12,20,19,.82), rgba(5,7,7,.76)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.027) 0 1px, transparent 1px 9px),
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(143,246,230,.035) 18px 19px);
}

.colosseum-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  max-width:1180px;
  margin:0 auto;
  padding:90px 40px;
}

.colosseum-propaganda{
  display:grid;
  grid-template-columns:minmax(0, .9fr) minmax(300px, 440px);
  gap:42px;
  align-items:center;
  max-width:1180px;
  margin:0 auto;
  padding:0 40px 110px;
}

.colosseum-propaganda-copy{
  padding:36px 0;
  border-top:1px solid rgba(240,71,50,.38);
  border-bottom:1px solid rgba(143,246,230,.18);
}

.colosseum-propaganda-copy span{
  display:block;
  margin:0 0 18px;
  color:#8ff6e6;
  font-size:12px;
  font-weight:700;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.colosseum-propaganda-copy h2{
  margin:0;
  max-width:640px;
  color:#f1f7ef;
  font-size:clamp(3.6rem, 8vw, 8rem);
  line-height:.86;
}

.colosseum-propaganda-copy p{
  max-width:460px;
  margin:22px 0 0;
  color:rgba(228,235,230,.74);
  font-size:1.12rem;
}

.colosseum-propaganda figure{
  margin:0;
  transform:rotate(1.4deg);
}

.colosseum-propaganda img{
  display:block;
  width:100%;
  height:auto;
  border:1px solid rgba(227,188,132,.40);
  box-shadow:
    0 28px 80px rgba(0,0,0,.58),
    0 0 0 8px rgba(5,7,7,.30);
}

.colosseum-art-spread{
  position:relative;
  max-width:1180px;
  margin:0 auto;
  padding:0 40px 40px;
}

.colosseum-art-spread img{
  display:block;
  width:100%;
  height:auto;
  border:1px solid rgba(143,246,230,.18);
  background:#f5f5ef;
  filter:contrast(1.08);
}

.colosseum-art-spread::after{
  content:"";
  position:absolute;
  inset:0 40px 40px;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(5,7,7,.88), transparent 44%),
    linear-gradient(0deg, rgba(5,7,7,.92), transparent 36%);
}

.colosseum-art-spread p{
  position:absolute;
  left:72px;
  bottom:76px;
  z-index:2;
  max-width:620px;
  color:#f1f7ef;
  font-family:'Bebas Neue', sans-serif;
  font-size:clamp(2.8rem, 6vw, 6.8rem);
  line-height:.88;
  text-transform:uppercase;
  text-shadow:
    0 4px 22px rgba(0,0,0,.98),
    0 0 18px rgba(143,246,230,.20);
}

.colosseum-panel{
  position:relative;
  overflow:hidden;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:40px;
  border:1px solid rgba(143,246,230,.18);
  background:
    linear-gradient(rgba(18,32,29,.62), rgba(5,7,7,.88)),
    radial-gradient(circle at 50% 20%, rgba(143,246,230,.12), transparent 38%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 7px);
}

.colosseum-panel::before,
.colosseum-panel::after{
  content:"";
  position:absolute;
  pointer-events:none;
}

.colosseum-panel::before{
  right:44px;
  top:44px;
  width:148px;
  height:148px;
  opacity:.36;
  background:
    linear-gradient(90deg, rgba(143,246,230,.42) 0 3px, transparent 3px 100%),
    linear-gradient(0deg, rgba(143,246,230,.42) 0 3px, transparent 3px 100%),
    repeating-linear-gradient(90deg, rgba(240,71,50,.58) 0 8px, transparent 8px 18px);
  border:2px solid rgba(143,246,230,.34);
  border-top:0;
  clip-path:polygon(0 24%, 100% 24%, 100% 100%, 0 100%);
}

.colosseum-panel::after{
  right:82px;
  top:30px;
  width:74px;
  height:68px;
  border:3px solid rgba(143,246,230,.42);
  border-bottom:0;
  border-radius:46px 46px 0 0;
  opacity:.44;
}

.colosseum-panel-dark{
  background:
    linear-gradient(rgba(130,20,13,.24), rgba(5,7,7,.88)),
    radial-gradient(circle at 50% 20%, rgba(143,246,230,.08), transparent 38%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.02) 0 1px, transparent 1px 12px);
}

.colosseum-panel-dark::before{
  right:34px;
  top:38px;
  width:170px;
  height:170px;
  border:2px solid rgba(240,71,50,.42);
  border-radius:50%;
  background:
    radial-gradient(circle at center, rgba(240,71,50,.62) 0 7px, transparent 8px),
    linear-gradient(90deg, transparent 0 48%, rgba(143,246,230,.34) 48% 52%, transparent 52%),
    linear-gradient(0deg, transparent 0 48%, rgba(143,246,230,.34) 48% 52%, transparent 52%),
    repeating-radial-gradient(circle at center, transparent 0 22px, rgba(143,246,230,.18) 23px 24px);
  clip-path:none;
}

.colosseum-panel-dark::after{
  right:84px;
  top:88px;
  width:70px;
  height:44px;
  border:0;
  border-radius:0;
  background:
    linear-gradient(90deg, rgba(240,71,50,.76) 0 18%, transparent 18% 30%, rgba(240,71,50,.76) 30% 48%, transparent 48% 60%, rgba(240,71,50,.76) 60% 78%, transparent 78%),
    linear-gradient(180deg, transparent 0 42%, rgba(241,247,239,.36) 42% 58%, transparent 58%);
  opacity:.50;
}

.colosseum-panel h2,
.colosseum-panel p{
  position:relative;
  z-index:2;
}

.colosseum-panel p{
  max-width:440px;
  color:rgba(228,235,230,.74);
  font-size:1.08rem;
}

.colosseum-maxim{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:0;
  max-width:1180px;
  margin:0 auto;
  padding:40px 40px 110px;
}

.colosseum-maxim div{
  position:relative;
  overflow:hidden;
  min-height:220px;
  padding:28px;
  border-top:1px solid rgba(143,246,230,.24);
  border-bottom:1px solid rgba(143,246,230,.24);
  background:rgba(6,10,10,.40);
}

.colosseum-maxim div::before,
.colosseum-maxim div::after{
  content:"";
  position:absolute;
  pointer-events:none;
}

.colosseum-maxim div::before{
  right:24px;
  bottom:20px;
  width:132px;
  height:132px;
  opacity:.23;
}

.colosseum-maxim div:nth-child(1)::before{
  border:2px solid rgba(143,246,230,.55);
  background:
    linear-gradient(90deg, transparent 0 42%, rgba(240,71,50,.70) 42% 58%, transparent 58%),
    linear-gradient(0deg, transparent 0 42%, rgba(240,71,50,.70) 42% 58%, transparent 58%),
    repeating-linear-gradient(90deg, rgba(143,246,230,.38) 0 4px, transparent 4px 13px);
  clip-path:polygon(13% 0, 100% 0, 87% 100%, 0 100%);
}

.colosseum-maxim div:nth-child(2)::before{
  border:2px solid rgba(143,246,230,.50);
  border-radius:50%;
  background:
    linear-gradient(90deg, transparent 0 40%, rgba(241,247,239,.48) 40% 60%, transparent 60%),
    linear-gradient(0deg, transparent 0 40%, rgba(241,247,239,.48) 40% 60%, transparent 60%),
    radial-gradient(circle at center, rgba(240,71,50,.48), transparent 34%);
}

.colosseum-maxim div:nth-child(3)::before{
  background:
    radial-gradient(circle at 22% 26%, rgba(143,246,230,.62) 0 7px, transparent 8px),
    radial-gradient(circle at 50% 20%, rgba(143,246,230,.62) 0 7px, transparent 8px),
    radial-gradient(circle at 78% 26%, rgba(143,246,230,.62) 0 7px, transparent 8px),
    radial-gradient(circle at 34% 56%, rgba(240,71,50,.62) 0 8px, transparent 9px),
    radial-gradient(circle at 66% 56%, rgba(240,71,50,.62) 0 8px, transparent 9px),
    linear-gradient(180deg, transparent 0 44%, rgba(143,246,230,.28) 44% 48%, transparent 48%);
}

.colosseum-maxim div::after{
  right:28px;
  top:32px;
  width:74px;
  height:10px;
  opacity:.42;
  background:
    linear-gradient(90deg, #f04732 0 42%, transparent 42% 52%, rgba(143,246,230,.64) 52% 100%);
}

.colosseum-maxim div + div{
  border-left:1px solid rgba(143,246,230,.24);
}

.colosseum-maxim span{
  position:relative;
  z-index:2;
  display:block;
  margin:0 0 36px;
  color:#f04732;
  font-family:'Bebas Neue', sans-serif;
  font-size:54px;
}

.colosseum-maxim p{
  position:relative;
  z-index:2;
  color:#eef5ec;
  font-family:'Bebas Neue', sans-serif;
  font-size:clamp(2rem, 4vw, 4rem);
  line-height:.95;
  text-transform:uppercase;
}

.colosseum-final{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:95vh;
  display:grid;
  place-items:center;
  padding:120px 40px;
  text-align:center;
  background:
    linear-gradient(180deg, rgba(5,7,7,.54), rgba(5,7,7,.10) 45%, rgba(5,7,7,.64) 100%),
    linear-gradient(90deg, rgba(5,7,7,.74), transparent 46%, rgba(5,7,7,.78)),
    url("images/colosseum-sky-spread-web.jpg") center bottom / cover no-repeat;
}

.colosseum-final::before,
.colosseum-final::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}

.colosseum-final::before{
  z-index:-2;
  background:
    radial-gradient(ellipse at 50% 112%, rgba(255,226,126,.68) 0 8%, rgba(255,103,35,.56) 22%, rgba(155,24,13,.40) 42%, transparent 70%),
    radial-gradient(ellipse at 18% 98%, rgba(255,84,30,.62), transparent 34%),
    radial-gradient(ellipse at 82% 99%, rgba(255,116,38,.56), transparent 34%),
    radial-gradient(ellipse at 42% 72%, rgba(255,95,32,.18), transparent 35%),
    radial-gradient(ellipse at 67% 70%, rgba(255,134,48,.14), transparent 30%),
    linear-gradient(180deg, transparent 0 38%, rgba(80,12,9,.16) 60%, rgba(174,31,14,.44) 88%, rgba(255,128,42,.24) 100%);
  mix-blend-mode:screen;
  opacity:.74;
  animation:colosseumHorizonBurn 5.8s ease-in-out infinite;
}

.colosseum-final::after{
  z-index:-1;
  background:
    radial-gradient(ellipse at 18% 42%, rgba(255,238,176,.70) 0 .45%, rgba(255,113,42,.40) 1.4%, transparent 6%),
    radial-gradient(ellipse at 34% 40%, rgba(255,238,176,.62) 0 .34%, rgba(255,113,42,.34) 1.2%, transparent 5.4%),
    radial-gradient(ellipse at 53% 41%, rgba(255,248,214,.78) 0 .52%, rgba(255,86,34,.46) 1.8%, transparent 6.6%),
    radial-gradient(ellipse at 72% 42%, rgba(255,225,160,.62) 0 .34%, rgba(255,113,42,.32) 1.2%, transparent 5.2%),
    radial-gradient(ellipse at 86% 43%, rgba(255,238,176,.56) 0 .30%, rgba(255,92,36,.28) 1.1%, transparent 4.8%),
    linear-gradient(90deg, transparent 0 12%, rgba(255,156,64,.16) 16%, transparent 24%, transparent 29%, rgba(255,221,144,.14) 35%, transparent 44%, transparent 47%, rgba(255,92,36,.18) 53%, transparent 63%, transparent 67%, rgba(255,180,88,.13) 73%, transparent 83%),
    radial-gradient(ellipse at 50% 45%, rgba(255,93,36,.12), transparent 40%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.035) 0 1px, transparent 1px 8px);
  opacity:.32;
  mix-blend-mode:screen;
  filter:blur(14px) saturate(1.18);
  animation:colosseumArtilleryFlash 4.2s steps(1,end) infinite;
}

.colosseum-credits{
  position:relative;
  padding-top:110px;
  padding-bottom:60px;
}

.colosseum-credits::before{
  content:"";
  display:block;
  max-width:1180px;
  height:1px;
  margin:0 auto 76px;
  background:linear-gradient(90deg, transparent, rgba(143,246,230,.40), rgba(240,71,50,.45), transparent);
}

.colosseum-credits h2{
  color:#f1f7ef;
}

.colosseum-credits .creator-sub{
  color:rgba(228,235,230,.58);
}

.colosseum-credits .creator-grid{
  max-width:1180px;
}

.colosseum-credits .creator-card{
  background:
    linear-gradient(180deg, rgba(12,20,19,.82), rgba(5,7,7,.76)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.027) 0 1px, transparent 1px 9px);
  border-color:rgba(143,246,230,.16);
  box-shadow:0 1px 0 rgba(143,246,230,.10) inset;
}

.colosseum-credits .creator-card:hover{
  border-color:rgba(143,246,230,.48);
}

.colosseum-credits .creator-info span{
  color:#8ff6e6;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.colosseum-final h2{
  position:relative;
  z-index:2;
  color:#8ff6e6;
  font-size:clamp(4rem, 11vw, 11rem);
  line-height:.88;
  text-shadow:
    0 4px 18px rgba(0,0,0,.98),
    0 0 28px rgba(143,246,230,.30),
    0 0 52px rgba(240,71,50,.34),
    0 0 96px rgba(255,119,44,.34);
}

.colosseum-footer{
  border-top:1px solid rgba(143,246,230,.16);
}

.colosseum-page .reveal{
  opacity:1;
  transform:none;
  transition:opacity .45s ease, transform .45s ease;
}

/* REVEAL */

.reveal{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .85s ease, transform .85s ease;
}

.reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

/* MOBILE */

@media (max-width:900px){
  body::after{
    animation:none;
  }

  .home-hero{
    min-height:calc(100vh - 72px);
    padding:86px 22px 54px;
  }

  .home-hero h1{
    font-size:clamp(5rem, 24vw, 9rem);
  }

  .home-lede{
    font-size:1.35rem;
  }

  .home-works,
  .home-signal,
  .home-about{
    width:calc(100% - 36px);
  }

  .home-works{
    padding:68px 0;
  }

  .home-section-head{
    display:block;
  }

  .home-section-head h2{
    margin-top:10px;
    text-align:left;
  }

  .work-grid,
  .home-signal,
  .home-about{
    grid-template-columns:1fr;
  }

  .work-card{
    min-height:500px;
  }

  .work-card-content,
  .home-signal,
  .home-about{
    padding:24px;
  }

  .work-card h3{
    font-size:clamp(4rem, 20vw, 7rem);
  }

  .home-about-copy h2{
    font-size:clamp(3.6rem, 18vw, 6.4rem);
  }

  .site-header{
    top:8px;
    width:calc(100% - 20px);
    margin-top:8px;
    padding:8px 14px;
    min-height:78px;
  }

  .site-logo{
    height:80px;
    max-width:270px;
    margin:-16px 0 -18px -8px;
  }

  nav a{
    min-height:38px;
    font-size:14px;
  }

  .nav-project-logo img{
    width:104px;
    max-height:28px;
  }

  .hero-poster img{
    min-height:auto;
  }

  .launch-block{
    padding:0 18px 42px;
  }

  .launch-content{
    padding:28px 20px;
    margin-top:-10px;
  }

  .launch-text h2{
    font-size:34px;
  }

  .launch-text p{
    font-size:16px;
  }

  .intro-section{
    min-height:55vh;
    padding:64px 22px;
  }

  .intro-section h2{
    font-size:clamp(3rem, 18vw, 6rem);
  }

  .split-section,
  .split-section.reverse{
    grid-template-columns:1fr;
    gap:30px;
    padding:70px 22px;
  }

  .split-section.reverse .split-image{
    order:2;
  }

  .split-section.reverse .split-text{
    order:1;
  }

  .split-text{
    text-align:center;
  }

  .split-text h2{
    font-size:clamp(2.6rem, 13vw, 4.2rem);
  }

  .split-text p{
    font-size:1.05rem;
  }

  .art-section,
  .text-section,
  .story-section,
  .creator-section,
  .final-line,
  .full-art,
  .red-face-section{
    padding:70px 22px;
  }

  .art-wrap img,
  .split-image img,
  .full-art img,
  .red-face-section img{
    width:100%;
    max-width:100%;
    max-height:none;
  }

  .big-text{
    font-size:clamp(2.1rem, 11vw, 4.8rem);
    line-height:1.04;
  }

  .fragment-text{
    font-size:clamp(2.4rem, 13vw, 5rem);
    padding-left:18px;
  }

  .story-inner h2{
    font-size:clamp(3rem, 15vw, 5.5rem);
  }

  .story-inner p{
    font-size:1.25rem;
  }

  .creator-grid{
    gap:28px;
  }

  .creator-card{
    width:min(100%, 320px);
  }

  .creator-image img{
    height:340px;
  }

  .final-line{
    min-height:100vh;
  }

  .final-line h2{
    font-size:clamp(3.2rem, 16vw, 6.8rem);
  }
}

@media (max-width:700px){
  .kit-form-wrap form{
    flex-direction:column !important;
  }

  .kit-form-wrap input{
    min-width:100% !important;
  }

  .kit-form-wrap button{
    width:100% !important;
  }

  .site-logo{
    height:68px;
    max-width:230px;
  }

  .site-header{
    min-height:68px;
  }

  nav a{
    font-size:13px;
  }

  .nav-project-logo{
    display:none;
  }

  .launch-meta{
    font-size:13px;
  }
}

@media (hover:none){
  .art-wrap img:hover,
  .split-image img:hover,
  .full-art img:hover,
  .red-face-section img:hover{
    transform:none;
    filter:none;
  }
}

@media (max-width:900px){
  .colosseum-hero{
    min-height:78vh;
  }

  .colosseum-hero-copy{
    width:min(100% - 36px, 760px);
    padding-bottom:48px;
  }

  .colosseum-title-logo{
    width:min(100%, 720px);
  }

  .colosseum-line{
    font-size:clamp(2.4rem, 13vw, 5.4rem);
  }

  .colosseum-access{
    padding:34px 18px 56px;
  }

  .colosseum-access-inner,
  .colosseum-opening,
  .colosseum-machine-intro,
  .colosseum-machine-grid,
  .colosseum-propaganda,
  .colosseum-split,
  .colosseum-maxim{
    grid-template-columns:1fr;
  }

  .colosseum-access-inner{
    padding:28px 22px;
  }

  .colosseum-status{
    min-width:0;
  }

  .colosseum-opening{
    gap:28px;
    padding:0 22px 76px;
  }

  .colosseum-opening-copy{
    position:static;
  }

  .colosseum-opening-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }

  .opening-page-large{
    grid-column:span 2;
  }

  .colosseum-statement,
  .colosseum-machine,
  .colosseum-propaganda,
  .colosseum-split,
  .colosseum-maxim,
  .colosseum-final{
    padding-left:22px;
    padding-right:22px;
  }

  .colosseum-statement p{
    font-size:clamp(3.1rem, 16vw, 6.8rem);
  }

  .colosseum-machine{
    padding-bottom:72px;
  }

  .colosseum-machine-intro{
    gap:14px;
  }

  .colosseum-machine-grid article{
    min-height:260px;
    border-left:0;
    border-top:1px solid rgba(143,246,230,.18);
  }

  .machine-symbol{
    right:18px;
    top:94px;
    width:104px;
    height:104px;
    opacity:.38;
  }

  .colosseum-panel{
    min-height:340px;
    padding:30px 24px;
  }

  .colosseum-panel::before{
    right:18px;
    top:24px;
    width:108px;
    height:108px;
    opacity:.22;
  }

  .colosseum-panel::after{
    right:46px;
    top:18px;
    width:54px;
    height:48px;
    opacity:.28;
  }

  .colosseum-panel-dark::before{
    right:18px;
    top:24px;
    width:116px;
    height:116px;
  }

  .colosseum-panel-dark::after{
    right:52px;
    top:62px;
    width:54px;
    height:34px;
  }

  .colosseum-propaganda{
    gap:26px;
    padding-bottom:72px;
  }

  .colosseum-propaganda figure{
    max-width:420px;
    transform:rotate(.7deg);
  }

  .colosseum-art-spread{
    padding:0 18px 28px;
  }

  .colosseum-art-spread::after{
    inset:0 18px 28px;
  }

  .colosseum-art-spread p{
    left:38px;
    right:34px;
    bottom:52px;
    font-size:clamp(2.4rem, 13vw, 5.2rem);
  }

  .colosseum-maxim{
    padding-bottom:78px;
  }

  .colosseum-maxim div::before{
    width:96px;
    height:96px;
    opacity:.16;
  }

  .colosseum-maxim div + div{
    border-left:0;
  }

  .colosseum-final h2{
    font-size:clamp(3.6rem, 17vw, 7rem);
  }
}
