@font-face {
  font-family: "FCA Ringside";
  src: url("../fonts/ringside-chalk.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 100 900;
}

:root {
  --fc-black: #050608;
  --fc-black-2: #0b0d10;
  --fc-surface: #101318;
  --fc-line: #2b3038;
  --fc-text: #f4f5f6;
  --fc-muted: #a5abb3;
  --fc-red: #ef233c;
  --fc-cyan: #18c8d8;
  --fc-gold: #f2b91f;
  --fc-green: #71d43b;
  --fc-content: 1320px;
  --fc-gutter: 34px;
  --fc-header: 74px;
  --fc-site-font: "FCA Ringside", "Arial Narrow", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--fc-black); }
body {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
  background: var(--fc-black);
  color: var(--fc-text);
  font-family: var(--fc-site-font);
  font-size: 16px;
  line-height: 1.55;
  letter-spacing: 0;
}
body.menu-open { overflow: hidden; }
button, input, select, textarea { font: inherit; letter-spacing: 0; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.screen-reader-text:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 8px;
  padding: 10px 14px;
  z-index: 10000;
  background: #fff;
  color: #000;
}

.fca-site-background { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; background: var(--fc-black); }
.fca-site-background i { position: absolute; inset: -3%; background: center / cover no-repeat; opacity: 0; transition: opacity 1.2s ease; filter: saturate(.65) contrast(1.12); }
.fca-site-background i.is-active { opacity: var(--fc-background-opacity, .28); }
.fca-site-header, .fca-main, .fca-site-footer { position: relative; z-index: 2; }

