/* Vice platform gateway: maintenance, account login and 2FA. */
body.vice-gateway-page { overflow-x: clip; }
body.vice-gateway-page .vc-home-masthead { height: 86px !important; min-height: 86px !important; }
body.vice-gateway-page .vc-hero-profile-slot { display: none !important; }
body.vice-gateway-page #header.vc-home-hero { display: none !important; }
body.vice-white-2026.vice-gateway-page #content_section,
body.vice-white-2026.vice-gateway-page #main_content_section {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
body.vice-gateway-page #main_content_section > .navigate_section { display: none !important; }

#vice-gateway,
#vice-gateway *,
#vice-gateway *::before,
#vice-gateway *::after { box-sizing: border-box; }
#vice-gateway {
	--vg-pink: #ec4899;
	--vg-amber: #fbbf24;
	--vg-green: #56c98e;
	font-family: Manrope, system-ui, sans-serif;
	font-size: 15px;
	line-height: 1.5;
	color: #fff;
	background: #08090d;
	text-align: left;
}
#vice-gateway h1,
#vice-gateway h2,
#vice-gateway p { margin: 0; }
#vice-gateway button { font-family: inherit; }
#vice-gateway .vice-gateway__intro {
	min-height: 170px;
	padding: 32px max(34px, calc((100vw - 1480px) / 2));
	background: #0d1019;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#vice-gateway .vice-gateway__eyebrow {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0;
	color: #b7c5d5;
	text-transform: uppercase;
}
#vice-gateway .vice-gateway__eyebrow span { color: var(--vg-pink); padding: 0 5px; }
#vice-gateway .vice-gateway__intro h1 {
	margin-top: 8px;
	font-family: "Big Shoulders Display", Impact, sans-serif !important;
	font-size: 50px;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	color: #fff !important;
}
#vice-gateway .vice-gateway__intro > p:last-child { margin-top: 12px; color: #c7cfdb; max-width: 650px; }
#vice-gateway .vice-gateway__worlds {
	display: grid;
	grid-template-columns: 1.2fr 1fr .8fr;
	min-height: 500px;
}
#vice-gateway .vice-gateway__world {
	position: relative;
	min-width: 0;
	min-height: 500px;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #11131d !important;
	color: #fff !important;
	text-align: left !important;
	box-shadow: none !important;
	overflow: hidden;
	cursor: pointer;
}
#vice-gateway .vice-gateway__world:not(:first-child) { border-left: 1px solid rgba(255,255,255,.16) !important; }
#vice-gateway .vice-gateway__world img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s ease;
}
#vice-gateway .vice-gateway__world::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(8,9,14,.05) 5%, rgba(8,9,14,.6) 48%, rgba(8,9,14,.95) 100%);
	transition: background-color .25s ease;
}
#vice-gateway .vice-gateway__world--samp::after { background-color: rgba(88,19,92,.22); }
#vice-gateway .vice-gateway__world--gta5::after { background-color: rgba(23,70,35,.25); }
#vice-gateway .vice-gateway__world--gta6::after { background-color: rgba(35,38,52,.33); }
#vice-gateway .vice-gateway__world:hover img,
#vice-gateway .vice-gateway__world:focus-visible img { transform: scale(1.04); }
#vice-gateway .vice-gateway__world:focus-visible { outline: 3px solid #fff !important; outline-offset: -3px; z-index: 1; }
#vice-gateway .vice-gateway__world-content {
	position: absolute;
	z-index: 1;
	left: 36px;
	right: 26px;
	bottom: 38px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
#vice-gateway .vice-gateway__world-content small { color: #e1e1e8; font-size: 11px; font-weight: 800; }
#vice-gateway .vice-gateway__world-content strong {
	margin-top: 10px;
	font-family: Yellowtail, cursive;
	font-size: 62px;
	font-weight: 400;
	line-height: 1.1;
	color: #fff;
	text-shadow: 0 0 18px rgba(236,72,153,.75);
}
#vice-gateway .vice-gateway__world--gta5 strong { text-shadow: 0 0 18px rgba(251,191,36,.75); }
#vice-gateway .vice-gateway__world--gta6 strong { text-shadow: 0 0 14px rgba(195,206,222,.5); }
#vice-gateway .vice-gateway__world-content > span { color: #e5e9ed; font-size: 14px; }
#vice-gateway .vice-gateway__world-content em {
	margin-top: 24px;
	min-width: 145px;
	padding: 12px 16px;
	border: 1px solid rgba(255,255,255,.38);
	border-radius: 4px;
	background: rgba(8,9,14,.5);
	color: #fff;
	font-size: 13px;
	font-style: normal;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
