/**
 * NV Casino - compiled from SCSS partials.
 */
/**
 * Design tokens: NV Casino (dark navy #0f0f1e, magenta #c2004d).
 */
:root {
	--nvc-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--nvc-font-display: var(--nvc-font-sans);

	--nvc-ink: #ffffff;
	--nvc-ink-muted: #b1b5c3;
	--nvc-bg-0: #0f0f1e;
	--nvc-bg-1: #16182a;
	--nvc-nav-active: #252b43;
	--nvc-panel: rgba(37, 43, 67, 0.72);
	--nvc-line: rgba(255, 255, 255, 0.09);

	--nvc-neon: #c2004d;
	--nvc-violet: #4a1f58;
	--nvc-ice: #e8487a;

	/* Frosted masthead (navy tint, not black); use with backdrop-filter on .nvc-masthead__bar */
	--nvc-header-bg: rgba(22, 24, 42, 0.55);
	--nvc-header-blur: 0.875rem;
	/* Fixed masthead: bar padding 0.85rem×2 + min-height 4.25rem + border 1px */
	--nvc-masthead-height: 5.95rem;
	--nvc-login-bg: #2d1f52;
	--nvc-login-hover: #3d2a68;
	--nvc-hero-radius: 1.25rem;

	--nvc-radius-sm: 0.5rem;
	--nvc-radius-md: 0.75rem;
	--nvc-radius-lg: 1.5rem;
	--nvc-space-1: 0.5rem;
	--nvc-space-2: 1rem;
	--nvc-space-3: 1.5rem;
	--nvc-space-4: 2rem;
	--nvc-space-5: 3rem;
	--nvc-space-6: 4.5rem;
	/* Wider content column (≈1440px cap) for bands/cards to breathe edge-to-edge */
	--nvc-max: 90rem;

	--nvc-glow: 0 0 2.25rem rgba(194, 0, 77, 0.42), 0 0 3.75rem rgba(74, 31, 88, 0.28);
	--nvc-ease: cubic-bezier(0.4, 0, 0.2, 1);

	/* Shared “glass” + brand gradients (prose, panels) */
	--nvc-blur-panel: 0.85rem;
	--nvc-glass-elevated: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 1.25rem 3rem rgba(0, 0, 0, 0.28);
	--nvc-gradient-accent-h: linear-gradient(90deg, var(--nvc-neon), var(--nvc-violet));
	--nvc-gradient-accent-v: linear-gradient(180deg, var(--nvc-neon), var(--nvc-violet));
	--nvc-gradient-table-head: linear-gradient(135deg, rgba(194, 0, 77, 0.22), rgba(74, 31, 88, 0.14));
	--nvc-selection: rgba(194, 0, 77, 0.38);
}
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

html.nvc-html {
	overflow-x: hidden;
	max-width: 100%;
	scroll-padding-top: var(--nvc-masthead-height);
}

body.nvc-root {
	margin: 0;
	font-family: var(--nvc-font-sans);
	font-size: 1rem;
	line-height: 1.6;
	color: var(--nvc-ink);
	background: radial-gradient(110% 75% at 12% 100%, rgba(194, 0, 77, 0.14), transparent 52%),
		radial-gradient(90% 60% at 100% 0%, rgba(74, 31, 88, 0.12), transparent 45%), var(--nvc-bg-0);
	min-height: 100vh;
	overflow-x: hidden;
	max-width: 100%;
}

.nvc-ambient {
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	background: radial-gradient(42rem 42rem at 8% 92%, rgba(194, 0, 77, 0.22), transparent 62%),
		radial-gradient(36rem 36rem at 88% 8%, rgba(74, 31, 88, 0.2), transparent 58%);
	filter: saturate(1.05);
}

.nvc-page {
	position: relative;
	z-index: 1;
	padding-top: var(--nvc-masthead-height);
	padding-bottom: var(--nvc-space-4);
	overflow-x: hidden;
	max-width: 100%;
	min-width: 0;
}

.nvc-shell {
	width: min(100% - clamp(1rem, 3vw, var(--nvc-space-4)), var(--nvc-max));
	max-width: 100%;
	margin-inline: auto;
	min-width: 0;
	box-sizing: border-box;
}

.nvc-u-vishid {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: inherit;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}
/* Masthead — frosted bar (blurred), centered nav; fixed so it stays on screen while scrolling */
.nvc-masthead {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	width: 100%;
	max-width: 100%;
	z-index: 40;
	background: transparent;
	transition: box-shadow 0.35s var(--nvc-ease);
}

.nvc-masthead--pinned {
	box-shadow: 0 0.35rem 2rem rgba(194, 0, 77, 0.12);
}

.nvc-masthead__bar {
	background: var(--nvc-header-bg);
	backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.12);
	-webkit-backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.12);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.nvc-masthead__shell {
	display: flex;
	align-items: center;
	gap: var(--nvc-space-3);
	padding: 0.85rem 0;
	min-height: 4.25rem;
}

.nvc-masthead__brand {
	flex-shrink: 0;
}

.nvc-masthead__logo {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	align-self: center;
	gap: 0.5rem;
	flex-shrink: 0;
	min-width: 0;
}

.nvc-masthead__locale-flag {
	display: block;
	flex-shrink: 0;
	/* ~50% of logo band: .custom-logo max-height is clamp(2.5rem, 5vw, 3.35rem) */
	height: clamp(0.8rem, 1.75vw, 1.2rem);
	width: auto;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	border-radius: 2px;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.14);
}

.nvc-masthead__brand-link {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	text-decoration: none;
	color: var(--nvc-ink);
}

.nvc-masthead__mark {
	display: flex;
	align-items: center;
}

.nvc-masthead__mark-svg {
	width: 2.75rem;
	height: auto;
	display: block;
}

.nvc-masthead__wordmark {
	font-family: var(--nvc-font-display);
	font-weight: 800;
	font-size: clamp(1.05rem, 2.4vw, 1.25rem);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.nvc-masthead__logo .custom-logo-link {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
}

.nvc-masthead__logo .custom-logo {
	display: block;
	max-height: clamp(2.5rem, 5vw, 3.35rem);
	width: auto;
	height: auto;
}

.nvc-masthead__nav {
	flex: 1;
	display: none;
	justify-content: center;
	min-width: 0;
}

.nvc-masthead__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.35rem 1.75rem;
}

.nvc-masthead__list a {
	text-decoration: none;
	font-weight: 600;
	font-size: 0.9rem;
	color: var(--nvc-ink);
	transition: color 0.2s var(--nvc-ease);
}

.nvc-masthead__list a:hover,
.nvc-masthead__list a:focus-visible {
	color: var(--nvc-ice);
}

.nvc-masthead .current-menu-item > a,
.nvc-masthead .current_page_item > a {
	background: var(--nvc-nav-active);
	color: var(--nvc-ink);
	padding: 0.4rem 0.95rem;
	border-radius: 0.625rem;
}

.nvc-masthead__more-item {
	list-style: none;
}

.nvc-masthead__more-wrap {
	position: relative;
}

.nvc-masthead__more {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: none;
	border-radius: 0.5rem;
	background: transparent;
	color: var(--nvc-ink);
	cursor: pointer;
	transition: background 0.2s var(--nvc-ease);
}

.nvc-masthead__more::-webkit-details-marker {
	display: none;
}

.nvc-masthead__more:hover,
.nvc-masthead__more:focus-visible {
	background: rgba(255, 255, 255, 0.08);
}

.nvc-masthead__more-wrap[open] .nvc-masthead__more {
	background: rgba(255, 255, 255, 0.08);
}

.nvc-masthead__more-dots {
	font-size: 1.05rem;
	line-height: 1;
	letter-spacing: 0.02em;
	font-weight: 800;
	color: inherit;
}

.nvc-masthead__more-menu {
	list-style: none;
	margin: 0.45rem 0 0;
	padding: 0.35rem;
	position: absolute;
	right: 0;
	top: 100%;
	min-width: 12rem;
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	background: rgba(15, 15, 30, 0.96);
	backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.1);
	-webkit-backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.1);
	box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.35);
	z-index: 65;
	display: grid;
	gap: 0.2rem;
}

.nvc-masthead__more-menu a {
	display: block;
	padding: 0.4rem 0.55rem;
	border-radius: var(--nvc-radius-sm);
	text-decoration: none;
	color: var(--nvc-ink);
	font-size: 0.84rem;
	font-weight: 600;
}

.nvc-masthead__more-menu a:hover,
.nvc-masthead__more-menu a:focus-visible {
	background: rgba(194, 0, 77, 0.14);
}

