:root {
  --evo-ink: #031d15;
  --evo-green: #075a34;
  --evo-lime: #d9e51c;
  --evo-cream: #f5f3ea;
}

body.evo-intro-active { overflow: hidden; }

.evo-cinema[hidden], .evo-cinema__replay[hidden] { display: none !important; }

.evo-cinema {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  overflow: clip;
  color: white;
  background: var(--evo-ink);
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s ease, visibility .5s ease;
  font-family: "DM Sans", Arial, sans-serif;
}

.evo-cinema.is-open { opacity: 1; visibility: visible; }

.evo-cinema::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(2,28,20,.96) 0%, rgba(2,28,20,.82) 42%, rgba(2,28,20,.25) 100%),
    url("hero-office-800.webp") center/cover no-repeat;
  transform: scale(1.08);
  animation: evo-camera 22s ease-in-out infinite alternate;
}

.evo-cinema__wash {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 82% 22%, rgba(217,229,28,.22), transparent 22%),
    radial-gradient(circle at 20% 88%, rgba(0,120,72,.35), transparent 32%);
  mix-blend-mode: screen;
  pointer-events: none;
}

.evo-cinema__grain {
  position: absolute;
  inset: -50%;
  opacity: .055;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
  animation: evo-grain .28s steps(2) infinite;
}

.evo-cinema__topbar,
.evo-cinema__controls,
.evo-cinema__stage { position: relative; z-index: 2; }

.evo-cinema__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(20px, 3vw, 42px) clamp(22px, 5vw, 76px);
}

.evo-cinema__topbar img {
  width: clamp(92px, 11vw, 158px);
  height: 62px;
  object-fit: contain;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.3));
}

.evo-cinema button, .evo-cinema a, .evo-cinema__replay {
  font: inherit;
}

.evo-cinema__skip,
.evo-cinema__pause,
.evo-cinema__sound {
  border: 0;
  color: rgba(255,255,255,.8);
  background: transparent;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.evo-cinema__skip { padding: 12px 0 12px 20px; }
.evo-cinema__skip span { color: var(--evo-lime); margin-left: 8px; }
.evo-cinema__skip:hover, .evo-cinema__pause:hover, .evo-cinema__sound:hover { color: white; }

.evo-cinema__top-actions { display: flex; align-items: center; gap: clamp(14px, 2.5vw, 34px); }
.evo-cinema__sound {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid rgba(217,229,28,.4);
  border-radius: 999px;
  background: rgba(3,29,21,.48);
  backdrop-filter: blur(9px);
}
.evo-cinema__sound span { color: var(--evo-lime); font-size: 15px; }
.evo-cinema__sound[aria-pressed="true"] { color: var(--evo-ink); background: var(--evo-lime); border-color: var(--evo-lime); }
.evo-cinema__sound[aria-pressed="true"] span { color: var(--evo-ink); }

.evo-cinema__stage {
  width: min(1180px, calc(100% - 44px));
  margin: auto;
  min-height: min(610px, 68vh);
  display: grid;
  align-items: center;
}

.evo-cinema__scene {
  grid-area: 1 / 1;
  width: min(980px, 100%);
  opacity: 0;
  visibility: hidden;
  transform: translateY(34px) scale(.985);
  transition: opacity .65s ease, transform .8s cubic-bezier(.2,.75,.2,1), visibility .65s;
  pointer-events: none;
}

.evo-cinema__scene.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.evo-cinema__kicker,
.evo-cinema__number {
  margin: 0 0 20px;
  color: var(--evo-lime);
  font-size: clamp(11px, 1vw, 14px);
  font-weight: 800;
  letter-spacing: .24em;
}

.evo-cinema__number {
  position: absolute;
  left: -74px;
  color: rgba(217,229,28,.48);
  font-size: 12px;
}

.evo-cinema h1,
.evo-cinema h2 {
  max-width: 970px;
  margin: 0;
  color: white;
  font-family: "Manrope", "DM Sans", Arial, sans-serif;
  font-size: clamp(48px, 7.2vw, 108px);
  line-height: 1.08;
  letter-spacing: -.055em;
  font-weight: 800;
}

.evo-cinema h2 { font-size: clamp(44px, 6vw, 88px); }
.evo-cinema h1 em, .evo-cinema h2 em { color: var(--evo-lime); font-style: normal; }

.evo-cinema__lead {
  max-width: 680px;
  margin: 30px 0 0;
  color: rgba(255,255,255,.8);
  font-size: clamp(16px, 1.6vw, 23px);
  line-height: 1.55;
}

.evo-cinema__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 34px;
}

