/* FightCampFinder Colosseum 2.0 — intentionally isolated to Colosseum surfaces. */
:root {
	--fcf-ink: #08090b;
	--fcf-ink-2: #0d0e11;
	--fcf-stone: #171512;
	--fcf-stone-2: #241c16;
	--fcf-wine: #8e2031;
	--fcf-wine-hi: #ba3549;
	--fcf-bronze: #b67a34;
	--fcf-gold: #e2b861;
	--fcf-gold-soft: #f0d79a;
	--fcf-paper: #f5f0e5;
	--fcf-muted: #b9ad9c;
	--fcf-line: rgba(226, 184, 97, .28);
	--fcf-line-strong: rgba(226, 184, 97, .56);
	--fcf-shadow: 0 24px 70px rgba(0, 0, 0, .46);
	--fcf-display: "Arial Narrow", "Roboto Condensed", Impact, sans-serif;
	--fcf-body: Inter, Montserrat, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html:has(body.fcf-colosseum-page) { background: var(--fcf-ink); }
body.fcf-colosseum-page {
	margin: 0 !important;
	background: var(--fcf-ink) !important;
	color: var(--fcf-paper);
	overflow-x: clip;
}

body.fcf-colosseum-page #page,
body.fcf-colosseum-page .site,
body.fcf-colosseum-page #content,
body.fcf-colosseum-page .site-content,
body.fcf-colosseum-page .ast-container,
body.fcf-colosseum-page .content-area,
body.fcf-colosseum-page .site-main,
body.fcf-colosseum-page .entry-content,
body.fcf-colosseum-page .ast-article-single,
body.fcf-colosseum-page article.page,
body.fcf-colosseum-page article.fcf_fighter {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: var(--fcf-ink) !important;
	box-shadow: none !important;
}

body.fcf-colosseum-page .site-header,
body.fcf-colosseum-page #masthead,
body.fcf-colosseum-page #ast-desktop-header,
body.fcf-colosseum-page #ast-mobile-header,
body.fcf-colosseum-page .site-footer,
body.fcf-colosseum-page #colophon,
body.fcf-colosseum-page .ast-footer-overlay,
body.fcf-colosseum-page .site-primary-footer-wrap,
body.fcf-colosseum-page .site-below-footer-wrap,
body.fcf-colosseum-page .entry-header,
body.fcf-colosseum-page .post-navigation,
body.fcf-colosseum-page .comments-area,
body.fcf-colosseum-page .widget-area,
body.fcf-colosseum-page #secondary,
body.fcf-colosseum-page #chaty-widget-0,
body.fcf-colosseum-page .chaty-widget,
body.fcf-colosseum-page .chaty,
body.fcf-colosseum-page .joinchat,
body.fcf-colosseum-page #tidio-chat,
body.fcf-colosseum-page .tidio-chat,
body.fcf-colosseum-page .crisp-client,
body.fcf-colosseum-page .tawk-min-container,
body.fcf-colosseum-page .tawk-button-circle,
body.fcf-colosseum-page [id*="chat-widget"],
body.fcf-colosseum-page [class*="chat-widget"],
body.fcf-colosseum-page iframe[style*="position:fixed"][style*="z-index:100000"] {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.fcf-colosseum,
.fcf-colosseum * { box-sizing: border-box; }
.fcf-colosseum {
	position: relative;
	isolation: isolate;
	width: 100%;
	min-height: 100vh;
	margin: 0 !important;
	background:
		radial-gradient(circle at 14% 24%, rgba(142, 32, 49, .11), transparent 34rem),
		radial-gradient(circle at 86% 65%, rgba(182, 122, 52, .08), transparent 29rem),
		var(--fcf-ink);
	color: var(--fcf-paper);
	font-family: var(--fcf-body);
	font-size: 16px;
	line-height: 1.55;
}
.fcf-colosseum::before {
	content: "";
	position: fixed;
	z-index: -1;
	inset: 0;
	pointer-events: none;
	opacity: .24;
	background-image:
		repeating-linear-gradient(0deg, transparent 0 6px, rgba(255,255,255,.012) 7px),
		repeating-linear-gradient(90deg, transparent 0 11px, rgba(255,255,255,.009) 12px);
}
.fcf-colosseum a { color: inherit; text-decoration: none; }
.fcf-colosseum button,
.fcf-colosseum input,
.fcf-colosseum select,
.fcf-colosseum textarea { font: inherit; }
.fcf-colosseum img { display: block; max-width: 100%; }
.fcf-colosseum h1,
.fcf-colosseum h2,
.fcf-colosseum h3,
.fcf-colosseum p { color: inherit; }
.fcf-colosseum [hidden] { display: none !important; }
.fcf-shell { width: min(100% - 42px, 1400px); margin-inline: auto; }
.fcf-kicker {
	display: block;
	color: var(--fcf-gold);
	font-size: .71rem;
	font-weight: 900;
	letter-spacing: .18em;
	line-height: 1.2;
	text-transform: uppercase;
}

/* Scoped arena navigation */
.fcf-arena-nav {
	position: sticky;
	z-index: 500;
	top: 0;
	width: 100%;
	border-bottom: 1px solid rgba(226, 184, 97, .23);
	background: rgba(8, 9, 11, .9);
	backdrop-filter: blur(16px) saturate(120%);
	box-shadow: 0 10px 35px rgba(0,0,0,.22);
}
.admin-bar .fcf-arena-nav { top: 32px; }
.fcf-arena-nav-inner {
	min-height: 70px;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 20px;
}
.fcf-back-brand {
	justify-self: start;
	color: #d3cabd !important;
	font-size: .83rem;
	font-weight: 800;
	letter-spacing: .02em;
}
.fcf-back-brand span { color: var(--fcf-gold); margin-right: 6px; }
.fcf-colosseum-brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #fff !important;
	font-family: var(--fcf-display);
	font-size: 1.16rem;
	font-weight: 900;
	letter-spacing: .08em;
	line-height: .94;
}
.fcf-colosseum-brand small {
	display: block;
	margin-bottom: 4px;
	color: var(--fcf-gold);
	font-family: var(--fcf-body);
	font-size: .48rem;
	letter-spacing: .2em;
}
.fcf-shield-mark {
	width: 34px;
	height: 40px;
	display: grid;
	place-items: center;
	clip-path: polygon(50% 0, 95% 18%, 86% 74%, 50% 100%, 14% 74%, 5% 18%);
	background: linear-gradient(145deg, var(--fcf-gold), #6c3e18 65%);
	color: #110e0a;
	font-size: .55rem;
	font-weight: 1000;
	letter-spacing: -.02em;
}
.fcf-arena-links { justify-self: end; display: flex; align-items: center; gap: 23px; }
.fcf-arena-links a {
	color: #d9d0c4 !important;
	font-size: .78rem;
	font-weight: 900;
	letter-spacing: .11em;
	text-transform: uppercase;
}
.fcf-arena-links .fcf-nav-enter {
	padding: 9px 14px;
	border: 1px solid var(--fcf-line-strong);
	border-radius: 5px;
	background: rgba(142,32,49,.32);
	color: #fff !important;
}

/* Hero / gateway */
.fcf-arena-hero {
	position: relative;
	min-height: min(780px, calc(100svh - 70px));
	display: flex;
	align-items: center;
	overflow: hidden;
	border-bottom: 1px solid rgba(226,184,97,.24);
	background:
		linear-gradient(90deg, rgba(6,7,9,.97) 0%, rgba(6,7,9,.8) 42%, rgba(6,7,9,.18) 78%),
		linear-gradient(0deg, rgba(8,9,11,.92) 0%, transparent 38%),
		var(--fcf-arena) center / cover no-repeat;
}
.fcf-arena-hero::before,
.fcf-arena-hero::after {
	content: "";
	position: absolute;
	pointer-events: none;
	border-radius: 50%;
	filter: blur(22px);
	animation: fcf-torch-breathe 5.4s ease-in-out infinite alternate;
}
.fcf-arena-hero::before { width: 180px; height: 180px; right: 8%; bottom: 10%; background: rgba(207,89,24,.15); }
.fcf-arena-hero::after { width: 120px; height: 120px; right: 24%; top: 24%; background: rgba(226,184,97,.08); animation-delay: -2s; }
@keyframes fcf-torch-breathe { to { opacity: .45; transform: scale(1.18); } }
.fcf-hero-copy { position: relative; z-index: 2; padding: 105px 0 96px; }
.fcf-hero-copy h1 {
	margin: .14em 0 .12em;
	color: var(--fcf-paper);
	font-family: var(--fcf-display);
	font-size: clamp(4.7rem, 10.4vw, 9rem);
	font-weight: 1000;
	letter-spacing: -.035em;
	line-height: .82;
	text-shadow: 0 8px 38px #000;
}
.fcf-hero-line {
	max-width: 760px;
	margin: 0;
	color: var(--fcf-gold-soft) !important;
	font-family: Georgia, serif;
	font-size: clamp(1.4rem, 2.9vw, 2.35rem);
	font-weight: 700;
	line-height: 1.18;
}
.fcf-hero-support { max-width: 660px; margin: 18px 0 0; color: #d1c7ba !important; font-size: 1.02rem; }
.fcf-actions,
.fcf-detail-actions,
.fcf-footer-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 25px; }
.fcf-button {
	min-height: 46px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 11px 17px;
	border: 1px solid var(--fcf-line-strong);
	border-radius: 6px;
	background: rgba(10,11,13,.78);
	color: var(--fcf-paper) !important;
	font-size: .8rem;
	font-weight: 950;
	letter-spacing: .075em;
	line-height: 1;
	text-transform: uppercase;
	cursor: pointer;
	transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.fcf-button-primary {
	border-color: var(--fcf-wine-hi);
	background: linear-gradient(135deg, #a5253a, #741727);
	box-shadow: 0 8px 24px rgba(142,32,49,.25), inset 0 1px rgba(255,255,255,.11);
}
.fcf-button-quiet { border-color: transparent; background: transparent; color: #c3b9ab !important; }
.fcf-button:hover,
.fcf-button:focus-visible {
	transform: translateY(-2px);
	border-color: var(--fcf-gold);
	outline: 2px solid transparent;
	box-shadow: 0 12px 28px rgba(0,0,0,.34);
}
.fcf-button:disabled { opacity: .55; cursor: wait; transform: none; }
.fcf-hero-signals { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 35px; }
.fcf-hero-signals span {
	position: relative;
	padding-left: 16px;
	color: #bfb5a8;
	font-size: .68rem;
	font-weight: 900;
	letter-spacing: .13em;
	text-transform: uppercase;
}
.fcf-hero-signals span::before { content: ""; position: absolute; left: 0; top: .43em; width: 7px; height: 7px; transform: rotate(45deg); background: var(--fcf-gold); box-shadow: 0 0 14px rgba(226,184,97,.48); }

/* Brasswick */
.fcf-guide-rail {
	position: relative;
	z-index: 3;
	display: grid;
	grid-template-columns: 130px 1fr;
	align-items: center;
	gap: 24px;
	margin-top: -58px;
	padding: 16px 22px 16px 16px;
	border: 1px solid var(--fcf-line);
	border-radius: 12px;
	background: linear-gradient(115deg, rgba(40,29,22,.98), rgba(13,13,14,.98));
	box-shadow: var(--fcf-shadow);
}
.fcf-guide-rail img {
	width: 130px;
	height: 130px;
	border: 1px solid rgba(226,184,97,.35);
	border-radius: 8px;
	object-fit: cover;
	object-position: 50% 35%;
}
.fcf-guide-rail p { max-width: 980px; margin: 6px 0 0; color: #eee4d5 !important; font-family: Georgia, serif; font-size: clamp(1rem, 1.9vw, 1.32rem); font-weight: 600; line-height: 1.35; }

/* Board and filters */
.fcf-board-main { padding: 72px 0 96px; }
.fcf-board-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 23px; }
.fcf-board-heading h2,
.fcf-section-heading h2,
.fcf-enter-cta h2,
.fcf-arena-footer h2,
.fcf-detail-copy h1 {
	margin: .16em 0;
	color: var(--fcf-paper);
	font-family: var(--fcf-display);
	font-size: clamp(2.5rem, 5.2vw, 4.7rem);
	font-weight: 1000;
	letter-spacing: -.025em;
	line-height: .92;
	text-transform: uppercase;
}
.fcf-board-heading p,
.fcf-section-heading p { margin: 0; color: var(--fcf-muted) !important; }
.fcf-live { flex: none; color: #d7cdbf; font-size: .8rem; font-weight: 800; }
.fcf-live::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 9px; border-radius: 50%; background: #65cf7e; box-shadow: 0 0 0 6px rgba(101,207,126,.11); }
.fcf-filters {
	position: sticky;
	z-index: 20;
	top: 82px;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr)) auto;
	gap: 9px;
	margin-bottom: 20px;
	padding: 12px;
	border: 1px solid var(--fcf-line);
	border-radius: 9px;
	background: rgba(17,16,15,.94);
	backdrop-filter: blur(14px);
	box-shadow: 0 12px 38px rgba(0,0,0,.3);
}
.fcf-filters label,
.fcf-submission-form label {
	color: #b8ac9b;
	font-size: .64rem;
	font-weight: 950;
	letter-spacing: .11em;
	text-transform: uppercase;
}
.fcf-filters select,
.fcf-filters input,
.fcf-submission-form input,
.fcf-submission-form select,
.fcf-submission-form textarea {
	width: 100%;
	min-height: 43px;
	margin-top: 5px;
	padding: 9px 10px;
	border: 1px solid #514333;
	border-radius: 5px;
	background: #090a0c;
	color: #fff;
	box-shadow: inset 0 1px 8px rgba(0,0,0,.28);
}
.fcf-filters select:focus,
.fcf-filters input:focus,
.fcf-submission-form input:focus,
.fcf-submission-form select:focus,
.fcf-submission-form textarea:focus { border-color: var(--fcf-gold); outline: 2px solid rgba(226,184,97,.18); }
.fcf-filters button {
	align-self: end;
	min-height: 43px;
	padding: 8px 14px;
	border: 1px solid var(--fcf-line);
	border-radius: 5px;
	background: transparent;
	color: var(--fcf-gold);
	font-size: .72rem;
	font-weight: 900;
	text-transform: uppercase;
	cursor: pointer;
}

/* Compact roster cards */
.fcf-fighter-board { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.fcf-fighter-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(226,184,97,.25);
	border-radius: 10px;
	background: linear-gradient(155deg, #211a15, #0d0d0e 64%);
	box-shadow: 0 14px 34px rgba(0,0,0,.28);
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.fcf-fighter-card:hover { transform: translateY(-4px); border-color: rgba(226,184,97,.66); box-shadow: 0 22px 48px rgba(0,0,0,.42); }
.fcf-fighter-card.is-featured { border-color: rgba(226,184,97,.74); box-shadow: 0 0 0 1px rgba(226,184,97,.17), 0 18px 46px rgba(0,0,0,.36); }
.fcf-portrait {
	position: relative;
	height: 205px;
	display: grid;
	place-items: center;
	overflow: hidden;
	background:
		radial-gradient(circle at 50% 30%, rgba(142,32,49,.44), transparent 43%),
		linear-gradient(145deg, #322216, #0d0e11 65%);
}
.fcf-portrait::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 54%, rgba(8,9,11,.82)); }
.fcf-portrait > img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 28%; transition: transform .28s ease; }
.fcf-fighter-card:hover .fcf-portrait > img { transform: scale(1.025); }
.fcf-fallback-portrait { position: relative; width: 100%; height: 100%; display: grid; place-items: center; }
.fcf-fallback-portrait::before { content: ""; position: absolute; inset: 17% 27% 0; border-radius: 48% 48% 8% 8%; background: linear-gradient(#49413a, #1a1715); opacity: .62; clip-path: polygon(50% 0,72% 18%,76% 39%,67% 52%,88% 72%,100% 100%,0 100%,12% 72%,33% 52%,24% 39%,28% 18%); }
.fcf-fallback-shield { position: absolute; width: 92px; height: 112px; opacity: .55; clip-path: polygon(50% 0, 95% 17%, 84% 73%, 50% 100%, 16% 73%, 5% 17%); background: linear-gradient(145deg, rgba(226,184,97,.52), rgba(72,43,22,.26)); }
.fcf-fallback-portrait b { position: relative; z-index: 1; color: #f2e6d3; font-family: var(--fcf-display); font-size: 2rem; letter-spacing: .08em; text-shadow: 0 5px 18px #000; }
.fcf-card-badges { position: absolute; z-index: 2; left: 10px; top: 10px; right: 10px; display: flex; flex-wrap: wrap; gap: 5px; }
.fcf-card-badges span,
.fcf-profile-badges span {
	padding: 5px 7px;
	border: 1px solid var(--fcf-line-strong);
	border-radius: 4px;
	background: rgba(8,9,11,.84);
	color: var(--fcf-gold-soft);
	font-size: .57rem;
	font-weight: 1000;
	letter-spacing: .12em;
	line-height: 1;
	text-transform: uppercase;
	backdrop-filter: blur(8px);
}
.fcf-card-badges .is-demo,
.fcf-profile-badges .is-demo { border-color: #e35b6f; background: rgba(116,23,39,.9); color: #fff; }
.fcf-card-badges .is-featured,
.fcf-profile-badges .is-featured { border-color: var(--fcf-gold); background: linear-gradient(135deg,#3e2d14,#17110d); color: #ffe2a2; }
.fcf-card-badges .is-verified,
.fcf-profile-badges .is-verified { border-color: #71a9dd; color: #b9ddff; }
.fcf-card-badges .is-gym-verified,
.fcf-profile-badges .is-gym-verified { border-color: #65cf7e; color: #b9f2c7; }
.fcf-card-badges .is-new,
.fcf-profile-badges .is-new { border-color: #d7dbe6; color: #fff; }
.fcf-card-body { min-height: 178px; display: flex; flex-direction: column; padding: 14px; }
.fcf-card-top { display: grid; grid-template-columns: 1fr auto; align-items: start; gap: 10px; }
.fcf-card-top h3 { margin: 0; color: #fff; font-size: 1rem; font-weight: 900; line-height: 1.13; }
.fcf-card-top strong { color: var(--fcf-gold); font: 900 1rem/1 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: nowrap; }
.fcf-card-location { display: flex; align-items: center; gap: 6px; margin: 7px 0 0; color: var(--fcf-muted) !important; font-size: .74rem; line-height: 1.2; }
.fcf-card-location span { font-size: .9rem; }
.fcf-card-facts { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 10px; }
.fcf-card-facts span { padding: 4px 7px; border: 1px solid rgba(226,184,97,.2); border-radius: 999px; background: #0b0b0c; color: #e5dac9; font-size: .59rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.fcf-gym { margin: 9px 0 0; color: #c4b9aa !important; font-size: .72rem; line-height: 1.25; }
.fcf-gym span { margin-right: 6px; color: var(--fcf-gold); font-size: .55rem; font-weight: 1000; letter-spacing: .12em; }
.fcf-view-fighter { align-self: flex-start; margin-top: auto; padding-top: 12px; color: var(--fcf-gold-soft) !important; font-size: .7rem; font-weight: 950; letter-spacing: .1em; text-transform: uppercase; }
.fcf-view-fighter span { display: inline-block; margin-left: 5px; transition: transform .15s; }
.fcf-fighter-card:hover .fcf-view-fighter span { transform: translateX(3px); }
.fcf-empty { grid-column: 1 / -1; min-height: 330px; display: grid; grid-template-columns: 250px 1fr; align-items: center; gap: 30px; overflow: hidden; border: 1px solid var(--fcf-line); border-radius: 12px; background: linear-gradient(135deg, #2a1d15, #0c0d0f); }
.fcf-empty img { width: 100%; height: 330px; object-fit: cover; object-position: 50% 25%; }
.fcf-empty h3 { max-width: 690px; margin: 8px 0 0; color: #fff; font-family: Georgia, serif; font-size: clamp(1.4rem,3vw,2.2rem); line-height: 1.18; }

/* Value proposition */
.fcf-why-enter { padding: 105px 0 30px; }
.fcf-section-heading { max-width: 820px; }
.fcf-benefit-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-top: 27px; }
.fcf-benefit-grid article { min-height: 190px; padding: 22px; border: 1px solid var(--fcf-line); border-radius: 8px; background: linear-gradient(145deg, rgba(37,27,20,.9), rgba(13,13,14,.94)); }
.fcf-benefit-grid article > span { color: var(--fcf-gold); font-family: var(--fcf-display); font-size: .76rem; font-weight: 1000; letter-spacing: .16em; }
.fcf-benefit-grid h3 { margin: 21px 0 7px; color: #fff; font-family: var(--fcf-display); font-size: 1.35rem; letter-spacing: .025em; line-height: 1; text-transform: uppercase; }
.fcf-benefit-grid p { margin: 0; color: var(--fcf-muted) !important; font-size: .86rem; }
.fcf-enter-cta { display: grid; grid-template-columns: 270px 1fr; align-items: center; gap: 36px; margin-top: 70px; overflow: hidden; border: 1px solid var(--fcf-line-strong); border-radius: 12px; background: linear-gradient(120deg, #311e16, #0e0e0f 64%); box-shadow: var(--fcf-shadow); }
.fcf-enter-cta > img { width: 100%; height: 100%; min-height: 380px; object-fit: cover; object-position: 50% 30%; }
.fcf-enter-cta > div { padding: 34px 38px 34px 0; }
.fcf-enter-cta h2 { max-width: 780px; font-size: clamp(2.4rem,4.8vw,4.5rem); }
.fcf-enter-cta p { max-width: 760px; margin: 12px 0 0; color: #c8bdaf !important; }
.fcf-free-badge { display: inline-flex; margin-bottom: 15px; padding: 6px 10px; border: 1px solid #64cc7b; border-radius: 4px; background: rgba(42,107,58,.18); color: #b9f2c7; font-size: .66rem; font-weight: 1000; letter-spacing: .13em; text-transform: uppercase; }
.fcf-review-flow { display: flex; align-items: center; gap: 9px; margin: 24px 0; }
.fcf-review-flow span { display: flex; align-items: center; gap: 7px; color: #d9cdbd; font-size: .7rem; font-weight: 900; text-transform: uppercase; }
.fcf-review-flow b { width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid var(--fcf-gold); border-radius: 50%; color: var(--fcf-gold); font-size: .64rem; }
.fcf-review-flow i { width: 22px; height: 1px; background: var(--fcf-line-strong); }

/* Intentional footer */
.fcf-arena-footer { border-top: 1px solid var(--fcf-line); background: radial-gradient(circle at 15% 20%, rgba(142,32,49,.16), transparent 38%), #07080a; }
.fcf-footer-inner { min-height: 280px; display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.fcf-arena-footer h2 { margin-bottom: 0; font-size: clamp(2.2rem,4.8vw,4rem); }
.fcf-footer-actions { flex: none; margin-top: 0; }
.fcf-footer-note { padding: 18px 0 24px; border-top: 1px solid rgba(226,184,97,.13); color: #81786c; font-size: .72rem; }

/* Intro */
.fcf-intro {
	position: fixed;
	z-index: 999999;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 24px;
	background:
		radial-gradient(circle at 72% 28%, rgba(182,122,52,.2), transparent 28%),
		linear-gradient(rgba(4,4,5,.73), rgba(4,4,5,.96)),
		var(--fcf-arena) center / cover no-repeat;
}
.fcf-intro-skip { position: absolute; z-index: 2; top: 24px; right: 26px; padding: 9px 13px; border: 1px solid var(--fcf-line); border-radius: 5px; background: rgba(8,9,11,.78); color: #fff; font-size: .73rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.fcf-intro-stage { width: min(990px, 100%); display: grid; grid-template-columns: minmax(230px, 370px) 1fr; align-items: end; gap: 25px; }
.fcf-intro-stage > img { width: 100%; max-height: 77vh; object-fit: contain; object-position: bottom; filter: drop-shadow(0 26px 36px rgba(0,0,0,.86)); }
.fcf-dialogue { position: relative; margin-bottom: 10vh; padding: 27px 30px; border: 1px solid var(--fcf-line-strong); border-radius: 10px; background: linear-gradient(135deg,rgba(52,38,28,.98),rgba(12,12,13,.98)); box-shadow: var(--fcf-shadow); }
.fcf-dialogue::before { content: ""; position: absolute; left: -13px; bottom: 43px; width: 24px; height: 24px; transform: rotate(45deg); border-left: 1px solid var(--fcf-line-strong); border-bottom: 1px solid var(--fcf-line-strong); background: #2d221a; }
.fcf-dialogue-meta { display: flex; justify-content: space-between; gap: 20px; }
.fcf-dialogue-meta [data-intro-progress] { color: #8f8578; font-size: .7rem; font-weight: 800; }
.fcf-dialogue p { min-height: 3.15em; margin: 12px 0 20px; color: #fff !important; font-family: Georgia, serif; font-size: clamp(1.35rem,2.7vw,2.05rem); font-weight: 650; line-height: 1.27; }
.fcf-intro-choices { display: flex; flex-wrap: wrap; gap: 9px; }

/* Moderated multi-step submission */
.fcf-modal { width: min(920px, calc(100% - 24px)); max-height: 94vh; padding: 0; overflow: hidden; border: 1px solid var(--fcf-line-strong); border-radius: 10px; background: #12110f; color: var(--fcf-paper); box-shadow: 0 34px 110px #000; }
.fcf-modal::backdrop { background: rgba(2,3,4,.87); backdrop-filter: blur(6px); }
.fcf-modal-head { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 20px 25px; border-bottom: 1px solid var(--fcf-line); background: linear-gradient(115deg,#3a2418,#12100e 66%); }
.fcf-modal-head h2 { margin: 5px 0 0; color: #fff; font-family: var(--fcf-display); font-size: 2.25rem; line-height: .95; text-transform: uppercase; }
.fcf-modal-head p { margin: 7px 0 0; color: #b8ad9e !important; font-size: .78rem; }
.fcf-modal-head > button { border: 0; background: transparent; color: #fff; font-size: 2rem; line-height: 1; cursor: pointer; }
.fcf-modal-body { max-height: calc(94vh - 108px); overflow-y: auto; padding: 22px 25px 25px; }
.fcf-step-track { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0 0 25px; padding: 0; list-style: none; }
.fcf-step-track li { position: relative; display: grid; justify-items: center; gap: 6px; color: #776f66; font-size: .58rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.fcf-step-track li::before { content: ""; position: absolute; z-index: 0; left: 0; right: 0; top: 13px; height: 1px; background: #3a332c; }
.fcf-step-track li:first-child::before { left: 50%; }
.fcf-step-track li:last-child::before { right: 50%; }
.fcf-step-track b { position: relative; z-index: 1; width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid #4d4237; border-radius: 50%; background: #12110f; color: #928679; }
.fcf-step-track li.is-active,
.fcf-step-track li.is-complete { color: var(--fcf-gold-soft); }
.fcf-step-track li.is-active b { border-color: var(--fcf-gold); background: #3b2919; color: var(--fcf-gold); box-shadow: 0 0 0 5px rgba(226,184,97,.08); }
.fcf-step-track li.is-complete b { border-color: #65cf7e; color: #b9f2c7; }
.fcf-submission-form { display: block; }
.fcf-form-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.fcf-form-step legend { display: flex; align-items: center; gap: 11px; margin: 0; padding: 0; color: #fff; font-family: var(--fcf-display); font-size: 1.8rem; font-weight: 1000; line-height: 1; text-transform: uppercase; }
.fcf-form-step legend span { color: var(--fcf-gold); font-size: .78rem; letter-spacing: .12em; }
.fcf-form-step > p { margin: 9px 0 19px; color: var(--fcf-muted) !important; font-size: .84rem; }
.fcf-step-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.fcf-submission-form label { display: block; }
.fcf-submission-form label small { display: block; margin-top: 4px; color: #8e8477; font-size: .67rem; font-weight: 600; letter-spacing: 0; line-height: 1.3; text-transform: none; }
.fcf-submission-form textarea { resize: vertical; }
.fcf-submission-form .fcf-full { grid-column: 1 / -1; }
.fcf-mode-choice,.fcf-sparring-choice { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.fcf-mode-choice { margin-bottom: 18px; }
.fcf-existing-profile { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin: 0 0 18px; padding: 16px; border: 1px solid rgba(226,184,97,.22); border-radius: 8px; background: rgba(226,184,97,.035); }
.fcf-existing-profile[hidden],.fcf-choice-card[hidden] { display: none !important; }
.fcf-choice-card { display: flex !important; align-items: flex-start; gap: 11px; min-height: 84px; padding: 15px; border: 1px solid #514438; border-radius: 8px; background: #1b1713; color: #fff !important; cursor: pointer; font-size: .78rem !important; font-weight: 700 !important; letter-spacing: 0 !important; line-height: 1.35; text-transform: none !important; }
.fcf-choice-card:has(input:checked) { border-color: var(--fcf-gold); background: #2a2119; box-shadow: 0 0 0 3px rgba(226,184,97,.08); }
.fcf-choice-card input { flex: none; width: auto; min-height: 0; margin: 3px 0 0; }
.fcf-choice-card strong,.fcf-choice-card small { display: block; }
.fcf-choice-card small { margin-top: 5px; color: #a99d8f; font-size: .71rem; font-weight: 600; }
.fcf-sparring-fields { margin-top: 18px; padding: 17px; border: 1px solid rgba(226,184,97,.22); border-radius: 8px; background: rgba(226,184,97,.035); }
.fcf-sparring-fields[hidden] { display: none; }
.fcf-sparring-copy { margin: 0 0 15px; color: #b8ad9e !important; font-size: .76rem; line-height: 1.5; }
.fcf-sparring-fields .fcf-consent { margin-top: 15px; }
.fcf-form-nav { display: flex; justify-content: space-between; gap: 10px; margin-top: 23px; padding-top: 18px; border-top: 1px solid rgba(226,184,97,.13); }
.fcf-honeypot { position: absolute !important; left: -99999px !important; }
.fcf-consent { display: flex !important; align-items: flex-start; gap: 11px; margin-top: 22px; color: #d8cdbf !important; font-size: .78rem !important; font-weight: 700 !important; letter-spacing: 0 !important; line-height: 1.4; text-transform: none !important; }
.fcf-consent input { flex: none; width: auto; min-height: 0; margin: 3px 0 0; }
.fcf-moderation { padding: 16px 18px; border-left: 3px solid var(--fcf-gold); background: #261d16; color: #d8cdbf; }
.fcf-moderation strong { color: #fff; }
.fcf-moderation p { margin: 6px 0 0; color: #c5b9aa !important; font-size: .82rem; }
.fcf-review-flow-form { justify-content: center; }
.fcf-form-status { min-height: 1.5em; margin: 14px 0 0; color: var(--fcf-gold) !important; font-size: .8rem; font-weight: 750; }
.fcf-submission-success { display: grid; grid-template-columns: 260px 1fr; align-items: center; gap: 28px; overflow: hidden; border: 1px solid var(--fcf-line); border-radius: 9px; background: linear-gradient(135deg,#2c2018,#0d0d0e); }
.fcf-submission-success img { width: 100%; height: 310px; object-fit: cover; object-position: 50% 30%; }
.fcf-submission-success > div { padding: 26px 28px 26px 0; }
.fcf-submission-success h3 { margin: 8px 0 0; color: #fff; font-family: var(--fcf-display); font-size: 2.3rem; line-height: 1; text-transform: uppercase; }
.fcf-submission-success p { color: #c9bdad !important; }

/* Fighter profile / poster */
.fcf-fighter-profile { background: var(--fcf-ink); }
.fcf-detail-wrap { min-height: 100vh; background: var(--fcf-ink); }
.fcf-detail-hero { position: relative; overflow: hidden; padding: 56px 0 72px; border-bottom: 1px solid var(--fcf-line); background: radial-gradient(circle at 82% 18%, rgba(142,32,49,.25), transparent 31rem), linear-gradient(110deg, rgba(7,8,10,.97), rgba(7,8,10,.82)), var(--fcf-arena) center / cover no-repeat; }
.fcf-detail-back { margin-bottom: 25px; }
.fcf-detail { display: grid; grid-template-columns: minmax(290px, 430px) 1fr; align-items: center; gap: clamp(34px,6vw,82px); }
.fcf-detail-portrait { position: relative; min-height: 570px; display: grid; place-items: center; overflow: hidden; border: 1px solid var(--fcf-line-strong); border-radius: 10px; background: radial-gradient(circle at 50% 30%,rgba(142,32,49,.44),transparent 43%),linear-gradient(145deg,#332216,#0c0d0f 68%); box-shadow: var(--fcf-shadow); }
.fcf-detail-portrait::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg,transparent 63%,rgba(8,9,11,.85)); }
.fcf-detail-portrait > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; }
.fcf-detail-portrait .fcf-fallback-portrait b { font-size: 4rem; }
.fcf-detail-portrait .fcf-fallback-shield { width: 170px; height: 210px; }
.fcf-profile-badges { position: absolute; z-index: 2; left: 15px; right: 15px; bottom: 15px; display: flex; flex-wrap: wrap; gap: 6px; }
.fcf-detail-copy { min-width: 0; }
.fcf-detail-copy h1 { max-width: 820px; margin: 10px 0 14px; font-size: clamp(3.2rem,7.6vw,7.2rem); }
.fcf-detail-location { display: flex; align-items: center; gap: 9px; margin: 0 0 13px; color: #c7bcac !important; font-size: .84rem; font-weight: 800; }
.fcf-detail-location span { font-size: 1.1rem; }
.fcf-record-panel { display: inline-grid; grid-template-columns: repeat(3, minmax(72px,1fr)); overflow: hidden; margin: 4px 0 24px; border: 1px solid var(--fcf-line-strong); border-radius: 7px; background: rgba(9,10,12,.76); }
.fcf-record-panel div { min-width: 84px; padding: 11px 15px; border-right: 1px solid var(--fcf-line); text-align: center; }
.fcf-record-panel div:last-child { border-right: 0; }
.fcf-record-panel strong { display: block; color: var(--fcf-gold); font: 1000 1.55rem/1 var(--fcf-display); }
.fcf-record-panel span { display: block; margin-top: 4px; color: #958a7c; font-size: .55rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.fcf-detail-stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; max-width: 830px; }
.fcf-detail-stat { min-width: 0; padding: 13px; border: 1px solid rgba(226,184,97,.22); border-radius: 6px; background: rgba(13,13,14,.78); color: #fff; font-size: .86rem; }
.fcf-detail-stat b { display: block; margin-bottom: 4px; color: var(--fcf-gold); font-size: .57rem; letter-spacing: .12em; text-transform: uppercase; }
.fcf-share-feedback { min-height: 1.3em; margin-top: 9px; color: var(--fcf-gold) !important; font-size: .74rem; }
.fcf-detail-content { padding: 70px 0 92px; }
.fcf-profile-section { display: grid; grid-template-columns: 220px 1fr; gap: 34px; padding: 35px 0; border-bottom: 1px solid rgba(226,184,97,.16); }
.fcf-profile-section h2 { margin: 0; color: #fff; font-family: var(--fcf-display); font-size: 1.65rem; line-height: 1; text-transform: uppercase; }
.fcf-profile-section p { max-width: 850px; margin: 0; color: #ded3c4 !important; font-size: 1rem; }
.fcf-highlight-card { overflow: hidden; border: 1px solid var(--fcf-line); border-radius: 9px; background: #0d0d0e; }
.fcf-highlight-card iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; background: #000; }
.fcf-highlight-card .fcf-highlight-link { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px; color: var(--fcf-gold-soft) !important; font-size: .76rem; font-weight: 950; letter-spacing: .1em; text-transform: uppercase; }
.fcf-contact-stack { display: flex; flex-wrap: wrap; gap: 9px; }
.fcf-public-contact { min-height: 46px; display: inline-flex; align-items: center; padding: 11px 16px; border: 1px solid var(--fcf-line); border-radius: 6px; color: #d8ccbc; font-size: .82rem; }
.fcf-fighter-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 44px; }
.fcf-fighter-nav a { min-height: 78px; display: flex; flex-direction: column; justify-content: center; padding: 14px 17px; border: 1px solid var(--fcf-line); border-radius: 7px; background: linear-gradient(145deg,#211914,#0d0d0e); color: #fff !important; font-size: .7rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.fcf-fighter-nav a small { margin-top: 5px; color: #bdb1a2; font-size: .78rem; font-weight: 650; letter-spacing: 0; text-transform: none; }
.fcf-fighter-nav a:last-child { align-items: flex-end; text-align: right; }
.fcf-profile-cta { margin-top: 55px; padding: 30px; border: 1px solid var(--fcf-line); border-radius: 9px; background: linear-gradient(135deg,#2b1d16,#0d0d0e); text-align: center; }
.fcf-profile-cta h2 { margin: 6px 0; color: #fff; font-family: var(--fcf-display); font-size: clamp(2rem,4vw,3.5rem); line-height: 1; text-transform: uppercase; }
.fcf-profile-cta p { margin: 0; color: var(--fcf-muted) !important; }
.fcf-profile-cta .fcf-actions { justify-content: center; }

@media (max-width: 1199px) {
	.fcf-fighter-board { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.fcf-filters { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.fcf-filters button { grid-column: auto; }
	.fcf-benefit-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.fcf-detail { grid-template-columns: 350px 1fr; }
	.fcf-detail-portrait { min-height: 500px; }
}

@media (max-width: 900px) {
	.fcf-shell { width: min(100% - 28px, 1400px); }
	.fcf-arena-nav-inner { grid-template-columns: 1fr auto; }
	.fcf-colosseum-brand { justify-self: start; grid-column: 1; grid-row: 1; }
	.fcf-back-brand { display: none; }
	.fcf-arena-links { grid-column: 2; grid-row: 1; }
	.fcf-arena-hero { background-position: 62% center; }
	.fcf-fighter-board { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.fcf-enter-cta { grid-template-columns: 220px 1fr; gap: 26px; }
	.fcf-enter-cta > div { padding-right: 26px; }
	.fcf-detail { grid-template-columns: 300px 1fr; gap: 30px; }
	.fcf-detail-portrait { min-height: 440px; }
	.fcf-detail-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
	.admin-bar .fcf-arena-nav { top: 46px; }
	.fcf-shell { width: min(100% - 22px, 1400px); }
	.fcf-arena-nav-inner { min-height: 62px; }
	.fcf-colosseum-brand { font-size: .96rem; }
	.fcf-colosseum-brand small { display: none; }
	.fcf-shield-mark { width: 28px; height: 33px; font-size: .47rem; }
	.fcf-arena-links { gap: 14px; }
	.fcf-arena-links a { font-size: .68rem; }
	.fcf-arena-links .fcf-nav-enter { padding: 8px 10px; }
	.fcf-arena-hero { min-height: calc(100svh - 62px); align-items: end; background: linear-gradient(0deg,rgba(7,8,10,.96) 0%,rgba(7,8,10,.65) 56%,rgba(7,8,10,.25)), var(--fcf-arena) 66% center / cover no-repeat; }
	.fcf-hero-copy { padding: 88px 0 54px; }
	.fcf-hero-copy h1 { font-size: clamp(4rem,20vw,6rem); }
	.fcf-hero-line { font-size: 1.45rem; }
	.fcf-hero-support { font-size: .9rem; }
	.fcf-hero-signals { gap: 10px 16px; margin-top: 24px; }
	.fcf-guide-rail { grid-template-columns: 88px 1fr; gap: 15px; margin-top: -24px; padding: 11px; }
	.fcf-guide-rail img { width: 88px; height: 88px; }
	.fcf-guide-rail p { font-size: .9rem; }
	.fcf-board-main { padding-top: 55px; }
	.fcf-board-heading { align-items: flex-start; flex-direction: column; gap: 13px; }
	.fcf-board-heading h2 { font-size: 2.7rem; }
	.fcf-filters { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
	.fcf-filters label:nth-child(5) { grid-column: 1 / 2; }
	.fcf-fighter-board { grid-template-columns: 1fr; gap: 10px; }
	.fcf-fighter-card { min-height: 160px; display: grid; grid-template-columns: 118px 1fr; border-radius: 8px; }
	.fcf-fighter-card:hover { transform: none; }
	.fcf-portrait { height: 100%; min-height: 160px; }
	.fcf-fallback-shield { width: 66px; height: 80px; }
	.fcf-fallback-portrait b { font-size: 1.3rem; }
	.fcf-card-badges { left: 7px; right: 7px; top: 7px; }
	.fcf-card-badges span { padding: 4px 5px; font-size: .49rem; }
	.fcf-card-body { min-height: 160px; padding: 12px; }
	.fcf-card-top h3 { font-size: .95rem; }
	.fcf-card-top strong { font-size: .91rem; }
	.fcf-card-facts { margin-top: 7px; }
	.fcf-card-facts span { padding: 3px 6px; font-size: .53rem; }
	.fcf-gym { margin-top: 6px; font-size: .67rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.fcf-view-fighter { padding-top: 8px; }
	.fcf-empty { grid-template-columns: 110px 1fr; min-height: 210px; gap: 14px; }
	.fcf-empty img { height: 210px; }
	.fcf-empty h3 { font-size: 1.1rem; }
	.fcf-empty .fcf-actions { margin-top: 13px; }
	.fcf-empty .fcf-button { width: 100%; min-height: 40px; }
	.fcf-why-enter { padding-top: 78px; }
	.fcf-benefit-grid { grid-template-columns: 1fr 1fr; }
	.fcf-benefit-grid article { min-height: 170px; padding: 17px; }
	.fcf-benefit-grid h3 { font-size: 1.1rem; }
	.fcf-enter-cta { grid-template-columns: 1fr; gap: 0; margin-top: 50px; }
	.fcf-enter-cta > img { min-height: 0; height: 210px; object-position: 50% 29%; }
	.fcf-enter-cta > div { padding: 24px 20px 26px; }
	.fcf-review-flow { flex-wrap: wrap; }
	.fcf-review-flow i { width: 10px; }
	.fcf-footer-inner { min-height: 330px; align-items: flex-start; justify-content: center; flex-direction: column; }
	.fcf-footer-actions { width: 100%; }
	.fcf-intro { align-items: end; padding: 12px; }
	.fcf-intro-skip { top: 14px; right: 14px; }
	.fcf-intro-stage { display: flex; align-items: center; flex-direction: column; gap: 0; }
	.fcf-intro-stage > img { width: auto; height: 42vh; max-width: 76%; margin-bottom: -18px; }
	.fcf-dialogue { width: 100%; margin: 0 0 4vh; padding: 20px; }
	.fcf-dialogue::before { display: none; }
	.fcf-dialogue p { min-height: 4em; font-size: 1.25rem; }
	.fcf-intro-choices .fcf-button { flex: 1 1 100%; }
	.fcf-modal { max-height: 96vh; }
	.fcf-modal-head { padding: 17px 18px; }
	.fcf-modal-head h2 { font-size: 1.8rem; }
	.fcf-modal-body { max-height: calc(96vh - 101px); padding: 18px; }
	.fcf-step-track li span { display: none; }
	.fcf-step-fields { grid-template-columns: 1fr; }
	.fcf-existing-profile { grid-template-columns: 1fr; }
	.fcf-submission-form .fcf-full { grid-column: auto; }
	.fcf-form-nav { position: sticky; z-index: 3; bottom: -18px; margin-right: -18px; margin-left: -18px; padding: 14px 18px 18px; background: linear-gradient(180deg,rgba(18,17,15,.88),#12110f 28%); }
	.fcf-review-flow-form { justify-content: flex-start; }
	.fcf-submission-success { grid-template-columns: 120px 1fr; gap: 15px; }
	.fcf-submission-success img { height: 250px; }
	.fcf-submission-success > div { padding: 18px 16px 18px 0; }
	.fcf-submission-success h3 { font-size: 1.65rem; }
	.fcf-detail-hero { padding: 32px 0 48px; }
	.fcf-detail { grid-template-columns: 1fr; gap: 27px; }
	.fcf-detail-portrait { min-height: 480px; }
	.fcf-detail-copy h1 { font-size: clamp(3.2rem,17vw,5.4rem); }
	.fcf-detail-stats { grid-template-columns: 1fr 1fr; }
	.fcf-profile-section { grid-template-columns: 1fr; gap: 14px; }
	.fcf-fighter-nav { grid-template-columns: 1fr; }
	.fcf-fighter-nav a:last-child { align-items: flex-start; text-align: left; }
}

@media (max-width: 430px) {
	.fcf-actions .fcf-button { flex: 1 1 100%; }
	.fcf-hero-copy h1 { font-size: 3.95rem; }
	.fcf-hero-signals span { font-size: .58rem; }
	.fcf-filters { grid-template-columns: 1fr 1fr; gap: 7px; padding: 9px; }
	.fcf-filters label { font-size: .56rem; }
	.fcf-filters select { min-height: 40px; padding: 7px 6px; font-size: .78rem; }
	.fcf-filters button { grid-column: 2; }
	.fcf-fighter-card { grid-template-columns: 105px 1fr; min-height: 156px; }
	.fcf-portrait { min-height: 156px; }
	.fcf-card-body { min-height: 156px; padding: 10px; }
	.fcf-card-location { margin-top: 5px; font-size: .67rem; }
	.fcf-gym span { display: none; }
	.fcf-benefit-grid { grid-template-columns: 1fr; }
	.fcf-benefit-grid article { min-height: 0; }
	.fcf-review-flow span { font-size: .61rem; }
	.fcf-review-flow b { width: 21px; height: 21px; }
	.fcf-review-flow i { display: none; }
	.fcf-submission-success { grid-template-columns: 1fr; }
	.fcf-submission-success img { height: 170px; }
	.fcf-submission-success > div { padding: 0 18px 20px; }
	.fcf-mode-choice,.fcf-sparring-choice { grid-template-columns: 1fr; }
	.fcf-sparring-fields { padding: 13px; }
	.fcf-detail-portrait { min-height: 400px; }
	.fcf-record-panel { width: 100%; }
	.fcf-record-panel div { min-width: 0; }
	.fcf-detail-stats { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	.fcf-colosseum *,
	.fcf-colosseum *::before,
	.fcf-colosseum *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* Lightweight safety, trust and policy surfaces */
.fcf-safety-rail {
	display: grid;
	grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr);
	align-items: center;
	gap: clamp(24px,5vw,72px);
	margin-top: 34px;
	padding: 22px 24px;
	border: 1px solid var(--fcf-line);
	border-left: 4px solid var(--fcf-gold);
	border-radius: 10px;
	background: linear-gradient(110deg,rgba(35,27,21,.96),rgba(13,14,17,.94));
	box-shadow: 0 16px 44px rgba(0,0,0,.26);
}
.fcf-safety-rail h2 {
	margin: 4px 0 0;
	color: var(--fcf-paper);
	font-family: var(--fcf-display);
	font-size: clamp(1.65rem,3vw,2.45rem);
	font-weight: 950;
	letter-spacing: -.015em;
	line-height: 1;
	text-transform: uppercase;
}
.fcf-safety-rail p { margin: 0; color: #d8cdbd; font-size: .96rem; line-height: 1.62; }
.fcf-safety-rail a,
.fcf-policy a:not(.fcf-button),
.fcf-policy-links a { color: var(--fcf-gold-soft); text-decoration: underline; text-decoration-color: rgba(226,184,97,.45); text-underline-offset: 3px; }
.fcf-safety-rail a:hover,
.fcf-policy a:not(.fcf-button):hover,
.fcf-policy-links a:hover { color: #fff2c9; text-decoration-color: currentColor; }

.fcf-footer-note { display: grid; gap: 11px; padding-top: 22px; padding-bottom: 30px; border-top: 1px solid rgba(226,184,97,.16); color: var(--fcf-muted); font-size: .78rem; line-height: 1.55; }
.fcf-footer-note p { max-width: 920px; margin: 0; }
.fcf-policy-links { display: flex; flex-wrap: wrap; gap: 10px 20px; }
.fcf-footer-signoff { color: #81786b; font-size: .71rem; letter-spacing: .04em; }

.fcf-policy { padding: clamp(62px,8vw,112px) 0 96px; }
.fcf-policy-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(34px,6vw,72px);
	border: 1px solid var(--fcf-line-strong);
	border-radius: 14px;
	background:
		linear-gradient(105deg,rgba(8,9,11,.97),rgba(41,20,18,.88)),
		var(--fcf-arena) center 40% / cover;
	box-shadow: var(--fcf-shadow);
}
.fcf-policy-hero h1 {
	max-width: 1000px;
	margin: .14em 0 .2em;
	color: var(--fcf-paper);
	font-family: var(--fcf-display);
	font-size: clamp(2.7rem,7vw,6.5rem);
	font-weight: 1000;
	letter-spacing: -.035em;
	line-height: .9;
	text-transform: uppercase;
}
.fcf-policy-hero p { max-width: 740px; margin: 0; color: #e4d8c4; font-size: clamp(1rem,2vw,1.22rem); }
.fcf-policy-grid {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 16px;
	margin-top: 22px;
}
.fcf-policy-grid section {
	padding: clamp(22px,3vw,34px);
	border: 1px solid var(--fcf-line);
	border-radius: 11px;
	background: linear-gradient(150deg,#211a15,#0d0d0e 72%);
	box-shadow: 0 14px 36px rgba(0,0,0,.24);
}
.fcf-policy-grid h2 {
	margin: 0 0 12px;
	color: var(--fcf-gold-soft);
	font-family: var(--fcf-display);
	font-size: clamp(1.45rem,2.6vw,2.1rem);
	font-weight: 950;
	line-height: 1;
	text-transform: uppercase;
}
.fcf-policy-grid p { margin: 0; color: #d4c9ba; line-height: 1.7; }
.fcf-policy-grid ul { margin: 0; padding-left: 1.25rem; color: #d4c9ba; }
.fcf-policy-grid li + li { margin-top: 8px; }
.fcf-policy-grid .fcf-legal-review { border-color: rgba(226,184,97,.52); background: linear-gradient(145deg,#2b2117,#17120f); }
.fcf-policy-cta { display: flex; justify-content: center; margin-top: 28px; }

@media (max-width: 760px) {
	.fcf-safety-rail { grid-template-columns: 1fr; gap: 13px; margin-top: 18px; padding: 18px; }
	.fcf-policy { padding: 46px 0 70px; }
	.fcf-policy-hero { padding: 30px 20px; }
	.fcf-policy-grid { grid-template-columns: 1fr; gap: 12px; }
	.fcf-policy-links { gap: 9px 16px; }
}
.fcf-colosseum > .fcf-arena-footer { display: block !important; }