.nvc-masthead__tools {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin-left: auto;
	flex-shrink: 0;
}

.nvc-lang-switch {
	position: relative;
}

.nvc-lang-switch__toggle {
	list-style: none;
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.4rem 0.6rem;
	border-radius: 0.625rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.06);
	color: var(--nvc-ink);
	font-size: 0.85rem;
	font-weight: 700;
	cursor: pointer;
	user-select: none;
}

.nvc-lang-switch__toggle::-webkit-details-marker {
	display: none;
}

.nvc-lang-switch__flag-img {
	display: block;
	width: 0.8rem;
	height: 0.56rem;
	border-radius: 0.08rem;
	object-fit: cover;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.14);
}

.nvc-lang-switch__label {
	line-height: 1;
}

.nvc-lang-switch__chev {
	font-size: 0.7rem;
	opacity: 0.8;
	transform: translateY(1px);
}

.nvc-lang-switch[open] .nvc-lang-switch__chev {
	transform: rotate(180deg);
}

.nvc-lang-switch__menu {
	list-style: none;
	margin: 0.45rem 0 0;
	padding: 0.35rem;
	position: absolute;
	right: 0;
	top: 100%;
	min-width: 9rem;
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	background: rgba(15, 15, 30, 0.96);
	backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.1);
	-webkit-backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.1);
	box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.35);
	z-index: 65;
}

.nvc-lang-switch__menu a {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.4rem 0.55rem;
	border-radius: var(--nvc-radius-sm);
	text-decoration: none;
	color: var(--nvc-ink);
	font-size: 0.84rem;
	font-weight: 600;
}

.nvc-lang-switch__menu a:hover,
.nvc-lang-switch__menu a:focus-visible {
	background: rgba(194, 0, 77, 0.14);
}

.nvc-lang-switch__menu a.is-active {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

.nvc-masthead__tools .nvc-action--nav {
	display: none;
}

.nvc-burger {
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.35rem;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 0.625rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.06);
	cursor: pointer;
}

.nvc-burger__bar {
	display: block;
	height: 2px;
	width: 1.1rem;
	margin-inline: auto;
	background: #fff;
	border-radius: 999px;
}

/* Drawer */
.nvc-drawer[hidden] {
	display: none;
}

.nvc-drawer:not([hidden]) {
	position: fixed;
	inset: 0;
	z-index: 60;
	display: block;
}

.nvc-drawer__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 8, 22, 0.62);
	backdrop-filter: blur(0.25rem);
}

.nvc-drawer__panel {
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: min(22rem, 92vw);
	padding: var(--nvc-space-3);
	background: rgba(15, 15, 30, 0.97);
	border-left: 1px solid var(--nvc-line);
	display: flex;
	flex-direction: column;
	gap: var(--nvc-space-3);
	box-shadow: -1.5rem 0 4rem rgba(0, 0, 0, 0.5);
}

.nvc-drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.nvc-drawer__title {
	margin: 0;
	font-family: var(--nvc-font-display);
}

.nvc-drawer__close {
	border: none;
	background: transparent;
	color: inherit;
	font-size: 1.75rem;
	cursor: pointer;
	line-height: 1;
}

.nvc-drawer__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--nvc-space-2);
}

.nvc-drawer__list a {
	text-decoration: none;
	font-weight: 600;
}

.nvc-drawer__lang-row {
	display: grid;
	gap: 0.45rem;
	padding-top: 0.5rem;
	border-top: 1px dashed var(--nvc-line);
}

.nvc-drawer__lang-label {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--nvc-ink-muted);
}

.nvc-drawer__lang-row a {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.nvc-drawer__flag-img {
	display: block;
	width: 0.85rem;
	height: 0.6rem;
	border-radius: 0.08rem;
	object-fit: cover;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.14);
}

.nvc-drawer__lang-row a.is-active {
	color: var(--nvc-ice);
}

.nvc-drawer__cta {
	margin-top: auto;
	display: grid;
	gap: var(--nvc-space-2);
}

/* Footer */
.nvc-foot {
	margin-top: var(--nvc-space-3);
	padding: var(--nvc-space-5) 0 var(--nvc-space-4);
	border-top: 1px solid var(--nvc-line);
	background: rgba(12, 13, 26, 0.94);
}

.nvc-foot__grid {
	display: grid;
	gap: var(--nvc-space-4);
}

.nvc-foot__name {
	font-family: var(--nvc-font-display);
	font-weight: 700;
	margin: 0 0 var(--nvc-space-1);
}

.nvc-foot__brand-link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.nvc-foot__col--brand {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: var(--nvc-space-2);
	min-width: 0;
}

.nvc-foot__brand-logo {
	display: block;
	width: clamp(9rem, 28vw, 11.5rem);
	height: auto;
	filter: drop-shadow(0 8px 24px rgba(194, 0, 77, 0.28));
}

.nvc-foot__tag {
	margin: var(--nvc-space-2) 0 0;
	color: var(--nvc-ink-muted);
	max-width: 40ch;
}

.nvc-foot__social {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin: var(--nvc-space-1) 0 0;
	padding: 0 0 0 1.55rem;
	flex-wrap: nowrap;
}

.nvc-foot__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.45rem;
	height: 2.45rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(255, 255, 255, 0.07);
	color: var(--nvc-ink);
	text-decoration: none;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.06),
		0 0.35rem 1rem rgba(0, 0, 0, 0.28);
	transition: background 0.2s var(--nvc-ease), border-color 0.2s var(--nvc-ease), transform 0.2s var(--nvc-ease), box-shadow 0.2s var(--nvc-ease);
}

.nvc-foot__social-link:hover,
.nvc-foot__social-link:focus-visible {
	background: rgba(194, 0, 77, 0.14);
	border-color: rgba(194, 0, 77, 0.45);
	transform: translateY(-1px);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		0 0 0 1px rgba(74, 31, 88, 0.28),
		0 0.45rem 1.25rem rgba(194, 0, 77, 0.22);
}

.nvc-foot__social-link svg {
	width: 1.2rem;
	height: 1.2rem;
	fill: currentColor;
}

.nvc-foot__label {
	font-weight: 700;
	margin: 0 0 var(--nvc-space-1);
}

.nvc-foot__menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--nvc-space-1);
}

.nvc-foot__menu a {
	text-decoration: none;
}

.nvc-foot__contacts {
	gap: 0.65rem;
}

.nvc-foot__contact-item {
	display: grid;
	gap: 0.25rem;
}

.nvc-foot__contact-k {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--nvc-ink-muted);
}

.nvc-foot__contact-v {
	text-decoration: none;
	color: var(--nvc-ink);
	font-weight: 600;
}

.nvc-foot__legal {
	margin: var(--nvc-space-4) auto 0;
	font-size: 0.875rem;
	color: var(--nvc-ink-muted);
	text-align: center;
	max-width: var(--nvc-max);
}

@media (max-width: 47.99rem) {
	.nvc-foot__grid,
	.nvc-foot__col,
	.nvc-foot__menu,
	.nvc-foot__contacts,
	.nvc-foot__contact-item {
		justify-items: center;
		text-align: center;
	}

	.nvc-foot__col--brand {
		align-items: center;
	}

	.nvc-foot__brand-link {
		justify-content: center;
	}

	.nvc-foot__social {
		justify-content: center;
		padding-left: 0;
	}
}

