/* APM: Continuous profiling additions (loaded after pages.css) */

/* hero video: local, silent product animation */
.cp-video { position: relative; max-width: 1040px; margin: 72px auto 0; aspect-ratio: 16 / 9; }
.cp-video video { display: block; width: 100%; height: 100%; object-fit: cover; }

/* benefit cards use the original icons */
.persona-img { display: block; width: 52px; height: 52px; border-radius: 14px; margin-bottom: 26px; }

/* feature clips (4:3) */
.frame video.cp-clip { aspect-ratio: 4 / 3; object-fit: cover; background: #1b1b1b; }

/* platform pillars: four text cards */
.pillars { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.pillars .card { padding: 28px; }
.pillar-num { display: block; font-family: var(--mono); font-size: 12px; letter-spacing: .1em; color: var(--accent); margin-bottom: 22px; }
.pillars h3 { font-size: 18px; font-weight: 600; letter-spacing: -0.02em; margin-bottom: 10px; }
.pillars p { font-size: 14.5px; line-height: 1.6; color: var(--fg-2); }

/* guide cards */
.reads { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.read { display: flex; flex-direction: column; overflow: hidden; padding: 0; }
.read img { display: block; width: 100%; height: auto; aspect-ratio: 1024 / 536; object-fit: cover; border-bottom: 1px solid var(--line); }
.read-body { flex: 1; display: flex; flex-direction: column; padding: 26px 28px 28px; }
.read-tag { font-family: var(--mono); font-size: 12.5px; color: var(--accent); }
.read h3 { margin-top: 14px; font-size: 18px; line-height: 1.35; font-weight: 600; letter-spacing: -0.02em; }
.read p { flex: 1; margin-top: 10px; font-size: 14.5px; line-height: 1.6; color: var(--fg-2); }
.read .link { margin-top: 20px; font-size: 14px; }

/* closing CTA: big numbers */
.final .fine { text-align: center; }
.cp-facts span { font-family: inherit; font-size: clamp(34px, 3.4vw, 44px); line-height: 1; font-weight: 600; letter-spacing: -0.04em; text-transform: none; color: var(--accent); }
.cp-facts b { margin-top: 12px; color: var(--fg-2); }

@media (max-width: 1120px) {
  .pillars { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
@media (max-width: 960px) {
  .reads { grid-template-columns: minmax(0, 1fr); max-width: 560px; margin: 0 auto; }
}
@media (max-width: 560px) {
  .cp-video { margin-top: 48px; }
  .pillars { grid-template-columns: minmax(0, 1fr); }
  .pillars .card { padding: 26px; }
  .read-body { padding: 22px; }
}

/* Light skin: small green text uses --mint (≥4.5:1 on the light surfaces); --accent stays for dots, fills,
   borders and large numbers. Light only, so the dark skin is unchanged. */
:root[data-theme="light"] .pillar-num,
:root[data-theme="light"] .read-tag,
:root[data-theme="light"] .cp-facts span { color: var(--mint); }
