@charset "UTF-8";

:root {
	--bc2-bg: #07080b;
	--bc2-bg-soft: #0c0e13;
	--bc2-surface: #11141b;
	--bc2-surface-2: #151922;
	--bc2-surface-3: #1a1f29;
	--bc2-border: rgba(255, 255, 255, .09);
	--bc2-border-bright: rgba(255, 255, 255, .16);
	--bc2-text: #f6f7fb;
	--bc2-muted: #969dab;
	--bc2-muted-2: #6f7684;
	--bc2-red: #ff2d49;
	--bc2-red-light: #ff667a;
	--bc2-red-dark: #a80f28;
	--bc2-green: #42dd8a;
	--bc2-yellow: #ffbd4a;
	--bc2-blue: #6574ff;
	--bc2-radius-sm: 10px;
	--bc2-radius: 18px;
	--bc2-radius-lg: 28px;
	--bc2-shadow: 0 24px 80px rgba(0, 0, 0, .38);
	--bc2-container: 1240px;
	--bc2-ease: cubic-bezier(.2, .75, .25, 1);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 110px;
}

body.bc2-theme {
	margin: 0;
	min-width: 320px;
	background:
		radial-gradient(circle at 90% 12%, rgba(142, 8, 31, .13), transparent 24rem),
		radial-gradient(circle at 6% 55%, rgba(112, 8, 26, .08), transparent 30rem),
		var(--bc2-bg);
	color: var(--bc2-text);
	font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.bc2-theme::selection {
	background: var(--bc2-red);
	color: #fff;
}

body.bc2-theme a {
	color: inherit;
	text-decoration: none;
}

body.bc2-theme img {
	display: block;
	max-width: 100%;
	height: auto;
}

body.bc2-theme button,
body.bc2-theme input,
body.bc2-theme select,
body.bc2-theme textarea {
	font: inherit;
}

body.bc2-theme button,
body.bc2-theme a {
	-webkit-tap-highlight-color: transparent;
}

.bc2-container {
	width: min(calc(100% - 40px), var(--bc2-container));
	margin-inline: auto;
}

.bc2-page-noise {
	position: fixed;
	z-index: 9999;
	inset: 0;
	pointer-events: none;
	opacity: .028;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");
}

.screen-reader-text,
.bc2-skip-link {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.bc2-skip-link:focus {
	z-index: 10000;
	top: 10px;
	left: 10px;
	width: auto;
	height: auto;
	padding: 10px 16px;
	margin: 0;
	clip: auto;
	border-radius: 8px;
	background: #fff;
	color: #000;
}

.bc2-announcement {
	position: relative;
	z-index: 1002;
	border-bottom: 1px solid rgba(255, 58, 83, .22);
	background: linear-gradient(90deg, #21070d, #3b0812 50%, #21070d);
	color: #fff;
	font-size: 12px;
	font-weight: 650;
	letter-spacing: .035em;
}

.bc2-announcement .bc2-container {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 11px;
	min-height: 38px;
}

.bc2-announcement p {
	margin: 0;
}

.bc2-announcement a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #ff94a2;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.bc2-announcement__pulse,
.bc2-live-dot {
	position: relative;
	display: inline-block;
	flex: 0 0 auto;
	width: 7px;
	height: 7px;
	border-radius: 99px;
	background: var(--bc2-red);
	box-shadow: 0 0 0 4px rgba(255, 45, 73, .12);
}

.bc2-announcement__pulse::after,
.bc2-live-dot.is-online::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid currentColor;
	border-radius: 99px;
	animation: bc2-pulse 1.8s infinite;
}

.bc2-live-dot.is-online {
	color: var(--bc2-green);
	background: var(--bc2-green);
	box-shadow: 0 0 0 4px rgba(66, 221, 138, .12);
}

@keyframes bc2-pulse {
	0% { opacity: .8; transform: scale(.7); }
	70%, 100% { opacity: 0; transform: scale(1.65); }
}

.bc2-header {
	position: sticky;
	z-index: 1000;
	top: 0;
	border-bottom: 1px solid transparent;
	background: rgba(7, 8, 11, .7);
	backdrop-filter: blur(18px);
	transition: border-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.admin-bar .bc2-header {
	top: 32px;
}

.bc2-header.is-scrolled {
	border-color: var(--bc2-border);
	background: rgba(7, 8, 11, .93);
	box-shadow: 0 15px 45px rgba(0, 0, 0, .25);
}

.bc2-header__inner {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 42px;
	min-height: 78px;
}

.bc2-brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
}

.bc2-brand__copy {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.bc2-brand__copy strong {
	font-size: 14px;
	font-weight: 900;
	letter-spacing: .1em;
}

.bc2-brand__copy small {
	margin-top: 5px;
	color: var(--bc2-muted);
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .27em;
}

.bc2-brand__custom .custom-logo-link,
.bc2-brand__custom .custom-logo {
	display: block;
	width: 46px;
	height: 46px;
}

.bc2-brand__custom .custom-logo {
	border-radius: 12px;
	object-fit: cover;
}

.bc2-logo-mark {
	position: relative;
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 46px;
	height: 46px;
	overflow: hidden;
	border: 1px solid rgba(255, 74, 98, .32);
	border-radius: 13px;
	background:
		linear-gradient(140deg, rgba(255, 255, 255, .08), transparent 40%),
		linear-gradient(145deg, #340811, #090a0e 58%, #26060d);
	box-shadow: inset 0 0 24px rgba(255, 32, 65, .12), 0 0 26px rgba(255, 20, 52, .12);
}

.bc2-logo-mark::before {
	content: "";
	position: absolute;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(255, 45, 73, .2);
	border-radius: 50%;
}

.bc2-logo-mark span {
	position: relative;
	z-index: 1;
	color: #ff263f;
	font-family: Georgia, serif;
	font-size: 29px;
	font-weight: 900;
	font-style: italic;
	line-height: 1;
	text-shadow: 0 0 12px rgba(255, 30, 64, .7);
	transform: translateX(-1px);
}

.bc2-logo-mark i {
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 14px;
	height: 2px;
	background: var(--bc2-red);
	box-shadow: 0 0 7px var(--bc2-red);
	transform: rotate(-38deg);
}

.bc2-logo-mark--large {
	width: 72px;
	height: 72px;
	border-radius: 20px;
}

.bc2-logo-mark--large span {
	font-size: 46px;
}

.bc2-logo-mark--large::before {
	width: 62px;
	height: 62px;
}

.bc2-nav {
	justify-self: center;
}

.bc2-nav__list,
.bc2-nav .menu {
	display: flex;
	align-items: center;
	gap: 31px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.bc2-nav li {
	position: relative;
}

.bc2-nav a {
	position: relative;
	display: block;
	padding: 29px 0;
	color: #c4c8d1;
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .025em;
	transition: color .2s ease;
}

.bc2-nav a::after {
	content: "";
	position: absolute;
	right: 50%;
	bottom: 19px;
	left: 50%;
	height: 1px;
	background: var(--bc2-red);
	box-shadow: 0 0 8px var(--bc2-red);
	transition: right .25s var(--bc2-ease), left .25s var(--bc2-ease);
}

.bc2-nav a:hover,
.bc2-nav .current-menu-item > a,
.bc2-nav .current_page_item > a {
	color: #fff;
}

.bc2-nav a:hover::after,
.bc2-nav .current-menu-item > a::after,
.bc2-nav .current_page_item > a::after {
	right: 0;
	left: 0;
}

.bc2-nav .sub-menu {
	position: absolute;
	top: calc(100% - 8px);
	left: 50%;
	display: grid;
	gap: 3px;
	min-width: 210px;
	padding: 8px;
	margin: 0;
	list-style: none;
	border: 1px solid var(--bc2-border);
	border-radius: 13px;
	background: rgba(13, 15, 21, .98);
	box-shadow: var(--bc2-shadow);
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, 8px);
	transition: .2s ease;
}

.bc2-nav li:hover > .sub-menu,
.bc2-nav li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}

.bc2-nav .sub-menu a {
	padding: 10px 12px;
	border-radius: 8px;
}

.bc2-nav .sub-menu a:hover {
	background: rgba(255, 255, 255, .05);
}

.bc2-nav .sub-menu a::after {
	display: none;
}

.bc2-header__actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.bc2-icon-button {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid var(--bc2-border);
	border-radius: 11px;
	background: rgba(255, 255, 255, .025);
	color: var(--bc2-muted);
	transition: .2s ease;
}

.bc2-icon-button svg {
	width: 17px;
	fill: currentColor;
}

.bc2-icon-button:hover {
	border-color: rgba(101, 116, 255, .45);
	background: rgba(101, 116, 255, .12);
	color: #8893ff;
	transform: translateY(-2px);
}

.bc2-menu-toggle {
	display: none;
	width: 42px;
	height: 42px;
	padding: 10px;
	border: 1px solid var(--bc2-border);
	border-radius: 11px;
	background: var(--bc2-surface);
}

.bc2-menu-toggle > span:not(.screen-reader-text) {
	display: block;
	width: 100%;
	height: 2px;
	margin: 4px 0;
	background: #fff;
	transition: .2s ease;
}

.bc2-button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	min-height: 50px;
	padding: 0 22px;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: 11px;
	color: #fff;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .045em;
	text-transform: uppercase;
	cursor: pointer;
	transition: border-color .25s ease, background .25s ease, color .25s ease, transform .25s var(--bc2-ease), box-shadow .25s ease;
}

.bc2-button > * {
	position: relative;
	z-index: 1;
}

.bc2-button:hover {
	transform: translateY(-2px);
}

.bc2-button--primary {
	border-color: #ff3c55;
	background: linear-gradient(135deg, #ff3853, #be122d);
	box-shadow: 0 12px 30px rgba(231, 24, 56, .22), inset 0 1px rgba(255, 255, 255, .25);
}

.bc2-button--primary:hover {
	background: linear-gradient(135deg, #ff5268, #d71936);
	box-shadow: 0 16px 38px rgba(231, 24, 56, .35), inset 0 1px rgba(255, 255, 255, .25);
}

.bc2-button__shine {
	position: absolute;
	z-index: 0;
	top: -30%;
	bottom: -30%;
	left: -40%;
	width: 30%;
	background: rgba(255, 255, 255, .2);
	transform: rotate(20deg);
	transition: left .55s ease;
}

.bc2-button:hover .bc2-button__shine {
	left: 120%;
}

.bc2-button--ghost {
	border-color: var(--bc2-border-bright);
	background: rgba(255, 255, 255, .025);
}

.bc2-button--ghost:hover {
	border-color: rgba(255, 61, 87, .48);
	background: rgba(255, 45, 73, .08);
}

.bc2-button--glass {
	border-color: rgba(255, 255, 255, .19);
	background: rgba(9, 10, 14, .52);
	backdrop-filter: blur(12px);
}

.bc2-button--glass:hover {
	border-color: rgba(255, 255, 255, .4);
	background: rgba(255, 255, 255, .09);
}

.bc2-button--discord {
	border-color: #7785ff;
	background: linear-gradient(135deg, #6e7df5, #4f5ed6);
	box-shadow: 0 12px 28px rgba(101, 116, 255, .2);
}

.bc2-button--compact {
	min-height: 40px;
	padding: 0 16px;
	font-size: 10px;
}

.bc2-button--full {
	width: 100%;
}

.bc2-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: calc(100vh - 116px);
	overflow: hidden;
	border-bottom: 1px solid var(--bc2-border);
	isolation: isolate;
}

.bc2-hero__image {
	position: absolute;
	z-index: -4;
	inset: 0;
	background: url("../images/berlin-night.webp") center / cover no-repeat;
	transform: scale(1.025);
	animation: bc2-hero-breathe 16s ease-in-out infinite alternate;
}

@keyframes bc2-hero-breathe {
	to { transform: scale(1.075); }
}

.bc2-hero__veil {
	position: absolute;
	z-index: -3;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(5, 6, 9, .98) 2%, rgba(5, 6, 9, .86) 36%, rgba(7, 8, 11, .3) 68%, rgba(7, 8, 11, .65)),
		linear-gradient(0deg, #07080b 0%, transparent 24%, transparent 78%, rgba(7, 8, 11, .7) 100%),
		radial-gradient(circle at 70% 45%, transparent 0, rgba(135, 4, 26, .08) 36%, rgba(7, 8, 11, .15) 70%);
}

.bc2-hero__grid {
	position: absolute;
	z-index: -2;
	inset: 0;
	opacity: .09;
	background-image:
		linear-gradient(rgba(255,255,255,.18) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.18) 1px, transparent 1px);
	background-size: 72px 72px;
	mask-image: linear-gradient(90deg, #000, transparent 55%);
}

.bc2-hero::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 12%;
	left: 43%;
	width: 240px;
	height: 560px;
	background: rgba(255, 17, 51, .08);
	filter: blur(70px);
	transform: rotate(28deg);
}

.bc2-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, .65fr);
	align-items: center;
	gap: 80px;
	padding-top: 95px;
	padding-bottom: 115px;
}

.bc2-hero__content {
	max-width: 690px;
}

.bc2-eyebrow,
.bc2-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 22px;
	color: #ff6a7d;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.bc2-kicker span {
	display: inline-block;
	width: 28px;
	height: 1px;
	background: var(--bc2-red);
	box-shadow: 0 0 8px rgba(255, 45, 73, .65);
}

