:root {
  --page-bg: #fff;
  --rail-bg: transparent;
  --slide-bg: #fff;
  --ink: #111;
  --muted: rgba(17, 17, 17, 0.55);
  --faint: rgba(17, 17, 17, 0.34);
  --rail: 148px;
  --weight-display: 500;
  --weight-heading: 500;
  --weight-label: 600;
  --weight-body: 400;
}

html,
body.interview-page {
  width: 100%;
  min-height: 100%;
  background: var(--page-bg);
}

body.interview-page {
  margin: 0;
  color: var(--ink);
  overflow: hidden;
  font-family: "Inter", sans-serif;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.interview-page * {
  font-family: "Inter", sans-serif;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

.interview-skip {
  position: fixed;
  z-index: 30;
  inset-block-start: 12px;
  inset-inline-start: 12px;
  padding: 9px 13px;
  color: #fff;
  background: #111;
  border-radius: 999px;
  transform: translateY(-160%);
  transition: transform 140ms ease-out;
}

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

.interview-shell {
  display: grid;
  grid-template-columns: var(--rail) minmax(0, 1fr);
  width: 100%;
  height: 100dvh;
  min-height: 640px;
}

.interview-rail {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  padding: 26px 20px;
  background: var(--rail-bg);
}

.interview-brand-row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.interview-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: -0.02em;
  text-decoration: none;
  white-space: nowrap;
}

.interview-brand img {
  display: block;
  width: 58px;
  height: 16px;
}

.interview-brand-mark {
  width: 8px;
  height: 8px;
  background: currentColor;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.interview-rail-toggle {
  display: none;
}

.interview-nav {
  position: absolute;
  inset-inline: 20px;
  top: 50%;
  display: grid;
  align-content: center;
  gap: 3px;
  max-height: calc(100% - 160px);
  margin: 0;
  overflow-y: auto;
  scrollbar-width: none;
  transform: translateY(-50%);
}

.interview-nav::-webkit-scrollbar {
  display: none;
}

.interview-nav button {
  width: 100%;
  padding: 6px 0;
  color: var(--faint);
  border: 0;
  background: transparent;
  text-align: start;
  font: 400 11px/1.3 "Inter", sans-serif;
  transition: color 120ms ease-out;
}

.interview-nav button:hover {
  color: var(--muted);
}

.interview-nav button[aria-current="step"] {
  color: var(--ink);
  font-weight: 600;
}

.interview-main {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.interview-languages {
  display: flex;
  align-items: center;
}

.interview-languages {
  justify-content: flex-start;
  gap: 10px;
  margin-block-start: auto;
}

.interview-languages button {
  min-width: 0;
  height: auto;
  padding: 0;
  color: var(--faint);
  border: 0;
  border-radius: 0;
  background: transparent;
  font: 500 10px/1.2 "Inter", sans-serif;
}

.interview-languages button[aria-pressed="true"] {
  color: var(--ink);
  background: transparent;
  font-weight: 600;
}

.interview-slide {
  --deck-width: calc(100% - 12px);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  align-content: start;
  place-items: start center;
  min-width: 0;
  min-height: 0;
  padding: 10px 20px 0;
  outline: none;
  overflow: hidden;
}

.deck-frame {
  container-type: inline-size;
  position: relative;
  width: var(--deck-width);
  height: 100%;
  aspect-ratio: auto;
  min-width: 0;
  margin: 0 auto;
  overflow: hidden;
  background: var(--slide-bg);
}

.interview-notes {
  box-sizing: border-box;
  width: var(--deck-width);
  padding: 20px 5.2cqi 22px;
  color: var(--ink);
}

.interview-notes p {
  max-width: 880px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(14px, 1.05vw, 17px);
  font-weight: var(--weight-body);
  line-height: 1.55;
  text-wrap: pretty;
}

.pitch-slide {
  --slide-inset: 5.2cqi;
  display: grid;
  padding: 26px var(--slide-inset) var(--slide-inset);
  color: var(--ink);
}

.pitch-meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  color: var(--ink);
  font: 500 clamp(10px, 1.15cqi, 14px)/1.4 "Inter", sans-serif;
  letter-spacing: 0.01em;
}

.pitch-meta span:last-child {
  text-align: end;
}

.pitch-slide h1,
.pitch-slide h2,
.pitch-slide p {
  margin: 0;
}

.pitch-slide h1,
.pitch-slide h2 {
  font-weight: var(--weight-display);
  letter-spacing: -0.04em;
  text-wrap: balance;
}

.pitch-slide p {
  color: var(--muted);
  font-size: clamp(12px, 1.55cqi, 20px);
  font-weight: var(--weight-body);
  line-height: 1.45;
  text-wrap: pretty;
}

.pitch-cover {
  grid-template-rows: auto 1fr;
}

.pitch-cover-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  font: 500 clamp(10px, 1.15cqi, 14px)/1.4 "Inter", sans-serif;
  letter-spacing: 0.01em;
}

.pitch-cover-meta span:last-child {
  text-align: end;
}

.pitch-cover-copy {
  align-self: end;
  max-width: 88%;
}

.pitch-cover h1 {
  font-size: clamp(80px, 12cqi, 220px);
  line-height: 0.88;
}

.pitch-cover h1 span,
.pitch-cover h1 strong {
  display: block;
  font-weight: var(--weight-display);
}

.pitch-cover-arrow {
  position: absolute;
  inset-inline-end: var(--slide-inset);
  inset-block-end: var(--slide-inset);
  width: clamp(96px, 10cqi, 184px);
  aspect-ratio: 1;
}

.pitch-cover-arrow svg {
  display: block;
  width: 100%;
  height: 100%;
}

.pitch-personal {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.pitch-personal-heading {
  align-self: center;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(340px, 1.1fr);
  gap: 5cqi;
  align-items: center;
}

.pitch-personal-copy {
  min-width: 0;
}

.pitch-personal-title {
  display: flex;
  align-items: flex-start;
  gap: 0;
  width: fit-content;
  max-width: 100%;
}

.pitch-personal-origin-sticker {
  position: static;
  z-index: 1;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  margin-block-start: -20px;
  margin-inline-start: -80px;
  padding: 6px 12px 6px 6px;
  border-radius: 8px;
  background: transparent;
  color: #090909;
  text-decoration: none;
  transform: rotate(-7.3deg);
  transform-origin: left center;
  transition-property: transform;
  transition-duration: 160ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
  cursor: pointer;
  user-select: none;
}

.pitch-personal-origin-sticker:hover {
  transform: rotate(-9deg);
}

.pitch-personal-origin-sticker:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

.pitch-personal-origin-sticker.is-pushed {
  animation: pitch-sticker-push 360ms cubic-bezier(0.2, 0, 0, 1);
}

@keyframes pitch-sticker-push {
  0%, 100% { transform: rotate(-7.3deg); }
  30% { transform: translateY(-9px) rotate(-9deg) scale(0.96); }
  68% { transform: translateY(5px) rotate(-6.5deg) scale(0.985); }
}

.pitch-personal-origin-sticker img {
  display: block;
  width: clamp(42px, 4.8cqi, 60px);
  height: clamp(52px, 6cqi, 74px);
  object-fit: contain;
}

.pitch-personal-origin-sticker strong {
  max-width: 11ch;
  font-size: clamp(12px, 1.25cqi, 16px);
  font-weight: 700;
  line-height: 0.96;
  letter-spacing: -0.035em;
  text-transform: uppercase;
}

.pitch-personal-heading h2 {
  max-width: 12ch;
  font-size: clamp(52px, 6.8cqi, 84px);
  line-height: 0.94;
}

.pitch-personal-heading p {
  max-width: 46ch;
  margin-block-start: 2cqi;
}

.pitch-personal-heading figure {
  min-width: 0;
  height: clamp(300px, 36cqi, 460px);
  margin: 0;
  overflow: hidden;
}

.pitch-personal-media {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
  background: #fff;
}

.pitch-personal-heading video {
  display: block;
  min-width: 0;
  min-height: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pitch-personal-footer {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.45fr);
  gap: 6cqi;
  align-items: end;
}

.pitch-personal-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.8cqi;
}

.pitch-personal-facts span {
  display: block;
  color: var(--muted);
  font: 400 clamp(9px, 1cqi, 12px)/1.4 "Inter", sans-serif;
}

.pitch-personal-facts strong {
  display: block;
  margin-block-start: 0.75cqi;
  font-size: clamp(16px, 2cqi, 24px);
  font-weight: var(--weight-heading);
  line-height: 1.08;
}

.pitch-personal-next p {
  color: var(--ink);
  font-size: clamp(12px, 1.25cqi, 16px);
  line-height: 1.4;
}

.pitch-personal-next .interview-links {
  margin-block-start: 1.1cqi;
}

.pitch-agenda {
  grid-template-rows: auto auto 1fr;
}

.pitch-agenda h2 {
  max-width: 56%;
  margin-block-start: 5cqi;
  font-size: clamp(50px, 7.5cqi, 92px);
  line-height: 0.95;
}

.pitch-agenda-lead {
  position: absolute;
  inset-block-start: 18cqi;
  inset-inline-end: 5.2cqi;
  width: 39%;
}

.pitch-agenda-columns {
  align-self: end;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6cqi;
  width: 66%;
  margin-inline-start: auto;
}

.pitch-agenda-columns > div {
  display: grid;
}

.pitch-agenda article {
  display: grid;
  grid-template-columns: 0.42fr 1fr;
  gap: 0.6cqi 1.5cqi;
  padding-block: 1.45cqi;
}

.pitch-agenda article > span {
  grid-row: span 2;
  font: 400 clamp(10px, 1.05cqi, 13px)/1.4 "Inter", sans-serif;
}

.pitch-agenda article strong {
  font-size: clamp(14px, 1.8cqi, 22px);
  font-weight: var(--weight-label);
  line-height: 1.1;
}

.pitch-agenda article p {
  font-size: clamp(10px, 1.05cqi, 13px);
  line-height: 1.35;
}

.pitch-case {
  gap: 2.2cqi 3.2cqi;
}

.pitch-case h2 {
  font-size: clamp(34px, 5.4cqi, 66px);
  line-height: 0.98;
}

.pitch-case-copy > p,
.pitch-system-heading > p,
.pitch-matrix-heading > p {
  margin-block-start: 1.3cqi;
}

.pitch-case-image,
.pitch-compare-image,
.pitch-system-image,
.pitch-matrix-image {
  min-width: 0;
  margin: 0;
  overflow: hidden;
}

.pitch-case-image img,
.pitch-case-image video,
.pitch-compare-image img,
.pitch-system-image img,
.pitch-matrix-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.pitch-case-ai {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  grid-template-rows: auto 1fr auto;
}

.pitch-case-ai .pitch-meta {
  grid-column: 1 / -1;
}

.pitch-case-ai .pitch-case-copy {
  align-self: center;
}

.pitch-case-ai .pitch-case-image {
  min-height: 0;
}

.pitch-case-ai .pitch-method {
  grid-column: 1 / -1;
}

.pitch-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.4cqi;
  margin-block-start: 2.4cqi;
}

