:root {
  --os-ink: #11110f;
  --os-paper: #f4f1e8;
  --os-blue: #1647ff;
  --os-orange: #ff5c35;
  --os-lime: #d8ff3e;
  --os-line: rgba(17, 17, 15, 0.2);
  --os-pad: clamp(20px, 4vw, 64px);
}

html { scroll-behavior: smooth; }
body { color: var(--os-ink); background: var(--os-paper); }

.announcement-bar__group-item {
  min-height: 31px;
  color: #fff !important;
  background: var(--os-ink) !important;
}
.announcement-bar__group-item .rte { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }

.header-section {
  border-bottom: 1px solid var(--os-line);
  background: rgba(244, 241, 232, 0.94);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.header__container-top-wrap { min-height: 78px; }
.header__logo-image { object-fit: contain; }
.orientstride-default-logo { width: var(--desktop-size); height: auto; }

.header__nav-item,
.header a,
.header button {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.footer {
  color: #fff !important;
  background: var(--os-ink) !important;
}

.footer .page-width { max-width: none; padding-inline: var(--os-pad); }
.orientstride-footer-logo { display: inline-block; width: clamp(210px, 34vw, 560px); margin: 24px 0 56px; }
.orientstride-footer-logo img { width: 100%; height: auto; filter: invert(1); }
.footer a { transition: color 0.2s ease; }
.footer a:hover { color: var(--os-lime) !important; }

@media (max-width: 959px) {
  .header__container-top-wrap { min-height: 66px; }
  .orientstride-default-logo { width: var(--mobile-size); }
  .orientstride-footer-logo { margin-bottom: 32px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