/* Floating CTA — same width as .nvc-shell content column, centered */
.nvc-float-cta {
	position: fixed;
	z-index: 45;
	left: 50%;
	right: auto;
	bottom: var(--nvc-space-2);
	display: block;
	box-sizing: border-box;
	width: min(100% - clamp(1rem, 3vw, var(--nvc-space-4)), var(--nvc-max));
	max-width: 100%;
	margin: 0;
	padding: 0.75rem 1rem;
	border-radius: 0.625rem;
	background: linear-gradient(135deg, var(--nvc-neon), #8a0038);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
	line-height: 1.25;
	white-space: normal;
	word-break: break-word;
	box-shadow: var(--nvc-glow);
	transform: translateX(-50%);
	transition: transform 0.25s var(--nvc-ease);
}

.nvc-float-cta:hover,
.nvc-float-cta:focus-visible {
	transform: translate(-50%, -2px);
}

/* Hero — same width as .nvc-shell (content column) */
.nvc-hero {
	position: relative;
	padding: var(--nvc-space-4) 0 var(--nvc-space-5);
	overflow: hidden;
}

.nvc-hero__card {
	position: relative;
	width: 100%;
	margin: 0;
	border-radius: var(--nvc-hero-radius);
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(0, 0, 0, 0.35);
}

.nvc-hero__card-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.nvc-hero__aurora {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: var(--nvc-bg-1);
}

.nvc-hero__slides {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	overflow: hidden;
}

.nvc-hero__slide {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 1s var(--nvc-ease);
}

.nvc-hero__slide-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.nvc-hero__slide--active {
	opacity: 1;
}

.nvc-hero__slide--parked {
	display: none;
}

@media (prefers-reduced-motion: reduce) {
	.nvc-hero__slide {
		transition: opacity 0.35s ease;
	}
}

.nvc-hero__card-inner {
	position: relative;
	z-index: 1;
	display: grid;
	gap: var(--nvc-space-3);
	align-items: center;
	padding: clamp(1.5rem, 4vw, 2.75rem) clamp(1.25rem, 3vw, 3rem) 2.75rem;
	min-height: clamp(15rem, 42vw, 22rem);
	grid-template-columns: 1fr;
}

.nvc-hero__copy {
	display: grid;
	gap: var(--nvc-space-2);
	max-width: 36rem;
}

.nvc-hero__eyebrow {
	margin: 0;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-size: 0.72rem;
	color: rgba(255, 255, 255, 0.65);
}

.nvc-hero__title {
	margin: 0;
	display: grid;
	gap: 0.35rem;
	font-family: var(--nvc-font-display);
	color: var(--nvc-ink);
	line-height: 1.05;
}

.nvc-hero__title-line {
	font-size: clamp(1.25rem, 2.8vw, 1.85rem);
	font-weight: 700;
}

.nvc-hero__title-mega {
	font-size: clamp(1.85rem, 5.5vw, 3.35rem);
	font-weight: 800;
	letter-spacing: -0.02em;
	text-shadow: 0 0 2.5rem rgba(194, 0, 77, 0.25);
}

.nvc-hero__sub {
	margin: 0;
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.95rem;
}

.nvc-hero__dots {
	position: absolute;
	z-index: 2;
	left: 50%;
	bottom: 1rem;
	transform: translateX(-50%);
	display: flex;
	gap: 0.45rem;
	align-items: center;
}

.nvc-hero__dot {
	appearance: none;
	margin: 0;
	padding: 0;
	border: 0;
	cursor: pointer;
	width: 1.35rem;
	height: 0.28rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.25);
	transition: background 0.25s var(--nvc-ease), transform 0.25s var(--nvc-ease);
}

.nvc-hero__dot:focus-visible {
	outline: 2px solid rgba(194, 0, 77, 0.85);
	outline-offset: 3px;
}

.nvc-hero__dot--active {
	background: rgba(255, 255, 255, 0.95);
	transform: scaleX(1.15);
}

@media (max-width: 47.99rem) {
	.nvc-hero__copy {
		text-align: center;
		justify-items: center;
		margin-inline: auto;
	}
}

@media (min-width: 30rem) {
	.nvc-masthead__tools .nvc-action--nav {
		display: inline-flex;
	}
}

@media (max-width: 29.99rem) {
	.nvc-lang-switch__label {
		display: none;
	}

	.nvc-lang-switch__toggle {
		padding-inline: 0.45rem;
	}
}

@media (min-width: 48rem) {
	.nvc-masthead__nav {
		display: flex;
	}

	.nvc-burger {
		display: none;
	}
}

.nvc-band__head--games {
	margin-bottom: var(--nvc-space-3);
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--nvc-space-2);
}

.nvc-band__intro {
	display: grid;
	gap: var(--nvc-space-1);
	min-width: 0;
}

.nvc-band__chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nvc-space-1);
}

.nvc-chip {
	border-radius: 999px;
	border: 1px solid var(--nvc-line);
	background: rgba(255, 255, 255, 0.04);
	color: inherit;
	padding: 0.45rem 0.9rem;
	font-weight: 600;
	cursor: pointer;
	transition: transform 0.2s var(--nvc-ease), box-shadow 0.2s var(--nvc-ease), border-color 0.2s var(--nvc-ease);
}

.nvc-chip--active,
.nvc-chip:hover {
	border-color: rgba(194, 0, 77, 0.5);
	box-shadow: 0 0 1.5rem rgba(194, 0, 77, 0.22);
	transform: translateY(-1px);
}

/* Discover strip (horizontal category pills under games) */
.nvc-explore {
	padding: 0 0 var(--nvc-space-4);
}

.nvc-explore__title {
	margin: 0 0 var(--nvc-space-2);
	font-family: var(--nvc-font-display);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.92);
}

.nvc-explore__bar {
	background: #1a1d2e;
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: var(--nvc-radius-md);
	padding: 0.95rem 0.75rem;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
	min-width: 0;
}

.nvc-explore__track {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	padding-block: 0.35rem;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	touch-action: pan-x pan-y;
	cursor: grab;
	scrollbar-width: none;
	-ms-overflow-style: none;
	transform: translateZ(0);
}

.nvc-explore__track::-webkit-scrollbar {
	display: none;
}

.nvc-explore__track.nvc-explore__track--dragging {
	cursor: grabbing;
	user-select: none;
}

.nvc-explore__track.nvc-explore__track--dragging * {
	user-select: none;
}

.nvc-explore__chip {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	min-height: 2.85rem;
	padding: 0.35rem 0.75rem;
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: var(--nvc-radius-sm);
	background: #252838;
	color: var(--nvc-ink);
	text-decoration: none;
	font-weight: 700;
	font-size: 0.78rem;
	line-height: 1.15;
	white-space: nowrap;
	touch-action: auto;
	-webkit-tap-highlight-color: transparent;
	transition: border-color 0.2s var(--nvc-ease), box-shadow 0.2s var(--nvc-ease), transform 0.2s var(--nvc-ease);
}

.nvc-explore__chip:hover {
	border-color: rgba(194, 0, 77, 0.45);
	box-shadow: 0 0 1rem rgba(194, 0, 77, 0.18);
	transform: translateY(-1px);
}

.nvc-explore__chip--filter {
	padding: 0.35rem 0.6rem;
	min-width: 2.75rem;
	justify-content: center;
	cursor: pointer;
	font: inherit;
	color: inherit;
}

.nvc-explore__chip--filter:hover {
	transform: translateY(-1px);
}

.nvc-explore__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.nvc-explore__glyph {
	display: block;
	width: 1.35rem;
	height: 1.35rem;
	color: #c9a94a;
	flex-shrink: 0;
}

.nvc-explore__chip--accent .nvc-explore__glyph {
	color: #4ade80;
}

.nvc-explore__text {
	display: flex;
	flex-direction: column;
	gap: 0.05em;
	text-align: left;
}

.nvc-explore__text--single {
	justify-content: center;
}

.nvc-explore__line1,
.nvc-explore__line2 {
	display: block;
}

.nvc-explore__line2 {
	font-size: 0.72em;
	font-weight: 700;
	opacity: 0.92;
}

/* Bands + mosaic */
.nvc-band {
	padding: var(--nvc-space-5) 0;
	min-width: 0;
	max-width: 100%;
}

.nvc-band--studios {
	padding-block: 0.375rem;
}

.nvc-band__head:not(.nvc-band__head--games) {
	margin-bottom: var(--nvc-space-4);
	display: grid;
	gap: var(--nvc-space-1);
}

.nvc-band__title {
	margin: 0;
	font-family: var(--nvc-font-display);
	font-size: clamp(1.5rem, 2.6vw, 2.1rem);
}

.nvc-band__note {
	margin: 0;
	color: var(--nvc-ink-muted);
	max-width: 52ch;
}

