/* Nova repair: exact review-tool palette, shared case-hero geometry and one purposeful media interaction. */
.case-page.case-ai-animation {
  --case-primary: #1ed6ff;
  --case-secondary: #66d9b2;
  --case-surface: #061720;
  --case-deep: #020910;
  --case-line: rgba(30, 214, 255, .56);
  --case-hero-title: #f0f8fb;
  --case-hero-stroke: rgba(255, 255, 255, .7);
  background:
    radial-gradient(circle at 16% 10%, rgba(30, 214, 255, .13), transparent 28%),
    radial-gradient(circle at 86% 18%, rgba(102, 217, 178, .07), transparent 24%),
    #020910;
}

.case-ai-animation .case-hero-image,
.case-ai-animation .case-hero-content {
  border-color: var(--case-line);
}

.case-ai-animation .case-hero-content {
  background:
    linear-gradient(135deg, rgba(30, 214, 255, .08), transparent 42%),
    repeating-linear-gradient(0deg, rgba(30, 214, 255, .025) 0 1px, transparent 1px 24px),
    linear-gradient(145deg, #061720, #020910);
}

.case-ai-animation .case-hero-image img {
  filter: none;
  object-position: center top;
}

.case-ai-animation .case-hero-content h1,
.case-ai-animation .case-quick-read h2 {
  color: #f0f8fb;
  -webkit-text-stroke: .45px rgba(255, 255, 255, .7);
  text-shadow: 2px 3px 0 rgba(0, 0, 0, .55), 0 16px 34px rgba(0, 0, 0, .32);
}

.case-ai-animation .case-hero-content::before,
.case-ai-animation .case-hero-image::before,
.case-ai-animation .case-hero-content::after,
.case-ai-animation .case-hero-image::after {
  pointer-events: none;
}

.case-ai-animation .live-lab-launchpad {
  --lab-accent: #1ed6ff !important;
  background: #020910;
  border-color: var(--case-line);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .34), inset 0 0 0 1px rgba(30, 214, 255, .035);
}

.case-ai-animation .live-lab-launchpad__intro {
  background:
    linear-gradient(125deg, rgba(30, 214, 255, .12), transparent 48%),
    repeating-linear-gradient(135deg, rgba(30, 214, 255, .035) 0 1px, transparent 1px 22px),
    linear-gradient(145deg, #081c27, #061720);
}

.case-ai-animation .live-lab-signals article {
  background: #061720;
  border-color: rgba(30, 214, 255, .28);
}

.case-ai-animation .live-lab-signals article:nth-child(2) { background: #081c27; }
.case-ai-animation .live-lab-signals article:nth-child(3) { background: #0b2431; }
.case-ai-animation .live-lab-signals strong { color: #f0f8fb; }
.case-ai-animation .live-lab-signals small { color: #9eb9c5; }
.case-ai-animation .live-lab-button--primary { background: #1ed6ff; color: #021014; }

.nova-inline-review {
  align-items: stretch;
  background:
    linear-gradient(110deg, rgba(30, 214, 255, .055), transparent 50%),
    #020910;
  border-block: 1px solid rgba(30, 214, 255, .24);
  display: grid;
  gap: clamp(28px, 5vw, 78px);
  grid-template-columns: minmax(300px, .82fr) minmax(0, 1.18fr);
  padding-block: clamp(58px, 8vw, 116px);
}

.nova-inline-review__stage {
  align-items: center;
  display: grid;
  justify-items: center;
  min-height: 580px;
  overflow: hidden;
  position: relative;
}

.nova-inline-review__stage::before,
.nova-inline-review__stage::after {
  border: 1px solid rgba(30, 214, 255, .18);
  border-radius: 50%;
  content: "";
  height: 490px;
  position: absolute;
  width: 490px;
}

.nova-inline-review__stage::after {
  height: 350px;
  width: 350px;
}

.nova-inline-review__screen {
  background: #000;
  border: 1px solid #1ed6ff;
  box-shadow: 0 0 0 12px #061720, 0 28px 70px rgba(0, 0, 0, .62), 0 0 54px rgba(30, 214, 255, .14);
  clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px));
  max-width: 304px;
  overflow: hidden;
  position: relative;
  width: min(72%, 304px);
  z-index: 1;
}

.nova-inline-review__screen video {
  aspect-ratio: 9 / 16;
  display: block;
  object-fit: cover;
  width: 100%;
}

.nova-inline-review__timecode {
  background: rgba(2, 9, 16, .88);
  border-top: 1px solid rgba(30, 214, 255, .42);
  bottom: 0;
  color: #1ed6ff;
  font: 800 .68rem/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
  left: 0;
  letter-spacing: .09em;
  padding: 10px 12px;
  position: absolute;
  right: 0;
}

.nova-inline-review__control { align-self: center; max-width: 680px; }
.nova-inline-review__control > p:not(.eyebrow) { color: #9eb9c5; font-size: clamp(1rem, 1.4vw, 1.16rem); line-height: 1.75; }
.nova-inline-review__control h2 { color: #f0f8fb; font-size: clamp(2.8rem, 5.7vw, 6.2rem); line-height: .9; margin: 16px 0 24px; max-width: 760px; text-shadow: 2px 3px 0 rgba(0, 0, 0, .55), 0 18px 38px rgba(0, 0, 0, .28); }

.nova-take-selector { display: grid; gap: 8px; margin-top: 30px; }
.nova-take-selector button {
  align-items: center;
  background: rgba(6, 23, 32, .84);
  border: 1px solid rgba(30, 214, 255, .18);
  color: #9eb9c5;
  cursor: pointer;
  display: grid;
  font: 800 .9rem/1.25 Inter, "Segoe UI", sans-serif;
  gap: 14px;
  grid-template-columns: 42px 1fr;
  padding: 13px 16px;
  text-align: left;
  transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}
.nova-take-selector button span { color: #1ed6ff; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.nova-take-selector button:hover,
.nova-take-selector button:focus-visible { border-color: rgba(30, 214, 255, .64); color: #f0f8fb; transform: translateX(4px); }
.nova-take-selector button.is-active { background: #0b2431; border-color: #1ed6ff; color: #f0f8fb; box-shadow: inset 3px 0 0 #1ed6ff; }

.nova-inline-review__boundary {
  align-items: center;
  border-top: 1px solid rgba(30, 214, 255, .24);
  color: #f0f8fb;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin-top: 24px;
  padding-top: 16px;
}
.nova-inline-review__boundary strong { color: #66d9b2; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }

.case-ai-animation .nova-evidence-shot,
.case-ai-animation .nova-evidence-notes article,
.case-ai-animation .case-proof-card { border-color: rgba(30, 214, 255, .28); }

@media (max-width: 900px) {
  .nova-inline-review { grid-template-columns: 1fr; }
  .nova-inline-review__stage { min-height: 500px; }
  .nova-inline-review__control { max-width: none; }
}

@media (max-width: 560px) {
  .nova-inline-review { gap: 32px; }
  .nova-inline-review__stage { min-height: 460px; }
  .nova-inline-review__screen { width: min(72vw, 270px); }
  .nova-inline-review__control h2 { font-size: clamp(2.6rem, 14vw, 4.3rem); }
  .nova-inline-review__boundary { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .nova-take-selector button { transition: none; }
}
