/* ==========================================================================
   HOME SHELL — FUNDO GLOBAL + LIQUID GLASS
   ========================================================================== */

.th-page-home .site-main {
	position: relative;
	overflow: clip;
	background:
		linear-gradient(
			180deg,
			rgb(var(--th-black-rgb) / 0.18) 0%,
			rgb(var(--th-black-rgb) / 0.56) 100%
		),
		var(--th-home-bg-image, url("../../images/home/hero-th.jpg"));
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--th-white);
	isolation: isolate;
}

.th-page-home .site-main::before {
	position: fixed;
	inset: 0;
	z-index: 0;
	background:
		radial-gradient(
			circle at 75% 22%,
			rgb(var(--th-red-rgb) / 0.08),
			transparent 34%
		),
		radial-gradient(
			circle at 16% 72%,
			rgb(var(--th-wine-rgb) / 0.1),
			transparent 38%
		);
	content: "";
	pointer-events: none;
}

.th-page-home .site-main > section {
	position: relative;
	z-index: 1;
	background: transparent;
	color: var(--th-white);
}

.th-page-home .site-main > section > .container--wide,
.th-page-home .site-main > section > .container--text,
.th-page-home .site-main > section > .container {
	width: min(100%, 1320px);
	margin-inline: auto;
	padding-inline: clamp(24px, 3.2vw, 40px);
}

.home-hero,
.home-authority,
.home-projects,
.home-positioning,
.home-services,
.home-final-cta {
	background: transparent;
	color: var(--th-white);
}

.home-hero__background,
.home-final-cta__background {
	display: none;
}

.home-authority::before,
.home-projects::before,
.home-positioning::before,
.home-services::before,
.home-services::after {
	display: none;
}

/* ==========================================================================
   TRANSIÇÃO SUAVE ENTRE SEÇÕES
   ========================================================================== */

.th-page-home .site-main > section + section {
	margin-top: -12px;
	padding-top: calc(var(--section-space) + 12px);
}

.th-page-home .site-main > section + section::before {
	position: absolute;
	top: -60px;
	right: 0;
	left: 0;
	z-index: 0;
	height: 120px;
	background:
		linear-gradient(
			180deg,
			rgb(var(--th-white-rgb) / 0) 0%,
			rgb(var(--th-white-rgb) / 0.02) 100%
		);
	filter: blur(18px);
	opacity: 0.7;
	content: "";
	pointer-events: none;
}

.th-page-home .site-main > section > * {
	position: relative;
	z-index: 1;
}

/* ==========================================================================
   PAINÉIS PRINCIPAIS EM LIQUID GLASS
   ========================================================================== */

.home-authority__intro,
.home-projects__header,
.home-positioning__content,
.home-services__header {
	position: relative;
	padding: clamp(24px, 3.6vw, 46px);
	border: 1px solid rgb(var(--th-white-rgb) / 0.1);
	border-radius: var(--radius-xl);
	background:
		linear-gradient(
			135deg,
			rgb(var(--th-white-rgb) / 0.09),
			rgb(var(--th-white-rgb) / 0.03)
		);
	box-shadow:
		0 20px 70px rgb(var(--th-black-rgb) / 0.18),
		inset 0 1px 0 rgb(var(--th-white-rgb) / 0.1);
	-webkit-backdrop-filter: blur(20px) saturate(140%);
	backdrop-filter: blur(20px) saturate(140%);
}

.home-hero__glass,
.home-authority__grid,
.home-projects__item,
.home-projects__content,
.home-positioning__image,
.home-positioning__badge,
.home-services__card,
.home-final-cta__panel {
	border-color: rgb(var(--th-white-rgb) / 0.13);
	box-shadow:
		0 32px 100px rgb(var(--th-black-rgb) / 0.26),
		inset 0 1px 0 rgb(var(--th-white-rgb) / 0.14),
		inset 0 -1px 0 rgb(var(--th-black-rgb) / 0.12);
}

.home-hero__glass::after,
.home-authority__intro::after,
.home-projects__header::after,
.home-positioning__content::after,
.home-services__header::after,
.home-services__card::after {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(
			135deg,
			rgb(var(--th-white-rgb) / 0.08) 0%,
			transparent 34%,
			rgb(var(--th-white-rgb) / 0.025) 100%
		);
	content: "";
	pointer-events: none;
}