/* Game grids: dense columns so slot tiles read smaller on screen */
.nvc-mosaic {
	display: grid;
	gap: var(--nvc-space-2);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nvc-stack {
	display: grid;
	gap: var(--nvc-space-3);
}

.nvc-cluster {
	display: grid;
	gap: var(--nvc-space-3);
}

/* data-nvc-reveal: optional hook; text always visible */
[data-nvc-reveal] {
	opacity: 1;
	transform: none;
}

/* Breakpoints */
@media (min-width: 30rem) {
	.nvc-mosaic {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 48rem) {
	/* 768 */
	.nvc-mosaic {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.nvc-foot__grid {
		grid-template-columns: 1.2fr 1fr 1fr;
		align-items: start;
	}

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

	.nvc-band__head--games {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
		gap: var(--nvc-space-3);
		margin-bottom: var(--nvc-space-4);
	}

	.nvc-band__chips {
		justify-content: flex-end;
		max-width: min(100%, 36rem);
	}
}

@media (min-width: 64rem) {
	/* 1024 */
	.nvc-mosaic {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.nvc-titlegame__layout {
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
		align-items: start;
	}
}

@media (min-width: 80rem) {
	/* 1280 */
	.nvc-mosaic {
		grid-template-columns: repeat(8, minmax(0, 1fr));
		gap: var(--nvc-space-2);
	}
}

/* Primary menu sub-flyouts */
.nvc-masthead .sub-menu {
	list-style: none;
	margin: 0;
	padding: var(--nvc-space-2);
	position: absolute;
	left: 0;
	top: 100%;
	min-width: 12rem;
	display: none;
	background: rgba(22, 24, 42, 0.72);
	backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.12);
	-webkit-backdrop-filter: blur(var(--nvc-header-blur)) saturate(1.12);
	border: 1px solid var(--nvc-line);
	border-radius: var(--nvc-radius-md);
	box-shadow: 0 1.25rem 3rem rgba(0, 0, 0, 0.35);
	z-index: 50;
}

.nvc-masthead li {
	position: relative;
}

.nvc-masthead li:hover > .sub-menu,
.nvc-masthead li:focus-within > .sub-menu {
	display: grid;
	gap: var(--nvc-space-1);
}

.nvc-masthead .sub-menu a {
	display: block;
	padding: 0.35rem 0.5rem;
	border-radius: var(--nvc-radius-sm);
	text-decoration: none;
	color: var(--nvc-ink-muted);
	background: transparent;
}

.nvc-masthead .sub-menu a:hover,
.nvc-masthead .sub-menu a:focus-visible {
	background: rgba(194, 0, 77, 0.12);
	color: var(--nvc-ink);
}
/* Buttons / actions */
.nvc-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.65rem 1.2rem;
	border-radius: var(--nvc-radius-md);
	font-weight: 700;
	text-decoration: none;
	border: 1px solid transparent;
	cursor: pointer;
	transition: transform 0.2s var(--nvc-ease), box-shadow 0.25s var(--nvc-ease), background 0.25s var(--nvc-ease);
}

.nvc-action--solid {
	background: linear-gradient(135deg, var(--nvc-neon), #8e0037);
	color: #fff;
	box-shadow: var(--nvc-glow);
}

.nvc-action--solid:hover,
.nvc-action--solid:focus-visible {
	transform: translateY(-1px);
}

.nvc-action--ghost {
	background: rgba(255, 255, 255, 0.04);
	border-color: var(--nvc-line);
	color: var(--nvc-ink);
}

.nvc-action--ghost:hover,
.nvc-action--ghost:focus-visible {
	border-color: rgba(194, 0, 77, 0.45);
}

.nvc-action--login {
	background: var(--nvc-login-bg);
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.06);
}

.nvc-action--login:hover,
.nvc-action--login:focus-visible {
	background: var(--nvc-login-hover);
	transform: translateY(-1px);
}

.nvc-action--nav {
	padding: 0.55rem 1.1rem;
	font-size: 0.875rem;
	border-radius: 0.625rem;
}

.nvc-action--hero {
	width: 50%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0.75rem 1rem;
	font-size: 1rem;
	border-radius: 3.125rem;
	box-shadow: var(--nvc-glow), 0 0.35rem 1.75rem rgba(194, 0, 77, 0.35);
}

.nvc-action--xl {
	padding: 0.85rem 1.45rem;
	font-size: 1.02rem;
}

.nvc-action--expand {
	width: 100%;
}

/* Badges */
.nvc-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.65rem;
	border-radius: 999px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	border: 1px solid var(--nvc-line);
	background: rgba(255, 255, 255, 0.04);
}

.nvc-badge--glow {
	border-color: rgba(194, 0, 77, 0.45);
	box-shadow: 0 0 1rem rgba(194, 0, 77, 0.25);
}

.nvc-badge--pulse {
	animation: nvc-pulse 2.8s ease-in-out infinite;
}

@keyframes nvc-pulse {
	0%,
	100% {
		box-shadow: 0 0 0 0 rgba(194, 0, 77, 0.35);
	}
	50% {
		box-shadow: 0 0 0 0.55rem rgba(194, 0, 77, 0);
	}
}

/* Score meter */
.nvc-score {
	display: inline-flex;
	align-items: center;
	gap: var(--nvc-space-2);
}

.nvc-score__meter {
	width: 8rem;
	height: 0.45rem;
	appearance: none;
	border: none;
}

.nvc-score__meter::-webkit-meter-bar {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
}
.nvc-score__meter::-webkit-meter-optimum-value {
	background: linear-gradient(90deg, var(--nvc-ice), var(--nvc-neon));
	border-radius: 999px;
}

.nvc-score__meter::-moz-meter-bar {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
}
.nvc-score__meter:-moz-meter-optimum {
	background: linear-gradient(90deg, var(--nvc-ice), var(--nvc-neon));
	border-radius: 999px;
}

.nvc-score__value {
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

/* Game tiles */
.nvc-tile {
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	background: var(--nvc-panel);
	backdrop-filter: blur(0.85rem);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.35s var(--nvc-ease), box-shadow 0.35s var(--nvc-ease);
}

.nvc-tile:hover {
	transform: translateY(-0.2rem) scale(1.015);
	box-shadow: var(--nvc-glow);
}

.nvc-tile__media {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.nvc-tile__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s var(--nvc-ease);
}

.nvc-tile:hover .nvc-tile__media img {
	transform: scale(1.06);
}

.nvc-tile__shine {
	position: absolute;
	inset: -40%;
	background: radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.25), transparent 55%);
	mix-blend-mode: screen;
	opacity: 0;
	transition: opacity 0.5s var(--nvc-ease);
}

.nvc-tile:hover .nvc-tile__shine {
	opacity: 1;
}

.nvc-tile__ph {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(140deg, rgba(74, 31, 88, 0.4), rgba(194, 0, 77, 0.12));
}

.nvc-tile__body {
	padding: 0.4rem 0.5rem 0.55rem;
	display: grid;
	gap: 0.15rem;
}

.nvc-tile__eyebrow {
	margin: 0;
	font-size: 0.62rem;
	line-height: 1.2;
	color: var(--nvc-ink-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.nvc-tile__title {
	margin: 0;
	font-size: 0.72rem;
	line-height: 1.25;
	font-family: var(--nvc-font-display);
}

.nvc-tile__title-link {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	text-decoration: none;
}

/* Spotlight */
.nvc-spotlight {
	display: grid;
	gap: var(--nvc-space-3);
	border-radius: var(--nvc-radius-lg);
	border: 1px solid var(--nvc-line);
	background: linear-gradient(135deg, rgba(74, 31, 88, 0.2), rgba(194, 0, 77, 0.08));
	backdrop-filter: blur(1rem);
	padding: var(--nvc-space-3);
}

.nvc-spotlight__visual {
	border-radius: var(--nvc-radius-md);
	overflow: hidden;
	min-height: 12rem;
}

.nvc-spotlight__img,
.nvc-spotlight__ph {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	min-height: 12rem;
}

.nvc-spotlight__ph {
	background: radial-gradient(circle at 30% 30%, rgba(194, 0, 77, 0.3), rgba(74, 31, 88, 0.25));
}

.nvc-spotlight__copy {
	display: grid;
	gap: var(--nvc-space-2);
	align-content: start;
}

.nvc-spotlight__kicker {
	margin: 0;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	color: var(--nvc-ice);
}

.nvc-spotlight__title {
	margin: 0;
	font-size: 1.45rem;
	font-family: var(--nvc-font-display);
}

.nvc-spotlight__bonus {
	margin: 0;
	color: var(--nvc-ink-muted);
}

.nvc-spotlight__row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nvc-space-2);
}

@media (min-width: 48rem) {
	.nvc-spotlight {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
		align-items: center;
	}
}

/* Bonus cards */
.nvc-bonus {
	border-radius: var(--nvc-radius-md);
	padding: var(--nvc-space-3);
	border: 1px solid var(--nvc-line);
	background: var(--nvc-panel);
	backdrop-filter: blur(0.9rem);
	display: grid;
	gap: var(--nvc-space-2);
}

.nvc-bonus__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--nvc-space-2);
}

.nvc-bonus__title {
	margin: 0;
	font-size: 1.1rem;
	font-family: var(--nvc-font-display);
}

.nvc-bonus__text {
	margin: 0;
	color: var(--nvc-ink-muted);
}

.nvc-bonus__meter {
	display: grid;
	gap: 0.35rem;
}

.nvc-bonus__label {
	font-size: 0.8rem;
	color: var(--nvc-ink-muted);
}

