/* Pagecrafter V4 media pass: current stills plus one optimized app-motion master. */
.pc-hero-sequence {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 58%, rgba(30, 119, 126, .18), transparent 31%),
    radial-gradient(circle at 20% 75%, rgba(53, 218, 172, .08), transparent 27%),
    radial-gradient(circle at 82% 71%, rgba(85, 125, 255, .09), transparent 25%),
    linear-gradient(155deg, #03050a 0%, #070a11 52%, #030409 100%);
}

.pc-hero-sequence::before {
  content: "";
  position: absolute;
  inset: 24% -10% auto;
  height: 76%;
  z-index: 0;
  pointer-events: none;
  background-image: none;
  background: radial-gradient(ellipse at center, rgba(109, 229, 255, .08), transparent 63%);
  filter: blur(32px);
}

.pc-hero--v2::before {
  content: none;
}

.pc-hero--v2 {
  min-height: 1100px;
  padding: calc(var(--nav-h) + 34px) 0 0;
}

.pc-hero--v2 .pc-hero__copy {
  max-width: 980px;
}

.pc-hero--v2 .pc-hero__copy h1 {
  max-width: 15ch;
  font-size: clamp(3.5rem, 6.4vw, 6.3rem);
}

.pc-cinematic {
  position: relative;
  width: min(100%, 1240px);
  height: 800px;
  margin: 24px auto 20px;
}

.pc-cinematic::after {
  content: "";
  position: absolute;
  left: 10%;
  right: 10%;
  bottom: 174px;
  height: 62px;
  border-radius: 50%;
  background: rgba(0, 0, 0, .68);
  filter: blur(30px);
  transform: rotateX(66deg);
}

.pc-cinematic__aurora,
.pc-cinematic__orbit {
  position: absolute;
  left: 50%;
  top: 49%;
  pointer-events: none;
}

.pc-cinematic__aurora {
  width: 620px;
  height: 620px;
  border-radius: 50%;
  background:
    radial-gradient(circle, rgba(78, 229, 193, .13), rgba(36, 136, 166, .06) 38%, transparent 68%);
  filter: blur(12px);
  transform: translate(-50%, -50%) scale(.72);
  opacity: 0;
}

.pc-cinematic__orbit {
  width: 870px;
  height: 270px;
  border: 1px solid rgba(116, 229, 255, .16);
  border-radius: 50%;
  transform: translate(-50%, -4%) rotateX(71deg) scale(.4);
  opacity: 0;
}

.pc-cinematic__chapter {
  position: absolute;
  left: 50%;
  top: 48px;
  z-index: 20;
  margin: 0;
  color: rgba(220, 235, 245, .8);
  font: 500 10px/1 var(--mono);
  letter-spacing: .18em;
  text-transform: uppercase;
  transform: translateX(-50%);
}

.pc-cinematic__replay {
  position: absolute;
  top: 42px;
  right: 8px;
  z-index: 30;
  display: flex;
  gap: 7px;
  align-items: center;
  min-height: 44px;
  padding: 0 13px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(8, 12, 19, .66);
  color: #b9c4d0;
  font: 500 9px/1 var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
  backdrop-filter: blur(12px);
}

.pc-cinematic__replay:hover,
.pc-cinematic__replay:focus-visible {
  border-color: #72d8ff;
  color: #fff;
}

.pc-cinematic__replay:focus-visible {
  outline: 3px solid rgba(114,216,255,.5);
  outline-offset: 3px;
}

.pc-cinematic__switcher {
  position: absolute;
  left: 50%;
  top: -10px;
  z-index: 40;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 5px;
  width: min(94%, 520px);
  padding: 4px;
  border: 1px solid rgba(117, 208, 229, .16);
  border-radius: 14px;
  background: rgba(7, 10, 15, .76);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .24);
  transform: translateX(-50%);
  backdrop-filter: blur(16px);
}

.pc-cinematic__switcher button {
  min-width: 0;
  min-height: 44px;
  padding: 7px 5px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: #8998a9;
  font: 600 8px/1.2 var(--mono);
  letter-spacing: .04em;
  cursor: pointer;
}

.pc-cinematic__switcher button:hover,
.pc-cinematic__switcher button:focus-visible {
  border-color: rgba(114, 216, 255, .45);
  color: #fff;
}

.pc-cinematic__switcher button:focus-visible {
  outline: 3px solid rgba(114, 216, 255, .5);
  outline-offset: 2px;
}

