/* ========================================================================== */
/* Fire CMA v1.9.0 — Kinetic Editorial                                       */
/* Original Fire system: cinematic clarity, editorial scale, precise motion. */
/* ========================================================================== */

:root {
  --fire-v19-ink: #100202;
  --fire-v19-black: #080000;
  --fire-v19-paper: #fff8f5;
  --fire-v19-paper-deep: #f4e9e5;
  --fire-v19-red: #fc0b0a;
  --fire-v19-orange: #ff5a13;
  --fire-v19-line-dark: rgba(255, 248, 245, .15);
  --fire-v19-line-light: rgba(16, 2, 2, .12);
  --fire-v19-shadow: 0 30px 90px rgba(31, 4, 4, .14);
  --fire-v19-radius: 28px;
  --fire-v19-ease: cubic-bezier(.18, .72, .22, 1);
}

body { background: var(--fire-v19-paper); }
.site-main--v19 { overflow: clip; }
.site-main--v19 .section { padding-block: clamp(88px, 8vw, 136px); }
.site-main--v19 .section-title { text-wrap: balance; }
.site-main--v19 .section-copy { text-wrap: pretty; }

/* Hero */
.hero.hero--v19 {
  min-height: max(780px, 100svh);
  padding-top: clamp(114px, 8vw, 142px);
  padding-bottom: 28px;
  background:
    radial-gradient(circle at 82% 26%, rgba(252, 11, 10, .3), transparent 26%),
    linear-gradient(130deg, #060000 0%, #100202 54%, #210303 100%);
}

.hero--v19::before {
  opacity: .7;
  background:
    linear-gradient(rgba(255, 248, 245, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 248, 245, .035) 1px, transparent 1px);
  background-size: clamp(76px, 7.4vw, 116px) clamp(76px, 7.4vw, 116px);
}

.hero--v19::after {
  background: linear-gradient(90deg, rgba(0, 0, 0, .18), transparent 42%, rgba(0, 0, 0, .12));
}

.hero--v19 .hero__mesh { opacity: .62; }
.hero--v19 .hero__noise { opacity: .035; }
.hero--v19 .hero__grid {
  min-height: 570px;
  grid-template-columns: minmax(0, .91fr) minmax(0, 1.09fr);
  gap: clamp(46px, 5.8vw, 94px);
}

.hero--v19 .hero__content { max-width: 720px; }
.hero--v19 .hero__eyebrow { margin-bottom: 16px; color: rgba(255, 248, 245, .66); }
.hero--v19 .hero__title {
  max-width: 9.5ch;
  margin: 0 0 20px;
  font-size: clamp(72px, 7.1vw, 128px);
  line-height: .86;
  letter-spacing: -.068em;
}

html[dir="rtl"] .hero.hero--v19 .hero__title {
  max-width: 9.5ch;
  font-size: clamp(70px, 6.8vw, 122px);
  line-height: .9;
  letter-spacing: -.06em;
}

html[dir="ltr"] .hero--v19 .hero__title {
  max-width: 9ch;
  font-size: clamp(68px, 6.65vw, 120px);
  line-height: .87;
}

.hero--v19 .hero__title-line {
  overflow: hidden;
  padding-block: .16em .22em;
  margin-block: -.16em -.22em;
}
.hero--v19 .hero__title.is-visible .hero__title-line { animation: fire-v19-title-unclip 0s linear 1.1s forwards; }
@keyframes fire-v19-title-unclip { to { overflow: visible; } }
.hero__kinetic-token {
  display: inline-block;
  transform: translateY(112%) rotate(3deg);
  opacity: 0;
  transition:
    transform .78s var(--fire-v19-ease),
    opacity .42s ease;
  transition-delay: calc(80ms + var(--kinetic-order) * 22ms);
  will-change: transform;
}

.hero__title.is-visible .hero__kinetic-token { transform: translateY(0) rotate(0); opacity: 1; }

.hero__live-signal {
  width: min(100%, 420px);
  min-height: 32px;
  margin: 0 0 20px;
  display: grid;
  grid-template-columns: 8px auto minmax(86px, auto) 1fr;
  align-items: center;
  gap: 10px;
  color: rgba(255, 248, 245, .54);
}

.hero__live-signal > i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--fire-v19-red);
  box-shadow: 0 0 0 6px rgba(252, 11, 10, .11);
  animation: fire-v19-pulse 2s ease-in-out infinite;
}