.bc2-hero__overline {
	margin: 0 0 3px;
	color: rgba(255, 255, 255, .68);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .38em;
}

.bc2-hero h1,
.bc2-section-heading h2,
.bc2-story__content h2,
.bc2-cta h2,
.bc2-page-hero h1,
.bc2-auth-page h1,
.bc2-dashboard-hero h1 {
	margin: 0;
	font-size: clamp(54px, 6vw, 91px);
	font-weight: 900;
	letter-spacing: -.055em;
	line-height: .95;
}

.bc2-hero h1 em,
.bc2-section-heading h2 em,
.bc2-story__content h2 em,
.bc2-cta h2 em,
.bc2-auth-page h1 em,
.bc2-dashboard-hero h1 em {
	color: var(--bc2-red);
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 500;
	font-style: italic;
	letter-spacing: -.045em;
	text-shadow: 0 0 30px rgba(255, 26, 58, .2);
}

.bc2-hero__lead {
	max-width: 620px;
	margin: 29px 0 0;
	color: #c3c7cf;
	font-size: 17px;
	line-height: 1.75;
}

.bc2-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 13px;
	margin-top: 34px;
}

.bc2-hero__trust {
	display: flex;
	flex-wrap: wrap;
	gap: 29px;
	margin-top: 45px;
	padding-top: 25px;
	border-top: 1px solid rgba(255, 255, 255, .1);
}

.bc2-hero__trust div {
	display: flex;
	flex-direction: column;
	padding-left: 12px;
	border-left: 2px solid rgba(255, 45, 73, .48);
}

.bc2-hero__trust strong {
	color: #fff;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.bc2-hero__trust span {
	color: var(--bc2-muted);
	font-size: 10px;
}

.bc2-server-widget {
	position: relative;
	align-self: end;
	padding: 25px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .15);
	border-radius: 19px;
	background: linear-gradient(145deg, rgba(17, 19, 25, .88), rgba(7, 8, 11, .78));
	box-shadow: 0 28px 70px rgba(0, 0, 0, .44), inset 0 1px rgba(255, 255, 255, .06);
	backdrop-filter: blur(18px);
}

.bc2-server-widget::before {
	content: "";
	position: absolute;
	top: -90px;
	right: -60px;
	width: 190px;
	height: 190px;
	border-radius: 50%;
	background: rgba(255, 28, 59, .2);
	filter: blur(52px);
}

.bc2-server-widget__top {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding-bottom: 19px;
	border-bottom: 1px solid var(--bc2-border);
}

.bc2-server-widget__label {
	color: var(--bc2-red-light);
	font-size: 8px;
	font-weight: 900;
	letter-spacing: .24em;
}

.bc2-server-widget h2 {
	margin: 5px 0 0;
	font-size: 20px;
	letter-spacing: -.02em;
}