#vice-gateway .vice-gateway__world:hover em,
#vice-gateway .vice-gateway__world:focus-visible em { background: #fff; color: #10141d; }

#vice-gateway .vice-gateway__auth {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr);
	min-height: 560px;
	background: #111722;
}
#vice-gateway .vice-gateway__auth-scene {
	min-height: 560px;
	background: linear-gradient(90deg, rgba(7,9,14,.2), rgba(7,9,14,.55)), url('../images/vice/backgrounds/vice-beach.webp') center / cover no-repeat;
}
#vice-gateway[data-world="gta5"] .vice-gateway__auth-scene { background-image: linear-gradient(90deg, rgba(7,9,14,.2), rgba(7,9,14,.55)), url('../images/vice/backgrounds/mulholland.webp'); }
#vice-gateway[data-world="gta6"] .vice-gateway__auth-scene { background-image: linear-gradient(90deg, rgba(7,9,14,.2), rgba(7,9,14,.55)), url('../images/vice/backgrounds/downtown.webp'); }
#vice-gateway .vice-gateway__auth-content {
	width: 100%;
	max-width: 500px;
	margin: auto;
	padding: 38px 42px;
}
#vice-gateway .vice-gateway__back,
#vice-gateway .vice-gateway__text-button {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #a9c7ea !important;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}
#vice-gateway .vice-gateway__back { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 42px; }
#vice-gateway .vice-gateway__back,
#vice-gateway .vice-gateway__text-button { min-height: 44px; min-width: 44px; }
#vice-gateway button:focus-visible { outline: 2px solid #7ab6f2; outline-offset: 3px; }
#vice-gateway .vice-gateway__back:hover,
#vice-gateway .vice-gateway__text-button:hover { color: #fff !important; text-decoration: underline; }
#vice-gateway .vice-gateway__auth-content h1,
#vice-gateway .vice-gateway__auth-content h2 {
	margin-top: 8px;
	font-family: "Big Shoulders Display", Impact, sans-serif !important;
	font-size: 48px;
	font-weight: 800;
	line-height: 1;
	text-transform: uppercase;
	color: #fff !important;
}
#vice-gateway .vice-gateway__auth-lead { margin-top: 12px; color: #b4c1d1; }
#vice-gateway .vice-gateway__form { display: flex; flex-direction: column; margin-top: 30px; }
#vice-gateway .vice-gateway__form label { margin: 0 0 7px; color: #e9edf3; font-size: 13px; font-weight: 700; }
body.vice-white-2026.vice-gateway-page #main_content_section #vice-gateway :is(#frmLogin, #frmTfa) input:not([type="hidden"]):not([type="checkbox"]),
body.vice-white-2026.vice-gateway-page #main_content_section #vice-gateway :is(#frmLogin, #frmTfa) select {
	width: 100% !important;
	height: 46px !important;
	min-height: 46px !important;
	margin: 0 0 18px !important;
	padding: 10px 13px !important;
	border: 1px solid #405064 !important;
	border-radius: 4px !important;
	background: #0b111b !important;
	color: #f5f7fa !important;
	font: 16px Manrope, system-ui, sans-serif !important;
	box-shadow: none !important;
}
body.vice-white-2026.vice-gateway-page #main_content_section #vice-gateway :is(#frmLogin, #frmTfa) input:focus-visible,
body.vice-white-2026.vice-gateway-page #main_content_section #vice-gateway :is(#frmLogin, #frmTfa) select:focus-visible { outline: 2px solid #7ab6f2 !important; outline-offset: 2px; }
#vice-gateway .vice-gateway__form .vice-gateway__check { display: flex; align-items: center; gap: 9px; margin-bottom: 18px; }
#vice-gateway .vice-gateway__submit {
	width: 100%;
	min-height: 48px;
	padding: 11px 18px !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: #1975ca !important;
	color: #fff !important;
	box-shadow: none !important;
	font-size: 14px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
}
#vice-gateway .vice-gateway__submit:hover { background: #258ae9 !important; }
#vice-gateway .vice-gateway__links { display: flex; justify-content: space-between; gap: 16px; margin-top: 18px; }
#vice-gateway .vice-gateway__links a { color: #a9c7ea !important; font-size: 13px; text-decoration: none; }
#vice-gateway .vice-gateway__links a:hover { color: #fff !important; text-decoration: underline; }
#vice-gateway .vice-gateway__error,
#vice-gateway .vice-gateway__notice { margin-top: 18px; padding: 12px 14px; border-left: 3px solid #f87171; background: rgba(248,113,113,.12); color: #ffd9d9; font-size: 13px; }
#vice-gateway .vice-gateway__notice { border-color: #71b7e7; background: rgba(113,183,231,.12); color: #d8eeff; }
#vice-gateway .vice-gateway__notice p + p { margin-top: 8px; }
#vice-gateway .vice-gateway__notice a { color: #b9ddff; text-decoration: underline; }
#vice-gateway.vice-gateway--enhanced[data-step="worlds"] .vice-gateway__auth { display: none; }
#vice-gateway.vice-gateway--enhanced[data-step="login"] .vice-gateway__worlds { display: none; }
#vice-gateway.vice-gateway--tfa .vice-gateway__auth { min-height: 580px; }
#vice-gateway.vice-gateway--tfa .vice-gateway__text-button { margin-top: 18px; }
#vice-gateway .vice-gateway__countdown {
	margin-top: 28px;
	font-family: "Big Shoulders Display", Impact, sans-serif;
	font-size: 64px;
	font-weight: 800;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	color: #fff;
}
#vice-gateway .vice-gateway__retry {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 18px;
	color: #a9c7ea !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}
