/* Content is immediately available; decorative motion remains in the background. */
.hero .eyebrow,.hero h1 .line span,.hero p.sub,.hero-actions {
  opacity:1;transform:none;animation:none;
}
.reveal,.tl-item,.origin {
  opacity:1;transform:none;transition:none;
}
.motion-paused,.motion-paused * { animation-play-state:paused!important; }
main > section:not(.hero),body > section:not(.hero),footer {
  content-visibility:auto;
  contain-intrinsic-size:auto 800px;
}
.video-launch { position:relative;display:block;width:100%;height:100%;border:0;padding:0;background:#021b14;cursor:pointer; }
.video-launch img { width:100%;height:100%;object-fit:cover; }
.video-play { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:54px;border-radius:14px;background:#c00;color:white;font-size:26px; }
.video-launch:focus-visible { outline:4px solid var(--gold);outline-offset:-4px; }

/* Keep service-card hover motion independent of the disabled entrance reveals. */
@media (prefers-reduced-motion: no-preference) {
  #focus .card { transition:transform .4s var(--ease),box-shadow .4s var(--ease); }
  #focus .card:hover { transform:translateY(-4px); }
}

/* Preserve the original typography without word-level color accents. */
body h1 em,
body h2 em,
body h3 em,
body h4 em,
body h5 em,
body h6 em,
body h1 span,
body h2 span,
body h3 span,
body h4 span,
body h5 span,
body h6 span {
  color:inherit!important;
  font-family:inherit;
  font-style:normal!important;
}

/* Remove the recurring accent-color treatment from emphasized words in prose. */
body em { color:inherit!important; }

.quote p em { font-style:normal!important; }

/* Buttons stay flat in their default, hover, and focus states. */
button,
.btn-primary,
.btn-ghost,
.btn-outline,
.cta,
[role="button"] { box-shadow:none!important; }

/* Section transitions do not need gold separator rules. */
.topbar { border-bottom:0!important; }
.strip { border-top:0!important; }
