:root {
  --ink: #0a0908;
  --ink-2: #14110f;
  --bone: #ece6d9;
  --dim: #8d867a;
  --hot: #ff3d00;
  --line: rgba(236, 230, 217, .16);
  --display: "Anybody", "Arial Narrow", Impact, sans-serif;
  --serif: "Instrument Serif", Georgia, serif;
  --mono: "DM Mono", ui-monospace, Menlo, monospace;
  --pad: clamp(18px, 4vw, 64px);
  --ease: cubic-bezier(.2, .8, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: clip; scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--ink);
  color: var(--bone);
  font-family: var(--mono);
  font-size: 15px;
  line-height: 1.55;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
img, video, canvas { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; margin: 0; padding: 0; }
h1, h2, h3, p, figure { margin: 0; }
::selection { background: var(--hot); color: var(--ink); }
:focus-visible { outline: 2px solid var(--hot); outline-offset: 4px; }

/* ---------- film leader ---------- */
.leader { position: fixed; inset: 0; z-index: 100; pointer-events: none; display: grid; place-items: center; animation: leader-bail 0s 3.2s forwards; }
.leader__half { position: absolute; left: 0; right: 0; height: 50.5%; background: var(--ink); transition: transform .8s cubic-bezier(.8, 0, .1, 1); }
.leader__half--t { top: 0; }
.leader__half--b { bottom: 0; }
.leader__ring {
  position: relative; z-index: 1; width: min(46vw, 300px); aspect-ratio: 1; border-radius: 50%;
  border: 2px solid var(--bone); display: grid; place-items: center;
  background: conic-gradient(var(--hot) var(--sweep, 0deg), transparent 0);
  transition: opacity .2s, transform .5s var(--ease);
}
.leader__ring::before, .leader__ring::after { content: ""; position: absolute; background: var(--bone); opacity: .5; }
.leader__ring::before { width: 180%; height: 1px; }
.leader__ring::after { height: 180%; width: 1px; }
.leader__num { position: relative; z-index: 1; font-family: var(--display); font-weight: 900; font-size: min(26vw, 170px); line-height: 1; font-variation-settings: "wdth" 70; mix-blend-mode: difference; }
.is-open .leader__ring { opacity: 0; transform: scale(1.6); }
.is-open .leader__half--t { transform: translateY(-101%); }
.is-open .leader__half--b { transform: translateY(101%); }
@keyframes leader-bail { to { visibility: hidden; } }

/* ---------- grain ---------- */
.grain {
  position: fixed; inset: -100px; z-index: 90; pointer-events: none; opacity: .13; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 1.2 -.1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation: grain .7s steps(6) infinite;
}
@keyframes grain {
  0% { transform: translate(0, 0); } 20% { transform: translate(-40px, 30px); } 40% { transform: translate(35px, -55px); }
  60% { transform: translate(-60px, -20px); } 80% { transform: translate(50px, 45px); } 100% { transform: translate(-20px, 60px); }
}

/* ---------- HUD ---------- */
.hud, .hud-b {
  position: fixed; left: 0; right: 0; z-index: 80; display: flex; justify-content: space-between; align-items: center;
  padding: 0 var(--pad); mix-blend-mode: difference; color: #fff;
  font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
}
.hud { top: clamp(16px, 2.6vw, 30px); }
.hud-b { bottom: clamp(14px, 2.4vw, 28px); pointer-events: none; }
.hud__logo { font-family: var(--display); font-weight: 900; font-size: 22px; letter-spacing: 0; font-variation-settings: "wdth" 130; display: flex; align-items: flex-start; gap: 4px; }
.hud__logo i { width: 7px; height: 7px; border-radius: 50%; background: #fff; margin-top: 3px; }
.hud__nav { display: flex; gap: clamp(14px, 2.4vw, 34px); align-items: center; }
.hud__nav a { position: relative; padding: 6px 0; }
.hud__nav a:not(.hud__cta)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 2px; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .35s var(--ease); }
.hud__nav a:not(.hud__cta):hover::after { transform: scaleX(1); transform-origin: left; }
.hud__cta { border: 1px solid currentColor; padding: 8px 14px !important; border-radius: 99px; transition: background .25s, color .25s; }
.hud__cta:hover { background: #fff; color: #000; }
.hud-b__scene b { font-weight: 500; margin-right: .6em; }
.hud-b__rec { display: flex; align-items: center; gap: .6em; font-variant-numeric: tabular-nums; }
.hud-b__rec i { width: 8px; height: 8px; border-radius: 50%; background: #fff; animation: blink 1.1s steps(2) infinite; }
@keyframes blink { 50% { opacity: 0; } }

.brackets { position: fixed; inset: clamp(8px, 1.3vw, 16px); z-index: 79; pointer-events: none; mix-blend-mode: difference; }
.brackets i { position: absolute; width: 18px; height: 18px; border: 1px solid #fff; opacity: .7; }
.brackets i:nth-child(1) { top: 0; left: 0; border-right: 0; border-bottom: 0; }
.brackets i:nth-child(2) { top: 0; right: 0; border-left: 0; border-bottom: 0; }
.brackets i:nth-child(3) { bottom: 0; left: 0; border-right: 0; border-top: 0; }
.brackets i:nth-child(4) { bottom: 0; right: 0; border-left: 0; border-top: 0; }

/* ---------- shared ---------- */
.slate { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--hot); display: flex; gap: .8em; align-items: center; margin-bottom: clamp(28px, 5vw, 72px); }
.slate::before { content: ""; width: 34px; height: 1px; background: var(--hot); }
.slate span { color: var(--dim); }
section { position: relative; }
.reveal { opacity: 0; transform: translateY(40px); transition: opacity .8s var(--ease), transform .8s var(--ease); transition-delay: calc(var(--i, 0) * 90ms); }
.reveal.in { opacity: 1; transform: none; }

/* ---------- hero ---------- */
.hero { height: 100svh; min-height: 560px; overflow: hidden; display: flex; align-items: flex-end; }
.hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: contrast(1.25) saturate(1.35) brightness(.8); transform: scale(1.06); }
.hero__shade { position: absolute; inset: 0; background:
  linear-gradient(to top, var(--ink) 0%, rgba(10, 9, 8, .55) 34%, rgba(10, 9, 8, .1) 60%, rgba(10, 9, 8, .55) 100%),
  radial-gradient(120% 80% at 80% 20%, transparent 40%, rgba(10, 9, 8, .7) 100%); }
.hero__cross { position: absolute; top: 42%; left: 50%; width: 46px; height: 46px; transform: translate(-50%, -50%); opacity: .55; }
.hero__cross::before, .hero__cross::after { content: ""; position: absolute; background: var(--bone); }
.hero__cross::before { left: 50%; top: 0; bottom: 0; width: 1px; }
.hero__cross::after { top: 50%; left: 0; right: 0; height: 1px; }
.hero__body { position: relative; width: 100%; padding: 0 var(--pad) clamp(54px, 7vw, 84px); }
.hero__kicker { display: flex; justify-content: space-between; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--bone); opacity: .8; border-bottom: 1px solid var(--line); padding-bottom: 12px; }
.hero__title { position: relative; line-height: .8; margin-top: clamp(8px, 1.5vw, 20px); }
.hero__avon { display: block; font-family: var(--display); font-weight: 900; font-size: clamp(96px, 23.5vw, 420px); letter-spacing: -.03em; white-space: nowrap; text-transform: uppercase; margin-left: -.04em; }
.ltr { display: inline-block; font-variation-settings: "wdth" var(--w, 100); transform: translateY(110%); will-change: font-variation-settings; }
.is-open .ltr { transform: none; transition: transform 1s var(--ease); transition-delay: calc(.35s + var(--i) * 70ms); }
.hero__prod { position: absolute; right: 0; bottom: .32em; font-family: var(--serif); font-style: italic; font-size: clamp(34px, 7.4vw, 132px); color: var(--hot); line-height: 1; transform: rotate(-6deg); text-shadow: 0 2px 30px rgba(10, 9, 8, .6); opacity: 0; }
.is-open .hero__prod { opacity: 1; transition: opacity .6s .95s; }
.hero__foot { display: flex; justify-content: space-between; align-items: flex-end; margin-top: clamp(14px, 2vw, 26px); gap: 20px; }
.hero__tag { font-family: var(--display); font-weight: 800; text-transform: uppercase; font-size: clamp(18px, 2.4vw, 34px); font-variation-settings: "wdth" 140; line-height: 1; }
.hero__tag::before { content: "✕ "; color: var(--hot); }
.hero__scroll { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; display: flex; gap: .7em; align-items: center; }
.hero__scroll span { display: inline-block; animation: nudge 1.4s var(--ease) infinite; color: var(--hot); }
@keyframes nudge { 50% { transform: translateY(6px); } }

/* ---------- tape ---------- */
.tape { position: relative; height: clamp(150px, 20vw, 260px); z-index: 2; margin-top: -30px; overflow: hidden; }
.tape__band { position: absolute; left: -6vw; right: -6vw; top: 50%; padding: .32em 0; font-family: var(--display); font-weight: 900; text-transform: uppercase; font-size: clamp(24px, 4.4vw, 64px); line-height: 1; white-space: nowrap; }
.tape__band--a { background: var(--hot); color: var(--ink); transform: translateY(-50%) rotate(-3.2deg); font-variation-settings: "wdth" 125; z-index: 2; }
.tape__band--b { background: var(--ink-2); color: transparent; -webkit-text-stroke: 1px var(--bone); transform: translateY(-50%) rotate(2.6deg); font-variation-settings: "wdth" 60; border-block: 1px solid var(--line); }
.tape__run { display: inline-flex; animation: run 26s linear infinite; }
.tape__band--b .tape__run { animation-direction: reverse; animation-duration: 34s; }
.tape__run span { padding: 0 .5em; display: inline-flex; align-items: center; gap: 1em; }
.tape__run span::after { content: "✕"; font-size: .6em; -webkit-text-stroke: 0; }
.tape__band--b .tape__run span::after { color: var(--hot); }
@keyframes run { to { transform: translateX(-50%); } }

/* ---------- manifesto ---------- */
.manifesto { padding: clamp(70px, 10vw, 160px) var(--pad) clamp(70px, 9vw, 140px); }
.manifesto__grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 90px); align-items: start; }
.manifesto__text { font-family: var(--display); font-weight: 800; text-transform: uppercase; font-size: clamp(30px, 5.1vw, 92px); line-height: .96; letter-spacing: -.015em; font-variation-settings: "wdth" 78; }
.manifesto__text .w { opacity: .14; transition: opacity .35s linear; }
.manifesto__text .w.on { opacity: 1; }
.manifesto__text em { font-family: var(--serif); font-style: italic; font-weight: 400; text-transform: none; color: var(--hot); letter-spacing: 0; font-size: 1.08em; }
.manifesto__fig { position: relative; margin-top: clamp(0px, 6vw, 110px); transform: rotate(2.5deg); }
.manifesto__fig img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.manifesto__fig figcaption { position: absolute; left: -1px; bottom: -1px; background: var(--hot); color: var(--ink); font-size: 11px; letter-spacing: .14em; padding: 6px 10px; text-transform: uppercase; }
.reveal-img { overflow: hidden; }
.reveal-img img { clip-path: inset(100% 0 0 0); transform: scale(1.25); transition: clip-path 1.2s cubic-bezier(.7, 0, .1, 1), transform 1.6s var(--ease); }
.reveal-img figcaption { opacity: 0; transition: opacity .4s 1s; }
.reveal-img.in img { clip-path: inset(0); transform: none; }
.reveal-img.in figcaption { opacity: 1; }