.hero__live-signal small,
.hero__live-signal strong {
  font: 800 9px/1 var(--font-en);
  letter-spacing: .13em;
  text-transform: uppercase;
}

.hero__live-signal strong {
  min-width: 9ch;
  color: var(--fire-v19-paper);
  font-family: inherit;
  font-size: 11px;
  letter-spacing: .04em;
  transition: transform .18s ease, opacity .18s ease;
}

html[dir="rtl"] .hero__live-signal strong { letter-spacing: 0; }
.hero__live-signal.is-changing strong { transform: translateY(6px); opacity: 0; }
.hero__live-signal > span { height: 1px; background: linear-gradient(90deg, var(--fire-v19-red), transparent); }
html[dir="rtl"] .hero__live-signal > span { background: linear-gradient(270deg, var(--fire-v19-red), transparent); }

.hero--v19 .hero__lead { margin-bottom: 24px; font-size: clamp(16px, 1.08vw, 19px); }
.hero--v19 .hero__actions { gap: 22px; }
.hero--v19 .hero__actions .button { min-height: 56px; padding-inline: 26px; border-radius: 999px; }
.hero--v19 .hero__disciplines {
  margin-top: 34px;
  padding-top: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 0;
}

.hero--v19 .hero__disciplines span {
  position: relative;
  min-height: 90px;
  padding: 14px 12px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid rgba(255, 248, 245, .15);
  border-inline-end: 0;
  border-radius: 0;
  color: rgba(255, 248, 245, .74);
  font-size: 11px;
  transition: color .3s ease, background .3s ease, transform .3s var(--fire-v19-ease);
}

.hero--v19 .hero__disciplines span:first-child { padding-inline-start: 12px; border-inline-start: 1px solid rgba(255, 248, 245, .15); border-radius: 18px 0 0 18px; }
.hero--v19 .hero__disciplines span:last-child { border-inline-end: 1px solid rgba(255, 248, 245, .15); border-radius: 0 18px 18px 0; }
html[dir="rtl"] .hero--v19 .hero__disciplines span:first-child { border-radius: 0 18px 18px 0; }
html[dir="rtl"] .hero--v19 .hero__disciplines span:last-child { border-radius: 18px 0 0 18px; }
.hero--v19 .hero__disciplines small { color: var(--fire-v19-red); }

.hero-collage--v19 { min-height: 540px; }
.hero-collage--v19 .hero-collage__main,
html[dir="rtl"] .hero-collage--v19 .hero-collage__main {
  inset: 3% 0 7%;
  border: 1px solid rgba(255, 248, 245, .18);
  border-radius: var(--fire-v19-radius);
  box-shadow: 0 42px 120px rgba(0, 0, 0, .36);
  transform: none;
}

.hero-collage--v19 .hero-collage__main::after {
  background: linear-gradient(180deg, transparent 70%, rgba(16, 2, 2, .68));
}

.hero-collage--v19 .hero-collage__main img { filter: none; transform: none; }
.hero-collage--v19 .hero-collage__main:hover img { filter: none; transform: scale(1.018); }
.hero-collage--v19 .hero-collage__accent {
  width: 28%;
  inset-inline-start: -7%;
  inset-inline-end: auto;
  bottom: 0;
  border: 7px solid var(--fire-v19-paper);
  border-radius: 18px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
  transform: rotate(-4deg);
}

html[dir="rtl"] .hero-collage--v19 .hero-collage__accent { transform: rotate(4deg); }
.hero-collage--v19 .hero-collage__accent img { filter: none; mix-blend-mode: normal; }
.hero-collage--v19 .hero-collage__index { top: 0; inset-inline-end: 0; inset-inline-start: auto; }
.hero-collage--v19 .hero-collage__stamp {
  top: auto;
  right: auto;
  bottom: 5%;
  inset-inline-end: 4%;
  padding: 9px 13px;
  border-radius: 999px;
  box-shadow: none;
  transform: none;
}