.nvc-bonus__bar {
	width: 100%;
	height: 0.55rem;
}

.nvc-bonus__bar::-webkit-meter-bar {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
}
.nvc-bonus__bar::-webkit-meter-optimum-value {
	background: linear-gradient(90deg, var(--nvc-violet), var(--nvc-neon));
	border-radius: 999px;
}

.nvc-bonus__bar::-moz-meter-bar {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
}
.nvc-bonus__bar:-moz-meter-optimum {
	background: linear-gradient(90deg, var(--nvc-violet), var(--nvc-neon));
	border-radius: 999px;
}

/* FAQ */
.nvc-faq__title {
	font-family: var(--nvc-font-display);
	margin: 0 0 var(--nvc-space-3);
}

.nvc-faq__list {
	display: grid;
	gap: var(--nvc-space-2);
}

.nvc-faq__item {
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	background: var(--nvc-panel);
	backdrop-filter: blur(0.7rem);
	padding: 0 var(--nvc-space-2);
}

.nvc-faq__q {
	cursor: pointer;
	font-weight: 700;
	padding: var(--nvc-space-2) 0;
	list-style: none;
}

.nvc-faq__q::-webkit-details-marker {
	display: none;
}

.nvc-faq__a {
	padding-bottom: var(--nvc-space-2);
	color: var(--nvc-ink-muted);
}

.nvc-faq__a p {
	margin: 0;
}

/* FAQ → trust: same content column as the rest of .nvc-page (inside <main>) */
.nvc-page > .nvc-band.nvc-band--faq:has(+ .nvc-band--trust) {
	padding-bottom: var(--nvc-space-3);
}

/* Trust badges: strip matches FAQ/pay “glass” look; no full-viewport band background */
.nvc-page > .nvc-band.nvc-band--trust {
	padding-top: var(--nvc-space-2);
	padding-bottom: var(--nvc-space-2);
	background: transparent;
	border: 0;
	box-sizing: border-box;
	max-width: 100%;
}

.nvc-page > .nvc-band--faq .nvc-shell,
.nvc-page > .nvc-band--trust .nvc-shell {
	width: min(100% - clamp(1rem, 3vw, var(--nvc-space-4)), var(--nvc-max));
	max-width: 100%;
	margin-inline: auto;
	box-sizing: border-box;
}

.nvc-trust-badges {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: var(--nvc-space-2) clamp(var(--nvc-space-2), 2vw, var(--nvc-space-3));
	border-radius: var(--nvc-radius-lg);
	border: 1px solid var(--nvc-line);
	background: var(--nvc-panel);
	backdrop-filter: blur(var(--nvc-blur-panel));
	-webkit-backdrop-filter: blur(var(--nvc-blur-panel));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 0.75rem 2rem rgba(0, 0, 0, 0.22);
	box-sizing: border-box;
}

.nvc-trust-badges__list {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: center;
	gap: clamp(0.25rem, 1vw, var(--nvc-space-2));
	min-height: clamp(2.75rem, 1.35rem + 4.75vw, 4rem);
}

.nvc-trust-badges__item {
	margin: 0;
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	min-width: 0;
	min-height: 0;
}

.nvc-trust-badges__link {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	width: 100%;
	max-width: 100%;
	min-height: 0;
	padding: 0.2rem 0.35rem;
	border-radius: var(--nvc-radius-sm);
	border: 1px solid transparent;
	background: rgba(255, 255, 255, 0.02);
	box-sizing: border-box;
	transition: border-color 0.2s var(--nvc-ease), background 0.2s var(--nvc-ease), box-shadow 0.2s var(--nvc-ease), opacity 0.2s var(--nvc-ease);
}

.nvc-trust-badges__link:hover,
.nvc-trust-badges__link:focus-visible {
	border-color: rgba(194, 0, 77, 0.35);
	background: rgba(194, 0, 77, 0.1);
	box-shadow: 0 0 0 1px rgba(74, 31, 88, 0.22);
	opacity: 1;
	outline: none;
}

.nvc-trust-badges__img {
	display: block;
	width: auto;
	max-width: min(100%, 12rem);
	height: auto;
	max-height: clamp(1.85rem, 0.85rem + 4.5vw, 3.35rem);
	margin: 0 auto;
	object-fit: contain;
	object-position: center;
	filter: drop-shadow(0 0.15rem 0.4rem rgba(0, 0, 0, 0.35));
}

/* Payments */
.nvc-pay__title {
	font-family: var(--nvc-font-display);
	margin: 0 0 var(--nvc-space-3);
}

.nvc-pay__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	width: 100%;
	gap: var(--nvc-space-2);
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 11.5rem), 1fr));
}

.nvc-pay__cell {
	border-radius: var(--nvc-radius-md);
	padding: var(--nvc-space-3);
	border: 1px solid var(--nvc-line);
	background: linear-gradient(160deg, rgba(194, 0, 77, 0.07), rgba(74, 31, 88, 0.1));
	display: grid;
	gap: 0.35rem;
	min-width: 0;
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.28);
}

.nvc-pay__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.15rem;
}

.nvc-pay__logo-img {
	width: auto;
	max-width: 100%;
	max-height: 2.75rem;
	height: auto;
	object-fit: contain;
	filter: drop-shadow(0 0.15rem 0.35rem rgba(0, 0, 0, 0.35));
}

.nvc-pay__label {
	font-weight: 800;
	font-family: var(--nvc-font-display);
}

.nvc-pay__sub {
	color: var(--nvc-ink-muted);
	font-size: 0.9rem;
}

/* Providers */
.nvc-studios__title {
	font-family: var(--nvc-font-display);
	margin: 0;
}

.nvc-studios__rail {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	width: 100%;
	gap: var(--nvc-space-2);
	grid-template-columns: repeat(8, minmax(0, 1fr));
}

.nvc-studios__chip {
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	padding: 0.75rem 0 0;
	background: rgba(255, 255, 255, 0.04);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-width: 0;
	min-height: 6.75rem;
	width: 100%;
	text-align: center;
	overflow: hidden;
}

.nvc-studios__chip-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	align-self: stretch;
	gap: 0.5rem;
	text-decoration: none;
	color: inherit;
	min-width: 0;
	width: 100%;
	min-height: 0;
	gap: 0.4rem;
}

.nvc-studios__chip-link:hover .nvc-studios__heading {
	color: var(--nvc-ice);
}

.nvc-studios__heading {
	font-weight: 700;
	font-size: 0.9rem;
	line-height: 1.25;
	color: var(--nvc-ink);
	width: 100%;
	padding-inline: 0.5rem;
}

.nvc-studios__logo-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	width: 100%;
	height: 3.35rem;
	min-height: 3.35rem;
	margin: 0;
	padding: 0;
	background: #ffffff;
}

.nvc-studios__logo-img {
	display: block;
	margin: 0 auto;
	width: 78%;
	height: 78%;
	max-width: 100%;
	max-height: 100%;
	transform: scale(var(--nvc-logo-scale, 1));
	transform-origin: center;
	object-fit: contain;
	object-position: center;
}

/* Keep providers in one row on larger screens by trimming count per breakpoint. */
@media (max-width: 87.99rem) and (min-width: 72rem) {
	.nvc-studios__rail {
		grid-template-columns: repeat(7, minmax(0, 1fr));
	}

	.nvc-studios__chip:nth-child(n + 8) {
		display: none;
	}
}

