/* ==========================================================================
   GTA6 NOW — "Vice City Modern" design system
   Override layer loaded after style.css. Same-specificity rules win by order.
   ========================================================================== */

:root {
	/* Legacy accents (used across style.css via var(--or)) */
	--or: #ff2e88;
	--orhover: #ff5aa5;

	/* Vice City neon palette */
	--vc-pink: #ff2e88;
	--vc-magenta: #e935c1;
	--vc-violet: #8b5cf6;
	--vc-orange: #ff8a3d;
	--vc-gold: #ffc24b;
	--vc-cyan: #34e0e8;

	/* Surfaces — opaque ink so colorful stills sit on a quiet canvas */
	--bg-0: #0d0e14;
	--bg-1: #12131b;
	--bg-2: #171922;
	--bg-3: #1d1f29;
	--stroke: rgba(255, 255, 255, 0.08);
	--stroke-strong: rgba(255, 255, 255, 0.14);

	/* Text */
	--text-1: #f5f3fb;
	--text-2: #c2bfd4;
	--text-3: #a29ebf;

	/* Gradients */
	--grad-main: linear-gradient(135deg, #ff2e88 0%, #e935c1 48%, #8b5cf6 100%);
	--grad-sunset: linear-gradient(135deg, #ff8a3d 0%, #ff2e88 100%);
	--grad-text: linear-gradient(92deg, #ffc24b 0%, #ff2e88 45%, #8b5cf6 100%);
	--grad-line: linear-gradient(90deg, rgba(255, 46, 136, 0) 0%, #ff2e88 18%, #8b5cf6 82%, rgba(139, 92, 246, 0) 100%);

	/* Shape & depth */
	--r-sm: 10px;
	--r-md: 14px;
	--r-lg: 20px;
	--shadow-1: 0 4px 18px rgba(0, 0, 0, 0.35);
	--shadow-2: 0 18px 50px rgba(0, 0, 0, 0.55);
	--glow-pink: 0 6px 28px rgba(255, 46, 136, 0.35);
	--glow-soft: 0 8px 32px rgba(139, 92, 246, 0.22);

	--font-body: 'Inter', system-ui, -apple-system, sans-serif;
	--font-display: 'Oswald', 'Inter', system-ui, sans-serif;
	--font-article: 'Newsreader', 'Georgia', 'Times New Roman', serif;

	/* Article type — Newsreader body, Oswald display. 20px is a newspaper
	   text size; size-adjust on the face (newsreader.css) only corrects the
	   short x-height, it is not trying to preserve an 18px number. */
	--article-size: 20px;
	--article-leading: 1.7;
	--article-measure: 34em;
	--article-ink: #e6e3f2;
	--article-dek: 23px;

	--wrap: 1300px;
	--header-h: 100px;

	--ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* --------------------------------------------------------------------------
   Base
   -------------------------------------------------------------------------- */

html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	background-color: var(--bg-0);
	background-image: none;
	background-attachment: scroll;
	color: var(--text-2);
	font-family: var(--font-body);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* Quiet atmosphere only. Key art belongs in the hero and cards, not as wallpaper. */
body::before {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	background:
		radial-gradient(1100px 420px at 50% -20%, rgba(72, 62, 110, 0.12), transparent 64%),
		linear-gradient(180deg, rgba(13, 14, 20, 0.2) 0%, var(--bg-0) 480px);
}

@media (max-width: 1320px) {
	body {
		background-color: var(--bg-0);
		background-image: none;
		background-size: auto;
	}
}

::selection {
	background: rgba(255, 46, 136, 0.85);
	color: #fff;
}

::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
::-webkit-scrollbar-track {
	background: var(--bg-0);
}
::-webkit-scrollbar-thumb {
	background: #2b2e47;
	border-radius: 8px;
	border: 2px solid var(--bg-0);
}
::-webkit-scrollbar-thumb:hover {
	background: var(--vc-pink);
}

a {
	transition: color 0.22s var(--ease);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
	outline: 2px solid var(--vc-pink);
	outline-offset: 2px;
	border-radius: 4px;
}

img {
	user-select: none;
}

/* --------------------------------------------------------------------------
   Header — glass bar with neon hairline (sticky on phones only; see 700px MQ)
   -------------------------------------------------------------------------- */

.head-line {
	position: relative;
	z-index: 900;
	margin: 0 0 40px 0;
	background: rgba(10, 11, 20, 0.9);
	backdrop-filter: blur(16px) saturate(1.3);
	-webkit-backdrop-filter: blur(16px) saturate(1.3);
}

.not-main .head-line {
	margin: 0 0 36px 0;
}

.head-line::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: var(--grad-line);
	opacity: 0.85;
}

.head-line-w {
	height: var(--header-h);
}

/* Logo */

.logo > img {
	filter: drop-shadow(0 0 14px rgba(255, 46, 136, 0.45));
	transition: transform 0.3s var(--ease), filter 0.3s var(--ease);
}

.logo:hover > img {
	transform: rotate(-4deg) scale(1.06);
	filter: drop-shadow(0 0 22px rgba(255, 46, 136, 0.7));
}

.logo-r,
.logo-r span {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 21px;
	line-height: 19px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	background: var(--grad-text);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

/* Top menu */

.top-menu li {
	display: inline-block;
	vertical-align: top;
}

.top-menu-link {
	position: relative;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: var(--text-2);
	transition: color 0.22s var(--ease);
}

.top-menu-link::after {
	content: "";
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 4px;
	height: 2px;
	border-radius: 2px;
	background: var(--grad-main);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.28s var(--ease);
}

.top-menu-link:hover,
.top-menu-link.is-active {
	color: #fff;
}

.top-menu-link:hover::after,
.top-menu-link.is-active::after {
	transform: scaleX(1);
}

/* Header right */

.opensearch,
.head-login {
	border-radius: 999px;
	transition: background 0.22s var(--ease), color 0.22s var(--ease), box-shadow 0.22s var(--ease);
}

.head-login {
	padding: 9px 16px;
	gap: 8px;
}

.head-login i {
	margin: 0;
	font-size: 18px;
}

.head-login span {
	border-bottom: 0;
}

.opensearch:hover,
.head-login:hover {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

.head-reg {
	background: var(--grad-main);
	border-radius: 999px;
	color: #fff !important;
	font-weight: 600;
	letter-spacing: 0.02em;
	box-shadow: 0 4px 18px rgba(255, 46, 136, 0.35);
	transition: transform 0.22s var(--ease), box-shadow 0.22s var(--ease), filter 0.22s var(--ease);
}

.head-reg:hover {
	transform: translateY(-1px);
	box-shadow: var(--glow-pink);
	filter: brightness(1.08);
	color: #fff;
}

/* Login dropdown */

.login-wrap {
	z-index: 950;
}

.login-block {
	background: rgba(16, 18, 31, 0.98);
	backdrop-filter: blur(20px) saturate(1.3);
	-webkit-backdrop-filter: blur(20px) saturate(1.3);
	border: 1px solid var(--stroke-strong);
	border-radius: var(--r-lg);
	box-shadow: var(--shadow-2);
	overflow: hidden;
}

.login-title {
	font-family: var(--font-display);
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
}

.login-text {
	color: var(--text-3);
}

.login-input-text,
.login-input-text:focus {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--stroke-strong);
	border-radius: var(--r-sm);
	color: var(--text-1);
	transition: border-color 0.22s var(--ease), box-shadow 0.22s var(--ease), background 0.22s var(--ease);
}

.login-input-text:focus {
	border-color: var(--vc-pink);
	box-shadow: 0 0 0 3px rgba(255, 46, 136, 0.22);
	background: rgba(255, 255, 255, 0.08);
}

.enter,
.loginrfl input[type="submit"] {
	background: var(--grad-main) !important;
	border-radius: 999px !important;
	border: 0 !important;
	color: #fff !important;
	font-weight: 600;
	letter-spacing: 0.03em;
	cursor: pointer;
	transition: transform 0.22s var(--ease), box-shadow 0.22s var(--ease), filter 0.22s var(--ease);
}

.enter:hover,
.loginrfl input[type="submit"]:hover {
	transform: translateY(-1px);
	box-shadow: var(--glow-pink);
	filter: brightness(1.08);
}

.loginrfl a {
	color: var(--text-3);
}

.loginrfl a:hover {
	color: var(--vc-pink);
}

/* --------------------------------------------------------------------------
   Search overlay
   -------------------------------------------------------------------------- */

.search-block-wrap {
	position: fixed;
	top: var(--header-h);
	left: 0;
	width: 100%;
	z-index: 890;
	background: rgba(10, 11, 20, 0.97);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border-bottom: 1px solid var(--stroke);
	box-shadow: var(--shadow-2);
}

.search-block {
	width: auto;
	max-width: 1240px;
	height: auto;
	padding: 22px 0;
	margin: 0 auto;
	background: none;
	text-align: left;
}

.search-block form {
	position: relative;
	display: flex;
	align-items: center;
}

.search-ic {
	position: absolute;
	left: 22px;
	font-size: 20px;
	line-height: 1;
	color: var(--text-3);
	pointer-events: none;
}

.search-block .form-text {
	width: 100%;
	height: 58px;
	line-height: normal;
	padding: 0 140px 0 54px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--stroke-strong);
	border-radius: 999px;
	color: var(--text-1);
	font-size: 16px;
	transition: border-color 0.22s var(--ease), box-shadow 0.22s var(--ease), background 0.22s var(--ease);
}

.search-block .form-text::placeholder {
	color: var(--text-3);
}

.search-block .form-text:focus {
	border-color: var(--vc-pink);
	background: rgba(255, 255, 255, 0.07);
	box-shadow: 0 0 0 4px rgba(255, 46, 136, 0.18);
}

.search-block .form-search {
	position: absolute;
	right: 7px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	gap: 8px;
	width: auto;
	height: 44px;
	padding: 0 26px;
	border-radius: 999px;
	background: var(--grad-main);
	color: #fff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.03em;
	transition: filter 0.22s var(--ease), box-shadow 0.22s var(--ease);
}

.search-block .form-search i {
	font-size: 16px;
	line-height: 1;
}

.search-block .form-search:hover {
	filter: brightness(1.1);
	box-shadow: 0 4px 18px rgba(255, 46, 136, 0.4);
}

/* Quick search suggestions dropdown */

#searchsuggestions {
	width: 560px;
	max-width: calc(100vw - 40px);
	background: rgba(16, 18, 31, 0.98);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border: 1px solid var(--stroke-strong);
	border-radius: 16px;
	box-shadow: var(--shadow-2);
	overflow: hidden;
	margin-top: 8px;
}

#searchsuggestions a {
	padding: 14px 20px;
	color: var(--text-2);
	font-size: 13px;
	line-height: 1.45;
	border-bottom: 1px solid var(--stroke);
	transition: background 0.18s var(--ease), color 0.18s var(--ease);
}

#searchsuggestions a:hover {
	background: rgba(255, 255, 255, 0.05);
	color: var(--text-1);
}

#searchsuggestions a span.searchheading {
	color: var(--text-1);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	margin: 0 0 4px;
}

#searchsuggestions span.notfound {
	padding: 16px 20px;
	color: var(--text-3);
	border-bottom: 0;
}

/* --------------------------------------------------------------------------
   Layout shell
   -------------------------------------------------------------------------- */

.main-wrap {
	position: relative;
	z-index: 1;
	background: transparent;
	border-radius: 0;
}

body.main-c .main-wrap {
	padding-top: 12px;
}

/* --------------------------------------------------------------------------
   Hero lead — one latest article, same full-bleed banner as the old slider
   -------------------------------------------------------------------------- */

.hslider {
	overflow: hidden;
	border-radius: var(--r-lg);
	background: var(--bg-1);
	box-shadow: var(--shadow-2);
}

.hslider-news {
	display: block;
	position: relative;
	height: 480px;
	padding: 0;
	background: var(--bg-1);
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: hidden;
}

.hslider-news-l {
	position: absolute;
	inset: 0;
	width: 100%;
	overflow: hidden;
	background: var(--bg-1);
}

.hslider-news-image {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 0;
	overflow: hidden;
	background: var(--bg-1);
}

.hslider-news-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 0;
	transition: transform 0.45s var(--ease);
}

.hslider-news:hover .hslider-news-image img {
	transform: scale(1.04);
}

/* Readability scrim: left + bottom so copy holds on light stills (sky, water, dock). */

.hslider-news-l::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		linear-gradient(90deg, rgba(7, 8, 13, 0.78) 0%, rgba(7, 8, 13, 0.42) 36%, rgba(7, 8, 13, 0.08) 62%, transparent 82%),
		linear-gradient(180deg, rgba(7, 8, 13, 0.22) 0%, rgba(7, 8, 13, 0.12) 38%, rgba(7, 8, 13, 0.72) 78%, rgba(7, 8, 13, 0.92) 100%);
}

.hslider-news-r {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	width: auto;
	max-width: 760px;
	padding: 40px 48px 46px;
	box-sizing: border-box;
}

.hslider-news-title {
	font-family: var(--font-display);
	font-size: 34px;
	font-weight: 600;
	line-height: 1.16;
	letter-spacing: 0.015em;
	text-transform: uppercase;
	margin: 0 0 14px;
	text-shadow: 0 2px 28px rgba(0, 0, 0, 0.75), 0 1px 3px rgba(0, 0, 0, 0.55);
}

.hslider-news-title a {
	color: #fff;
	background-image: var(--grad-sunset);
	background-repeat: no-repeat;
	background-size: 0% 3px;
	background-position: 0 100%;
	transition: background-size 0.35s var(--ease);
}

.hslider-news-title a:hover {
	background-size: 100% 3px;
}

.hslider-news-info {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 14px;
}

.hslider-news-info a {
	display: inline-block;
	padding: 4px 14px;
	border-radius: 999px;
	background: rgba(10, 11, 20, 0.78);
	border: 1px solid rgba(255, 46, 136, 0.55);
	color: #ffc2da !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	backdrop-filter: blur(4px);
	transition: background 0.22s var(--ease), box-shadow 0.22s var(--ease), color 0.22s var(--ease);
}

.hslider-news-info a:hover {
	background: rgba(255, 46, 136, 0.85);
	color: #fff !important;
	box-shadow: 0 0 16px rgba(255, 46, 136, 0.45);
}

.hslider-news-date {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(7, 8, 13, 0.78);
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-shadow: none;
}

.hslider-news-date:after {
	display: none;
}

.hslider-news-text {
	color: #fff;
	opacity: 1;
	font-weight: 500;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.92), 0 2px 18px rgba(0, 0, 0, 0.75);
	line-height: 1.6;
	font-size: 14.5px;
	margin: 0 0 22px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.hslider-news-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 48px;
	line-height: 48px;
	padding: 0 34px;
	border: 0 !important;
	border-radius: 999px;
	background: var(--grad-main);
	color: #fff;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 13px;
	box-shadow: 0 6px 24px rgba(255, 46, 136, 0.4);
	box-sizing: border-box;
	transition: box-shadow 0.25s var(--ease), transform 0.25s var(--ease), filter 0.25s var(--ease);
}

.hslider-news-link i {
	margin: 0;
	font-size: 17px;
}

.hslider-news-link:hover {
	background: var(--grad-main);
	color: #fff;
	box-shadow: 0 8px 34px rgba(255, 46, 136, 0.6);
	transform: translateY(-2px);
	filter: brightness(1.1);
}

/* No slider — hide leftover pagination if a cached page still emits it */

.hslider-pagination {
	display: none;
}

.hslider-pagination .swiper-pagination-bullet {
	width: 26px;
	height: 4px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.28);
	opacity: 1;
	margin: 0 !important;
	transition: background 0.25s var(--ease), width 0.25s var(--ease), box-shadow 0.25s var(--ease);
}

.hslider-pagination .swiper-pagination-bullet-active {
	width: 40px;
	background: var(--grad-main);
	box-shadow: 0 0 12px rgba(255, 46, 136, 0.6);
}

/* --------------------------------------------------------------------------
   Section titles
   -------------------------------------------------------------------------- */

.title-block {
	position: relative;
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
	padding: 0 0 0 18px;
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

.title-block::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 26px;
	border-radius: 4px;
	background: var(--grad-sunset);
	box-shadow: 0 0 14px rgba(255, 46, 136, 0.55);
}

.title-block a {
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--text-2);
	padding: 6px 14px;
	border: 1px solid var(--stroke-strong);
	border-radius: 999px;
	transition: color 0.22s var(--ease), border-color 0.22s var(--ease), background 0.22s var(--ease);
}

.title-block a:hover {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.12);
}

/* --------------------------------------------------------------------------
   GTA games row
   -------------------------------------------------------------------------- */

.gta-game {
	position: relative;
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease);
}

.gta-game::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	border-radius: inherit;
	background: linear-gradient(180deg, transparent 52%, rgba(10, 11, 20, 0.85) 100%);
}

.gta-game-title {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 14px 16px;
	font-family: var(--font-display);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #fff;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.5);
}

.gta-game img {
	border-radius: var(--r-md);
}

.gta-game:hover {
	transform: translateY(-6px) scale(1.03);
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.5), 0 0 0 2px rgba(255, 46, 136, 0.55), 0 0 26px rgba(255, 46, 136, 0.35);
}

/* --------------------------------------------------------------------------
   GTA 6 news block (featured + minis)
   -------------------------------------------------------------------------- */

/* Left column is a plain wrapper in the base template — strip its panel look,
   the inner .gtnews card carries the frame */
.gtnews-wrap > div:nth-child(1) {
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.gtnews,
.gtnews2 {
	background: var(--bg-2);
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg);
	transition: transform 0.28s var(--ease), border-color 0.28s var(--ease), box-shadow 0.28s var(--ease);
}

.gtnews {
	padding: 18px 18px 22px;
	box-sizing: border-box;
	height: 100%;
}

.gtnews:hover,
.gtnews2:hover {
	transform: translateY(-4px);
	border-color: rgba(255, 46, 136, 0.4);
	box-shadow: var(--shadow-2), 0 0 0 1px rgba(255, 46, 136, 0.15);
}

.gtnews-image,
.gtnews2-image {
	border-radius: var(--r-md);
}

.gtnews-image img,
.gtnews2-image img {
	border-radius: var(--r-md);
	transition: transform 0.5s var(--ease);
}

.gtnews:hover .gtnews-image img,
.gtnews2:hover .gtnews2-image img {
	transform: scale(1.05);
}

.gtnews-title {
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.015em;
	color: var(--text-1) !important;
	transition: color 0.22s var(--ease);
}

.gtnews-title:hover {
	color: var(--vc-pink) !important;
}

.gtnews-text {
	color: var(--text-2);
	line-height: 1.65;
}

.gtnews-link,
.main-news-link {
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 12px;
	color: #ff7fb3;
	transition: color 0.22s var(--ease), text-shadow 0.22s var(--ease);
}

.gtnews-link:hover,
.main-news-link:hover {
	background: rgba(255, 46, 136, 0.12);
	border-color: var(--vc-pink);
	color: #fff;
	text-shadow: none;
}

.gtnews-date,
.gtnews2-date {
	color: var(--text-3);
	font-size: 12px;
	letter-spacing: 0.04em;
}

.gtnews-lc a {
	color: var(--vc-gold);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.gtnews2 {
	padding: 12px;
	box-sizing: border-box;
}

.gtnews2-title {
	font-weight: 600;
	color: var(--text-1) !important;
	line-height: 1.4;
	transition: color 0.22s var(--ease);
}

.gtnews2-title:hover {
	color: var(--vc-pink) !important;
}

/* --------------------------------------------------------------------------
   Latest news cards
   -------------------------------------------------------------------------- */

.main-news {
	background: var(--bg-2);
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg);
	overflow: hidden;
	transition: transform 0.28s var(--ease), border-color 0.28s var(--ease), box-shadow 0.28s var(--ease);
}

.main-news:hover {
	transform: translateY(-4px);
	border-color: rgba(255, 46, 136, 0.38);
	box-shadow: var(--shadow-2), 0 0 0 1px rgba(255, 46, 136, 0.12);
}

.main-news-image {
	border-radius: var(--r-md);
}

.main-news-image img {
	border-radius: var(--r-md);
}

