/* L2 Aeternum — fundos v2. Carregado depois de site.css.
   As artes internas mantêm 3:1 no desktop; a arte inicial usa 2,7:1. */
:root {
	--v2-ratio: 3;
	--v2-focus: 80%;
}

/* Sombra lateral suficiente para o título, sem esconder a cena à direita. */
.has-art {
	--art-shade: linear-gradient(90deg, rgba(11, 12, 15, .76) 0%, rgba(11, 12, 15, .43) 44%, rgba(11, 12, 15, .06) 78%, transparent 100%);
}

/* Fallback da seção e fundos individuais de cada página. */
.art-rankings { --art: url("../img/v2/bg-toppvp.webp"); --v2-focus: 86%; }
.art-home { --art: url("../img/v2/bg-home.webp"); --v2-ratio: 2.6998689384; --v2-focus: 76%; }
.art-download { --art: url("../img/v2/bg-download.webp"); --v2-focus: 87%; }
.art-regras { --art: url("../img/v2/bg-regras.webp"); --v2-focus: 89%; }
.art-wiki { --art: url("../img/v2/bg-wiki.webp"); --v2-focus: 80%; }
.page-toppvp { --art: url("../img/v2/bg-toppvp.webp"); --v2-focus: 86%; }
.page-toppk { --art: url("../img/v2/bg-toppk.webp"); --v2-focus: 84%; }
.page-toponline { --art: url("../img/v2/bg-toponline.webp"); --v2-focus: 90%; }
.page-topclan { --art: url("../img/v2/bg-topclan.webp"); --v2-focus: 83%; }
.page-top_enchant { --art: url("../img/v2/bg-top_enchant.webp"); --v2-focus: 78%; }
.page-oly_rank, .page-wiki_olimpiada { --art: url("../img/v2/bg-oly_rank.webp"); --v2-focus: 82%; }
.page-oly_heroes { --art: url("../img/v2/bg-oly_heroes.webp"); --v2-focus: 81%; }
.page-siege, .page-wiki_siege { --art: url("../img/v2/bg-siege.webp"); --v2-focus: 82%; }
.page-raid_status, .page-wiki_raids, .page-epic_status { --art: url("../img/v2/bg-boss.webp"); --v2-focus: 82%; }

.has-art main::before {
	height: max(340px, calc(min(100vw, var(--art-max)) / var(--v2-ratio)));
	background:
		var(--art-shade),
		linear-gradient(180deg, rgba(11, 12, 15, 0) 38%, rgba(11, 12, 15, .28) 74%, var(--bg) 100%),
		var(--art) center / cover no-repeat,
		var(--bg);
}

/* A altura do fundo inicial independe das colunas empilhadas do conteúdo. */
.hero__art {
	bottom: auto;
	height: max(420px, calc(min(100vw, var(--art-max)) / 2.6998689384));
	background:
		linear-gradient(90deg, rgba(11, 12, 15, .58), rgba(11, 12, 15, .16) 64%, rgba(11, 12, 15, .04)),
		linear-gradient(180deg, rgba(11, 12, 15, .04) 42%, rgba(11, 12, 15, .42) 76%, var(--bg) 100%),
		url("../img/v2/bg-home.webp") center / cover no-repeat,
		var(--bg);
}
.hero__art::after { opacity: .18; }

/* Formulários continuam com a altura compacta já definida pelo site. */
:is(.page-login, .page-register, .page-forgot, .page-reset) main::before {
	height: calc(var(--art-head) + var(--art-bleed));
}

@media (max-width: 640px) {
	.has-art {
		--art-shade: linear-gradient(180deg, rgba(11, 12, 15, .56), rgba(11, 12, 15, .72));
	}
	.has-art main::before {
		background-position: center, center, var(--v2-focus) center;
	}
	.hero__art {
		background-position: center, center, 76% center;
	}
}
