:root {
  --paper: #f5f0e6;
  --ink: #111412;
  --acid: #e8ff35;
  --blue: #2046f4;
  --red: #ff4a2f;
  --white: #fffdf7;
  --sc-canvas: var(--paper);
  --sc-surface: var(--white);
  --sc-ink: var(--ink);
  --sc-ink-soft: #4d504c;
  --sc-accent: var(--acid);
  --sc-accent-ink: var(--ink);
  --sc-font-display: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --sc-font-text: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --sc-font-mono: "Arial Narrow", "Helvetica Neue", sans-serif;
  --sc-r-sm: 0;
  --sc-r-md: 0;
  --sc-r-lg: 0;
  --breakout-show: 0;
  --burst-p: 0;
  --value-p: 0;
  --frame-opacity: 0;
  --field-opacity: 0;
  --label-opacity: 0;
  --stamp-opacity: 0;
  --signature-ink: var(--ink);
}

html[data-tone="dark"] { --signature-ink: var(--paper); }
html[data-tone="light"] { --signature-ink: var(--ink); }

html,
body { background: var(--paper); }

body {
  color: var(--ink);
  font-family: var(--sc-font-text);
  font-weight: 700;
  overflow-x: clip;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 200;
  border: 0 solid var(--ink);
}

a { text-decoration: none; }

:focus-visible {
  outline: 4px solid currentColor;
  outline-offset: 4px;
}