.hero--v19 .hero__meta { margin-top: 14px; }

@keyframes fire-v19-pulse {
  50% { box-shadow: 0 0 0 10px rgba(252, 11, 10, 0); }
}

/* Capability signal rail */
.expertise-marquee--signal {
  padding: clamp(24px, 3vw, 42px) 0;
  color: var(--fire-v19-ink);
  background: var(--fire-v19-paper);
  border-block: 1px solid var(--fire-v19-line-light);
}

.expertise-marquee--signal .expertise-marquee__track {
  gap: clamp(14px, 1.4vw, 22px);
  animation: fire-v19-capability-rail 42s linear infinite;
  animation-play-state: paused;
}

.expertise-marquee--signal.is-running .expertise-marquee__track { animation-play-state: running; }
.expertise-marquee--signal:hover .expertise-marquee__track { animation-play-state: paused; }
.expertise-marquee--signal .expertise-marquee__group { gap: clamp(14px, 1.4vw, 22px); padding-inline-end: clamp(14px, 1.4vw, 22px); }
.expertise-marquee--signal .expertise-marquee__group > span {
  width: clamp(148px, 12vw, 190px);
  aspect-ratio: 1;
  padding: 19px;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
  align-items: start;
  border: 1px solid rgba(16, 2, 2, .15);
  border-radius: 50%;
  white-space: normal;
  transition: color .35s ease, background .35s ease, border-color .35s ease, transform .35s var(--fire-v19-ease);
}

.expertise-marquee--signal .expertise-marquee__group > span:hover {
  color: #fff;
  background: var(--fire-v19-red);
  border-color: var(--fire-v19-red);
  transform: rotate(-3deg);
}