.home-hero__glass > *,
.home-authority__intro > *,
.home-projects__header > *,
.home-positioning__content > *,
.home-services__header > *,
.home-services__card > * {
	position: relative;
	z-index: 1;
}

/* ==========================================================================
   TEXTOS SOBRE FUNDO ESCURO
   ========================================================================== */

.home-authority__title,
.home-projects__title,
.home-positioning__title,
.home-services__title,
.home-final-cta__title {
	color: var(--th-white);
}

.home-authority .th-kicker,
.home-positioning .th-kicker,
.home-services .th-kicker,
.home-projects .th-kicker {
	color: rgb(var(--th-white-rgb) / 0.68);
}

.home-projects__text,
.home-positioning__text,
.home-services__text,
.home-final-cta__text {
	color: rgb(var(--th-white-rgb) / 0.72);
}

/* ==========================================================================
   AUTORIDADE
   ========================================================================== */

.home-authority__inner {
	align-items: stretch;
}

.home-authority__intro {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.home-authority__grid {
	background:
		linear-gradient(
			135deg,
			rgb(var(--th-white-rgb) / 0.13),
			rgb(var(--th-white-rgb) / 0.055)
		);
	border: 1px solid rgb(var(--th-white-rgb) / 0.13);
	-webkit-backdrop-filter: blur(24px) saturate(150%);
	backdrop-filter: blur(24px) saturate(150%);
	color: var(--th-white);
}

.home-authority__item + .home-authority__item {
	border-left-color: rgb(var(--th-white-rgb) / 0.12);
}

.home-authority__item span {
	color: rgb(var(--th-white-rgb) / 0.68);
}

/* ==========================================================================
   POSICIONAMENTO
   ========================================================================== */

.home-positioning__image {
	background:
		linear-gradient(
			135deg,
			rgb(var(--th-white-rgb) / 0.12),
			rgb(var(--th-white-rgb) / 0.045)
		);
	border: 1px solid rgb(var(--th-white-rgb) / 0.13);
	-webkit-backdrop-filter: blur(24px) saturate(150%);
	backdrop-filter: blur(24px) saturate(150%);
}

.home-positioning__points {
	border-top-color: rgb(var(--th-white-rgb) / 0.12);
}

.home-positioning__point {
	border-bottom-color: rgb(var(--th-white-rgb) / 0.12);
}

.home-positioning__point p {
	color: rgb(var(--th-white-rgb) / 0.78);
}

/* ==========================================================================
   SERVIÇOS
   ========================================================================== */

.home-services__card {
	background:
		linear-gradient(
			135deg,
			rgb(var(--th-white-rgb) / 0.13),
			rgb(var(--th-white-rgb) / 0.055)
		);
	border: 1px solid rgb(var(--th-white-rgb) / 0.13);
	-webkit-backdrop-filter: blur(24px) saturate(150%);
	backdrop-filter: blur(24px) saturate(150%);
	color: var(--th-white);
}

.home-services__card-title {
	color: var(--th-white);
}

.home-services__card-text,
.home-services__list li {
	color: rgb(var(--th-white-rgb) / 0.68);
}

.home-services__list li {
	border-top-color: rgb(var(--th-white-rgb) / 0.12);
}

/* ==========================================================================
   RESPONSIVO
   ========================================================================== */

@media (min-width: 1800px) {
	.th-page-home .site-main > section > .container--wide,
	.th-page-home .site-main > section > .container--text,
	.th-page-home .site-main > section > .container {
		width: min(calc(100% - (var(--page-gutter) * 2)), var(--container-wide));
	}
}

@media (max-width: 767px) {
	.th-page-home .site-main {
		background-attachment: scroll;
		background-position: center top;
	}

	.th-page-home .site-main > section + section {
		margin-top: -22px;
		padding-top: calc(var(--section-space) + 22px);
	}

	.home-authority__intro,
	.home-projects__header,
	.home-positioning__content,
	.home-services__header {
		padding: 24px;
		border-radius: var(--radius-lg);
		-webkit-backdrop-filter: blur(18px) saturate(145%);
		backdrop-filter: blur(18px) saturate(145%);
	}

	.home-authority__item + .home-authority__item {
		border-left: 0;
		border-top-color: rgb(var(--th-white-rgb) / 0.12);
	}
}