.creed { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: clamp(60px, 9vw, 140px); border-top: 1px solid var(--line); }
.creed li { padding: 26px clamp(14px, 2vw, 30px) 10px 0; border-right: 1px solid var(--line); }
.creed li + li { padding-left: clamp(14px, 2vw, 30px); }
.creed li:last-child { border-right: 0; }
.creed b { color: var(--hot); font-weight: 400; font-size: 11px; letter-spacing: .18em; }
.creed h3 { font-family: var(--serif); font-weight: 400; font-style: italic; font-size: clamp(26px, 2.8vw, 42px); line-height: 1.05; margin: 14px 0 12px; }
.creed p { color: var(--dim); max-width: 34ch; font-size: 14px; }
.creed li:nth-child(2) { --i: 1; } .creed li:nth-child(3) { --i: 2; }

/* ---------- what we shoot ---------- */
.shoot { padding: clamp(60px, 8vw, 130px) var(--pad); background: var(--ink-2); }
.shoot::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 14px; background: repeating-linear-gradient(-45deg, var(--hot) 0 14px, var(--ink) 14px 28px); }
.row { position: relative; display: grid; grid-template-columns: 4ch 1fr auto; align-items: baseline; gap: clamp(10px, 2vw, 30px); padding: clamp(10px, 1.4vw, 20px) 0; border-bottom: 1px solid var(--line); cursor: default; transition: color .3s, padding .5s var(--ease); }
.row:first-child { border-top: 1px solid var(--line); }
.row__no { font-size: 11px; letter-spacing: .14em; color: var(--hot); }
.row__name { font-family: var(--display); font-weight: 900; text-transform: uppercase; font-size: clamp(40px, 9.2vw, 168px); line-height: .88; letter-spacing: -.02em; font-variation-settings: "wdth" 62; transition: font-variation-settings .7s var(--ease), color .3s; white-space: nowrap; }
.row__desc { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--dim); text-align: right; max-width: 22ch; transition: color .3s; }
@media (hover: hover) {
  .shoot__list:hover .row { color: rgba(236, 230, 217, .22); }
  .shoot__list:hover .row .row__desc { color: rgba(236, 230, 217, .15); }
  .shoot__list .row:hover { color: var(--bone); padding-left: 1.5vw; }
  .shoot__list .row:hover .row__name { font-variation-settings: "wdth" 132; color: var(--hot); }
  .shoot__list .row:hover .row__desc { color: var(--bone); }
}
.peek { position: fixed; top: 0; left: 0; z-index: 60; width: clamp(240px, 26vw, 420px); aspect-ratio: 4 / 3; pointer-events: none; overflow: hidden; opacity: 0; transition: opacity .3s, scale .4s var(--ease); scale: .7; }
.peek.on { opacity: 1; scale: 1; }
.peek img { width: 100%; height: 100%; object-fit: cover; }
.peek::after { content: "● REC"; position: absolute; top: 8px; left: 10px; font-size: 10px; letter-spacing: .16em; color: var(--hot); }