.pitch-results article strong {
  display: block;
  font-size: clamp(32px, 5.2cqi, 64px);
  font-weight: var(--weight-heading);
  letter-spacing: -0.05em;
  line-height: 0.9;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.pitch-results article span {
  display: block;
  margin-block-start: 0.8cqi;
  font-size: clamp(11px, 1.2cqi, 15px);
  font-weight: var(--weight-label);
}

.pitch-results article p {
  margin-block-start: 0.45cqi;
  font-size: clamp(9px, 0.95cqi, 12px);
  line-height: 1.35;
}

.pitch-results-compact {
  margin: 0;
}

.pitch-results-compact article strong {
  font-size: clamp(28px, 4.2cqi, 52px);
}

.pitch-method {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3cqi;
}

.pitch-method article {
  padding-block-start: 1.1cqi;
}

.pitch-method strong {
  display: block;
  font-size: clamp(11px, 1.3cqi, 16px);
  font-weight: var(--weight-label);
  line-height: 1.2;
}

.pitch-method p {
  margin-block-start: 0.55cqi;
  font-size: clamp(9px, 0.95cqi, 12px);
  line-height: 1.35;
}

.interview-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6cqi;
  margin-block-start: 1.7cqi;
}

.interview-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  color: var(--ink);
  font-size: clamp(10px, 1.15cqi, 14px);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-offset: 0.2em;
}

.interview-link svg {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
}