.pc-cinematic__switcher button.is-active {
  border-color: rgba(98, 226, 192, .42);
  background: rgba(98, 226, 192, .12);
  color: #8ff0d4;
}

.pc-cinematic__devices {
  position: absolute;
  inset: 48px 0 234px;
  z-index: 5;
  pointer-events: none;
  perspective: 1500px;
  transform-style: preserve-3d;
}

.pc-cine-phone {
  position: absolute;
  left: 50%;
  top: 66%;
  width: 234px;
  aspect-ratio: 390 / 844;
  transform-style: preserve-3d;
  opacity: 0;
  will-change: transform, opacity;
}

.pc-cine-phone__shell {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
  border: 5px solid #242a34;
  border-radius: 38px;
  background: #080a0f;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.16),
    0 42px 60px rgba(0,0,0,.56),
    0 0 34px rgba(86, 210, 230, .04);
}

.pc-cine-phone__shell::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 8px;
  z-index: 8;
  width: 31%;
  height: 17px;
  border-radius: 999px;
  background: #020305;
  transform: translateX(-50%);
}

.pc-cine-phone__shell::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 9;
  border-radius: inherit;
  box-shadow: inset 14px 0 20px -21px rgba(255,255,255,.8), inset -16px 0 24px -22px rgba(0,0,0,.9);
  pointer-events: none;
}

.pc-cine-phone__screen {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
  border-radius: 31px;
  background: #090c11;
}

.pc-cine-phone__screen img,
.pc-cine-phone__screen video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.pc-cine-motion-play {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 12;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: 9px 13px;
  border: 1px solid rgba(143, 240, 212, .55);
  border-radius: 999px;
  background: rgba(5, 12, 17, .88);
  color: #fff;
  box-shadow: 0 12px 26px rgba(0, 0, 0, .45);
  font: 700 9px/1 var(--mono);
  letter-spacing: .04em;
  white-space: nowrap;
  cursor: pointer;
  pointer-events: auto;
  transform: translate(-50%, -50%);
}

.pc-cine-motion-play[hidden] {
  display: none;
}

.pc-cine-motion-play:hover,
.pc-cine-motion-play:focus-visible {
  border-color: #8ff0d4;
  background: rgba(10, 35, 36, .96);
}

.pc-cine-motion-play:focus-visible {
  outline: 3px solid rgba(114, 216, 255, .56);
  outline-offset: 2px;
}

.pc-cine-phone__label {
  position: absolute;
  left: 50%;
  top: calc(100% + 17px);
  z-index: 12;
  display: grid;
  gap: 4px;
  width: 190px;
  color: #fff;
  text-align: center;
  transform: translateX(-50%) translateY(8px);
  opacity: 0;
}

.pc-cine-phone__label b {
  font: 600 13px/1 "Clash Display", sans-serif;
}

.pc-cine-phone__label small {
  color: #8795a6;
  font: 500 7px/1.25 var(--mono);
  letter-spacing: .07em;
  text-transform: uppercase;
}

.pc-cine-phone--rio .pc-cine-phone__label {
  display: none;
}

.pc-cine-phone--rio {
  z-index: 10;
  width: 278px;
  transform: translate(-50%, -50%) translateZ(-460px) rotateY(-88deg) rotateZ(-9deg) scale(.65);
}

.pc-cine-phone--salvador,
.pc-cine-phone--saopaulo {
  z-index: 6;
  width: 230px;
  transform: translate(-50%, -50%) scale(.83);
}

.pc-cine-phone--atlanta,
.pc-cine-phone--nyc {
  z-index: 4;
  width: 174px;
  transform: translate(-50%, -50%) scale(.58);
}

.pc-cine-walkthrough {
  position: absolute;
  left: 7px;
  right: 7px;
  bottom: 12px;
  z-index: 10;
  display: grid;
  grid-template-columns: 23px 1fr;
  gap: 7px;
  align-items: center;
  padding: 7px;
  border: 1px solid rgba(120, 235, 207, .35);
  border-radius: 11px;
  background: rgba(7, 13, 17, .88);
  color: #fff;
  opacity: 0;
  transform: translateY(14px);
  backdrop-filter: blur(12px);
}

.pc-cine-walkthrough i {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 8px;
  background: #63e8c1;
  color: #07120f;
  font: 700 9px/1 var(--mono);
  font-style: normal;
}

.pc-cine-walkthrough b {
  font: 600 7px/1.3 var(--mono);
  letter-spacing: .02em;
}