.bc2-status-pill {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 5px 9px;
	border: 1px solid rgba(66, 221, 138, .2);
	border-radius: 99px;
	background: rgba(66, 221, 138, .08);
	color: #69eaa0;
	font-size: 8px;
	font-weight: 850;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.bc2-status-pill i {
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 99px;
	background: currentColor;
	box-shadow: 0 0 7px currentColor;
}

.bc2-status-pill--offline,
.bc2-status-pill--setup,
.bc2-status-pill.is-muted {
	border-color: rgba(255, 189, 74, .2);
	background: rgba(255, 189, 74, .08);
	color: var(--bc2-yellow);
}

.bc2-status-pill--small {
	padding: 4px 8px;
	font-size: 7px;
}

.bc2-server-widget__meter {
	padding: 20px 0 17px;
}

.bc2-server-widget__number {
	display: flex;
	align-items: baseline;
	gap: 6px;
	margin-bottom: 11px;
}

.bc2-server-widget__number strong {
	font-size: 34px;
	font-weight: 850;
	line-height: 1;
}

.bc2-server-widget__number span {
	color: var(--bc2-muted);
	font-size: 11px;
}

.bc2-progress {
	height: 5px;
	overflow: hidden;
	border-radius: 99px;
	background: rgba(255, 255, 255, .08);
}

.bc2-progress span {
	display: block;
	height: 100%;
	min-width: 2px;
	border-radius: inherit;
	background: linear-gradient(90deg, #a80f28, #ff3b55);
	box-shadow: 0 0 10px rgba(255, 45, 73, .6);
}

.bc2-server-widget__info {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	padding-bottom: 18px;
}

.bc2-server-widget__info div {
	padding: 10px;
	border: 1px solid rgba(255, 255, 255, .06);
	border-radius: 9px;
	background: rgba(255, 255, 255, .025);
}

.bc2-server-widget__info span,
.bc2-server-widget__info strong {
	display: block;
}

.bc2-server-widget__info span {
	color: var(--bc2-muted-2);
	font-size: 7px;
	font-weight: 750;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.bc2-server-widget__info strong {
	margin-top: 3px;
	font-size: 10px;
}

.bc2-server-widget > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 16px;
	border-top: 1px solid var(--bc2-border);
	color: #bec2cb;
	font-size: 9px;
	font-weight: 750;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.bc2-server-widget > a span {
	color: var(--bc2-red-light);
}

.bc2-scroll-cue {
	position: absolute;
	bottom: 21px;
	left: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	color: rgba(255, 255, 255, .42);
	font-size: 7px;
	font-weight: 800;
	letter-spacing: .2em;
	text-transform: uppercase;
	transform: translateX(-50%);
}

.bc2-scroll-cue span {
	position: relative;
	width: 1px;
	height: 32px;
	overflow: hidden;
	background: rgba(255, 255, 255, .15);
}

.bc2-scroll-cue span::after {
	content: "";
	position: absolute;
	top: -12px;
	left: 0;
	width: 1px;
	height: 12px;
	background: var(--bc2-red);
	animation: bc2-scroll 1.7s infinite;
}

@keyframes bc2-scroll {
	to { top: 38px; }
}

.bc2-stats-strip {
	border-bottom: 1px solid var(--bc2-border);
	background: linear-gradient(90deg, #0b0d11, #101218 50%, #0b0d11);
}

.bc2-stats-strip .bc2-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.bc2-stats-strip div div {
	position: relative;
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 10px;
	padding: 24px;
}

.bc2-stats-strip div div + div {
	border-left: 1px solid var(--bc2-border);
}

.bc2-stats-strip strong {
	font-size: 21px;
	font-weight: 850;
}

.bc2-stats-strip span {
	color: var(--bc2-muted);
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.bc2-section {
	position: relative;
	padding: 130px 0;
}

.bc2-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 60px;
	margin-bottom: 65px;
}

.bc2-section-heading h2,
.bc2-story__content h2,
.bc2-cta h2 {
	font-size: clamp(44px, 5vw, 67px);
}

.bc2-section-heading > p {
	max-width: 480px;
	margin: 0 0 7px;
	color: var(--bc2-muted);
	font-size: 14px;
	line-height: 1.8;
}

.bc2-section-heading--center {
	display: grid;
	justify-content: center;
	text-align: center;
}

.bc2-section-heading--center > p {
	margin: -38px auto 0;
}

.bc2-section-heading--center .bc2-kicker {
	justify-content: center;
}

.bc2-features {
	overflow: hidden;
	background:
		radial-gradient(circle at 50% 100%, rgba(139, 11, 33, .13), transparent 33rem),
		linear-gradient(180deg, #08090c, #0b0d12);
}

.bc2-features::before {
	content: "BC2";
	position: absolute;
	right: -2vw;
	bottom: -90px;
	color: transparent;
	font-size: 340px;
	font-weight: 950;
	letter-spacing: -.09em;
	-webkit-text-stroke: 1px rgba(255, 255, 255, .025);
	line-height: 1;
}

.bc2-feature-grid {
	position: relative;
	display: grid;
	grid-template-columns: 1.1fr .85fr .85fr;
	gap: 14px;
}

.bc2-feature-card {
	position: relative;
	min-height: 300px;
	padding: 34px;
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: var(--bc2-radius);
	background: linear-gradient(145deg, rgba(24, 27, 36, .85), rgba(13, 15, 21, .9));
	transition: transform .35s var(--bc2-ease), border-color .35s ease, background .35s ease;
}

.bc2-feature-card:nth-child(4) {
	grid-column: 1 / 2;
}

.bc2-feature-card--wide:last-child {
	grid-column: 2 / 4;
}

.bc2-feature-card::before {
	content: "";
	position: absolute;
	top: -100px;
	right: -100px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: rgba(255, 32, 65, .1);
	filter: blur(55px);
	opacity: 0;
	transition: opacity .35s ease;
}

.bc2-feature-card:hover {
	z-index: 2;
	border-color: rgba(255, 53, 79, .3);
	background: linear-gradient(145deg, rgba(31, 24, 31, .94), rgba(13, 15, 21, .95));
	transform: translateY(-7px);
}

.bc2-feature-card:hover::before {
	opacity: 1;
}

.bc2-feature-card__number {
	position: absolute;
	top: 21px;
	right: 25px;
	color: rgba(255, 255, 255, .22);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .16em;
}

.bc2-feature-card__icon {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	margin-bottom: 50px;
	border: 1px solid rgba(255, 59, 84, .26);
	border-radius: 13px;
	background: rgba(255, 45, 73, .07);
	color: var(--bc2-red-light);
	font-size: 22px;
	box-shadow: inset 0 0 22px rgba(255, 45, 73, .08);
}

.bc2-feature-card h3 {
	margin: 0;
	font-size: 21px;
	letter-spacing: -.02em;
}

.bc2-feature-card p {
	max-width: 460px;
	margin: 10px 0 0;
	color: var(--bc2-muted);
	font-size: 12px;
	line-height: 1.75;
}

.bc2-feature-card__line {
	position: absolute;
	right: 34px;
	bottom: 30px;
	left: 34px;
	height: 1px;
	overflow: hidden;
	background: rgba(255, 255, 255, .06);
}

.bc2-feature-card__line::after {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	background: linear-gradient(90deg, var(--bc2-red), transparent);
	transition: width .55s var(--bc2-ease);
}

.bc2-feature-card:hover .bc2-feature-card__line::after {
	width: 72%;
}

.bc2-story {
	overflow: hidden;
	background:
		linear-gradient(90deg, transparent 49.95%, rgba(255, 255, 255, .025) 50%, transparent 50.05%),
		var(--bc2-bg);
}

.bc2-story__grid {
	display: grid;
	grid-template-columns: 1fr .9fr;
	align-items: center;
	gap: 110px;
}

.bc2-story__visual {
	position: relative;
	min-height: 580px;
}

.bc2-story__photo {
	position: absolute;
	inset: 0 42px 42px 0;
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: 4px 90px 4px 4px;
	background:
		linear-gradient(0deg, rgba(7, 8, 11, .75), transparent 55%),
		linear-gradient(90deg, rgba(153, 4, 30, .22), transparent 65%),
		url("../images/berlin-night.webp") 30% center / cover no-repeat;
	filter: saturate(.75) contrast(1.08);
}

.bc2-story__photo::after {
	content: "";
	position: absolute;
	inset: 0;
	border: 1px solid rgba(255, 53, 79, .08);
	background: linear-gradient(135deg, transparent 65%, rgba(255, 38, 68, .14));
}

.bc2-story__badge {
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 17px 19px;
	border: 1px solid rgba(255, 66, 90, .2);
	border-radius: 15px;
	background: #111318;
	box-shadow: 0 15px 40px rgba(0, 0, 0, .4);
}

.bc2-story__badge strong {
	color: var(--bc2-red);
	font-size: 22px;
	font-style: italic;
}

.bc2-story__badge span {
	color: #bfc3cc;
	font-size: 7px;
	font-weight: 800;
	letter-spacing: .12em;
	line-height: 1.6;
}

.bc2-story__coordinates {
	position: absolute;
	top: 35px;
	left: -21px;
	padding: 11px 12px;
	border-left: 1px solid var(--bc2-red);
	background: rgba(7, 8, 11, .7);
	color: rgba(255, 255, 255, .5);
	font-family: monospace;
	font-size: 8px;
	letter-spacing: .1em;
}

.bc2-story__content > p:not(.bc2-kicker) {
	margin: 25px 0 0;
	color: var(--bc2-muted);
	font-size: 14px;
	line-height: 1.9;
}

.bc2-check-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 18px;
	padding: 25px 0 0;
	margin: 25px 0;
	border-top: 1px solid var(--bc2-border);
	list-style: none;
}

.bc2-check-list li {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #d7dae0;
	font-size: 11px;
	font-weight: 650;
}

.bc2-check-list span {
	display: grid;
	place-items: center;
	width: 19px;
	height: 19px;
	border: 1px solid rgba(255, 45, 73, .3);
	border-radius: 99px;
	background: rgba(255, 45, 73, .07);
	color: var(--bc2-red-light);
	font-size: 9px;
}

.bc2-text-link {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	color: #fff;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.bc2-text-link span {
	color: var(--bc2-red-light);
	transition: transform .2s ease;
}

.bc2-text-link:hover span {
	transform: translateX(5px);
}

.bc2-factions-section {
	background:
		radial-gradient(circle at 50% 0, rgba(155, 10, 34, .09), transparent 28rem),
		#090a0e;
}

.bc2-faction-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.bc2-faction-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 360px;
	padding: 26px;
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: var(--bc2-radius);
	background: linear-gradient(145deg, #151820, #0e1016);
	transition: .3s var(--bc2-ease);
}

.bc2-faction-card::after {
	content: "";
	position: absolute;
	right: -70px;
	bottom: -70px;
	width: 160px;
	height: 160px;
	border: 1px solid rgba(255, 255, 255, .04);
	border-radius: 50%;
	box-shadow: 0 0 0 25px rgba(255, 255, 255, .015), 0 0 0 50px rgba(255, 255, 255, .01);
}

.bc2-faction-card:hover {
	border-color: rgba(255, 52, 79, .3);
	transform: translateY(-7px);
	box-shadow: 0 22px 55px rgba(0, 0, 0, .3);
}

.bc2-faction-card__top {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 13px;
	margin-bottom: 44px;
}

.bc2-faction-card__seal {
	display: grid;
	place-items: center;
	width: 55px;
	height: 55px;
	border: 1px solid rgba(255, 63, 89, .27);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 45, 73, .13), rgba(255, 45, 73, .02));
	color: #ff6a7e;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .08em;
	box-shadow: inset 0 0 22px rgba(255, 45, 73, .1);
}

.bc2-faction-card > p {
	margin: 0 0 7px;
	color: var(--bc2-red-light);
	font-size: 7px;
	font-weight: 900;
	letter-spacing: .18em;
}

.bc2-faction-card h2,
.bc2-faction-card h3 {
	position: relative;
	z-index: 1;
	margin: 0;
	font-size: 21px;
	letter-spacing: -.02em;
}

.bc2-faction-card > div:not(.bc2-faction-card__top),
.bc2-faction-card__description {
	position: relative;
	z-index: 1;
	margin: 12px 0 22px;
	color: var(--bc2-muted);
	font-size: 11px;
	line-height: 1.75;
}

.bc2-faction-card__description p {
	margin: 0;
}

.bc2-faction-card > a {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 15px;
	margin-top: auto;
	border-top: 1px solid var(--bc2-border);
	color: #d8dbe1;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.bc2-faction-card > a span {
	color: var(--bc2-red-light);
}

.bc2-center-action {
	display: flex;
	justify-content: center;
	margin-top: 38px;
}

.bc2-news-section {
	background: var(--bc2-bg);
}

.bc2-news-grid {
	display: grid;
	grid-template-columns: 1.4fr .8fr .8fr;
	gap: 16px;
}

.bc2-news-card {
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: var(--bc2-radius);
	background: var(--bc2-surface);
	transition: .3s var(--bc2-ease);
}

.bc2-news-card:hover {
	border-color: rgba(255, 54, 81, .28);
	transform: translateY(-5px);
}

.bc2-news-card__visual {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 185px;
	overflow: hidden;
	border-bottom: 1px solid var(--bc2-border);
	background:
		linear-gradient(135deg, rgba(7, 8, 11, .15), rgba(111, 6, 24, .55)),
		url("../images/berlin-night.webp") center / cover no-repeat;
}

.bc2-news-card--featured .bc2-news-card__visual {
	min-height: 260px;
}

.bc2-news-card__visual img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bc2-news-card__visual > span {
	color: rgba(255, 255, 255, .16);
	font-size: 72px;
	font-weight: 950;
	font-style: italic;
	-webkit-text-stroke: 1px rgba(255, 255, 255, .25);
}

.bc2-news-card__body {
	padding: 24px;
}

.bc2-news-card__body > p {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 12px;
	color: var(--bc2-muted-2);
	font-size: 7px;
	font-weight: 800;
	letter-spacing: .12em;
}

.bc2-news-card__body > p span {
	padding-left: 9px;
	border-left: 1px solid var(--bc2-border);
	color: var(--bc2-red-light);
}

.bc2-news-card h3 {
	margin: 0;
	font-size: 19px;
	line-height: 1.3;
}

.bc2-news-card__body > div {
	margin: 10px 0 18px;
	color: var(--bc2-muted);
	font-size: 11px;
	line-height: 1.7;
}

.bc2-news-card__body > a {
	display: inline-flex;
	gap: 10px;
	color: #dfe2e7;
	font-size: 8px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.bc2-news-card__body > a span {
	color: var(--bc2-red-light);
}

.bc2-cta {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 650px;
	overflow: hidden;
	text-align: center;
	isolation: isolate;
}

.bc2-cta__image {
	position: absolute;
	z-index: -2;
	inset: 0;
	background:
		linear-gradient(0deg, #07080b 0, rgba(7, 8, 11, .34) 45%, #07080b 100%),
		linear-gradient(90deg, rgba(7, 8, 11, .82), rgba(125, 6, 27, .25), rgba(7, 8, 11, .82)),
		url("../images/berlin-night.webp") center 65% / cover no-repeat;
	filter: saturate(.85);
}

.bc2-cta::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background: radial-gradient(circle at 50% 55%, rgba(255, 33, 65, .1), transparent 36rem);
}

.bc2-cta .bc2-container {
	max-width: 790px;
}

.bc2-cta .bc2-kicker {
	justify-content: center;
}

.bc2-cta p:not(.bc2-kicker) {
	max-width: 560px;
	margin: 24px auto 0;
	color: #b7bbc4;
	font-size: 14px;
}

.bc2-cta .bc2-container > div {
	display: flex;
	justify-content: center;
	gap: 13px;
	margin-top: 31px;
}

.bc2-footer {
	position: relative;
	overflow: hidden;
	border-top: 1px solid var(--bc2-border);
	background: #08090c;
}

.bc2-footer__glow {
	position: absolute;
	top: -90px;
	left: 12%;
	width: 440px;
	height: 170px;
	border-radius: 50%;
	background: rgba(151, 8, 32, .13);
	filter: blur(70px);
}

.bc2-footer__top {
	position: relative;
	display: grid;
	grid-template-columns: 2fr repeat(3, 1fr);
	gap: 70px;
	padding: 80px 0 60px;
}

.bc2-footer__brand > p {
	max-width: 350px;
	margin: 21px 0;
	color: var(--bc2-muted);
	font-size: 12px;
	line-height: 1.8;
}

.bc2-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
}

.bc2-footer__social a {
	padding: 6px 10px;
	border: 1px solid var(--bc2-border);
	border-radius: 7px;
	color: #aeb3bd;
	font-size: 8px;
	font-weight: 750;
	text-transform: uppercase;
}

.bc2-footer__column {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.bc2-footer__column h2 {
	margin: 4px 0 13px;
	color: #fff;
	font-size: 9px;
	font-weight: 850;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.bc2-footer__column a {
	color: var(--bc2-muted);
	font-size: 10px;
	transition: color .2s ease, transform .2s ease;
}

.bc2-footer__column a:hover {
	color: #fff;
	transform: translateX(3px);
}

.bc2-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: 22px 0;
	border-top: 1px solid var(--bc2-border);
	color: var(--bc2-muted-2);
	font-size: 9px;
}

.bc2-footer__bottom p {
	margin: 0;
}

.bc2-footer__bottom div {
	display: flex;
	gap: 24px;
}

/* Standard content */
.bc2-page-main {
	min-height: 65vh;
	padding-bottom: 110px;
}

.bc2-page-hero {
	position: relative;
	display: flex;
	align-items: end;
	min-height: 360px;
	padding: 110px 0 60px;
	overflow: hidden;
	border-bottom: 1px solid var(--bc2-border);
	background:
		linear-gradient(90deg, rgba(7, 8, 11, .98), rgba(7, 8, 11, .7)),
		url("../images/berlin-night.webp") center 51% / cover no-repeat;
}

.bc2-page-hero::after {
	content: "";
	position: absolute;
	top: -100px;
	left: 28%;
	width: 350px;
	height: 250px;
	border-radius: 50%;
	background: rgba(255, 31, 62, .14);
	filter: blur(80px);
}

.bc2-page-hero .bc2-container {
	position: relative;
	z-index: 1;
}

.bc2-page-hero h1 {
	max-width: 900px;
	font-size: clamp(44px, 6vw, 74px);
}

.bc2-page-hero .bc2-container > p:not(.bc2-kicker) {
	max-width: 660px;
	margin: 18px 0 0;
	color: #b7bbc5;
}

.bc2-prose {
	max-width: 860px;
	padding: 62px 0;
	margin: 0 auto;
	color: #c3c7cf;
	font-size: 15px;
}

.bc2-prose h2,
.bc2-prose h3,
.bc2-prose h4 {
	margin: 1.7em 0 .5em;
	color: #fff;
	line-height: 1.2;
}

.bc2-prose h2 {
	font-size: 34px;
}

.bc2-prose a {
	color: var(--bc2-red-light);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.bc2-prose blockquote {
	padding: 20px 25px;
	margin: 30px 0;
	border-left: 2px solid var(--bc2-red);
	background: rgba(255, 255, 255, .035);
}

.bc2-article-cover {
	margin-bottom: 35px;
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: var(--bc2-radius);
}

.bc2-post-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	padding: 65px 0 35px;
}

.bc2-post-card {
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: var(--bc2-radius);
	background: var(--bc2-surface);
}

.bc2-post-card > div {
	padding: 24px;
}

.bc2-post-card p {
	color: var(--bc2-muted);
	font-size: 11px;
}

.bc2-post-card h2 {
	font-size: 20px;
	line-height: 1.25;
}

.bc2-error-page {
	display: grid;
	place-items: center;
	min-height: 72vh;
	text-align: center;
	background: radial-gradient(circle at center, rgba(162, 8, 34, .14), transparent 30rem);
}

.bc2-error-page .bc2-container {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.bc2-error-page p {
	margin: 0;
	color: transparent;
	font-size: clamp(120px, 20vw, 260px);
	font-weight: 950;
	letter-spacing: -.09em;
	-webkit-text-stroke: 1px rgba(255, 57, 83, .28);
	line-height: .8;
}

.bc2-error-page h1 {
	margin: 25px 0 5px;
	font-size: 38px;
}

.bc2-error-page > div > span {
	margin-bottom: 28px;
	color: var(--bc2-muted);
}

/* Rules */
.bc2-page-hero--rules {
	min-height: 450px;
}

.bc2-rule-meta {
	display: flex;
	gap: 22px;
	margin-top: 24px;
	color: var(--bc2-muted-2);
	font-family: monospace;
	font-size: 9px;
	letter-spacing: .08em;
}

.bc2-rules-layout {
	display: grid;
	grid-template-columns: 245px 1fr;
	gap: 70px;
	padding-top: 65px;
}

.bc2-rules-nav {
	position: sticky;
	top: 120px;
	align-self: start;
	display: grid;
	gap: 5px;
}

.bc2-rules-nav p {
	margin: 0 0 12px;
	color: var(--bc2-muted-2);
	font-size: 8px;
	font-weight: 850;
	letter-spacing: .16em;
}

.bc2-rules-nav a {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 10px;
	border-left: 1px solid var(--bc2-border);
	color: var(--bc2-muted);
	font-size: 10px;
	transition: .2s ease;
}

.bc2-rules-nav a:hover {
	border-left-color: var(--bc2-red);
	background: rgba(255, 45, 73, .04);
	color: #fff;
}

.bc2-rules-nav a span {
	color: var(--bc2-red-light);
	font-family: monospace;
	font-size: 8px;
}

.bc2-rules-content {
	min-width: 0;
}

.bc2-rule-group {
	padding-top: 30px;
	margin-bottom: 55px;
	scroll-margin-top: 120px;
}

.bc2-rule-group > header {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-bottom: 17px;
}

.bc2-rule-group > header > span {
	color: var(--bc2-red);
	font-family: monospace;
	font-size: 11px;
	font-weight: 850;
}

.bc2-rule-group h2 {
	margin: 0;
	font-size: 25px;
	letter-spacing: -.025em;
}

.bc2-rule-group > div {
	display: grid;
	gap: 7px;
}

.bc2-rule {
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: 12px;
	background: rgba(255, 255, 255, .018);
}

.bc2-rule button {
	display: grid;
	grid-template-columns: 45px 1fr auto;
	align-items: center;
	gap: 15px;
	width: 100%;
	padding: 17px 19px;
	border: 0;
	background: transparent;
	color: #fff;
	text-align: left;
	cursor: pointer;
}

.bc2-rule button > span {
	color: var(--bc2-red-light);
	font-family: monospace;
	font-size: 9px;
}

.bc2-rule button strong {
	font-size: 11px;
	font-weight: 650;
}

.bc2-rule button i {
	color: var(--bc2-muted);
	font-style: normal;
	font-size: 18px;
	transition: transform .2s ease;
}

.bc2-rule button[aria-expanded="true"] i {
	color: var(--bc2-red-light);
	transform: rotate(45deg);
}

.bc2-rule > div {
	display: grid;
	grid-template-rows: 0fr;
	border-top: 0 solid var(--bc2-border);
	transition: grid-template-rows .28s var(--bc2-ease), border-width .2s ease;
}

.bc2-rule > div p {
	min-height: 0;
	padding: 0 79px;
	margin: 0;
	overflow: hidden;
	color: var(--bc2-muted);
	font-size: 11px;
	line-height: 1.75;
	transition: padding .28s var(--bc2-ease);
}

.bc2-rule.is-open > div {
	grid-template-rows: 1fr;
	border-top-width: 1px;
}

.bc2-rule.is-open > div p {
	padding-top: 16px;
	padding-bottom: 18px;
}

/* Factions and status */
.bc2-factions-directory {
	padding-top: 55px;
}

.bc2-directory-toolbar,
.bc2-overall-status {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 16px 20px;
	margin-bottom: 25px;
	border: 1px solid var(--bc2-border);
	border-radius: 13px;
	background: var(--bc2-surface);
}

.bc2-directory-toolbar > div {
	display: flex;
	align-items: center;
	gap: 9px;
	color: var(--bc2-muted);
	font-size: 10px;
}

.bc2-directory-toolbar strong {
	color: #fff;
}

.bc2-faction-grid--directory {
	grid-template-columns: repeat(3, 1fr);
}

.bc2-faction-grid--directory .bc2-faction-card {
	min-height: 380px;
}

.bc2-overall-status {
	margin-bottom: 18px;
	border-color: rgba(255, 189, 74, .16);
}

.bc2-overall-status.is-online {
	border-color: rgba(66, 221, 138, .16);
}

.bc2-overall-status > div {
	display: flex;
	align-items: center;
	gap: 11px;
}

.bc2-overall-status time {
	color: var(--bc2-muted-2);
	font-size: 9px;
}

.bc2-service-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.bc2-service-card {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 16px;
	padding: 22px;
	border: 1px solid var(--bc2-border);
	border-radius: 14px;
	background: linear-gradient(145deg, var(--bc2-surface), #0d0f14);
}

.bc2-service-card__icon {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border: 1px solid rgba(255, 52, 78, .23);
	border-radius: 12px;
	background: rgba(255, 45, 73, .07);
	color: var(--bc2-red-light);
	font-size: 11px;
	font-weight: 900;
}

.bc2-service-card p,
.bc2-service-card h2,
.bc2-service-card span {
	margin: 0;
}

.bc2-service-card p {
	color: var(--bc2-red-light);
	font-size: 7px;
	font-weight: 850;
	letter-spacing: .15em;
}

.bc2-service-card h2 {
	margin-top: 2px;
	font-size: 17px;
}

.bc2-service-card > div:nth-child(2) > span {
	color: var(--bc2-muted);
	font-size: 9px;
}

.bc2-status-detail-grid {
	display: grid;
	grid-template-columns: .75fr 1.25fr;
	gap: 14px;
	margin-top: 14px;
}

.bc2-status-player-count {
	display: flex;
	align-items: baseline;
	gap: 7px;
	margin: 25px 0 15px;
}

.bc2-status-player-count strong {
	font-size: 48px;
	line-height: 1;
}

.bc2-status-player-count span {
	color: var(--bc2-muted);
	font-size: 12px;
}

.bc2-status-detail-grid .bc2-progress {
	margin-bottom: 28px;
}

.bc2-incident-empty {
	display: grid;
	place-items: center;
	padding: 34px 20px;
	text-align: center;
}

.bc2-incident-empty > span {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border: 1px solid rgba(66, 221, 138, .2);
	border-radius: 50%;
	background: rgba(66, 221, 138, .07);
	color: var(--bc2-green);
}

.bc2-incident-empty h2 {
	margin: 14px 0 0;
	font-size: 17px;
}

.bc2-incident-empty p {
	margin: 5px 0 0;
	color: var(--bc2-muted);
	font-size: 10px;
}

/* Alerts */
.bc2-alert {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 11px;
	padding: 14px 43px 14px 16px;
	margin-bottom: 18px;
	border: 1px solid rgba(101, 116, 255, .2);
	border-radius: 11px;
	background: rgba(101, 116, 255, .07);
	color: #c8cdfc;
	font-size: 11px;
}

.bc2-alert p {
	margin: 0;
}

.bc2-alert__dot {
	width: 7px;
	height: 7px;
	margin-top: 6px;
	border-radius: 99px;
	background: var(--bc2-blue);
	box-shadow: 0 0 8px var(--bc2-blue);
}

.bc2-alert--success {
	border-color: rgba(66, 221, 138, .2);
	background: rgba(66, 221, 138, .07);
	color: #9cefc0;
}

.bc2-alert--success .bc2-alert__dot {
	background: var(--bc2-green);
	box-shadow: 0 0 8px var(--bc2-green);
}

.bc2-alert--error {
	border-color: rgba(255, 45, 73, .23);
	background: rgba(255, 45, 73, .08);
	color: #ff9caa;
}

.bc2-alert--error .bc2-alert__dot {
	background: var(--bc2-red);
	box-shadow: 0 0 8px var(--bc2-red);
}

.bc2-alert__close {
	position: absolute;
	top: 50%;
	right: 12px;
	padding: 3px;
	border: 0;
	background: transparent;
	color: currentColor;
	font-size: 18px;
	cursor: pointer;
	transform: translateY(-50%);
}

/* Authentication */
.bc2-auth-page {
	display: grid;
	grid-template-columns: minmax(420px, .95fr) minmax(500px, 1.05fr);
	min-height: calc(100vh - 116px);
}

.bc2-auth-page__visual {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 70px;
	overflow: hidden;
	border-right: 1px solid var(--bc2-border);
	background:
		linear-gradient(90deg, rgba(7, 8, 11, .5), rgba(7, 8, 11, .84)),
		linear-gradient(0deg, rgba(7, 8, 11, .9), transparent 60%),
		url("../images/berlin-night.webp") center / cover no-repeat;
}

.bc2-auth-page__visual::after {
	content: "";
	position: absolute;
	right: -100px;
	bottom: -120px;
	width: 430px;
	height: 430px;
	border: 1px solid rgba(255, 255, 255, .05);
	border-radius: 50%;
	box-shadow: 0 0 0 70px rgba(255, 255, 255, .015), 0 0 0 140px rgba(255, 255, 255, .01);
}

.bc2-auth-page__visual-inner {
	position: relative;
	z-index: 1;
	width: min(100%, 540px);
}

.bc2-auth-page__visual .bc2-logo-mark {
	margin-bottom: 70px;
}

.bc2-auth-page h1 {
	font-size: clamp(48px, 5vw, 70px);
}

.bc2-auth-page__visual-inner > p:not(.bc2-kicker) {
	max-width: 500px;
	margin: 24px 0 0;
	color: #b7bbc4;
	font-size: 14px;
}

.bc2-auth-points {
	display: grid;
	gap: 12px;
	margin-top: 35px;
}

.bc2-auth-points span {
	display: flex;
	align-items: center;
	gap: 13px;
	color: #cdd0d7;
	font-size: 10px;
	font-weight: 650;
}

.bc2-auth-points b {
	display: grid;
	place-items: center;
	width: 26px;
	height: 26px;
	border: 1px solid rgba(255, 45, 73, .22);
	border-radius: 7px;
	background: rgba(255, 45, 73, .07);
	color: var(--bc2-red-light);
	font-family: monospace;
	font-size: 8px;
}

.bc2-auth-page__form {
	display: grid;
	place-items: center;
	padding: 60px;
	background:
		radial-gradient(circle at 100% 0, rgba(137, 7, 30, .13), transparent 24rem),
		#090a0e;
}

.bc2-auth-card {
	width: min(100%, 510px);
}

.bc2-auth-card__head {
	margin-bottom: 28px;
}

.bc2-auth-card__head p {
	margin: 0 0 5px;
	color: var(--bc2-red-light);
	font-size: 8px;
	font-weight: 900;
	letter-spacing: .2em;
}

.bc2-auth-card__head h2 {
	margin: 0;
	font-size: 35px;
	letter-spacing: -.035em;
}

.bc2-auth-card__head span {
	display: block;
	margin-top: 6px;
	color: var(--bc2-muted);
	font-size: 11px;
}

.bc2-auth-card__head a {
	color: var(--bc2-red-light);
	font-weight: 750;
}

.bc2-discord-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 50px;
	border: 1px solid rgba(119, 133, 255, .4);
	border-radius: 10px;
	background: linear-gradient(135deg, rgba(101, 116, 255, .2), rgba(79, 94, 214, .12));
	color: #e3e5ff;
	font-size: 11px;
	font-weight: 800;
	transition: .2s ease;
}

.bc2-discord-button:hover {
	background: linear-gradient(135deg, #6574ff, #4f5ed6);
	transform: translateY(-2px);
}

.bc2-discord-button svg {
	width: 19px;
	fill: currentColor;
}

.bc2-divider {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 23px 0;
	color: var(--bc2-muted-2);
	font-size: 8px;
	text-transform: uppercase;
}

.bc2-divider::before,
.bc2-divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--bc2-border);
}

.bc2-form {
	display: grid;
	gap: 15px;
}

.bc2-form label {
	display: grid;
	gap: 7px;
}

.bc2-form label > span,
.bc2-auth-card .login-username label,
.bc2-auth-card .login-password label {
	color: #c8ccd4;
	font-size: 9px;
	font-weight: 750;
	letter-spacing: .025em;
}

.bc2-form input:not([type="checkbox"]):not([type="file"]),
.bc2-form select,
.bc2-form textarea,
.bc2-auth-card .input,
.bc2-admin-table select {
	width: 100%;
	min-height: 46px;
	padding: 11px 13px;
	border: 1px solid var(--bc2-border);
	border-radius: 9px;
	outline: 0;
	background: rgba(255, 255, 255, .025);
	color: #fff;
	font-size: 11px;
	transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.bc2-form textarea {
	resize: vertical;
}

.bc2-form select,
.bc2-admin-table select {
	color-scheme: dark;
}

.bc2-form input:focus,
.bc2-form select:focus,
.bc2-form textarea:focus,
.bc2-auth-card .input:focus {
	border-color: rgba(255, 58, 83, .55);
	background: rgba(255, 255, 255, .04);
	box-shadow: 0 0 0 3px rgba(255, 45, 73, .08);
}

.bc2-form__columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.bc2-checkbox {
	display: flex !important;
	grid-template-columns: auto 1fr;
	align-items: flex-start;
	gap: 10px !important;
	color: var(--bc2-muted);
	font-size: 9px;
	line-height: 1.6;
	cursor: pointer;
}

.bc2-checkbox input {
	width: 15px;
	height: 15px;
	margin-top: 2px;
	accent-color: var(--bc2-red);
}

.bc2-checkbox a {
	color: var(--bc2-red-light);
}

.bc2-honeypot {
	position: absolute;
	left: -10000px;
}

.bc2-auth-card #loginform p {
	margin: 0 0 14px;
}

.bc2-auth-card .login-username,
.bc2-auth-card .login-password {
	display: grid;
	gap: 7px;
}

.bc2-auth-card .login-remember {
	color: var(--bc2-muted);
	font-size: 9px;
}

.bc2-auth-card .login-remember input {
	accent-color: var(--bc2-red);
}

.bc2-auth-card .login-submit {
	margin-top: 18px !important;
}

.bc2-auth-card .button-primary {
	width: 100%;
	min-height: 50px;
	border: 1px solid #ff3c55;
	border-radius: 10px;
	background: linear-gradient(135deg, #ff3853, #be122d);
	color: #fff;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .07em;
	text-transform: uppercase;
	cursor: pointer;
}

.bc2-auth-card__forgot {
	display: block;
	margin-top: -2px;
	color: var(--bc2-red-light);
	font-size: 9px;
	text-align: right;
}

.bc2-auth-card__security {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin: 25px 0 0;
	color: var(--bc2-muted-2);
	font-size: 8px;
}

.bc2-auth-card__security span {
	color: var(--bc2-green);
}

/* Shared dashboard */
.bc2-account-shell {
	min-height: 78vh;
	padding: 34px 0 80px;
	background:
		radial-gradient(circle at 85% 7%, rgba(136, 8, 30, .12), transparent 28rem),
		linear-gradient(180deg, #08090d, #07080b);
}

.bc2-account-layout {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	min-height: 720px;
	overflow: hidden;
	border: 1px solid var(--bc2-border);
	border-radius: 24px;
	background: #0b0d12;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .28);
}

.bc2-account-sidebar {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 25px 18px 18px;
	border-right: 1px solid var(--bc2-border);
	background:
		linear-gradient(180deg, rgba(58, 12, 23, .3), transparent 30%),
		#0e1016;
}

.bc2-account-sidebar__brand {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 0 7px 22px;
	border-bottom: 1px solid var(--bc2-border);
}

.bc2-account-sidebar__brand .bc2-logo-mark {
	width: 39px;
	height: 39px;
}

.bc2-account-sidebar__brand .bc2-logo-mark span {
	font-size: 24px;
}

.bc2-account-sidebar__brand > span {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}

.bc2-account-sidebar__brand strong {
	font-size: 10px;
	letter-spacing: .13em;
}

.bc2-account-sidebar__brand small {
	margin-top: 5px;
	color: var(--bc2-muted-2);
	font-size: 6px;
	font-weight: 750;
	letter-spacing: .2em;
}

.bc2-account-sidebar__user {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 19px 7px;
}

.bc2-account-sidebar__user > div:last-child {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.bc2-account-sidebar__user strong {
	max-width: 130px;
	overflow: hidden;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.bc2-account-sidebar__user span {
	color: var(--bc2-muted-2);
	font-size: 8px;
}

.bc2-avatar-wrap {
	position: relative;
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
}

.bc2-avatar-wrap img {
	width: 100%;
	height: 100%;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 11px;
	object-fit: cover;
}

.bc2-avatar-wrap i {
	position: absolute;
	right: -2px;
	bottom: -2px;
	width: 10px;
	height: 10px;
	border: 2px solid #0e1016;
	border-radius: 50%;
	background: var(--bc2-green);
}

.bc2-avatar-wrap--large {
	width: 85px;
	height: 85px;
}

.bc2-avatar-wrap--large img {
	border-radius: 22px;
}

.bc2-avatar-wrap--xlarge {
	width: 112px;
	height: 112px;
}

.bc2-avatar-wrap--xlarge img {
	border-radius: 25px;
}

.bc2-account-sidebar nav {
	display: grid;
	gap: 4px;
}

.bc2-account-sidebar nav > p {
	padding: 0 10px;
	margin: 15px 0 7px;
	color: #656c79;
	font-size: 7px;
	font-weight: 900;
	letter-spacing: .16em;
}

.bc2-account-sidebar nav a,
.bc2-account-sidebar__bottom a {
	display: flex;
	align-items: center;
	gap: 11px;
	min-height: 40px;
	padding: 0 11px;
	border: 1px solid transparent;
	border-radius: 9px;
	color: #9299a7;
	font-size: 9px;
	font-weight: 700;
	transition: .2s ease;
}

.bc2-account-sidebar nav a i,
.bc2-account-sidebar__bottom a i {
	display: grid;
	place-items: center;
	width: 18px;
	color: #767e8c;
	font-style: normal;
	font-size: 11px;
}

.bc2-account-sidebar nav a b {
	display: grid;
	place-items: center;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	margin-left: auto;
	border-radius: 99px;
	background: var(--bc2-red);
	color: #fff;
	font-size: 7px;
}

.bc2-account-sidebar nav a em {
	padding: 2px 5px;
	margin-left: auto;
	border: 1px solid rgba(255, 59, 85, .24);
	border-radius: 4px;
	color: var(--bc2-red-light);
	font-size: 5px;
	font-style: normal;
	letter-spacing: .08em;
}

.bc2-account-sidebar nav a:hover,
.bc2-account-sidebar nav a.is-active,
.bc2-account-sidebar__bottom a:hover {
	border-color: rgba(255, 60, 85, .14);
	background: rgba(255, 45, 73, .08);
	color: #fff;
}

.bc2-account-sidebar nav a.is-active {
	box-shadow: inset 2px 0 var(--bc2-red);
}

.bc2-account-sidebar nav a.is-active i {
	color: var(--bc2-red-light);
}

.bc2-account-sidebar__bottom {
	display: grid;
	gap: 2px;
	padding-top: 16px;
	margin-top: auto;
	border-top: 1px solid var(--bc2-border);
}

.bc2-account-content {
	min-width: 0;
	padding: 26px;
	background:
		radial-gradient(circle at 100% 0, rgba(120, 7, 28, .08), transparent 28rem),
		#0b0d12;
}

.bc2-account-mobile-head {
	display: none;
}

.bc2-dashboard-hero {
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 28px;
	min-height: 250px;
	padding: 35px 37px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 19px;
	background:
		linear-gradient(90deg, rgba(17, 20, 28, .98), rgba(19, 17, 25, .9) 63%, rgba(87, 10, 25, .6)),
		url("../images/berlin-night.webp") center / cover no-repeat;
}

.bc2-dashboard-hero::before {
	content: "BC2";
	position: absolute;
	right: 75px;
	bottom: -43px;
	color: transparent;
	font-size: 150px;
	font-weight: 950;
	letter-spacing: -.08em;
	-webkit-text-stroke: 1px rgba(255, 255, 255, .045);
	line-height: 1;
}

.bc2-dashboard-hero__content {
	position: relative;
	z-index: 1;
}

.bc2-dashboard-hero__content > p {
	margin: 0 0 11px;
	color: var(--bc2-red-light);
	font-size: 8px;
	font-weight: 900;
	letter-spacing: .2em;
}

.bc2-dashboard-hero h1 {
	font-size: clamp(36px, 4.1vw, 57px);
	line-height: .95;
}

.bc2-dashboard-hero__content > span {
	display: block;
	margin-top: 13px;
	color: #aeb4c0;
	font-size: 11px;
}

.bc2-dashboard-hero__content > div {
	display: flex;
	align-items: center;
	gap: 17px;
	margin-top: 22px;
}

.bc2-dashboard-hero__content > div > a:not(.bc2-button) {
	color: #9fa6b3;
	font-size: 8px;
	font-weight: 750;
	text-transform: uppercase;
}

.bc2-dashboard-hero__identity {
	position: relative;
	z-index: 1;
	display: flex;
	min-width: 120px;
	flex-direction: column;
	align-items: center;
}

.bc2-dashboard-hero__identity > span {
	margin-top: 10px;
	color: #757d8a;
	font-size: 6px;
	font-weight: 850;
	letter-spacing: .14em;
}

.bc2-dashboard-hero__identity > strong {
	margin-top: 2px;
	font-size: 8px;
	text-transform: uppercase;
}

.bc2-dashboard-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-top: 11px;
}

.bc2-dashboard-stats > a {
	display: flex;
	min-height: 119px;
	flex-direction: column;
	padding: 17px;
	border: 1px solid var(--bc2-border);
	border-radius: 13px;
	background: linear-gradient(145deg, var(--bc2-surface), #0e1016);
	transition: .25s var(--bc2-ease);
}

.bc2-dashboard-stats > a:hover {
	border-color: rgba(255, 52, 79, .25);
	transform: translateY(-3px);
}

.bc2-dashboard-stats > a > span {
	display: flex;
	align-items: center;
	gap: 7px;
	color: #818896;
	font-size: 7px;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.bc2-dashboard-stats > a > span i {
	color: var(--bc2-red-light);
	font-style: normal;
}

.bc2-dashboard-stats strong {
	margin-top: 7px;
	font-size: 19px;
	line-height: 1.15;
}

.bc2-dashboard-stats strong.is-connected {
	color: var(--bc2-green);
	font-size: 13px;
}

.bc2-dashboard-stats small {
	margin-top: auto;
	color: #686f7c;
	font-size: 7px;
}

.bc2-dashboard-grid,
.bc2-account-two-column,
.bc2-ticket-detail-grid {
	display: grid;
	grid-template-columns: 1.25fr .85fr;
	gap: 11px;
	margin-top: 11px;
}

.bc2-panel {
	padding: 24px;
	border: 1px solid var(--bc2-border);
	border-radius: 15px;
	background: linear-gradient(145deg, rgba(19, 22, 29, .95), rgba(13, 15, 20, .95));
	box-shadow: inset 0 1px rgba(255, 255, 255, .018);
}

.bc2-panel__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.bc2-panel__kicker {
	margin: 0 0 3px;
	color: var(--bc2-red-light);
	font-size: 7px;
	font-weight: 900;
	letter-spacing: .15em;
}

.bc2-panel h2,
.bc2-panel__head h2 {
	margin: 0;
	font-size: 16px;
	letter-spacing: -.02em;
}

.bc2-panel__head > a {
	color: #8d94a1;
	font-size: 7px;
	font-weight: 750;
	text-transform: uppercase;
}

.bc2-count-chip {
	display: grid;
	place-items: center;
	min-width: 29px;
	height: 24px;
	padding: 0 7px;
	border: 1px solid rgba(255, 57, 82, .2);
	border-radius: 7px;
	background: rgba(255, 45, 73, .06);
	color: var(--bc2-red-light);
	font-size: 8px;
	font-weight: 850;
}

.bc2-quick-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.bc2-quick-grid a {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 10px;
	min-height: 74px;
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 10px;
	background: rgba(255, 255, 255, .018);
	transition: .2s ease;
}

.bc2-quick-grid a:hover {
	border-color: rgba(255, 54, 80, .22);
	background: rgba(255, 45, 73, .045);
}

.bc2-quick-grid a > i {
	display: grid;
	place-items: center;
	width: 31px;
	height: 31px;
	border: 1px solid rgba(255, 55, 81, .18);
	border-radius: 8px;
	background: rgba(255, 45, 73, .05);
	color: var(--bc2-red-light);
	font-style: normal;
}

.bc2-quick-grid a span {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.bc2-quick-grid a strong {
	font-size: 9px;
}

.bc2-quick-grid a small {
	margin-top: 2px;
	color: #707784;
	font-size: 7px;
}

.bc2-quick-grid a > b {
	color: var(--bc2-red-light);
	font-size: 11px;
}

.bc2-connections-panel {
	display: flex;
	flex-direction: column;
}

.bc2-connection-row {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 10px;
	padding: 11px;
	margin-bottom: 7px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 10px;
}

.bc2-connection-row > i,
.bc2-connection-card__icon {
	display: grid;
	place-items: center;
	width: 35px;
	height: 35px;
	border-radius: 9px;
	color: #fff;
	font-style: normal;
	font-size: 11px;
	font-weight: 900;
}

.bc2-connection-row i.is-discord,
.bc2-connection-card__icon.is-discord {
	background: #6372e9;
}

.bc2-connection-row i.is-cfx,
.bc2-connection-card__icon.is-cfx {
	background: #f05a16;
}

.bc2-connection-row > span {
	display: flex;
	flex-direction: column;
}

.bc2-connection-row strong {
	font-size: 9px;
}

.bc2-connection-row small {
	color: #707784;
	font-size: 7px;
}

.bc2-connection-row > b {
	color: var(--bc2-yellow);
	font-size: 7px;
}

.bc2-connection-row > b.is-connected {
	color: var(--bc2-green);
}

.bc2-mini-server {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 10px;
	padding-top: 14px;
	margin-top: auto;
	border-top: 1px solid var(--bc2-border);
}

.bc2-mini-server > div {
	display: flex;
	flex-direction: column;
}

.bc2-mini-server strong {
	font-size: 9px;
}

.bc2-mini-server small {
	color: var(--bc2-muted-2);
	font-size: 7px;
}

.bc2-mini-server > a {
	color: var(--bc2-red-light);
}

.bc2-account-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	padding: 8px 3px 23px;
}

.bc2-account-heading > div > p {
	margin: 0 0 5px;
	color: var(--bc2-red-light);
	font-size: 7px;
	font-weight: 900;
	letter-spacing: .18em;
}

.bc2-account-heading h1 {
	margin: 0;
	font-size: 29px;
	letter-spacing: -.035em;
	line-height: 1.1;
}

.bc2-account-heading > div > span {
	display: block;
	margin-top: 7px;
	color: var(--bc2-muted);
	font-size: 10px;
}

.bc2-profile-form {
	padding: 28px;
}

.bc2-profile-form__avatar {
	display: flex;
	align-items: center;
	gap: 23px;
	padding-bottom: 27px;
	border-bottom: 1px solid var(--bc2-border);
}

.bc2-profile-form__avatar h2 {
	font-size: 17px;
}

.bc2-profile-form__avatar p {
	margin: 4px 0 10px;
	color: var(--bc2-muted);
	font-size: 9px;
}

.bc2-file-button {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 12px;
	overflow: hidden;
	border: 1px solid var(--bc2-border-bright);
	border-radius: 8px;
	color: #dddfe4;
	font-size: 8px;
	font-weight: 750;
	cursor: pointer;
}

.bc2-file-button input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.bc2-form__section {
	display: grid;
	gap: 15px;
	padding: 23px 0;
}

.bc2-form__section > div:first-child h2 {
	margin: 0;
}

.bc2-form__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 18px;
	padding-top: 19px;
	border-top: 1px solid var(--bc2-border);
}

.bc2-form__actions > a {
	color: var(--bc2-muted);
	font-size: 9px;
}

.bc2-account-two-column {
	grid-template-columns: 1fr 1fr;
	margin-top: 0;
}

.bc2-list,
.bc2-ticket-list {
	display: grid;
	gap: 7px;
}

.bc2-list-item {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 11px;
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 9px;
}

.bc2-list-item > i {
	display: grid;
	place-items: center;
	width: 33px;
	height: 33px;
	border-radius: 8px;
	background: rgba(255, 45, 73, .07);
	color: var(--bc2-red-light);
	font-style: normal;
}

.bc2-list-item > div {
	display: flex;
	flex-direction: column;
}

.bc2-list-item strong {
	font-size: 9px;
}

.bc2-list-item span {
	color: var(--bc2-muted-2);
	font-size: 7px;
}

.bc2-status-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 7px;
	border: 1px solid rgba(255, 189, 74, .2);
	border-radius: 6px;
	background: rgba(255, 189, 74, .07);
	color: var(--bc2-yellow);
	font-size: 6px;
	font-weight: 850;
	letter-spacing: .035em;
	text-transform: uppercase;
	white-space: nowrap;
}

.bc2-status-badge--open,
.bc2-status-badge--pending {
	border-color: rgba(255, 189, 74, .2);
	background: rgba(255, 189, 74, .07);
	color: var(--bc2-yellow);
}

.bc2-status-badge--in_progress,
.bc2-status-badge--answered {
	border-color: rgba(101, 116, 255, .22);
	background: rgba(101, 116, 255, .07);
	color: #8c97ff;
}

.bc2-status-badge--accepted {
	border-color: rgba(66, 221, 138, .2);
	background: rgba(66, 221, 138, .07);
	color: var(--bc2-green);
}

.bc2-status-badge--rejected,
.bc2-status-badge--closed {
	border-color: rgba(255, 79, 99, .2);
	background: rgba(255, 79, 99, .07);
	color: #ff8293;
}

.bc2-form-note {
	margin: 0;
	padding: 10px 11px;
	border-left: 2px solid rgba(255, 189, 74, .6);
	background: rgba(255, 189, 74, .04);
	color: #8e8490;
	font-size: 8px;
	line-height: 1.6;
}

.bc2-empty-state {
	display: flex;
	min-height: 260px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 35px;
	text-align: center;
}

.bc2-empty-state > span {
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	border: 1px solid rgba(255, 56, 82, .18);
	border-radius: 14px;
	background: rgba(255, 45, 73, .05);
	color: var(--bc2-red-light);
	font-size: 20px;
}

.bc2-empty-state h2,
.bc2-empty-state h3 {
	margin: 13px 0 0;
}

.bc2-empty-state p {
	max-width: 380px;
	margin: 5px 0 18px;
	color: var(--bc2-muted);
	font-size: 9px;
}

.bc2-empty-state--compact {
	min-height: 180px;
}

.bc2-dashboard-factions {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 11px;
}

.bc2-dashboard-faction > div:first-child {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.bc2-dashboard-faction .bc2-faction-card__seal {
	width: 48px;
	height: 48px;
}

.bc2-dashboard-faction > p {
	margin: 28px 0 4px;
	color: var(--bc2-red-light);
	font-size: 7px;
	font-weight: 850;
	letter-spacing: .13em;
}

.bc2-dashboard-faction > div:not(:first-child) {
	min-height: 72px;
	margin: 10px 0 19px;
	color: var(--bc2-muted);
	font-size: 9px;
}

.bc2-account-two-column--tickets {
	grid-template-columns: 1.1fr .9fr;
}

.bc2-ticket-row {
	display: grid;
	grid-template-columns: auto 1fr auto auto;
	align-items: center;
	gap: 11px;
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, .065);
	border-radius: 9px;
	transition: .2s ease;
}

.bc2-ticket-row:hover {
	border-color: rgba(255, 54, 80, .2);
	background: rgba(255, 45, 73, .03);
}

.bc2-ticket-row > i {
	color: var(--bc2-red-light);
	font-family: monospace;
	font-size: 7px;
	font-style: normal;
}

.bc2-ticket-row > span {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.bc2-ticket-row strong {
	overflow: hidden;
	font-size: 9px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.bc2-ticket-row small {
	color: var(--bc2-muted-2);
	font-size: 7px;
}

.bc2-ticket-row em {
	color: var(--bc2-muted);
	font-style: normal;
}

.bc2-ticket-detail-grid {
	grid-template-columns: 1fr 250px;
	margin-top: 0;
}

.bc2-ticket-thread__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 13px;
	padding-bottom: 16px;
	margin-bottom: 19px;
	border-bottom: 1px solid var(--bc2-border);
	color: var(--bc2-muted-2);
	font-size: 8px;
}

.bc2-message {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 14px;
}

.bc2-message > img {
	width: 34px;
	height: 34px;
	border-radius: 9px;
	object-fit: cover;
}

.bc2-message > div {
	padding: 12px;
	border: 1px solid var(--bc2-border);
	border-radius: 0 10px 10px 10px;
	background: rgba(255, 255, 255, .025);
}

.bc2-message--team > div {
	border-color: rgba(255, 52, 79, .16);
	background: rgba(255, 45, 73, .045);
}

.bc2-message header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
}

.bc2-message header strong {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 8px;
}

.bc2-message header strong em {
	padding: 2px 5px;
	border-radius: 4px;
	background: var(--bc2-red);
	color: #fff;
	font-size: 5px;
	font-style: normal;
	letter-spacing: .07em;
}

.bc2-message header span {
	color: var(--bc2-muted-2);
	font-size: 6px;
}

.bc2-message p {
	margin: 7px 0 0;
	color: #b6bbc5;
	font-size: 9px;
	line-height: 1.7;
}

.bc2-ticket-reply {
	padding-top: 20px;
	margin-top: 25px;
	border-top: 1px solid var(--bc2-border);
}

.bc2-ticket-reply .bc2-button {
	justify-self: end;
}

.bc2-ticket-closed {
	padding: 13px;
	margin-top: 20px;
	border: 1px solid rgba(255, 255, 255, .07);
	border-radius: 9px;
	color: var(--bc2-muted);
	font-size: 8px;
	text-align: center;
}

.bc2-ticket-actions {
	align-self: start;
}

.bc2-ticket-actions > h2 {
	margin-bottom: 17px;
}

.bc2-ticket-owner {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 15px 0;
	margin-top: 17px;
	border-top: 1px solid var(--bc2-border);
}

.bc2-ticket-owner img {
	width: 34px;
	height: 34px;
	border-radius: 9px;
	object-fit: cover;
}

.bc2-ticket-owner span {
	display: flex;
	flex-direction: column;
}

.bc2-ticket-owner small {
	color: var(--bc2-muted-2);
	font-size: 6px;
}

.bc2-ticket-owner strong {
	font-size: 8px;
}

.bc2-notification-list {
	padding: 0;
	overflow: hidden;
}

.bc2-notification-list article {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 14px;
	padding: 18px 21px;
	border-bottom: 1px solid var(--bc2-border);
	background: rgba(255, 45, 73, .025);
}

.bc2-notification-list article:last-child {
	border-bottom: 0;
}

.bc2-notification-list article.is-read {
	background: transparent;
	opacity: .68;
}

.bc2-notification-list article > i {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border: 1px solid rgba(255, 56, 81, .16);
	border-radius: 9px;
	background: rgba(255, 45, 73, .05);
	color: var(--bc2-red-light);
	font-style: normal;
}

.bc2-notification-list article > div {
	display: flex;
	flex-direction: column;
}

.bc2-notification-list p {
	margin: 0;
	font-size: 10px;
	font-weight: 750;
}

.bc2-notification-list article > div > span {
	color: var(--bc2-muted);
	font-size: 8px;
}

.bc2-notification-list small {
	color: var(--bc2-muted-2);
	font-size: 6px;
}

.bc2-notification-list article > a {
	color: var(--bc2-red-light);
	font-size: 7px;
	font-weight: 750;
	text-transform: uppercase;
}

.bc2-connections-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 11px;
	margin-bottom: 14px;
}

.bc2-connection-card {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 15px;
}

.bc2-connection-card__icon {
	width: 48px;
	height: 48px;
	border-radius: 13px;
}

.bc2-connection-card > div:nth-child(2) p {
	margin: 0;
	color: var(--bc2-muted-2);
	font-size: 6px;
	font-weight: 850;
	letter-spacing: .14em;
}

.bc2-connection-card > div:nth-child(2) h2 {
	margin-top: 2px;
}

.bc2-connection-card > div:nth-child(2) span {
	color: var(--bc2-muted);
	font-size: 8px;
}

.bc2-connection-card__active {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 4px 10px;
	padding: 13px;
	border: 1px solid rgba(66, 221, 138, .14);
	border-radius: 9px;
	background: rgba(66, 221, 138, .03);
}

.bc2-connection-card__active.is-open {
	border-color: var(--bc2-border);
	background: rgba(255, 255, 255, .02);
}

.bc2-connection-card__active .bc2-live-dot {
	grid-row: 1 / 3;
}

.bc2-connection-card__active strong {
	font-size: 9px;
}

.bc2-connection-card__active small {
	color: var(--bc2-muted-2);
	font-size: 7px;
}

.bc2-connection-card > form,
.bc2-connection-card > .bc2-button {
	grid-column: 1 / -1;
}

.bc2-settings-list {
	display: grid;
	margin-bottom: 19px;
}

.bc2-settings-list > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	padding: 13px 0;
	border-bottom: 1px solid var(--bc2-border);
}

.bc2-settings-list span {
	color: var(--bc2-muted);
	font-size: 8px;
}

.bc2-settings-list strong {
	max-width: 60%;
	overflow: hidden;
	font-size: 8px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Front-end admin */
.bc2-admin-tabs {
	display: flex;
	gap: 5px;
	padding: 5px;
	margin-bottom: 11px;
	overflow-x: auto;
	border: 1px solid var(--bc2-border);
	border-radius: 11px;
	background: var(--bc2-surface);
}

.bc2-admin-tabs a {
	flex: 0 0 auto;
	padding: 9px 13px;
	border-radius: 7px;
	color: var(--bc2-muted);
	font-size: 8px;
	font-weight: 750;
}

.bc2-admin-tabs a.is-active {
	background: rgba(255, 45, 73, .1);
	color: #fff;
	box-shadow: inset 0 -1px var(--bc2-red);
}

.bc2-admin-stat-grid {
	margin: 0 0 11px;
}

.bc2-admin-table {
	display: grid;
}

.bc2-admin-table__row {
	display: grid;
	grid-template-columns: 40px 1fr auto auto;
	align-items: center;
	gap: 12px;
	min-height: 54px;
	padding: 9px 5px;
	border-bottom: 1px solid var(--bc2-border);
}

.bc2-admin-table__row:last-child {
	border-bottom: 0;
}

.bc2-admin-table__row > img {
	width: 34px;
	height: 34px;
	border-radius: 9px;
	object-fit: cover;
}

.bc2-admin-table__row > i {
	color: var(--bc2-red-light);
	font-family: monospace;
	font-size: 7px;
	font-style: normal;
}

.bc2-admin-table__row > span {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.bc2-admin-table__row > span strong {
	overflow: hidden;
	font-size: 8px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.bc2-admin-table__row > span small,
.bc2-admin-table__row time {
	color: var(--bc2-muted-2);
	font-size: 6px;
}

.bc2-admin-table__row > em:not(.bc2-status-badge) {
	color: #9ca2ad;
	font-size: 7px;
	font-style: normal;
}

.bc2-admin-table__row--application {
	grid-template-columns: 30px 1fr minmax(220px, auto);
}

.bc2-admin-table__row form {
	display: flex;
	gap: 5px;
}

.bc2-admin-table__row form select {
	min-height: 31px;
	padding: 5px 8px;
	font-size: 7px;
}

.bc2-admin-table__row form button {
	padding: 5px 9px;
	border: 1px solid rgba(255, 54, 80, .2);
	border-radius: 6px;
	background: rgba(255, 45, 73, .07);
	color: var(--bc2-red-light);
	font-size: 7px;
	cursor: pointer;
}

/* Reveal motion */
[data-bc2-reveal] {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .75s var(--bc2-ease), transform .75s var(--bc2-ease);
}

[data-bc2-reveal].is-visible {
	opacity: 1;
	transform: none;
}

@media (max-width: 1180px) {
	.bc2-header__inner { gap: 20px; }
	.bc2-nav__list, .bc2-nav .menu { gap: 19px; }
	.bc2-nav a { font-size: 11px; }
	.bc2-hero__inner { gap: 45px; }
	.bc2-story__grid { gap: 65px; }
	.bc2-faction-grid { grid-template-columns: repeat(2, 1fr); }
	.bc2-news-grid { grid-template-columns: 1fr 1fr; }
	.bc2-news-card--featured { grid-column: 1 / -1; }
	.bc2-footer__top { gap: 40px; }
	.bc2-account-layout { grid-template-columns: 225px minmax(0, 1fr); }
	.bc2-account-content { padding: 20px; }
	.bc2-dashboard-stats { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 980px) {
	.admin-bar .bc2-header { top: 46px; }
	.bc2-announcement p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.bc2-announcement a { display: none; }
	.bc2-header__inner { grid-template-columns: auto auto 1fr; min-height: 70px; }
	.bc2-menu-toggle { display: block; order: 3; justify-self: end; }
	.bc2-header__actions { display: none; }
	.bc2-nav {
		position: absolute;
		top: 100%;
		right: 20px;
		left: 20px;
		padding: 10px;
		border: 1px solid var(--bc2-border);
		border-radius: 14px;
		background: rgba(13, 15, 21, .98);
		box-shadow: var(--bc2-shadow);
		opacity: 0;
		visibility: hidden;
		transform: translateY(-10px);
		transition: .2s ease;
	}
	.bc2-header.is-menu-open .bc2-nav { opacity: 1; visibility: visible; transform: none; }
	.bc2-header.is-menu-open .bc2-menu-toggle > span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
	.bc2-header.is-menu-open .bc2-menu-toggle > span:nth-child(2) { opacity: 0; }
	.bc2-header.is-menu-open .bc2-menu-toggle > span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
	.bc2-nav__list, .bc2-nav .menu { display: grid; gap: 2px; }
	.bc2-nav a { padding: 11px 12px; border-radius: 8px; }
	.bc2-nav a:hover { background: rgba(255,255,255,.04); }
	.bc2-nav a::after { display: none; }
	.bc2-nav .sub-menu { position: static; display: grid; padding: 0 0 0 15px; border: 0; background: transparent; box-shadow: none; opacity: 1; visibility: visible; transform: none; }
	.bc2-hero { min-height: auto; }
	.bc2-hero__inner { grid-template-columns: 1fr; gap: 35px; padding-top: 100px; padding-bottom: 100px; }
	.bc2-hero__content { max-width: 720px; }
	.bc2-server-widget { width: min(100%, 430px); align-self: auto; }
	.bc2-scroll-cue { display: none; }
	.bc2-section { padding: 95px 0; }
	.bc2-section-heading { align-items: flex-start; flex-direction: column; gap: 25px; }
	.bc2-section-heading--center { align-items: center; }
	.bc2-section-heading--center > p { margin: -10px auto 0; }
	.bc2-feature-grid { grid-template-columns: 1fr 1fr; }
	.bc2-feature-card, .bc2-feature-card--wide:last-child, .bc2-feature-card:nth-child(4) { grid-column: auto; }
	.bc2-feature-card:first-child { grid-column: 1 / -1; }
	.bc2-story__grid { grid-template-columns: 1fr; }
	.bc2-story__visual { min-height: 500px; }
	.bc2-footer__top { grid-template-columns: 1.5fr 1fr 1fr; }
	.bc2-footer__column:last-child { display: none; }
	.bc2-rules-layout { grid-template-columns: 1fr; gap: 20px; }
	.bc2-rules-nav { position: static; display: flex; padding-bottom: 8px; overflow-x: auto; }
	.bc2-rules-nav p { display: none; }
	.bc2-rules-nav a { flex: 0 0 auto; border: 1px solid var(--bc2-border); border-radius: 8px; }
	.bc2-auth-page { grid-template-columns: 1fr; }
	.bc2-auth-page__visual { min-height: 540px; justify-content: center; padding: 70px 40px; }
	.bc2-auth-page__form { padding: 70px 30px; }
	.bc2-account-layout { display: block; overflow: visible; border-radius: 18px; }
	.bc2-account-sidebar {
		position: fixed;
		z-index: 1200;
		top: 0;
		bottom: 0;
		left: 0;
		width: 270px;
		overflow-y: auto;
		border-radius: 0 18px 18px 0;
		box-shadow: 30px 0 80px rgba(0,0,0,.45);
		visibility: hidden;
		transform: translateX(-105%);
		transition: .3s var(--bc2-ease);
	}
	.bc2-account-sidebar.is-open { visibility: visible; transform: none; }
	.bc2-account-mobile-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 15px;
		padding-bottom: 18px;
		margin-bottom: 18px;
		border-bottom: 1px solid var(--bc2-border);
	}
	.bc2-account-mobile-head > div { display: flex; align-items: center; gap: 10px; }
	.bc2-account-mobile-head img { width: 38px; height: 38px; border-radius: 10px; object-fit: cover; }
	.bc2-account-mobile-head span { display: flex; flex-direction: column; }
	.bc2-account-mobile-head small { color: var(--bc2-muted-2); font-size: 7px; }
	.bc2-account-mobile-head strong { font-size: 10px; }
	.bc2-account-mobile-head button { padding: 8px 11px; border: 1px solid var(--bc2-border); border-radius: 8px; background: var(--bc2-surface); color: #fff; font-size: 8px; }
}

@media (max-width: 760px) {
	.bc2-container { width: min(calc(100% - 28px), var(--bc2-container)); }
	.bc2-brand__copy { display: none; }
	.bc2-announcement .bc2-container { justify-content: flex-start; }
	.bc2-announcement p { font-size: 9px; }
	.bc2-hero__inner { padding-top: 70px; padding-bottom: 80px; }
	.bc2-hero h1 { font-size: clamp(48px, 16vw, 68px); }
	.bc2-hero__lead { font-size: 14px; }
	.bc2-hero__trust { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
	.bc2-hero__actions .bc2-button { width: 100%; }
	.bc2-server-widget { width: 100%; }
	.bc2-stats-strip .bc2-container { grid-template-columns: 1fr 1fr; }
	.bc2-stats-strip div div:nth-child(3) { border-left: 0; border-top: 1px solid var(--bc2-border); }
	.bc2-stats-strip div div:nth-child(4) { border-top: 1px solid var(--bc2-border); }
	.bc2-stats-strip div div { flex-direction: column; align-items: center; gap: 0; }
	.bc2-section { padding: 75px 0; }
	.bc2-section-heading { margin-bottom: 42px; }
	.bc2-feature-grid, .bc2-news-grid { grid-template-columns: 1fr; }
	.bc2-feature-card:first-child, .bc2-news-card--featured { grid-column: auto; }
	.bc2-feature-card { min-height: 280px; }
	.bc2-story__grid { gap: 50px; }
	.bc2-story__visual { min-height: 400px; }
	.bc2-story__photo { inset: 0 20px 30px 0; border-radius: 3px 50px 3px 3px; }
	.bc2-check-list { grid-template-columns: 1fr; }
	.bc2-faction-grid, .bc2-faction-grid--directory { grid-template-columns: 1fr; }
	.bc2-faction-card { min-height: 330px; }
	.bc2-cta { min-height: 570px; }
	.bc2-cta .bc2-container > div { flex-direction: column; }
	.bc2-footer__top { grid-template-columns: 1fr 1fr; gap: 38px; }
	.bc2-footer__brand { grid-column: 1 / -1; }
	.bc2-footer__bottom { align-items: flex-start; flex-direction: column; gap: 10px; }
	.bc2-page-hero { min-height: 320px; padding-top: 85px; }
	.bc2-post-grid { grid-template-columns: 1fr; }
	.bc2-rule button { grid-template-columns: 35px 1fr auto; padding: 15px 13px; }
	.bc2-rule > div p { padding-right: 60px; padding-left: 60px; }
	.bc2-service-grid, .bc2-status-detail-grid { grid-template-columns: 1fr; }
	.bc2-service-card { grid-template-columns: auto 1fr; }
	.bc2-service-card > .bc2-status-pill { grid-column: 2; justify-self: start; }
	.bc2-auth-page__visual { min-height: 480px; padding: 55px 25px; }
	.bc2-auth-page__visual .bc2-logo-mark { margin-bottom: 45px; }
	.bc2-auth-page__form { padding: 55px 20px; }
	.bc2-form__columns { grid-template-columns: 1fr; }
	.bc2-account-shell { padding-top: 18px; }
	.bc2-account-content { padding: 14px; }
	.bc2-dashboard-hero { grid-template-columns: 1fr; padding: 28px 24px; }
	.bc2-dashboard-hero::before { right: -25px; }
	.bc2-dashboard-hero__identity { align-items: flex-start; }
	.bc2-dashboard-stats { grid-template-columns: 1fr 1fr; }
	.bc2-dashboard-grid, .bc2-account-two-column, .bc2-account-two-column--tickets, .bc2-ticket-detail-grid { grid-template-columns: 1fr; }
	.bc2-quick-grid { grid-template-columns: 1fr; }
	.bc2-dashboard-factions, .bc2-connections-grid { grid-template-columns: 1fr; }
	.bc2-account-heading { align-items: flex-start; flex-direction: column; }
	.bc2-profile-form__avatar { align-items: flex-start; }
	.bc2-ticket-actions { order: -1; }
	.bc2-admin-table__row { grid-template-columns: 32px 1fr auto; }
	.bc2-admin-table__row time { display: none; }
	.bc2-admin-table__row--application { grid-template-columns: 28px 1fr; }
	.bc2-admin-table__row--application form { grid-column: 1 / -1; }
}

@media (max-width: 480px) {
	.bc2-hero__trust { grid-template-columns: 1fr; }
	.bc2-server-widget { padding: 18px; }
	.bc2-server-widget__info { grid-template-columns: 1fr; }
	.bc2-section-heading h2, .bc2-story__content h2, .bc2-cta h2 { font-size: 42px; }
	.bc2-story__visual { min-height: 340px; }
	.bc2-footer__top { grid-template-columns: 1fr; }
	.bc2-footer__brand { grid-column: auto; }
	.bc2-footer__column:last-child { display: flex; }
	.bc2-overall-status, .bc2-directory-toolbar { align-items: flex-start; flex-direction: column; }
	.bc2-dashboard-stats { grid-template-columns: 1fr; }
	.bc2-dashboard-hero__content > div { align-items: flex-start; flex-direction: column; }
	.bc2-profile-form__avatar { flex-direction: column; }
	.bc2-ticket-row { grid-template-columns: 1fr auto; }
	.bc2-ticket-row > i, .bc2-ticket-row > span { grid-column: 1; }
	.bc2-ticket-row > b, .bc2-ticket-row > em { grid-column: 2; grid-row: 1 / 3; }
	.bc2-notification-list article { grid-template-columns: auto 1fr; }
	.bc2-notification-list article > a { grid-column: 2; }
}

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