.pitch-case-compare {
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  grid-template-rows: auto auto 1fr auto;
  grid-template-areas:
    "meta meta"
    "title title"
    "copy media"
    "results links";
}

.pitch-case-compare .pitch-meta {
  grid-area: meta;
}

.pitch-compare-title {
  grid-area: title;
  max-width: 82%;
  margin-block-start: 1cqi;
}

.pitch-compare-copy {
  grid-area: copy;
  display: grid;
  align-self: stretch;
}

.pitch-compare-copy article {
  padding-block: 1cqi;
}

.pitch-compare-copy span {
  font: 400 clamp(9px, 1cqi, 12px)/1.4 "Inter", sans-serif;
}

.pitch-compare-copy strong {
  display: block;
  margin-block-start: 0.35cqi;
  font-size: clamp(12px, 1.45cqi, 18px);
  font-weight: var(--weight-label);
}

.pitch-compare-copy p {
  margin-block-start: 0.4cqi;
  font-size: clamp(9px, 0.98cqi, 12px);
  line-height: 1.35;
}

.pitch-compare-image {
  grid-area: media;
}

.pitch-case-compare .pitch-results {
  grid-area: results;
}

.pitch-case-compare .interview-links {
  grid-area: links;
  align-self: end;
  justify-self: end;
}

.pitch-case-system {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  grid-template-rows: auto auto 1fr auto;
  grid-template-areas:
    "meta meta"
    "heading heading"
    "steps media"
    "results links";
}

.pitch-case-system .pitch-meta {
  grid-area: meta;
}

.pitch-system-heading {
  grid-area: heading;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 5cqi;
  align-items: end;
  margin-block-start: 0.8cqi;
}

.pitch-system-heading h2 {
  font-size: clamp(34px, 4.8cqi, 58px);
}

.pitch-system-steps {
  grid-area: steps;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
}

.pitch-system-steps article {
  display: grid;
  grid-template-columns: 0.75fr 1.25fr;
  gap: 1cqi;
  padding-block: 1.05cqi;
}

.pitch-system-image {
  grid-area: media;
}

.pitch-case-system .pitch-results {
  grid-area: results;
}

.pitch-case-system .interview-links {
  grid-area: links;
  align-self: end;
  justify-self: end;
}

.pitch-case-matrix {
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  grid-template-rows: auto auto 1fr auto auto;
  grid-template-areas:
    "meta meta"
    "heading media"
    "results media"
    "method method"
    "links links";
}

.pitch-case-matrix .pitch-meta {
  grid-area: meta;
}

.pitch-matrix-heading {
  grid-area: heading;
  align-self: end;
}

.pitch-matrix-heading h2 {
  font-size: clamp(36px, 5cqi, 60px);
}

.pitch-matrix-image {
  grid-area: media;
}

.pitch-matrix-results {
  grid-area: results;
  align-self: start;
}

.pitch-matrix-results article {
  padding: 1.2cqi 0;
}

.pitch-matrix-results article strong {
  font: 500 clamp(14px, 1.8cqi, 22px)/1.1 "Inter", sans-serif;
  letter-spacing: 0;
}

.pitch-matrix-method {
  grid-area: method;
}

.pitch-case-matrix .interview-links {
  grid-area: links;
  justify-self: end;
  margin-block-start: 0;
}

.pitch-work {
  grid-template-rows: auto auto minmax(0, 1fr);
}

.pitch-work h2 {
  max-width: 64%;
  margin-block-start: 3.2cqi;
  font-size: clamp(44px, 6.1cqi, 74px);
  line-height: 0.95;
}

.pitch-work > p {
  position: absolute;
  inset-block-start: 8.4cqi;
  inset-inline-end: 5.2cqi;
  width: 31%;
}

.pitch-projects {
  grid-row: 3;
  align-self: start;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.4cqi;
  margin-block-start: clamp(44px, 4.5cqi, 84px);
}

.pitch-projects a {
  color: var(--ink);
  text-decoration: none;
  text-align: center;
}

.pitch-project-image {
  display: block;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 50%;
  background: #eee;
}

.pitch-project-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 150ms ease-out;
}

.pitch-projects a:hover img {
  transform: scale(1.025);
}

.pitch-projects strong,
.pitch-projects > a > span:last-child {
  display: block;
}

.pitch-projects strong {
  margin-block-start: 1.1cqi;
  font-size: clamp(12px, 1.45cqi, 18px);
  font-weight: var(--weight-label);
}

.pitch-projects > a > span:last-child {
  margin-block-start: 0.3cqi;
  color: var(--muted);
  font-size: clamp(9px, 1cqi, 12px);
}

.pitch-closing {
  grid-template-rows: auto 1fr auto;
}

.pitch-closing-copy {
  align-self: center;
  max-width: 80%;
}

.pitch-closing h2 {
  font-size: clamp(58px, 9.5cqi, 116px);
  line-height: 0.9;
}

.pitch-closing-copy > p {
  max-width: 58ch;
  margin-block-start: 2cqi;
}

.pitch-closing .interview-links {
  margin-block-start: 2cqi;
}

.pitch-closing-topics {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2cqi 2.4cqi;
  padding-block-start: 1.4cqi;
}

.pitch-closing-topics span {
  font: 400 clamp(10px, 1.05cqi, 13px)/1.4 "Inter", sans-serif;
}

.pitch-metrics {
  grid-template-rows: auto auto 1fr;
}

.pitch-metrics-heading {
  display: grid;
  grid-template-columns: 1.18fr 0.82fr;
  gap: 6cqi;
  align-items: end;
  margin-block-start: 5cqi;
}

.pitch-metrics-heading h2 {
  font-size: clamp(44px, 6.8cqi, 82px);
  line-height: 0.94;
}

.pitch-metric-grid {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.6cqi;
}

.pitch-metric-grid article {
  padding-block-start: 1.2cqi;
}

.pitch-metric-grid strong {
  display: block;
  font-size: clamp(30px, 4.3cqi, 52px);
  font-weight: var(--weight-heading);
  line-height: 0.9;
  letter-spacing: -0.05em;
  font-variant-numeric: tabular-nums;
}

.pitch-metric-grid span {
  display: block;
  margin-block-start: 0.9cqi;
  font-size: clamp(11px, 1.25cqi, 15px);
  font-weight: var(--weight-label);
}

.pitch-metric-grid p {
  margin-block-start: 0.45cqi;
  font-size: clamp(9px, 0.95cqi, 12px);
  line-height: 1.35;
}

