/* Shared dark gaming theme across all public pages. */
:root {
  color-scheme: dark;
  --paper: #09090b;
  --white: #121215;
  --ink: #f0f0f2;
  --muted: #9b9ba4;
  --line: #29292f;
  --red: #ef383e;
  --green: #ef383e;
  --radius: 3px;
  background: var(--paper);
}
::selection { background: #a71c29; color: #fff; }
body { background: var(--paper); }
.icon { filter: invert(1); }
.announcement { background: #070708; border-bottom: 1px solid #261316; color: #a8a8b0; }
.announcement-brand { color: #ff555b; }
.announcement-brand .icon { filter: invert(34%) sepia(83%) saturate(2517%) hue-rotate(334deg); }
.site-header { background: #0c0c0f; }
.header-inner { height: 78px; }
.brand > img { border-radius: 3px; border: 1px solid #392125; }
.brand small { color: #777780; }
.header-inner nav a[aria-current=page]:after { width: 100%; height: 2px; bottom: 0; box-shadow: 0 0 9px #ef383e55; }
.cart-toggle, .icon-button:hover { background: #1b1b21; }
.icon-button { border-radius: 3px; }
.button { border-radius: 3px; }
.button.red { background: #d92b34; border-color: #f34d55; box-shadow: 0 4px 18px #b5112020; }
.button.red:hover { background: #ed3640; box-shadow: 0 4px 22px #ed364035; }
.button.dark, .button.light { background: #201216; color: #f7f0f1; border-color: #75303a; }
.button.dark:hover, .button.light:hover { background: #36161c; border-color: var(--red); }
.button.outline { background: #16161b; border-color: #34343d; }
.button.outline:hover { background: #271217; border-color: var(--red); color: #fff; }
.button .icon { filter: invert(1); }
button:focus-visible, a:focus-visible, input:focus-visible, summary:focus-visible { outline-color: #f04b53; }
.skip-link { background: #18181d; color: #fff; }
.eyebrow { color: #ed646a; }
.overline { color: #a1a1ac; }
.hero-period { color: var(--red); }
.hero-content .eyebrow { color: #df686e; }
.hero-content h2 { font-size: 48px; }
.hero-content h1 { font-size: 90px; }
.hero-caption { border-color: #4c242955; }
.home-hero { border-bottom: 1px solid #4f1a22; }
.principles-strip { background: #101013; }
.principles-strip span { color: #bdbdc7; }
.principles-strip .icon, .pack-details .icon { filter: invert(44%) sepia(96%) saturate(2226%) hue-rotate(328deg); }
.pack-card { background: #131317; border-color: #2c2c34; border-radius: 4px; box-shadow: none; }
.pack-card:hover { border-color: #68323b; box-shadow: 0 8px 25px #0003; }
.pack-top .icon { opacity: .55; }
.featured { background: #1c1115; border-color: #97303c; }
.featured:hover { border-color: #ef383e; }
.card-ribbon { background: #ac2330; color: #fff; border-radius: 3px 3px 0 0; }
.featured .pack-details { border-color: #45212a; }
.featured .credit-value strong { color: #ff525a; }
.how-band { background: #101013; border-block: 1px solid #24242b; }
.step { border-color: #2b2b32; }
.step > span { color: #d94b55; }
.community-band { background: #140d10; border-top: 1px solid #61242d; border-bottom: 1px solid #2f1a21; }
.community-inner .eyebrow { color: #f14d56; }
.community-inner h2 { color: #f0f0f2; }
.community-inner p { color: #a09aa0; }
.site-footer { background: #070709; }
.catalog-intro h1 > span { color: #e74851; }
.catalog-intro { padding-bottom: 48px; }
.rate-stamp { transform: none; border-color: #65313b; }
.rate-stamp > div { border-color: #65313b; }
.rate-stamp strong { color: #f3f3f5; }
.catalog-band { background: #0d0d10; }
.catalog-toolbar { border-color: #2b2b32; }
.catalog-tab > span { border-color: #33333c; }
.catalog-tab.active { color: #ff6067; }
.custom-package { border-color: #313139; }
.custom-value input { color: #fff; border-color: #56505a; }
.custom-controls input[type=range] { accent-color: #ed3943; }
.custom-summary { border-color: #313139; }
.about-image { border: 1px solid #3a2329; }
.faq-page aside { border-color: #a8303c; }
.search-field { background: #141419; border-color: #33333b; }
.search-field input { color: #eeeef2; }
.search-field input::placeholder { color: #92929c; }
.contact-primary { background: #151014; border: 1px solid #56262f; border-radius: 4px; }
.legal-copy p, .legal-copy li { color: #b3b3bd; }
.order-summary { background: #141418; border-radius: 4px; }
dialog { background: #101014; border: 1px solid #493039; border-radius: 4px; }
.dialog-heading, .cart-bottom { background: #101014; }
dialog::backdrop { background: #000b; }
#toast { background: #241419; color: #fff; border: 1px solid #89333e; border-radius: 3px; }
@media(max-width:760px) {
  .header-inner { height: 72px; }
  .header-inner nav { background: #0d0d11; }
  .header-inner nav a[aria-current=page]:after { width: 20px; bottom: 5px; }
  .hero-content h1 { font-size: 68px; }
  .hero-content h2 { font-size: 42px; }
  .catalog-intro { padding-bottom: 30px; }
}
@media(max-width:390px) { .hero-content h1 { font-size: 62px; } .hero-content h2 { font-size: 40px; } }
@media(max-width:760px) and (max-height:740px) { .hero-content h1 { font-size: 56px; } .hero-content h2 { font-size: 36px; } }