@media (max-width: 71.99rem) and (min-width: 48rem) {
	.nvc-studios__rail {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.nvc-studios__chip:nth-child(n + 7) {
		display: none;
	}
}

@media (max-width: 47.99rem) {
	.nvc-studios__rail {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nvc-studios__chip:nth-child(n + 7) {
		display: none;
	}
}

/* Editorial / prose */
.nvc-editorial {
	padding: var(--nvc-space-5) 0 var(--nvc-space-6);
	min-width: 0;
}

.nvc-editorial__shell {
	display: grid;
	gap: var(--nvc-space-4);
	min-width: 0;
}

.nvc-editorial__article {
	min-width: 0;
	max-width: 100%;
}

.nvc-editorial__body.nvc-prose {
	min-width: 0;
	overflow-x: hidden;
}

.nvc-editorial__extra.nvc-prose {
	min-width: 0;
	overflow-x: hidden;
}

.nvc-editorial__h {
	margin: 0 0 var(--nvc-space-2);
	font-family: var(--nvc-font-display);
	font-size: clamp(1.75rem, 3vw, 2.25rem);
}

.nvc-editorial__body {
	border-radius: var(--nvc-radius-lg);
	border: 1px solid var(--nvc-line);
	padding: var(--nvc-space-4);
	background: var(--nvc-panel);
	backdrop-filter: blur(var(--nvc-blur-panel));
	-webkit-backdrop-filter: blur(var(--nvc-blur-panel));
}

/* CTA banner: full width of editorial content panel + side figures */
.nvc-editorial__body.nvc-prose > .nvc-cta-banner {
	margin-inline: calc(-1 * var(--nvc-space-4));
	width: calc(100% + 2 * var(--nvc-space-4));
	max-width: none;
}

.nvc-prose .nvc-cta-banner {
	display: grid;
	grid-template-columns: minmax(4.5rem, 0.9fr) minmax(0, 2fr) minmax(4.5rem, 0.9fr);
	gap: 0;
	align-items: stretch;
	text-align: center;
	margin-block: var(--nvc-space-4);
	margin-inline: auto;
	padding: 0;
	border-radius: var(--nvc-radius-lg);
	border: 1px solid rgba(194, 0, 77, 0.35);
	background: linear-gradient(135deg, rgba(194, 0, 77, 0.14), rgba(20, 20, 28, 0.88));
	box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.35);
	overflow: hidden;
}

.nvc-prose .nvc-cta-banner__side {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: stretch;
	align-self: stretch;
	min-height: 0;
	min-width: 0;
	height: 100%;
	pointer-events: none;
}

.nvc-prose .nvc-cta-banner__side--left {
	align-items: flex-end;
}

.nvc-prose .nvc-cta-banner__side--right {
	align-items: flex-start;
}

.nvc-prose .nvc-cta-banner__figure {
	display: block;
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	min-height: 0;
	max-width: none;
	object-fit: cover;
	object-position: center bottom;
}

.nvc-prose .nvc-cta-banner__main {
	display: grid;
	gap: var(--nvc-space-3);
	justify-items: center;
	align-content: center;
	width: 100%;
	min-width: 0;
	padding: var(--nvc-space-3) var(--nvc-space-2);
}

.nvc-prose .nvc-cta-banner__copy {
	display: grid;
	gap: var(--nvc-space-2);
	width: 100%;
	text-align: center;
}

.nvc-prose .nvc-cta-banner__title {
	margin: 0;
	font-weight: 800;
	font-size: clamp(1.05rem, 2.2vw, 1.2rem);
	line-height: 1.25;
	color: var(--nvc-ice);
	text-align: center;
}

.nvc-prose .nvc-cta-banner__sub {
	margin: 0;
	font-size: 0.9rem;
	color: var(--nvc-ink-muted);
	font-weight: 600;
	text-align: center;
}

.nvc-prose .nvc-cta-banner__actions {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0 !important;
}

@media (max-width: 52rem) {
	.nvc-prose .nvc-cta-banner {
		grid-template-columns: 1fr;
		padding: var(--nvc-space-3) var(--nvc-space-4);
	}

	.nvc-prose .nvc-cta-banner__side {
		display: none;
	}
}

/* Standalone CTA button shortcode: row centered in prose */
.nvc-prose .wp-block-buttons.nvc-cta-buttons {
	justify-content: center;
	width: 100%;
}

/* CTA buttons: larger tap target + typography (banner + nvc_cta_button shortcode) */
.nvc-prose .nvc-cta-banner__actions .wp-block-button .wp-block-button__link,
.nvc-prose .wp-block-buttons.nvc-cta-buttons .wp-block-button .wp-block-button__link {
	padding: 0.95rem 2rem;
	border-radius: 0.875rem;
	font-size: clamp(1.02rem, 2.1vw, 1.2rem);
	font-weight: 800;
	min-height: 3.25rem;
}

.nvc-prose .nvc-cta-banner__actions .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.nvc-prose .wp-block-buttons.nvc-cta-buttons .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	box-shadow: 0 0.45rem 1.5rem rgba(194, 0, 77, 0.42), 0 0 1.25rem rgba(194, 0, 77, 0.2);
}

.nvc-editorial__aside {
	border-radius: var(--nvc-radius-lg);
	border: 1px dashed rgba(194, 0, 77, 0.35);
	padding: var(--nvc-space-3);
	background: rgba(255, 255, 255, 0.02);
}

.nvc-editorial__subh {
	margin: 0 0 var(--nvc-space-2);
	font-family: var(--nvc-font-display);
}

/* Editorial panel: images/figures span full inner width (edge to edge inside the card). Tables stay in text column. */
.nvc-editorial__body.nvc-prose > :where(figure:not(.wp-block-table)) {
	margin-inline: calc(-1 * var(--nvc-space-4));
	width: calc(100% + 2 * var(--nvc-space-4));
	max-width: none;
}

.nvc-editorial__body.nvc-prose > :where(figure:not(.wp-block-table)) > :where(img, video) {
	width: 100%;
	height: auto;
	display: block;
}

.nvc-editorial__body.nvc-prose > p:has(> img:only-child) {
	margin-inline: calc(-1 * var(--nvc-space-4));
	width: calc(100% + 2 * var(--nvc-space-4));
	max-width: none;
}

.nvc-editorial__body.nvc-prose > p:has(> img:only-child) img {
	width: 100%;
	max-width: none;
}

.nvc-editorial__body.nvc-prose > :where(div.wp-block-image) {
	margin-inline: calc(-1 * var(--nvc-space-4));
	width: calc(100% + 2 * var(--nvc-space-4));
	max-width: none;
}

.nvc-editorial__body.nvc-prose > :where(div.wp-block-image) :where(figure) {
	margin-inline: 0;
	width: 100%;
	max-width: none;
}

.nvc-editorial__extra.nvc-prose > :where(figure:not(.wp-block-table)) {
	margin-inline: calc(-1 * var(--nvc-space-3));
	width: calc(100% + 2 * var(--nvc-space-3));
	max-width: none;
}

.nvc-editorial__extra.nvc-prose > :where(figure:not(.wp-block-table)) > :where(img, video) {
	width: 100%;
	height: auto;
	display: block;
}

.nvc-editorial__extra.nvc-prose > p:has(> img:only-child) {
	margin-inline: calc(-1 * var(--nvc-space-3));
	width: calc(100% + 2 * var(--nvc-space-3));
	max-width: none;
}

.nvc-editorial__extra.nvc-prose > p:has(> img:only-child) img {
	width: 100%;
	max-width: none;
}

.nvc-editorial__extra.nvc-prose > :where(div.wp-block-image) {
	margin-inline: calc(-1 * var(--nvc-space-3));
	width: calc(100% + 2 * var(--nvc-space-3));
	max-width: none;
}

.nvc-editorial__extra.nvc-prose > :where(div.wp-block-image) :where(figure) {
	margin-inline: 0;
	width: 100%;
	max-width: none;
}

/* Add class `nvc-prose--panel` on article / page / review / game bodies (see templates) */
.nvc-prose--panel {
	border-radius: var(--nvc-radius-lg);
	border: 1px solid var(--nvc-line);
	padding: var(--nvc-space-4);
	background: var(--nvc-panel);
	backdrop-filter: blur(var(--nvc-blur-panel));
	-webkit-backdrop-filter: blur(var(--nvc-blur-panel));
	box-shadow: var(--nvc-glass-elevated);
}

/* Post / page / CPT body copy — NV neon / violet, glass, Montserrat rhythm */
.nvc-prose {
	font-size: clamp(1rem, 0.35vw + 0.92rem, 1.0625rem);
	line-height: 1.68;
	color: rgba(255, 255, 255, 0.88);
}

.nvc-prose ::selection {
	background: var(--nvc-selection);
	color: var(--nvc-ink);
}

.nvc-prose > :first-child {
	margin-top: 0;
}

.nvc-prose > :last-child {
	margin-bottom: 0;
}

.nvc-prose :where(h1, h2, h3, h4, h5, h6) {
	font-family: var(--nvc-font-display);
	font-weight: 800;
	color: var(--nvc-ink);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.nvc-prose h1 {
	margin: var(--nvc-space-5) 0 var(--nvc-space-2);
	font-size: clamp(1.65rem, 2.8vw, 2.1rem);
}

.nvc-prose h2 {
	position: relative;
	margin: var(--nvc-space-5) 0 var(--nvc-space-2);
	padding-bottom: var(--nvc-space-2);
	font-size: clamp(1.45rem, 2.4vw, 1.85rem);
}

.nvc-prose h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: min(4.75rem, 42%);
	height: 2px;
	border-radius: 999px;
	background: var(--nvc-gradient-accent-h);
	box-shadow: 0 0 0.85rem rgba(194, 0, 77, 0.4);
}

