/* =========================================================
   Páginas internas — casca + utilitários institucionais (POC)
   ========================================================= */

.tsg-pagina--institucional {
	background: var(--wp--preset--color--branco);
}

.tsg-pagina--institucional .tsg-pagina__corpo {
	padding: 0;
}

.wp-site-blocks .tsg-pagina--institucional > .tsg-pagina__corpo {
	width: 100%;
	max-width: none;
}

/* Eyebrow — rótulo de seção da POC */
.tsg-eyebrow {
	margin: 0 0 var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--marca);
	font-family: var(--wp--preset--font-family--titulo);
	font-size: var(--wp--preset--font-size--label-caps);
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.tsg-eyebrow--claro {
	color: var(--wp--preset--color--destaque-claro);
}

/* Split — grade assimétrica da POC */
.tsg-split {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(280px, 0.7fr);
	gap: clamp(34px, 7vw, 96px);
	align-items: start;
}

.wp-site-blocks .tsg-split > * {
	width: 100%;
	max-width: none;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.tsg-split__titulo {
	margin: 0;
	color: var(--wp--preset--color--fundo-escuro);
	font-family: var(--wp--preset--font-family--titulo);
	font-size: var(--wp--preset--font-size--headline-lg);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.tsg-split__leitura p {
	margin: 0;
	color: var(--wp--custom--texto-suave);
	font-size: var(--wp--preset--font-size--body-lg);
	line-height: 1.56;
	text-wrap: pretty;
}

.tsg-split__leitura p + p {
	margin-top: 18px;
}

/* Subhero — páginas internas (POC) */
.tsg-subhero {
	position: relative;
	isolation: isolate;
	display: grid;
	align-items: end;
	min-height: 100svh;
	margin-top: calc(var(--tsg-altura-cabecalho) * -1);
	padding: calc(var(--tsg-altura-cabecalho) + 100px) max(28px, 6vw) 84px;
	overflow: hidden;
	color: var(--wp--preset--color--branco);
	background: var(--wp--preset--color--fundo-escuro);
	scroll-margin-top: 0;
}

.tsg-subhero__midia {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	margin: 0 !important;
}

.tsg-subhero__midia video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.8) contrast(1.04);
	transform: scale(1.05);
}

.tsg-subhero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	/* Mesmo véu da abertura (theme.json → --wp--custom--veu-abertura). */
	background: var(--wp--custom--veu-abertura);
	pointer-events: none;
}

.wp-site-blocks .tsg-subhero > .tsg-subhero__conteudo {
	position: relative;
	z-index: 2;
	justify-self: start;
	width: min(900px, 100%);
	max-width: none;
	margin: 0 !important;
}

.wp-site-blocks .tsg-subhero > .tsg-subhero__midia {
	width: 100%;
	max-width: none;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.tsg-subhero__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--destaque-claro);
	font-family: var(--wp--preset--font-family--titulo);
	font-size: var(--wp--preset--font-size--label-caps);
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.tsg-subhero__titulo {
	margin: 0 0 var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--branco);
	font-family: var(--wp--preset--font-family--titulo);
	font-size: clamp(48px, 8vw, 120px);
	font-weight: 700;
	line-height: 0.9;
	letter-spacing: -0.02em;
}

.tsg-subhero__lead {
	max-width: 78ch;
	margin: 0;
	color: color-mix(in srgb, var(--wp--preset--color--branco) 84%, transparent);
	font-size: clamp(18px, 2vw, 25px);
	line-height: 1.44;
	text-wrap: pretty;
}

@media (max-width: 899px) {
	.tsg-split {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--30);
	}

	.tsg-subhero {
		/* No desktop o texto ancora no rodapé; em tablet/mobile sobe para o meio. */
		align-items: center;
		min-height: 92svh;
		padding: calc(var(--tsg-altura-cabecalho) + 64px) var(--wp--preset--spacing--40) 56px;
	}

	.tsg-split__titulo {
		font-size: var(--wp--preset--font-size--headline-md);
	}
}

@media (max-width: 767px) {
	.tsg-subhero {
		padding-right: var(--wp--preset--spacing--20);
		padding-left: var(--wp--preset--spacing--20);
		padding-bottom: var(--wp--preset--spacing--50);
	}

	.tsg-subhero__lead {
		font-size: var(--wp--preset--font-size--body-lg);
	}
}

@media (prefers-reduced-motion: reduce) {
	.tsg-subhero__midia video {
		transform: none;
	}
}