.main-news-date {
	color: var(--text-3);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.main-news-title {
	font-family: var(--font-display);
	font-size: 21px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.012em;
	color: var(--text-1);
	transition: color 0.22s var(--ease);
}

.main-news-title:hover {
	color: var(--vc-pink);
}

.main-news-ct a {
	display: inline-block;
	vertical-align: top;
	padding: 3px 12px 3px 24px;
	border-radius: 999px;
	background: rgba(139, 92, 246, 0.14);
	border: 1px solid rgba(139, 92, 246, 0.35);
	color: #c4b5fd !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	transition: background 0.22s var(--ease), border-color 0.22s var(--ease), color 0.22s var(--ease);
}

.main-news-ct a:hover {
	background: rgba(255, 46, 136, 0.16);
	border-color: rgba(255, 46, 136, 0.5);
	color: #ff7fb3 !important;
}

.main-news-text {
	color: var(--text-2);
	line-height: 1.65;
}

.main-news-b {
	border-top: 1px solid var(--stroke);
	background: rgba(255, 255, 255, 0.02);
}

.main-news-stb > div {
	color: var(--text-3);
	font-size: 12px;
	font-weight: 500;
}

.main-news-stb > div i {
	color: var(--vc-pink);
}

.main-news-like a {
	border-radius: 999px;
	border: 1px solid var(--stroke-strong);
	color: var(--text-2);
	font-weight: 600;
	transition: background 0.22s var(--ease), border-color 0.22s var(--ease), color 0.22s var(--ease), box-shadow 0.22s var(--ease);
}

.main-news-like a:hover {
	background: var(--grad-main);
	border-color: transparent;
	color: #fff;
	box-shadow: var(--glow-pink);
}

/* --------------------------------------------------------------------------
   Pagination
   -------------------------------------------------------------------------- */

.navigation-center a,
.navigation-center span {
	display: inline-block;
	vertical-align: top;
	min-width: 40px;
	height: 40px;
	line-height: 38px;
	box-sizing: border-box;
	padding: 0 8px;
	margin: 0 3px;
	text-align: center;
	border-radius: var(--r-sm);
	border: 1px solid var(--stroke-strong);
	background: var(--bg-2);
	color: var(--text-2);
	font-weight: 600;
	transition: background 0.22s var(--ease), border-color 0.22s var(--ease), color 0.22s var(--ease), box-shadow 0.22s var(--ease), transform 0.22s var(--ease);
}

.navigation-center a:hover {
	border-color: var(--vc-pink);
	color: #fff;
	background: rgba(255, 46, 136, 0.14);
	transform: translateY(-1px);
}

.navigation-center span {
	background: var(--grad-main);
	border-color: transparent;
	color: #fff;
	box-shadow: 0 4px 16px rgba(255, 46, 136, 0.4);
}

/* --------------------------------------------------------------------------
   Sidebar
   -------------------------------------------------------------------------- */

.rblock,
.rblock2 {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
}

.rblock-title {
	position: relative;
	font-family: var(--font-display);
	font-size: 17px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--text-1);
	padding-bottom: 12px;
}

.rblock-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	height: 3px;
	border-radius: 3px;
	background: var(--grad-main);
	box-shadow: 0 0 10px rgba(255, 46, 136, 0.5);
}

.rnews {
	border-radius: var(--r-sm);
	transition: background 0.22s var(--ease);
}

.rnews:hover {
	background: rgba(255, 255, 255, 0.04);
}

.rnews-image {
	border-radius: 8px;
	box-shadow: var(--shadow-1);
}

.rnews-image img {
	border-radius: 8px;
	object-fit: cover;
	transition: transform 0.35s var(--ease);
}

.rnews:hover .rnews-image img {
	transform: scale(1.08);
}

.rnews-title {
	color: var(--text-2);
	line-height: 1.45;
	transition: color 0.22s var(--ease);
}

.rnews:hover .rnews-title {
	color: var(--vc-pink);
}

/* Sidebar comments */

.mcom {
	border-radius: var(--r-sm);
	transition: background 0.22s var(--ease);
}

.mcom:hover {
	background: rgba(255, 255, 255, 0.04);
}

.mcom-image img {
	border-radius: 50%;
	box-shadow: 0 0 0 2px rgba(255, 46, 136, 0.4);
}

.mcom-title {
	color: var(--text-1);
	font-weight: 600;
}

.mcom-date {
	color: var(--text-3);
	font-size: 11px;
}

.mcom-text {
	color: var(--text-2);
	line-height: 1.55;
}

.mcom-link {
	color: var(--vc-gold);
	font-size: 12px;
	transition: color 0.22s var(--ease);
}

.mcom-link:hover {
	color: var(--vc-pink);
}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.footer {
	position: relative;
	z-index: 1;
	width: 1240px;
	margin: 0 auto 40px;
	background: rgba(11, 12, 20, 0.97);
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg);
	box-shadow: var(--shadow-1);
}

.footer-logo > img {
	filter: drop-shadow(0 0 12px rgba(255, 46, 136, 0.4));
}

.footer-text {
	color: var(--text-3);
	line-height: 1.7;
}

.footer-col > div:first-child {
	font-family: var(--font-display);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--text-1);
}

.footer-col a {
	color: var(--text-3);
	transition: color 0.22s var(--ease), padding-left 0.22s var(--ease);
}

.footer-col a:hover {
	color: var(--vc-pink);
	padding-left: 6px;
}

/* --------------------------------------------------------------------------
   Breadcrumbs / speedbar
   -------------------------------------------------------------------------- */

.speed-b {
	color: var(--text-3);
	font-size: 12px;
	letter-spacing: 0.04em;
}

.speed-b a {
	color: var(--text-2);
}

.speed-b a:hover {
	color: var(--vc-pink);
}

.speed-b i {
	color: var(--vc-pink);
	font-style: normal;
}

/* --------------------------------------------------------------------------
   Article page
   -------------------------------------------------------------------------- */

.full-news {
	background: var(--bg-2);
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg) var(--r-lg) 0 0;
	padding: 40px;
}

.full-news-ct {
	color: var(--text-3);
	font-size: 12px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.full-news-ct a {
	color: var(--vc-gold);
}

.full-news-ct a:hover {
	color: var(--vc-pink);
}

.full-news-date {
	color: var(--text-3);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.full-news-date a {
	color: var(--vc-gold);
	font-weight: 600;
}

.full-news-date a:hover {
	color: var(--vc-pink);
}

.full-news-title h1 {
	font-family: var(--font-display);
	font-size: 40px;
	font-weight: 600;
	line-height: 1.14;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	color: var(--text-1);
	margin: 10px 0 14px;
}

.full-news-text {
	font-size: var(--article-size);
	line-height: var(--article-leading);
	color: var(--text-2);
}

.full-news-text p {
	margin: 0 0 0.8em;
}

.full-news-text h2,
.full-news-text h3,
.full-news-text h4 {
	font-family: var(--font-display);
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--text-1);
	margin: 1.7em 0 0.45em;
	position: relative;
	padding-left: 16px;
	max-width: var(--article-measure);
}

.full-news-text h2 {
	font-size: 26px;
	line-height: 1.22;
}

.full-news-text h3 {
	font-size: 22px;
	line-height: 1.28;
}

.full-news-text h4 {
	font-size: 18px;
	line-height: 1.35;
}

.full-news-text h2::before,
.full-news-text h3::before,
.full-news-text h4::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.18em;
	bottom: 0.18em;
	width: 5px;
	border-radius: 4px;
	background: var(--grad-sunset);
	box-shadow: 0 0 10px rgba(255, 46, 136, 0.45);
}

.full-news-text a {
	color: #ff7fb3;
	text-decoration: underline;
	text-decoration-color: rgba(255, 46, 136, 0.4);
	text-underline-offset: 0.18em;
	transition: color 0.2s var(--ease), text-decoration-color 0.2s var(--ease);
}

.full-news-text a:hover {
	color: var(--vc-pink);
	text-decoration-color: var(--vc-pink);
}

.full-news-text img {
	max-width: 100%;
	height: auto;
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
}

.full-news-text figure.article-inline-image img,
.full-news-text .article-inline-img {
	max-width: 100%;
	height: auto;
	max-height: min(70vh, 520px);
	object-fit: contain;
}

.full-news-text figure,
.stt-block figure {
	margin: 1.4em 0;
}

.full-news-text figcaption,
.stt-block figcaption,
.stt-block .full-news-text figcaption,
.full-news-text .image-credit,
.full-news-text .image-credit cite {
	display: block;
	margin: 8px 0 0;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0.01em;
	color: var(--text-3);
	text-align: center;
	max-width: 46em;
	margin-left: auto;
	margin-right: auto;
}

.full-news-text .image-credit a {
	color: var(--vc-gold);
	text-decoration-color: rgba(255, 194, 75, 0.45);
}

.full-news-text .image-credit a:hover {
	color: var(--vc-pink);
	text-decoration-color: var(--vc-pink);
}

/* Embedded trailer / video */

.full-news-video {
	position: relative;
	border-radius: var(--r-lg);
	overflow: hidden;
	border: 1px solid var(--stroke-strong);
	box-shadow: var(--shadow-2);
	background: #000;
}

.full-news-video iframe,
.full-news-video video {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	border: 0;
}

.full-news-text ul,
.full-news-text ol {
	padding-left: 1.25em;
	margin: 0 0 0.9em;
}

.full-news-text li {
	margin: 0 0 0.35em;
	line-height: 1.65;
}

.full-news-text ul li::marker {
	color: var(--vc-pink);
}

.full-news-text ol li::marker {
	color: var(--vc-gold);
	font-weight: 700;
}

.full-news-text blockquote,
.full-news-text .quote {
	margin: 1.4em 0;
	padding: 18px 22px;
	background: rgba(139, 92, 246, 0.08);
	border: 1px solid rgba(139, 92, 246, 0.25);
	border-left: 4px solid var(--vc-violet);
	border-radius: 0 var(--r-md) var(--r-md) 0;
	color: var(--text-1);
	font-style: italic;
}

.full-news-text table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.4em 0;
	font-size: 14px;
}

.full-news-text th,
.full-news-text td {
	padding: 10px 14px;
	border: 1px solid var(--stroke-strong);
	text-align: left;
}

.full-news-text th {
	background: rgba(255, 46, 136, 0.1);
	color: var(--text-1);
	font-weight: 600;
}

.full-news-text code,
.full-news-text pre {
	background: rgba(0, 0, 0, 0.45);
	border: 1px solid var(--stroke);
	border-radius: 8px;
	color: #ffd479;
	font-size: 13px;
}

.full-news-text code {
	padding: 2px 7px;
}

.full-news-text pre {
	padding: 14px 18px;
	overflow-x: auto;
}

.full-news-text hr {
	border: 0;
	height: 1px;
	background: var(--grad-line);
	margin: 2em 0;
}

/* Article footer bar */

.full-news + .main-news-b,
.main-news-b {
	border-radius: 0 0 var(--r-lg) var(--r-lg);
}

.full-news + .main-news-b {
	border: 1px solid var(--stroke);
	border-top: 1px solid var(--stroke);
	background: var(--bg-2);
}

/* --------------------------------------------------------------------------
   Comments
   -------------------------------------------------------------------------- */

.comments-tree-list,
.comments-tree-list ol {
	list-style: none;
}

.com-item {
	background: var(--bg-2);
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg);
	padding: 16px 18px;
	transition: border-color 0.25s var(--ease), box-shadow 0.25s var(--ease);
}

.com-item:hover {
	border-color: rgba(255, 46, 136, 0.3);
	box-shadow: var(--shadow-1);
}

.com-item-image img {
	border-radius: 50%;
	box-shadow: 0 0 0 2px rgba(139, 92, 246, 0.45);
}

.com-item-author {
	color: var(--text-1);
	font-weight: 600;
}

.com-item-date {
	color: var(--text-3);
	font-size: 11px;
	letter-spacing: 0.05em;
}

.com-item-text {
	color: var(--text-2);
	line-height: 1.65;
}

.comments-item-links-like a,
.comments-item-links-repl a {
	border-radius: 999px;
	border: 1px solid var(--stroke);
	color: var(--text-3);
	transition: color 0.22s var(--ease), border-color 0.22s var(--ease), background 0.22s var(--ease);
}

.comments-item-links-like a:hover,
.comments-item-links-repl a:hover {
	color: var(--vc-pink);
	border-color: rgba(255, 46, 136, 0.45);
	background: rgba(255, 46, 136, 0.08);
}

/* Reply: same pill geometry as the like button (25px content + 1px border) */
.comments-item-links-repl a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	box-sizing: border-box;
	height: 27px;
	padding: 0 14px;
}

.comments-item-links-repl a i {
	margin: 0;
	font-size: 13px;
	line-height: 1;
}

/* --------------------------------------------------------------------------
   Forms
   -------------------------------------------------------------------------- */

.form-input-stand,
textarea,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="search"],
select {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--stroke-strong);
	border-radius: var(--r-sm);
	color: var(--text-1);
	font-family: var(--font-body);
	box-sizing: border-box;
	transition: border-color 0.22s var(--ease), box-shadow 0.22s var(--ease), background 0.22s var(--ease);
}

.form-input-stand:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
select:focus {
	border-color: var(--vc-pink);
	box-shadow: 0 0 0 3px rgba(255, 46, 136, 0.2);
	background: rgba(255, 255, 255, 0.08);
	outline: none;
}

::placeholder {
	color: var(--text-3);
	opacity: 1;
}

.form-line-tt input[type="text"],
.form-line-tt input[type="password"],
.form-line-tt input[type="email"],
.form-line-tt select,
.search select,
.dark .form-line-tt input,
.stt-block input[type="text"],
.stt-block input[type="password"],
.stt-block input[type="email"],
.stt-block select,
#searchtable input[type="text"],
#searchtable input[type="search"] {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid var(--stroke-strong);
	color: var(--text-1);
	border-radius: var(--r-sm);
}

.form-line-tt input[type="text"]:focus,
.form-line-tt input[type="password"]:focus,
.form-line-tt input[type="email"]:focus,
.form-line-tt select:focus,
.dark .form-line-tt input:focus,
.stt-block input[type="text"]:focus,
.stt-block input[type="password"]:focus,
.stt-block input[type="email"]:focus,
#searchtable input[type="text"]:focus {
	border-color: var(--vc-pink);
	box-shadow: 0 0 0 3px rgba(255, 46, 136, 0.2);
	background: rgba(255, 255, 255, 0.1);
	outline: none;
}

.form-line-tt textarea,
.form-line-tt .fr-view,
.dark .form-line-tt textarea,
.dark .form-line-tt .fr-view {
	background: rgba(255, 255, 255, 0.07) !important;
	border: 1px solid var(--stroke-strong) !important;
	color: var(--text-1) !important;
	border-radius: var(--r-sm);
}

#searchtable #dofullsearch,
#searchtable #dosearch,
#doclear,
#doreset {
	color: #fff !important;
	border-radius: 999px !important;
	font-weight: 600 !important;
}

.form-button-tt,
button,
input[type="submit"],
input[type="button"] {
	font-family: var(--font-body);
}

.form-button-tt {
	background: var(--grad-main) !important;
	border: 0 !important;
	border-radius: 999px !important;
	color: #fff !important;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 12px;
	padding: 12px 34px;
	cursor: pointer;
	transition: transform 0.22s var(--ease), box-shadow 0.22s var(--ease), filter 0.22s var(--ease);
}

.form-button-tt:hover {
	transform: translateY(-1px);
	box-shadow: var(--glow-pink);
	filter: brightness(1.08);
}

/* --------------------------------------------------------------------------
   DLE generic modules (polls, spoilers, quotes, errors, dialogs)
   -------------------------------------------------------------------------- */

.quote_s,
.scriptcode,
.title_spoiler,
.text_spoiler,
.berrors,
.ui-widget-content {
	background: var(--bg-2);
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	color: var(--text-2);
}

.title_spoiler {
	transition: border-color 0.22s var(--ease);
}

.title_spoiler:hover {
	border-color: rgba(255, 46, 136, 0.4);
}

.ui-widget {
	font-family: var(--font-body);
}

.ui-dialog .ui-dialog-titlebar {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	color: var(--text-1);
	font-family: var(--font-display);
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.ui-dialog .ui-dialog-titlebar-close {
	background: rgba(255, 255, 255, 0.08);
	border-radius: 50%;
	border: 0;
}

.ui-widget-overlay {
	background: rgba(6, 7, 12, 0.75);
	backdrop-filter: blur(4px);
}

/* --------------------------------------------------------------------------
   Static/form pages (registration, addnews, feedback, lostpassword, pm)
   -------------------------------------------------------------------------- */

.stt-block {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	padding: 0;
}

.stt-block-title {
	position: relative;
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
	line-height: 1.25;
	border: 0;
	background: none;
	margin: 0 0 18px;
	padding: 0 0 0 18px;
}

.stt-block-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 26px;
	border-radius: 4px;
	background: var(--grad-sunset);
}

.stt-block-content,
.stt-block .full-news-text {
	padding: 0;
}

/* Stats page (s-block has no styles in the base template) */

.s-block {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	margin: 0 0 40px;
}

.s-block-title {
	font-family: var(--font-display);
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
	border-bottom: 1px solid var(--stroke);
	background: rgba(255, 255, 255, 0.02);
	padding: 18px 30px;
}

.s-block-content {
	padding: 30px;
	color: var(--text-2);
	line-height: 1.8;
}

.statss {
	width: 100%;
}

.statss td {
	padding: 6px 24px 6px 0;
	vertical-align: top;
}

.shot-title h1 {
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
}

.form-line-tt-left {
	color: var(--text-2);
	font-weight: 500;
}

.add-n-form,
.f_textarea {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--stroke-strong);
	border-radius: var(--r-sm);
	color: var(--text-1);
	transition: border-color 0.22s var(--ease), box-shadow 0.22s var(--ease);
}

.add-n-form:focus,
.f_textarea:focus {
	border-color: var(--vc-pink);
	box-shadow: 0 0 0 3px rgba(255, 46, 136, 0.2);
	outline: none;
}

/* BB editor */

.bb-editor {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--stroke-strong);
	border-radius: var(--r-md);
	overflow: hidden;
}

.bb-editor .bb-button,
.bb-editor .bb-separator {
	border-radius: 6px;
	transition: background 0.2s var(--ease), filter 0.2s var(--ease);
}

.bb-editor .bb-button:hover {
	background: rgba(255, 46, 136, 0.15);
	filter: brightness(1.3);
}

/* Logged-in user panel */

.login-block-tb img {
	border-radius: 50%;
	box-shadow: 0 0 0 2px rgba(255, 46, 136, 0.5);
}

.cln-login {
	color: var(--text-1);
	font-weight: 600;
}

.cln-group {
	color: var(--vc-gold);
	font-size: 11px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.login-link a {
	border-radius: var(--r-sm);
	color: var(--text-2);
	transition: color 0.2s var(--ease), background 0.2s var(--ease), padding-left 0.2s var(--ease);
}

.login-link a:hover {
	color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.08);
	padding-left: 8px;
}

/* Polls / votes */

.vote td,
.pollall {
	color: var(--text-2);
}

/* --------------------------------------------------------------------------
   Mobile panel
   -------------------------------------------------------------------------- */

.mob-panel {
	background: rgba(13, 14, 24, 0.97) !important;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border-right: 1px solid var(--stroke-strong);
}

.mob-panel .top-menu li {
	display: block;
}

.mob-panel .top-menu li a,
.mob-panel .top-menu-link {
	display: block;
	font-family: var(--font-display);
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--text-2);
	padding: 15px 24px;
	border-bottom: 1px solid var(--stroke);
	transition: color 0.22s var(--ease), background 0.22s var(--ease), padding-left 0.22s var(--ease);
}

.mob-panel .top-menu li a:hover,
.mob-panel .top-menu-link:hover {
	color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.07);
	padding-left: 30px;
}

.mob-panel .top-menu-link::after {
	display: none;
}

.mob-shad {
	background: rgba(6, 7, 12, 0.7);
	backdrop-filter: blur(3px);
}

.fix-scroll {
	overflow: hidden;
}

/* --------------------------------------------------------------------------
   Responsive tuning
   -------------------------------------------------------------------------- */