.pc-cinematic figcaption {
  position: absolute;
  left: 50%;
  bottom: 8px;
  z-index: 20;
  display: grid;
  gap: 5px;
  width: min(94%, 680px);
  text-align: center;
  transform: translateX(-50%);
  opacity: 0;
}

.pc-cinematic figcaption > span {
  color: #62e2c0;
  font: 500 9px/1 var(--mono);
  letter-spacing: .16em;
  text-transform: uppercase;
}

.pc-cinematic figcaption > b {
  color: #fff;
  font: 600 clamp(1.25rem, 2vw, 1.65rem)/1.1 "Clash Display", sans-serif;
}

.pc-cinematic figcaption a {
  justify-self: center;
  color: #aeb9c7;
  font: 500 9px/1.2 var(--mono);
  letter-spacing: .04em;
  text-decoration: none;
}

.pc-cinematic figcaption a:hover,
.pc-cinematic figcaption a:focus-visible {
  color: #72d8ff;
}

.pc-cinematic.is-playing .pc-cinematic__aurora {
  animation: pcAuroraIn .6s .05s cubic-bezier(.2,.75,.2,1) forwards;
}

.pc-cinematic.is-playing .pc-cinematic__orbit {
  animation: pcOrbitIn .55s .8s cubic-bezier(.16,.78,.2,1) forwards;
}

.pc-cinematic.is-playing .pc-cine-phone--rio {
  animation:
    pcHeroPhoneIn .65s .05s cubic-bezier(.16,.84,.24,1) forwards,
    pcHeroPhoneSettle .45s .85s cubic-bezier(.2,.78,.24,1) forwards;
}

.pc-cinematic.is-playing .pc-cine-phone--salvador {
  animation: pcSalvadorSplit .48s .75s cubic-bezier(.18,.81,.26,1) forwards;
}

.pc-cinematic.is-playing .pc-cine-phone--saopaulo {
  animation: pcSaoPauloSplit .48s .75s cubic-bezier(.18,.81,.26,1) forwards;
}

.pc-cinematic.is-playing .pc-cine-phone--atlanta {
  animation: pcAtlantaSplit .45s 1.15s cubic-bezier(.18,.81,.26,1) forwards;
}

.pc-cinematic.is-playing .pc-cine-phone--nyc {
  animation: pcNycSplit .45s 1.2s cubic-bezier(.18,.81,.26,1) forwards;
}

.pc-cinematic.is-playing .pc-cine-phone__label {
  animation: pcLabelIn .28s 1.55s ease forwards;
}

.pc-cinematic.is-playing .pc-cine-walkthrough {
  animation: pcWalkIn .3s 1.65s ease forwards, pcWalkPulse 2.8s 1.95s ease-in-out infinite;
}

.pc-cinematic.is-playing .pc-cine-phone__screen--pan-atl img {
  animation: pcScreenPan 4.8s 1.75s ease-in-out infinite alternate;
}

.pc-cinematic.is-playing .pc-cine-phone__screen--pan-nyc img {
  animation: pcScreenPanNyc 5.2s 1.75s ease-in-out infinite alternate;
}

.pc-cinematic.is-playing figcaption {
  animation: pcCaptionIn .35s 1.75s ease forwards;
}

.pc-cinematic.is-interactive .pc-cine-phone {
  animation: none !important;
  opacity: 1;
  transition:
    width .28s cubic-bezier(.16,.8,.24,1),
    transform .28s cubic-bezier(.16,.8,.24,1),
    opacity .2s ease,
    filter .2s ease;
}

.pc-cinematic.is-interactive .pc-cine-phone--rio {
  transform: translate(-50%, -50%) translateZ(80px) scale(.93);
}

.pc-cinematic.is-interactive .pc-cine-phone--salvador {
  transform: translate(-184%, -48%) translateZ(-80px) rotateY(8deg) rotateZ(-3deg) scale(.83);
}

.pc-cinematic.is-interactive .pc-cine-phone--saopaulo {
  transform: translate(84%, -48%) translateZ(-80px) rotateY(-8deg) rotateZ(3deg) scale(.83);
}

.pc-cinematic.is-interactive .pc-cine-phone--atlanta {
  transform: translate(-304%, -36%) translateZ(-170px) rotateY(12deg) rotateZ(-5deg) scale(.79);
}