.evo-cinema__pills span {
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 999px;
  padding: 10px 18px;
  color: rgba(255,255,255,.82);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(8px);
}

.evo-cinema__feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  width: min(920px, 100%);
  margin-top: 38px;
  background: rgba(255,255,255,.18);
}

.evo-cinema__visual-layout {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  gap: clamp(26px, 4vw, 60px);
  align-items: center;
}

.evo-cinema__visual-copy { min-width: 0; }
.evo-cinema__visual-layout .evo-cinema__feature-grid { grid-template-columns: 1fr; margin-top: 26px; }
.evo-cinema__visual-layout .evo-cinema__feature-grid div { min-height: auto; padding: 15px 18px; }

.evo-cinema__screen {
  position: relative;
  margin: 0;
  padding: 8px;
  border: 1px solid rgba(217,229,28,.34);
  border-radius: 14px;
  background: rgba(245,243,234,.96);
  box-shadow: 0 34px 90px rgba(0,0,0,.42);
  transform: perspective(1200px) rotateY(-4deg) rotateZ(.5deg);
  overflow: hidden;
}

.evo-cinema__screen::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(125deg, rgba(255,255,255,.16), transparent 36%);
}

.evo-cinema__screen img { display: block; width: 100%; height: auto; border-radius: 8px; }
.evo-cinema__screen figcaption {
  position: absolute;
  left: 20px;
  bottom: 18px;
  padding: 8px 11px;
  border-radius: 999px;
  color: white;
  background: rgba(3,29,21,.9);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.evo-cinema__benefits { margin: 26px 0 0; padding: 0; list-style: none; }
.evo-cinema__benefits li { padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.15); font-size: clamp(14px, 1.25vw, 18px); }
.evo-cinema__benefits li::before { content: "✓"; color: var(--evo-lime); margin-right: 12px; font-weight: 800; }

.evo-cinema__feature-grid div {
  min-height: 118px;
  padding: 22px;
  background: rgba(2,28,20,.76);
  backdrop-filter: blur(10px);
}

.evo-cinema__feature-grid strong,
.evo-cinema__feature-grid span { display: block; }
.evo-cinema__feature-grid strong { color: var(--evo-lime); font-size: 17px; }
.evo-cinema__feature-grid span { margin-top: 9px; color: rgba(255,255,255,.68); line-height: 1.45; }

.evo-cinema__split {
  display: grid;
  grid-template-columns: 1fr .85fr;
  gap: clamp(24px, 5vw, 70px);
  align-items: end;
  margin-top: 32px;
}

.evo-cinema__split ul { margin: 0; padding: 0; list-style: none; }
.evo-cinema__split li { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.15); font-size: clamp(15px, 1.5vw, 20px); }
.evo-cinema__split li::before { content: "✓"; color: var(--evo-lime); margin-right: 12px; font-weight: 800; }

.evo-cinema__mock {
  display: grid;
  gap: 8px;
  padding: 22px;
  border: 1px solid rgba(217,229,28,.35);
  background: rgba(245,243,234,.94);
  color: var(--evo-ink);
  box-shadow: 0 30px 80px rgba(0,0,0,.28);
  transform: rotate(1.4deg);
}