@media (max-width: 1320px) {
	:root {
		--header-h: 70px;
	}

	.head-line {
		margin: 0 0 24px 0;
	}

	.footer {
		width: auto;
		margin: 0 30px 40px;
	}

	.search-block {
		padding: 18px 30px;
	}

	.hslider-news {
		height: 420px;
	}

	.hslider-news-r {
		padding: 30px 34px 34px;
	}

	.hslider-news-title {
		font-size: 27px;
	}
}

@media (max-width: 1100px) {
	.mfl-r {
		margin-top: 10px;
	}

	.full-news {
		padding: 26px;
	}

	.full-news-title h1 {
		font-size: 32px;
	}
}

@media (max-width: 800px) {
	.gta-series-home {
		display: block;
		margin: 0 0 22px;
	}

	.gta-series-home .gtawrap {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
		margin: 0 0 8px;
		padding-bottom: 4px;
	}

	.gta-series-home .gta-game {
		width: 108px;
		min-width: 108px;
		max-width: 108px;
		margin: 0 12px 0 0;
		flex: 0 0 108px;
	}

	.gta-series-home .gta-game:last-child {
		margin-right: 0;
	}

	.gta-series-home .gta-game-title {
		font-size: 12px;
		padding: 10px 10px;
	}

	/* style.css hid the old slider on phones. The lead banner must stay. */
	.hslider {
		display: block;
		margin: 0 0 24px;
	}

	.gta-launch-strip {
		display: flex;
		margin: 0 0 20px;
	}
}

@media (max-width: 650px) {
	.footer {
		margin: 0 20px 30px;
	}

	.gta-game-title {
		font-size: 12px;
		padding: 10px 12px;
	}

	.search-block {
		padding: 14px 20px;
	}

	.search-block .form-text {
		height: 50px;
		font-size: 15px;
		padding: 0 20px 0 48px;
	}

	.search-ic {
		left: 18px;
		font-size: 18px;
	}

	.search-block .form-search {
		position: static;
		transform: none;
		flex-shrink: 0;
		height: 50px;
		margin-left: 10px;
		padding: 0 20px;
	}

	.hslider-news {
		height: 400px;
	}

	.hslider-news-l::after {
		background:
			linear-gradient(180deg, rgba(7, 8, 13, 0.28) 0%, rgba(7, 8, 13, 0.4) 42%, rgba(7, 8, 13, 0.9) 100%),
			linear-gradient(90deg, rgba(7, 8, 13, 0.55) 0%, transparent 70%);
	}

	.hslider-news-r {
		padding: 22px 20px 26px;
	}

	.hslider-news-title {
		font-size: 21px;
		margin: 0 0 10px;
	}

	.hslider-news-text {
		-webkit-line-clamp: 3;
		font-size: 13.5px;
	}

	.hslider-news-link {
		height: 42px;
		line-height: 42px;
		padding: 0 24px;
	}

	.hslider-pagination {
		display: none;
	}

	.title-block {
		font-size: 19px;
	}

	.stt-block-title,
	.s-block-title {
		padding: 14px 20px;
		font-size: 17px;
	}

	.stt-block-content,
	.stt-block .full-news-text,
	.s-block-content {
		padding: 20px;
	}

	.full-news {
		padding: 20px 16px;
	}

	.full-news-title h1 {
		font-size: 28px;
	}

	.full-news-text {
		font-size: var(--article-size);
	}

	.main-news-title {
		font-size: 18px;
	}

	/* Header: keep right-side buttons inside the viewport on phones */
	.head-login span {
		display: none;
	}

	.head-login i {
		margin-right: 0;
	}

	.opensearch {
		margin-right: 12px;
	}

	.head-reg {
		padding: 0 20px;
		margin-left: 12px;
	}

	.login-wrap {
		right: 10px;
	}

	/* Comments: tighter cards and shallower nesting on phones */
	.com-item {
		padding: 14px 14px;
		margin-bottom: 16px;
	}

	.com-item-image,
	.com-item-image img {
		width: 34px;
		height: 34px;
	}

	.com-item-r {
		width: calc(100% - 46px);
	}

	.comments-tree-list ol {
		padding-left: 18px;
		background-position: 4px top;
	}

	.comments-item-links-like a {
		height: 32px;
		padding: 0 16px 0 12px;
	}

	.comments-item-links-repl a {
		display: inline-flex;
		align-items: center;
		min-height: 34px;
	}
}

@media (max-width: 360px) {
	.head-reg {
		padding: 0 14px;
		margin-left: 8px;
	}

	.opensearch {
		margin-right: 8px;
	}
}

/* --------------------------------------------------------------------------
   Motion preferences
   -------------------------------------------------------------------------- */

.related-news .mwrap2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.relnews {
	display: flex;
	gap: 14px;
	align-items: stretch;
	padding: 10px;
	border-radius: var(--r-md);
	background: var(--bg-2);
	border: 1px solid var(--stroke);
	color: var(--text-1);
	text-decoration: none;
	transition: border-color 0.22s var(--ease), transform 0.22s var(--ease);
}

.relnews:hover {
	border-color: rgba(255, 46, 136, 0.45);
	color: #fff;
	transform: translateY(-2px);
}

.relnews-image {
	flex: 0 0 112px;
	width: 112px;
	height: 78px;
	border-radius: 10px;
	overflow: hidden;
}

.relnews-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.relnews-r {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
}

.relnews-title {
	font-weight: 600;
	line-height: 1.35;
}

.relnews-cat {
	margin-top: 6px;
	color: var(--text-3);
	font-size: 12px;
}

@media (max-width: 700px) {
	.related-news .mwrap2 {
		grid-template-columns: 1fr;
	}
}

.home-more {
	margin: 8px 0 28px;
	text-align: center;
}

.home-more a {
	display: inline-block;
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fff;
	padding: 12px 22px;
	border-radius: 999px;
	background: var(--grad-main);
	box-shadow: var(--glow-pink);
}

.home-more a:hover {
	color: #fff;
	filter: brightness(1.06);
}

.rblock-comments:empty::after {
	content: "No comments yet. Open a story and start the thread.";
	display: block;
	color: var(--text-3);
	font-size: 14px;
	line-height: 1.5;
}

.category-info {
	margin: 0 0 22px;
	color: var(--text-2);
}

.category-info-title {
	font-family: var(--font-display);
	font-size: 28px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--text-1);
	margin: 0 0 8px;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.55);
}

.category-info-desc {
	color: var(--text-1);
	font-size: 15px;
	line-height: 1.55;
	max-width: 46em;
	margin: 0 0 20px;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.65);
}

.trailers-gallery {
	display: flex;
	flex-direction: column;
	gap: 28px;
	margin: 0 0 28px;
}

.trailers-gallery-note {
	margin: 0;
	color: var(--text-1);
	font-size: 15px;
	line-height: 1.55;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.65);
}

.trailer-item {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0 0 22px;
	border-bottom: 1px solid var(--stroke);
}

.trailer-item-head {
	margin: 0 0 14px;
}

.trailer-item-title {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 22px;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}

.trailer-item-meta {
	margin: 0;
	color: var(--text-3);
	font-size: 13px;
	letter-spacing: 0.02em;
}

.trailer-play {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 1px solid var(--stroke-strong);
	border-radius: var(--r-md);
	overflow: hidden;
	background: #000;
	cursor: pointer;
}

.trailer-play img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.trailer-play-btn {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 76px;
	height: 54px;
	margin: -27px 0 0 -38px;
	border-radius: 14px;
	background: var(--grad-main);
	box-shadow: var(--glow-pink);
	transition: transform 0.22s var(--ease), box-shadow 0.22s var(--ease);
}

.trailer-play-btn::after {
	content: "";
	position: absolute;
	left: 30px;
	top: 16px;
	border-style: solid;
	border-width: 11px 0 11px 18px;
	border-color: transparent transparent transparent #fff;
}

.trailer-play:hover .trailer-play-btn,
.trailer-play:focus-visible .trailer-play-btn {
	transform: scale(1.06);
	box-shadow: var(--glow-soft);
}

.trailer-item-text {
	margin: 14px 0 0;
	color: var(--text-2);
	font-size: 15px;
	line-height: 1.65;
}

.trailer-item-link {
	margin: 10px 0 0;
}

.trailer-item-link a {
	color: var(--vc-gold);
	font-weight: 600;
}

button.mob-menu,
button.opensearch,
button.head-login {
	appearance: none;
	-webkit-appearance: none;
	background-color: transparent;
	border: 0;
	font: inherit;
	color: inherit;
	cursor: pointer;
}

button.mob-menu,
button.opensearch {
	padding: 0;
}

h1.stt-block-title {
	line-height: 1.3;
}

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

.mfl-l:has(.trailers-gallery) .stt-block,
.trailers-gallery ~ .stt-block {
	display: none;
}

.info-home-link {
	margin: 16px 0 0;
}

.info-home-link a {
	color: var(--vc-gold);
	font-weight: 600;
}

/* Turnstile stays collapsed until Cloudflare needs a visible challenge. */
.cf-turnstile,
.cf-turnstile-slot {
	min-height: 0;
}
.cf-turnstile:empty,
.cf-turnstile iframe[style*="width: 0"] {
	display: none;
}

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


/* Long-read static pages (2026-08-19) */
.full-news-text .gta-longread-poster {
	margin: 0 0 1.2em;
}
.full-news-text .gta-longread-poster img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: var(--r-md);
}
.full-news-text .gta-factstrip {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px 18px;
	margin: 0 0 1.6em;
	padding: 0 0 16px;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	background: transparent;
}
.full-news-text .gta-factstrip p {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
}
@media (max-width: 700px) {
	.full-news-text .gta-factstrip {
		grid-template-columns: 1fr 1fr;
		gap: 12px 16px;
	}
}
.full-news-text .gta-official,
.full-news-text .gta-longread-nav {
	margin-top: 1.5em;
}

.longread-poster img { width:100%; max-width:420px; height:auto; border-radius:8px; display:block; margin:0 0 1.25rem; }
.longread-official a, .longread-series a { font-weight:600; }
.longread-series { opacity:.9; }

/* --------------------------------------------------------------------------
   Homepage launch countdown (desktop + mobile)
   -------------------------------------------------------------------------- */

.gta-launch-strip {
	display: flex;
	align-items: center;
	gap: 22px;
	margin: 0 0 28px;
	padding: 14px 20px 14px 22px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1), 0 0 0 1px rgba(255, 46, 136, 0.14);
	position: relative;
	overflow: hidden;
}

.gta-launch-strip::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}

.gta-launch-days {
	flex: 0 0 auto;
	min-width: 84px;
	text-align: center;
	line-height: 1;
}

.gta-launch-num {
	display: block;
	font-family: var(--font-display);
	font-size: 52px;
	font-weight: 600;
	letter-spacing: 0.02em;
	line-height: 0.92;
	background: var(--grad-text);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.gta-launch-unit {
	display: block;
	margin-top: 6px;
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-pink);
}

.gta-launch-copy {
	flex: 1 1 220px;
	min-width: 0;
}

.gta-launch-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin-bottom: 3px;
}

.gta-launch-date {
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
	line-height: 1.25;
}

.gta-launch-next {
	margin-top: 6px;
	font-size: 14px;
	color: var(--text-2);
}

.gta-launch-next a {
	color: var(--vc-pink);
	font-weight: 600;
}

.gta-launch-next a:hover {
	color: #fff;
}

.gta-launch-links {
	margin-top: 8px;
	font-size: 13px;
	color: var(--text-3);
}

.gta-launch-links a {
	color: var(--vc-gold);
	font-weight: 600;
}

.gta-launch-links a:hover {
	color: var(--vc-pink);
}

.gta-launch-fallback {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

@media (max-width: 650px) {
	.gta-launch-strip {
		flex-wrap: wrap;
		gap: 14px;
		padding: 12px 14px 12px 16px;
	}

	.gta-launch-num {
		font-size: 40px;
	}

	.gta-launch-date {
		font-size: 15px;
	}

	.gta-launch-next,
	.gta-launch-links {
		font-size: 13px;
	}
}


/* Compact Extended Look clock on the same launch strip — not a second banner. */
.gta-launch-el {
	margin-left: auto;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 6px 0 6px 16px;
	border-left: 1px solid var(--stroke);
	color: inherit;
	text-decoration: none;
}
.gta-launch-el:hover {
	color: inherit;
}
.gta-launch-el-num {
	font-family: var(--font-display);
	font-size: 28px;
	font-weight: 600;
	line-height: 0.95;
	letter-spacing: 0.02em;
	color: var(--vc-gold);
}
.gta-launch-el-meta {
	display: flex;
	flex-direction: column;
	min-width: 0;
	line-height: 1.2;
}
.gta-launch-el-unit {
	font-family: var(--font-display);
	font-size: 10px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--vc-pink);
}
.gta-launch-el-label {
	margin-top: 3px;
	font-size: 12px;
	font-weight: 600;
	color: var(--text-2);
	max-width: 11em;
}
.gta-launch-el:hover .gta-launch-el-label {
	color: #fff;
}
@media (max-width: 650px) {
	.gta-launch-el {
		margin-left: 0;
		width: 100%;
		padding: 8px 0 0;
		border-left: 0;
		border-top: 1px solid var(--stroke);
		gap: 8px;
	}
	.gta-launch-el-num {
		font-size: 22px;
	}
	.gta-launch-el-label {
		max-width: none;
	}
}

/* --------------------------------------------------------------------------
   Leak tracker verdict badges
   -------------------------------------------------------------------------- */

.verdict {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.45;
	white-space: nowrap;
	vertical-align: middle;
}

.verdict-official {
	color: #062016;
	background: #3ee6a0;
}

.verdict-reported {
	color: #062026;
	background: var(--vc-cyan);
}

.verdict-unverified {
	color: #1a1406;
	background: var(--vc-gold);
}

.verdict-debunked {
	color: #fff;
	background: #c4234a;
}

.leak-tracker,
.table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin: 0 0 1.6em;
	max-width: 100%;
}

.leak-tracker table,
.table-scroll table {
	min-width: 0;
	margin: 0;
}

.leak-legend p {
	font-size: 13px;
	color: var(--text-2);
}

/* Official timeline + confirmed hubs (2026-08-19) */
.verdict-not-confirmed {
	color: #f3f3f3;
	background: #4a4e5c;
}
.gta-hub-next {
	margin: 0 0 1.6em;
	padding: 8px 16px 2px;
	border: 1px solid var(--vc-gold);
	border-radius: var(--r-md);
	background: rgba(255, 196, 0, 0.06);
}
.gta-hub-next h2 {
	margin-top: 0.45em;
}

/* --------------------------------------------------------------------------
   Homepage official dates ladder (bottom column — not the top countdown)
   -------------------------------------------------------------------------- */

.gta-dates {
	margin: 4px 0 36px;
	min-width: 0;
}

.gta-dates .title-block {
	margin-bottom: 14px;
}

.gta-dates-ladder {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.gta-dates-item a {
	display: block;
	height: 100%;
	padding: 13px 14px 14px 16px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
	transition: border-color 0.22s var(--ease), background 0.22s var(--ease);
}

.gta-dates-item a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}

.gta-dates-item a:hover {
	border-color: var(--stroke-strong);
	background: #14151d;
	color: inherit;
}

.gta-dates-item time {
	display: block;
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin-bottom: 6px;
}

.gta-dates-name {
	display: block;
	font-family: var(--font-display);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
	line-height: 1.25;
}

.gta-dates-note {
	display: block;
	margin-top: 5px;
	font-size: 12px;
	line-height: 1.4;
	color: var(--text-3);
}

.gta-dates-past {
	margin: 12px 2px 0;
	font-size: 13px;
	line-height: 1.45;
	color: var(--text-3);
}

.gta-dates-past a {
	color: var(--vc-gold);
	font-weight: 600;
}

.gta-dates-past a:hover {
	color: var(--vc-pink);
}

@media (max-width: 900px) {
	.gta-dates-ladder {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.gta-dates-ladder {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
		gap: 10px;
		padding-bottom: 4px;
	}

	.gta-dates-item {
		flex: 0 0 210px;
		min-width: 210px;
		max-width: 210px;
	}
}

/* Official trailers + characters hubs (2026-08-19) */
.gta-yt {
	margin: 0 0 1.2em;
}
.gta-cast {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin: 0 0 1.6em;
}
.gta-cast-leads {
	grid-template-columns: 1fr;
}
.gta-cast-card {
	display: grid;
	grid-template-columns: 148px 1fr;
	gap: 14px;
	margin: 0;
	padding: 0 0 16px;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	background: transparent;
}
.gta-cast-lead {
	grid-template-columns: 200px 1fr;
}
.gta-cast-pic {
	margin: 0;
}
.gta-cast-card img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: center top;
	border-radius: 8px;
}
.gta-cast-card h3 {
	margin: 0 0 0.35em;
}
.gta-cast-card p {
	margin: 0 0 0.55em;
}
.gta-cast-card p:last-child {
	margin-bottom: 0;
}
@media (max-width: 700px) {
	.gta-cast,
	.gta-cast-card,
	.gta-cast-lead {
		grid-template-columns: 1fr;
	}
}

/* --------------------------------------------------------------------------
   Phone layout lock (2026-08-20) — keep desktop intact
   -------------------------------------------------------------------------- */

.mfl,
.mfl-l,
.mfl-r,
.main-wrap,
.full-news,
.full-news-text,
.stt-block,
.stt-block-content,
.gta-dates,
.gta-launch-strip,
.gtnews-wrap,
.leak-tracker,
.table-scroll,
.gta-yt,
.full-news-video {
	min-width: 0;
	max-width: 100%;
}

.full-news-text,
.stt-block-content {
	overflow-wrap: break-word;
	word-wrap: break-word;
	container-type: inline-size;
}

.full-news-text a {
	overflow-wrap: anywhere;
	word-break: break-word;
}

.full-news-text td a,
.full-news-text th a {
	overflow-wrap: break-word;
	word-break: normal;
}

.full-news-text td,
.full-news-text th,
.leak-tracker td,
.leak-tracker th {
	overflow-wrap: break-word;
	word-break: normal;
	writing-mode: horizontal-tb;
	text-orientation: mixed;
	hyphens: none;
}

.full-news-text iframe,
.full-news-text video,
.gta-yt iframe,
.trailer-play iframe {
	width: 100% !important;
	max-width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}

/* Wide column: real table. Cells wrap; wrapper scrolls if a row is still too wide. */
.leak-tracker table,
.table-scroll table,
.full-news-text table {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	table-layout: auto;
}

.full-news-text caption,
.leak-tracker caption {
	caption-side: top;
	text-align: left;
	font-weight: 600;
	color: var(--text-1);
	padding: 0 0 10px;
}

.leak-tracker th,
.leak-tracker td,
.full-news-text th,
.full-news-text td {
	white-space: normal;
	vertical-align: top;
}

.full-news-text td > .desk-cell {
	display: contents;
}

.full-news-text .desk-step {
	display: none;
}

/*
 * Narrow article column → labeled cards (label | value).
 * Container query uses the content box (padding excluded). 800px keeps
 * a 1280px laptop as a real table; a sidebar-crushed column stacks.
 * Viewport query covers phones and tablets. Keep both blocks in sync.
 */