.pitch-divider {
  grid-template-rows: auto 1fr;
}

.pitch-divider-copy {
  align-self: center;
  max-width: 82%;
}

.pitch-divider h2 {
  font-size: clamp(62px, 9.2cqi, 112px);
  line-height: 0.9;
}

.pitch-divider-copy p {
  max-width: 60ch;
  margin-block-start: 2.2cqi;
}

.pitch-evidence {
  grid-template-rows: auto auto 1fr auto;
  gap: 2.2cqi;
}

.pitch-evidence-heading {
  display: grid;
  grid-template-columns: 1.12fr 0.88fr;
  gap: 5cqi;
  align-items: end;
}

.pitch-evidence-heading h2 {
  font-size: clamp(38px, 5.6cqi, 68px);
  line-height: 0.95;
}

.pitch-stat-grid {
  align-self: center;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.4cqi;
}

.pitch-stat-grid article {
  min-width: 0;
}

.pitch-stat-grid strong {
  display: block;
  font-size: clamp(38px, 5.5cqi, 66px);
  font-weight: var(--weight-heading);
  line-height: 0.9;
  letter-spacing: -0.05em;
  font-variant-numeric: tabular-nums;
}

.pitch-stat-grid span {
  display: block;
  margin-block-start: 0.75cqi;
  font-size: clamp(11px, 1.25cqi, 15px);
  font-weight: var(--weight-label);
}

.pitch-stat-grid p {
  margin-block-start: 0.4cqi;
  font-size: clamp(9px, 0.95cqi, 12px);
  line-height: 1.35;
}

.pitch-evidence-method {
  padding-block-start: 1.3cqi;
}

.pitch-evidence-method article {
  border: 0;
  padding: 0;
}

.pitch-before-after {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  grid-template-rows: auto auto 1fr auto;
  grid-template-areas:
    "meta meta"
    "heading heading"
    "columns media"
    "results links";
  gap: 2.1cqi 3.2cqi;
}

.pitch-before-after .pitch-meta {
  grid-area: meta;
}

.pitch-before-heading {
  grid-area: heading;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 5cqi;
  align-items: end;
}

.pitch-before-heading h2 {
  font-size: clamp(38px, 5.4cqi, 66px);
  line-height: 0.95;
}

.pitch-before-columns {
  grid-area: columns;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.4cqi;
}

.pitch-before-columns article {
  align-self: end;
  padding-block-start: 1.1cqi;
}

.pitch-before-columns article > span {
  font: 400 clamp(9px, 1cqi, 12px)/1.4 "Inter", sans-serif;
}

.pitch-before-columns strong {
  display: block;
  margin-block-start: 0.6cqi;
  font-size: clamp(13px, 1.6cqi, 20px);
  font-weight: var(--weight-label);
  line-height: 1.15;
}

.pitch-before-columns p {
  margin-block-start: 0.55cqi;
  font-size: clamp(9px, 0.98cqi, 12px);
  line-height: 1.4;
}

.pitch-before-after figure {
  grid-area: media;
  min-width: 0;
  margin: 0;
  overflow: hidden;
}

.pitch-before-after figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.pitch-before-after .pitch-results {
  grid-area: results;
}

.pitch-before-after .interview-links {
  grid-area: links;
  align-self: end;
  justify-self: end;
}

.pitch-validation {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  gap: 0;
}

.pitch-validation-heading {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 5cqi;
  align-items: end;
}

.pitch-validation-heading h2 {
  font-size: clamp(42px, 6.2cqi, 76px);
  line-height: 0.94;
}

.pitch-validation-lanes {
  align-self: center;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3cqi;
  margin-block: clamp(48px, 5cqi, 80px);
}

.pitch-validation-lanes article {
  padding-block: 0;
}

.pitch-validation-lanes b {
  display: block;
  font-size: clamp(76px, 10cqi, 132px);
  font-weight: 400;
  letter-spacing: -0.09em;
  line-height: 0.78;
}

.pitch-validation-lanes span {
  display: block;
  margin-block-start: 2.6cqi;
  font: 400 clamp(9px, 1cqi, 12px)/1.4 "Inter", sans-serif;
}

.pitch-validation-lanes strong {
  display: block;
  margin-block-start: 0.8cqi;
  font-size: clamp(18px, 2.5cqi, 30px);
  font-weight: var(--weight-heading);
  line-height: 1.05;
}

.pitch-validation-lanes p {
  margin-block-start: 0.8cqi;
  font-size: clamp(10px, 1.05cqi, 13px);
  line-height: 1.4;
}

.pitch-validation > .interview-links {
  justify-self: end;
  margin-block-start: 0;
}

.interview-controls {
  display: none;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  padding-inline: 26px;
}

.interview-controls button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: max-content;
  min-height: 36px;
  padding: 0;
  color: var(--faint);
  border: 0;
  background: transparent;
  font: 400 11px/1 "Inter", sans-serif;
}

.interview-controls button:hover:not(:disabled) {
  color: var(--ink);
}

.interview-controls button:active:not(:disabled) {
  transform: scale(0.96);
}

.interview-controls button:disabled {
  opacity: 0.2;
  cursor: default;
}

#interview-next {
  justify-self: end;
}

:is(button, a):focus-visible {
  outline: 2px solid #6750e8;
  outline-offset: 4px;
}

/* Interface media inside text slides */
.pitch-shot {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 0.7cqi;
  min-width: 0;
  min-height: 0;
  margin: 0;
}

.pitch-shot-frame {
  display: block;
  min-height: 0;
  overflow: hidden;
  background: #f2f2f2;
}

.pitch-shot-frame img,
.pitch-shot-frame video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top left;
}

.pitch-shot figcaption,
.pitch-before-after figcaption {
  color: var(--muted);
  font: 400 clamp(9px, 1cqi, 12px)/1.4 "Inter", sans-serif;
}

.pitch-compare-title {
  grid-area: title;
  max-width: 82%;
  margin-block-start: 1cqi;
}

.pitch-agenda-shot {
  position: absolute;
  inset-block-end: 5.2cqi;
  inset-inline-start: 5.2cqi;
  width: 24%;
  height: 30%;
}

.pitch-divider.has-media {
  grid-template-rows: auto 1fr auto;
}