.pc-cinematic.is-interactive .pc-cine-phone--nyc {
  transform: translate(204%, -36%) translateZ(-170px) rotateY(-12deg) rotateZ(5deg) scale(.79);
}

.pc-cinematic.is-interactive .pc-cine-phone:not(.is-active) {
  opacity: .62;
  filter: saturate(.65) brightness(.72);
}

.pc-cinematic.is-interactive .pc-cine-phone.is-active {
  z-index: 18;
  width: 278px;
  opacity: 1;
  filter: none;
  transform: translate(-50%, -50%) translateZ(110px) rotateY(0) rotateZ(0) scale(.98);
}

.pc-cinematic[data-active-city="atlanta"] .pc-cine-phone--rio {
  z-index: 4;
  width: 174px;
  transform: translate(-304%, -36%) translateZ(-170px) rotateY(12deg) rotateZ(-5deg) scale(.79);
}

.pc-cinematic[data-active-city="salvador"] .pc-cine-phone--rio {
  z-index: 6;
  width: 230px;
  transform: translate(-184%, -48%) translateZ(-80px) rotateY(8deg) rotateZ(-3deg) scale(.83);
}

.pc-cinematic[data-active-city="saopaulo"] .pc-cine-phone--rio {
  z-index: 6;
  width: 230px;
  transform: translate(84%, -48%) translateZ(-80px) rotateY(-8deg) rotateZ(3deg) scale(.83);
}

.pc-cinematic[data-active-city="nyc"] .pc-cine-phone--rio {
  z-index: 4;
  width: 174px;
  transform: translate(204%, -36%) translateZ(-170px) rotateY(-12deg) rotateZ(5deg) scale(.79);
}

.pc-cinematic.is-interactive .pc-cine-phone.is-active .pc-cine-phone__label {
  opacity: 0;
}

@keyframes pcAuroraIn {
  to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

@keyframes pcOrbitIn {
  to { opacity: 1; transform: translate(-50%, -4%) rotateX(71deg) scale(1); }
}

@keyframes pcHeroPhoneIn {
  0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-460px) rotateY(-88deg) rotateZ(-9deg) scale(.65); }
  65% { opacity: 1; transform: translate(-50%, -50%) translateZ(50px) rotateY(7deg) rotateZ(1.5deg) scale(1.03); }
  100% { opacity: 1; transform: translate(-50%, -50%) translateZ(0) rotateY(0) rotateZ(0) scale(1); }
}

@keyframes pcHeroPhoneSettle {
  from { opacity: 1; transform: translate(-50%, -50%) translateZ(0) rotateY(0) scale(1); }
  to { opacity: 1; transform: translate(-50%, -50%) translateZ(80px) rotateY(0) scale(.93); }
}

@keyframes pcSalvadorSplit {
  0% { opacity: .25; transform: translate(-50%, -50%) scale(.74); }
  100% { opacity: 1; transform: translate(-184%, -48%) translateZ(-80px) rotateY(8deg) rotateZ(-3deg) scale(.83); }
}

@keyframes pcSaoPauloSplit {
  0% { opacity: .25; transform: translate(-50%, -50%) scale(.74); }
  100% { opacity: 1; transform: translate(84%, -48%) translateZ(-80px) rotateY(-8deg) rotateZ(3deg) scale(.83); }
}

@keyframes pcAtlantaSplit {
  0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-120px) scale(.58); }
  100% { opacity: 1; transform: translate(-304%, -36%) translateZ(-170px) rotateY(12deg) rotateZ(-5deg) scale(.79); }
}

@keyframes pcNycSplit {
  0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-120px) scale(.58); }
  100% { opacity: 1; transform: translate(204%, -36%) translateZ(-170px) rotateY(-12deg) rotateZ(5deg) scale(.79); }
}

@keyframes pcLabelIn {
  to { opacity: 1; transform: translateX(-50%) translateY(0); }
}