@container (max-width: 800px) {
	.leak-tracker,
	.table-scroll {
		overflow-x: visible;
	}

	.full-news-text table,
	.full-news-text thead,
	.full-news-text tbody,
	.full-news-text tfoot,
	.full-news-text tr,
	.full-news-text th,
	.full-news-text td,
	.full-news-text caption {
		display: block;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	.full-news-text thead {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		border: 0;
	}

	.full-news-text tbody tr {
		margin: 0 0 12px;
		padding: 12px 14px;
		border: 1px solid var(--stroke);
		border-radius: var(--r-md);
		background: rgba(255, 255, 255, 0.02);
	}

	.full-news-text td {
		display: grid;
		grid-template-columns: 8.25em minmax(0, 1fr);
		column-gap: 12px;
		align-items: start;
		padding: 7px 0;
		border: 0;
		border-bottom: 1px solid var(--stroke);
		white-space: normal;
		width: auto;
		min-width: 0;
	}

	.full-news-text td::before {
		content: attr(data-label);
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: var(--text-3);
		line-height: 1.35;
		padding-top: 2px;
	}

	.full-news-text td > .desk-cell {
		display: block;
		min-width: 0;
		max-width: 100%;
	}

	.full-news-text td[data-long-label] {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 3px;
	}

	.full-news-text td:not([data-label]) {
		grid-template-columns: minmax(0, 1fr);
	}

	.full-news-text td:not([data-label])::before {
		content: none;
		display: none;
	}

	.full-news-text td[data-card-hide] {
		display: none !important;
	}

	.full-news-text td:first-child:not([data-card-hide]),
	.full-news-text tr:has(> [data-card-hide]) td:nth-child(2) {
		display: block;
		font-weight: 650;
		font-size: 15px;
		color: var(--text-1);
		padding: 0 0 8px;
		border-bottom: 0;
	}

	.full-news-text td:first-child:not([data-card-hide])::before,
	.full-news-text tr:has(> [data-card-hide]) td:nth-child(2)::before {
		content: none;
		display: none;
	}

	.full-news-text .desk-step {
		display: inline-block;
		margin-right: 0.35em;
		color: var(--vc-gold);
		font-variant-numeric: tabular-nums;
	}

	.full-news-text td:last-child {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.full-news-text table {
		font-size: 14.5px;
	}
}

@media (max-width: 900px) {
	html {
		overflow-x: clip;
	}

	.leak-tracker,
	.table-scroll {
		overflow-x: visible;
	}

	.full-news-text table,
	.full-news-text thead,
	.full-news-text tbody,
	.full-news-text tfoot,
	.full-news-text tr,
	.full-news-text th,
	.full-news-text td,
	.full-news-text caption {
		display: block;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	.full-news-text thead {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		border: 0;
	}

	.full-news-text tbody tr {
		margin: 0 0 12px;
		padding: 12px 14px;
		border: 1px solid var(--stroke);
		border-radius: var(--r-md);
		background: rgba(255, 255, 255, 0.02);
	}

	.full-news-text td {
		display: grid;
		grid-template-columns: 8.25em minmax(0, 1fr);
		column-gap: 12px;
		align-items: start;
		padding: 7px 0;
		border: 0;
		border-bottom: 1px solid var(--stroke);
		white-space: normal;
		width: auto;
		min-width: 0;
	}

	.full-news-text td::before {
		content: attr(data-label);
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: var(--text-3);
		line-height: 1.35;
		padding-top: 2px;
	}

	.full-news-text td > .desk-cell {
		display: block;
		min-width: 0;
		max-width: 100%;
	}

	.full-news-text td[data-long-label] {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 3px;
	}

	.full-news-text td:not([data-label]) {
		grid-template-columns: minmax(0, 1fr);
	}

	.full-news-text td:not([data-label])::before {
		content: none;
		display: none;
	}

	.full-news-text td[data-card-hide] {
		display: none !important;
	}

	.full-news-text td:first-child:not([data-card-hide]),
	.full-news-text tr:has(> [data-card-hide]) td:nth-child(2) {
		display: block;
		font-weight: 650;
		font-size: 15px;
		color: var(--text-1);
		padding: 0 0 8px;
		border-bottom: 0;
	}

	.full-news-text td:first-child:not([data-card-hide])::before,
	.full-news-text tr:has(> [data-card-hide]) td:nth-child(2)::before {
		content: none;
		display: none;
	}

	.full-news-text .desk-step {
		display: inline-block;
		margin-right: 0.35em;
		color: var(--vc-gold);
		font-variant-numeric: tabular-nums;
	}

	.full-news-text td:last-child {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.full-news-text table {
		font-size: 14.5px;
	}
}

@media (max-width: 400px) {
	.full-news-text td {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 3px;
	}
}

@media (max-width: 700px) {
	html {
		overflow-x: clip;
	}

	.title-block {
		flex-wrap: wrap;
		gap: 8px 12px;
	}

	/* Homepage: countdown stacks; dates become one column */
	.gta-launch-strip {
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.gta-launch-days {
		min-width: 0;
	}

	.gta-dates-ladder {
		display: grid;
		grid-template-columns: 1fr;
		overflow: visible;
		flex-wrap: unset;
	}

	.gta-dates-item {
		flex: none;
		min-width: 0;
		max-width: none;
	}

	.gtnews-wrap > div:nth-child(1),
	.gtnews-wrap > div:nth-child(2),
	.gtnews2 {
		width: 100% !important;
		max-width: 100%;
	}

	.gta-series-home .gtawrap,
	.main-c .gtawrap {
		max-width: 100%;
		min-width: 0;
	}

	.footer-r {
		padding-left: 0;
		display: block;
		width: 100%;
	}

	.footer-col {
		width: 100%;
		margin: 0 0 18px;
	}

	.footer-l {
		width: 100%;
		max-width: 100%;
	}

	.main-news-text {
		font-size: 14.5px;
		line-height: 1.6;
	}

	.full-news-text table {
		font-size: 14.5px;
	}

	.head-line-w,
	.head-r {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}
}

@media (max-width: 560px) {
	.gta-launch-strip {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.gta-launch-num {
		font-size: 36px;
	}

	.gta-cast,
	.gta-cast-card,
	.gta-cast-lead {
		grid-template-columns: 1fr;
	}

	.gta-factstrip {
		grid-template-columns: 1fr 1fr;
		gap: 12px 16px;
	}
}

/* Hub TOC + visible updated line — 20 Aug 2026 */
.hub-toc {
	margin: 16px 0 22px;
	padding: 0 0 16px;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	background: transparent;
}
.hub-toc-label {
	margin: 0 0 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--text-3);
}
.hub-toc ol {
	margin: 0;
	padding-left: 18px;
}
.hub-toc li {
	margin: 4px 0;
}
.article-toc .toc-h3 a {
	font-size: 0.92em;
	opacity: 0.92;
}
.hub-updated {
	margin: 0 0 14px;
	font-size: 13px;
	color: var(--text-3);
}

/* Calendar hub — live clocks + .ics (2026-08-22) */
.gta-cal-clocks {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 0 0 1.4em;
}
.gta-cal-card {
	margin: 0;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
}
.gta-cal-card::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}
.gta-cal-card.is-live::before {
	background: var(--vc-gold);
}
.gta-cal-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin: 0 0 4px;
}
.gta-cal-name {
	margin: 0 0 4px;
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-cal-when {
	margin: 0 0 12px;
	font-size: 13px;
	color: var(--text-3);
}
.gta-cal-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
	margin: 0 0 10px;
}
.gta-cal-grid div {
	text-align: center;
	padding: 8px 4px 7px;
	background: #14151d;
	border-radius: 10px;
	border: 1px solid var(--stroke);
}
.gta-cal-grid span {
	display: block;
	font-family: var(--font-display);
	font-size: 28px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.02em;
	background: var(--grad-text);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.gta-cal-grid em {
	display: block;
	margin-top: 5px;
	font-style: normal;
	font-family: var(--font-display);
	font-size: 10px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--vc-pink);
}
.gta-cal-live {
	margin: 0 0 10px;
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--vc-gold);
}
.gta-cal-local {
	margin: 0 0 12px;
	font-size: 12px;
	color: var(--text-3);
}
.gta-cal-ics {
	display: inline-block;
	margin: 0 8px 8px 0;
	padding: 8px 14px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
}
.gta-cal-ics:hover {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
}
@media (max-width: 700px) {
	.gta-cal-clocks {
		grid-template-columns: 1fr;
	}
	.gta-cal-grid span {
		font-size: 22px;
	}
}

/* Trailer timestamp index (2026-08-22) */
.gta-ts-jump {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-decoration: none;
	white-space: nowrap;
}
.gta-ts-jump:hover {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
}
.gta-ts-empty {
	margin: 0 0 1.4em;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px dashed rgba(255, 194, 75, 0.35);
	border-radius: var(--r-md);
}
.gta-ts-empty p {
	margin: 0;
}

/* --------------------------------------------------------------------------
   Phone chrome + tap targets (2026-08-22)
   Header Sign Up wrap, search flex overflow, calendar ICS, launch chips.
   Do not change homepage section order.
   -------------------------------------------------------------------------- */

#searchsuggestions {
	max-width: min(560px, calc(100% - 24px));
}

@media (max-width: 700px) {
	.head-line {
		position: sticky;
		top: 0;
	}

	.head-line-w {
		padding-left: 48px;
		gap: 8px;
		min-width: 0;
	}

	.mob-menu,
	button.mob-menu {
		width: 48px;
		height: var(--header-h, 70px);
		min-width: 44px;
		min-height: 44px;
	}

	.logo {
		min-width: 0;
		flex: 1 1 auto;
	}

	.logo > img {
		width: 44px;
		height: auto;
		flex-shrink: 0;
	}

	.logo-r {
		font-size: 13px;
		line-height: 14px;
	}

	.head-r {
		flex-shrink: 0;
		min-width: 0;
		padding-right: 8px;
		gap: 4px;
	}

	button.opensearch,
	button.head-login {
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
		margin: 0;
		padding: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
	}

	.head-login {
		padding: 0;
		gap: 0;
	}

	.head-reg {
		white-space: nowrap;
		height: 44px;
		min-height: 44px;
		line-height: 44px;
		padding: 0 14px;
		margin-left: 6px;
		display: inline-flex;
		align-items: center;
		flex-shrink: 0;
		box-sizing: border-box;
	}

	/* Search opens as a flex row; width:100% on the field + in-flow button overflows */
	.search-block form {
		max-width: 100%;
		min-width: 0;
		gap: 8px;
	}

	.search-block .form-text {
		width: auto;
		flex: 1 1 0;
		min-width: 0;
		max-width: 100%;
		padding-right: 16px;
	}

	.search-block .form-search {
		flex: 0 0 auto;
		min-height: 44px;
		min-width: 44px;
		box-sizing: border-box;
	}

	.gta-launch-date,
	.gta-launch-next,
	.gta-launch-el-label {
		overflow-wrap: anywhere;
	}

	.gta-launch-links {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		align-items: center;
	}

	.gta-launch-links span[aria-hidden] {
		display: none;
	}

	.gta-launch-links a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: 0 12px;
		border-radius: 999px;
		border: 1px solid rgba(255, 194, 75, 0.4);
		background: rgba(255, 196, 0, 0.08);
		box-sizing: border-box;
	}

	.gta-cal-ics,
	.gta-ts-jump {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: 8px 14px;
		max-width: 100%;
		white-space: normal;
		line-height: 1.25;
		text-align: center;
		box-sizing: border-box;
	}

	.gta-cal-name {
		overflow-wrap: anywhere;
	}

	.gta-dates-item a,
	.footer-col a,
	.home-more a,
	.catmenu a,
	.hslider-news-link,
	.gtnews-link,
	.main-news-link {
		min-height: 44px;
		box-sizing: border-box;
	}

	.footer-col a {
		display: flex;
		align-items: center;
	}

	.hslider-news-link,
	.gtnews-link,
	.main-news-link {
		height: auto;
		line-height: 1.2;
		display: inline-flex;
		align-items: center;
	}

	.speed-b {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.trailer-item-title,
	.trailer-item-meta {
		overflow-wrap: anywhere;
	}
}

@media (max-width: 400px) {
	.gta-cal-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gta-cal-grid span {
		font-size: 22px;
	}

	.search-block .form-search span {
		display: none;
	}

	.search-block .form-search {
		padding: 0 14px;
	}

	.head-reg {
		padding: 0 12px;
	}
}

@media (max-width: 360px) {
	.logo-r {
		display: none;
	}

	.head-reg {
		padding: 0 10px;
		margin-left: 4px;
	}

	.head-r {
		padding-right: 6px;
	}
}

/* Extended Look prep checklist (2026-08-22) */
.gta-ck {
	margin: 0 0 1.4em;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
}
.gta-ck::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}
.gta-ck-head {
	margin: 0 0 12px;
}
.gta-ck-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin: 0 0 4px;
}
.gta-ck-name {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-ck-progress {
	margin: 0 0 8px;
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--vc-gold);
}
.gta-ck-reset {
	display: inline-block;
	margin: 0;
	padding: 6px 12px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
}
.gta-ck-reset:hover {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
}
.gta-ck-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.gta-ck-row {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin: 0 0 8px;
	padding: 12px 12px 10px;
	background: #14151d;
	border: 1px solid var(--stroke);
	border-radius: 10px;
	cursor: pointer;
}
.gta-ck-row:focus {
	outline: 2px solid var(--vc-gold);
	outline-offset: 2px;
}
.gta-ck-row.is-on {
	border-color: rgba(255, 194, 75, 0.55);
	background: rgba(255, 196, 0, 0.06);
}
.gta-ck-box {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	margin-top: 2px;
	border-radius: 6px;
	border: 2px solid rgba(255, 194, 75, 0.65);
	background: #0f1016;
	position: relative;
}
.gta-ck-row.is-on .gta-ck-box {
	background: var(--vc-gold);
	border-color: var(--vc-gold);
}
.gta-ck-row.is-on .gta-ck-box::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 2px;
	width: 6px;
	height: 11px;
	border: solid #0f1016;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}
.gta-ck-body {
	min-width: 0;
	flex: 1;
}
.gta-ck-body strong {
	display: block;
	margin: 0 0 4px;
	font-family: var(--font-display);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.03em;
	color: var(--text-1);
}
.gta-ck-body p {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--text-3);
}
.gta-ck-body p:last-child {
	margin-bottom: 0;
}
@media (max-width: 700px) {
	.gta-ck {
		padding: 14px 12px 12px;
	}
	.gta-ck-name {
		font-size: 20px;
	}
}

/* Standard vs Ultimate compare (2026-08-22) */
.gta-cmp {
	margin: 0 0 1.4em;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
}
.gta-cmp::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}
.gta-cmp-head {
	margin: 0 0 12px;
}
.gta-cmp-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin: 0 0 4px;
}
.gta-cmp-name {
	margin: 0 0 8px;
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-cmp-verdict {
	margin: 0 0 12px;
	font-size: 15px;
	color: var(--text-2);
	min-height: 2.4em;
}
.gta-cmp-wants {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 14px;
}
.gta-cmp-chip {
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 10px 14px;
	min-height: 44px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
}
.gta-cmp-chip:hover,
.gta-cmp-chip:focus {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
	outline: 2px solid var(--vc-gold);
	outline-offset: 2px;
}
.gta-cmp-chip.is-on {
	background: var(--vc-gold);
	border-color: var(--vc-gold);
	color: #0f1016;
}
.gta-cmp-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 0 0 14px;
}
.gta-cmp-card {
	margin: 0;
	padding: 14px 14px 12px;
	background: #14151d;
	border: 1px solid var(--stroke);
	border-radius: 10px;
	cursor: pointer;
}
.gta-cmp-card:focus {
	outline: 2px solid var(--vc-gold);
	outline-offset: 2px;
}
.gta-cmp-card.is-on {
	border-color: rgba(255, 194, 75, 0.55);
	background: rgba(255, 196, 0, 0.06);
}
.gta-cmp-card.is-dim {
	opacity: 0.42;
}
.gta-cmp-price {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.02em;
	background: var(--grad-text);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.gta-cmp-card p {
	margin: 0;
	font-size: 14px;
	color: var(--text-3);
}
.gta-cmp-table {
	margin: 0 0 12px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.gta-cmp-table table {
	width: 100%;
	min-width: 520px;
}
.gta-cmp-table tbody tr.is-hit th,
.gta-cmp-table tbody tr.is-hit td {
	background: rgba(255, 196, 0, 0.16);
	box-shadow: inset 3px 0 0 #ffc24b;
}
.gta-cmp-table tbody tr.is-dim {
	opacity: 0.28;
}
.gta-cmp.is-std .gta-cmp-col-ult,
.gta-cmp.is-ult .gta-cmp-col-std {
	opacity: 0.22;
}
.gta-cmp.is-std .gta-cmp-col-std,
.gta-cmp.is-ult .gta-cmp-col-ult {
	background: rgba(255, 196, 0, 0.14);
	box-shadow: inset 0 0 0 2px rgba(255, 194, 75, 0.75);
}
.gta-cmp-table thead th.gta-cmp-col-std,
.gta-cmp-table thead th.gta-cmp-col-ult {
	cursor: pointer;
}
.gta-cmp-note {
	margin: 0;
	font-size: 14px;
	color: var(--text-3);
}
@media (max-width: 700px) {
	.gta-cmp {
		padding: 14px 12px 12px;
	}
	.gta-cmp-name {
		font-size: 20px;
	}
	.gta-cmp-cards {
		grid-template-columns: 1fr;
	}
	.gta-cmp-price {
		font-size: 24px;
	}
	.gta-cmp-chip {
		padding: 10px 12px;
		font-size: 11px;
	}
}


/* Multi-column footer hubs: wrap on desktop, stack on phones. */
.footer {
	align-items: flex-start;
}
.footer-l {
	width: 100%;
	max-width: 720px;
	margin: 0 0 28px;
}
.footer-r {
	flex: 1 1 100%;
	width: 100%;
	max-width: 100%;
	padding-left: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
	gap: 22px 16px;
	min-width: 0;
	box-sizing: border-box;
	align-items: start;
}
.footer-col {
	width: auto;
	min-width: 0;
	max-width: 100%;
}
.footer-col a {
	overflow-wrap: anywhere;
	word-break: break-word;
}
.footer-col-wide {
	grid-column: span 2;
}
.footer-col-wide .footer-col-links {
	columns: 2;
	column-gap: 16px;
}
.footer-col-wide .footer-col-links a {
	break-inside: avoid;
	page-break-inside: avoid;
	-webkit-column-break-inside: avoid;
}
@media (max-width: 700px) {
	.footer-l {
		width: 100%;
		max-width: 100%;
		margin: 0 0 20px;
	}
	.footer-r {
		padding-left: 0;
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
		gap: 4px 0;
	}
	.footer-col {
		width: 100%;
		margin: 0 0 16px;
	}
}

/* Official character roster (2026-08-22) */
.gta-roster {
	margin: 0 0 1.4em;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
}
.gta-roster::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}
.gta-roster-head {
	margin: 0 0 12px;
}
.gta-roster-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin: 0 0 4px;
}
.gta-roster-name {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-roster-verdict {
	margin: 0 0 12px;
	font-size: 15px;
	color: var(--text-3);
}
.gta-roster-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 14px;
}
.gta-roster-chip {
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 10px 14px;
	min-height: 44px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
}
.gta-roster-chip:hover,
.gta-roster-chip:focus {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
	outline: 2px solid var(--vc-gold);
	outline-offset: 2px;
}
.gta-roster-chip.is-on {
	background: var(--vc-gold);
	border-color: var(--vc-gold);
	color: #0f1016;
}
.gta-roster-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 14px;
	margin: 0;
}
.gta-roster-card {
	margin: 0;
	padding: 0 0 12px;
	border: 1px solid var(--stroke);
	border-radius: 12px;
	background: #14151d;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.gta-roster-card.is-off {
	display: none;
}
.gta-roster-pic {
	margin: 0 0 10px;
	background: #0b0c11;
}
.gta-roster-pic img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: center top;
}
.gta-roster-nopic {
	margin: 0 0 10px;
	aspect-ratio: 3 / 4;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #0b0c11;
	border-bottom: 1px solid var(--stroke);
	font-family: var(--font-display);
	font-size: 42px;
	font-weight: 600;
	letter-spacing: 0.08em;
	color: var(--vc-gold);
	text-transform: uppercase;
}
.gta-roster-body {
	padding: 0 12px;
	min-width: 0;
}
.gta-roster-body h3 {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-roster-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 8px;
}
.gta-roster-tag {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.35);
	font-family: var(--font-display);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--vc-gold);
}
.gta-roster-body p {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--text-3);
}
.gta-roster-body p:last-child {
	margin-bottom: 0;
}
.gta-roster-empty {
	margin: 8px 0 0;
	padding: 14px 12px;
	border: 1px dashed rgba(255, 194, 75, 0.35);
	border-radius: 10px;
	color: var(--text-3);
	font-size: 15px;
}
.gta-roster-note {
	margin: 14px 0 0;
	font-size: 14px;
	color: var(--text-3);
}
@media (max-width: 700px) {
	.gta-roster {
		padding: 14px 12px 12px;
	}
	.gta-roster-name {
		font-size: 20px;
	}
	.gta-roster-grid {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
	.gta-roster-chip {
		padding: 10px 12px;
	}
	.gta-roster-body h3 {
		font-size: 15px;
	}
}

/* Character dossiers (2026-08-22) */
.gta-char figure {
	margin: 0 0 1.2em;
}
.gta-char figure img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--r-md);
	border: 1px solid var(--stroke);
}
.gta-char figcaption {
	margin: 8px 0 0;
	font-size: 14px;
	color: var(--text-3);
}
.gta-star {
	display: inline-block;
	min-width: 1.1em;
	font-weight: 700;
	color: var(--vc-gold);
	letter-spacing: 0;
}
.gta-claims {
	list-style: none;
	margin: 0 0 1.2em;
	padding: 0;
}
.gta-claims li {
	margin: 0 0 10px;
	padding: 10px 12px 10px 36px;
	position: relative;
	background: #14151d;
	border: 1px solid var(--stroke);
	border-radius: 10px;
	color: var(--text-3);
	font-size: 15px;
}
.gta-claims li .gta-star {
	position: absolute;
	left: 12px;
	top: 10px;
	font-size: 18px;
}
.gta-roster-pic a,
.gta-cast-pic a {
	display: block;
	color: inherit;
}
.gta-roster-body h3 a,
.gta-cast-card h3 a {
	color: inherit;
	text-decoration: none;
}
.gta-roster-body h3 a:hover,
.gta-cast-card h3 a:hover {
	color: var(--vc-gold);
}
.gta-nopic-link {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

/* --------------------------------------------------------------------------
   Homepage destination IA (2026-08-22)
   -------------------------------------------------------------------------- */

.gta-home-sec {
	margin: 0 0 36px;
	min-width: 0;
	max-width: 100%;
}

.gta-latest-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	min-width: 0;
}