#vice-gateway .vice-gateway__retry:hover { color: #fff !important; text-decoration: underline; }
#vice-gateway [hidden] { display: none !important; }

@media (max-width: 860px) {
	#vice-gateway .vice-gateway__intro { min-height: 145px; padding: 28px 22px; }
	#vice-gateway .vice-gateway__intro h1 { font-size: 40px; }
	#vice-gateway .vice-gateway__worlds { grid-template-columns: 1fr; min-height: 0; }
	#vice-gateway .vice-gateway__world { min-height: 185px; }
	#vice-gateway .vice-gateway__world:not(:first-child) { border-left: 0 !important; border-top: 1px solid rgba(255,255,255,.16) !important; }
	#vice-gateway .vice-gateway__world-content { left: 24px; right: 20px; bottom: 18px; }
	#vice-gateway .vice-gateway__world-content strong { font-size: 42px; margin-top: 2px; }
	#vice-gateway .vice-gateway__world-content em { position: absolute; right: 0; bottom: 4px; min-width: 0; margin: 0; }
	#vice-gateway .vice-gateway__auth { display: block; }
	#vice-gateway .vice-gateway__auth-scene { min-height: 160px; }
	#vice-gateway .vice-gateway__auth-content { max-width: 560px; padding: 30px 24px 48px; }
	#vice-gateway .vice-gateway__back { margin-bottom: 32px; }
}
@media (max-width: 520px) {
	#vice-gateway .vice-gateway__intro h1 { font-size: 34px; }
	#vice-gateway .vice-gateway__world { min-height: 175px; }
	#vice-gateway .vice-gateway__world-content > span { font-size: 12px; }
	#vice-gateway .vice-gateway__world-content em { padding: 10px; font-size: 0; }
	#vice-gateway .vice-gateway__world-content em i { font-size: 14px; }
	#vice-gateway .vice-gateway__auth-content h1,
	#vice-gateway .vice-gateway__auth-content h2 { font-size: 39px; }
}
@media (prefers-reduced-motion: reduce) {
	#vice-gateway .vice-gateway__world img { transition: none; }
}