@keyframes pcWalkIn {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes pcWalkPulse {
  50% { border-color: rgba(120, 235, 207, .75); box-shadow: 0 0 18px rgba(81, 225, 185, .2); }
}

@keyframes pcScreenPan {
  from { transform: scale(1.005) translateY(0); }
  to { transform: scale(1.07) translateY(-2.8%); }
}

@keyframes pcScreenPanNyc {
  from { transform: scale(1.005) translateY(0); }
  to { transform: scale(1.065) translateY(-3.5%); }
}

@keyframes pcCaptionIn {
  to { opacity: 1; transform: translateX(-50%) translateY(-4px); }
}

.pc-outcomes {
  padding-top: 204px;
}

@media (max-width: 1060px) {
  .pc-cinematic { transform: scale(.88); transform-origin: 50% 0; margin-bottom: -60px; }
  .pc-cinematic__switcher button { min-height: 50px; }
}

@media (max-width: 820px) {
  .pc-hero--v2 { min-height: auto; }
  .pc-cinematic {
    width: calc(100% + 8vw);
    margin-left: -4vw;
    transform: scale(.72);
    margin-bottom: -160px;
  }
  .pc-cinematic__switcher button { min-height: 62px; }
  .pc-outcomes { padding-top: 176px; }
}

@media (max-width: 600px) {
  .pc-hero-sequence {
    background:
      radial-gradient(circle at 50% 62%, rgba(30, 119, 126, .2), transparent 31%),
      linear-gradient(165deg, #03050a 0%, #080b12 58%, #030409 100%);
  }
  .pc-hero--v2 { padding-top: 92px; }
  .pc-hero--v2 .pc-hero__copy h1 { font-size: clamp(2.85rem, 13vw, 3.65rem); }
  .pc-cinematic {
    width: calc(100% + 8vw);
    height: 535px;
    margin-top: 12px;
    margin-bottom: -178px;
    transform: none;
  }
  .pc-cinematic__chapter {
    top: 54px;
    max-width: 60%;
    text-align: center;
    line-height: 1.4;
  }
  .pc-cinematic__replay { top: 48px; right: 4px; }
  .pc-cinematic__switcher {
    top: 4px;
    gap: 3px;
    width: min(96%, 400px);
    padding: 3px;
  }
  .pc-cinematic__switcher button {
    min-height: 44px;
    padding-inline: 2px;
    font-size: 6.6px;
    letter-spacing: 0;
  }
  .pc-cinematic__devices { inset: 36px 0 200px; }
  .pc-cine-phone--rio { width: 194px; }
  .pc-cine-phone--salvador,
  .pc-cine-phone--saopaulo { width: 156px; }
  .pc-cine-phone--atlanta,
  .pc-cine-phone--nyc { width: 118px; }
  .pc-cine-phone__shell { border-width: 3px; border-radius: 27px; }
  .pc-cine-phone__screen { border-radius: 23px; }
  .pc-cine-phone__shell::before { top: 5px; height: 11px; }
  .pc-cine-phone__label { top: calc(100% + 8px); width: 128px; }
  .pc-cine-phone__label b { font-size: 8px; }
  .pc-cine-phone__label small { display: none; }
  .pc-cine-walkthrough { left: 4px; right: 4px; bottom: 7px; grid-template-columns: 15px 1fr; gap: 4px; padding: 4px; }
  .pc-cine-walkthrough i { width: 15px; height: 15px; border-radius: 5px; font-size: 6px; }
  .pc-cine-walkthrough b { font-size: 4.8px; }
  .pc-cinematic figcaption { bottom: 8px; }
  .pc-cinematic figcaption > b { font-size: 1.12rem; }
  .pc-outcomes { padding-top: 184px; }
  .pc-cinematic.is-interactive .pc-cine-phone--rio {
    transform: translate(-50%, -50%) translateZ(80px) scale(.93);
  }
  .pc-cinematic.is-interactive .pc-cine-phone--salvador {
    transform: translate(-112%, -51%) translateZ(-60px) rotateY(7deg) rotateZ(-3deg) scale(.84);
  }
  .pc-cinematic.is-interactive .pc-cine-phone--saopaulo {
    transform: translate(42%, -51%) translateZ(-60px) rotateY(-7deg) rotateZ(3deg) scale(.84);
  }
  .pc-cinematic.is-interactive .pc-cine-phone--atlanta {
    transform: translate(-161%, -28%) translateZ(-130px) rotateY(10deg) rotateZ(-4deg) scale(.78);
  }
  .pc-cinematic.is-interactive .pc-cine-phone--nyc {
    transform: translate(61%, -28%) translateZ(-130px) rotateY(-10deg) rotateZ(4deg) scale(.78);
  }
  .pc-cinematic.is-interactive .pc-cine-phone.is-active {
    width: 194px;
    transform: translate(-50%, -50%) translateZ(100px) rotateY(0) rotateZ(0) scale(1);
  }
  .pc-cinematic[data-active-city="atlanta"] .pc-cine-phone--rio {
    width: 118px;
    transform: translate(-161%, -28%) translateZ(-130px) rotateY(10deg) rotateZ(-4deg) scale(.78);
  }
  .pc-cinematic[data-active-city="salvador"] .pc-cine-phone--rio {
    width: 156px;
    transform: translate(-112%, -51%) translateZ(-60px) rotateY(7deg) rotateZ(-3deg) scale(.84);
  }
  .pc-cinematic[data-active-city="saopaulo"] .pc-cine-phone--rio {
    width: 156px;
    transform: translate(42%, -51%) translateZ(-60px) rotateY(-7deg) rotateZ(3deg) scale(.84);
  }
  .pc-cinematic[data-active-city="nyc"] .pc-cine-phone--rio {
    width: 118px;
    transform: translate(61%, -28%) translateZ(-130px) rotateY(-10deg) rotateZ(4deg) scale(.78);
  }
  @keyframes pcSalvadorSplit {
    0% { opacity: .25; transform: translate(-50%, -50%) scale(.74); }
    100% { opacity: 1; transform: translate(-112%, -51%) translateZ(-60px) rotateY(7deg) rotateZ(-3deg) scale(.84); }
  }
  @keyframes pcSaoPauloSplit {
    0% { opacity: .25; transform: translate(-50%, -50%) scale(.74); }
    100% { opacity: 1; transform: translate(42%, -51%) translateZ(-60px) rotateY(-7deg) rotateZ(3deg) scale(.84); }
  }
  @keyframes pcAtlantaSplit {
    0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-100px) scale(.58); }
    100% { opacity: 1; transform: translate(-161%, -28%) translateZ(-130px) rotateY(10deg) rotateZ(-4deg) scale(.78); }
  }
  @keyframes pcNycSplit {
    0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-100px) scale(.58); }
    100% { opacity: 1; transform: translate(61%, -28%) translateZ(-130px) rotateY(-10deg) rotateZ(4deg) scale(.78); }
  }
}