.gta-latest-grid .gtnews2 {
	width: 100%;
	max-width: 100%;
	margin: 0;
	min-width: 0;
}

.gta-know-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
	min-width: 0;
}

.gta-know-door {
	position: relative;
	display: block;
	min-height: 148px;
	border-radius: var(--r-md);
	overflow: hidden;
	border: 1px solid var(--stroke);
	background: #0b0c11;
	color: #fff;
	text-decoration: none;
}

.gta-know-door img {
	display: block;
	width: 100%;
	height: 148px;
	object-fit: cover;
	object-position: center top;
	filter: saturate(1.05);
}

.gta-know-door::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(10, 11, 20, 0.05) 30%, rgba(10, 11, 20, 0.82) 100%);
	pointer-events: none;
}

.gta-know-name {
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 10px;
	z-index: 1;
	font-family: var(--font-display);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #fff;
}

.gta-know-door:hover {
	border-color: rgba(255, 46, 136, 0.45);
	box-shadow: 0 0 0 1px rgba(255, 46, 136, 0.2);
	color: #fff;
}

.gta-leaks {
	padding: 18px 18px 16px;
	border: 1px solid var(--stroke);
	border-top: 2px solid var(--vc-gold);
	border-radius: var(--r-lg);
	background: var(--bg-2);
	box-shadow: none;
}

.gta-leaks .title-block {
	color: var(--text-1);
}

.gta-leaks .title-block::before {
	background: linear-gradient(180deg, #ffc24b, #ff8a3d);
	box-shadow: none;
}

.gta-leaks-note {
	margin: -4px 0 14px 18px;
	padding: 0;
	max-width: 52rem;
	border: 0;
	border-radius: 0;
	background: none;
	font-size: 13px;
	line-height: 1.45;
	color: var(--text-3);
}

.gta-leaks-note a {
	color: var(--vc-gold);
	font-weight: 600;
}

.gta-leaks-note a:hover {
	color: #fff;
}

.gta-leaks-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	min-width: 0;
}

.gta-rumor {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 12px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg);
	background: var(--bg-1);
	color: inherit;
	text-decoration: none;
	box-sizing: border-box;
	transition: transform 0.28s var(--ease), border-color 0.28s var(--ease), box-shadow 0.28s var(--ease);
}

.gta-rumor:hover {
	transform: translateY(-4px);
	border-color: rgba(255, 194, 75, 0.45);
	box-shadow: var(--shadow-1);
	color: inherit;
}

.gta-rumor-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 6px;
}

.gta-rumor-badge {
	position: static;
	top: auto;
	left: auto;
	z-index: auto;
	padding: 2px 8px;
	border-radius: 999px;
	background: rgba(255, 194, 75, 0.12);
	border: 1px solid rgba(255, 194, 75, 0.4);
	font-family: var(--font-display);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--vc-gold);
}

.gta-rumor-image {
	display: block;
	overflow: hidden;
	border-radius: var(--r-md);
	margin: 0 0 10px;
	aspect-ratio: 16 / 9;
	background: var(--bg-1);
}

.gta-rumor-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gta-rumor-date {
	font-size: 12px;
	color: var(--text-3);
	margin: 0;
	letter-spacing: 0.04em;
}

.gta-rumor-title {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--text-1);
}

.gta-discussed-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	min-width: 0;
}

.gta-disc {
	display: flex;
	gap: 12px;
	align-items: center;
	min-width: 0;
	padding: 10px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	background: var(--bg-2);
	color: inherit;
	text-decoration: none;
}

.gta-disc:hover {
	border-color: rgba(255, 46, 136, 0.4);
	color: inherit;
}

.gta-disc-image {
	flex: 0 0 96px;
	width: 96px;
	height: 64px;
	overflow: hidden;
	border-radius: 8px;
	background: #0b0c11;
}

.gta-disc-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gta-disc-body {
	min-width: 0;
}

.gta-disc-title {
	display: block;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--text-1);
}

.gta-disc-meta {
	display: block;
	margin-top: 4px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--vc-pink);
}

.gta-db-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	min-width: 0;
	padding: 16px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-lg);
	background: var(--bg-2);
}

.gta-db-col {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.gta-db-label {
	margin: 0 0 8px;
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--vc-gold);
}

.gta-db-col a {
	display: block;
	padding: 8px 0;
	min-height: 44px;
	box-sizing: border-box;
	color: var(--text-2);
	font-weight: 600;
	line-height: 1.3;
}

.gta-db-col a:hover {
	color: #fff;
}

@media (max-width: 1100px) {
	.gta-latest-grid,
	.gta-leaks-grid,
	.gta-know-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

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

@media (max-width: 700px) {
	.gta-home-sec {
		margin: 0 0 28px;
	}

	.gta-latest-grid,
	.gta-know-grid,
	.gta-leaks-grid,
	.gta-discussed-grid,
	.gta-db-grid {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}

	.gta-leaks {
		padding: 14px 12px 12px;
	}

	.gta-leaks-note {
		margin-left: 0;
	}

	.gta-know-door,
	.gta-know-door img {
		min-height: 120px;
		height: 120px;
	}

	.gta-disc-image {
		flex-basis: 84px;
		width: 84px;
	}

	.gta-db-col a {
		padding: 10px 0;
	}
}

@media (max-width: 430px) {
	.gta-home-sec,
	.gta-latest-grid,
	.gta-know-grid,
	.gta-leaks-grid,
	.gta-discussed-grid,
	.gta-db-grid,
	.gta-know-door,
	.gta-rumor,
	.gta-disc {
		min-width: 0;
		max-width: 100%;
	}

	.gta-latest-grid,
	.gta-know-grid,
	.gta-leaks-grid,
	.gta-discussed-grid,
	.gta-db-grid {
		grid-template-columns: 1fr;
	}

	.gta-know-grid {
		grid-template-columns: 1fr 1fr;
	}

	.gta-disc {
		min-height: 44px;
	}

	.gta-know-door {
		min-height: 112px;
	}

	.gta-know-door img {
		height: 112px;
	}

	.gta-rumor,
	.gta-disc,
	.gta-db-col a,
	.gta-latest-grid .gtnews2 {
		min-height: 44px;
	}
}

/* Official vehicle garage (2026-08-22) */
.gta-garage {
	margin: 0 0 1.4em;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
}
.gta-garage::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}
.gta-garage-head {
	margin: 0 0 12px;
}
.gta-garage-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin: 0 0 4px;
}
.gta-garage-name {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-garage-verdict {
	margin: 0 0 12px;
	font-size: 15px;
	color: var(--text-3);
}
.gta-garage-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 14px;
}
.gta-garage-chip {
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 10px 14px;
	min-height: 44px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
}
.gta-garage-chip:hover,
.gta-garage-chip:focus {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
	outline: 2px solid var(--vc-gold);
	outline-offset: 2px;
}
.gta-garage-chip.is-on {
	background: var(--vc-gold);
	border-color: var(--vc-gold);
	color: #0f1016;
}
.gta-garage-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 14px;
	margin: 0;
}
.gta-garage-card {
	margin: 0;
	padding: 0 0 12px;
	border: 1px solid var(--stroke);
	border-radius: 12px;
	background: #14151d;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.gta-garage-card.is-off {
	display: none;
}
.gta-garage-pic {
	margin: 0 0 10px;
	background: #0b0c11;
}
.gta-garage-pic img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}
.gta-garage-body {
	padding: 0 12px;
	min-width: 0;
}
.gta-garage-body h3 {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-garage-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 8px;
}
.gta-garage-tag {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.35);
	font-family: var(--font-display);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--vc-gold);
}
.gta-garage-body p {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--text-3);
}
.gta-garage-body p:last-child {
	margin-bottom: 0;
}
.gta-garage-empty {
	margin: 8px 0 0;
	padding: 14px 12px;
	border: 1px dashed rgba(255, 194, 75, 0.35);
	border-radius: 10px;
	color: var(--text-3);
	font-size: 15px;
}
.gta-garage-note {
	margin: 14px 0 0;
	font-size: 14px;
	color: var(--text-3);
}
@media (max-width: 700px) {
	.gta-garage {
		padding: 14px 12px 12px;
	}
	.gta-garage-name {
		font-size: 20px;
	}
	.gta-garage-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.gta-garage-chip {
		padding: 10px 12px;
	}
	.gta-garage-body h3 {
		font-size: 16px;
	}
}

/* --------------------------------------------------------------------------
   Article dek under H1 + Claim / Evidence / Verdict + Intelligence strip
   -------------------------------------------------------------------------- */

.full-news-title h1 {
	margin-bottom: 10px;
}

.full-news-dek {
	margin: 0 0 18px;
	color: var(--text-3);
	font-size: 18px;
	line-height: 1.4;
	font-weight: 500;
}

.full-news-dek p {
	margin: 0;
}

.full-news-dek img,
.full-news-dek figure,
.full-news-dek video {
	display: none;
}

.gta-cev {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-rows: auto;
	gap: 10px;
	margin: 0 0 1.4em;
	padding: 14px 16px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	background: rgba(16, 18, 31, 0.72);
}

.gta-cev > :not(p) {
	display: none;
}

.gta-cev p {
	margin: 0;
	color: var(--text-2);
	font-size: 14px;
	line-height: 1.45;
}

.gta-cev span {
	display: block;
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--vc-gold);
}

.gta-status-chip {
	margin: 0 0 1.2em;
	padding: 12px 14px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	background: rgba(16, 18, 31, 0.72);
	color: var(--text-2);
	font-size: 14px;
	line-height: 1.45;
}

.gta-status-chip span {
	display: inline-block;
	margin: 0 8px 0 0;
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--vc-gold);
}

.gta-status-chip[data-status="unverified"] span,
.gta-status-chip[data-status="viral"] span {
	color: var(--text-2);
}

.gta-intel-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	min-width: 0;
}

.gta-intel-card {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-height: 148px;
	padding: 18px 18px 16px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	background: var(--bg-2);
	color: var(--text-2);
	text-decoration: none;
	box-sizing: border-box;
}

.gta-intel-card:hover {
	border-color: rgba(255, 46, 136, 0.45);
	box-shadow: 0 0 0 1px rgba(255, 46, 136, 0.18);
	color: #fff;
}

.gta-intel-kicker {
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--vc-gold);
}

.gta-intel-name {
	color: var(--text-1);
	font-weight: 650;
	font-size: 16px;
	line-height: 1.35;
}

.gta-intel-stats {
	margin-top: auto;
	white-space: pre-line;
	font-size: 13px;
	line-height: 1.45;
	color: var(--text-3);
}

.gta-intel-tracker {
	border-color: rgba(255, 194, 75, 0.38);
	background:
		linear-gradient(180deg, rgba(255, 194, 75, 0.08), var(--bg-2));
}

@media (max-width: 1100px) {
	.gta-intel-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 700px) {
	.gta-cev {
		grid-template-columns: 1fr;
		gap: 8px;
		padding: 12px;
		min-width: 0;
	}

	.gta-cev p {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.gta-intel-card {
		min-height: 44px;
	}
}

/* Official weapons armory (2026-08-22) */
.gta-armory {
	margin: 0 0 1.4em;
	padding: 16px 16px 14px;
	background: #0f1016;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-1);
	position: relative;
	overflow: hidden;
}
.gta-armory::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--grad-main);
}
.gta-armory-head {
	margin: 0 0 12px;
}
.gta-armory-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--vc-gold);
	margin: 0 0 4px;
}
.gta-armory-name {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-armory-verdict {
	margin: 0 0 12px;
	font-size: 15px;
	color: var(--text-3);
}
.gta-armory-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 14px;
}
.gta-armory-chip {
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 10px 14px;
	min-height: 44px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	background: rgba(255, 196, 0, 0.08);
	color: var(--vc-gold);
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
}
.gta-armory-chip:hover,
.gta-armory-chip:focus {
	color: #fff;
	border-color: var(--vc-pink);
	background: rgba(255, 46, 136, 0.14);
	outline: 2px solid var(--vc-gold);
	outline-offset: 2px;
}
.gta-armory-chip.is-on {
	background: var(--vc-gold);
	border-color: var(--vc-gold);
	color: #0f1016;
}
.gta-armory-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 14px;
	margin: 0;
}
.gta-armory-card {
	margin: 0;
	padding: 0 0 12px;
	border: 1px solid var(--stroke);
	border-radius: 12px;
	background: #14151d;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.gta-armory-card.is-off {
	display: none;
}
.gta-armory-pic {
	margin: 0 0 10px;
	background: #0b0c11;
}
.gta-armory-pic img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}
.gta-armory-body {
	padding: 0 12px;
	min-width: 0;
}
.gta-armory-body h3 {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--text-1);
}
.gta-armory-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 8px;
}
.gta-armory-tag {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 999px;
	border: 1px solid rgba(255, 194, 75, 0.35);
	font-family: var(--font-display);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--vc-gold);
}
.gta-armory-body p {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--text-3);
}
.gta-armory-body p:last-child {
	margin-bottom: 0;
}
.gta-armory-empty {
	margin: 8px 0 0;
	padding: 14px 12px;
	border: 1px dashed rgba(255, 194, 75, 0.35);
	border-radius: 10px;
	color: var(--text-3);
	font-size: 15px;
}
.gta-armory-note {
	margin: 14px 0 0;
	font-size: 14px;
	color: var(--text-3);
}
@media (max-width: 700px) {
	.gta-armory {
		padding: 14px 12px 12px;
	}
	.gta-armory-name {
		font-size: 20px;
	}
	.gta-armory-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.gta-armory-chip {
		padding: 10px 12px;
	}
	.gta-armory-body h3 {
		font-size: 16px;
	}
}

/* Leak tracker — designed table + compact legend/chips */
.full-news-text .gta-tracker,
.stt-block-content .gta-tracker {
	display: block;
	margin: 0 0 1.6em;
	padding: 0;
	background: transparent;
	border: 0;
	color: #EDE1D3;
	box-sizing: border-box;
}
.full-news-text .gta-tracker-legend,
.stt-block-content .gta-tracker-legend {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 18px;
	margin: 0 0 10px;
	padding: 8px 12px;
	background: #1A1B23;
	border: 1px solid #2D2E3A;
	border-radius: 8px;
}
.full-news-text .gta-tracker-leg,
.stt-block-content .gta-tracker-leg {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}
.full-news-text .gta-tracker-legdef,
.stt-block-content .gta-tracker-legdef {
	font-size: 12px;
	line-height: 1.3;
	color: #8B8C98;
}
.full-news-text .gta-stamp,
.stt-block-content .gta-stamp {
	display: inline-block;
	padding: 2px 7px;
	border-radius: 4px;
	border: 1px solid #2D2E3A;
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	line-height: 1.3;
	color: #8B8C98;
	white-space: nowrap;
}
.full-news-text .gta-stamp-official,
.stt-block-content .gta-stamp-official {
	color: #00f0ff;
	border-color: #00f0ff;
	background: rgba(0, 240, 255, 0.12);
}
.full-news-text .gta-stamp-reported,
.stt-block-content .gta-stamp-reported {
	color: #f6af22;
	border-color: #f6af22;
	background: rgba(246, 175, 34, 0.1);
}
.full-news-text .gta-stamp-unverified,
.stt-block-content .gta-stamp-unverified {
	color: #f6af22;
	border-color: #f6af22;
	background: transparent;
}
.full-news-text .gta-stamp-debunked,
.stt-block-content .gta-stamp-debunked {
	color: #ffb4ab;
	border-color: #ec148c;
	background: rgba(236, 20, 140, 0.1);
}
.full-news-text .gta-tracker-filters,
.stt-block-content .gta-tracker-filters {
	position: sticky;
	top: 0;
	z-index: 6;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 10px;
	padding: 8px 0;
	background: #121319;
}
.full-news-text .gta-tracker-chip,
.stt-block-content .gta-tracker-chip {
	display: inline-block;
	padding: 5px 10px;
	border-radius: 4px;
	border: 1px solid #2D2E3A;
	background: #1A1B23;
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #EDE1D3;
	cursor: pointer;
	user-select: none;
}
.full-news-text .gta-tracker-chip-official,
.stt-block-content .gta-tracker-chip-official {
	color: #00f0ff;
	border-color: rgba(0, 240, 255, 0.45);
}
.full-news-text .gta-tracker-chip-unverified,
.stt-block-content .gta-tracker-chip-unverified {
	color: #f6af22;
	border-color: rgba(246, 175, 34, 0.45);
}
.full-news-text .gta-tracker-chip-debunked,
.stt-block-content .gta-tracker-chip-debunked {
	color: #ffb4ab;
	border-color: rgba(236, 20, 140, 0.45);
}
.full-news-text .gta-tracker-chip.is-on,
.stt-block-content .gta-tracker-chip.is-on {
	border-color: #00f0ff;
	box-shadow: inset 0 0 0 1px #00f0ff;
}
.full-news-text .gta-tracker-chip-official.is-on,
.stt-block-content .gta-tracker-chip-official.is-on {
	background: rgba(0, 240, 255, 0.12);
}
.full-news-text .gta-tracker-chip-unverified.is-on,
.stt-block-content .gta-tracker-chip-unverified.is-on {
	background: rgba(246, 175, 34, 0.1);
	border-color: #f6af22;
	box-shadow: inset 0 0 0 1px #f6af22;
}
.full-news-text .gta-tracker-chip-debunked.is-on,
.stt-block-content .gta-tracker-chip-debunked.is-on {
	background: rgba(236, 20, 140, 0.1);
	border-color: #ec148c;
	box-shadow: inset 0 0 0 1px #ec148c;
}
.full-news-text .gta-tracker-table,
.stt-block-content .gta-tracker-table {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border: 1px solid #2D2E3A;
	border-radius: 8px;
	background: #1A1B23;
}
.full-news-text .gta-tracker table,
.stt-block-content .gta-tracker table {
	width: 100%;
	max-width: 100%;
	min-width: 640px;
	margin: 0;
	border-collapse: collapse;
	table-layout: auto;
}
.full-news-text .gta-tracker th,
.stt-block-content .gta-tracker th,
.full-news-text .gta-tracker td,
.stt-block-content .gta-tracker td {
	padding: 8px 10px;
	border-bottom: 1px solid #2D2E3A;
	vertical-align: top;
	white-space: normal;
	text-align: left;
}
.full-news-text .gta-tracker thead th,
.stt-block-content .gta-tracker thead th {
	position: sticky;
	top: 0;
	z-index: 3;
	background: #121319;
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #8B8C98;
	border-bottom: 1px solid #2D2E3A;
}
.full-news-text .gta-tracker tbody td,
.stt-block-content .gta-tracker tbody td {
	font-size: 14px;
	line-height: 1.4;
	color: #EDE1D3;
	background: #1A1B23;
}
.full-news-text .gta-tracker tbody tr:hover td,
.stt-block-content .gta-tracker tbody tr:hover td {
	background: #22232e;
}
.full-news-text .gta-tracker tbody tr:has(.gta-stamp-official) td:first-child,
.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-official) td:first-child {
	box-shadow: inset 3px 0 0 #00f0ff;
}
.full-news-text .gta-tracker tbody tr:has(.gta-stamp-unverified) td:first-child,
.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-unverified) td:first-child {
	box-shadow: inset 3px 0 0 #f6af22;
}
.full-news-text .gta-tracker tbody tr:has(.gta-stamp-debunked) td:first-child,
.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-debunked) td:first-child {
	box-shadow: inset 3px 0 0 #ec148c;
}
.full-news-text .gta-tracker tbody tr:has(.gta-stamp-debunked) td,
.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-debunked) td {
	opacity: 0.82;
}
.full-news-text .gta-tracker tbody tr.gta-hide,
.stt-block-content .gta-tracker tbody tr.gta-hide {
	display: none;
}
.full-news-text .gta-tracker td .gta-stamp,
.stt-block-content .gta-tracker td .gta-stamp {
	margin: 0;
}
.full-news-text .gta-tracker tbody td:nth-child(3),
.stt-block-content .gta-tracker tbody td:nth-child(3) {
	font-family: var(--font-display);
	font-size: 12px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #8B8C98;
	white-space: nowrap;
}
.full-news-text .gta-tracker a,
.stt-block-content .gta-tracker a {
	color: #00f0ff;
}
@media (max-width: 700px) {
	.full-news-text .gta-tracker-legend,
	.stt-block-content .gta-tracker-legend {
		gap: 8px 12px;
		padding: 8px 10px;
	}
	.full-news-text .gta-tracker-legdef,
	.stt-block-content .gta-tracker-legdef {
		font-size: 11px;
	}
}

