/* Shared local typeface for every RaceBox template. */
@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("/wp-content/uploads/2026/02/inter-regular.woff2") format("woff2");
}

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("/wp-content/uploads/2026/02/inter-medium.woff2") format("woff2");
}

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("/wp-content/uploads/2026/02/inter-semibold.woff2") format("woff2");
}

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("/wp-content/uploads/2026/02/inter-bold.woff2") format("woff2");
}

:root {
	--rbx-bg: #07090d;
	--rbx-surface: rgba(15, 20, 29, .94);
	--rbx-surface-2: rgba(22, 27, 38, .78);
	--rbx-line: rgba(255, 255, 255, .10);
	--rbx-line-soft: rgba(255, 255, 255, .07);
	--rbx-text: #f4f6fa;
	--rbx-muted: #a7afbd;
	--rbx-muted-2: #7d8795;
	--rbx-red: #f3312c;
	--rbx-red-dark: #cc211d;
	--rbx-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--rbx-radius-shell: 26px;
	--rbx-radius-card: 13px;
	--rbx-shadow-shell: 0 28px 95px rgba(0, 0, 0, .58), inset 0 1px 0 rgba(255, 255, 255, .04);
	--rbx-shadow-card: inset 0 1px 0 rgba(255, 255, 255, .035);
}

.rbd-page,
.rbd-page * {
	box-sizing: border-box;
}

.rbd-page {
	min-height: 100vh;
	margin: 0;
	padding: 28px;
	color: var(--rbx-text);
	background: var(--rbx-bg);
	font-family: var(--rbx-font);
	-webkit-font-smoothing: antialiased;
	text-rendering: geometricPrecision;
}

.rbd-page a {
	color: inherit;
	text-decoration: none;
}

.rbd-shell {
	width: min(1520px, 100%);
	margin: 0 auto;
	border: 1px solid var(--rbx-line);
	border-radius: var(--rbx-radius-shell);
	overflow: hidden;
	position: relative;
	background: linear-gradient(180deg, rgba(15, 20, 29, .95), rgba(8, 12, 18, .98));
	box-shadow: var(--rbx-shadow-shell);
}

.rbd-section {
	padding: 0 80px;
}

.rbd-card {
	border: 1px solid var(--rbx-line-soft);
	border-radius: var(--rbx-radius-card);
	background: linear-gradient(145deg, rgba(31, 37, 50, .82), rgba(14, 18, 26, .64));
	box-shadow: var(--rbx-shadow-card);
}

.rbd-section-title {
	margin: 0;
	color: rgba(244, 246, 250, .9);
	font-size: clamp(24px, 2.2vw, 34px);
	line-height: 1.1;
	letter-spacing: -.018em;
	font-weight: 600;
}

.rbd-muted {
	color: var(--rbx-muted);
}

.rbd-grid {
	display: grid;
	gap: 16px;
}

.rbd-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rbd-grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rbd-button {
	min-height: 46px;
	min-width: 132px;
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 9px;
	padding: 0 23px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: rgba(255, 255, 255, .035);
	color: #fff;
	cursor: pointer;
	font: 500 15px/1 var(--rbx-font);
	transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
	-webkit-tap-highlight-color: transparent;
}

.rbd-button:hover {
	transform: translateY(-1px);
	border-color: rgba(255, 255, 255, .22);
	background: rgba(255, 255, 255, .065);
}

.rbd-button-primary {
	border-color: rgba(243, 49, 44, .56);
	background: linear-gradient(180deg, #f43a34 0%, #d4211d 100%);
	box-shadow: 0 12px 32px rgba(243, 49, 44, .25);
}

.rbd-button-primary:hover {
	background: linear-gradient(180deg, #ff4842 0%, #df2824 100%);
	box-shadow: 0 16px 38px rgba(243, 49, 44, .32);
}

.rbd-input,
.rbd-select {
	width: 100%;
	height: 46px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 8px;
	padding: 0 16px;
	background: rgba(8, 12, 18, .50);
	color: var(--rbx-text);
	font: 500 15px/1 var(--rbx-font);
	outline: 0;
	color-scheme: dark;
}

.rbd-input::placeholder {
	color: rgba(168, 175, 187, .78);
}

.rbd-select {
	padding-right: 42px;
	appearance: none;
	cursor: pointer;
}

@media (max-width: 1100px) {
	.rbd-page {
		padding: 14px;
	}

	.rbd-section {
		padding-left: 28px;
		padding-right: 28px;
	}

	.rbd-grid-3 {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.rbd-page {
		padding: 0;
	}

	.rbd-shell {
		min-height: 100vh;
		border: 0;
		border-radius: 0;
	}

	.rbd-section {
		padding-left: 14px;
		padding-right: 14px;
	}

	.rbd-grid-2,
	.rbd-grid-3 {
		grid-template-columns: 1fr;
	}

	.rbd-button {
		width: 100%;
	}
}
