/* Page-specific styles that were inline <style> blocks in the original pages. */

/* ---- from podcast.html ---- */
/* Anything Combat Podcast wordmark: one line above the hero, pulsing like the other text logos */
  .pod-mark { max-width: 1120px; margin: 0 auto clamp(30px, 4.5vw, 56px); animation: pod-glow 3s ease-in-out infinite; transform-origin: center; will-change: transform, filter; }
  @keyframes pod-glow {
    0%, 100% { transform: scale(.985); filter: brightness(1) drop-shadow(0 0 10px rgba(237, 28, 36, .45)) drop-shadow(0 0 30px rgba(237, 28, 36, .32)); }
    50%      { transform: scale(1.025); filter: brightness(1.14) drop-shadow(0 0 20px rgba(237, 28, 36, .9)) drop-shadow(0 0 64px rgba(237, 28, 36, .6)); }
  }
  @media (prefers-reduced-motion: reduce) { .pod-mark { animation: none; filter: drop-shadow(0 0 14px rgba(237, 28, 36, .6)); } }

/* ---- from digital.html ---- */
/* Combat Academy wordmark: one line above the hero, pulsing like the other text logos */
  .acad-mark { max-width: 1120px; margin: 0 auto clamp(30px, 4.5vw, 56px); animation: acad-glow 3s ease-in-out infinite; transform-origin: center; will-change: transform, filter; }
  @keyframes acad-glow {
    0%, 100% { transform: scale(.985); filter: brightness(1) drop-shadow(0 0 10px rgba(237, 28, 36, .45)) drop-shadow(0 0 30px rgba(237, 28, 36, .32)); }
    50%      { transform: scale(1.025); filter: brightness(1.14) drop-shadow(0 0 20px rgba(237, 28, 36, .9)) drop-shadow(0 0 64px rgba(237, 28, 36, .6)); }
  }
  @media (prefers-reduced-motion: reduce) { .acad-mark { animation: none; filter: drop-shadow(0 0 14px rgba(237, 28, 36, .6)); } }

/* ---- from articles.html ---- */
/* ---------- COMBAT / MAGAZINE stacked on two lines at every screen size, strong pulsing glow ---------- */
  .mag-mark { max-width: 880px; animation: mag-glow 3s ease-in-out infinite; transform-origin: center; will-change: transform, filter; }
  .mag-mark .mark-stack { display: block; } /* magazine page only (was page-wide inline) */
  .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  @keyframes mag-glow {
    0%, 100% { transform: scale(.985); filter: brightness(1) drop-shadow(0 0 10px rgba(237, 28, 36, .45)) drop-shadow(0 0 30px rgba(237, 28, 36, .32)); }
    50%      { transform: scale(1.025); filter: brightness(1.14) drop-shadow(0 0 20px rgba(237, 28, 36, .9)) drop-shadow(0 0 64px rgba(237, 28, 36, .6)); }
  }
  @media (prefers-reduced-motion: reduce) { .mag-mark { animation: none; filter: drop-shadow(0 0 14px rgba(237, 28, 36, .6)); } }

  .coming-drop--octagon { width: clamp(76px, 10vw, 118px); margin: clamp(10px, 1.8vw, 22px) auto 16px; }
  /* ---------- hero byline ---------- */
  .mag-byline { line-height: 1; font-family: var(--font-mono); font-weight: 500; font-size: clamp(.78rem, 1.6vw, 1.05rem); letter-spacing: .34em; text-transform: uppercase; color: var(--ink-2); margin: -2px 0 6px; text-indent: .34em; }

  /* ---------- Combat Magazine editions: one slot, auto-rotating ---------- */
  .ed-track { display: flex; gap: 18px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; margin: 0 calc(-1 * var(--gutter)); padding: 6px var(--gutter) 12px; scroll-padding-inline: var(--gutter); }
  .ed-track::-webkit-scrollbar { display: none; }
  .ed-track:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
  .ed-card { flex: 0 0 100%; scroll-snap-align: start; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); background: var(--bg-2); border: 1px solid var(--line-soft); border-radius: var(--radius-lg); overflow: hidden; text-decoration: none; color: inherit; transition: border-color .2s ease; }
  .ed-card:hover { border-color: rgba(237, 28, 36, .5); }
  .ed-cover { width: 100%; height: 100%; min-height: 300px; aspect-ratio: 16 / 9; object-fit: cover; display: block; background: var(--bg-3); }
  .ed-body { display: flex; flex-direction: column; gap: 12px; padding: clamp(22px, 3vw, 36px); justify-content: center; }
  .ed-meta { font-family: var(--font-mono); font-size: .68rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); display: flex; gap: 8px; }
  .ed-meta .dot { color: var(--accent); }
  .ed-title { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: clamp(1.5rem, 2.6vw, 2.2rem); line-height: 1.05; }
  .ed-excerpt { color: var(--ink-2); font-size: 1rem; line-height: 1.55; }
  .ed-cta { margin-top: 6px; font-family: var(--font-mono); font-size: .74rem; letter-spacing: .14em; text-transform: uppercase; color: var(--accent); }
  .ed-nav { display: flex; gap: 8px; align-self: center; }
  .ed-btn { width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line); background: var(--bg-2); color: var(--ink); font-size: 1.2rem; line-height: 1; cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
  .ed-btn:hover { border-color: var(--accent); background: var(--bg-3); }
  .ed-btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
  .ed-dots { display: flex; gap: 8px; justify-content: center; margin-top: 16px; }
  .ed-dots i { width: 8px; height: 8px; border-radius: 50%; background: var(--line); display: block; transition: background-color .2s ease, transform .2s ease; }
  .ed-dots i.on { background: var(--accent); transform: scale(1.25); }
  .ed-foot { margin-top: 18px; color: var(--ink-3); font-size: .9rem; }
  .ed-foot a { color: var(--ink); }
  @media (max-width: 820px) {
    .ed-card { grid-template-columns: 1fr; }
    .ed-cover { height: auto; min-height: 0; }
    .ed-nav { display: none; }
  }

/* ---- from combatant.html ---- */
/* BECOME A COMBATANT wordmark: one line (stacked on phones), pulsing like the other text logos */
  .bac-mark { max-width: 1120px; animation: bac-glow 3s ease-in-out infinite; transform-origin: center; will-change: transform, filter; }
  @keyframes bac-glow {
    0%, 100% { transform: scale(.985); filter: brightness(1) drop-shadow(0 0 10px rgba(237, 28, 36, .45)) drop-shadow(0 0 30px rgba(237, 28, 36, .32)); }
    50%      { transform: scale(1.025); filter: brightness(1.14) drop-shadow(0 0 20px rgba(237, 28, 36, .9)) drop-shadow(0 0 64px rgba(237, 28, 36, .6)); }
  }
  .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .bac-hero .lede { max-width: 720px; margin-top: clamp(18px, 3vw, 30px); }
  .bac-hero .btn-row { justify-content: center; }
  .brand-intro .lede { max-width: 820px; }
  #brand, #join { scroll-margin-top: 90px; }
  @media (prefers-reduced-motion: reduce) { .bac-mark { animation: none; filter: drop-shadow(0 0 14px rgba(237, 28, 36, .6)); } }