/* Official pre-order sheet (post 69) — Stitch visual, DLE-safe divs only */
.full-news-text .gta-preorder {
	display: block;
	max-width: 900px;
	margin: 0 0 1.6em;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--text-1);
	box-sizing: border-box;
}
.full-news-text .gta-preorder-kicker {
	margin: 0 0 14px;
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #f6af22;
	line-height: 1.3;
}
.full-news-text .gta-preorder-editions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin: 0 0 14px;
}
.full-news-text .gta-preorder-card {
	padding: 0 0 16px;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	box-sizing: border-box;
}
.full-news-text .gta-preorder-cardtop {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 8px;
}
.full-news-text .gta-preorder-sku {
	font-family: var(--font-display);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8B8C98;
	line-height: 1.2;
}
.full-news-text .gta-preorder-ultimate .gta-preorder-sku {
	color: #f6af22;
}
.full-news-text .gta-preorder-chip {
	flex: 0 0 auto;
	padding: 2px 7px;
	border: 1px solid #00f0ff;
	border-radius: 4px;
	background: rgba(0, 240, 255, 0.08);
	color: #00f0ff;
	font-family: var(--font-display);
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.3;
}
.full-news-text .gta-preorder-price {
	margin: 0 0 6px;
	font-family: var(--font-display);
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1;
	color: #EDE1D3;
	text-transform: uppercase;
}
.full-news-text .gta-preorder-ultimate .gta-preorder-price {
	color: #f6af22;
}
.full-news-text .gta-preorder-meta {
	font-size: 12px;
	line-height: 1.35;
	color: #8B8C98;
}
.full-news-text .gta-preorder-strip {
	display: grid;
	grid-template-columns: 1fr auto 1fr auto 1fr 1fr;
	gap: 8px;
	align-items: stretch;
	margin: 0 0 12px;
}
.full-news-text .gta-preorder-tile {
	padding: 10px 0;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	text-align: left;
	box-sizing: border-box;
}
.full-news-text .gta-preorder-launch {
	border-color: #f6af22;
	border-width: 2px;
}
.full-news-text .gta-preorder-pc {
	opacity: 0.5;
}
.full-news-text .gta-preorder-date {
	margin: 0 0 4px;
	font-family: var(--font-display);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #EDE1D3;
	line-height: 1.2;
}
.full-news-text .gta-preorder-launch .gta-preorder-date,
.full-news-text .gta-preorder-launch .gta-preorder-event {
	color: #f6af22;
}
.full-news-text .gta-preorder-pc .gta-preorder-date,
.full-news-text .gta-preorder-pc .gta-preorder-event {
	color: #8B8C98;
}
.full-news-text .gta-preorder-event {
	font-size: 11px;
	line-height: 1.25;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #8B8C98;
}
.full-news-text .gta-preorder-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #f6af22;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}
.full-news-text .gta-preorder-note {
	padding-top: 10px;
	border-top: 1px solid #2D2E3A;
	font-size: 12px;
	line-height: 1.4;
	color: #8B8C98;
}
@media (max-width: 700px) {
	.full-news-text .gta-preorder-editions {
		grid-template-columns: 1fr;
		gap: 18px;
	}
	.full-news-text .gta-preorder-price {
		font-size: 32px;
	}
	.full-news-text .gta-preorder-strip {
		grid-template-columns: 1fr 1fr;
		gap: 12px 16px;
	}
	.full-news-text .gta-preorder-arrow {
		display: none;
	}
	.full-news-text .gta-preorder-tile {
		min-height: 44px;
	}
}


/* Leak-machine flowchart (post 88) — boxes + gold arrows, not a 2-col text list */
.full-news-text .gta-machine.gta-factstrip,
.full-news-text .gta-machine {
	display: block;
	margin: 0 0 1.6em;
	padding: 16px 14px;
	border: 1px solid var(--stroke);
	border-radius: var(--r-md);
	background: rgba(255, 255, 255, 0.02);
}
.full-news-text .gta-machine > table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
}
.full-news-text .gta-machine > table > tr > td,
.full-news-text .gta-machine > table > tbody > tr > td {
	padding: 4px 10px;
	vertical-align: middle;
}
.full-news-text .gta-machine > table > tr > td:first-child,
.full-news-text .gta-machine > table > tbody > tr > td:first-child {
	width: 56%;
	vertical-align: top;
	padding-right: 18px;
}
.full-news-text .gta-machine > table > tr > td:last-child,
.full-news-text .gta-machine > table > tbody > tr > td:last-child {
	width: 44%;
	vertical-align: middle;
	padding-left: 8px;
}
.full-news-text .gta-machine-kicker {
	margin: 0 0 12px;
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--vc-gold);
	line-height: 1.3;
}
.full-news-text .gta-machine-step {
	margin: 0 auto;
	max-width: 300px;
	padding: 10px 14px;
	border: 1px solid rgba(255, 194, 75, 0.45);
	border-radius: 12px;
	background: rgba(16, 18, 31, 0.72);
	color: var(--text-1);
	text-align: center;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
}
.full-news-text .gta-machine-arrow {
	margin: 2px 0 3px;
	color: var(--vc-gold);
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
}
.full-news-text .gta-machine-loop {
	border-color: rgba(255, 194, 75, 0.7);
	background: rgba(255, 194, 75, 0.06);
}
.full-news-text .gta-machine-caption {
	margin: 6px 0 0;
	text-align: center;
	font-size: 12px;
	color: var(--text-3);
	line-height: 1.3;
}
.full-news-text .gta-machine-fee {
	margin: 0 auto;
	max-width: 320px;
	padding: 22px 20px 20px;
	border: 1px solid var(--vc-gold);
	border-radius: 12px;
	background: rgba(255, 194, 75, 0.08);
	box-sizing: border-box;
}
.full-news-text .gta-machine-fee p {
	margin: 0;
	color: var(--text-1);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.45;
}
@media (max-width: 700px) {
	.full-news-text .gta-machine > table,
	.full-news-text .gta-machine > table > tbody,
	.full-news-text .gta-machine > table > tbody > tr,
	.full-news-text .gta-machine > table > tr {
		display: block;
		width: 100%;
	}
	.full-news-text .gta-machine > table > tr > td,
	.full-news-text .gta-machine > table > tbody > tr > td,
	.full-news-text .gta-machine > table > tr > td:first-child,
	.full-news-text .gta-machine > table > tbody > tr > td:first-child,
	.full-news-text .gta-machine > table > tr > td:last-child,
	.full-news-text .gta-machine > table > tbody > tr > td:last-child {
		display: block;
		width: 100%;
		padding: 4px 0 14px;
	}
}


/* Hub steppers / tiles / void cards */
.full-news-text .gta-step,
.stt-block-content .gta-step {
	margin: 0 0 1.6em;
	padding: 0 0 16px;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	box-sizing: border-box;
}
.full-news-text .gta-step-row,
.stt-block-content .gta-step-row {
	display: flex;
	align-items: stretch;
	gap: 10px;
}
.full-news-text .gta-step-box,
.stt-block-content .gta-step-box {
	flex: 1 1 0;
	padding: 0 0 12px;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-sizing: border-box;
}
.full-news-text .gta-step-name,
.stt-block-content .gta-step-name {
	margin-top: 10px;
	font-family: var(--font-display);
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #EDE1D3;
	line-height: 1.2;
}
.full-news-text .gta-step-when,
.stt-block-content .gta-step-when {
	margin-top: 6px;
	font-family: var(--font-display);
	font-size: 13px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #f6af22;
}
.full-news-text .gta-step-where,
.stt-block-content .gta-step-where {
	margin-top: 8px;
	font-size: 13px;
	line-height: 1.4;
	color: #8B8C98;
}
.full-news-text .gta-step-arrow,
.stt-block-content .gta-step-arrow {
	display: flex;
	align-items: center;
	color: #f6af22;
	font-size: 22px;
	font-weight: 700;
	flex: 0 0 auto;
}
.full-news-text .gta-step-door,
.stt-block-content .gta-step-door {
	margin-top: 12px;
	padding: 14px 16px;
	background: #1A1B23;
	border: 1px dashed #2D2E3A;
	border-radius: 12px;
	opacity: 0.85;
}
.full-news-text .gta-step-door .gta-step-name,
.stt-block-content .gta-step-door .gta-step-name {
	color: #8B8C98;
}
.full-news-text .gta-plat,
.stt-block-content .gta-plat {
	margin: 0 0 1.6em;
}
.full-news-text .gta-plat-in,
.stt-block-content .gta-plat-in,
.full-news-text .gta-plat-out,
.stt-block-content .gta-plat-out {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 0 0 12px;
}
.full-news-text .gta-plat-out,
.stt-block-content .gta-plat-out {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.full-news-text .gta-plat-tile,
.stt-block-content .gta-plat-tile {
	padding: 0 0 14px;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	box-sizing: border-box;
}
.full-news-text .gta-plat-yes,
.stt-block-content .gta-plat-yes {
	border-color: rgba(0, 240, 255, 0.45);
}
.full-news-text .gta-plat-no,
.stt-block-content .gta-plat-no {
	opacity: 0.72;
	border-style: dashed;
}
.full-news-text .gta-plat-title,
.stt-block-content .gta-plat-title {
	margin-top: 10px;
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	color: #EDE1D3;
	line-height: 1.2;
}
.full-news-text .gta-plat-meta,
.stt-block-content .gta-plat-meta {
	margin-top: 8px;
	font-size: 13px;
	line-height: 1.45;
	color: #8B8C98;
}
.full-news-text .gta-void,
.stt-block-content .gta-void {
	margin: 0 0 1.6em;
	padding: 0 0 16px;
	background: transparent;
	border: 0;
	border-bottom: 1px dashed var(--stroke);
	border-radius: 0;
	box-sizing: border-box;
}
.full-news-text .gta-void-kicker,
.stt-block-content .gta-void-kicker {
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #f6af22;
}
.full-news-text .gta-void-title,
.stt-block-content .gta-void-title {
	margin-top: 10px;
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 600;
	text-transform: uppercase;
	color: #EDE1D3;
	line-height: 1.2;
}
.full-news-text .gta-void-body,
.stt-block-content .gta-void-body {
	margin-top: 10px;
	font-size: 15px;
	line-height: 1.5;
	color: #8B8C98;
}
@media (max-width: 700px) {
	.full-news-text .gta-step-row,
	.stt-block-content .gta-step-row,
	.full-news-text .gta-plat-in,
	.stt-block-content .gta-plat-in,
	.full-news-text .gta-plat-out,
	.stt-block-content .gta-plat-out {
		grid-template-columns: 1fr;
		flex-direction: column;
	}
	.full-news-text .gta-step-arrow,
	.stt-block-content .gta-step-arrow {
		justify-content: center;
		transform: rotate(90deg);
	}
}

/* Leak tracker — phone: stack rows into labeled cards. Desktop table unchanged. */
@media (max-width: 700px) {
	.full-news-text .gta-tracker-table,
	.stt-block-content .gta-tracker-table {
		overflow: visible;
		border: 0;
		border-radius: 0;
		background: transparent;
	}
	.full-news-text .gta-tracker table,
	.stt-block-content .gta-tracker table {
		min-width: 0;
		width: 100%;
		display: block;
	}
	.full-news-text .gta-tracker thead,
	.stt-block-content .gta-tracker thead {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		border: 0;
	}
	.full-news-text .gta-tracker tbody,
	.stt-block-content .gta-tracker tbody {
		display: block;
		width: 100%;
	}
	.full-news-text .gta-tracker tbody tr,
	.stt-block-content .gta-tracker tbody tr {
		display: block;
		margin: 0 0 12px;
		padding: 12px 14px 10px;
		border: 1px solid #2D2E3A;
		border-radius: 12px;
		background: #1A1B23;
		box-shadow: none;
	}
	.full-news-text .gta-tracker tbody tr:has(.gta-stamp-official),
	.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-official) {
		box-shadow: inset 3px 0 0 #00f0ff;
	}
	.full-news-text .gta-tracker tbody tr:has(.gta-stamp-unverified),
	.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-unverified) {
		box-shadow: inset 3px 0 0 #f6af22;
	}
	.full-news-text .gta-tracker tbody tr:has(.gta-stamp-debunked),
	.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-debunked) {
		box-shadow: inset 3px 0 0 #ec148c;
	}
	.full-news-text .gta-tracker tbody tr:hover td,
	.stt-block-content .gta-tracker tbody tr:hover td {
		background: transparent;
	}
	.full-news-text .gta-tracker tbody tr:has(.gta-stamp-official) td:first-child,
	.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-official) td:first-child,
	.full-news-text .gta-tracker tbody tr:has(.gta-stamp-unverified) td:first-child,
	.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-unverified) td:first-child,
	.full-news-text .gta-tracker tbody tr:has(.gta-stamp-debunked) td:first-child,
	.stt-block-content .gta-tracker tbody tr:has(.gta-stamp-debunked) td:first-child {
		box-shadow: none;
	}
	.full-news-text .gta-tracker th,
	.stt-block-content .gta-tracker th,
	.full-news-text .gta-tracker td,
	.stt-block-content .gta-tracker td {
		display: grid;
		grid-template-columns: 7.2em minmax(0, 1fr);
		gap: 8px 10px;
		align-items: start;
		width: 100%;
		padding: 7px 0;
		border-bottom: 1px solid #2D2E3A;
		white-space: normal;
	}
	.full-news-text .gta-tracker tbody td:last-child,
	.stt-block-content .gta-tracker tbody td:last-child {
		border-bottom: 0;
		padding-bottom: 2px;
	}
	.full-news-text .gta-tracker tbody td:nth-child(3),
	.stt-block-content .gta-tracker tbody td:nth-child(3) {
		white-space: normal;
	}
	.full-news-text .gta-tracker td::before,
	.stt-block-content .gta-tracker td::before {
		content: attr(data-label);
		font-family: var(--font-display);
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: #8B8C98;
		line-height: 1.3;
		padding-top: 2px;
	}
	.full-news-text .gta-tracker td > .desk-cell,
	.stt-block-content .gta-tracker td > .desk-cell {
		display: block;
		min-width: 0;
	}
	.full-news-text .gta-tracker-filters,
	.stt-block-content .gta-tracker-filters {
		position: sticky;
		top: 0;
		padding: 8px 0 10px;
		gap: 6px;
	}
	.full-news-text .gta-tracker-chip,
	.stt-block-content .gta-tracker-chip {
		padding: 7px 11px;
		font-size: 11px;
	}
}

/* Undo the desktop-only "never stack" container rule on real phones */
@media (max-width: 700px) {
	.full-news-text .gta-tracker table,
	.full-news-text .gta-tracker thead,
	.full-news-text .gta-tracker tbody,
	.full-news-text .gta-tracker tr,
	.full-news-text .gta-tracker th,
	.full-news-text .gta-tracker td,
	.full-news-text .gta-tracker caption {
		width: 100%;
		max-width: 100%;
	}
}

/* --------------------------------------------------------------------------
   Minimalist pass (2026-08-24)
   One accent (pink) + one semantic (amber = leaks). Flat homepage surfaces,
   quiet hairlines, compact mobile rows. Loaded last so equal-specificity
   rules above are overridden.
   -------------------------------------------------------------------------- */

/* Header: calmer hairline, no glow */
.head-line::after { background: var(--stroke); opacity: 1; }
.logo > img { filter: none; }
.logo:hover > img { transform: scale(1.03); filter: none; }

/* Launch countdown: one accent, quiet frame */
.gta-launch-strip { box-shadow: none; background: var(--bg-1); }
.gta-launch-strip::before { display: none; }
.gta-launch-num { background: none; -webkit-text-fill-color: var(--vc-pink); color: var(--vc-pink); }
.gta-launch-unit { color: var(--text-3); }
.gta-launch-kicker { color: var(--text-3); }
.gta-launch-next { display: none; }
.gta-launch-links a { color: var(--text-2); font-weight: 500; }
.gta-launch-links a:hover { color: var(--vc-pink); }
.gta-launch-el { border-left-color: var(--stroke); }
.gta-launch-el-num { color: var(--vc-pink); }
.gta-launch-el-unit { color: var(--text-3); }