@media (max-width: 380px) {
  .pc-cinematic { margin-left: -4vw; }
  .pc-cine-phone--rio { width: 176px; }
  .pc-cine-phone--salvador,
  .pc-cine-phone--saopaulo { width: 140px; }
  .pc-cine-phone--atlanta,
  .pc-cine-phone--nyc { width: 106px; }
  .pc-cinematic.is-interactive .pc-cine-phone--atlanta {
    transform: translate(-148%, -28%) translateZ(-130px) rotateY(10deg) rotateZ(-4deg) scale(.78);
  }
  .pc-cinematic.is-interactive .pc-cine-phone--nyc {
    transform: translate(48%, -28%) translateZ(-130px) rotateY(-10deg) rotateZ(4deg) scale(.78);
  }
  .pc-cinematic.is-interactive .pc-cine-phone.is-active {
    width: 176px;
    transform: translate(-50%, -50%) translateZ(100px) rotateY(0) rotateZ(0) scale(1);
  }
  .pc-cinematic[data-active-city="atlanta"] .pc-cine-phone--rio {
    width: 106px;
    transform: translate(-148%, -28%) translateZ(-130px) rotateY(10deg) rotateZ(-4deg) scale(.78);
  }
  .pc-cinematic[data-active-city="salvador"] .pc-cine-phone--rio,
  .pc-cinematic[data-active-city="saopaulo"] .pc-cine-phone--rio {
    width: 140px;
  }
  .pc-cinematic[data-active-city="nyc"] .pc-cine-phone--rio {
    width: 106px;
    transform: translate(48%, -28%) translateZ(-130px) rotateY(-10deg) rotateZ(4deg) scale(.78);
  }
  @keyframes pcAtlantaSplit {
    0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-100px) scale(.58); }
    100% { opacity: 1; transform: translate(-148%, -28%) translateZ(-130px) rotateY(10deg) rotateZ(-4deg) scale(.78); }
  }
  @keyframes pcNycSplit {
    0% { opacity: 0; transform: translate(-50%, -50%) translateZ(-100px) scale(.58); }
    100% { opacity: 1; transform: translate(48%, -28%) translateZ(-130px) rotateY(-10deg) rotateZ(4deg) scale(.78); }
  }
}

/* Mobile keeps the cinematic desktop idea: one active screen moves forward
   while the other four emerge from behind it in a layered side fan. */
