/* Feature focus and explanatory viewer — uses the existing site's type and colours. */
.nav-login {
  flex: none;
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid #30343d;
  border-radius: 999px;
  background: transparent;
  color: #8a8f9b;
  font: 600 14px/1.2 var(--font);
  white-space: nowrap;
  cursor: not-allowed;
}
.footer-coming { color: #8a8f9b; font-size: 14px; }
.pv-world.is-feature-focused > :is(.pv-core,.pv-satellite):not(.is-feature-highlighted) { opacity: .22; }
.pv-world.is-feature-focused > :is(.pv-core,.pv-satellite).is-feature-highlighted { z-index: 12; opacity: 1; }
.pv-world.is-feature-focused > .is-feature-highlighted .pv-media { filter: none; }
.pv-viewer {
  width: min(1080px, calc(100vw - 48px));
  max-width: calc(100vw - 24px);
  padding: 24px;
  overscroll-behavior: contain;
}
.pv-viewer-bar { margin-bottom: 22px; }
.pv-viewer-bar h3 { color: var(--text-secondary, #b6bac4); }
.pv-viewer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(28px, 4vw, 56px);
}
.pv-viewer-content { min-width: 0; }
.pv-viewer-content > :is(video,img) { max-height: calc(100dvh - 154px); max-width: 100%; }
.pv-viewer-story { min-width: 0; padding-block: 8px; }
.pv-story-eyebrow { margin: 0 0 12px; color: var(--blue, #269ff0); font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.pv-story-title { margin: 0 0 16px; font: 600 clamp(26px, 2.5vw, 36px)/1.12 var(--font); letter-spacing: -.035em; text-wrap: balance; }
.pv-story-intro { margin: 0; color: #c3c6cf; font: 400 16px/1.6 var(--font); }
.pv-story-points { margin: 24px 0; }
.pv-story-point { padding: 15px 0; border-top: 1px solid #272c36; }
.pv-story-point dt { margin: 0 0 6px; font: 600 15px/1.4 var(--font); }
.pv-story-point dd { margin: 0; color: #aeb4c0; font: 400 14px/1.6 var(--font); }
.pv-story-note { margin: 0; color: #8f96a4; font: 400 12px/1.55 var(--font); }
@media (min-width: 901px) and (max-width: 1350px) {
  .nav-links a { padding-inline: 9px; font-size: 12px; }
  .nav-menu > .btn { padding-inline: 15px; font-size: 13px; }
  .nav-login { padding-inline: 10px; font-size: 13px; }
}
@media (max-width: 720px) {
  .pv-viewer { width: calc(100vw - 20px); padding: 16px; max-height: calc(100dvh - 20px); }
  .pv-viewer-bar { position: sticky; top: -16px; z-index: 2; padding-block: 8px; background: var(--bg-deep, #070910); }
  .pv-viewer-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .pv-viewer-content > :is(video,img) { max-height: 52dvh; }
  .pv-viewer-story { padding: 0 4px 8px; }
  .pv-story-title { font-size: 28px; }
  .pv-story-points { margin-block: 20px; }
}