/* Hero: single CTA accent, calm meta row */
.hslider { box-shadow: none; background: transparent; }
.hslider-news-date { border: 0; background: none; padding: 0; color: rgba(255, 255, 255, 0.82); }
.hslider-news-info a { background: none; border-color: rgba(255, 255, 255, 0.4); color: #fff !important; }
.hslider-news-info a:hover { background: var(--vc-pink); border-color: var(--vc-pink); box-shadow: none; }
.hslider-news-link { box-shadow: none; }
.hslider-news-link:hover { box-shadow: none; transform: none; filter: brightness(1.08); }

/* Section titles: uniform tick, plain text header links */
.gta-leaks .title-block::before { background: var(--grad-main); }
.title-block a { border: 0; padding: 0; border-radius: 0; color: var(--text-3); font-weight: 500; }
.title-block a:hover { color: var(--vc-pink); background: none; }
.gta-home-sec { margin-bottom: 42px; }

/* Homepage cards: flat, no panel-in-panel */
.gta-latest-grid .gtnews2,
.gta-rumor,
.gta-disc {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
}
.gta-latest-grid .gtnews2:hover,
.gta-rumor:hover,
.gta-disc:hover { transform: none; border: 0; box-shadow: none; }
.gta-latest-grid .gtnews2-image img { border-radius: var(--r-md); }
.gta-rumor-image { border-radius: var(--r-md); margin-bottom: 8px; }
.gta-rumor-badge { background: none; border-color: rgba(255, 194, 75, 0.32); color: var(--vc-gold); }
.gta-disc { gap: 14px; }
.gta-disc-image { border-radius: var(--r-sm); }

/* Leaks section: lose the framed panel */
.gta-leaks { background: transparent; border: 0; padding: 0; border-radius: 0; }
.gta-leaks-note { margin-left: 0; }

/* Intelligence triptych: flat rows with hairlines */
.gta-intel-card {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0 0 18px;
	min-height: 0;
	border-bottom: 1px solid var(--stroke);
}
.gta-intel-card:hover { border-bottom-color: var(--vc-pink); box-shadow: none; color: #fff; }
.gta-intel-kicker { color: var(--text-3); }
.gta-intel-tracker { background: none; border-color: transparent; }
.gta-intel-tracker .gta-intel-kicker { color: var(--vc-gold); }
.gta-intel-stats { font-variant-numeric: tabular-nums; }

/* What we know doors: borderless, image carries the hover */
.gta-know-door { border: 0; }
.gta-know-door:hover { border: 0; box-shadow: none; }
.gta-know-door img { transition: transform 0.5s var(--ease), filter 0.5s var(--ease); }
.gta-know-door:hover img { transform: scale(1.05); }

/* Database: plain columns */
.gta-db-grid { background: transparent; border: 0; padding: 0; border-radius: 0; }
.gta-db-label { color: var(--text-3); }
.gta-db-col a { font-weight: 500; }
.gta-db-col a:hover { color: var(--vc-pink); }

/* Footer: quieter column labels */
.footer-col > div:first-child {
	font-family: var(--font-display);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--text-3);
}

/* GTA series: calm hover */
.gta-game:hover { box-shadow: none; transform: none; }

/* ---- Mobile pass ---- */
@media (max-width: 700px) {
	/* News and leaks become compact horizontal rows */
	.gta-latest-grid,
	.gta-leaks-grid { display: flex; flex-direction: column; gap: 16px; }
	.gta-latest-grid .gtnews2,
	.gta-rumor {
		display: grid;
		grid-template-columns: 118px 1fr;
		column-gap: 12px;
		align-items: start;
	}
	.gta-latest-grid .gtnews2-image,
	.gta-rumor-image { grid-row: 1 / 3; grid-column: 1; margin: 0; aspect-ratio: 4 / 3; }
	.gta-latest-grid .gtnews2-image img,
	.gta-rumor-image img { border-radius: var(--r-sm); height: 100%; object-fit: cover; }
	.gta-latest-grid .gtnews2-date { grid-column: 2; margin: 0 0 3px; }
	.gta-latest-grid .gtnews2-title {
		grid-column: 2;
		font-size: 14.5px;
		line-height: 1.32;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
	.gta-rumor-meta { grid-column: 2; margin: 0 0 3px; }
	.gta-rumor-title {
		grid-column: 2;
		font-size: 14.5px;
		line-height: 1.32;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	/* Launch links: neutral chips instead of amber pills */
	.gta-launch-links a {
		border-color: var(--stroke-strong);
		background: none;
		min-height: 36px;
		color: var(--text-2);
		font-weight: 500;
	}
	.gta-launch-links a:hover { color: var(--vc-pink); border-color: var(--vc-pink); }

	/* Intelligence rows breathe but stay compact */
	.gta-intel-card { padding: 14px 0; gap: 4px; }
	.gta-intel-grid .gta-intel-card:first-child { padding-top: 0; }

	/* Database keeps two slim columns */
	.gta-db-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 6px; }

	/* Discussed: single comfortable column */
	.gta-discussed-grid { grid-template-columns: 1fr; gap: 14px; }
	.gta-disc-image { flex-basis: 104px; width: 104px; height: 70px; }

	/* Shorter hero */
	.hslider-news { height: 340px; }

	/* Footer in two slim columns; fat hubs still span the row */
	.footer-r { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 16px; align-items: start; }
	.footer-col-wide { grid-column: 1 / -1; }

	.gta-home-sec { margin-bottom: 30px; }
}

@media (max-width: 650px) {
	/* Sign Up lives inside the account dropdown — keep the phone header calm */
	.head-reg { display: none; }
	.gta-launch-num { font-size: 42px; }
}

/* --------------------------------------------------------------------------
   Minimalist pass part 2 (2026-08-25): inner pages
   Categories, articles, sidebar, comments, related news — same flat language
   as the homepage: transparent surfaces, hairline separators, one pink
   accent, Oswald section ticks, Inter card titles.
   -------------------------------------------------------------------------- */

/* === Breadcrumbs === */

.speed-b {
	margin: 0 0 20px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.02em;
	text-transform: none;
	color: var(--text-3);
}

.speed-b a {
	color: var(--text-3);
	border-bottom: 1px solid transparent;
}

.speed-b a:hover {
	color: var(--vc-pink);
}

.speed-b .fa-angle-right,
.speed-b > i {
	color: var(--vc-pink);
}

/* === Category header === */

.category-info {
	margin: 0 0 8px;
}

.category-info-title {
	position: relative;
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
	margin: 0 0 10px;
	padding: 0 0 0 18px;
	text-shadow: none;
}

.category-info-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 26px;
	border-radius: 4px;
	background: var(--grad-sunset);
	box-shadow: 0 0 14px rgba(255, 46, 136, 0.55);
}

.category-info-desc {
	color: var(--text-2);
	font-size: 15px;
	line-height: 1.6;
	max-width: 46em;
	margin: 0 0 16px;
	text-shadow: none;
}

/* Subcategory doors: quiet outlined chips */
.catmenu a {
	padding: 6px 14px;
	border-radius: 999px;
	background: none;
	border: 1px solid var(--stroke-strong);
	color: var(--text-2);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin: 0 8px 8px 0;
	transition: color 0.22s var(--ease), border-color 0.22s var(--ease);
}

.catmenu a:hover {
	background: none;
	border-color: var(--vc-pink);
	color: var(--vc-pink);
}

/* === Category listing: uniform flat rows === */

.mwrap {
	display: block;
	margin: 0;
}

.mwrap .main-news {
	width: 100%;
	margin: 0;
	padding: 22px 0;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	box-shadow: none;
}

.mwrap .main-news:hover {
	transform: none;
	border-color: var(--stroke);
	box-shadow: none;
}

.mwrap .main-news:hover .main-news-title {
	color: var(--vc-pink);
}

.mwrap .main-news-fl {
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 24px;
}

.mwrap .main-news-l {
	flex: 0 0 280px;
	width: 280px;
	max-width: 280px;
}

.mwrap .main-news-image {
	aspect-ratio: 16 / 9;
	margin: 0;
}

.mwrap .main-news-r {
	width: auto;
	flex: 1 1 0;
	min-width: 0;
	max-width: 100%;
	display: flex;
	flex-direction: column;
}

.mwrap .main-news-date {
	margin: 0 0 6px;
	color: var(--text-3);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: none;
}

.mwrap .main-news-title {
	font-family: var(--font-body);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0;
	margin: 0 0 8px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Category badge: quiet outline, keeps the accent dot */
.main-news-ct a,
.full-news .main-news-ct a {
	height: auto;
	line-height: 1.5;
	padding: 3px 12px 3px 22px;
	background: none;
	border: 1px solid var(--stroke-strong);
	border-radius: 999px;
	color: var(--text-2) !important;
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.main-news-ct a:hover,
.full-news .main-news-ct a:hover {
	background: none;
	border-color: var(--vc-pink);
	color: var(--vc-pink) !important;
}

/* Keep the accent dot vertically centered in the quieter chip */
.main-news-ct a:after,
.full-news .main-news-ct a:after {
	left: 9px;
	top: 50%;
	transform: translateY(-50%);
}

.mwrap .main-news-ct {
	margin: 0 0 10px;
}

.mwrap .main-news-text {
	color: var(--text-2);
	font-size: 14px;
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Meta row: flat, quiet, pinned to the bottom of the row */
.mwrap .main-news .main-news-b {
	margin-top: auto;
	padding: 12px 0 0;
	background: none;
	border: 0;
	border-radius: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.mwrap .main-news-b-l {
	display: flex;
	align-items: center;
	gap: 16px;
}

/* Read more: plain text link like homepage header links */
.mwrap .main-news-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: auto;
	min-height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: none;
	color: #ff7fb3;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	line-height: 1.4;
}

.mwrap .main-news-link i {
	font-size: 15px;
	margin: 0;
}

.mwrap .main-news-link:hover {
	background: none;
	color: var(--vc-pink);
	text-shadow: none;
}

.mwrap .main-news-stb > div {
	margin: 0 12px 0 0;
	color: var(--text-3);
	font-size: 12px;
	font-weight: 500;
}

.mwrap .main-news-stb > div i {
	color: var(--vc-pink);
	font-size: 14px;
}

/* Like: heart + count, no pill. Redeclare the heart bg for both states so the
   earlier gradient hover above cannot swap it out. */
.main-news-like a,
.main-news-like a:hover {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' width='512' height='512' x='0' y='0' viewBox='0 0 512 512' style='enable-background:new 0 0 512 512' xml:space='preserve' class=''%3E%3Cg%3E%3Cpath fill='%23f9595f' d='M449.28 121.43a115.2 115.2 0 0 0-137.89-35.75c-21.18 9.14-40.07 24.55-55.39 45-15.32-20.5-34.21-35.91-55.39-45a115.2 115.2 0 0 0-137.89 35.75c-16.5 21.62-25.22 48.64-25.22 78.13 0 42.44 25.31 89 75.22 138.44 40.67 40.27 88.73 73.25 113.75 89.32a54.78 54.78 0 0 0 59.06 0c25-16.07 73.08-49.05 113.75-89.32 49.91-49.42 75.22-96 75.22-138.44 0-29.49-8.72-56.51-25.22-78.13z' opacity='1' data-original='%23f9595f' class=''%3E%3C/path%3E%3C/g%3E%3C/svg%3E") left center no-repeat;
	background-size: 15px auto;
	border: 0;
	box-shadow: none;
	padding: 0 0 0 22px;
	color: var(--text-3);
	font-size: 12px;
	font-weight: 600;
	line-height: 30px;
}

.main-news-like a:hover {
	color: var(--vc-pink);
}

/* === Pagination: quiet numbers, pink current === */

.navigation {
	margin: 26px 0 6px;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	justify-content: center;
	flex-wrap: wrap;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.navigation-center {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px 0;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.navigation-center a,
.navigation-center span {
	width: auto;
	flex: 0 0 auto;
	background: none;
	border: 1px solid var(--stroke);
	border-radius: var(--r-sm);
	color: var(--text-2);
	box-shadow: none;
}

.navigation-center a:hover {
	background: none;
	border-color: var(--vc-pink);
	color: var(--vc-pink);
	transform: none;
}

.navigation-center span {
	background: none;
	border-color: var(--vc-pink);
	color: var(--vc-pink);
	box-shadow: none;
}

/* === Sidebar: flat blocks, hairline rows, tick titles === */

.rblock,
.rblock2 {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
	margin: 0 0 36px;
}

.rblock-title {
	position: relative;
	font-family: var(--font-display);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--text-1);
	padding: 0 0 0 14px;
	margin: 0 0 6px;
}

.rblock-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 4px;
	height: 18px;
	border-radius: 3px;
	background: var(--grad-sunset);
}

.rblock-title::after {
	display: none;
}

.rnews {
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	display: flex;
	align-items: center;
	gap: 12px;
}

.rnews:last-child {
	border-bottom: 0;
}

.rnews:hover {
	background: none;
}

.rnews-image {
	flex: 0 0 84px;
	width: 84px;
	height: 54px;
	border-radius: var(--r-sm);
	box-shadow: none;
}

.rnews-image img {
	border-radius: var(--r-sm);
}

.rnews-title {
	width: auto;
	flex: 1 1 auto;
	min-width: 0;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.45;
	color: var(--text-2);
}

.rnews:hover .rnews-title {
	color: var(--vc-pink);
}

/* Sidebar comments */
.mcom {
	background: transparent;
	border-radius: 0;
	border-bottom: 1px solid var(--stroke);
	margin: 0;
	padding: 12px 0;
}

.mcom:last-child {
	border-bottom: 0;
}

.mcom:hover {
	background: none;
}

.mcom-image img {
	box-shadow: 0 0 0 1px var(--stroke-strong);
}

.rblock-comments .mcom-text {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* === Article page: unboxed === */

.full-news {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0 0 26px;
}

.full-news-ct {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--text-3);
	margin: 0 0 8px;
}

.full-news-ct a {
	color: var(--text-3);
}

.full-news-ct a:hover {
	color: var(--vc-pink);
}

.full-news-date {
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--text-3);
}

.full-news-date a {
	color: var(--text-2);
	font-weight: 600;
}

.full-news-date a:hover {
	color: var(--vc-pink);
}

.full-news-title h1 {
	margin: 12px 0 14px;
}

.full-news-dek {
	color: var(--text-1);
	max-width: 38em;
}

.full-news .main-news-ct {
	margin: 18px 0 0;
}

/* Hairline between article header and body — articles only.
   Static hubs reuse .full-news-text under h1.stt-block-title; a second
   line there left an empty strip under the title. */
.full-news .full-news-text {
	border-top: 1px solid var(--stroke);
	margin-top: 22px;
	padding-top: 24px;
}

.full-news-text img {
	box-shadow: none;
}

/* Article footer bar: hairline meta row */
.full-news + .main-news-b {
	background: none;
	border: 0;
	border-top: 1px solid var(--stroke);
	border-radius: 0;
	padding: 14px 0;
	margin: 0 0 30px;
}

/* === Comments: hairline list === */

.comments-wrap {
	margin: 0 0 44px;
}

.comments-wrap .title-block,
.related-news .title-block {
	margin: 0 0 18px;
}

.com-item {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	padding: 18px 0;
	margin: 0;
}

.com-item:hover {
	border-color: var(--stroke);
	box-shadow: none;
}

.com-item-image img {
	box-shadow: 0 0 0 1px var(--stroke-strong);
}

.comments-tree-list > li:last-child > .com-item {
	border-bottom: 0;
}

.comments-item-links-like a,
.comments-item-links-repl a {
	border: 0;
	padding: 0;
	height: auto;
	min-height: 32px;
	color: var(--text-3);
	font-weight: 500;
}

.comments-item-links-like a:hover,
.comments-item-links-repl a:hover {
	background: none;
	border: 0;
	color: var(--vc-pink);
}

/* === Related news: flat rows matching sidebar pattern === */

.related-news .mwrap2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 28px;
	margin-bottom: 0;
}

.relnews {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px 0;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--stroke);
	border-radius: 0;
	text-decoration: none;
}

.relnews:hover {
	border-color: var(--stroke);
	transform: none;
}

.relnews:hover .relnews-title {
	color: var(--vc-pink);
}

.relnews-image {
	flex: 0 0 112px;
	width: 112px;
	height: 72px;
	border-radius: var(--r-sm);
	overflow: hidden;
}

.relnews-title {
	color: var(--text-1);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	transition: color 0.22s var(--ease);
}

.relnews-cat {
	margin-top: 5px;
	color: var(--text-3);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.relnews-cat i {
	color: var(--vc-pink);
	margin-right: 5px;
}

/* === Inner pages on phones === */

@media (max-width: 700px) {
	/* Category rows become compact homepage-style rows */
	.mwrap .main-news {
		padding: 14px 0;
	}

	.mwrap .main-news-fl {
		display: grid;
		grid-template-columns: 118px 1fr;
		column-gap: 12px;
		align-items: start;
	}

	.mwrap .main-news-l {
		flex: none;
		width: auto;
		grid-row: 1 / 4;
		grid-column: 1;
	}

	.mwrap .main-news-image {
		aspect-ratio: 4 / 3;
	}

	.mwrap .main-news-image img {
		border-radius: var(--r-sm);
	}

	.mwrap .main-news-r {
		display: contents;
	}

	.mwrap .main-news-date {
		grid-column: 2;
		margin: 0 0 3px;
		font-size: 11px;
	}

	.mwrap .main-news-title {
		grid-column: 2;
		font-size: 14.5px;
		line-height: 1.32;
		margin: 0;
	}

	.mwrap .main-news-ct {
		grid-column: 2;
		margin: 6px 0 0;
	}

	.mwrap .main-news-ct,
	.mwrap .main-news-text,
	.mwrap .main-news .main-news-b {
		display: none;
	}

	.category-info-title {
		font-size: 19px;
		padding-left: 14px;
	}

	.category-info-title::before {
		width: 5px;
		height: 20px;
	}

	/* Article */
	.full-news {
		padding: 0;
	}

	.full-news-title h1 {
		font-size: 28px;
		margin: 10px 0 12px;
	}

	.full-news-dek {
		font-size: 21px;
	}

	.full-news .full-news-text {
		margin-top: 18px;
		padding-top: 18px;
	}

	.com-item {
		padding: 14px 0;
	}

	.related-news .mwrap2 {
		grid-template-columns: 1fr;
	}

	.relnews-image {
		flex-basis: 96px;
		width: 96px;
		height: 64px;
	}

	.navigation-center a,
	.navigation-center span {
		min-width: 42px;
		height: 42px;
		line-height: 40px;
	}
}

/* --------------------------------------------------------------------------
   Minimalist pass part 3 (2026-08-25): static hubs / forms
   Same canvas as the homepage and articles. Guides like pre-order used a
   boxed .stt-block; the title hairline plus .full-news-text left an empty
   strip under the heading.
   -------------------------------------------------------------------------- */

.stt-block,
.s-block {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	padding: 0;
}

.stt-block-title,
.s-block-title,
h1.stt-block-title {
	position: relative;
	font-family: var(--font-display);
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--text-1);
	line-height: 1.25;
	background: none;
	border: 0;
	margin: 0 0 18px;
	padding: 0 0 0 18px;
}

.stt-block-title::before,
.s-block-title::before,
h1.stt-block-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 26px;
	border-radius: 4px;
	background: var(--grad-sunset);
}

.stt-block-content,
.stt-block .full-news-text,
.s-block-content {
	padding: 0;
}

@media (max-width: 650px) {
	.stt-block-title,
	.s-block-title,
	h1.stt-block-title {
		font-size: 19px;
		padding-left: 14px;
		margin-bottom: 14px;
	}

	.stt-block-title::before,
	.s-block-title::before,
	h1.stt-block-title::before {
		width: 5px;
		height: 20px;
	}

	.stt-block-content,
	.stt-block .full-news-text,
	.s-block-content {
		padding: 0;
	}

	.mfl-l .gtawrap {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		margin: 0 0 20px;
	}

	.mfl-l .gta-game {
		width: auto;
		max-width: none;
		margin: 0;
		aspect-ratio: 3 / 4;
	}

	.mfl-l .trailer-item {
		padding-bottom: 18px;
	}

	.mfl-l .gta-factstrip {
		gap: 14px;
	}

	.mfl-l .gta-preorder-cardtop {
		flex-wrap: wrap;
	}
}

/* --------------------------------------------------------------------------
   Article type scale (Newsreader prose + Oswald display)
   Body 20px — newspaper text, not a lock to 18. size-adjust 110% on the
   face only lifts the short x-height. Headings stay Oswald.
   h1 40 / dek 23 / h2 26 / h3 22 / h4 18 / body 20. Phone keeps 20px body.
   -------------------------------------------------------------------------- */

.full-news-title h1 {
	font-size: 40px;
	line-height: 1.14;
	margin: 10px 0 12px;
	max-width: 18em;
}

.full-news-text,
.stt-block .full-news-text {
	font-size: var(--article-size);
	line-height: var(--article-leading);
}

.full-news-dek,
.full-news-dek p,
.full-news-text p,
.full-news-text li,
.full-news-text blockquote,
.full-news-text .quote,
.stt-block .full-news-text p,
.stt-block .full-news-text li,
.stt-block .full-news-text blockquote,
.stt-block .full-news-text .quote {
	font-family: var(--font-article);
	font-optical-sizing: auto;
	font-weight: 400;
	font-size: var(--article-size);
	line-height: var(--article-leading);
	letter-spacing: 0.01em;
	max-width: var(--article-measure);
	color: var(--article-ink);
}

.full-news-dek,
.full-news-dek p {
	font-size: var(--article-dek);
	line-height: 1.4;
	font-weight: 400;
	letter-spacing: 0;
	margin-bottom: 0.55em;
	color: var(--text-1);
	max-width: 32em;
}

.full-news-text h2,
.stt-block .full-news-text h2 {
	font-size: 26px;
	line-height: 1.22;
}

.full-news-text h3,
.stt-block .full-news-text h3 {
	font-size: 22px;
	line-height: 1.28;
}

