/* CHADS design foundation — shared typography, color, spacing and motion rules. */
:root {
  --ch-bg: #03070c;
  --ch-bg-deep: #020509;
  --ch-panel: #07111d;
  --ch-panel-2: #091523;
  --ch-navy: #0d2035;
  --ch-blue: #173b60;
  --ch-blue-light: #9fb8d2;
  --ch-plum: #422448;
  --ch-gold: #d4ad59;
  --ch-gold-light: #efd48c;
  --ch-text: #ffffff;
  --ch-body: rgba(255,255,255,.78);
  --ch-muted: rgba(255,255,255,.64);
  --ch-faint: rgba(255,255,255,.46);
  --ch-line: rgba(255,255,255,.12);
  --ch-line-strong: rgba(255,255,255,.2);
  --ch-radius-sm: 9px;
  --ch-radius: 14px;
  --ch-radius-lg: 18px;
  --ch-shadow: 0 24px 70px rgba(0,0,0,.30);
  --ch-shell: 1220px;
  --ch-gutter: 44px;
  --ch-section-space: 96px;
  --ch-hero-primary: clamp(3.15rem, 6vw, 5.7rem);
  --ch-hero-editorial: clamp(2.8rem, 5.35vw, 4.95rem);
  --ch-section-title: clamp(2.1rem, 4vw, 3.5rem);
}
html { scroll-behavior: smooth; }
body#encore-theme { background: var(--ch-bg-deep); }
.ch-shell,
.ch-system-shell,
.ch-home__shell,
.c12-shell { width: min(var(--ch-shell), calc(100% - var(--ch-gutter))); margin-inline: auto; }
.ch-eyebrow,
.ch-system-kicker,
.ch-home__eyebrow,
.c12-kicker {
  margin: 0 0 13px;
  font-size: .8rem;
  font-weight: 900;
  letter-spacing: .17em;
  line-height: 1.4;
  text-transform: uppercase;
}
.ch-texture-flow,
.ch-texture-cognition { position: relative; isolation: isolate; overflow: hidden; }
.ch-texture-flow::before,
.ch-texture-cognition::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-position: center;
  background-size: cover;
  pointer-events: none;
}
.ch-texture-flow::before { background-image: url('chads-flow-bg.jpg'); }
.ch-texture-cognition::before { background-image: url('chads-cognition-bg.webp'); }
.header__wrap,
.header__content--desktop,
.header__content--mobile { background: #000 !important; }
.header.sticky.header--fixed {
  position: fixed !important;
  inset: 0 0 auto !important;
  width: 100% !important;
  z-index: 99999 !important;
  transform: translateZ(0) !important;
  background: #000 !important;
  box-shadow: 0 8px 25px rgba(0,0,0,.28) !important;
}
@media (max-width: 767px) {
  :root { --ch-gutter: 30px; --ch-section-space: 72px; }
  html body .header.sticky:not(.header--fixed) {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    transform: none !important;
    box-shadow: none !important;
  }
  html body .header .header__content--desktop .header__container { justify-content: flex-start !important; }
  html body .header .hamburger { order: -999 !important; margin-left: 0 !important; margin-right: auto !important; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