@media (max-width: 600px) {
  .pc-hero--v2 {
    padding-top: 88px;
  }

  .pc-hero--v2 .pc-hero__copy h1 {
    font-size: clamp(2.75rem, 11.5vw, 3.35rem);
    line-height: .95;
    word-spacing: .12em;
  }

  .pc-hero__lead {
    max-width: 36ch;
  }

  .pc-cinematic {
    width: 100%;
    height: clamp(580px, 142vw, 610px);
    margin: 18px auto 72px;
  }

  .pc-cinematic::after {
    bottom: 74px;
  }

  .pc-cinematic__switcher {
    top: 0;
    width: 100%;
  }

  .pc-cinematic__switcher button {
    min-height: 48px;
    font-size: clamp(6.8px, 1.7vw, 8px);
    touch-action: manipulation;
  }

  .pc-cinematic__chapter {
    display: none;
  }

  .pc-cinematic__replay {
    top: 60px;
    right: 0;
  }

  .pc-cinematic__devices {
    inset: 62px 0 4px;
  }

  .pc-cine-phone {
    top: 34%;
  }

  .pc-cine-phone__label {
    display: none;
  }

  .pc-cinematic.is-interactive .pc-cine-phone {
    width: clamp(82px, 24vw, 100px);
    opacity: .68;
    filter: saturate(.7) brightness(.74);
    will-change: transform;
    transition:
      transform .32s cubic-bezier(.16,.84,.24,1),
      opacity .22s ease,
      filter .22s ease;
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="active"] {
    z-index: 18;
    width: clamp(92px, 23vw, 100px);
    opacity: 1 !important;
    filter: none;
    transform: translate3d(-50%, -50%, 100px) rotateY(0) rotateZ(0) scale(1.52);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="near-left"] {
    z-index: 9;
    opacity: .78;
    transform: translate3d(calc(-50% - min(18vw, 74px)), calc(-50% + 6px), -55px) rotateY(9deg) rotateZ(-2.5deg) scale(.98);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="far-left"] {
    z-index: 6;
    transform: translate3d(calc(-50% - min(31vw, 126px)), calc(-50% + 18px), -110px) rotateY(13deg) rotateZ(-4deg) scale(.9);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="near-right"] {
    z-index: 9;
    opacity: .78;
    transform: translate3d(calc(-50% + min(18vw, 74px)), calc(-50% + 6px), -55px) rotateY(-9deg) rotateZ(2.5deg) scale(.98);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="far-right"] {
    z-index: 6;
    transform: translate3d(calc(-50% + min(31vw, 126px)), calc(-50% + 18px), -110px) rotateY(-13deg) rotateZ(4deg) scale(.9);
  }

  .pc-cinematic.is-playing:not(.is-interactive) .pc-cine-phone[data-cine-slot="active"] {
    animation:
      pcMobileActiveIn .42s .02s cubic-bezier(.16,.84,.24,1) both,
      pcMobileActiveSettle .28s .2s cubic-bezier(.16,.84,.24,1) both;
  }

  .pc-cinematic.is-playing:not(.is-interactive) .pc-cine-phone[data-cine-slot="near-left"] {
    animation: pcMobileNearLeftIn .36s .1s cubic-bezier(.16,.84,.24,1) both;
  }

  .pc-cinematic.is-playing:not(.is-interactive) .pc-cine-phone[data-cine-slot="far-left"] {
    animation: pcMobileFarLeftIn .38s .16s cubic-bezier(.16,.84,.24,1) both;
  }

  .pc-cinematic.is-playing:not(.is-interactive) .pc-cine-phone[data-cine-slot="near-right"] {
    animation: pcMobileNearRightIn .36s .12s cubic-bezier(.16,.84,.24,1) both;
  }

  .pc-cinematic.is-playing:not(.is-interactive) .pc-cine-phone[data-cine-slot="far-right"] {
    animation: pcMobileFarRightIn .38s .18s cubic-bezier(.16,.84,.24,1) both;
  }

  .pc-cinematic figcaption {
    display: none;
  }

  @keyframes pcMobileActiveIn {
    from { opacity: 0; transform: translate3d(-50%, -50%, -120px) scale(.72); }
    to { opacity: 1; transform: translate3d(-50%, -50%, 100px) scale(1.58); }
  }

  @keyframes pcMobileActiveSettle {
    from { opacity: 1; transform: translate3d(-50%, -50%, 100px) scale(1.58); }
    to { opacity: 1; transform: translate3d(-50%, -50%, 100px) scale(1.52); }
  }

  @keyframes pcMobileNearLeftIn {
    from { opacity: 0; transform: translate3d(-50%, -50%, -100px) scale(.78); }
    to { opacity: .78; transform: translate3d(calc(-50% - min(18vw, 74px)), calc(-50% + 6px), -55px) rotateY(9deg) rotateZ(-2.5deg) scale(.98); }
  }

  @keyframes pcMobileFarLeftIn {
    from { opacity: 0; transform: translate3d(-50%, -50%, -140px) scale(.72); }
    to { opacity: .68; transform: translate3d(calc(-50% - min(31vw, 126px)), calc(-50% + 18px), -110px) rotateY(13deg) rotateZ(-4deg) scale(.9); }
  }

  @keyframes pcMobileNearRightIn {
    from { opacity: 0; transform: translate3d(-50%, -50%, -100px) scale(.78); }
    to { opacity: .78; transform: translate3d(calc(-50% + min(18vw, 74px)), calc(-50% + 6px), -55px) rotateY(-9deg) rotateZ(2.5deg) scale(.98); }
  }

  @keyframes pcMobileFarRightIn {
    from { opacity: 0; transform: translate3d(-50%, -50%, -140px) scale(.72); }
    to { opacity: .68; transform: translate3d(calc(-50% + min(31vw, 126px)), calc(-50% + 18px), -110px) rotateY(-13deg) rotateZ(4deg) scale(.9); }
  }
}