.nvc-prose h3 {
	position: relative;
	margin: var(--nvc-space-4) 0 var(--nvc-space-2);
	padding-left: 0.85rem;
	font-size: clamp(1.2rem, 2vw, 1.45rem);
	font-weight: 700;
}

.nvc-prose h3::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.12em;
	bottom: 0.12em;
	width: 3px;
	border-radius: 999px;
	background: var(--nvc-gradient-accent-v);
	box-shadow: 0 0 0.65rem rgba(194, 0, 77, 0.35);
}

.nvc-prose h4 {
	margin: var(--nvc-space-3) 0 var(--nvc-space-1);
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0;
	color: rgba(255, 255, 255, 0.96);
}

.nvc-prose h5 {
	margin: var(--nvc-space-3) 0 var(--nvc-space-1);
	font-size: 1rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--nvc-ice);
}

.nvc-prose h6 {
	margin: var(--nvc-space-2) 0 var(--nvc-space-1);
	font-size: 0.8125rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--nvc-ink-muted);
}

.nvc-prose p {
	margin: 0 0 var(--nvc-space-3);
	color: inherit;
}

.nvc-prose :where(ul, ol) {
	margin: 0 0 var(--nvc-space-3);
	padding-left: 1.35rem;
	color: inherit;
}

.nvc-prose > ul,
.nvc-prose > ol {
	padding: var(--nvc-space-2) var(--nvc-space-3);
	padding-left: calc(var(--nvc-space-3) + 1.2rem);
	background: rgba(22, 24, 42, 0.75);
	border: 1px solid var(--nvc-line);
	border-radius: var(--nvc-radius-md);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
	backdrop-filter: blur(0.5rem);
	-webkit-backdrop-filter: blur(0.5rem);
}

.nvc-prose :where(ul, ol) ul,
.nvc-prose :where(ul, ol) ol {
	margin-bottom: var(--nvc-space-1);
	margin-top: var(--nvc-space-1);
}

.nvc-prose li {
	margin: 0 0 var(--nvc-space-1);
	padding-inline-start: 0.2rem;
}

.nvc-prose li::marker {
	color: var(--nvc-ice);
}

.nvc-prose :where(ul) {
	list-style-type: disc;
}

.nvc-prose :where(ol) {
	list-style-type: decimal;
}

.nvc-prose dt {
	font-weight: 700;
	color: var(--nvc-ink);
	margin-top: var(--nvc-space-2);
}

.nvc-prose dd {
	margin: var(--nvc-space-1) 0 var(--nvc-space-2) 0.5rem;
	color: inherit;
}

.nvc-prose blockquote,
.nvc-prose .wp-block-quote {
	margin: var(--nvc-space-4) 0;
	padding: var(--nvc-space-3) var(--nvc-space-3) var(--nvc-space-3) var(--nvc-space-4);
	border-left: 0.25rem solid var(--nvc-neon);
	border-radius: 0 var(--nvc-radius-md) var(--nvc-radius-md) 0;
	background:
		linear-gradient(135deg, rgba(194, 0, 77, 0.1), rgba(74, 31, 88, 0.07)),
		rgba(255, 255, 255, 0.03);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.06),
		0 0.5rem 1.75rem rgba(194, 0, 77, 0.08);
	color: rgba(255, 255, 255, 0.92);
	font-style: normal;
	backdrop-filter: blur(0.4rem);
	-webkit-backdrop-filter: blur(0.4rem);
}

.nvc-prose blockquote p,
.nvc-prose .wp-block-quote p {
	margin-bottom: var(--nvc-space-2);
	color: inherit;
}

.nvc-prose blockquote p:last-child,
.nvc-prose .wp-block-quote p:last-child {
	margin-bottom: 0;
}

.nvc-prose blockquote cite,
.nvc-prose .wp-block-quote cite {
	display: block;
	margin-top: var(--nvc-space-2);
	font-size: 0.875rem;
	font-style: normal;
	color: var(--nvc-ink-muted);
}

.nvc-prose .wp-block-pullquote {
	margin: var(--nvc-space-4) 0;
	padding: var(--nvc-space-4);
	text-align: center;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--nvc-radius-lg);
	background: var(--nvc-panel);
	backdrop-filter: blur(0.75rem);
	-webkit-backdrop-filter: blur(0.75rem);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.06),
		0 0 2rem rgba(194, 0, 77, 0.12),
		0 0 3rem rgba(74, 31, 88, 0.1);
}

.nvc-prose .wp-block-pullquote blockquote {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
	box-shadow: none;
}

.nvc-prose .wp-block-pullquote p {
	font-family: var(--nvc-font-display);
	font-size: clamp(1.15rem, 2.2vw, 1.5rem);
	font-weight: 700;
	line-height: 1.35;
	color: var(--nvc-ink);
	text-shadow: 0 0 1.5rem rgba(194, 0, 77, 0.2);
}

.nvc-prose a {
	color: var(--nvc-ice);
	text-decoration: underline;
	text-decoration-thickness: 0.07em;
	text-underline-offset: 0.2em;
	transition: color 0.2s var(--nvc-ease), text-decoration-color 0.2s var(--nvc-ease);
}

.nvc-prose a:hover,
.nvc-prose a:focus-visible {
	color: #fff;
	text-decoration-color: rgba(232, 72, 122, 0.85);
	text-shadow: 0 0 1rem rgba(194, 0, 77, 0.35);
}

.nvc-prose strong,
.nvc-prose b {
	font-weight: 700;
	color: var(--nvc-ink);
}

.nvc-prose em,
.nvc-prose i {
	font-style: italic;
}

.nvc-prose :where(sub, sup) {
	font-size: 0.75em;
}

.nvc-prose hr,
.nvc-prose .wp-block-separator {
	margin: var(--nvc-space-5) 0;
	border: none;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(74, 31, 88, 0.5),
		rgba(194, 0, 77, 0.55),
		rgba(74, 31, 88, 0.5),
		transparent
	);
	opacity: 1;
	box-shadow: 0 0 0.75rem rgba(194, 0, 77, 0.2);
}

.nvc-prose .wp-block-separator.is-style-wide {
	height: 2px;
	border-radius: 999px;
	box-shadow: 0 0 1rem rgba(194, 0, 77, 0.25);
}

.nvc-prose code,
.nvc-prose kbd {
	font-family: ui-monospace, "Cascadia Code", "Segoe UI Mono", Menlo, Consolas, monospace;
	font-size: 0.88em;
	padding: 0.12em 0.4em;
	border-radius: var(--nvc-radius-sm);
	background: rgba(0, 0, 0, 0.35);
	border: 1px solid var(--nvc-line);
	color: #e8eaf2;
}

.nvc-prose pre,
.nvc-prose .wp-block-code {
	margin: var(--nvc-space-4) 0;
	padding: var(--nvc-space-3);
	max-width: 100%;
	overflow-x: auto;
	border-radius: var(--nvc-radius-md);
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: linear-gradient(165deg, rgba(22, 24, 42, 0.95), rgba(10, 11, 22, 0.98));
	box-shadow:
		inset 0 0 0 1px rgba(194, 0, 77, 0.12),
		0 0.75rem 2rem rgba(0, 0, 0, 0.4);
	font-size: 0.875rem;
	line-height: 1.55;
	tab-size: 2;
}

.nvc-prose pre code,
.nvc-prose .wp-block-code code {
	padding: 0;
	border: none;
	background: none;
	font-size: inherit;
	color: #d8dce8;
}

.nvc-prose :where(figure) {
	margin: var(--nvc-space-4) 0;
}

.nvc-prose figcaption,
.nvc-prose .wp-element-caption {
	margin-top: var(--nvc-space-2);
	font-size: 0.75rem;
	line-height: 1.45;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(177, 181, 195, 0.95);
	text-align: center;
	max-width: 100%;
}

.nvc-prose :where(figure) img,
.nvc-prose p > img {
	border-radius: var(--nvc-radius-sm);
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 1rem 2.25rem rgba(0, 0, 0, 0.35);
}

.nvc-prose .wp-block-table {
	margin: var(--nvc-space-4) 0;
	overflow: visible;
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	background: rgba(22, 24, 42, 0.45);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.04),
		0 0.5rem 1.5rem rgba(0, 0, 0, 0.2);
}

.nvc-prose > table {
	margin: var(--nvc-space-4) 0;
	display: table;
	width: 100%;
}

.nvc-prose .wp-block-table,
.nvc-prose > table {
	scrollbar-width: thin;
	scrollbar-color: rgba(232, 72, 122, 0.78) rgba(255, 255, 255, 0.08);
}