.visually-hidden {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.skip-link {
  position: fixed;
  inset-block-start: 0.5rem;
  inset-inline-start: 0.5rem;
  z-index: 300;
  padding: 0.75rem 1rem;
  color: var(--white);
  background: var(--ink);
  border: 3px solid var(--white);
  transform: translateY(-160%);
}

.skip-link:focus { transform: translateY(0); }

/* Full-width sticker bumper. It replaces the old map/chapter chrome. */
.bumper {
  position: fixed;
  inset: 0 0 auto;
  z-index: 100;
  min-block-size: calc(58px + env(safe-area-inset-top));
  padding: env(safe-area-inset-top) clamp(1rem, 2.4vw, 2.5rem) 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  color: var(--ink);
  background: var(--acid);
  border-block-end: 3px solid var(--ink);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.bumper__brand,
.bumper__cta {
  min-block-size: 44px;
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
}

.bumper__brand { justify-self: start; }

.bumper__mark {
  inline-size: 31px;
  block-size: 31px;
  display: grid;
  place-items: center;
  color: var(--acid);
  background: var(--ink);
  font-size: 0.9rem;
  line-height: 1;
  transform: rotate(-4deg);
}

.bumper__status {
  margin: 0;
  display: flex;
  gap: 0.45rem;
  justify-content: center;
}

.bumper__status [data-current-cut] {
  min-inline-size: 8.8rem;
  text-align: end;
}

.bumper__cta {
  justify-self: end;
  padding-inline: 0.8rem;
  color: var(--white);
  background: var(--ink);
  border: 2px solid var(--ink);
  transition: color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.bumper__cta:hover {
  color: var(--ink);
  background: var(--white);
  transform: translate(-3px, -3px);
  box-shadow: 3px 3px 0 var(--ink);
}

.page-progress {
  position: fixed;
  inset: calc(58px + env(safe-area-inset-top)) 0 auto;
  z-index: 101;
  block-size: 5px;
  background: transparent;
  pointer-events: none;
}

.page-progress [data-sc-progress] {
  position: static;
  inset: auto;
  z-index: auto;
  display: block;
  inline-size: 100%;
  block-size: 100%;
  background: var(--red);
  transform: scaleX(0);
  transform-origin: left center;
}

/* Custom signature: a real form frame that breaks into value labels. */
.breakout {
  position: fixed;
  inset: calc(61px + env(safe-area-inset-top)) 0 0;
  z-index: 25;
  overflow: clip;
  pointer-events: none;
  opacity: var(--breakout-show);
  color: var(--signature-ink);
}

.breakout__form {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  overflow: visible;
}

.breakout__line {
  fill: none;
  stroke: currentColor;
  stroke-width: 0.55;
  vector-effect: non-scaling-stroke;
  opacity: var(--frame-opacity);
  transform-box: fill-box;
  transform-origin: center;
  will-change: transform, opacity;
}

.breakout__line--top { transform: translateY(calc(var(--burst-p) * -24vh)) rotate(calc(var(--burst-p) * -5deg)); }
.breakout__line--bottom { transform: translateY(calc(var(--burst-p) * 24vh)) rotate(calc(var(--burst-p) * 4deg)); }
.breakout__line--left { transform: translateX(calc(var(--burst-p) * -22vw)) rotate(calc(var(--burst-p) * -8deg)); }
.breakout__line--right { transform: translateX(calc(var(--burst-p) * 22vw)) rotate(calc(var(--burst-p) * 7deg)); }
.breakout__line--row-a { transform: translateX(calc(var(--burst-p) * 56vw)) rotate(calc(var(--burst-p) * 6deg)); }
.breakout__line--row-b { transform: translateX(calc(var(--burst-p) * -58vw)) rotate(calc(var(--burst-p) * -5deg)); }
.breakout__line--row-c { transform: translateX(calc(var(--burst-p) * 42vw)) translateY(calc(var(--burst-p) * 16vh)) rotate(calc(var(--burst-p) * 9deg)); }
.breakout__line--col { transform: translateY(calc(var(--burst-p) * -70vh)) rotate(calc(var(--burst-p) * -6deg)); }

.breakout__fields {
  position: absolute;
  inset: 19% 11% 15% 11%;
  display: grid;
  grid-template-columns: 21% 1fr;
  grid-template-rows: repeat(4, 1fr);
  align-items: start;
  font-size: clamp(0.68rem, 0.8vw, 0.82rem);
  font-weight: 900;
  letter-spacing: 0.14em;
  opacity: var(--field-opacity);
}

.breakout__fields span:nth-child(1) { grid-column: 1; grid-row: 1; }
.breakout__fields span:nth-child(2) { grid-column: 1; grid-row: 2; }
.breakout__fields span:nth-child(3) { grid-column: 1; grid-row: 3; }
.breakout__fields span:nth-child(4) { grid-column: 1; grid-row: 4; }

.breakout__prompts {
  position: absolute;
  inset: 19% 11% 15% 34%;
  display: grid;
  grid-template-rows: repeat(4, 1fr);
  align-items: start;
  overflow: visible;
  font-size: clamp(1.05rem, 1.65vw, 1.7rem);
  font-weight: 900;
  letter-spacing: -0.025em;
  line-height: 1.35;
  opacity: var(--field-opacity);
}

.breakout__prompts span {
  inline-size: fit-content;
  max-inline-size: 100%;
  opacity: 0.72;
  white-space: nowrap;
  will-change: transform, opacity;
}

.breakout__prompts span:nth-child(1) { transform: translate3d(calc(var(--burst-p) * -34vw), 0, 0) rotate(calc(var(--burst-p) * -3deg)); }
.breakout__prompts span:nth-child(2) { transform: translate3d(calc(var(--burst-p) * 38vw), 0, 0) rotate(calc(var(--burst-p) * 4deg)); }
.breakout__prompts span:nth-child(3) { transform: translate3d(calc(var(--burst-p) * -40vw), calc(var(--burst-p) * 5vh), 0) rotate(calc(var(--burst-p) * -5deg)); }

.value-label {
  --x: 0vw;
  --y: 0vh;
  --r: 0deg;
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  padding: 0.55rem 0.85rem 0.65rem;
  color: var(--ink);
  background: var(--acid);
  border: 3px solid var(--ink);
  box-shadow: 6px 6px 0 var(--ink);
  font-size: clamp(0.86rem, 1.7vw, 1.45rem);
  font-weight: 900;
  letter-spacing: -0.04em;
  line-height: 1;
  white-space: nowrap;
  opacity: var(--label-opacity);
  transform: translate(-50%, -50%) translate(calc(var(--value-p) * var(--x)), calc(var(--value-p) * var(--y))) rotate(calc(var(--value-p) * var(--r))) scale(calc(0.64 + var(--value-p) * 0.36));
  transform-origin: center;
  will-change: transform, opacity;
}

.value-label--a { --x: -35vw; --y: -27vh; --r: -6deg; }
.value-label--b { --x: 4vw; --y: -30vh; --r: 3deg; background: var(--red); color: var(--white); }
.value-label--c { --x: 26vw; --y: -5vh; --r: 5deg; background: var(--white); }
.value-label--d { --x: -31vw; --y: 13vh; --r: 4deg; background: var(--blue); color: var(--white); }
.value-label--e { --x: 11vw; --y: 24vh; --r: -4deg; }
.value-label--f { --x: -8vw; --y: 2vh; --r: 2deg; background: var(--white); }

.breakout__stamp {
  position: absolute;
  inset: 50% auto auto 50%;
  margin: 0;
  inline-size: clamp(6rem, 12vw, 10rem);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  color: var(--red);
  border: clamp(5px, 0.7vw, 9px) solid currentColor;
  font-size: clamp(1rem, 2vw, 1.8rem);
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.05;
  text-align: center;
  opacity: var(--stamp-opacity);
  transform: translate(-50%, -50%) rotate(-9deg) scale(calc(0.72 + var(--value-p) * 0.28));
}

main { position: relative; }

.cut {
  --cut-h: 80;
  position: relative;
  min-block-size: calc(var(--cut-h) * 1svh);
  padding: calc(5.5rem + env(safe-area-inset-top)) clamp(1.25rem, 5vw, 5.5rem) clamp(2.75rem, 6vw, 6rem);
  display: grid;
  align-items: center;
  overflow: clip;
  isolation: auto;
  border-block-end: 3px solid var(--ink);
}

.tone-paper { background: var(--paper); color: var(--ink); }
.tone-ink { background: var(--ink); color: var(--paper); border-color: var(--paper); }
.tone-blue { background: var(--blue); color: var(--white); }
.tone-red { background: var(--red); color: var(--white); }
.tone-acid { background: var(--acid); color: var(--ink); }

.cut__eyebrow {
  margin: 0 0 clamp(1rem, 2vw, 1.75rem);
  font-family: var(--sc-font-mono);
  font-size: clamp(0.72rem, 1vw, 0.9rem);
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.cut h1,
.cut h2,
.cut p { margin-block-start: 0; }

.copy-line {
  display: block;
  white-space: nowrap;
}

/* Cut 1: the opening is visually huge, but its motion stays a single short flow beat. */
.cut--hero {
  --hero-t: clamp(0, calc((var(--sc-p, 0.526) - 0.526) * 2.12), 1);
  block-size: calc(var(--cut-h) * 1svh);
  min-block-size: calc(var(--cut-h) * 1svh);
  align-items: stretch;
  padding-block-end: clamp(1rem, 2vw, 1.75rem);
}

.hero-impact {
  position: relative;
  min-block-size: 0;
  inline-size: 100%;
  block-size: 100%;
  overflow: clip;
  contain: paint;
  isolation: isolate;
  color: var(--ink);
  background: var(--acid);
  border: 4px solid var(--ink);
  box-shadow: clamp(8px, 1vw, 14px) clamp(8px, 1vw, 14px) 0 var(--ink);
}

.hero-impact::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset-block-start: 48%;
  inset-inline-start: 62%;
  inline-size: min(74vw, 64rem);
  aspect-ratio: 1;
  background: repeating-conic-gradient(from -8deg, var(--red) 0 8deg, transparent 8deg 20deg);
  transform: translate(-50%, -50%) rotate(calc(-10deg + var(--hero-t) * 18deg)) scale(calc(0.88 + var(--hero-t) * 0.2));
}

.hero-impact::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset-block: -18%;
  inset-inline-start: 52%;
  inline-size: 19%;
  background: var(--blue);
  border-inline: 4px solid var(--ink);
  transform: translate3d(0, calc(var(--hero-t) * -4vh), 0) rotate(13deg);
}

.hero-impact__glyph {
  position: absolute;
  z-index: 2;
  inset-block-start: 48%;
  inset-inline-start: 62%;
  color: var(--white);
  font-size: clamp(17rem, 45vw, 42rem);
  font-weight: 900;
  letter-spacing: -0.15em;
  line-height: 0.72;
  -webkit-text-stroke: clamp(4px, 0.55vw, 8px) var(--ink);
  text-shadow: clamp(8px, 1vw, 15px) clamp(8px, 1vw, 15px) 0 var(--ink);
  transform: translate3d(calc(-50% + var(--hero-t) * 4vw), calc(-50% - var(--hero-t) * 2vh), 0) rotate(calc(-5deg + var(--hero-t) * 7deg)) scale(calc(0.94 + var(--hero-t) * 0.13));
  transform-origin: center;
}

.hero-impact__calls span {
  --call-x: 0vw;
  --call-y: 0vh;
  --call-r: 0deg;
  --call-spin: 0deg;
  position: absolute;
  z-index: 6;
  padding: 0.55rem 0.8rem 0.62rem;
  color: var(--ink);
  background: var(--white);
  border: 3px solid var(--ink);
  box-shadow: 5px 5px 0 var(--ink);
  font-size: clamp(0.72rem, 1.15vw, 1rem);
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1;
  white-space: nowrap;
  transform: translate3d(calc(var(--hero-t) * var(--call-x)), calc(var(--hero-t) * var(--call-y)), 0) rotate(calc(var(--call-r) + var(--hero-t) * var(--call-spin)));
}

.hero-impact__calls span:nth-child(1) { --call-x: -4vw; --call-y: -3vh; --call-r: -5deg; --call-spin: -3deg; inset: 27% auto auto 34%; }
.hero-impact__calls span:nth-child(2) { --call-x: 5vw; --call-y: -1vh; --call-r: 4deg; --call-spin: 4deg; inset: 45% 3% auto auto; color: var(--white); background: var(--blue); }
.hero-impact__calls span:nth-child(3) { --call-x: 5vw; --call-y: 3vh; --call-r: -3deg; --call-spin: 5deg; inset: auto 4% 13% auto; color: var(--white); background: var(--red); }

.hero-impact__eyebrow {
  position: absolute;
  z-index: 7;
  inset: 6% auto auto 4%;
  margin: 0;
  padding: 0.55rem 0.8rem;
  color: var(--ink);
  background: var(--white);
  border: 3px solid var(--ink);
  font-family: var(--sc-font-mono);
  font-size: clamp(0.7rem, 0.9vw, 0.85rem);
  font-weight: 900;
  letter-spacing: 0.1em;
  transform: rotate(-2deg);
}

.hero-impact__title {
  position: absolute;
  z-index: 5;
  inset: auto auto 7% 4%;
  margin: 0;
  font-size: clamp(3.5rem, 7.4vw, 8rem);
  font-weight: 900;
  letter-spacing: -0.1em;
  line-height: 0.9;
  transform: translate3d(calc(var(--hero-t) * -3vw), calc(var(--hero-t) * -2vh), 0);
}

.hero-impact__title > span {
  inline-size: fit-content;
  padding: 0 0.12em 0.08em;
  display: block;
  border: 3px solid var(--ink);
  white-space: nowrap;
}

.hero-impact__title > span:first-child { color: var(--ink); background: var(--white); }
.hero-impact__title > span:last-child { color: var(--acid); background: var(--ink); }

.hero-impact__note {
  position: absolute;
  z-index: 7;
  inset: 6% 4% auto auto;
  max-inline-size: 28rem;
  margin: 0;
  padding: 0.8rem 1rem;
  color: var(--white);
  background: var(--ink);
  border: 3px solid var(--ink);
  font-size: clamp(0.72rem, 1vw, 0.92rem);
  line-height: 1.55;
  transform: translate3d(calc(var(--hero-t) * -4vw), 0, 0) rotate(2deg);
}

.hero-impact__note strong,
.hero-impact__note span { display: block; }
.hero-impact__note strong { color: var(--acid); }

.cut--hero[data-active] .hero-impact::before,
.cut--hero[data-active] .hero-impact::after,
.cut--hero[data-active] .hero-impact__glyph,
.cut--hero[data-active] .hero-impact__calls span,
.cut--hero[data-active] .hero-impact__title,
.cut--hero[data-active] .hero-impact__note { will-change: transform; }

/* Cuts 2–3 */
.cut__center { position: relative; z-index: 2; inline-size: 100%; }

.cut--pressure h2 {
  margin: 0;
  font-size: clamp(8rem, 25vw, 24rem);
  font-weight: 900;
  letter-spacing: -0.12em;
  line-height: 0.76;
}

.cut--pressure .cut__eyebrow { margin-inline-start: 0.5rem; }

.pressure-note {
  position: absolute;
  inset: auto 0 0 auto;
  margin: 0;
  padding: 0.6rem 0.9rem;
  color: var(--ink);
  background: var(--white);
  border: 3px solid var(--ink);
  box-shadow: 5px 5px 0 var(--ink);
  font-size: clamp(0.72rem, 1.1vw, 0.9rem);
  transform: rotate(-2deg);
}

.pressure-word {
  position: absolute;
  inset: 5% -10% auto;
  color: transparent;
  -webkit-text-stroke: 2px rgba(255,255,255,0.24);
  font-size: 19vw;
  font-weight: 900;
  line-height: 0.8;
  white-space: nowrap;
  transform: rotate(-4deg);
}

.cut--education h2 { background: var(--blue); }

.license-stamps { position: absolute; inset: 12% 4% auto auto; z-index: 1; display: grid; gap: 0.8rem; }

.license-stamps span {
  padding: 0.35rem 0.8rem;
  color: var(--red);
  background: var(--white);
  border: 4px solid currentColor;
  font-size: clamp(1rem, 2.3vw, 2rem);
  font-weight: 900;
  letter-spacing: 0.08em;
}

.license-stamps span:nth-child(1) { transform: rotate(8deg); }
.license-stamps span:nth-child(2) { transform: rotate(-3deg) translateX(-3rem); }
.license-stamps span:nth-child(3) { transform: rotate(4deg) translateX(1rem); }

/* Cut 4 */
.cut--blank { grid-template-columns: 1.2fr 0.8fr; gap: clamp(2rem, 6vw, 7rem); }

.blank-form {
  min-block-size: 54svh;
  display: grid;
  grid-template-rows: 0.6fr repeat(4, 1fr);
  border: 4px solid var(--paper);
}

.blank-form__head,
.blank-form__row {
  min-inline-size: 0;
  display: grid;
  grid-template-columns: 23% 1fr;
  border-block-end: 3px solid var(--paper);
}

.blank-form__head {
  grid-template-columns: 1fr auto;
  align-items: center;
  padding-inline: clamp(0.7rem, 1.4vw, 1.2rem);
  font-family: var(--sc-font-mono);
  font-size: clamp(0.6rem, 0.8vw, 0.76rem);
  letter-spacing: 0.14em;
  opacity: 0.72;
}

.blank-form__row:last-child { border-block-end: 0; }

.blank-form__label,
.blank-form__value {
  min-inline-size: 0;
  display: flex;
  align-items: center;
  padding: clamp(0.65rem, 1.5vw, 1.25rem);
  opacity: 0.28;
  transform: translate3d(0, 0.55rem, 0);
  transition: opacity 420ms cubic-bezier(0.16, 1, 0.3, 1), transform 420ms cubic-bezier(0.16, 1, 0.3, 1);
}

.blank-form__label {
  border-inline-end: 3px solid var(--paper);
  font-family: var(--sc-font-mono);
  font-size: clamp(0.62rem, 0.9vw, 0.78rem);
  font-weight: 900;
  letter-spacing: 0.12em;
}

.blank-form__value {
  color: color-mix(in srgb, var(--paper) 64%, transparent);
  font-size: clamp(0.7rem, 1.15vw, 1rem);
  letter-spacing: 0.02em;
}

.blank-form__row--active .blank-form__label,
.blank-form__row--active .blank-form__value { color: var(--acid); }

.cut--blank[data-active] .blank-form__label,
.cut--blank[data-active] .blank-form__value {
  opacity: 0.58;
  transform: none;
}

.cut--blank[data-active] .blank-form__row--active .blank-form__label,
.cut--blank[data-active] .blank-form__row--active .blank-form__value { opacity: 1; }

.cut--blank[data-active] .blank-form__row:nth-child(2) > * { transition-delay: 40ms; }
.cut--blank[data-active] .blank-form__row:nth-child(3) > * { transition-delay: 100ms; }
.cut--blank[data-active] .blank-form__row:nth-child(4) > * { transition-delay: 170ms; }
.cut--blank[data-active] .blank-form__row:nth-child(5) > * { transition-delay: 240ms; }

.blank-form__caret {
  inline-size: 0.16em;
  block-size: 1.15em;
  margin-inline-start: 0.42em;
  display: inline-block;
  flex: 0 0 auto;
  background: currentColor;
  opacity: 0;
}

.cut--blank[data-active] .blank-form__caret { animation: blank-caret 860ms steps(2, end) infinite; }

@keyframes blank-caret {
  0%, 42% { opacity: 1; }
  43%, 100% { opacity: 0; }
}

.blank-copy { align-self: end; padding-block-end: 1rem; }
.blank-copy h2 { margin: 0; font-size: clamp(5rem, 13vw, 11rem); line-height: 0.8; letter-spacing: -0.1em; }
.blank-copy > p:last-child { margin: 1.5rem 0 0; font-size: clamp(1rem, 2vw, 1.5rem); color: var(--acid); }

/* Cut 5 */
.cut--but { place-items: center; text-align: center; }
.cut--but h2 { position: relative; z-index: 2; margin: 0; background: var(--acid); font-size: clamp(9rem, 31vw, 29rem); font-weight: 900; letter-spacing: -0.13em; line-height: 0.7; }
.but-copy { position: relative; z-index: 2; display: grid; justify-items: center; }
.but-copy > p { margin: clamp(1.8rem, 5vw, 4rem) 0 0; padding: 0.65rem 1rem; color: var(--white); background: var(--ink); border: 3px solid var(--ink); font-size: clamp(0.85rem, 1.5vw, 1.2rem); }
.but-mark { position: absolute; inset: 50% auto auto 50%; color: var(--red); font-size: 75vw; font-weight: 900; line-height: 0.6; opacity: 0.22; transform: translate(-50%, -50%) rotate(12deg); }

/* Cuts 6–7 */
.cut--power { grid-template-columns: 0.8fr 1.2fr; gap: clamp(2rem, 6vw, 7rem); }
.power-copy { position: relative; z-index: 3; }
.power-copy h2 { margin: 0; font-size: clamp(4.5rem, 10vw, 10rem); font-weight: 900; letter-spacing: -0.09em; line-height: 0.92; }
.power-copy > p:last-child { margin: 1.8rem 0 0; padding-block-start: 1rem; max-inline-size: 26rem; border-block-start: 3px solid currentColor; font-size: clamp(0.9rem, 1.4vw, 1.15rem); }

.power-rally { display: flex; align-items: end; transform: rotate(-4deg); }
.power-rally span { inline-size: 33%; aspect-ratio: 0.78; display: grid; place-items: center; color: var(--white); background: var(--blue); border: 4px solid var(--ink); box-shadow: 8px 8px 0 var(--ink); font-size: clamp(4rem, 10vw, 9rem); font-weight: 900; line-height: 1; }
.power-rally span:nth-child(2) { color: var(--ink); background: var(--acid); transform: translateY(-8%); }
.power-rally span:nth-child(3) { color: var(--white); background: var(--red); transform: translateY(-17%); }

.cut--connect { grid-template-columns: 1fr; }
.power-copy--wide h2 { font-size: clamp(5rem, 11.5vw, 12rem); }

.name-tape { position: absolute; inset: 13% -3% auto; z-index: 1; display: flex; justify-content: space-around; transform: rotate(-3deg); }
.name-tape span { padding: 0.55rem 1.1rem; color: var(--ink); background: var(--acid); border: 3px solid var(--ink); box-shadow: 5px 5px 0 var(--ink); font-size: clamp(0.7rem, 1.4vw, 1.05rem); white-space: nowrap; }
.name-tape span:nth-child(2) { transform: translateY(8rem) rotate(5deg); background: var(--white); }
.name-tape span:nth-child(3) { transform: translateY(2rem) rotate(-4deg); background: var(--red); color: var(--white); }

/* Cut 8 */
.cut--quiet { place-items: end stretch; padding-block-end: clamp(3rem, 6vh, 4rem); }
.quiet-question { position: relative; z-index: 31; inline-size: fit-content; max-inline-size: 68%; margin: 0 0 0 32%; justify-self: start; color: var(--acid); font-size: clamp(1.2rem, 2.6vw, 2.2rem); font-weight: 900; line-height: 1.25; text-align: start; }
.quiet-question__lead { margin-block-end: 0.35rem; display: block; color: var(--paper); font-size: 0.52em; letter-spacing: 0.02em; opacity: 0.68; }

/* Cut 9 */
.cut--break { align-items: end; }
.break-copy { position: relative; z-index: 31; inline-size: 100%; display: flex; align-items: end; justify-content: space-between; gap: 2rem; color: var(--ink); }
.break-copy p { margin: 0 0 1rem; font-size: clamp(1rem, 2vw, 1.5rem); line-height: 1.35; }
.break-copy h2 { margin: 0; font-size: clamp(7rem, 18vw, 18rem); font-weight: 900; letter-spacing: -0.12em; line-height: 0.75; text-align: end; }
.break-note { position: absolute; z-index: 31; inset: calc(5.4rem + env(safe-area-inset-top)) auto auto clamp(1.25rem, 5vw, 5.5rem); margin: 0; font-family: var(--sc-font-mono); font-size: 0.72rem; letter-spacing: 0.14em; }

/* Cut 10 */
.cut--claim { text-align: center; }
.claim-copy { position: relative; z-index: 31; inline-size: 100%; }
.claim-copy h2 { margin: 0 auto; font-size: clamp(4rem, 10vw, 9.5rem); font-weight: 900; letter-spacing: -0.09em; line-height: 0.92; }
.claim-copy h2 > span { display: block; background: var(--ink); }
.claim-copy__accent { color: var(--acid); }
.claim-copy__note { margin: clamp(1.5rem, 4vw, 3.2rem) auto 0; font-size: clamp(0.9rem, 1.5vw, 1.2rem); }

/* Cut 11 */
.cut--proof { align-content: center; gap: clamp(2.5rem, 6vw, 6rem); }
.proof-copy h2 { margin: 0; font-size: clamp(4.5rem, 10vw, 10rem); font-weight: 900; letter-spacing: -0.09em; line-height: 0.9; }
.proof-copy__note { margin: clamp(1.4rem, 3vw, 2.4rem) 0 0; max-inline-size: 45rem; font-size: clamp(0.85rem, 1.25vw, 1.05rem); line-height: 1.7; }

.proof-facts { margin: 0; display: grid; grid-template-columns: repeat(4, 1fr); border: 4px solid var(--white); }
.proof-facts div { min-block-size: 10rem; padding: clamp(1rem, 2.5vw, 2rem); display: flex; flex-direction: column; justify-content: space-between; border-inline-end: 3px solid var(--white); }
.proof-facts div:last-child { border-inline-end: 0; background: var(--acid); color: var(--ink); }
.proof-facts dt { font-size: clamp(2rem, 4vw, 4rem); font-weight: 900; letter-spacing: -0.07em; line-height: 1; }
.proof-facts dd { margin: 1rem 0 0; font-size: clamp(0.7rem, 1vw, 0.85rem); }

/* Cut 12 */
.cut--cta { align-content: space-between; padding-block-end: 0; }
.cta-panel { inline-size: 100%; padding-block: clamp(2rem, 5vh, 4rem); }
.cta-panel__kicker { margin: 0 0 1.5rem; font-family: var(--sc-font-mono); font-size: clamp(0.7rem, 1vw, 0.9rem); font-weight: 900; letter-spacing: 0.14em; }
.cta-panel h2 { margin: 0; font-size: clamp(4.4rem, 11vw, 11rem); font-weight: 900; letter-spacing: -0.1em; line-height: 0.9; }
.cta-panel__button { margin-block-start: clamp(2rem, 5vw, 4rem); min-block-size: 84px; padding: 1rem clamp(1.2rem, 3vw, 2.5rem); display: flex; align-items: center; justify-content: space-between; gap: 2rem; color: var(--white); background: var(--ink); border: 4px solid var(--ink); box-shadow: 10px 10px 0 var(--red); font-size: clamp(1.4rem, 3.5vw, 3rem); font-weight: 900; letter-spacing: -0.05em; transition: color 160ms ease, background-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}
.cta-panel__button span { white-space: nowrap; }
.cta-panel__button:hover { color: var(--ink); background: var(--white); transform: translate(-5px, -5px); box-shadow: 15px 15px 0 var(--red); }
.cta-panel__note { margin: 1.5rem 0 0; font-size: clamp(0.78rem, 1.2vw, 1rem); }

.site-footer { margin-inline: calc(clamp(1.25rem, 5vw, 5.5rem) * -1); padding: 1.2rem clamp(1.25rem, 5vw, 5.5rem) calc(1.2rem + env(safe-area-inset-bottom)); display: flex; align-items: center; justify-content: space-between; gap: 2rem; color: var(--white); background: var(--ink); border-block-start: 3px solid var(--ink); font-size: 0.72rem; }
.site-footer p { margin: 0; font-weight: 900; }
.site-footer nav { display: flex; flex-wrap: wrap; gap: 1.25rem; }
.site-footer a { text-decoration: underline; text-underline-offset: 0.25em; }

.no-script { min-block-size: 100svh; padding: 8rem 5vw; display: grid; align-content: center; gap: 1.5rem; color: var(--paper); background: var(--ink); }
.no-script h1 { margin: 0; max-inline-size: 12ch; font-size: clamp(3rem, 9vw, 8rem); line-height: 0.95; }
.no-script p { margin: 0; }
.no-script a { inline-size: fit-content; padding: 1rem 1.4rem; color: var(--ink); background: var(--acid); border: 3px solid var(--paper); }

@media (max-width: 860px) {
  .bumper { min-block-size: calc(52px + env(safe-area-inset-top)); padding-inline: 0.7rem; grid-template-columns: 1fr auto; }
  .bumper__brand { font-size: 0.72rem; gap: 0.45rem; }
  .bumper__mark { inline-size: 28px; block-size: 28px; }
  .bumper__status { display: none; }
  .bumper__cta { padding-inline: 0.6rem; font-size: 0.66rem; gap: 0.35rem; }
  .bumper__cta span { white-space: nowrap; }
  .bumper__cta svg { inline-size: 21px; }
  .page-progress { inset-block-start: calc(52px + env(safe-area-inset-top)); }

  .breakout { inset-block-start: calc(55px + env(safe-area-inset-top)); }
  .breakout__line { stroke-width: 0.8; }
  .breakout__fields { inset: 18% 12% 14%; grid-template-columns: 28% 1fr; font-size: 0.62rem; }
  .breakout__prompts { inset: 18% 10% 14% 38%; font-size: clamp(0.58rem, 2.45vw, 0.82rem); letter-spacing: -0.035em; }
  .value-label { padding: 0.45rem 0.65rem 0.5rem; border-width: 2px; box-shadow: 4px 4px 0 var(--ink); font-size: clamp(0.68rem, 3.3vw, 0.92rem); }
  .value-label--a { --x: -26vw; --y: -30vh; }
  .value-label--b { --x: 13vw; --y: -21vh; }
  .value-label--c { --x: 7vw; --y: -5vh; }
  .value-label--d { --x: -23vw; --y: 11vh; }
  .value-label--e { --x: 10vw; --y: 26vh; }
  .value-label--f { --x: -14vw; --y: 34vh; }
  .breakout__stamp { inline-size: 5.5rem; border-width: 5px; font-size: 0.9rem; }

  .cut {
    min-block-size: calc(var(--cut-h-mobile, var(--cut-h)) * 1svh);
    padding: calc(4rem + env(safe-area-inset-top)) 1rem 2rem;
  }

  .cut[data-cut="0"] { --cut-h-mobile: 96; }
  .cut[data-cut="1"],
  .cut[data-cut="2"] { --cut-h-mobile: 68; }
  .cut[data-cut="3"] { --cut-h-mobile: 74; }
  .cut[data-cut="4"] { --cut-h-mobile: 55; }
  .cut[data-cut="5"] { --cut-h-mobile: 72; }
  .cut[data-cut="6"] { --cut-h-mobile: 70; }
  .cut[data-cut="7"] { --cut-h-mobile: 58; }
  .cut[data-cut="8"] { --cut-h-mobile: 128; }
  .cut[data-cut="9"] { --cut-h-mobile: 78; }
  .cut[data-cut="10"] { --cut-h-mobile: 90; }
  .cut[data-cut="11"] { --cut-h-mobile: 72; }

  .cut--hero {
    block-size: calc(var(--cut-h-mobile) * 1svh);
    min-block-size: calc(var(--cut-h-mobile) * 1svh);
    padding: calc(3.9rem + env(safe-area-inset-top)) 0.65rem 0.9rem;
  }
  .hero-impact { border-width: 3px; box-shadow: 6px 6px 0 var(--ink); }
  .hero-impact::before { inset-block-start: 41%; inset-inline-start: 57%; inline-size: 126vw; }
  .hero-impact::after { inset-inline-start: 57%; inline-size: 29%; border-inline-width: 3px; }
  .hero-impact__glyph { inset-block-start: 41%; inset-inline-start: 57%; font-size: min(78vw, 20rem); -webkit-text-stroke-width: 4px; text-shadow: 7px 7px 0 var(--ink); }
  .hero-impact__calls span { padding: 0.42rem 0.58rem 0.48rem; border-width: 2px; box-shadow: 3px 3px 0 var(--ink); font-size: clamp(0.58rem, 2.55vw, 0.72rem); }
  .hero-impact__calls span:nth-child(1) { --call-x: -5vw; --call-y: -2vh; inset: 20% auto auto 5%; }
  .hero-impact__calls span:nth-child(2) { --call-x: 6vw; --call-y: -1vh; inset: 38% 3% auto auto; }
  .hero-impact__calls span:nth-child(3) { --call-x: -4vw; --call-y: 2vh; inset: 52% auto auto 38%; }
  .hero-impact__eyebrow { inset: 4% auto auto 4%; padding: 0.45rem 0.6rem; border-width: 2px; font-size: 0.62rem; }
  .hero-impact__title { inset: auto auto 20% 4%; font-size: clamp(2.65rem, 13.4vw, 4rem); }
  .hero-impact__title > span { border-width: 2px; }
  .hero-impact__note { inset: auto auto 3.5% 4%; max-inline-size: 92%; padding: 0.62rem 0.72rem; border-width: 2px; font-size: clamp(0.62rem, 2.55vw, 0.7rem); line-height: 1.45; }

  .cut--pressure h2 { font-size: clamp(7.8rem, 39vw, 12rem); }
  .pressure-word { inset-block-start: 15%; font-size: 34vw; }
  .pressure-note { position: relative; inset: auto; inline-size: fit-content; margin: 1.5rem 0 0 auto; font-size: 0.68rem; }
  .license-stamps { inset-block-start: 16%; }
  .license-stamps span { border-width: 3px; font-size: 0.85rem; }
  .license-stamps span:nth-child(2) { transform: rotate(-3deg) translateX(-1.5rem); }

  .cut--blank { grid-template-columns: 1fr; align-content: center; gap: 1.1rem; }
  .blank-form { min-block-size: 32svh; }
  .blank-form__head { padding-inline: 0.55rem; font-size: 0.48rem; }
  .blank-form__label,
  .blank-form__value { padding: 0.55rem; }
  .blank-form__label { font-size: 0.55rem; }
  .blank-form__value { font-size: clamp(0.58rem, 2.7vw, 0.72rem); }
  .blank-copy { text-align: end; }
  .blank-copy h2 { font-size: clamp(5.2rem, 24vw, 7.5rem); }

  .cut--but h2 { font-size: clamp(8rem, 43vw, 13rem); }
  .but-mark { font-size: 130vw; }
  .but-copy > p { margin-block-start: 1.25rem; }

  .cut--power { grid-template-columns: 1fr; align-content: center; gap: 1.4rem; }
  .power-rally { inline-size: min(82vw, 22rem); margin-inline: auto; }
  .power-rally span { border-width: 3px; box-shadow: 5px 5px 0 var(--ink); font-size: clamp(3.5rem, 18vw, 6rem); }
  .power-copy h2,
  .power-copy--wide h2 { font-size: clamp(3.3rem, 15vw, 5.5rem); }
  .power-copy > p:last-child { margin-block-start: 1rem; }
  .name-tape { inset-block-start: 14%; gap: 0.4rem; }
  .name-tape span { padding: 0.35rem 0.45rem; border-width: 2px; box-shadow: 3px 3px 0 var(--ink); font-size: 0.55rem; }
  .name-tape span:nth-child(2) { transform: translateY(5rem) rotate(5deg); }

  .quiet-question { max-inline-size: 100%; margin-inline-start: 0; font-size: clamp(1rem, 4.3vw, 1.12rem); }
  .break-copy { display: block; }
  .break-copy p { font-size: 0.82rem; }
  .break-copy h2 { font-size: clamp(6rem, 27vw, 9rem); text-align: start; }
  .break-note { inset-inline-start: 1.15rem; font-size: 0.55rem; }

  .claim-copy h2 { font-size: clamp(3.1rem, 13vw, 5.1rem); text-align: start; }
  .claim-copy .cut__eyebrow,
  .claim-copy__note { text-align: start; }
  .claim-copy__note { margin-block-start: 1.25rem; }

  .cut--proof { gap: 1.75rem; }
  .proof-copy h2 { font-size: clamp(2.75rem, 13.5vw, 5.6rem); }
  .proof-facts { grid-template-columns: repeat(2, 1fr); border-width: 3px; }
  .proof-facts div { min-block-size: 6.75rem; padding: 0.9rem; border-inline-end: 2px solid var(--white); border-block-end: 2px solid var(--white); }
  .proof-facts div:nth-child(2) { border-inline-end: 0; }
  .proof-facts div:nth-child(n+3) { border-block-end: 0; }
  .proof-facts dt { font-size: clamp(1.8rem, 8vw, 2.6rem); }

  .cut--cta { padding-block-end: 0; }
  .cta-panel { padding-block: 1.4rem; }
  .cta-panel h2 { font-size: clamp(2.75rem, 13vw, 5.8rem); }
  .cta-panel__button { min-block-size: 64px; margin-block-start: 1.5rem; padding: 0.75rem 0.9rem; box-shadow: 7px 7px 0 var(--red); font-size: clamp(1.2rem, 6vw, 1.7rem); }
  .cta-panel__button svg { inline-size: 45px; }
  .site-footer { margin-inline: -1rem; padding: 1rem 1rem calc(1rem + env(safe-area-inset-bottom)); align-items: flex-start; flex-direction: column; gap: 0.65rem; }
  .site-footer nav { gap: 0.9rem; }
}

@media (max-width: 390px) {
  .proof-facts dd { font-size: 0.62rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .bumper__cta:hover,
  .cta-panel__button:hover { transform: none; }

  .breakout__line,
  .breakout__prompts span,
  .value-label,
  .breakout__stamp { will-change: auto; }

  .breakout__prompts span { transform: none !important; }
  .blank-form__caret { animation: none !important; opacity: 1; }

  .cut--hero { --hero-t: 0; }
  .cut--hero[data-active] .hero-impact::before,
  .cut--hero[data-active] .hero-impact::after,
  .cut--hero[data-active] .hero-impact__glyph,
  .cut--hero[data-active] .hero-impact__calls span,
  .cut--hero[data-active] .hero-impact__title,
  .cut--hero[data-active] .hero-impact__note { will-change: auto; }
}

@media (forced-colors: active) {
  .bumper,
  .cut,
  .hero-impact,
  .value-label,
  .proof-facts,
  .cta-panel__button { forced-color-adjust: none; }
}