.full-news-text h4,
.stt-block .full-news-text h4 {
	font-size: 18px;
	line-height: 1.35;
}

.full-news-text blockquote,
.full-news-text .quote,
.stt-block .full-news-text blockquote,
.stt-block .full-news-text .quote {
	font-style: italic;
	font-size: var(--article-size);
	line-height: 1.6;
	letter-spacing: 0;
}

.full-news-text table,
.full-news-text th,
.full-news-text td,
.full-news-text figcaption,
.full-news-text .image-credit,
.full-news-text .gta-factstrip,
.full-news-text .gta-factstrip p,
.full-news-text .gta-cev,
.full-news-text .gta-cev p,
.full-news-text .gta-status-chip,
.full-news-text table p,
.stt-block table,
.stt-block th,
.stt-block td,
.stt-block figcaption {
	font-family: var(--font-body);
}

.full-news-text table,
.full-news-text th,
.full-news-text td,
.full-news-text .gta-factstrip p,
.full-news-text .gta-cev p,
.full-news-text .gta-status-chip,
.full-news-text table p {
	font-size: 14px;
	line-height: 1.5;
	max-width: none;
	font-weight: 400;
	letter-spacing: 0;
}

@media (max-width: 1100px) {
	.full-news-title h1 {
		font-size: 34px;
	}
}

@media (max-width: 700px) {
	.full-news-title h1 {
		font-size: 28px;
		line-height: 1.18;
	}

	.full-news-dek,
	.full-news-dek p {
		font-size: 21px;
		line-height: 1.4;
	}

	.full-news-text h2,
	.stt-block .full-news-text h2 {
		font-size: 22px;
	}

	.full-news-text h3,
	.stt-block .full-news-text h3 {
		font-size: 19px;
	}

	.full-news-text figure.article-inline-image {
		float: none;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.full-news-text figure.article-inline-image img,
	.full-news-text .article-inline-img {
		float: none;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
		height: auto;
		max-height: 60vh;
		object-fit: contain;
	}

	.full-news-text figure.article-inline-image figcaption {
		max-width: 100%;
		text-align: center;
	}
}

@media (max-width: 650px) {
	.full-news-text,
	.stt-block .full-news-text,
	.full-news-text p,
	.full-news-text li,
	.full-news-text blockquote,
	.stt-block .full-news-text p,
	.stt-block .full-news-text li,
	.stt-block .full-news-text blockquote {
		font-size: var(--article-size);
		line-height: 1.68;
	}

	.full-news-title h1 {
		font-size: 28px;
	}

	.full-news-dek,
	.full-news-dek p {
		font-size: 20px;
		line-height: 1.38;
	}
}

/* --------------------------------------------------------------------------
   Homepage hero LIVE pill — only when the lead card is the EL live post (id 129)
   -------------------------------------------------------------------------- */

.hslider-live-pill {
	display: none;
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 5;
	align-items: center;
	gap: 8px;
	padding: 8px 14px 8px 12px;
	border-radius: 999px;
	background: #ec148c;
	color: #fff;
	border: 2px solid #121319;
	font-family: var(--font-display), Oswald, Inter, system-ui, sans-serif;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.16em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 2px 0 #121319, 0 10px 24px rgba(18, 19, 25, 0.55);
	pointer-events: none;
}

.hslider-live-pill::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
	animation: hslider-live-pulse 1.4s ease-out infinite;
}

/* LIVE pill retired after Extended Look aired 27 Aug 2026 (was id 129). */
.hslider-news[data-news-id="129"] .hslider-live-pill,
.hslider-news:has(a[href*="gta-6-extended-look-live-netflix-youtube-27-aug-2026"]) .hslider-live-pill {
	display: none /* retired after EL aired 27 Aug */;
}

.gta-live-kicker {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin: 0 0 16px;
	font-family: var(--font-display), Oswald, Inter, system-ui, sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #fff;
}

.gta-live-kicker strong {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	border-radius: 999px;
	background: #ec148c;
	color: #fff;
	border: 2px solid #121319;
	letter-spacing: 0.16em;
	font-weight: 600;
}

@keyframes hslider-live-pulse {
	0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7); }
	70% { box-shadow: 0 0 0 8px rgba(255, 255, 255, 0); }
	100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); }
}

@media (max-width: 700px) {
	.hslider-live-pill {
		top: 12px;
		left: 12px;
		font-size: 13px;
		padding: 7px 12px 7px 10px;
		letter-spacing: 0.14em;
		gap: 7px;
	}
	.hslider-live-pill::before {
		width: 7px;
		height: 7px;
	}
	.gta-live-kicker {
		font-size: 13px;
		gap: 8px;
	}
}

/* --------------------------------------------------------------------------
   Vice City polish pass (2026-09-03)
   Clearer scan paths, calmer chrome, stronger card hierarchy — same tokens.
   Loaded last so it overrides earlier passes without touching style.css.
   -------------------------------------------------------------------------- */

/* --- Global contrast & overflow --- */

html {
	overflow-x: clip;
	/* iPad Safari default text-size-adjust:auto resizes text per page from
	   content heuristics — dense category pages (/news/) get tinier nav/logo-r
	   /Sign Up than sparse ones (/official-news/) while img logo height stays.
	   Lock to 100% so chrome scale matches across routes. */
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	color: var(--text-2);
	overflow-x: clip;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.top-menu-link i {
	color: var(--vc-pink) !important;
}

/* --- Header: compact bar, no legacy 250px steal --- */

.head-line {
	margin: 0 0 32px 0;
}

.not-main .head-line {
	margin: 0 0 28px 0;
}

/* Compact desktop nav only. Ungated, these rules stole the hamburger
   gutter (padding: 0 16px), clipped Search/Login on phones (min-width: 0
   + overflow-x: clip), and turned the cloned drawer into a nowrap row. */
@media (min-width: 1321px) {
	.main-wrap,
	.footer,
	.search-block {
		width: 100%;
		max-width: var(--wrap);
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
	}

	.head-line-w {
		width: 100%;
		max-width: var(--wrap);
		margin: 0 auto;
		padding: 0 16px;
		gap: 10px;
		box-sizing: border-box;
		min-width: 0;
	}

	.head-r {
		flex-shrink: 0;
		gap: 6px;
	}

	.logo {
		flex-shrink: 0;
	}

	.head-line .top-menu {
		display: flex;
		flex: 1 1 auto;
		min-width: 0;
		margin: 0 6px;
		padding: 0;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		gap: 0;
	}

	.head-line .top-menu > li {
		display: block;
		height: auto;
		padding: 0;
		margin: 0;
		overflow: visible;
		flex-shrink: 1;
		min-width: 0;
	}

	.head-line .top-menu-link {
		height: 36px;
		line-height: 36px;
		padding: 0 11px;
		font-size: 14px;
		font-weight: 500;
		white-space: nowrap;
		border: 0;
		border-radius: 999px;
	}

	.head-line .top-menu-link:hover {
		border: 0;
		background: rgba(255, 255, 255, 0.06);
	}

	.head-line .top-menu-link.is-active {
		color: var(--text-1);
		font-weight: 600;
	}

	.head-line .top-menu-link.is-active::after {
		transform: scaleX(1);
	}
}

@media (min-width: 1321px) and (max-width: 1480px) {
	:root {
		--header-h: 88px;
	}

	.head-line-w {
		padding: 0 12px;
		gap: 8px;
	}

	.logo > img {
		width: 52px;
		margin-right: 8px;
	}

	.logo-r,
	.logo-r span {
		font-size: 17px;
		line-height: 16px;
	}

	.head-line .top-menu-link {
		padding: 0 8px;
		font-size: 13px;
	}

	.head-login {
		padding: 8px 12px;
	}

	.head-reg {
		padding: 0 18px;
	}
}

@media (max-width: 1320px) {
	.head-line-w {
		width: auto;
		max-width: none;
		padding: 0 10px 0 60px;
		box-sizing: border-box;
	}

	.head-line .top-menu {
		display: none;
	}

	.head-r {
		flex-shrink: 0;
		min-width: auto;
	}

	.mob-panel .top-menu {
		display: block;
		flex: none;
		margin: 0;
		padding: 0;
	}

	.mob-panel .top-menu > li {
		display: block;
		height: auto;
		margin: 0;
		padding: 0;
		flex: none;
		min-width: 0;
		overflow: visible;
	}

	.mob-panel .top-menu-link {
		height: auto;
		line-height: 1.25;
		white-space: normal;
		border-radius: 0;
	}
}

@media (max-width: 700px) {
	.head-line-w {
		padding-left: 48px;
		padding-right: 8px;
	}
}

/* Desktop: static header (sticky only on phones — calmer long reads) */
@media (min-width: 701px) {
	.head-line {
		position: relative;
		top: auto;
	}
}

/* --- Logo motion: subtle, not gimmicky --- */

.logo > img {
	transition: transform 0.25s var(--ease), filter 0.25s var(--ease);
}

.logo:hover > img {
	transform: scale(1.03);
	filter: none;
}

@media (prefers-reduced-motion: reduce) {
	.logo > img,
	.logo:hover > img {
		transform: none;
	}

	.gtnews2:hover,
	.main-news:hover,
	.gtnews:hover,
	.gta-rumor:hover,
	.gta-disc:hover,
	.gta-game:hover,
	.gtnews2:hover .gtnews2-image img,
	.main-news:hover .main-news-image img,
	.gtnews:hover .gtnews-image img,
	.gta-rumor:hover .gta-rumor-image img,
	.gta-disc:hover .gta-disc-image img,
	.hslider-news:hover .hslider-news-image img,
	.gta-know-door:hover img,
	.gta-game:hover img {
		transform: none;
	}
}

/* --- Launch strip: scannable rows --- */

.gta-launch-strip {
	align-items: stretch;
	gap: 18px 22px;
	padding: 16px 20px;
	background: var(--bg-1);
	border-color: var(--stroke);
	box-shadow: none;
}

.gta-launch-strip::before {
	display: block;
	opacity: 0.9;
}

.gta-launch-kicker {
	color: var(--text-3);
	font-size: 10px;
	margin-bottom: 4px;
}

.gta-launch-date {
	font-size: 17px;
	color: var(--text-1);
}

.gta-launch-next {
	display: block;
	margin-top: 5px;
	font-size: 13.5px;
	line-height: 1.45;
	color: var(--text-3);
}

.gta-launch-next a {
	color: var(--text-2);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: rgba(255, 46, 136, 0.35);
	text-underline-offset: 0.14em;
}

.gta-launch-next a:hover {
	color: var(--vc-pink);
	text-decoration-color: var(--vc-pink);
}

.gta-launch-links {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 8px;
	align-items: center;
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.3;
}

.gta-launch-links span[aria-hidden] {
	display: none;
}

.gta-launch-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 0 11px;
	border-radius: 999px;
	border: 1px solid var(--stroke-strong);
	background: rgba(255, 255, 255, 0.03);
	color: var(--text-2);
	font-weight: 500;
	font-size: 12px;
	white-space: nowrap;
	transition: color 0.22s var(--ease), border-color 0.22s var(--ease), background 0.22s var(--ease);
}

.gta-launch-links a:hover {
	color: var(--vc-pink);
	border-color: rgba(255, 46, 136, 0.45);
	background: rgba(255, 46, 136, 0.08);
}

.gta-launch-num {
	/* `background` shorthand resets background-clip to border-box and paints
	   the gradient as a slab over transparent glyphs. Keep clip on the text. */
	background-image: var(--grad-text);
	background-color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.gta-launch-unit {
	color: var(--text-3);
}

.gta-launch-el {
	align-self: center;
	padding: 4px 0 4px 18px;
}

@media (min-width: 901px) and (max-width: 1180px) {
	.gta-launch-strip {
		flex-wrap: wrap;
	}

	.gta-launch-el {
		margin-left: 0;
		width: 100%;
		padding: 12px 0 0;
		border-left: 0;
		border-top: 1px solid var(--stroke);
	}
}

/* --- News cards: title hierarchy, quiet meta, consistent crop --- */

.gtnews2-image,
.main-news-image,
.gtnews-image {
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: var(--bg-3);
	border-radius: var(--r-md);
}

.gtnews2-image img,
.main-news-image img,
.gtnews-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	border-radius: var(--r-md);
	transition: transform 0.45s var(--ease), opacity 0.22s var(--ease);
}

.gtnews2-image img[src*="gta-default"],
.main-news-image img[src*="gta-default"],
.gtnews-image img[src*="gta-default"] {
	object-fit: contain;
	object-position: center;
	opacity: 0.5;
	padding: 14px;
	box-sizing: border-box;
	background: linear-gradient(145deg, var(--bg-3), var(--bg-2));
}

.gta-latest-grid .gtnews2-date,
.gtnews-date,
.main-news-date {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--text-3);
	margin-bottom: 6px;
}

.gta-latest-grid .gtnews2-title,
.gtnews2-title {
	font-family: var(--font-display);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.32;
	letter-spacing: 0.02em;
	color: var(--text-1) !important;
}

.gta-latest-grid .gtnews2:hover .gtnews2-title,
.gtnews2-title:hover {
	color: var(--vc-pink) !important;
}

.gtnews2:hover {
	border-color: rgba(255, 46, 136, 0.28);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.28);
	transform: translateY(-2px);
}

/* Homepage latest cards stay flat: lift + image scale together jitter. */
.gta-latest-grid .gtnews2:hover {
	border: 0;
	box-shadow: none;
	transform: none;
}

.gta-latest-grid .gtnews2:hover .gtnews2-image img,
.main-news:hover .main-news-image img,
.gtnews:hover .gtnews-image img {
	transform: scale(1.04);
}

.mwrap .main-news-title {
	font-family: var(--font-display);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.02em;
}

.mwrap .main-news-date {
	font-size: 11px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.main-news-stb > div {
	color: var(--text-3);
	font-size: 11px;
}

.main-news-stb > div i {
	color: var(--text-3);
	opacity: 0.85;
}

/* --- Article: reading comfort, quieter sidebar blocks --- */

.full-news-text,
.full-news .full-news-text {
	font-family: var(--font-article);
	font-size: var(--article-size);
	line-height: var(--article-leading);
	color: var(--article-ink);
	max-width: var(--article-measure);
}

.full-news-dek {
	font-family: var(--font-body);
	font-size: var(--article-dek);
	line-height: 1.45;
	color: var(--text-2);
}

.comments-wrap .title-block {
	font-size: 16px;
	color: var(--text-2);
}

.related-news {
	margin-top: 4px;
	padding-top: 8px;
	border-top: 1px solid var(--stroke);
}

.related-news .title-block {
	font-size: 15px;
	color: var(--text-2);
}

.relnews-title {
	font-family: var(--font-body);
	font-size: 13.5px;
	font-weight: 600;
	color: var(--text-2);
}

.relnews-cat {
	color: var(--text-3);
	font-size: 11px;
}

.com-item-name,
.com-item-text {
	color: var(--text-2);
}

.com-item-date {
	color: var(--text-3);
}

/* --- Search overlay contrast --- */

.search-block .form-text::placeholder {
	color: var(--text-3);
	opacity: 1;
}

#searchsuggestions a {
	color: var(--text-2);
}

/* --- Mobile ≤700px: no horizontal scroll, tap targets --- */

@media (max-width: 700px) {
	html,
	body {
		overflow-x: hidden;
		max-width: 100%;
	}

	.head-line {
		margin-bottom: 16px;
	}

	.gta-launch-strip {
		padding: 14px 14px 12px 16px;
		gap: 12px;
	}

	.gta-launch-links {
		gap: 8px;
	}

	.gta-launch-links a {
		min-height: 44px;
		padding: 0 14px;
		font-size: 12px;
	}

	.gta-launch-next {
		font-size: 13px;
		line-height: 1.5;
	}

	.gta-latest-grid .gtnews2-title,
	.gta-rumor-title {
		font-size: 14.5px;
	}

	.mwrap .main-news-title {
		font-size: 16.5px;
	}

	.full-news-title h1 {
		font-size: 26px;
		line-height: 1.18;
	}

	.full-news-text,
	.full-news .full-news-text {
		font-size: 18px;
		max-width: 100%;
	}

	.main-wrap {
		padding-left: 16px;
		padding-right: 16px;
		box-sizing: border-box;
	}
}

/* Heading tags inside cards keep the existing title styles */
.title-block h1,
.title-block h2,
.hslider-news-title p,
.gtnews2-title h3,
.gtnews-title h3,
.main-news-title h2,
.gta-rumor-title,
.gta-disc-title,
.relnews-title {
	margin: 0;
	padding: 0;
	font: inherit;
	font-size: inherit;
	font-weight: inherit;
	font-family: inherit;
	color: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	line-height: inherit;
}

.gta-rumor-title,
.gta-disc-title,
.relnews-title {
	display: block;
}

/* --------------------------------------------------------------------------
   Layout repair (2026-09-06)
   Sticky phone header, hamburger close, inner-page widgets, phone chrome.
   -------------------------------------------------------------------------- */

/* overflow-x: clip on html/body computes overflow-y to auto and traps
   position:sticky inside a document-tall box. Clip inner shells instead. */
html,
body {
	overflow-x: visible;
	overflow-y: visible;
}

.main-wrap,
.footer {
	overflow-x: clip;
}

@media (max-width: 700px) {
	html,
	body {
		overflow-x: visible;
		max-width: 100%;
	}
}

.hslider-news-title {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.hslider-news-info {
	flex-wrap: wrap;
}

.gta-status-chip {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 6px 8px;
}

.gta-status-chip span {
	margin: 0;
}

.login-wrap {
	width: min(300px, calc(100vw - 16px));
	max-width: calc(100vw - 16px);
}

.rblock-comments:not(:has(.mcom))::after {
	content: "No comments yet. Open a story and start the thread.";
	display: block;
	color: var(--text-3);
	font-size: 14px;
	line-height: 1.5;
}

.gta-discussed:not(:has(.gta-disc)) {
	display: none;
}

.full-news-dek img {
	display: none;
}

@media (max-width: 1320px) {
	.mob-panel {
		position: fixed;
	}

	.mob-close {
		position: absolute;
		left: auto;
		right: 8px;
		top: 8px;
		width: 36px;
		height: 36px;
		display: block;
		border: 0;
		padding: 0;
		appearance: none;
		-webkit-appearance: none;
		background-color: transparent;
		z-index: 2;
	}

	.mob-panel2 {
		padding-top: 48px;
	}

	.mob-panel .top-menu-link.is-active {
		color: var(--vc-pink);
		background: rgba(255, 46, 136, 0.07);
	}
}

@media (max-width: 700px) {
	.head-login span {
		display: none;
	}

	.head-reg {
		display: none;
	}

	.login-wrap {
		right: 8px;
	}

	.hslider-news-title {
		-webkit-line-clamp: 2;
	}
}

@media (max-width: 600px) {
	#searchsuggestions {
		width: min(560px, calc(100vw - 24px)) !important;
	}
}

/* --------------------------------------------------------------------------
   Card stills: zoom the picture, never lift the card.
   translateY on the card + scale on the img jitter at 16/9 subpixel heights.
   -------------------------------------------------------------------------- */

.gtnews2-image,
.main-news-image,
.gtnews-image,
.gta-rumor-image,
.gta-disc-image,
.gta-know-door,
.gta-game,
.hslider-news-image {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
}

.gtnews2-image img,
.main-news-image img,
.gtnews-image img,
.gta-rumor-image img,
.gta-disc-image img,
.gta-know-door img,
.gta-game img,
.hslider-news-image img {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transform-origin: center center;
	pointer-events: none;
	transition: transform 0.45s var(--ease);
}

.gta-latest-grid .gtnews2-image img,
.gtnews2-image img,
.main-news-image img,
.gtnews-image img,
.gta-rumor-image img,
.gta-disc-image img,
.gta-know-door img,
.gta-game img {
	border-radius: 0;
}

.gta-latest-grid .gtnews2:hover .gtnews2-image img,
.gta-rumor:hover .gta-rumor-image img,
.gta-disc:hover .gta-disc-image img,
.gta-know-door:hover img,
.gta-game:hover img,
.hslider-news:hover .hslider-news-image img,
.main-news:hover .main-news-image img,
.gtnews:hover .gtnews-image img {
	transform: scale(1.04);
}