.nvc-prose .wp-block-table::-webkit-scrollbar,
.nvc-prose > table::-webkit-scrollbar {
	height: 0.62rem;
}

.nvc-prose .wp-block-table::-webkit-scrollbar-track,
.nvc-prose > table::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
}

.nvc-prose .wp-block-table::-webkit-scrollbar-thumb,
.nvc-prose > table::-webkit-scrollbar-thumb {
	background: linear-gradient(90deg, rgba(194, 0, 77, 0.95), rgba(74, 31, 88, 0.92));
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
}

.nvc-prose .wp-block-table::-webkit-scrollbar-thumb:hover,
.nvc-prose > table::-webkit-scrollbar-thumb:hover {
	background: linear-gradient(90deg, rgba(232, 72, 122, 0.98), rgba(97, 44, 124, 0.95));
}

.nvc-prose table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.94rem;
	line-height: 1.5;
}

.nvc-prose thead th {
	text-align: left;
	font-family: var(--nvc-font-display);
	font-weight: 700;
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--nvc-ink);
	background: var(--nvc-gradient-table-head);
	border-bottom: 1px solid rgba(194, 0, 77, 0.4);
}

.nvc-prose :where(th, td) {
	padding: 0.65rem 0.85rem;
	border: 1px solid var(--nvc-line);
	vertical-align: top;
	white-space: normal;
}

.nvc-prose tbody tr:nth-child(even) {
	background: rgba(255, 255, 255, 0.02);
}

.nvc-prose tbody tr:hover {
	background: rgba(255, 255, 255, 0.04);
}

@media (max-width: 47.99rem) {
	.nvc-prose .wp-block-table {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
	}

	.nvc-prose > table {
		display: block;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		max-width: 100%;
	}

	.nvc-prose table {
		width: max-content;
		min-width: 100%;
	}

	.nvc-prose :where(th, td) {
		white-space: nowrap;
	}
}

.nvc-prose .has-small-font-size {
	font-size: 0.875rem;
}

.nvc-prose .has-medium-font-size {
	font-size: 1rem;
}

.nvc-prose .has-large-font-size {
	font-size: clamp(1.15rem, 2vw, 1.35rem);
}

.nvc-prose .has-x-large-font-size {
	font-size: clamp(1.35rem, 2.5vw, 1.75rem);
}

.nvc-prose .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nvc-space-2);
	margin: var(--nvc-space-3) 0;
}

.nvc-prose .wp-block-button .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.65rem 1.35rem;
	border-radius: 0.625rem;
	font-weight: 700;
	font-size: 0.9375rem;
	text-decoration: none;
	border: 1px solid transparent;
	transition: transform 0.2s var(--nvc-ease), box-shadow 0.2s var(--nvc-ease), filter 0.2s var(--nvc-ease);
}

.nvc-prose .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: linear-gradient(135deg, var(--nvc-neon), #8a0038);
	color: #fff;
	box-shadow: 0 0.35rem 1.25rem rgba(194, 0, 77, 0.35);
}

.nvc-prose .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.nvc-prose .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus-visible {
	filter: brightness(1.08);
	transform: translateY(-2px);
	box-shadow: var(--nvc-glow);
}

.nvc-prose .wp-block-button.is-style-outline .wp-block-button__link {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(232, 72, 122, 0.45);
	color: var(--nvc-ice);
}

.nvc-prose .wp-block-button.is-style-outline .wp-block-button__link:hover,
.nvc-prose .wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
	background: rgba(194, 0, 77, 0.12);
	border-color: var(--nvc-ice);
	color: #fff;
}

/* Stream / cards */
.nvc-stream {
	padding: var(--nvc-space-5) 0;
	display: grid;
	gap: var(--nvc-space-4);
}

.nvc-stream__head {
	display: grid;
	gap: var(--nvc-space-1);
}

.nvc-stream__h {
	margin: 0;
	font-family: var(--nvc-font-display);
	font-size: clamp(1.75rem, 3vw, 2.4rem);
}

.nvc-stream__lede {
	margin: 0;
	color: var(--nvc-ink-muted);
	max-width: 48ch;
}

.nvc-stream__rail {
	display: grid;
	gap: var(--nvc-space-3);
}

@media (min-width: 48rem) {
	.nvc-stream__rail {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.nvc-card {
	border-radius: var(--nvc-radius-md);
	border: 1px solid var(--nvc-line);
	background: var(--nvc-panel);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	backdrop-filter: blur(0.75rem);
	transition: transform 0.3s var(--nvc-ease), box-shadow 0.3s var(--nvc-ease);
}

.nvc-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--nvc-glow);
}

.nvc-card__media {
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.nvc-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.nvc-card__ph {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 10rem;
	background: linear-gradient(135deg, rgba(74, 31, 88, 0.32), rgba(194, 0, 77, 0.12));
}

.nvc-card__body {
	padding: var(--nvc-space-3);
	display: grid;
	gap: var(--nvc-space-2);
	align-content: start;
}

.nvc-card__title {
	margin: 0;
	font-size: 1.2rem;
	font-family: var(--nvc-font-display);
}

.nvc-card__title a {
	text-decoration: none;
}

.nvc-card__excerpt {
	color: var(--nvc-ink-muted);
	font-size: 0.95rem;
}

/* Article / page sheet */
.nvc-article,
.nvc-sheet,
.nvc-arch,
.nvc-review,
.nvc-titlegame {
	padding: var(--nvc-space-5) 0;
}

.nvc-article__mast,
.nvc-sheet__mast,
.nvc-arch__head {
	display: grid;
	gap: var(--nvc-space-2);
	margin-bottom: var(--nvc-space-3);
}

.nvc-article__title,
.nvc-sheet__title,
.nvc-arch__h {
	margin: 0;
	font-family: var(--nvc-font-display);
	font-size: clamp(2rem, 3.4vw, 2.75rem);
}

.nvc-article__eyebrow {
	margin: 0;
	color: var(--nvc-ice);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 0.75rem;
}

.nvc-article__byline {
	margin: 0;
	color: var(--nvc-ink-muted);
}

.nvc-article__figure {
	margin: 0 0 var(--nvc-space-3);
	border-radius: var(--nvc-radius-lg);
	overflow: hidden;
	border: 1px solid var(--nvc-line);
}

.nvc-article__tags {
	margin-top: var(--nvc-space-4);
	font-size: 0.9rem;
	color: var(--nvc-ink-muted);
}

.nvc-pager {
	margin: var(--nvc-space-4) 0 0;
	display: flex;
	justify-content: center;
	gap: var(--nvc-space-2);
}

.nvc-pager .page-numbers {
	padding: 0.35rem 0.75rem;
	border-radius: 999px;
	border: 1px solid var(--nvc-line);
	text-decoration: none;
}

.nvc-pager .page-numbers.current {
	background: linear-gradient(135deg, var(--nvc-neon), #8e0037);
	color: #fff;
	border-color: transparent;
}

.nvc-empty {
	color: var(--nvc-ink-muted);
}

/* Review / game singles */
.nvc-review__mast {
	display: grid;
	gap: var(--nvc-space-2);
}

.nvc-review__eyebrow {
	margin: 0;
	color: var(--nvc-ice);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-size: 0.75rem;
	font-weight: 700;
}

.nvc-review__title {
	margin: 0;
	font-family: var(--nvc-font-display);
	font-size: clamp(2rem, 3.5vw, 3rem);
}

.nvc-review__scoreline {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nvc-space-2);
	align-items: center;
}

.nvc-review__figure {
	margin: var(--nvc-space-3) 0;
	border-radius: var(--nvc-radius-lg);
	overflow: hidden;
	border: 1px solid var(--nvc-line);
}

.nvc-titlegame__mast {
	display: grid;
	gap: var(--nvc-space-2);
	margin-bottom: var(--nvc-space-3);
}

.nvc-titlegame__title {
	margin: 0;
	font-family: var(--nvc-font-display);
	font-size: clamp(1.85rem, 3vw, 2.6rem);
}

.nvc-titlegame__meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--nvc-space-1);
}

.nvc-titlegame__layout {
	display: grid;
	gap: var(--nvc-space-3);
}

.nvc-titlegame__visual {
	border-radius: var(--nvc-radius-lg);
	overflow: hidden;
	border: 1px solid var(--nvc-line);
}

.nvc-titlegame__cover {
	width: 100%;
	height: auto;
}

.nvc-titlegame__ph {
	display: block;
	min-height: 14rem;
	background: linear-gradient(145deg, rgba(194, 0, 77, 0.25), rgba(74, 31, 88, 0.22));
}