@media (max-width: 419px) {
  .pc-hero--v2 .pc-hero__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: none;
    margin-inline: auto;
  }

  .pc-hero--v2 .pc-hero__actions .btn {
    width: 100%;
    min-height: 58px;
    padding-inline: 10px;
    justify-content: center;
    font-size: clamp(.8rem, 3.8vw, .94rem);
  }

}

@media (max-width: 340px) {
  .pc-cinematic__devices {
    inset: 50px 0 4px;
  }

  .pc-cine-phone {
    top: 22%;
  }

  .pc-cinematic.is-interactive .pc-cine-phone {
    width: 76px;
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="active"] {
    width: 82px;
    transform: translate3d(-50%, calc(-50% + 30px), 100px) rotateY(0) rotateZ(0) scale(1.38);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="near-left"] {
    transform: translate3d(calc(-50% - 18vw), calc(-50% + 16px), -55px) rotateY(9deg) rotateZ(-2.5deg) scale(.96);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="far-left"] {
    transform: translate3d(calc(-50% - 31vw), calc(-50% + 26px), -110px) rotateY(13deg) rotateZ(-4deg) scale(.86);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="near-right"] {
    transform: translate3d(calc(-50% + 18vw), calc(-50% + 16px), -55px) rotateY(-9deg) rotateZ(2.5deg) scale(.96);
  }

  .pc-cinematic.is-interactive .pc-cine-phone[data-cine-slot="far-right"] {
    transform: translate3d(calc(-50% + 31vw), calc(-50% + 26px), -110px) rotateY(-13deg) rotateZ(4deg) scale(.86);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pc-cinematic *,
  .pc-cinematic *::before,
  .pc-cinematic *::after {
    animation: none !important;
    transition: none !important;
  }
  .pc-cinematic__aurora { opacity: 1; transform: translate(-50%, -50%) scale(1); }
  .pc-cinematic__orbit { opacity: 1; transform: translate(-50%, -4%) rotateX(71deg) scale(1); }
  .pc-cine-phone--rio { opacity: 1; transform: translate(-50%, -50%) translateZ(80px) scale(.93); }
  .pc-cine-phone--salvador { opacity: 1; transform: translate(-184%, -48%) translateZ(-80px) rotateY(8deg) rotateZ(-3deg) scale(.83); }
  .pc-cine-phone--saopaulo { opacity: 1; transform: translate(84%, -48%) translateZ(-80px) rotateY(-8deg) rotateZ(3deg) scale(.83); }
  .pc-cine-phone--atlanta { opacity: 1; transform: translate(-304%, -36%) translateZ(-170px) rotateY(12deg) rotateZ(-5deg) scale(.79); }
  .pc-cine-phone--nyc { opacity: 1; transform: translate(204%, -36%) translateZ(-170px) rotateY(-12deg) rotateZ(5deg) scale(.79); }
  .pc-cine-phone__label,
  .pc-cine-walkthrough,
  .pc-cinematic figcaption { opacity: 1; transform: translateX(-50%); }
  .pc-cine-walkthrough { transform: none; }
}