.pitch-divider.has-media h2 {
  font-size: clamp(48px, 6.6cqi, 84px);
}

.pitch-divider-screens {
  display: grid;
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: column;
  gap: 2cqi;
}

.pitch-divider-screens .pitch-shot-frame {
  height: clamp(120px, 19cqi, 280px);
}

.pitch-divider-screens .pitch-shot-frame video {
  object-position: center top;
}

.pitch-evidence-body {
  align-self: center;
  min-height: 0;
}

.pitch-evidence-body.has-media {
  align-self: stretch;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 4cqi;
}

.pitch-evidence-body.has-media .pitch-stat-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: center;
  row-gap: 3cqi;
}

.pitch-before-after figure {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 0.7cqi;
}

.pitch-before-after figure video {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: top left;
  background: #f2f2f2;
}

.pitch-validation-lanes article.has-media .pitch-shot-frame {
  height: clamp(110px, 15cqi, 220px);
}

.pitch-validation-lanes article.has-media > span {
  margin-block-start: 1.6cqi;
}

/* Career timeline */
.pitch-timeline {
  grid-template-columns: minmax(0, 0.34fr) minmax(0, 0.66fr);
  grid-template-rows: auto minmax(0, 1fr);
  gap: 3cqi 5cqi;
}

.pitch-timeline .pitch-meta {
  grid-column: 1 / -1;
}

.pitch-timeline-heading {
  align-self: end;
}

.pitch-timeline-heading h2 {
  font-size: clamp(40px, 5.4cqi, 66px);
  line-height: 0.95;
}

.pitch-timeline-heading p {
  margin-block-start: 1.6cqi;
}

.pitch-timeline-list {
  display: grid;
  grid-auto-rows: minmax(0, 1fr);
  min-height: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pitch-timeline-list li {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr) minmax(0, 1.3fr) clamp(56px, 7.5cqi, 104px);
  gap: 2cqi;
  align-items: center;
  min-height: 0;
}

.pitch-timeline-period {
  color: var(--muted);
  font: 400 clamp(10px, 1.05cqi, 13px)/1.35 "Inter", sans-serif;
  font-variant-numeric: tabular-nums;
}

.pitch-timeline-company strong,
.pitch-timeline-company em {
  display: block;
}

.pitch-timeline-company strong {
  font-size: clamp(13px, 1.55cqi, 19px);
  font-weight: var(--weight-label);
  line-height: 1.15;
}

.pitch-timeline-company em {
  margin-block-start: 0.25cqi;
  color: var(--muted);
  font: 400 clamp(10px, 1.05cqi, 13px)/1.35 "Inter", sans-serif;
}

.pitch-timeline-list p {
  font-size: clamp(10px, 1.05cqi, 13px);
  line-height: 1.4;
}

.pitch-timeline-thumb {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #f2f2f2;
}

.pitch-timeline-thumb.is-empty {
  background: transparent;
}

.pitch-timeline-thumb.is-nda {
  position: relative;
}

.pitch-timeline-thumb.is-nda svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  fill: rgba(17, 17, 17, 0.12);
}

.pitch-timeline-thumb.is-nda .is-line {
  fill: none;
  stroke: rgba(17, 17, 17, 0.28);
  stroke-width: 3;
  stroke-linecap: round;
}

.pitch-timeline-thumb.is-nda b {
  position: absolute;
  inset-block-start: 12%;
  inset-inline-start: 9%;
  color: var(--muted);
  font: 600 clamp(8px, 0.8cqi, 11px)/1 "Inter", sans-serif;
  letter-spacing: 0.06em;
}

.pitch-timeline-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* What I am looking for */
.pitch-fit {
  grid-template-columns: minmax(0, 0.34fr) minmax(0, 0.66fr);
  grid-template-rows: auto minmax(0, 1fr);
  gap: 3cqi 5cqi;
}

.pitch-fit .pitch-meta {
  grid-column: 1 / -1;
}

.pitch-fit-photo {
  min-height: 0;
  margin: 0;
  overflow: hidden;
  background: #f2f2f2;
}

.pitch-fit-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
}

.pitch-fit-copy {
  align-self: end;
  min-width: 0;
}

.pitch-fit-copy h2 {
  font-size: clamp(40px, 5.6cqi, 68px);
  line-height: 0.95;
}

.pitch-fit-copy > p {
  max-width: 60ch;
  margin-block-start: 1.6cqi;
}

.pitch-fit-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.8cqi 3cqi;
  margin: 3cqi 0 0;
}

.pitch-fit-facts dt {
  color: var(--muted);
  font: 400 clamp(9px, 1cqi, 12px)/1.4 "Inter", sans-serif;
}

.pitch-fit-facts dd {
  margin: 0.4cqi 0 0;
  font-size: clamp(13px, 1.6cqi, 20px);
  font-weight: var(--weight-heading);
  line-height: 1.2;
}

.pitch-ds {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}

.pitch-ds-screens {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-self: center;
}

.pitch-ds-screens .pitch-shot-frame {
  height: clamp(130px, 19cqi, 280px);
}

/* Deck grid: 12 columns, one gutter. Any repeat(2|3|4|6) with --gap lands on the same column lines.
   Axis A = column 1 (titles, copy), axis B = column 7 (leads, media). Titles start one step below the meta row. */
