/* Obsidian Media Services -- shared site styles (v2 prototype)
   Tokens follow the OMS-ALT1 brand book (colour, mark) and the July 2026
   overhaul session record (type: Tiempos Fine/Text retired Cinzel). */

body {
  background-color: #0A0E10;
  color: #E6E8EC;
}

::selection {
  background: rgba(217, 75, 58, 0.35);
  color: #FFFFFF;
}

.hero-text-shadow {
  text-shadow: 0px 10px 30px rgba(0, 0, 0, 0.9);
}

/* Frosted glass -- the dark glassmorphism treatment used across nav, buttons, cards.
   .glass (the nav) has no edge of its own: the blur+tint sits on a ::before that
   extends past the nav's own box and is masked to fully transparent, so the bar
   dissolves into the page instead of stopping at a border/line. */
.glass::before {
  content: "";
  position: absolute;
  inset: 0;
  bottom: -72px;
  z-index: -1;
  background: linear-gradient(to bottom, rgba(10, 14, 16, 0.5), rgba(10, 14, 16, 0));
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  mask-image: linear-gradient(to bottom, black 0%, black 45%, transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, black 0%, black 45%, transparent 100%);
  pointer-events: none;
}

.glass-btn {
  border-radius: 0 !important;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(184, 188, 196, 0.4);
  transition: background 300ms ease, border-color 300ms ease, color 300ms ease, transform 200ms ease;
}

.glass-btn:hover {
  background: #E6E8EC;
  border-color: #E6E8EC;
  color: #0A0E10;
}

/* .primary intentionally has no ember styling: buttons are back to the plain
   dark frosted glass from the original site. Ember now lives on the hero chip. */

.glass-card {
  background: rgba(230, 232, 236, 0.03);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(184, 188, 196, 0.14);
  transition: border-color 400ms ease, background 400ms ease;
}

.glass-card:hover {
  border-color: rgba(184, 188, 196, 0.4);
  background: rgba(230, 232, 236, 0.055);
}

/* Ember hairline -- one accent mark per section, per brand book 03.3 distribution rule */
.ember-rule {
  width: 48px;
  height: 2px;
  background: #D94B3A;
}

.nav-logo {
  height: 44px;
  width: auto;
  display: block;
}

@media (max-width: 767px) {
  .nav-logo {
    height: 36px;
  }
}

.mobile-menu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 320ms ease;
}

.mobile-menu.open {
  max-height: 320px;
}

/* Hero Headline & Subtitle proportional fluid typography */
.hero-title {
  font-size: clamp(2.35rem, 1.45rem + 3.9vw, 5.15rem) !important;
  line-height: 0.98 !important;
}

.hero-subtitle {
  font-size: clamp(0.65rem, 0.34rem + 0.88vw, 1.15rem) !important;
  border-radius: 0 !important;
}