.fca-site-header {
  position: sticky;
  top: 0;
  z-index: 500;
  height: var(--fc-header);
  display: grid;
  grid-template-columns: 260px 1fr auto;
  align-items: center;
  gap: 26px;
  padding: 0 max(var(--fc-gutter), calc((100vw - var(--fc-content)) / 2));
  border-bottom: 1px solid var(--fc-line);
  background: rgba(5, 6, 8, .96);
  backdrop-filter: blur(14px);
}
.fca-brand { display: inline-flex; align-items: center; min-width: 0; height: 58px; gap: 9px; font-family: Impact, "Arial Narrow", sans-serif; font-size: 22px; text-transform: uppercase; }
.fca-brand > img, .fca-brand .custom-logo { width: 58px; height: 58px; object-fit: contain; }
.fca-brand > img { filter: drop-shadow(0 0 8px rgba(239, 35, 60, .18)); }
.fca-brand .custom-logo-link { display: flex; }
.fca-brand span { white-space: nowrap; }
.fca-primary-nav { justify-self: center; }
.fca-primary-links { display: flex; align-items: center; gap: 20px; margin: 0; padding: 0; list-style: none; }
.fca-primary-links a { position: relative; display: block; padding: 25px 0 23px; color: #d7dade; font-family: "Arial Narrow", Arial, sans-serif; font-size: 13px; font-weight: 800; text-transform: uppercase; }
.fca-primary-links a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--fc-red); transform: scaleX(0); transition: transform .2s ease; }
.fca-primary-links a:hover, .fca-primary-links a:focus-visible, .fca-primary-links a[aria-current="page"] { color: #fff; }
.fca-primary-links a:hover::after, .fca-primary-links a:focus-visible::after, .fca-primary-links a[aria-current="page"]::after { transform: scaleX(1); }
.fca-play-link { display: inline-flex; min-height: 42px; align-items: center; gap: 10px; padding: 0 16px; border: 1px solid var(--fc-gold); color: var(--fc-gold); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-play-link i { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 13px solid currentColor; }
.fca-play-link:hover, .fca-play-link:focus-visible { background: var(--fc-gold); color: #050608; }
.fca-menu-button { display: none; width: 44px; height: 44px; padding: 10px; border: 0; background: transparent; color: #fff; }
.fca-menu-button span { display: block; height: 2px; margin: 5px 0; background: currentColor; transition: transform .2s ease, opacity .2s ease; }

.fca-main { min-height: calc(100vh - var(--fc-header)); }
.fca-band, .fca-widget-stage { width: 100%; padding: 48px max(var(--fc-gutter), calc((100vw - var(--fc-content)) / 2)); border-top: 1px solid var(--fc-line); background: rgba(5, 6, 8, .87); backdrop-filter: blur(2px); }
.fca-widget-stage { padding-top: 28px; padding-bottom: 56px; }
.fca-section-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.fca-section-head h2 { display: flex; align-items: center; gap: 14px; margin: 0; font-family: Impact, "Arial Narrow", sans-serif; font-size: 34px; font-weight: 500; line-height: 1; text-transform: uppercase; }
.fca-section-head h2 i { width: 8px; height: 28px; border-left: 3px solid var(--fc-red); border-right: 3px solid var(--fc-red); transform: skew(-14deg); }
.fca-section-head > a { color: var(--fc-red); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-section-head > a span { margin-left: 7px; font-size: 20px; vertical-align: -1px; }
.fca-section-head > a:hover, .fca-section-head > a:focus-visible { color: #fff; }

.fca-hero { position: relative; min-height: 680px; overflow: hidden; background: #050608; border-bottom: 1px solid var(--fc-line); }
.fca-hero::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(5, 6, 8, .98) 0%, rgba(5, 6, 8, .92) 35%, rgba(5, 6, 8, .48) 68%, rgba(5, 6, 8, .18) 100%); }
.fca-hero-grid { position: relative; z-index: 2; width: min(var(--fc-content), calc(100% - (var(--fc-gutter) * 2))); min-height: 680px; margin: auto; display: grid; grid-template-columns: minmax(0, 52%) minmax(0, 48%); align-items: stretch; }
.fca-hero-copy { position: relative; z-index: 3; display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 52px 28px 64px 0; }
.fca-announcement-label { display: flex; align-items: center; gap: 9px; margin-bottom: 24px; color: var(--fc-red); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-announcement-label span { width: 9px; height: 9px; border: 2px solid currentColor; border-radius: 50%; }
.fca-announcement-copy { display: grid; position: relative; min-height: 0; max-width: 490px; }
.fca-announcement-slide { position: relative; grid-area: 1 / 1; align-self: start; opacity: 0; visibility: hidden; transform: translateY(14px); transition: opacity .45s ease, transform .45s ease, visibility .45s; }
.fca-announcement-slide.is-active { opacity: 1; visibility: visible; transform: translateY(0); }
.fca-announcement-slide time { display: block; margin-bottom: 9px; color: var(--slide-accent); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-announcement-slide h2 { max-width: 12ch; margin: 0; font-family: Impact, "Arial Narrow", sans-serif; font-size: 52px; font-weight: 500; line-height: .98; text-transform: uppercase; }
.fca-announcement-slide p { max-width: 42ch; margin: 15px 0 18px; color: #c3c7cc; font-size: 15px; }
.fca-announcement-slide > a { display: inline-flex; min-height: 40px; align-items: center; gap: 18px; padding: 0 14px; border: 1px solid var(--slide-accent); color: #fff; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-announcement-slide > a span { color: var(--slide-accent); font-size: 21px; }
.fca-announcement-slide > a:hover, .fca-announcement-slide > a:focus-visible { background: var(--slide-accent); color: #050608; }
.fca-announcement-controls { display: flex; align-items: center; gap: 16px; min-height: 38px; margin: 16px 0 26px; }
.fca-announcement-controls > button { width: 36px; height: 36px; border: 1px solid var(--fc-red); background: transparent; color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
.fca-announcement-controls > div { display: flex; gap: 7px; }
.fca-announcement-controls > div button { width: 26px; height: 3px; padding: 0; border: 0; background: #59606a; cursor: pointer; }
.fca-announcement-controls > div button.is-active { background: var(--fc-red); }
.fca-hero h1 { margin: 0; font-family: Impact, "Arial Narrow", sans-serif; font-size: 86px; font-weight: 500; line-height: .88; text-transform: uppercase; color: var(--fc-red); }
.fca-hero h1 span { color: #f4f5f6; }
.fca-hero-tagline { margin: 14px 0 0; color: #d8dbe0; font-size: 19px; }
.fca-hero-art { position: absolute; inset: 0; z-index: 0; overflow: hidden; background: #050608; }
.fca-hero-art img { position: absolute; inset: 0; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: var(--hero-position, 68% 28%); opacity: 0; transform: scale(1.045); filter: saturate(.88) contrast(1.05); transition: opacity .9s ease, transform 7s ease; }
.fca-hero-art img.is-active { opacity: .82; transform: scale(1); }
.fca-hero-next { position: absolute; z-index: 4; left: 50%; bottom: 15px; width: 34px; height: 30px; transform: translateX(-50%); }
.fca-hero-next span, .fca-hero-next span::after { position: absolute; left: 8px; width: 16px; height: 16px; border-right: 3px solid #fff; border-bottom: 3px solid #fff; transform: rotate(45deg); }
.fca-hero-next span::after { content: ""; left: -8px; top: -8px; }

.fca-news-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.fca-news-item { min-width: 0; }
.fca-news-image { display: block; aspect-ratio: 16 / 10; overflow: hidden; border: 1px solid #383e47; background: var(--fc-surface); }
.fca-news-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.fca-news-item:hover .fca-news-image img { transform: scale(1.035); }
.fca-news-item time { display: block; margin-top: 12px; color: var(--fc-red); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.fca-news-item h3 { margin: 7px 0 0; font-family: "Arial Narrow", Arial, sans-serif; font-size: 18px; line-height: 1.15; text-transform: uppercase; }
.fca-news-item h3 a:hover, .fca-news-item h3 a:focus-visible { color: var(--fc-cyan); }

.fca-release .fca-section-head h2 i, .fca-gallery-stage + .fca-widget-stage .fca-section-head h2 i { border-color: var(--fc-cyan); }
.fca-release-grid { display: grid; grid-template-columns: minmax(340px, 39%) minmax(0, 61%); min-height: 430px; border: 1px solid var(--fc-line); }
.fca-release-track { padding: 12px 30px; background: #090b0e; }
.fca-release .fca-release-track { max-height: 430px; overflow-y: auto; overscroll-behavior: contain; scroll-behavior: smooth; scrollbar-width: none; }
.fca-release .fca-release-track::-webkit-scrollbar { display: none; }
.fca-release-track article { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 18px; min-height: 112px; padding: 22px 0; border-bottom: 1px solid #252b32; }
.fca-release-track article:last-child { border-bottom: 0; }
.fca-release-marker { position: relative; z-index: 1; display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid color-mix(in srgb, var(--milestone-accent, var(--fc-cyan)) 68%, #3d4650); border-radius: 4px; background: color-mix(in srgb, var(--milestone-accent, var(--fc-cyan)) 12%, #0c1014); color: var(--milestone-accent, var(--fc-cyan)); box-shadow: 0 0 18px color-mix(in srgb, var(--milestone-accent, var(--fc-cyan)) 16%, transparent); }
.fca-release-marker .dashicons { width: 22px; height: 22px; font-size: 22px; }
.fca-release-track article:not(:last-child) .fca-release-marker::after { content: ""; position: absolute; top: 44px; left: 21px; width: 1px; height: 69px; background: linear-gradient(var(--milestone-accent, var(--fc-cyan)), #343c45); opacity: .48; }
.fca-release-track article.is-planned .fca-release-marker { border-color: #4b545e; background: #0d1014; color: #77818c; box-shadow: none; }
.fca-release-track article.is-attained .fca-release-marker, .fca-release-track article.is-released .fca-release-marker { border-color: #35c66a; background: #0d1b12; color: #35c66a; box-shadow: 0 0 18px rgba(53,198,106,.16); }
.fca-release-track article.is-now .fca-release-marker { border-color: var(--fc-cyan); color: var(--fc-cyan); }
.fca-release-track article.is-next .fca-release-marker { border-color: #e8bb47; color: #e8bb47; }
.fca-release-copy { min-width: 0; }
.fca-release-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-bottom: 7px; }
.fca-release-meta > span { display: inline-flex; min-height: 22px; align-items: center; padding: 0 8px; border: 1px solid currentColor; border-radius: 3px; color: var(--milestone-accent, var(--fc-cyan)); font-size: 9px; font-weight: 950; text-transform: uppercase; }
.fca-release-track article.is-planned .fca-release-meta > span { color: #7f8994; }
.fca-release-track article.is-attained .fca-release-meta > span, .fca-release-track article.is-released .fca-release-meta > span { color: #35c66a; }
.fca-release-track article.is-next .fca-release-meta > span { color: #e8bb47; }
.fca-release-meta time { color: #8c96a1; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.fca-release-track h2, .fca-release-track h3 { margin: 0 0 7px; color: #fff; font-family: "Arial Narrow", Arial, sans-serif; font-size: 19px; line-height: 1.12; text-transform: uppercase; }
.fca-release-track p { max-width: 58ch; margin: 0; color: var(--fc-muted); font-size: 13px; line-height: 1.5; }
.fca-trailer { position: relative; min-height: 430px; overflow: hidden; background: #0b0d10; }
.fca-trailer.is-placeholder::after { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .28); pointer-events: none; }
.fca-trailer > img { width: 100%; height: 100%; object-fit: cover; object-position: center 68%; }
.fca-trailer-player { position: absolute; inset: 0; background: #000; }
.fca-trailer-player > video, .fca-trailer-player iframe { width: 100%; height: 100%; border: 0; object-fit: contain; }
.fca-trailer-player > div { width: 100% !important; height: 100% !important; }
.fca-video-shell { position: relative; display: grid; place-items: center; overflow: hidden; background: #000; isolation: isolate; }
.fca-video-shell > video { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #000; cursor: pointer; }
.fca-video-center { position: relative; z-index: 3; display: grid; width: 92px; height: 92px; place-items: center; padding: 0; border: 2px solid #fff; border-radius: 50%; background: rgba(3,5,8,.68); color: #fff; box-shadow: 0 0 0 9px rgba(0,0,0,.22), 0 16px 48px rgba(0,0,0,.55); cursor: pointer; transition: transform .18s ease, opacity .18s ease, border-color .18s ease; }
.fca-video-center::before { content: ""; position: absolute; inset: -9px; border: 1px solid rgba(32,201,215,.72); border-radius: 50%; }
.fca-video-center:hover, .fca-video-center:focus-visible { border-color: #e8bb47; outline: 3px solid rgba(232,187,71,.2); transform: scale(1.06); }
.fca-video-center .dashicons { width: 43px; height: 43px; margin-left: 4px; font-size: 43px; }
.fca-video-shell.is-playing .fca-video-center { opacity: 0; pointer-events: none; transform: scale(.84); }
.fca-video-controls { position: absolute; z-index: 4; right: 14px; bottom: 14px; left: 14px; display: grid; grid-template-columns: 42px auto minmax(80px,1fr) 42px 42px; gap: 9px; align-items: center; min-height: 54px; padding: 6px 9px; border: 1px solid rgba(255,255,255,.15); border-radius: 5px; background: rgba(5,7,10,.88); box-shadow: 0 15px 45px rgba(0,0,0,.5); backdrop-filter: blur(10px); opacity: 0; transform: translateY(10px); transition: opacity .18s ease, transform .18s ease; }
.fca-video-shell:hover .fca-video-controls, .fca-video-shell:focus-within .fca-video-controls, .fca-video-shell:not(.is-playing) .fca-video-controls { opacity: 1; transform: translateY(0); }
.fca-video-controls button { display: grid; width: 42px; height: 42px; place-items: center; padding: 0; border: 0; border-radius: 3px; background: transparent; color: #fff; cursor: pointer; }
.fca-video-controls button:hover, .fca-video-controls button:focus-visible { background: #16232b; color: #20c9d7; outline: 2px solid rgba(32,201,215,.28); }
.fca-video-controls .dashicons { width: 22px; height: 22px; font-size: 22px; }
.fca-video-controls time { min-width: 82px; color: #d7dde2; font-family: Arial,sans-serif; font-size: 11px; font-variant-numeric: tabular-nums; }
.fca-video-controls input[type="range"] { width: 100%; height: 4px; margin: 0; padding: 0; border: 0; border-radius: 0; outline: 0; appearance: none; background: linear-gradient(90deg,#20c9d7 var(--fca-video-progress,0%),rgba(255,255,255,.28) var(--fca-video-progress,0%)); cursor: pointer; }
.fca-video-controls input[type="range"]::-webkit-slider-thumb { width: 15px; height: 15px; border: 2px solid #080b0f; border-radius: 50%; appearance: none; background: #e8bb47; box-shadow: 0 0 0 2px rgba(232,187,71,.25); }
.fca-video-controls input[type="range"]::-moz-range-thumb { width: 12px; height: 12px; border: 2px solid #080b0f; border-radius: 50%; background: #e8bb47; box-shadow: 0 0 0 2px rgba(232,187,71,.25); }
.fca-trailer-placeholder { position: absolute; z-index: 2; left: 50%; top: 50%; width: 82px; height: 82px; transform: translate(-50%, -50%); border: 3px solid #737983; border-radius: 50%; background: rgba(0, 0, 0, .52); color: #a1a6ae; opacity: .72; }
.fca-trailer-placeholder i { position: absolute; left: 31px; top: 24px; width: 0; height: 0; border-top: 15px solid transparent; border-bottom: 15px solid transparent; border-left: 23px solid currentColor; }
.fca-trailer > strong { position: absolute; z-index: 2; left: 18px; top: 16px; padding: 7px 9px; background: rgba(3, 5, 8, .78); color: var(--fc-cyan); font-size: 11px; text-transform: uppercase; pointer-events: none; }

.fca-home-support .fca-section-head h2 i { border-color: var(--fc-gold); }
.fca-home-support .fca-support-compact { width: 100%; max-width: none; padding: 0; }
.fca-home-support .fca-support-compact-panel { display: grid; grid-template-columns: 1.25fr 1fr auto; align-items: center; gap: 30px; padding: 28px 0; border: 0; border-top: 1px solid #343943; border-bottom: 1px solid #343943; border-radius: 0; background: transparent; box-shadow: none; }
.fca-home-support .fca-eyebrow { display: none; }
.fca-home-support .fca-section-title { margin: 0 0 5px; font-size: 23px; }
.fca-home-support .fca-section-lead { margin: 0; color: var(--fc-muted); }

.fca-page-hero { position: relative; min-height: 220px; display: flex; align-items: flex-end; padding: 58px max(var(--fc-gutter), calc((100vw - var(--fc-content)) / 2)) 38px; overflow: hidden; border-bottom: 1px solid var(--fc-line); background: rgba(5, 6, 8, .7); backdrop-filter: blur(2px); }
.fca-page-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5, 6, 8, .94), rgba(5, 6, 8, .54) 62%, rgba(5, 6, 8, .38)); }
.fca-page-hero > div { position: relative; z-index: 2; width: min(760px, 100%); }
.fca-page-hero h1 { margin: 0; max-width: 18ch; font-family: Impact, "Arial Narrow", sans-serif; font-size: 64px; font-weight: 500; line-height: .95; text-transform: uppercase; }
.fca-page-hero p { max-width: 620px; margin: 15px 0 0; color: #d2d5da; font-size: 18px; }
.fca-about-hero { min-height: 420px; }
.fca-about-hero > img { position: absolute; z-index: 1; right: max(var(--fc-gutter), calc((100vw - var(--fc-content)) / 2)); bottom: 0; width: 350px; height: 96%; object-fit: contain; object-position: bottom; }
.fca-about-story { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; padding-top: 0; padding-bottom: 0; }
.fca-about-story > div { padding: 48px 42px 52px 0; }
.fca-about-story > div + div { padding-left: 42px; border-left: 1px solid var(--fc-line); }
.fca-about-story .fca-about-editor { grid-column: 1 / -1; padding-left: 0; border-top: 1px solid var(--fc-line); border-left: 0; }
.fca-about-story h2, .fca-sponsor-strip h2, .fca-character-request h2 { margin: 0 0 12px; font-family: Impact, "Arial Narrow", sans-serif; font-size: 32px; font-weight: 500; text-transform: uppercase; }
.fca-about-story p, .fca-sponsor-strip p, .fca-character-request p { margin: 0; color: #c2c6cd; }
.fca-about-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; align-items: start; }
.fca-about-gallery img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; object-position: top; border: 1px solid var(--fc-line); }

.fca-support-hub { padding-top: 0; padding-bottom: 0; }
.fca-support-hub > a { display: grid; grid-template-columns: 54px 230px minmax(0, 1fr) 24px; align-items: center; gap: 18px; min-height: 86px; border-bottom: 1px solid var(--fc-line); }
.fca-support-hub > a:first-child { border-top: 1px solid var(--fc-line); }
.fca-support-hub > a:hover strong, .fca-support-hub > a:focus-visible strong { color: var(--fc-red); }
.fca-support-hub i { position: relative; width: 34px; height: 34px; color: var(--fc-cyan); }
.fca-support-hub i::before { content: ""; position: absolute; inset: 5px; border: 2px solid currentColor; }
.fca-support-hub i.is-account { color: var(--fc-red); }
.fca-support-hub i.is-account::before { border-radius: 50% 50% 42% 42%; }
.fca-support-hub i.is-document { color: var(--fc-gold); }
.fca-support-hub i.is-mail { color: var(--fc-green); }
.fca-support-hub strong { font-family: "Arial Narrow", Arial, sans-serif; font-size: 18px; text-transform: uppercase; }
.fca-support-hub span { color: var(--fc-muted); }
.fca-support-hub b { font-size: 28px; font-weight: 400; }
.fca-support-contact .fca-panel, .fca-widget-stage .fca-panel { border-radius: 0; }

.fca-sponsor-strip, .fca-character-request { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 40px; }
.fca-sponsor-strip a, .fca-character-request a { display: inline-flex; min-height: 46px; align-items: center; gap: 16px; padding: 0 18px; border: 1px solid var(--fc-gold); color: var(--fc-gold); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-character-request a { border-color: var(--fc-cyan); color: var(--fc-cyan); }

.fca-gallery-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-bottom: 24px; }
.fca-gallery-tabs { display: flex; gap: 8px; min-width: 0; }
.fca-gallery-tabs button { min-height: 40px; padding: 0 18px; border: 1px solid #4a505b; background: #090b0e; color: #d8dbe0; font-size: 12px; font-weight: 900; text-transform: uppercase; cursor: pointer; }
.fca-gallery-tabs button:hover, .fca-gallery-tabs button:focus-visible, .fca-gallery-tabs button.is-active { border-color: var(--fc-red); color: #fff; }
.fca-gallery-sort { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; color: var(--fc-muted); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.fca-gallery-sort select { min-width: 142px; height: 40px; padding: 0 34px 0 12px; border: 1px solid #4a505b; border-radius: 0; background: #090b0e; color: #fff; cursor: pointer; }
.fca-gallery-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.fca-gallery-grid article { position: relative; min-width: 0; aspect-ratio: 3 / 4; overflow: hidden; border: 1px solid #3b414b; background: var(--fc-surface); }
.fca-gallery-grid article[hidden] { display: none; }
.fca-gallery-open { all: unset; display: block; width: 100%; height: 100%; cursor: zoom-in; overflow: hidden; }
.fca-gallery-open:focus-visible { outline: 3px solid var(--fc-cyan); outline-offset: -3px; }
.fca-gallery-grid img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .35s ease; }
.fca-gallery-grid article:hover img, .fca-gallery-open:focus-visible img { transform: scale(1.025); }
.fca-gallery-grid article > div { position: absolute; left: 0; right: 0; bottom: 0; padding: 44px 14px 14px; pointer-events: none; background: linear-gradient(transparent, rgba(0, 0, 0, .94)); }
.fca-gallery-grid h2 { margin: 0; font-family: "Arial Narrow", Arial, sans-serif; font-size: 17px; text-transform: uppercase; }
.fca-gallery-grid p { margin: 5px 0 0; color: #c9cdd3; font-size: 12px; line-height: 1.35; }
.fca-gallery-grid article > div > span { display: block; margin-top: 8px; color: var(--fc-cyan); font-size: 10px; font-weight: 900; text-transform: uppercase; }
body.fca-gallery-open { overflow: hidden; }
.fca-gallery-lightbox { inset: 0; width: 100vw; max-width: none; height: 100dvh; max-height: 100dvh; margin: 0; padding: 0; overflow: hidden; border: 0; background: rgba(3, 4, 6, .97); color: #fff; }
.fca-gallery-lightbox[open] { display: grid; place-items: center; }
.fca-gallery-lightbox::backdrop { background: rgba(0, 0, 0, .94); backdrop-filter: blur(8px); }
.fca-gallery-lightbox-shell { display: grid; width: min(1500px, 100%); height: 100%; min-height: 0; overflow: hidden; grid-template-rows: auto minmax(0, 1fr) auto; }
.fca-gallery-lightbox header { display: flex; min-height: 72px; align-items: center; justify-content: space-between; gap: 20px; padding: 10px max(20px, var(--fc-gutter)); border-bottom: 1px solid #303640; }
.fca-gallery-lightbox header > div { min-width: 0; }
.fca-gallery-lightbox header span { display: block; color: var(--fc-cyan); font-size: 10px; font-weight: 900; }
.fca-gallery-lightbox h2 { overflow: hidden; margin: 2px 0 0; font-family: "Arial Narrow", Arial, sans-serif; font-size: 22px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.fca-gallery-lightbox header button, .fca-gallery-lightbox-media button { display: grid; flex: 0 0 auto; width: 46px; height: 46px; padding: 0; place-items: center; border: 1px solid #555d69; border-radius: 0; background: #11151a; color: #fff; font-size: 30px; line-height: 1; cursor: pointer; }
.fca-gallery-lightbox header button:hover, .fca-gallery-lightbox header button:focus-visible, .fca-gallery-lightbox-media button:hover, .fca-gallery-lightbox-media button:focus-visible { border-color: var(--fc-cyan); color: var(--fc-cyan); }
.fca-gallery-lightbox-media { display: grid; min-height: 0; overflow: hidden; grid-template-columns: 58px minmax(0, 1fr) 58px; align-items: center; gap: 18px; padding: 18px max(20px, var(--fc-gutter)); }
.fca-gallery-lightbox-media img { width: 100%; height: 100%; min-height: 0; max-height: calc(100dvh - 184px); object-fit: contain; }
.fca-gallery-lightbox footer { display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 24px; padding: 12px max(20px, var(--fc-gutter)); border-top: 1px solid #303640; }
.fca-gallery-lightbox footer p { max-width: 900px; margin: 0; color: #c8cdd4; font-size: 13px; }
.fca-gallery-lightbox footer a { flex: 0 0 auto; color: var(--fc-cyan); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.fca-widget-stage > .fca-section-head { width: min(var(--fc-content), calc(100% - (var(--fc-gutter) * 2))); margin: 20px auto; }

.fca-entry, .fca-single-content { color: #c7cbd1; }
.fca-release-page { display: grid; grid-template-columns: minmax(300px, 38%) minmax(0, 62%); gap: 0; align-items: stretch; }
.fca-release-page .fca-release-track { border: 1px solid var(--fc-line); border-right: 0; }
.fca-release-page .fca-release-track article { min-height: 124px; }
.fca-release-page > .fca-trailer { min-height: 520px; border: 1px solid var(--fc-line); }
.fca-content-empty { grid-column: 1 / -1; min-height: 190px; padding: 38px; border: 1px solid #363c46; border-left: 3px solid var(--fc-cyan); background: #090b0e; }
.fca-content-empty > span { color: var(--fc-cyan); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.fca-content-empty h2, .fca-content-empty h3 { margin: 9px 0 5px; font-family: "Arial Narrow", Arial, sans-serif; font-size: 22px; text-transform: uppercase; }
.fca-content-empty p { margin: 0; color: var(--fc-muted); }
.fca-entry > *, .fca-single-content > * { width: min(850px, 100%); margin-left: auto; margin-right: auto; }
.fca-entry h2, .fca-entry h3, .fca-single h2, .fca-single h3 { color: #fff; font-family: "Arial Narrow", Arial, sans-serif; text-transform: uppercase; }
.fca-entry a, .fca-single-content a { color: var(--fc-cyan); text-decoration: underline; text-underline-offset: 3px; }
.fca-post-list { display: grid; gap: 0; }
.fca-post-row { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 28px; padding: 28px 0; border-bottom: 1px solid var(--fc-line); }
.fca-post-row img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.fca-post-row time, .fca-single time { color: var(--fc-red); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.fca-post-row h2 { margin: 5px 0 8px; font-family: "Arial Narrow", Arial, sans-serif; text-transform: uppercase; }
.fca-post-row p { margin: 0; color: var(--fc-muted); }
.fca-single header { position: relative; min-height: 430px; display: flex; align-items: flex-end; overflow: hidden; background: #090b0e; }
.fca-single header::after { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .52); }
.fca-single header img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.fca-single header > div { position: relative; z-index: 2; width: min(var(--fc-content), calc(100% - (var(--fc-gutter) * 2))); margin: 0 auto; padding-bottom: 48px; }
.fca-single h1 { max-width: 16ch; margin: 8px 0 0; font-family: Impact, "Arial Narrow", sans-serif; font-size: 58px; font-weight: 500; line-height: 1; text-transform: uppercase; }
.fca-single-back { display: inline-flex; margin-bottom: 14px; color: var(--fc-cyan); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.fca-news-single header > div > p { max-width: 680px; margin: 14px 0 0; color: #d0d4da; font-size: 18px; line-height: 1.45; }
.fca-single-content { padding: 48px var(--fc-gutter) 70px; background: rgba(5, 6, 8, .96); }

.fca-site-footer { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 30px; padding: 34px max(var(--fc-gutter), calc((100vw - var(--fc-content)) / 2)); border-top: 1px solid var(--fc-line); background: #050608; color: var(--fc-muted); font-size: 12px; }
.fca-footer-brand { display: flex; align-items: center; gap: 10px; }
.fca-footer-brand img { width: 46px; height: 46px; object-fit: contain; }
.fca-footer-brand div { display: grid; }
.fca-footer-brand strong { color: #fff; font-family: "Arial Narrow", Arial, sans-serif; font-size: 17px; text-transform: uppercase; }
.fca-site-footer nav, .fca-footer-social { display: flex; gap: 18px; }
.fca-site-footer nav a:hover, .fca-footer-social a:hover { color: var(--fc-cyan); }
.fca-site-footer > p { grid-column: 1 / -1; margin: 0; padding-top: 18px; border-top: 1px solid #242932; }

/* Plugin integration */
.fca-widget-stage .fca-container, .fca-support-contact .fca-container { width: min(var(--fc-content), calc(100% - (var(--fc-gutter) * 2))); max-width: none; margin: 0 auto; padding-left: 0; padding-right: 0; }
.fca-widget-stage .fca-section, .fca-support-contact .fca-section { color: var(--fc-text); }
.fca-widget-stage .fca-support-dev-head { margin-bottom: 30px; }
.fca-widget-stage .fca-support-dev-head .fca-eyebrow { display: none; }
.fca-widget-stage .fca-support-dev-head h1 { font-family: Impact, "Arial Narrow", sans-serif; font-size: 44px; font-weight: 500; text-transform: uppercase; }
.fca-support-us-hero + .fca-widget-stage .fca-support-dev-head,
.fca-page-hero + .fca-widget-stage > .fca-legal-page > .fca-panel > .fca-eyebrow,
.fca-page-hero + .fca-widget-stage > .fca-legal-page > .fca-panel > h1,
.fca-support-contact .fca-legal-page > .fca-panel > .fca-eyebrow,
.fca-support-contact .fca-legal-page > .fca-panel > h1 { display: none; }
.fca-widget-stage .fca-panel, .fca-support-contact .fca-panel { background: rgba(11, 13, 16, .97); border-color: var(--fc-line); box-shadow: none; }
.fca-widget-stage .fca-btn, .fca-support-contact .fca-btn { border-radius: 0; }
.fca-widget-stage .fca-support-dev-grid { align-items: start; }
.fca-widget-stage .fca-support-payment-panel { position: relative; z-index: 3; }
.fca-widget-stage .fca-support-dev-form button[type="submit"] { position: relative; z-index: 4; width: 100%; min-height: 52px; pointer-events: auto; cursor: pointer; background: var(--fc-red); border-color: var(--fc-red); color: #fff; }
.fca-widget-stage .fca-support-dev-form button[type="submit"]:hover, .fca-widget-stage .fca-support-dev-form button[type="submit"]:focus-visible { background: #fff; border-color: #fff; color: #090b0e; }
.fca-widget-stage .fca-amount-picks button { border-radius: 0; }
.fca-widget-stage .fca-donor-bubbles { isolation: isolate; overflow: hidden; }
.fca-widget-stage .fca-donor-bubble { pointer-events: none; }
.fca-widget-stage .fca-donor-bubble .fca-avatar,
.fca-widget-stage .fca-avatar-option i {
  overflow: hidden;
  border-radius: 50%;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: cover !important;
  clip-path: circle(49% at 50% 50%);
}
.fca-widget-stage input, .fca-widget-stage select, .fca-widget-stage textarea, .fca-support-contact input, .fca-support-contact select, .fca-support-contact textarea { border-radius: 0; }

.fca-brand,
.fca-primary-links a,
.fca-section-head h2,
.fca-announcement-slide h2,
.fca-hero h1,
.fca-news-item h3,
.fca-release-track h3,
.fca-page-hero h1,
.fca-about-story h2,
.fca-sponsor-strip h2,
.fca-character-request h2,
.fca-support-hub strong,
.fca-gallery-grid h2,
.fca-entry h2,
.fca-entry h3,
.fca-single h1,
.fca-single h2,
.fca-single h3,
.fca-post-row h2,
.fca-footer-brand strong,
.fca-widget-stage .fca-support-dev-head h1 { font-family: var(--fc-site-font); }

.fca-footer-brand img { filter: drop-shadow(0 0 8px rgba(239, 35, 60, .16)); }

.fca-kicker { margin: 0 0 10px !important; color: var(--fc-red) !important; font-size: 12px !important; font-weight: 900; text-transform: uppercase; }
.fca-sponsor-explainer { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr); gap: 54px; align-items: center; }
.fca-sponsor-video { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid #3e4550; background: #07080a; }
.fca-sponsor-video::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.2)); }
.fca-sponsor-video img { width: 100%; height: 100%; object-fit: cover; }
.fca-sponsor-video > div { position: absolute; z-index: 2; left: 28px; right: 28px; bottom: 30px; display: grid; gap: 4px; }
.fca-sponsor-video span, .fca-sponsor-video small { color: #d4d7dc; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.fca-sponsor-video strong { max-width: 18ch; font-size: 27px; line-height: 1.05; text-transform: uppercase; }
.fca-sponsor-video > i { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--fc-gold) 0 64%, rgba(255,255,255,.18) 64%); }
.fca-sponsor-copy h2 { margin: 0 0 26px; font-family: var(--fc-site-font); font-size: 42px; line-height: .98; text-transform: uppercase; }
.fca-sponsor-copy ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--fc-line); }
.fca-sponsor-copy li { display: grid; grid-template-columns: 42px 1fr; gap: 16px; padding: 17px 0; border-bottom: 1px solid var(--fc-line); }
.fca-sponsor-copy li b { color: var(--fc-gold); font-size: 13px; }
.fca-sponsor-copy li span { color: var(--fc-muted); font-size: 14px; }
.fca-sponsor-copy li strong { display: block; margin-bottom: 3px; color: #fff; font-size: 15px; text-transform: uppercase; }
.fca-sponsor-benefits > div:last-of-type { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--fc-line); }
.fca-sponsor-benefits article { min-width: 0; padding: 26px; }
.fca-sponsor-benefits article + article { border-left: 1px solid var(--fc-line); }
.fca-sponsor-benefits article strong { font-size: 17px; text-transform: uppercase; }
.fca-sponsor-benefits article p { margin: 10px 0 0; color: var(--fc-muted); font-size: 14px; }
.fca-sponsor-cta { display: inline-flex; align-items: center; gap: 18px; min-height: 48px; margin-top: 28px; padding: 0 20px; border: 1px solid var(--fc-gold); color: var(--fc-gold); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-rank-nav { position: sticky; z-index: 15; top: var(--fc-header); display: flex; justify-content: center; border-bottom: 1px solid var(--fc-line); background: rgba(5, 6, 8, .96); }
.fca-rank-nav a { min-height: 48px; display: inline-flex; align-items: center; padding: 0 26px; border-right: 1px solid var(--fc-line); color: #d6d9dd; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.fca-rank-nav a:first-child { border-left: 1px solid var(--fc-line); }
.fca-rank-nav a:hover, .fca-rank-nav a:focus-visible { color: var(--fc-cyan); }

@media (max-width: 900px) {
  .fca-sponsor-explainer { grid-template-columns: 1fr; gap: 34px; }
  .fca-sponsor-benefits > div:last-of-type { grid-template-columns: 1fr 1fr; }
  .fca-sponsor-benefits article:nth-child(3) { border-left: 0; border-top: 1px solid var(--fc-line); }
  .fca-sponsor-benefits article:nth-child(4) { border-top: 1px solid var(--fc-line); }
  .fca-rank-nav { top: 68px; overflow-x: auto; justify-content: flex-start; }
  .fca-rank-nav a { flex: 0 0 auto; }
}

@media (max-width: 520px) {
  .fca-sponsor-benefits > div:last-of-type { grid-template-columns: 1fr; }
  .fca-sponsor-benefits article + article { border-left: 0; border-top: 1px solid var(--fc-line); }
  .fca-sponsor-video > div { left: 18px; right: 18px; bottom: 20px; }
  .fca-sponsor-video strong { font-size: 20px; }
}

@media (max-width: 1120px) {
  :root { --fc-gutter: 24px; }
  .fca-site-header { grid-template-columns: 210px 1fr auto; gap: 16px; }
  .fca-primary-links { gap: 18px; }
  .fca-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 34px; }
  .fca-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fca-about-hero > img { right: 20px; }
}

@media (max-width: 900px) {
  :root { --fc-header: 66px; }
  .fca-site-header { grid-template-columns: 1fr auto auto; }
  .fca-brand { height: 52px; font-size: 19px; }
  .fca-brand > img, .fca-brand .custom-logo { width: 50px; height: 50px; }
  .fca-menu-button { display: block; grid-column: 2; }
  .fca-primary-nav { position: fixed; inset: var(--fc-header) 0 auto 0; max-height: calc(100vh - var(--fc-header)); overflow-y: auto; padding: 14px var(--fc-gutter) 24px; border-bottom: 1px solid var(--fc-line); background: #050608; opacity: 0; visibility: hidden; transform: translateY(-12px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
  .fca-primary-nav.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
  .fca-primary-links { display: grid; gap: 0; }
  .fca-primary-links a { padding: 15px 0; border-bottom: 1px solid #232832; font-size: 15px; }
  .fca-menu-button[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .fca-menu-button[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .fca-menu-button[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .fca-play-link { grid-column: 3; }
  .fca-hero, .fca-hero-grid { min-height: 620px; }
  .fca-hero-grid { grid-template-columns: minmax(0, 66%) minmax(0, 34%); }
  .fca-hero::before { background: linear-gradient(90deg, rgba(5, 6, 8, .98), rgba(5, 6, 8, .86) 52%, rgba(5, 6, 8, .3)); }
  .fca-hero h1 { font-size: 68px; }
  .fca-announcement-slide h2 { font-size: 43px; }
  .fca-hero-art img { width: 100%; object-position: var(--hero-position, 64% 28%); }
  .fca-release-grid { grid-template-columns: 1fr; }
  .fca-trailer { min-height: 390px; }
  .fca-home-support .fca-support-compact-panel { grid-template-columns: 1fr 1fr; }
  .fca-home-support .fca-support-compact-panel > a { grid-column: 1 / -1; justify-self: start; }
  .fca-support-hub > a { grid-template-columns: 44px 190px minmax(0, 1fr) 20px; gap: 12px; }
  .fca-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fca-release-page { grid-template-columns: 1fr; }
  .fca-release-page .fca-release-track { border-right: 1px solid var(--fc-line); border-bottom: 0; }
  .fca-site-footer { grid-template-columns: 1fr auto; }
  .fca-footer-social { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  :root { --fc-gutter: 16px; }
  body { font-size: 15px; }
  .fca-site-header { gap: 7px; padding: 0 12px; }
  .fca-brand span { display: none; }
  .fca-play-link { min-height: 38px; padding: 0 10px; }
  .fca-play-link span { font-size: 10px; }
  .fca-play-link i { border-top-width: 6px; border-bottom-width: 6px; border-left-width: 10px; }
  .fca-band, .fca-widget-stage { padding-top: 36px; padding-bottom: 40px; }
  .fca-section-head { align-items: flex-end; gap: 12px; }
  .fca-section-head h2 { font-size: 26px; }
  .fca-section-head h2 i { height: 23px; }
  .fca-section-head > a { font-size: 10px; }
  .fca-hero { min-height: 710px; background-position: 62% center; }
  .fca-hero::before { inset: 0; background: linear-gradient(180deg, rgba(5, 6, 8, .82), rgba(5, 6, 8, .68) 56%, rgba(5, 6, 8, .3)); }
  .fca-hero-grid { width: calc(100% - 32px); min-height: 710px; grid-template-columns: 1fr; }
  .fca-hero-copy { justify-content: flex-start; padding: 38px 0 210px; }
  .fca-announcement-label { margin-bottom: 18px; }
  .fca-announcement-copy { min-height: 0; max-width: 100%; }
  .fca-announcement-slide h2 { max-width: 9ch; font-size: 40px; }
  .fca-announcement-slide p { max-width: 33ch; margin: 12px 0 14px; font-size: 14px; }
  .fca-announcement-controls { margin-top: 10px; margin-bottom: 18px; }
  .fca-hero h1 { position: relative; z-index: 3; font-size: 55px; }
  .fca-hero-tagline { position: relative; z-index: 3; margin-top: 9px; font-size: 16px; }
  .fca-hero-art { position: absolute; inset: 0; height: auto; }
  .fca-hero-art img { inset: 0; width: 100%; height: 100%; object-position: var(--hero-mobile-position, 58% 30%); opacity: 0; }
  .fca-hero-art img.is-active { opacity: .64; }
  .fca-hero-next { display: none; }
  .fca-news-grid { grid-template-columns: 1fr; }
  .fca-news-item { display: grid; grid-template-columns: 116px minmax(0, 1fr); column-gap: 14px; align-items: start; }
  .fca-news-image { grid-row: 1 / span 2; aspect-ratio: 4 / 3; }
  .fca-news-item time { margin-top: 3px; }
  .fca-news-item h3 { font-size: 16px; }
  .fca-release-track { padding: 24px 16px; }
  .fca-trailer { min-height: 330px; }
  .fca-video-center { width: 72px; height: 72px; }
  .fca-video-center .dashicons { width: 34px; height: 34px; font-size: 34px; }
  .fca-video-controls { right: 8px; bottom: 8px; left: 8px; grid-template-columns: 38px minmax(70px,1fr) 38px 38px; gap: 5px; min-height: 48px; padding: 5px 6px; }
  .fca-video-controls button { width: 38px; height: 38px; }
  .fca-video-controls time { display: none; }
  .fca-home-support .fca-support-compact-panel { grid-template-columns: 1fr; gap: 20px; }
  .fca-home-support .fca-support-compact-panel > a { grid-column: auto; width: 100%; justify-content: center; }
  .fca-page-hero { min-height: 190px; padding-top: 44px; padding-bottom: 30px; }
  .fca-page-hero h1 { font-size: 45px; }
  .fca-page-hero p { font-size: 16px; }
  .fca-about-hero { min-height: 390px; }
  .fca-about-hero > img { right: -74px; width: 280px; opacity: .55; }
  .fca-about-story { grid-template-columns: 1fr; }
  .fca-about-story > div, .fca-about-story > div + div { padding: 34px 0; border-left: 0; border-top: 1px solid var(--fc-line); }
  .fca-about-gallery { grid-template-columns: 1fr 1fr; gap: 10px; }
  .fca-about-gallery img:last-child { grid-column: 1 / -1; aspect-ratio: 16 / 10; }
  .fca-support-hub > a { grid-template-columns: 38px minmax(0, 1fr) 18px; min-height: 96px; padding: 12px 0; }
  .fca-support-hub > a strong { font-size: 16px; }
  .fca-support-hub > a span { grid-column: 2; font-size: 13px; }
  .fca-support-hub > a b { grid-column: 3; grid-row: 1 / span 2; }
  .fca-sponsor-strip, .fca-character-request { grid-template-columns: 1fr; gap: 22px; }
  .fca-sponsor-strip a, .fca-character-request a { justify-content: center; }
  .fca-gallery-toolbar { align-items: stretch; flex-direction: column; gap: 12px; }
  .fca-gallery-tabs { justify-content: flex-start; overflow-x: auto; padding-bottom: 6px; }
  .fca-gallery-tabs button { flex: 0 0 auto; padding: 0 13px; }
  .fca-gallery-sort { justify-content: space-between; }
  .fca-gallery-sort select { flex: 1 1 auto; }
  .fca-gallery-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .fca-gallery-grid h2 { font-size: 14px; }
  .fca-gallery-grid p { display: none; }
  .fca-gallery-lightbox header { min-height: 62px; padding: 8px 14px; }
  .fca-gallery-lightbox h2 { font-size: 17px; }
  .fca-gallery-lightbox header button, .fca-gallery-lightbox-media button { width: 40px; height: 40px; }
  .fca-gallery-lightbox-media { position: relative; display: flex; justify-content: center; padding: 10px; }
  .fca-gallery-lightbox-media img { width: 100%; height: 100%; }
  .fca-gallery-lightbox-media button { position: absolute; z-index: 2; top: 50%; transform: translateY(-50%); background: rgba(10, 13, 17, .88); }
  .fca-gallery-lightbox-media button:first-child { left: 10px; }
  .fca-gallery-lightbox-media button:last-child { right: 10px; }
  .fca-gallery-lightbox footer { min-height: 64px; padding: 10px 14px; }
  .fca-gallery-lightbox footer p { font-size: 11px; }
  .fca-post-row { grid-template-columns: 1fr; gap: 16px; }
  .fca-single header { min-height: 360px; }
  .fca-single h1 { font-size: 43px; }
  .fca-release-page > .fca-trailer { min-height: 360px; }
  .fca-site-footer { grid-template-columns: 1fr; align-items: start; gap: 20px; }
  .fca-site-footer nav, .fca-footer-social { grid-column: 1; flex-wrap: wrap; }
  .fca-widget-stage .fca-container, .fca-support-contact .fca-container { width: 100%; }
  .fca-widget-stage .fca-support-dev-head h1 { font-size: 36px; }
  .fca-widget-stage .fca-form-grid { grid-template-columns: 1fr; }
  .fca-widget-stage .fca-amount-picks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fca-widget-stage .fca-avatar-options { grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: 330px; }
  .fca-widget-stage .fca-donor-bubbles { min-height: 440px; }
}

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