/* ---------- film strip ---------- */
.strip { background: var(--ink); }
.strip__sticky { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; display: flex; align-items: center; }
.strip__slate { position: absolute; top: clamp(70px, 9vh, 110px); left: var(--pad); margin: 0; z-index: 2; }
.strip__track { display: flex; align-items: center; gap: clamp(18px, 2.4vw, 40px); padding: 46px var(--pad); will-change: transform; position: relative;
  background:
    repeating-linear-gradient(90deg, transparent 0 22px, var(--bone) 22px 40px, transparent 40px 62px) top 12px left / auto 16px repeat-x,
    repeating-linear-gradient(90deg, transparent 0 22px, var(--bone) 22px 40px, transparent 40px 62px) bottom 12px left / auto 16px repeat-x,
    #050505;
  border-block: 1px solid var(--line);
}
.strip__lead { flex: none; width: clamp(280px, 34vw, 560px); padding-right: 2vw; }
.strip__lead h2 { font-family: var(--display); font-weight: 900; text-transform: uppercase; font-size: clamp(44px, 6.4vw, 118px); line-height: .88; font-variation-settings: "wdth" 80; }
.strip__lead h2 em { font-family: var(--serif); font-weight: 400; text-transform: none; color: var(--hot); font-size: 1.12em; }
.strip__lead p { margin-top: 24px; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--dim); }
.strip__lead p span { color: var(--hot); display: inline-block; animation: nudge-x 1.4s var(--ease) infinite; }
@keyframes nudge-x { 50% { transform: translateX(8px); } }
.frame { flex: none; position: relative; height: min(58vh, 560px); aspect-ratio: 3 / 2; overflow: hidden; background: #111; }
.frame--tall { aspect-ratio: 4 / 5; }
.frame img { width: 115%; max-width: none; height: 100%; object-fit: cover; transform: translateX(var(--px, 0)); filter: contrast(1.08); }
.frame figcaption { position: absolute; left: 0; bottom: 0; padding: 7px 12px; background: var(--ink); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; }
.frame figcaption b { color: var(--hot); font-weight: 400; margin-right: .8em; }
.strip__end { flex: none; height: min(58vh, 560px); aspect-ratio: 2 / 3; display: grid; place-items: center; background: var(--hot); color: var(--ink); font-family: var(--display); font-weight: 900; text-transform: uppercase; font-size: clamp(40px, 5vw, 84px); line-height: .86; font-variation-settings: "wdth" 60; }

/* ---------- process ---------- */
.process { padding: clamp(80px, 10vw, 170px) var(--pad); }
.process__list li { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: clamp(16px, 4vw, 70px); align-items: end; padding: clamp(18px, 2.4vw, 36px) 0; border-bottom: 1px solid var(--line); }
.process__big { font-family: var(--display); font-weight: 900; text-transform: uppercase; font-size: clamp(64px, 13vw, 260px); line-height: .8; letter-spacing: -.03em; color: transparent; -webkit-text-stroke: 1.5px var(--bone); font-variation-settings: "wdth" 90; transition: color .5s, -webkit-text-stroke-color .5s, font-variation-settings .9s var(--ease); }
.process__list li:nth-child(2) .process__big { font-variation-settings: "wdth" 60; }
.process__list li:hover .process__big { color: var(--hot); -webkit-text-stroke-color: var(--hot); font-variation-settings: "wdth" 120; }
.process__list li:nth-child(2):hover .process__big { font-variation-settings: "wdth" 95; }
.process__list b { color: var(--hot); font-weight: 400; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.process__list p { color: var(--dim); max-width: 40ch; margin-top: 8px; font-size: 14px; }

/* ---------- contact ---------- */
.contact { min-height: 100svh; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; background: radial-gradient(90% 70% at 30% 110%, #7a1c00, var(--ink) 70%); }
.contact__gl { position: absolute; inset: 0; width: 100%; height: 100%; }
.contact__inner { position: relative; padding: clamp(90px, 11vw, 170px) var(--pad) 40px; }
.contact__title { font-family: var(--display); font-weight: 900; text-transform: uppercase; line-height: .78; font-size: clamp(84px, 21vw, 400px); letter-spacing: -.035em; font-variation-settings: "wdth" 72; display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 .14em; }
.contact__roll { font-family: var(--serif); font-style: italic; font-weight: 400; text-transform: none; letter-spacing: -.02em; font-size: 1.02em; color: var(--ink); -webkit-text-stroke: 0; text-shadow: none; background: var(--bone); padding: 0 .12em .06em; transform: rotate(-4deg); display: inline-block; line-height: .9; }
.contact__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(28px, 6vw, 110px); margin-top: clamp(34px, 5vw, 80px); align-items: start; }
.contact__copy { font-family: var(--serif); font-size: clamp(22px, 2.5vw, 38px); line-height: 1.15; max-width: 20ch; }

.form { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(20px, 2.4vw, 34px) clamp(16px, 2vw, 30px); background: rgba(10, 9, 8, .72); border: 1px solid var(--line); padding: clamp(18px, 2.6vw, 40px); backdrop-filter: blur(6px); }
.field { display: block; border: 0; padding: 0; margin: 0; min-width: 0; }
.field > span, .field > legend { display: block; padding: 0; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--hot); margin-bottom: 6px; }
.field input[type="text"], .field input[type="email"], .field textarea {
  width: 100%; background: transparent; border: 0; border-bottom: 2px solid var(--line); border-radius: 0; color: var(--bone);
  font-family: var(--display); font-weight: 700; font-size: clamp(18px, 1.9vw, 28px); font-variation-settings: "wdth" 90; padding: 8px 0 10px; outline: 0; transition: border-color .25s;
}
.field textarea { resize: vertical; min-height: 4.2em; line-height: 1.25; font-weight: 600; }
.field ::placeholder { color: rgba(236, 230, 217, .26); }
.field input:focus, .field textarea:focus { border-color: var(--hot); }
.form.tried .field :invalid { border-color: var(--hot); border-bottom-style: dashed; }
.chips, .field:has(textarea), .cf-turnstile, .form__foot { grid-column: 1 / -1; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chips legend { width: 100%; margin-bottom: 10px; }
.chips label { cursor: pointer; }
.chips input { position: absolute; opacity: 0; pointer-events: none; }
.chips label span { display: block; border: 1px solid var(--line); padding: 8px 14px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; transition: background .2s, color .2s, border-color .2s; }
.chips label:hover span { border-color: var(--bone); }
.chips input:checked + span { background: var(--bone); color: var(--ink); border-color: var(--bone); }
.chips input:focus-visible + span { outline: 2px solid var(--hot); outline-offset: 3px; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.cf-turnstile { min-height: 65px; }
.form__foot { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.send { display: inline-flex; align-items: center; gap: 16px; border: 0; cursor: pointer; background: var(--hot); color: var(--ink); padding: 16px 28px; font-family: var(--display); font-weight: 900; text-transform: uppercase; font-size: clamp(20px, 2.2vw, 32px); font-variation-settings: "wdth" 100; line-height: 1; transition: font-variation-settings .5s var(--ease), background .25s, color .25s; }
.send i { font-style: normal; transition: transform .4s var(--ease); }
.send:hover { font-variation-settings: "wdth" 135; background: var(--bone); }
.send:hover i { transform: translateX(8px); }
.send:disabled { opacity: .55; cursor: progress; }
.form__status { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--bone); flex: 1; min-width: 14ch; }
.form__status.bad { color: var(--hot); }
.form.sent > *:not(.form__foot) { display: none; }
.form.sent .send { display: none; }
.form.sent .form__status { font-family: var(--display); font-weight: 900; font-size: clamp(30px, 4vw, 64px); letter-spacing: -.01em; line-height: .95; font-variation-settings: "wdth" 80; padding: 1.2em 0; }
.foot { position: relative; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 22px var(--pad) clamp(56px, 6vw, 76px); border-top: 1px solid var(--line); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: rgba(236, 230, 217, .7); }
.foot a:hover { color: var(--hot); }

/* ---------- cursor ---------- */
.cursor { position: fixed; top: 0; left: 0; z-index: 95; pointer-events: none; mix-blend-mode: difference; display: none; }
.cursor span { display: block; width: 14px; height: 14px; margin: -7px 0 0 -7px; border: 1px solid #fff; border-radius: 50%; transition: width .3s var(--ease), height .3s var(--ease), margin .3s var(--ease), background .3s; }
.cursor.big span { width: 64px; height: 64px; margin: -32px 0 0 -32px; background: #fff; }
@media (hover: hover) and (pointer: fine) { .cursor { display: block; } }

/* ---------- responsive ---------- */
@media (max-width: 820px) {
  .hud__nav a:not(.hud__cta) { display: none; }
  .hero__kicker span:last-child { display: none; }
  .hero__prod { bottom: .1em; }
  .manifesto__grid { grid-template-columns: 1fr; }
  .manifesto__fig { width: 78%; margin-left: auto; }
  .creed { grid-template-columns: 1fr; }
  .creed li, .creed li + li { border-right: 0; border-bottom: 1px solid var(--line); padding: 22px 0; }
  .row { grid-template-columns: 3ch 1fr; }
  .row__desc { grid-column: 2; text-align: left; max-width: none; }
  .row__name { white-space: normal; }
  .process__list li { grid-template-columns: 1fr; }
  .contact__grid, .form { grid-template-columns: 1fr; }
  .frame { height: 46vh; }
  .strip__end { height: 46vh; }
  .peek { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .grain, .tape__run, .hero__scroll span, .strip__lead p span, .hud-b__rec i { animation: none; }
  .reveal, .reveal-img img, .reveal-img figcaption, .ltr { transition: none; opacity: 1; transform: none; clip-path: none; }
  .manifesto__text .w { opacity: 1; }
}
