/*
 * Prototype page-level rules (keyframes, header/hero overrides).
 * Extracted verbatim from _reference/CWP_Website.html (prototype). Asset URLs rewritten to theme files.
 */

html { scroll-behavior: smooth; }
body { margin: 0; background: #ffffff; }
a { color: var(--accent); text-decoration: none; }
a:hover { color: var(--accent-hover); }
@keyframes cwpMarquee { to { transform: translateX(-50%); } }
@keyframes cwpFadeUp { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.cwp-btn, .cwp-link { white-space: nowrap; }
.cwp-hero__inner .cwp-hero-title { max-width: 16em; }
.cwp-root { --header-height: 104px; }
.cwp-header__inner .cwp-logo { height: 80px; }
.cwp-header .cwp-btn--secondary { transition: background-color 160ms cubic-bezier(0.2,0,0,1), color 160ms cubic-bezier(0.2,0,0,1), border-color 160ms cubic-bezier(0.2,0,0,1); }
.cwp-header .cwp-btn--secondary:hover { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
@media (min-width: 1024px) { .cwp-hero__inner .cwp-hero-title { font-size: 70px; } }
[data-dialog-pill] { white-space: nowrap; }
@media (max-width: 1023px) {
  .cwp-container.cwp-pagehero__inner { padding-top: 64px; padding-bottom: 64px; }
  .cwp-container.cwp-band__inner { padding-top: 80px; padding-bottom: 80px; }
  .cwp-container.cwp-hero__inner { padding-top: calc(var(--header-height) + 24px); padding-bottom: 64px; }
}