.expertise-marquee--signal b { color: var(--fire-v19-red); font: 800 10px/1 var(--font-en); }
.expertise-marquee--signal em { grid-column: 1 / -1; align-self: end; font: 800 clamp(14px, 1.2vw, 18px)/1.15 inherit; font-style: normal; text-transform: none; }
.expertise-marquee--signal i { width: 8px; height: 8px; margin: 0; border-radius: 50%; background: currentColor; }
.expertise-marquee--signal span:hover b { color: #fff; }

@keyframes fire-v19-capability-rail {
  to { transform: translateX(calc(-50% - 11px)); }
}

html[dir="rtl"] .expertise-marquee--signal .expertise-marquee__track { animation-direction: reverse; }

/* Editorial rhythm */
.site-main--v19 .story { padding-block: clamp(104px, 10vw, 170px); }
.site-main--v19 .story__grid { gap: clamp(64px, 8vw, 132px); }
.site-main--v19 .story__image-wrap { border-radius: var(--fire-v19-radius); box-shadow: var(--fire-v19-shadow); }
.site-main--v19 .story__image-wrap::after { border-color: rgba(16, 2, 2, .08); border-radius: inherit; }
.site-main--v19 .story__image { filter: none; }
.site-main--v19 .story__year { width: 132px; height: 132px; bottom: -34px; box-shadow: 0 18px 50px rgba(252, 11, 10, .24); }
.site-main--v19 .story__content .section-title { max-width: 10ch; }

.site-main--v19 .manifesto {
  background:
    radial-gradient(circle at 82% 15%, rgba(252, 11, 10, .2), transparent 25%),
    var(--fire-v19-black);
}

.site-main--v19 .manifesto__flare { opacity: .38; }
.site-main--v19 .manifesto__line { border-bottom-color: var(--fire-v19-line-dark); }
.site-main--v19 .manifesto__line span { max-width: 20ch; text-wrap: balance; }

.site-main--v19 .visual-break { min-height: min(82svh, 840px); }
.site-main--v19 .visual-break__content { min-height: min(82svh, 840px); }
.site-main--v19 .visual-break__image { filter: none; }
.site-main--v19 .visual-break__veil { background: linear-gradient(90deg, rgba(8, 0, 0, .82), transparent 70%); }
html[dir="rtl"] .site-main--v19 .visual-break__veil { background: linear-gradient(270deg, rgba(8, 0, 0, .82), transparent 70%); }

/* Capability story stack */
.services--v19 { padding-bottom: clamp(120px, 12vw, 220px) !important; background: var(--fire-v19-black); }
.services--v19 .services__layout { grid-template-columns: minmax(260px, .58fr) minmax(0, 1.42fr); gap: clamp(50px, 6vw, 96px); }
.services--v19 .services__intro { top: 114px; }
.services--v19 .services__intro .section-title { max-width: 8ch; }
.services--v19 .services__signature { margin-top: 32px; }
.services--v19 .services__list { display: grid; gap: 24px; border: 0; }

.services--v19 .service-card--lane {
  --service-surface: #1b0808;
  --service-ink: var(--fire-v19-paper);
  --service-muted: rgba(255, 248, 245, .62);
  position: sticky;
  top: 110px;
  min-height: 500px;
  padding: clamp(28px, 3vw, 46px);
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: auto 1fr auto;
  gap: 24px;
  color: var(--service-ink);
  background: var(--service-surface);
  border: 1px solid rgba(255, 248, 245, .13);
  border-radius: var(--fire-v19-radius);
  box-shadow: 0 28px 100px rgba(0, 0, 0, .28);
  overflow: hidden;
  isolation: isolate;
}

.services--v19 .service-card--lane:nth-child(2) { --service-surface: var(--fire-v19-red); top: 124px; }
.services--v19 .service-card--lane:nth-child(3) {
  --service-surface: var(--fire-v19-paper);
  --service-ink: var(--fire-v19-ink);
  --service-muted: rgba(16, 2, 2, .62);
  top: 138px;
  border-color: rgba(16, 2, 2, .1);
}
.services--v19 .service-card--lane:nth-child(4) { --service-surface: #35100c; top: 152px; }
.services--v19 .service-card--lane::before {
  z-index: -1;
  background: radial-gradient(circle at 86% 78%, rgba(255, 248, 245, .11), transparent 29%);
  opacity: 0;
  transform: none;
  transition: opacity .6s ease;
}
.services--v19 .service-card--lane.is-current::before { opacity: 1; transform: none; }
.services--v19 .service-card--lane:hover { background: var(--service-surface); }
.services--v19 .service-card__top { grid-column: 1 / -1; grid-row: 1; }
.services--v19 .service-card__top span { color: currentColor; font-size: 16px; }
.services--v19 .service-card__top i { background: currentColor; opacity: .3; }
.services--v19 .service-card__top small { color: currentColor; opacity: .46; }
.services--v19 .service-card__body { grid-column: 1 / 8; grid-row: 2; align-self: center; }
.services--v19 .service-card--lane h3 { max-width: 11ch; margin: 0 0 18px; color: var(--service-ink); font-size: clamp(42px, 4vw, 68px); line-height: .98; text-wrap: balance; }
.services--v19 .service-card--lane p { max-width: 52ch; color: var(--service-muted); font-size: 16px; line-height: 1.75; }
.services--v19 .service-card__tags { grid-column: 1 / 9; grid-row: 3; }
.services--v19 .service-card__tags li { color: var(--service-ink); border-color: currentColor; opacity: .64; }

.service-card__signal {
  grid-column: 9 / -1;
  grid-row: 2 / 4;
  position: relative;
  min-height: 280px;
  display: grid;
  place-items: center;
  align-self: end;
}

.service-card__signal > span {
  position: absolute;
  z-index: 2;
  font: 900 clamp(58px, 6vw, 96px)/1 var(--font-en);
  letter-spacing: -.08em;
}

.service-card__signal > i { position: relative; width: min(100%, 280px); aspect-ratio: 1; display: block; }
.service-card__signal b { position: absolute; inset: 0; border: 1px solid currentColor; border-radius: 50%; opacity: .2; }
.service-card__signal b:nth-child(2) { inset: 14%; }
.service-card__signal b:nth-child(3) { inset: 31%; background: currentColor; opacity: .08; }
.service-card__signal small { position: absolute; bottom: 4%; font: 800 8px/1 var(--font-en); letter-spacing: .14em; opacity: .44; }
.service-card--lane.is-current .service-card__signal b:first-child { animation: fire-v19-orbit 14s linear infinite; }
.service-card--lane.is-current .service-card__signal b:nth-child(2) { animation: fire-v19-orbit 9s linear infinite reverse; }

@keyframes fire-v19-orbit {
  50% { transform: rotate(180deg) scale(.94); border-radius: 42%; }
  to { transform: rotate(360deg); }
}

/* Selected work */
.work--v19 { background: var(--fire-v19-paper); }
.work--v19 .work__heading { margin-bottom: clamp(46px, 5vw, 72px); }
.project-feature { margin-bottom: clamp(72px, 8vw, 126px); }
.project-feature__label,
.project-rail__heading > p {
  margin: 0 0 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(16, 2, 2, .54);
  font: 800 9px/1 var(--font-en);
  letter-spacing: .12em;
}

.project-feature__label span,
.project-rail__heading > p span { color: var(--fire-v19-red); }
.project-feature__label i { width: 54px; height: 1px; background: var(--fire-v19-red); }

.work--v19 .project-card {
  background: #fffdfa !important;
  border: 1px solid rgba(16, 2, 2, .09);
  border-radius: var(--fire-v19-radius);
  box-shadow: var(--fire-v19-shadow) !important;
  transform: none !important;
}

.work--v19 .project-card:hover {
  border-color: rgba(252, 11, 10, .22);
  box-shadow: 0 38px 110px rgba(31, 4, 4, .19) !important;
  transform: translateY(-5px) !important;
}

.work--v19 .project-card__button { height: 100%; }
.work--v19 .project-card--featured .project-card__button { grid-template-columns: minmax(0, 1.55fr) minmax(300px, .65fr); }
.work--v19 .project-card .project-card__media,
.work--v19 .project-card--featured .project-card__media,
.work--v19 .project-card--rail .project-card__media {
  height: auto;
  aspect-ratio: 16 / 10;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: #180404;
}

.work--v19 .project-card--featured .project-card__media { aspect-ratio: 16 / 11; }
.work--v19 .project-card .project-card__image,
.work--v19 .project-card:hover .project-card__image,
.work--v19 .project-card__button:hover .project-card__image {
  filter: none !important;
}

.work--v19 .project-card:hover .project-card__image { transform: scale(1.018); }
.work--v19 .project-card--featured .project-card__content {
  padding: clamp(30px, 3.6vw, 58px);
  align-content: end;
  gap: 16px;
  border-inline-start: 1px solid rgba(16, 2, 2, .08);
}

.work--v19 .project-card--featured .project-card__content strong { font-size: clamp(42px, 4.2vw, 70px); }
.work--v19 .project-card__content > span { color: rgba(16, 2, 2, .6); }

.project-rail__heading {
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
}

.project-rail__heading > p { margin: 0; }
.project-rail__controls { display: flex; gap: 9px; }
.project-rail__controls button {
  width: 52px;
  height: 52px;
  padding: 0;
  display: grid;
  place-items: center;
  color: var(--fire-v19-ink);
  background: transparent;
  border: 1px solid rgba(16, 2, 2, .18);
  border-radius: 50%;
  transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s var(--fire-v19-ease);
}

.project-rail__controls button:hover:not(:disabled) { color: #fff; background: var(--fire-v19-red); border-color: var(--fire-v19-red); transform: scale(1.06); }
.project-rail__controls button:disabled { cursor: default; opacity: .28; }
.project-rail__controls svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; }

.project-rail {
  display: flex;
  gap: clamp(20px, 2.2vw, 34px);
  padding: 0 0 42px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  scroll-padding-inline: 1px;
  scrollbar-width: thin;
  scrollbar-color: var(--fire-v19-red) rgba(16, 2, 2, .09);
}

.project-rail .project-card--rail {
  flex: 0 0 clamp(410px, 43vw, 650px);
  scroll-snap-align: start;
}

.project-rail .project-card__content { min-height: 230px; padding: 26px clamp(24px, 2.4vw, 34px) 32px; align-content: start; }
.project-rail .project-card__content strong { font-size: clamp(30px, 3vw, 48px); }

/* Remaining sections */
.site-main--v19 .transformation { background: var(--fire-v19-paper-deep); }
.site-main--v19 .before-after { border-radius: var(--fire-v19-radius); box-shadow: var(--fire-v19-shadow); }
.site-main--v19 .before-after__image img { filter: none; }

.site-main--v19 .process--v17 { background: var(--fire-v19-paper); }
.site-main--v19 .process--v17::before { color: rgba(16, 2, 2, .028); }
.site-main--v19 .process--v17 .process-step {
  min-height: 300px;
  transition: color .35s ease, background .35s ease;
}
.site-main--v19 .process--v17 .process-step:hover { color: #fff; background: var(--fire-v19-red); }
.site-main--v19 .process--v17 .process-step:hover h3,
.site-main--v19 .process--v17 .process-step:hover p { color: #fff; }
.site-main--v19 .process--v17 .process-step:hover .process-step__marker span { color: var(--fire-v19-red); background: #fff; border-color: #fff; }

.site-main--v19 .impact--v17 { background: var(--fire-v19-black); }
.site-main--v19 .impact__principles span { border-radius: 18px; }
.site-main--v19 .impact--v17 .stat-card { transition: background .35s ease; }
.site-main--v19 .impact--v17 .stat-card:hover { background: rgba(252, 11, 10, .1); }

.site-main--v19 .team__frame { border-radius: var(--fire-v19-radius); box-shadow: var(--fire-v19-shadow); }
.site-main--v19 .team__image { filter: none; }
.site-main--v19 .team__roles span { transition: color .25s ease, padding-inline .25s var(--fire-v19-ease); }
.site-main--v19 .team__roles span:hover { padding-inline-start: 10px; color: #fff; }

/* The reel poster remains natural and unobstructed; copy lives below it. */
.site-main--v19 .reel {
  min-height: auto;
  padding: clamp(80px, 8vw, 130px) 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  background: var(--fire-v19-black);
}

.site-main--v19 .reel__media {
  position: relative;
  inset: auto;
  order: 1;
  width: min(1540px, calc(100vw - 48px));
  aspect-ratio: 20 / 9;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid rgba(255, 248, 245, .14);
  border-radius: var(--fire-v19-radius);
  box-shadow: 0 32px 110px rgba(0, 0, 0, .34);
}

.site-main--v19 .reel__poster { filter: none; transform: none; }
.site-main--v19 .reel__gradient { display: none; }
.site-main--v19 .reel__content {
  order: 2;
  min-height: 0;
  padding-top: 34px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: end;
  justify-content: initial;
  gap: 24px;
}

.site-main--v19 .reel__content .section-kicker { grid-column: 1; align-self: start; }
.site-main--v19 .reel__content .section-title { grid-column: 1; max-width: 11ch; margin: 0; font-size: clamp(48px, 5vw, 82px); }
.site-main--v19 .reel__play { grid-column: 2; width: 100px; height: 100px; box-shadow: none; }
.site-main--v19 .reel__bts { grid-column: 3; position: relative; inset: auto; min-width: 210px; border-radius: 18px; background: #1d0808; }

.site-main--v19 .clients--v17 { background: var(--fire-v19-paper); }
.site-main--v19 .client-grid { gap: 12px; border: 0; }
.site-main--v19 .client-grid .client-logo {
  min-height: 150px;
  border: 1px solid rgba(16, 2, 2, .1);
  border-radius: 20px;
  background: #fffdfa;
}
.site-main--v19 .client-grid .client-logo:hover { background: #fff; }

.site-main--v19 .faq--v17 { background: var(--fire-v19-paper-deep); }
.site-main--v19 .faq--v17 .faq-item { border-bottom-color: rgba(16, 2, 2, .15); }
.site-main--v19 .faq--v17 .faq-item summary i { border-radius: 50%; }

.site-main--v19 .contact--v17 {
  background:
    radial-gradient(circle at 8% 10%, rgba(252, 11, 10, .2), transparent 24%),
    radial-gradient(circle, rgba(255, 248, 245, .1) 1px, transparent 1px),
    var(--fire-v19-black);
  background-size: auto, 22px 22px, auto;
}
.site-main--v19 .contact--v17 .contact__flare { display: none; }
.site-main--v19 .contact__visual { border-radius: var(--fire-v19-radius); }
.site-main--v19 .contact__visual img { filter: none; }
.site-main--v19 .contact--v17 .contact-form { border-radius: var(--fire-v19-radius); box-shadow: 0 34px 100px rgba(0, 0, 0, .25); }
.site-main--v19 .contact--v17 .contact-form .button { border-radius: 999px; }

@media (hover: hover) and (pointer: fine) {
  .hero--v19 .hero__disciplines span:hover { color: #fff; background: var(--fire-v19-red); transform: translateY(-5px); }
  .hero--v19 .hero__disciplines span:hover small { color: #fff; }
}

@media (max-width: 1180px) {
  .hero--v19 .hero__grid { grid-template-columns: minmax(0, .98fr) minmax(420px, 1.02fr); gap: 40px; }
  .hero--v19 .hero__title { font-size: clamp(68px, 7vw, 98px); }
  .hero-collage--v19 { min-height: 490px; }
  .services--v19 .services__layout { grid-template-columns: minmax(240px, .52fr) minmax(0, 1.48fr); gap: 40px; }
  .services--v19 .service-card--lane { min-height: 460px; }
  .work--v19 .project-card--featured .project-card__button { grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); }
}

@media (max-width: 960px) {
  .hero.hero--v19 { min-height: auto; padding-top: 106px; }
  .hero--v19 .hero__grid { grid-template-columns: 1fr; }
  .hero--v19 .hero__content { max-width: 820px; }
  .hero--v19 .hero__title { max-width: 9ch; font-size: clamp(68px, 12vw, 112px); }
  .hero-collage--v19 { min-height: min(74vw, 660px); }
  .hero-collage--v19 .hero-collage__accent { inset-inline-start: 2%; }
  .hero--v19 .hero__meta { margin-top: 30px; }
  .services--v19 .services__layout { grid-template-columns: 1fr; }
  .services--v19 .services__intro { position: relative; top: auto; max-width: 760px; }
  .services--v19 .services__intro .section-title { max-width: 11ch; }
  .services--v19 .services__signature { display: none; }
  .work--v19 .project-card--featured .project-card__button { grid-template-columns: 1fr; }
  .work--v19 .project-card--featured .project-card__content { border-inline-start: 0; border-top: 1px solid rgba(16, 2, 2, .08); }
  .site-main--v19 .reel__content { grid-template-columns: 1fr auto; }
  .site-main--v19 .reel__content .section-kicker,
  .site-main--v19 .reel__content .section-title { grid-column: 1 / -1; }
  .site-main--v19 .reel__play { grid-column: 1; }
  .site-main--v19 .reel__bts { grid-column: 2; }
}

@media (max-width: 700px) {
  .site-main--v19 .section { padding-block: 68px; }
  .hero.hero--v19 { padding-top: 88px; padding-bottom: 24px; }
  .hero--v19 .hero__grid { gap: 32px; }
  .hero--v19 .hero__title,
  html[dir="ltr"] .hero--v19 .hero__title,
  html[dir="rtl"] .hero.hero--v19 .hero__title { max-width: 9.2ch; font-size: clamp(54px, 16vw, 66px); }
  .hero--v19 .hero__content { padding-inline: 6px; }
  .hero__live-signal { grid-template-columns: 7px auto minmax(76px, auto) 1fr; gap: 8px; }
  .hero__live-signal small { font-size: 7px; }
  .hero--v19 .hero__actions { align-items: stretch; gap: 14px; }
  .hero--v19 .hero__actions .button { min-height: 52px; }
  .hero--v19 .hero__disciplines { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .hero--v19 .hero__disciplines span,
  .hero--v19 .hero__disciplines span:first-child,
  .hero--v19 .hero__disciplines span:last-child,
  html[dir="rtl"] .hero--v19 .hero__disciplines span:first-child,
  html[dir="rtl"] .hero--v19 .hero__disciplines span:last-child {
    min-height: 76px;
    border: 1px solid rgba(255, 248, 245, .15);
    border-radius: 14px;
  }
  .hero-collage--v19 { min-height: 106vw; }
  .hero-collage--v19 .hero-collage__main,
  html[dir="rtl"] .hero-collage--v19 .hero-collage__main { inset: 0 0 8%; border-radius: 20px; }
  .hero-collage--v19 .hero-collage__accent { width: 31%; inset-inline-start: 3%; border-width: 5px; border-radius: 12px; }
  .hero-collage--v19 .hero-collage__index { display: none; }
  .hero-collage--v19 .hero-collage__stamp { bottom: 11%; }
  .expertise-marquee--signal .expertise-marquee__group > span { width: 138px; padding: 17px; }
  .site-main--v19 .story { padding-block: 82px; }
  .site-main--v19 .story__image-wrap { border-radius: 20px; }
  .services--v19 { padding-bottom: 76px !important; }
  .services--v19 .services__list { gap: 16px; }
  .services--v19 .service-card--lane,
  .services--v19 .service-card--lane:nth-child(n) {
    position: relative;
    top: auto;
    min-height: 0;
    padding: 26px 22px;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    border-radius: 20px;
  }
  .services--v19 .service-card__top { grid-column: 1; }
  .services--v19 .service-card__body { grid-column: 1; grid-row: 2; }
  .services--v19 .service-card--lane h3 { max-width: 13ch; font-size: clamp(36px, 11vw, 50px); }
  .services--v19 .service-card__tags { grid-column: 1; grid-row: 3; }
  .services--v19 .service-card__signal { display: none; }
  .project-feature { margin-bottom: 70px; }
  .work--v19 .project-card { border-radius: 20px; }
  .work--v19 .project-card--featured .project-card__media { aspect-ratio: 4 / 3; }
  .work--v19 .project-card--featured .project-card__content { padding: 24px 20px 28px; }
  .work--v19 .project-card--featured .project-card__content strong { font-size: clamp(34px, 10.5vw, 48px); }
  .project-rail__controls button { width: 46px; height: 46px; }
  .project-rail { width: calc(100vw - 24px); margin-inline-end: calc(50% - 50vw); gap: 16px; }
  .project-rail .project-card--rail { flex-basis: min(86vw, 420px); }
  .project-rail .project-card__content { min-height: 210px; padding: 22px 18px 26px; }
  .project-rail .project-card__content strong { font-size: clamp(30px, 9vw, 42px); }
  .site-main--v19 .before-after { border-radius: 20px; }
  .site-main--v19 .process--v17 .process-step { min-height: 0; }
  .site-main--v19 .team__frame { border-radius: 20px; }
  .site-main--v19 .reel { padding-block: 68px; }
  .site-main--v19 .reel__media { width: calc(100vw - 28px); aspect-ratio: 16 / 10; border-radius: 20px; }
  .site-main--v19 .reel__content { grid-template-columns: 1fr; padding-top: 26px; }
  .site-main--v19 .reel__play,
  .site-main--v19 .reel__bts { grid-column: 1; }
  .site-main--v19 .reel__bts { width: 100%; }
  .site-main--v19 .client-grid { gap: 8px; }
  .site-main--v19 .client-grid .client-logo { min-height: 112px; border-radius: 14px; }
  .site-main--v19 .contact__visual,
  .site-main--v19 .contact--v17 .contact-form { border-radius: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero__kinetic-token { transform: none; opacity: 1; transition: none; }
  .hero__live-signal > i,
  .service-card--lane.is-current .service-card__signal b,
  .expertise-marquee--signal .expertise-marquee__track { animation: none !important; }
  .expertise-marquee--signal { overflow-x: auto; }
  .expertise-marquee--signal .expertise-marquee__track { transform: none !important; }
  .expertise-marquee--signal .expertise-marquee__group[aria-hidden="true"] { display: none; }
  .work--v19 .project-card,
  .work--v19 .project-card:hover,
  .hero--v19 .hero__disciplines span { transform: none !important; transition: none; }
  .project-rail { scroll-behavior: auto; }
}