@media (min-width: 761px) {
  .pitch-slide {
    --gap: 2.4cqi;
    --title-top: 3.2cqi;
    --title-size: clamp(38px, 5.2cqi, 64px);
    --half: repeat(2, minmax(0, 1fr));
    --grid: repeat(12, minmax(0, 1fr));
    --row-gap: 2.4svh;
    /* The frame cannot resolve its own cqi, so its gutter uses % of the content box: equal to --gap inside. */
    column-gap: 2.4%;
  }

  .pitch-case,
  .pitch-before-after,
  .pitch-evidence,
  .pitch-timeline {
    row-gap: var(--row-gap);
  }

  .pitch-case-ai .pitch-case-copy,
  .pitch-case-ai .pitch-case-image,
  .pitch-compare-title,
  .pitch-system-heading,
  .pitch-matrix-heading,
  .pitch-case-matrix .pitch-matrix-image,
  .pitch-before-heading,
  .pitch-evidence-heading,
  .pitch-timeline-heading {
    margin-block-start: calc(var(--title-top) - var(--row-gap)) !important;
  }

  /* Shared title scale for content slides */
  .pitch-metrics-heading h2,
  .pitch-evidence-heading h2,
  .pitch-validation-heading h2,
  .pitch-before-heading h2,
  .pitch-system-heading h2,
  .pitch-matrix-heading h2,
  .pitch-case h2,
  .pitch-agenda h2,
  .pitch-work h2,
  .pitch-timeline-heading h2,
  .pitch-ds-heading h2,
  .pitch-fit-copy h2 {
    max-width: none;
    font-size: var(--title-size);
    line-height: 0.95;
  }

  /* Split heading: title on axis A, lead on axis B, lead sits on the title's last line */
  .pitch-metrics-heading,
  .pitch-evidence-heading,
  .pitch-validation-heading,
  .pitch-before-heading,
  .pitch-system-heading,
  .pitch-timeline-heading,
  .pitch-ds-heading {
    display: grid;
    grid-template-columns: var(--half);
    column-gap: var(--gap);
    align-items: end;
    margin-block-start: var(--title-top);
  }

  .pitch-metrics-heading p,
  .pitch-evidence-heading p,
  .pitch-validation-heading p,
  .pitch-before-heading p,
  .pitch-system-heading p,
  .pitch-timeline-heading p,
  .pitch-ds-heading p {
    max-width: 52ch;
    margin: 0;
  }

  .pitch-metric-grid,
  .pitch-stat-grid,
  .pitch-method,
  .pitch-results,
  .pitch-validation-lanes,
  .pitch-before-columns,
  .pitch-projects,
  .pitch-divider-screens,
  .pitch-ds-screens {
    column-gap: var(--gap);
  }

  /* What I bring / Working together */
  .pitch-agenda {
    grid-template-columns: var(--half);
    grid-template-rows: auto auto minmax(0, 1fr);
    row-gap: 0;
  }

  .pitch-agenda .pitch-meta {
    grid-column: 1 / -1;
  }

  .pitch-agenda h2 {
    grid-column: 1;
    grid-row: 2;
    margin-block-start: var(--title-top);
  }

  .pitch-agenda-lead {
    position: static;
    grid-column: 2;
    grid-row: 2;
    align-self: end;
    width: auto;
    max-width: 52ch;
  }

  .pitch-agenda-shot {
    position: static;
    grid-column: 1;
    grid-row: 3;
    align-self: end;
    width: auto;
    height: auto;
  }

  .pitch-agenda-shot .pitch-shot-frame {
    height: clamp(160px, 24cqi, 300px);
  }

  .pitch-agenda-columns {
    grid-column: 2;
    grid-row: 3;
    align-self: end;
    grid-template-columns: var(--half);
    gap: 0 var(--gap);
    width: auto;
    margin: 0;
  }

  .pitch-agenda:not(.has-media) .pitch-agenda-columns {
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .pitch-agenda:not(.has-media) .pitch-agenda-columns > div {
    display: contents;
  }

  .pitch-agenda article {
    display: block;
    padding-block: 1.6cqi 0;
  }

  .pitch-agenda article > span {
    display: block;
    margin-block-end: 0.7cqi;
    color: var(--muted);
  }

  .pitch-agenda article p {
    margin-block-start: 0.5cqi;
  }

  /* Numbers */
  .pitch-metrics-heading {
    margin-block-start: var(--title-top);
  }

  /* Cases: text on axis A, media from axis B, both start at the title line */
  .pitch-case-ai,
  .pitch-case-compare,
  .pitch-case-system,
  .pitch-case-matrix,
  .pitch-before-after {
    grid-template-columns: var(--half);
  }

  .pitch-case-ai .pitch-case-copy {
    align-self: start;
    margin-block-start: var(--title-top);
  }

  .pitch-case-ai .pitch-case-image,
  .pitch-case-matrix .pitch-matrix-image {
    margin-block-start: var(--title-top);
  }

  .pitch-compare-title {
    max-width: none;
    margin-block-start: var(--title-top);
  }

  .pitch-matrix-heading {
    align-self: start;
    margin-block-start: var(--title-top);
  }

  /* Evidence */
  .pitch-evidence-body.has-media {
    grid-template-columns: var(--half);
    gap: var(--gap);
  }

  /* Proof plan */
  .pitch-validation-lanes {
    margin-block: 3cqi;
  }

  /* Selected work */
  .pitch-work {
    grid-template-columns: var(--half);
    grid-template-rows: auto auto minmax(0, 1fr);
  }

  .pitch-work .pitch-meta,
  .pitch-projects {
    grid-column: 1 / -1;
  }

  .pitch-work h2 {
    grid-column: 1;
    margin-block-start: var(--title-top);
  }

  .pitch-work > p {
    position: static;
    grid-column: 2;
    grid-row: 2;
    align-self: end;
    width: auto;
    max-width: 52ch;
  }

  .pitch-projects {
    align-self: end;
    margin-block-start: 0;
  }

  /* Career: heading split on top, rows on the 12-column grid below */
  .pitch-timeline {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto minmax(0, 1fr);
  }

  .pitch-timeline-list li {
    grid-template-columns: var(--grid);
    column-gap: var(--gap);
  }

  .pitch-timeline-period {
    grid-column: 1 / span 2;
  }

  .pitch-timeline-company {
    grid-column: 3 / span 4;
  }

  .pitch-timeline-list p {
    grid-column: 7 / span 5;
  }

  .pitch-timeline-thumb {
    grid-column: 12;
  }

  /* What I am looking for: photo on axis A, copy on axis B, top and bottom edges shared */
  .pitch-fit {
    grid-template-columns: var(--grid);
    grid-template-rows: auto minmax(0, 1fr);
    row-gap: 0;
  }

  /* Photo and copy share one block: top on the title line, bottom on the last fact. */
  .pitch-fit {
    --fit-height: min(46cqi, calc(100% - var(--title-top)));
  }

  .pitch-fit-photo,
  .pitch-fit-copy {
    align-self: start;
    height: var(--fit-height);
    margin-block-start: var(--title-top);
  }

  .pitch-fit-photo {
    grid-column: 1 / span 5;
  }

  .pitch-fit-copy {
    grid-column: 7 / -1;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
  }

  .pitch-fit-facts {
    align-self: end;
    column-gap: var(--gap);
  }
}

@media (max-width: 1040px) {
  :root {
    --rail: 132px;
  }

  .interview-rail {
    padding-inline: 16px;
  }

  .interview-nav {
    inset-inline: 16px;
  }

  .interview-slide {
    padding-inline: 12px;
  }
}

@media (max-width: 760px) {
  body.interview-page {
    overflow: auto;
  }

  .interview-shell {
    display: block;
    height: auto;
    min-height: 100dvh;
  }

  .interview-rail {
    position: sticky;
    z-index: 20;
    inset-block-start: 0;
    display: block;
    padding: max(8px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 8px max(16px, env(safe-area-inset-left));
    background: rgb(255 255 255 / 94%);
    backdrop-filter: blur(18px);
    border: 0;
  }

  .interview-brand-row {
    justify-content: space-between;
    min-height: 40px;
  }

  .interview-rail-toggle {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    color: var(--muted);
    border: 0;
    background: transparent;
  }

  .interview-nav {
    position: static;
    inset: auto;
    top: auto;
    display: flex;
    gap: 18px;
    max-height: none;
    margin-block: 6px 0;
    padding-block: 8px 4px;
    overflow-x: auto;
    scrollbar-width: none;
    transform: none;
  }

  .interview-nav::-webkit-scrollbar {
    display: none;
  }

  .interview-nav button {
    width: auto;
    min-width: max-content;
    padding: 5px 0;
  }

  .interview-rail:not(.is-open) .interview-nav {
    display: none;
  }

  .interview-main {
    grid-template-rows: auto 52px;
    min-height: calc(100dvh - 60px);
    overflow: visible;
  }

  .interview-controls {
    padding-inline: max(20px, env(safe-area-inset-left)) max(20px, env(safe-area-inset-right));
    padding-block-end: env(safe-area-inset-bottom);
  }

  .interview-languages {
    margin-block-start: 8px;
  }

  .interview-rail:not(.is-open) .interview-languages {
    display: none;
  }

  .interview-controls {
    display: grid;
  }

  .interview-slide {
    --deck-width: 100%;
    display: block;
    min-height: calc(100dvh - 160px);
    padding: 8px max(16px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
    overflow: visible;
  }

  .deck-frame {
    container-type: normal;
    width: 100%;
    height: auto;
    aspect-ratio: auto;
    min-height: calc(100dvh - 156px);
    overflow: visible;
  }

  .pitch-slide {
    display: block;
    padding: 20px clamp(20px, 6vw, 28px) 36px;
  }

  .interview-notes {
    display: block;
    padding: 20px 4px 8px;
  }

  .pitch-meta {
    gap: 16px;
    margin-block-end: clamp(36px, 10vw, 48px);
    font-size: 11px;
  }

  .pitch-cover-copy,
  .pitch-personal-heading,
  .pitch-agenda-columns,
  .pitch-system-heading,
  .pitch-metrics-heading,
  .pitch-evidence-heading,
  .pitch-before-heading,
  .pitch-validation-heading {
    display: block;
    width: auto;
  }

  .pitch-personal-heading {
    margin-block-start: 0;
  }

  .pitch-personal-heading h2 {
    max-width: none;
    font-size: clamp(42px, 13vw, 58px);
    line-height: 0.92;
    text-wrap: balance;
  }

  .pitch-personal-title {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .pitch-personal-heading p {
    max-width: 36ch;
    margin-block-start: 20px;
    font-size: clamp(15px, 4.2vw, 18px);
    line-height: 1.48;
  }

  .pitch-personal-origin-sticker {
    width: fit-content;
    margin: 20px 0 0;
    transform: translateX(-6px) rotate(-7.3deg);
    transform-origin: center;
  }

  .pitch-personal-origin-sticker:hover {
    transform: translateX(-6px) rotate(-9deg);
  }

  .pitch-personal-origin-sticker.is-pushed {
    animation-name: pitch-sticker-push-mobile;
  }

  @keyframes pitch-sticker-push-mobile {
    0%, 100% { transform: translateX(-6px) rotate(-7.3deg); }
    30% { transform: translate(-6px, -9px) rotate(-9deg) scale(0.96); }
    68% { transform: translate(-6px, 5px) rotate(-6.5deg) scale(0.985); }
  }

  .pitch-personal-heading figure {
    height: min(104vw, 440px);
    margin-block-start: 32px;
  }

  .pitch-personal-media {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: minmax(0, 1.18fr) minmax(0, 0.82fr);
    gap: 3px;
  }

  .pitch-personal-media video:first-child {
    grid-column: 1 / -1;
  }

  .pitch-personal-footer {
    display: block;
    margin-block-start: 48px;
  }

  .pitch-personal-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 20px;
  }

  .pitch-personal-facts article:last-child {
    grid-column: 1 / -1;
  }

  .pitch-personal-next {
    margin-block-start: 40px;
  }

  .pitch-cover h1,
  .pitch-closing h2,
  .pitch-divider h2 {
    font-size: clamp(48px, 15vw, 68px);
  }

  .pitch-cover-meta {
    grid-template-columns: 1fr 1fr;
  }

  .pitch-cover-copy p,
  .pitch-agenda-lead,
  .pitch-work > p,
  .pitch-divider-copy p {
    position: static;
    width: auto;
    max-width: none;
    margin-block-start: 28px;
  }

  .pitch-cover-arrow {
    display: none;
  }

  .pitch-agenda h2,
  .pitch-work h2 {
    max-width: none;
    margin-block-start: 0;
    font-size: clamp(42px, 13vw, 58px);
  }

  .pitch-agenda-columns {
    margin-block-start: 36px;
  }

  .pitch-agenda-columns > div + div {
    margin-block-start: 0;
  }

  .pitch-agenda article {
    grid-template-columns: 0.35fr 1fr;
    padding-block: 18px;
  }

  .pitch-case-ai,
  .pitch-case-compare,
  .pitch-case-system,
  .pitch-case-matrix,
  .pitch-before-after {
    display: flex;
    flex-direction: column;
    gap: 28px;
  }

  .pitch-case h2 {
    font-size: clamp(38px, 11.5vw, 52px);
  }

  .pitch-case-copy > p,
  .pitch-system-heading > p,
  .pitch-matrix-heading > p {
    margin-block-start: 18px;
  }

  .pitch-case-image,
  .pitch-compare-image,
  .pitch-system-image,
  .pitch-matrix-image,
  .pitch-before-after figure {
    min-height: 0;
    aspect-ratio: 4 / 3;
    order: 2;
  }

  .pitch-case-copy,
  .pitch-compare-title,
  .pitch-system-heading,
  .pitch-matrix-heading {
    order: 1;
  }

  .pitch-results,
  .pitch-compare-copy {
    order: 3;
  }

  .pitch-method,
  .pitch-matrix-method {
    order: 4;
    grid-template-columns: 1fr;
    gap: 0;
  }

  .pitch-method article {
    padding-block: 16px;
  }

  .pitch-case .interview-links {
    order: 5;
    align-self: start;
  }

  .pitch-projects {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 16px;
    margin-block-start: 36px;
  }

  .pitch-projects strong {
    margin-block-start: 10px;
  }

  .pitch-closing-copy {
    max-width: none;
  }

  .pitch-closing-copy > p {
    margin-block-start: 24px;
  }

  .pitch-closing-topics {
    margin-block-start: 48px;
    padding-block-start: 18px;
    gap: 12px 24px;
  }

  .pitch-metrics,
  .pitch-divider,
  .pitch-evidence,
  .pitch-validation {
    display: block;
  }

  .pitch-metrics-heading h2,
  .pitch-evidence-heading h2,
  .pitch-before-heading h2,
  .pitch-validation-heading h2 {
    font-size: clamp(38px, 11.5vw, 52px);
  }

  .pitch-metrics-heading p,
  .pitch-evidence-heading p,
  .pitch-before-heading p,
  .pitch-validation-heading p {
    margin-block-start: 20px;
  }

  .pitch-metric-grid,
  .pitch-stat-grid {
    grid-template-columns: 1fr 1fr;
    gap: 28px 16px;
    margin-block-start: 40px;
  }

  .pitch-validation-lanes {
    grid-template-columns: 1fr;
    gap: 44px;
    margin-block-start: 40px;
  }

  .pitch-validation-lanes b {
    font-size: 84px;
  }

  .pitch-validation-lanes span {
    margin-block-start: 18px;
  }

  .pitch-metric-grid article,
  .pitch-stat-grid article,
  .pitch-validation-lanes article {
    padding-block: 16px;
  }

  .pitch-evidence-method {
    margin-block-start: 40px;
  }

  .pitch-before-columns {
    order: 3;
    grid-template-columns: 1fr;
    gap: 0;
  }

  .pitch-before-columns article {
    padding-block: 18px;
  }
}

@media (max-width: 480px) {
  .pitch-slide {
    padding-inline: 20px;
  }

  .pitch-meta {
    margin-block-end: 36px;
  }

  .pitch-slide p,
  .interview-notes p {
    font-size: 15px;
  }

  .pitch-results {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }

  .pitch-results article strong {
    font-size: 38px;
  }

  .pitch-agenda article {
    grid-template-columns: 1fr;
  }

  .pitch-agenda article > span {
    grid-row: auto;
  }

  .pitch-projects {
    grid-template-columns: 1fr 1fr;
  }

  .interview-controls button span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
  }
}

@media (max-width: 360px) {
  .interview-slide {
    padding-inline: 8px;
  }

  .pitch-slide {
    padding-inline: 16px;
  }

  .pitch-personal-heading h2,
  .pitch-agenda h2,
  .pitch-work h2 {
    font-size: 40px;
  }

  .pitch-personal-heading figure {
    height: 360px;
  }

  .pitch-metric-grid,
  .pitch-stat-grid,
  .pitch-results {
    grid-template-columns: 1fr;
  }

  .pitch-projects {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
  .pitch-personal-origin-sticker,
  .pitch-personal-origin-sticker:hover {
    transform: translateX(-6px) rotate(-7.3deg);
  }
}

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

@media (max-width: 760px) {
  .pitch-shot {
    gap: 8px;
  }

  .pitch-shot figcaption,
  .pitch-before-after figcaption {
    font-size: 11px;
  }

  .pitch-shot-frame {
    aspect-ratio: 16 / 10;
  }

  .pitch-compare-title,
  .pitch-agenda h2 {
    max-width: none;
  }

  .pitch-agenda-shot {
    position: static;
    width: auto;
    height: auto;
    margin-block-start: 32px;
  }

  .pitch-divider-screens {
    grid-auto-flow: row;
    gap: 24px;
    margin-block-start: 36px;
  }

  .pitch-divider-screens .pitch-shot-frame,
  .pitch-validation-lanes article.has-media .pitch-shot-frame {
    height: auto;
  }

  .pitch-evidence-body.has-media {
    display: block;
  }

  .pitch-ds-heading p {
    margin-block-start: 20px;
  }

  .pitch-ds-screens {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-block: 36px 8px;
  }

  .pitch-ds-screens .pitch-shot-frame {
    height: auto;
  }

  .pitch-evidence-shot {
    margin-block-start: 32px;
  }

  .pitch-before-after figure {
    aspect-ratio: auto;
  }

  .pitch-before-after figure video {
    aspect-ratio: 4 / 3;
    height: auto;
  }

  .pitch-timeline-heading,
  .pitch-fit-copy {
    margin-block-start: 0;
  }

  .pitch-timeline-list {
    margin-block-start: 32px;
  }

  .pitch-timeline-list li {
    grid-template-columns: minmax(0, 1fr) 76px;
    gap: 6px 16px;
    padding-block: 14px;
  }

  .pitch-timeline-period,
  .pitch-timeline-company,
  .pitch-timeline-list p {
    grid-column: 1;
  }

  .pitch-timeline-thumb {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: start;
  }

  .pitch-timeline-period,
  .pitch-timeline-company em,
  .pitch-timeline-list p {
    font-size: 13px;
  }

  .pitch-timeline-company strong {
    font-size: 17px;
  }

  .pitch-fit-photo {
    width: min(220px, 60%);
    aspect-ratio: 3 / 4;
    margin-block-end: 28px;
  }

  .pitch-fit-copy > p {
    margin-block-start: 18px;
  }

  .pitch-fit-facts {
    grid-template-columns: 1fr 1fr;
    gap: 18px 16px;
    margin-block-start: 28px;
  }

  .pitch-fit-facts dt {
    font-size: 11px;
  }

  .pitch-fit-facts dd {
    font-size: 15px;
  }
}

@media (max-width: 480px) {
  .pitch-fit-facts {
    grid-template-columns: 1fr;
  }
}