/* Keep shared inner-shell rules from turning the account gateway into a second hero. */
html:has(> body.vice-gateway-page) { background: #0c1019 !important; color-scheme: dark; }
html:has(> body.vice-gateway-page) body.vice-white-2026.vice-gateway-page { background: #0c1019 !important; }
html body.vice-white-2026.vice-gateway-page #myFooter.vc-site-footer { margin-top: 0 !important; }
html body.vice-white-2026.vice-gateway-page .vc-home-masthead {
	height: auto !important; min-height: 96px !important; padding: 18px 0 !important;
	margin: 0 !important; background: #0c1019 !important; border: 0 !important; overflow: visible !important;
}
html body.vice-white-2026.vice-gateway-page .vc-home-masthead::before,
html body.vice-white-2026.vice-gateway-page .vc-home-masthead::after,
html body.vice-white-2026.vice-gateway-page .vc-home-masthead #header.vc-home-hero { display: none !important; }
html body.vice-white-2026.vice-gateway-page .vc-home-masthead > .vc-home-navbar {
	position: relative !important; top: auto !important; left: auto !important; right: auto !important;
	transform: none !important; margin: 0 auto !important;
}
html body.vice-white-2026.vice-gateway-page #vice-gateway {
	padding: 0 max(24px, calc((100% - 1440px) / 2)) 48px;
	background: radial-gradient(ellipse at 12% 0%, rgba(135, 53, 104, .12), transparent 48%), #0c1019;
}
#vice-gateway .vice-gateway__intro { min-height: 178px; padding: 26px 0 34px; background: transparent; }
#vice-gateway .vice-gateway__intro h1 { font-size: clamp(36px, 3.5vw, 58px); line-height: 1.06; max-width: 1100px; }
html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__intro > p:last-child { color: #bfc7d8 !important; font-size: 15px; line-height: 1.7; }
#vice-gateway .vice-gateway__eyebrow { color: #b9c3d7 !important; letter-spacing: .1em; line-height: 1.6; }
#vice-gateway .vice-gateway__worlds { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; min-height: 420px; }
html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world {
	min-height: 420px; border: 1px solid rgba(221, 226, 244, .17) !important; border-radius: 12px !important; isolation: isolate;
}
#vice-gateway .vice-gateway__world img { opacity: 1 !important; filter: brightness(1.22) saturate(1.08); object-position: center; }
#vice-gateway .vice-gateway__world::after { background: linear-gradient(180deg, rgba(9, 12, 20, .08) 5%, rgba(9, 12, 20, .28) 40%, rgba(9, 12, 20, .92) 100%); }
#vice-gateway .vice-gateway__world-content { left: 28px; right: 24px; bottom: 28px; }
#vice-gateway .vice-gateway__world-content small { color: #d2d7e5 !important; font-size: 10px; letter-spacing: .08em; line-height: 1.6; }
html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world-content > strong {
	color: #ffe5f3 !important; font-size: clamp(44px, 4.2vw, 64px); font-weight: 400 !important;
	line-height: 1.25; margin: 9px 0 3px; text-shadow: 0 2px 12px rgba(5, 7, 13, .7), 0 0 26px rgba(236, 72, 153, .4);
}
html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world--gta5 .vice-gateway__world-content > strong { color: #fff0c9 !important; text-shadow: 0 2px 12px rgba(5, 7, 13, .7), 0 0 26px rgba(251, 191, 36, .25); }
html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world--gta6 .vice-gateway__world-content > strong { color: #e3e9ff !important; text-shadow: 0 2px 12px rgba(5, 7, 13, .7), 0 0 26px rgba(167, 188, 246, .25); }
#vice-gateway .vice-gateway__world-content > span { color: #e0e5ee !important; font-size: 13px; font-weight: 500; line-height: 1.6; }
#vice-gateway .vice-gateway__world-content em { border-radius: 7px; min-height: 44px; margin-top: 22px; border-color: rgba(221, 226, 244, .3); }
#vice-gateway .vice-gateway__auth { border: 1px solid rgba(221, 226, 244, .15); border-radius: 12px; overflow: hidden; }
@media (max-width: 860px) {
	html body.vice-white-2026.vice-gateway-page #vice-gateway { padding: 0 20px 32px; }
	#vice-gateway .vice-gateway__intro { min-height: 174px; padding: 26px 0 28px; }
	#vice-gateway .vice-gateway__worlds { grid-template-columns: 1fr; min-height: 0; gap: 12px; }
	html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world { min-height: 190px; }
	#vice-gateway .vice-gateway__world-content { left: 22px; right: 20px; bottom: 22px; }
	html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world-content > strong { font-size: 46px; margin: 2px 0; }
	#vice-gateway .vice-gateway__world-content em { bottom: 2px; }
}
@media (max-width: 520px) {
	html body.vice-white-2026.vice-gateway-page .vc-home-masthead { min-height: 82px !important; padding: 12px 0 !important; }
	html body.vice-white-2026.vice-gateway-page #vice-gateway { padding-inline: 16px; }
	#vice-gateway .vice-gateway__intro { min-height: 188px; }
	#vice-gateway .vice-gateway__intro h1 { font-size: 36px; max-width: 390px; }
	#vice-gateway .vice-gateway__world-content { left: 20px; right: 18px; }
	html body.vice-white-2026.vice-gateway-page #vice-gateway .vice-gateway__world-content > strong { font-size: 43px; }
	#vice-gateway .vice-gateway__world-content em { min-width: 44px; min-height: 44px; justify-content: center; }
	#vice-gateway .vice-gateway__auth-content { padding: 26px 20px 36px; }
}