.evo-cinema__mock > span { color: #5b6d65; font-size: 10px; letter-spacing: .18em; }
.evo-cinema__mock b { padding: 10px 12px; border-left: 3px solid var(--evo-lime); background: white; }
.evo-cinema__mock small { margin-top: 5px; color: #5b6d65; }

.evo-cinema__timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: min(930px, 100%);
  margin-top: 44px;
  color: rgba(255,255,255,.55);
}

.evo-cinema__timeline span { position: relative; padding: 28px 8px 0 0; border-top: 2px solid rgba(255,255,255,.18); }
.evo-cinema__timeline span::before { content: ""; position: absolute; top: -7px; left: 0; width: 12px; height: 12px; border-radius: 50%; background: #52645c; }
.evo-cinema__timeline .is-done { color: white; border-color: var(--evo-lime); }
.evo-cinema__timeline .is-done::before, .evo-cinema__timeline .is-current::before { background: var(--evo-lime); box-shadow: 0 0 0 6px rgba(217,229,28,.14); }
.evo-cinema__timeline .is-current { color: var(--evo-lime); }

.evo-cinema__future-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  width: min(940px, 100%);
  margin-top: 36px;
  background: rgba(255,255,255,.14);
}

.evo-cinema__future-list div { display: flex; align-items: center; gap: 16px; min-height: 72px; padding: 16px 20px; background: rgba(2,28,20,.78); }
.evo-cinema__future-list span { color: var(--evo-lime); font-size: 11px; letter-spacing: .12em; }
.evo-cinema__future-list strong { font-size: clamp(14px, 1.35vw, 18px); }

.evo-cinema__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.evo-cinema__actions button, .evo-cinema__actions a {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  padding: 16px 22px;
  border: 1px solid var(--evo-lime);
  color: var(--evo-ink);
  background: var(--evo-lime);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.evo-cinema__actions a { color: white; background: transparent; border-color: rgba(255,255,255,.38); }

.evo-cinema__controls {
  display: grid;
  grid-template-columns: 80px 1fr 60px;
  align-items: center;
  gap: 22px;
  padding: 20px clamp(22px, 5vw, 76px) 30px;
}

.evo-cinema__progress { display: grid; grid-template-columns: repeat(7, 1fr); gap: 7px; }
.evo-cinema__progress button { height: 3px; padding: 0; border: 0; background: rgba(255,255,255,.24); cursor: pointer; overflow: hidden; }
.evo-cinema__progress button.is-complete { background: rgba(217,229,28,.65); }
.evo-cinema__progress button.is-active { background: var(--evo-lime); box-shadow: 0 0 18px rgba(217,229,28,.55); }
.evo-cinema__counter { text-align: right; color: rgba(255,255,255,.6); font-size: 11px; letter-spacing: .12em; }

.evo-cinema__replay {
  position: fixed;
  z-index: 90;
  left: 18px;
  bottom: 18px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  padding: 10px 14px;
  color: white;
  background: rgba(3,29,21,.92);
  box-shadow: 0 8px 24px rgba(0,0,0,.18);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  cursor: pointer;
}
.evo-cinema__replay span { color: var(--evo-lime); margin-left: 7px; }

@keyframes evo-camera { from { transform: scale(1.08) translate3d(-1%, 0, 0); } to { transform: scale(1.14) translate3d(1%, -1%, 0); } }
@keyframes evo-grain { 0% { transform: translate(0,0); } 25% { transform: translate(2%,-3%); } 50% { transform: translate(-3%,2%); } 75% { transform: translate(3%,3%); } 100% { transform: translate(-2%,-2%); } }

@media (max-width: 760px) {
  .evo-cinema__topbar { padding: 16px 18px; }
  .evo-cinema__topbar img { width: 82px; height: 52px; }
  .evo-cinema__stage { width: calc(100% - 36px); min-height: 68vh; }
  .evo-cinema__number { position: static; margin-bottom: 8px; }
  .evo-cinema h1 { font-size: clamp(48px, 15vw, 72px); }
  .evo-cinema h2 { font-size: clamp(40px, 12vw, 62px); }
  .evo-cinema__feature-grid, .evo-cinema__split, .evo-cinema__future-list { grid-template-columns: 1fr; }
  .evo-cinema__visual-layout { grid-template-columns: 1fr; gap: 16px; }
  .evo-cinema__screen { max-width: 520px; padding: 5px; transform: none; }
  .evo-cinema__screen figcaption { left: 12px; bottom: 12px; font-size: 8px; }
  .evo-cinema__visual-layout h2 { font-size: clamp(34px, 10vw, 50px); }
  .evo-cinema__visual-layout .evo-cinema__feature-grid { display: none; }
  .evo-cinema__benefits { display: none; }
  .evo-cinema__visual-layout .evo-cinema__timeline { margin-top: 18px; }
  .evo-cinema__feature-grid { grid-template-columns: 1fr 1fr; }
  .evo-cinema__feature-grid div:last-child { grid-column: 1 / -1; }
  .evo-cinema__feature-grid div { min-height: auto; padding: 15px; }
  .evo-cinema__split { gap: 18px; }
  .evo-cinema__split li { padding: 8px 0; font-size: 14px; }
  .evo-cinema__mock { display: none; }
  .evo-cinema__future-list div { min-height: 54px; padding: 10px 12px; }
  .evo-cinema__timeline { font-size: 11px; }
  .evo-cinema__timeline span { padding-top: 20px; }
  .evo-cinema__lead { margin-top: 20px; }
  .evo-cinema__controls { grid-template-columns: 55px 1fr 48px; gap: 10px; padding: 12px 18px 18px; }
  .evo-cinema__pause { font-size: 9px; }
  .evo-cinema__skip { font-size: 9px; }
  .evo-cinema__top-actions { gap: 8px; }
  .evo-cinema__sound { padding: 9px 11px; font-size: 9px; }
  .evo-cinema__sound span { font-size: 12px; }
}

@media (max-height: 680px) {
  .evo-cinema__stage { min-height: 65vh; }
  .evo-cinema h1 { font-size: clamp(42px, 7vw, 76px); }
  .evo-cinema h2 { font-size: clamp(38px, 5.5vw, 66px); }
  .evo-cinema__feature-grid, .evo-cinema__split, .evo-cinema__future-list { margin-top: 22px; }
  .evo-cinema__lead { margin-top: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .evo-cinema *, .evo-cinema::before, .evo-cinema__grain { animation: none !important; transition-duration: .01ms !important; }
}


/* Product launch: deliberate cuts, chapter cards and staggered reveals. */
.evo-cinema { box-shadow: inset 0 10px #01110c, inset 0 -10px #01110c; }
.evo-cinema__stage { min-height: min(610px, 65vh); }
.evo-cinema__scene:not(.is-active) { display: none; }
.evo-cinema__scene.is-active { animation: evo-scene-arrive 1s cubic-bezier(.16,1,.3,1) both; }
.evo-cinema__scene.is-active .evo-cinema__kicker { animation: evo-type-arrive .85s .18s both; }
.evo-cinema__scene.is-active h1,
.evo-cinema__scene.is-active h2 { animation: evo-title-arrive 1.25s .22s cubic-bezier(.16,1,.3,1) both; }
.evo-cinema__scene.is-active h1 em,
.evo-cinema__scene.is-active h2 em { display: inline-block; animation: evo-line-arrive 1.2s .42s cubic-bezier(.16,1,.3,1) both; }
.evo-cinema__scene.is-active .evo-cinema__lead,
.evo-cinema__scene.is-active .evo-cinema__pills,
.evo-cinema__scene.is-active .evo-cinema__actions { animation: evo-copy-arrive .9s .68s both; }
.evo-cinema__scene.is-active .evo-cinema__screen { animation: evo-screen-arrive 1.6s .28s cubic-bezier(.16,1,.3,1) both; }
.evo-cinema__scene.is-active .evo-cinema__benefits li,
.evo-cinema__scene.is-active .evo-cinema__feature-grid > div,
.evo-cinema__scene.is-active .evo-cinema__future-list > div { animation: evo-copy-arrive .85s both; animation-delay: .6s; }
.evo-cinema__scene.is-active li:nth-child(2),
.evo-cinema__scene.is-active .evo-cinema__feature-grid > div:nth-child(2),
.evo-cinema__scene.is-active .evo-cinema__future-list > div:nth-child(2) { animation-delay: .82s; }
.evo-cinema__scene.is-active li:nth-child(3),
.evo-cinema__scene.is-active .evo-cinema__feature-grid > div:nth-child(3),
.evo-cinema__scene.is-active .evo-cinema__future-list > div:nth-child(3) { animation-delay: 1.04s; }
.evo-cinema__scene.is-active li:nth-child(4),
.evo-cinema__scene.is-active .evo-cinema__future-list > div:nth-child(4) { animation-delay: 1.26s; }
.evo-cinema__visual-layout h2 { font-size: clamp(38px, 4.3vw, 65px); line-height: 1.04; }
.evo-cinema__scene.is-active .evo-cinema__timeline span { animation: evo-copy-arrive .7s .7s both; }
.evo-cinema__scene.is-active .evo-cinema__timeline span:nth-child(2) { animation-delay: .95s; }
.evo-cinema__scene.is-active .evo-cinema__timeline span:nth-child(3) { animation-delay: 1.2s; }
.evo-cinema__scene.is-active .evo-cinema__timeline span:nth-child(4) { animation-delay: 1.45s; }
.evo-cinema__wash { animation: evo-light-travel 18s ease-in-out infinite alternate; }
.evo-cinema__transition { position: absolute; inset: 0; z-index: 8; display: grid; place-items: center; pointer-events: none; opacity: 0; background: #031d15; clip-path: inset(0 100% 0 0); }
.evo-cinema__transition::before { content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, transparent 35%, rgba(217,229,28,.16) 50%, transparent 65%); }
.evo-cinema__transition span { position: relative; padding: 28px; color: var(--evo-lime); font: 800 clamp(22px, 4.2vw, 64px)/1.05 "Manrope", sans-serif; text-align: center; letter-spacing: -.025em; }
.evo-cinema.is-cutting .evo-cinema__transition { animation: evo-chapter-cut 4.8s cubic-bezier(.76,0,.24,1) both; }
.evo-cinema.is-cutting .evo-cinema__transition span { animation: evo-chapter-type 4.8s both; }
.evo-cinema__topbar, .evo-cinema__controls { z-index: 10; }
@keyframes evo-scene-arrive { from { opacity: 0; transform: translateX(32px) scale(1.025); } to { opacity: 1; transform: none; } }
@keyframes evo-title-arrive { from { opacity: 0; transform: translateY(36px);  } to { opacity: 1; transform: none; } }
@keyframes evo-line-arrive { from { opacity: 0; transform: translateX(-28px); } to { opacity: 1; transform: none; } }
@keyframes evo-type-arrive { from { opacity: 0; letter-spacing: .5em; transform: translateY(8px); } to { opacity: 1; letter-spacing: .24em; transform: none; } }
@keyframes evo-copy-arrive { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }
@keyframes evo-screen-arrive { from { opacity: 0; transform: perspective(1200px) rotateY(-16deg) translateX(70px) scale(.9); } to { opacity: 1; transform: perspective(1200px) rotateY(-4deg) rotateZ(.5deg); } }
@keyframes evo-light-travel { from { transform: translateX(-6%); opacity: .55; } to { transform: translateX(6%); opacity: 1; } }
@keyframes evo-chapter-cut { 0% { opacity: 1; clip-path: inset(0 100% 0 0); } 14%, 86% { opacity: 1; clip-path: inset(0); } 100% { opacity: 1; clip-path: inset(0 0 0 100%); } }
@keyframes evo-chapter-type { 0%, 12% { opacity: 0; transform: scale(.96) translateY(10px); } 20%, 80% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateY(-10px); } }
@media (max-width: 760px) {
  .evo-cinema { grid-template-rows: auto minmax(0,1fr) auto; }
  .evo-cinema__stage { min-height: 0; height: 100%; overflow-y: auto; overflow-x: hidden; padding: 18px 0; display: block; }
  .evo-cinema__scene { width: 100%; }
  .evo-cinema__visual-layout h2 { font-size: clamp(33px, 9.4vw, 48px); }
  .evo-cinema__benefits { display: block; margin-top: 18px; }
  .evo-cinema__benefits li { padding: 7px 0; font-size: 13px; }
  .evo-cinema__visual-layout .evo-cinema__feature-grid { display: grid; grid-template-columns: 1fr; margin-top: 18px; }
  .evo-cinema__visual-layout .evo-cinema__feature-grid > div { padding: 9px 12px; }
  .evo-cinema__screen { max-width: 460px; }
  .evo-cinema__topbar img { width: 66px; }
  .evo-cinema__skip { max-width: 94px; line-height: 1.5; }
  .evo-cinema__top-actions { gap: 4px; }
  .evo-cinema__sound { padding: 8px; letter-spacing: .07em; }
  .evo-cinema__lead { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .evo-cinema *, .evo-cinema::before { animation: none !important; transition: none !important; }
  .evo-cinema__transition { display: none; }
}

/* Opening brand card: a short hold before the launch story. */
.evo-cinema__transition small { display: block; color: rgba(255,255,255,.72); font-size: clamp(11px,1vw,15px); letter-spacing: .3em; text-align: center; }
.evo-cinema__transition span { display: block; }
.evo-cinema.is-opening .evo-cinema__transition { animation: evo-opening-card 5s cubic-bezier(.76,0,.24,1) both; }
.evo-cinema.is-opening .evo-cinema__transition span { animation: evo-opening-type 5s both; }
.evo-cinema__scene--final h2 { font-size: clamp(64px, 9vw, 130px); }
@keyframes evo-opening-card { 0% { opacity: 1; clip-path: inset(0); } 12%, 82% { opacity: 1; clip-path: inset(0); } 100% { opacity: 1; clip-path: inset(0 0 0 100%); } }
@keyframes evo-opening-type { 0%, 8% { opacity: 0; transform: scale(.95) translateY(12px); } 24%, 82% { opacity: 1; transform: none; } 100% { opacity: 0; transform: translateY(-12px); } }
@media (max-width:760px) { .evo-cinema__scene--final h2 { font-size: clamp(58px,17vw,84px); } }
@media (prefers-reduced-motion:reduce) { .evo-cinema__transition { display:none; } }

/* Keep descenders clear throughout every title reveal. */
.evo-cinema h1, .evo-cinema h2 { overflow: visible; padding-bottom: .12em; margin-bottom: -.12em; line-height: 1.08; }

/* Phone header: compact, separate rows keep both actions inside the viewport. */
@media (max-width: 760px) {
  .evo-cinema .evo-cinema__topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    padding: 12px 16px;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
  .evo-cinema .evo-cinema__topbar img { width: 64px; height: 48px; max-width: 100%; }
  .evo-cinema .evo-cinema__top-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    min-width: 0;
    max-width: 100%;
  }
  .evo-cinema .evo-cinema__sound,
  .evo-cinema .evo-cinema__skip {
    font-family: "DM Sans", Arial, sans-serif;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .07em;
    min-height: 36px;
    white-space: nowrap;
    max-width: none;
    box-sizing: border-box;
  }
  .evo-cinema .evo-cinema__sound { padding: 8px 12px; gap: 6px; }
  .evo-cinema .evo-cinema__skip { padding: 8px 0 8px 8px; }
  .evo-cinema .evo-cinema__skip span { margin-left: 5px; }
}

.evo-cinema__start[hidden] { display: none !important; }
.evo-cinema__start { position: absolute; inset: 0; z-index: 9; display: grid; place-items: center; padding: 120px 28px 90px; overflow-y: auto; background: radial-gradient(ellipse at 70% 25%, #164b28 0%, #031d15 65%); }
.evo-cinema__start-card { width: min(950px, 100%); }
.evo-cinema .evo-cinema__start h2 { font-size: clamp(44px, 6vw, 82px); line-height: 1.12; }
.evo-cinema .evo-cinema__start-button { display: inline-flex; align-items: center; justify-content: center; gap: 28px; margin-top: 34px; padding: 18px 25px; min-height: 54px; border: 1px solid var(--evo-lime); border-radius: 4px; background: var(--evo-lime); color: var(--evo-ink); font: 800 14px/1.3 "DM Sans", Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.evo-cinema__start-hint { margin-top: 18px; color: rgba(255,255,255,.75); font-size: 14px; line-height: 1.5; }
.evo-cinema.is-awaiting-start .evo-cinema__controls { visibility: hidden; }
@media (max-width:760px) {
  .evo-cinema__start { padding: 126px 22px 40px; align-items: center; }
  .evo-cinema .evo-cinema__start h2 { font-size: clamp(36px, 10.5vw, 54px); }
  .evo-cinema .evo-cinema__start-button { width: 100%; margin-top: 26px; font-size: 12px; }
}

/* Evolution launch artwork. */
.evo-cinema__final-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:30px; align-items:end; }
.evo-cinema .evo-cinema__scene--final h2 { font-size:clamp(58px,6.4vw,92px); }
.evo-cinema__evolution-image { margin:0; width:100%; }
.evo-cinema__evolution-image img { display:block; width:100%; height:auto; max-height:220px; object-fit:contain; }
.evo-cinema__scene.is-active .evo-cinema__evolution-image { animation:evo-copy-arrive 1.2s .6s both; }
@media(max-width:760px) {
 .evo-cinema__final-layout { grid-template-columns:1fr; gap:20px; }
 .evo-cinema .evo-cinema__scene--final h2 { font-size:clamp(54px,15vw,76px); }
 .evo-cinema__evolution-image img { max-height:150px; object-position:left; }
}
@media(prefers-reduced-motion:reduce) { .evo-cinema__scene.is-active .evo-cinema__evolution-image { animation:none!important; } }
