@charset "UTF-8";

:root{
	--verde-950: #0A1D11;
	--verde-800: #12301F;
	--verde-600: #235C3D;
	--verde-500: #2E7A4E;
	--verde-400: #4F8F68;
	--verde-100: #E7F0EA;

	--marrom-800: #4A3020;
	--marrom-600: #7A4A28;
	--marrom-500: #8F5A32;
	--marrom-400: #B08553;
	--marrom-100: #F6EEE4;

	--texto: #202922;
	--texto-suave: #55605A;
	--borda: #E7ECE8;

	--font-display: 'Poppins', sans-serif;
	--font-body: 'Inter', sans-serif;

	--radius-sm: 10px;
	--radius-md: 16px;
	--radius-lg: 22px;

	--shadow-sm: 0 2px 10px rgba(15,40,24,0.08);
	--shadow-md: 0 14px 32px rgba(15,40,24,0.14);
	--shadow-lg: 0 22px 48px rgba(15,40,24,0.20);
}

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: var(--font-body);
}

html{
	scroll-behavior: smooth;
}

html,body{
	height: 100%;
	overflow-x: hidden;
}

body{
	color: var(--texto);
	-webkit-font-smoothing: antialiased;
}

h1, h2,
header nav a,
footer nav a,
.btn1, .btn2,
.assistencia-item .numero,
.line-titulo h2,
.footer-col h3,
.contato-info-card h3,
.valor-item h3{
	font-family: var(--font-display);
}

::selection{
	background: var(--verde-400);
	color: var(--verde-950);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible{
	outline: 3px solid var(--verde-400);
	outline-offset: 2px;
}

/* ===== REVEAL AO ROLAR A TELA ===== */

.reveal{
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .7s ease, transform .7s ease;
}

.reveal.is-visible{
	opacity: 1;
	transform: translateY(0);
}

.reveal-d1{ transition-delay: .12s; }
.reveal-d2{ transition-delay: .24s; }

@media (prefers-reduced-motion: reduce){
	.reveal{
		transition: none;
		transform: none;
		opacity: 1;
	}
}

.container{
	width: 100%;
	max-width: 1400px;
	margin:0 auto;
}

.clear{
	clear: both;
}

/* ===== HEADER ===== */

header{
	padding:18px 2%;
	border-bottom: 2px solid var(--verde-600);
	background: #ffffff;
	position: sticky;
	top: 0;
	z-index: 500;
	box-shadow: var(--shadow-sm);
	transition: box-shadow .2s ease;
}

header.scrolled{
	box-shadow: var(--shadow-md);
}

.header-logo{
	float: left;
	display: block;
	line-height: 0;
	transition: transform .2s ease;
}

.header-logo:hover{
	transform: translateY(-1px);
}

.header-logo img{
	display: block;
	height: 108px;
	width: auto;
}

header nav.desktop{
	float: right;
	position: relative;
	top:44px;
}

header nav.desktop ul{
	list-style-type: none;
}

header nav.desktop ul li{
	float: left;
	font-size: 18px;
	padding:0 20px;
	text-transform: uppercase;
}

header nav.desktop a{
	color: #2b2b2b;
	text-decoration: none;
	position: relative;
	padding-bottom: 6px;
	transition: color .2s ease;
}

header nav.desktop a::after{
	content:"";
	position: absolute;
	left:0;
	right:100%;
	bottom:0;
	height: 2px;
	background: var(--verde-600);
	transition: right .25s ease;
}

header nav.desktop a:hover,
header nav.desktop a.active{
	color: var(--verde-600);
}

header nav.desktop a:hover::after,
header nav.desktop a.active::after{
	right:0;
}

nav.mobile{
	margin-top:41px;
	float: right;
	width: 32px;
	height: 26px;
	cursor: pointer;
	display: none;
	position: relative;
}

nav.mobile span{
	display: block;
	width: 100%;
	height: 3px;
	margin-bottom: 6px;
	background: var(--verde-800);
	transition: transform .25s ease, opacity .2s ease;
}

nav.mobile.active span:nth-child(1){
	transform: translateY(9px) rotate(45deg);
}

nav.mobile.active span:nth-child(2){
	opacity: 0;
}

nav.mobile.active span:nth-child(3){
	transform: translateY(-9px) rotate(-45deg);
}

nav.mobile ul{
	display: block;
	left: 0;
	right: 0;
	top: 146px;
	border-bottom:4px solid var(--verde-600);
	z-index: 999;
	position: fixed;
	text-align: center;
	background-color: white;
	list-style-type: none;
	opacity: 0;
	transform: translateY(-8px);
	pointer-events: none;
	box-shadow: var(--shadow-md);
	transition: opacity .2s ease, transform .2s ease;
	max-height: calc(100vh - 146px);
	overflow-y: auto;
}

nav.mobile ul.open{
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}

nav.mobile li{
	font-size: 20px;
	padding:18px 24px;
}

nav.mobile li a{
	color: black;
	text-decoration: none;
}

/* ===== BANNER ===== */

section.banner{
	position: relative;
	overflow:hidden;
	width: 100%;
	min-height: 480px;
	display: flex;
	align-items: center;
	background: linear-gradient(135deg, var(--verde-800) 0%, var(--verde-600) 55%, var(--verde-400) 130%);
	color: white;
}

section.banner::before{
	content:"";
	position: absolute;
	inset: 0;
	background-image:
		radial-gradient(circle at 88% 15%, rgba(255,255,255,0.14) 0%, transparent 45%),
		radial-gradient(circle at 100% 100%, rgba(255,255,255,0.10) 0%, transparent 40%);
	pointer-events: none;
}

/* ===== GRÃO DE CAFÉ 3D ===== */

.bean-scene{
	--bean-w: 160px;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 44px auto 0 auto;
	perspective: 800px;
}

.bean{
	width: var(--bean-w);
	height: calc(var(--bean-w) * 1.4);
	border-radius: 50% 50% 50% 50% / 58% 58% 42% 42%;
	background: radial-gradient(circle at 32% 28%, #b98a54 0%, #8a5a30 42%, #5c3a1e 75%, #3c2513 100%);
	box-shadow:
		inset -14px -12px 26px rgba(0,0,0,0.45),
		inset 10px 10px 18px rgba(255,255,255,0.18);
	position: relative;
	animation: beanSpin 7s linear infinite;
}

.bean::before{
	content:"";
	position: absolute;
	top: 10%;
	bottom: 10%;
	left: 50%;
	width: calc(var(--bean-w) * 0.065);
	margin-left: calc(var(--bean-w) * -0.0325);
	background: linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.35), rgba(0,0,0,0.55));
	border-radius: 50%;
	filter: blur(0.5px);
}

@keyframes beanSpin{
	from{ transform: rotateY(0deg) rotateZ(-10deg); }
	to{ transform: rotateY(360deg) rotateZ(-10deg); }
}

.bean-shadow{
	width: calc(var(--bean-w) * 0.98);
	height: calc(var(--bean-w) * 0.18);
	margin-top: calc(var(--bean-w) * 0.15);
	border-radius: 50%;
	background: radial-gradient(ellipse at center, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 72%);
	animation: beanShadowPulse 7s linear infinite;
}

@keyframes beanShadowPulse{
	0%, 100%{ transform: scaleX(1); opacity: 0.55; }
	50%{ transform: scaleX(0.7); opacity: 0.35; }
}

@media screen and (min-width: 1150px){
	.bean-scene{
		--bean-w: 220px;
		position: absolute;
		right: 8%;
		top: 50%;
		transform: translateY(-50%);
		z-index: 1;
		margin: 0;
	}
}

.banner .container{
	position: relative;
	z-index: 1;
	min-width: 0;
	padding:60px 4%;
}

.banner h1{
	font-size: 44px;
	text-transform: uppercase;
	max-width: 700px;
	overflow-wrap: break-word;
}

.banner p{
	margin-top:20px;
	font-size: 19px;
	max-width: 600px;
	line-height: 28px;
	color: rgba(255,255,255,0.9);
}

.banner .cta-group{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:16px;
	margin-top:30px;
}

/* ===== BOTÕES ===== */

.btn1{
	text-align: center;
	display: inline-block;
	line-height: 48px;
	padding:0 32px;
	background-color:var(--verde-600);
	text-decoration: none;
	border-radius: var(--radius-md);
	color: white;
	font-size: 16px;
	font-weight: 600;
	box-shadow: 0 12px 26px rgba(15,40,24,0.28);
	transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.btn1:hover{
	background-color:var(--verde-500);
	transform: translateY(-2px);
	box-shadow: 0 16px 32px rgba(15,40,24,0.32);
}

.btn-marrom{
	background-color: var(--marrom-600);
	box-shadow: 0 12px 26px rgba(74,48,32,0.28);
}

.btn-marrom:hover{
	background-color: var(--marrom-500);
	box-shadow: 0 16px 32px rgba(74,48,32,0.32);
}

.btn2{
	text-align: center;
	display: inline-block;
	line-height: 44px;
	padding:0 30px;
	border: 2px solid rgba(255,255,255,0.7);
	border-radius: var(--radius-md);
	color: white;
	text-decoration: none;
	font-size: 16px;
	font-weight: 600;
	transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.btn2:hover{
	background-color: rgba(255,255,255,0.12);
	border-color: white;
	transform: translateY(-2px);
}

/* ===== TÍTULOS DE SEÇÃO ===== */

.line-titulo{
	max-width: 1400px;
	margin:0 auto;
	position: relative;
	text-align: center;
}

.ln1{
	position: absolute;
	height: 2px;
	width: 100%;
	top:20px;
	background:#cfcfcf;
}

.line-titulo h2{
	position: relative;
	background: white;
	display: inline-block;
	text-align: center;
	font-size: 27px;
	padding:0 20px;
	text-transform: uppercase;
	color: var(--verde-800);
}

section.contato .line-titulo h2,
section.videos-assistencia .line-titulo h2{
	background: var(--verde-100);
}

/* ===== ÍCONES DE CARD ===== */

.card-icon{
	width: 52px;
	height: 52px;
	border-radius: var(--radius-sm);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
	color: var(--verde-600);
	box-shadow: var(--shadow-sm);
}

.card-icon svg{
	width: 26px;
	height: 26px;
}

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

section.servicos{
	padding:90px 2%;
}

.servicos .container{
	padding:40px 0;
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	justify-content: center;
}

.servico-card{
	width: 22%;
	min-width: 240px;
	flex-grow: 1;
	background: var(--verde-100);
	border-radius: var(--radius-md);
	padding:32px 26px;
	text-align: left;
	transition: opacity .6s ease, transform .25s ease, box-shadow .25s ease;
}

.servico-card:hover{
	transform: translateY(-6px);
	box-shadow: var(--shadow-md);
}

.servico-card .card-icon{
	background: white;
}

.servico-card:nth-child(1){ transition-delay: .04s, 0s, 0s; }
.servico-card:nth-child(2){ transition-delay: .12s, 0s, 0s; }
.servico-card:nth-child(3){ transition-delay: .2s, 0s, 0s; }
.servico-card:nth-child(4){ transition-delay: .28s, 0s, 0s; }

.servico-card h2{
	font-size: 20px;
	color: var(--verde-800);
	margin-bottom: 12px;
}

.servico-card p{
	font-size: 15px;
	color: var(--texto-suave);
	line-height: 22px;
}

/* ===== SAFRA (café conilon) ===== */

section.safra{
	padding: 90px 2%;
	background: var(--verde-100);
}

.safra-grid{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 50px;
}

.safra-img{
	flex: 1;
	min-width: 280px;
}

.safra-img img{
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-lg);
}

.safra-texto{
	flex: 1;
	min-width: 280px;
}

.safra-texto h2{
	font-size: 32px;
	text-transform: uppercase;
	color: var(--verde-800);
	margin-bottom: 20px;
}

.safra-texto p{
	font-size: 16px;
	line-height: 26px;
	color: var(--texto-suave);
	max-width: 480px;
	margin-bottom: 28px;
}

/* ===== RESULTADOS ===== */

section.resultados{
	padding: 90px 2%;
}

.resultados-grid{
	padding: 40px 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 22px;
}

.resultado-item{
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
	transition: opacity .6s ease, transform .3s ease, box-shadow .3s ease;
}

.resultado-item img{
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.resultado-item:hover{
	transform: translateY(-6px);
	box-shadow: var(--shadow-md);
}

.resultado-item:hover img{
	transform: scale(1.06);
}

.resultado-item:nth-child(1){ transition-delay: .04s, 0s, 0s; }
.resultado-item:nth-child(2){ transition-delay: .08s, 0s, 0s; }
.resultado-item:nth-child(3){ transition-delay: .12s, 0s, 0s; }
.resultado-item:nth-child(4){ transition-delay: .16s, 0s, 0s; }
.resultado-item:nth-child(5){ transition-delay: .2s, 0s, 0s; }
.resultado-item:nth-child(6){ transition-delay: .24s, 0s, 0s; }
.resultado-item:nth-child(7){ transition-delay: .28s, 0s, 0s; }
.resultado-item:nth-child(8){ transition-delay: .32s, 0s, 0s; }
.resultado-item:nth-child(9){ transition-delay: .36s, 0s, 0s; }
.resultado-item:nth-child(10){ transition-delay: .4s, 0s, 0s; }

/* ===== SOBRE (resumo home / página sobre) ===== */

section.sobre-resumo{
	display: flex;
	flex-wrap: wrap;
}

.sobre-resumo .half1{
	width: 50%;
	min-width: 320px;
	flex-grow: 1;
	padding:90px 6%;
	background: var(--verde-800);
	color: white;
}

.sobre-resumo .half1 h2{
	font-weight: 600;
	font-size: 32px;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.sobre-resumo .half1 p{
	font-size: 16px;
	line-height: 26px;
	max-width: 500px;
	color: rgba(255,255,255,0.9);
}

.sobre-resumo .half2{
	width: 50%;
	min-width: 320px;
	flex-grow: 1;
	padding:90px 6%;
	background:var(--verde-600);
	color: white;
}

.sobre-resumo .half2 h2{
	font-weight: 600;
	font-size: 32px;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.sobre-resumo .half2 ul{
	list-style-type: none;
}

.sobre-resumo .half2 li{
	font-size: 17px;
	padding:8px 0;
	padding-left: 28px;
	position: relative;
}

.sobre-resumo .half2 li::before{
	content:"✓";
	position: absolute;
	left: 0;
	color: var(--verde-950);
	background: rgba(255,255,255,0.9);
	width:18px;
	height:18px;
	border-radius:50%;
	font-size:12px;
	line-height:18px;
	text-align:center;
	top:9px;
}

/* ===== PÁGINA SOBRE ===== */

section.sobre{
	min-height: 60%;
	padding:80px 2%;
}

section.sobre .container{
	max-width: 900px;
	margin:30px auto 0 auto;
	text-align: left;
}

section.sobre p{
	font-size: 16px;
	line-height: 28px;
	color: var(--texto-suave);
	margin-bottom: 18px;
}

.loja-intro{
	max-width: 640px;
	margin: 90px auto 0 auto;
	padding-top: 50px;
	border-top: 1px solid var(--borda);
	text-align: center;
}

.loja-intro h3{
	font-size: 26px;
	text-transform: uppercase;
	color: var(--verde-800);
	margin-bottom: 12px;
}

.loja-intro p{
	margin-bottom: 0;
}

.loja-grid{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 190px;
	grid-auto-flow: row dense;
	gap: 20px;
	margin: 30px 0 10px 0;
}

.loja-item{
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
	transition: opacity .6s ease, transform .3s ease, box-shadow .3s ease;
}

.loja-item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.loja-item:hover{
	transform: translateY(-6px);
	box-shadow: var(--shadow-md);
}

.loja-item:hover img{
	transform: scale(1.06);
}

.loja-item:nth-child(1){
	grid-column: span 2;
	grid-row: span 2;
	transition-delay: .04s, 0s, 0s;
}

.loja-item:nth-child(2){
	grid-column: span 2;
	grid-row: span 1;
	transition-delay: .1s, 0s, 0s;
}

.loja-item:nth-child(3){
	grid-column: span 1;
	grid-row: span 1;
	transition-delay: .16s, 0s, 0s;
}

.loja-item:nth-child(4){
	grid-column: span 1;
	grid-row: span 1;
	transition-delay: .22s, 0s, 0s;
}

@media screen and (max-width: 700px){
	.loja-grid{
		grid-template-columns: 1fr 1fr;
		grid-auto-rows: 160px;
	}

	.loja-item:nth-child(1){
		grid-column: span 2;
		grid-row: span 2;
	}

	.loja-item:nth-child(2){
		grid-column: span 2;
		grid-row: span 1;
	}
}

.instagram-cta{
	text-align: center;
	margin: 40px 0 10px 0;
}

.instagram-cta p{
	font-size: 16px;
	color: var(--texto-suave);
	margin-bottom: 18px;
}

.btn-instagram{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: linear-gradient(45deg, #f9ce34, #ee2a7b, #6228d7);
	color: white;
	text-decoration: none;
	font-weight: 600;
	font-size: 15px;
	padding: 14px 30px;
	border-radius: 100px;
	box-shadow: var(--shadow-sm);
	transition: transform .2s ease, box-shadow .2s ease;
}

.btn-instagram svg{
	width: 20px;
	height: 20px;
}

.btn-instagram:hover{
	transform: translateY(-3px);
	box-shadow: var(--shadow-md);
}

.valores-grid{
	display:flex;
	flex-wrap: wrap;
	gap:28px;
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid var(--borda);
}

.valor-item{
	flex:1;
	min-width: 220px;
}

.valor-item:nth-child(1){ transition-delay: .04s; }
.valor-item:nth-child(2){ transition-delay: .12s; }
.valor-item:nth-child(3){ transition-delay: .2s; }

.valor-item .card-icon{
	background: var(--verde-100);
}

.valor-item h3{
	color: var(--verde-800);
	font-size: 19px;
	margin-bottom: 8px;
}

.valor-item p{
	font-size: 14px;
	color: var(--texto-suave);
	line-height: 22px;
	margin-bottom: 0;
}

/* ===== PRODUTOS ===== */

section.produtos{
	padding:80px 2%;
}

.produtos .container{
	padding:40px 0;
}

/* ===== LINHAS DE PRODUTOS (VITALFORCE / OMNIA) ===== */

.produtos-intro{
	max-width: 780px;
	margin: 0 auto 50px auto;
	text-align: center;
	font-size: 16px;
	line-height: 27px;
	color: var(--texto-suave);
}

.produtos-intro strong{
	color: var(--verde-800);
}

.linha-marca{
	margin-bottom: 60px;
	padding: 40px;
	border-radius: var(--radius-lg);
	background: var(--verde-100);
	border-left: 5px solid var(--verde-500);
}

.linha-marca.linha-omnia{
	background: var(--marrom-100);
	border-left-color: var(--marrom-500);
	margin-bottom: 0;
}

.linha-marca-header{
	margin-bottom: 30px;
}

.linha-marca-nome{
	display: inline-block;
	font-family: var(--font-display);
	font-size: 28px;
	font-weight: 700;
	color: var(--verde-800);
	margin-bottom: 8px;
}

.linha-omnia .linha-marca-nome{
	color: var(--marrom-800);
}

.linha-marca-header p{
	font-size: 15px;
	color: var(--texto-suave);
	max-width: 620px;
}

.produtos-linha-grid{
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.produto-linha-card{
	display: flex;
	background: white;
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
	transition: opacity .6s ease, transform .3s ease, box-shadow .3s ease;
}

.produto-linha-card:hover{
	transform: translateY(-6px);
	box-shadow: var(--shadow-md);
}

.produto-linha-img{
	flex: 0 0 260px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--verde-100);
	padding: 18px;
}

.linha-omnia .produto-linha-img{
	background: var(--marrom-100);
}

.produto-linha-img img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.produto-linha-info{
	flex: 1;
	padding: 30px 32px;
}

.produto-tags{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.produto-tag{
	display: inline-block;
	background: var(--verde-100);
	color: var(--verde-800);
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .04em;
	padding: 5px 12px;
	border-radius: 100px;
}

.produto-tag-omnia{
	background: var(--marrom-100);
	color: var(--marrom-600);
}

.produto-linha-info h3{
	font-size: 21px;
	color: var(--verde-800);
	margin-bottom: 12px;
}

.linha-omnia .produto-linha-info h3{
	color: var(--marrom-800);
}

.produto-composicao{
	font-size: 14px;
	color: var(--texto-suave);
	line-height: 22px;
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--borda);
}

.produto-linha-info > p{
	font-size: 15px;
	color: var(--texto-suave);
	line-height: 24px;
	margin-bottom: 16px;
}

.produto-pragas{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.produto-pragas span{
	font-size: 13px;
	font-weight: 600;
	color: var(--marrom-600);
	background: var(--marrom-100);
	padding: 6px 14px;
	border-radius: 100px;
}

.produtos-cta{
	text-align: center;
	margin-top: 60px;
	padding-top: 40px;
	border-top: 1px solid var(--borda);
}

.produtos-cta p{
	font-size: 17px;
	color: var(--texto);
	margin-bottom: 20px;
}

@media screen and (max-width: 700px){
	.linha-marca{
		padding: 24px 20px;
	}

	.produto-linha-card{
		flex-direction: column;
	}

	.produto-linha-img{
		flex: none;
		height: 260px;
		padding: 20px;
	}
}

/* ===== PARALLAX ASSISTÊNCIA ===== */

.parallax-assistencia{
	position: relative;
	min-height: 420px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: white;
	background-image:
		linear-gradient(rgba(10,29,17,0.6), rgba(10,29,17,0.6)),
		url('../imagens/Resultado%2010.jpeg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}

.parallax-content{
	max-width: 700px;
	padding: 0 20px;
}

.parallax-content h2{
	font-size: 34px;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.parallax-content p{
	font-size: 17px;
	line-height: 27px;
	color: rgba(255,255,255,0.9);
}

@media screen and (max-width: 900px){
	.parallax-assistencia{
		background-attachment: scroll;
		min-height: 320px;
	}

	.parallax-content h2{
		font-size: 26px;
	}
}

/* ===== ASSISTÊNCIA TÉCNICA ===== */

section.assistencia{
	padding:80px 2%;
}

.assistencia .container{
	max-width: 1000px;
	margin:40px auto 0 auto;
}

.assistencia-item{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 22px;
	padding:28px 0;
	border-bottom: 1px solid var(--borda);
	transition: opacity .6s ease, transform .2s ease;
}

.assistencia-item:hover{
	transform: translateX(6px);
}

.assistencia-item:nth-child(1){ transition-delay: .04s, 0s; }
.assistencia-item:nth-child(2){ transition-delay: .12s, 0s; }
.assistencia-item:nth-child(3){ transition-delay: .2s, 0s; }

.assistencia-item:last-child{
	border-bottom: none;
}

.assistencia-item .numero{
	font-size: 22px;
	font-weight: bold;
	color: var(--marrom-600);
	width: 56px;
	height: 56px;
	min-width: 56px;
	border-radius: 50%;
	background: var(--marrom-100);
	display: flex;
	align-items: center;
	justify-content: center;
}

.assistencia-item .texto{
	flex:1;
	min-width: 220px;
}

.assistencia-item h2{
	font-size: 19px;
	color: var(--verde-800);
	margin-bottom: 8px;
}

.assistencia-item p{
	font-size: 15px;
	color: var(--texto-suave);
	line-height: 22px;
}

/* ===== VÍDEOS ASSISTÊNCIA ===== */

section.videos-assistencia{
	padding: 90px 2%;
	background: var(--verde-100);
	overflow: hidden;
}

.videos-wrap{
	position: relative;
	max-width: 1400px;
	margin: 40px auto 0 auto;
}

.videos-scroll{
	display: flex;
	gap: 22px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	padding: 6px 6px 20px 6px;
	scrollbar-color: var(--verde-400) transparent;
}

.videos-scroll::-webkit-scrollbar{
	height: 8px;
}

.videos-scroll::-webkit-scrollbar-thumb{
	background: var(--verde-400);
	border-radius: 4px;
}

.videos-scroll::-webkit-scrollbar-track{
	background: transparent;
}

.video-card{
	flex: 0 0 auto;
	width: 220px;
	scroll-snap-align: start;
	transition: opacity .6s ease, transform .3s ease;
}

.video-card:hover{
	transform: translateY(-6px);
}

.video-card:nth-child(1){ transition-delay: .04s, 0s; }
.video-card:nth-child(2){ transition-delay: .08s, 0s; }
.video-card:nth-child(3){ transition-delay: .12s, 0s; }
.video-card:nth-child(4){ transition-delay: .16s, 0s; }
.video-card:nth-child(5){ transition-delay: .2s, 0s; }
.video-card:nth-child(6){ transition-delay: .24s, 0s; }

.video-frame{
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-md);
	background: #000;
}

.video-frame iframe{
	width: 100%;
	aspect-ratio: 9 / 16;
	display: block;
	border: none;
}

.video-card p{
	margin-top: 12px;
	font-size: 14px;
	color: var(--texto-suave);
	text-align: center;
	line-height: 20px;
}

.videos-nav{
	position: absolute;
	top: 42%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: white;
	border: none;
	color: var(--verde-800);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: var(--shadow-md);
	cursor: pointer;
	z-index: 2;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.videos-nav:hover{
	background: var(--verde-600);
	color: white;
	transform: translateY(-50%) scale(1.08);
}

.videos-nav svg{
	width: 22px;
	height: 22px;
}

.videos-prev{
	left: -6px;
}

.videos-next{
	right: -6px;
}

@media screen and (max-width: 700px){
	.videos-nav{
		display: none;
	}

	.video-card{
		width: 180px;
	}
}

/* ===== CONTATO ===== */

section.contato{
	padding:80px 2% 90px 2%;
	background: var(--verde-100);
}

.contato-grid{
	display:flex;
	flex-wrap: wrap;
	gap: 36px;
	align-items: flex-start;
	justify-content: center;
	padding-top: 20px;
}

.contato-info-card{
	flex: 1;
	min-width: 280px;
	max-width: 380px;
	background: linear-gradient(145deg, var(--verde-600), var(--verde-800));
	color: white;
	padding:40px 32px;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-md);
}

.contato-info-card h3{
	font-size: 24px;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.contato-info-card p{
	font-size: 15px;
	line-height: 24px;
	color: rgba(255,255,255,0.85);
	margin-bottom: 28px;
}

.whats-links{
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.whats-link{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: rgba(255,255,255,0.14);
	color: white;
	text-decoration: none;
	padding:14px 20px;
	border-radius: var(--radius-md);
	font-size: 15px;
	transition: background-color .2s ease, transform .2s ease;
}

.whats-link svg{
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.whats-link:hover{
	background: rgba(255,255,255,0.24);
	transform: translateY(-2px);
}

.address-link{
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-top: 24px;
	padding-top: 22px;
	border-top: 1px solid rgba(255,255,255,0.18);
	color: white;
	text-decoration: none;
	font-size: 15px;
	line-height: 23px;
	transition: opacity .2s ease;
}

.address-link svg{
	width: 22px;
	height: 22px;
	flex-shrink: 0;
	margin-top: 1px;
	color: var(--marrom-400);
}

.address-link:hover{
	opacity: 0.8;
}

.mapa-wrap{
	max-width: 1100px;
	margin: 60px auto 0 auto;
	padding: 0 2%;
}

.mapa-titulo{
	text-align: center;
	font-size: 24px;
	text-transform: uppercase;
	color: var(--verde-800);
	margin-bottom: 22px;
}

.mapa-frame{
	position: relative;
	width: 100%;
	padding-top: 38%;
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-md);
	background: var(--verde-100);
}

.mapa-frame iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

@media screen and (max-width: 700px){
	.mapa-frame{
		padding-top: 100%;
	}
}

section.contato form{
	flex: 2;
	min-width: 320px;
	max-width: 620px;
	margin:0;
	background: white;
	padding:32px;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-md);
}

section.contato .input-wraper{
	float: left;
	padding:10px;
	margin-top:7px;
}

section.contato input[type=text]{
	width: 100%;
	border: 1px solid #ccc;
	height: 60px;
	font-size: 16px;
	padding-left: 15px;
	background: white;
	border-radius: var(--radius-sm);
	transition: border-color .2s ease, box-shadow .2s ease;
}

section.contato textarea{
	font-size: 16px;
	width: 100%;
	border:1px solid #ccc;
	height: 140px;
	padding:14px 15px;
	resize: none;
	background: white;
	border-radius: var(--radius-sm);
	transition: border-color .2s ease, box-shadow .2s ease;
}

section.contato input[type=text]:focus,
section.contato textarea:focus{
	outline: none;
	border-color: var(--verde-500);
	box-shadow: 0 0 0 3px rgba(63,160,103,0.18);
}

.error-msg{
	display: block;
	max-height: 0;
	overflow: hidden;
	color: #C0392B;
	font-size: 13px;
	margin-top: 6px;
	padding-left: 2px;
	opacity: 0;
	transition: max-height .2s ease, opacity .2s ease, margin-top .2s ease;
}

.input-wraper.error input[type=text],
.input-wraper.error textarea{
	border-color: #C0392B;
	background: #FDEDEC;
}

.input-wraper.error input[type=text]:focus,
.input-wraper.error textarea:focus{
	box-shadow: 0 0 0 3px rgba(192,57,43,0.16);
}

.input-wraper.error .error-msg{
	max-height: 40px;
	opacity: 1;
	margin-top: 6px;
}

.form-feedback{
	display: none;
	width: 100%;
	text-align: center;
	padding: 14px 16px;
	border-radius: var(--radius-sm);
	font-size: 15px;
	margin-bottom: 18px;
}

.form-feedback.show{
	display: block;
}

.form-feedback.success{
	background: var(--verde-100);
	color: var(--verde-800);
}

section.contato form .center-btn{
	text-align: center;
}

section.contato input[type=submit]{
	border: none;
	cursor: pointer;
	display: inline-block;
}

.w100{
	width: 100%;
}

.w50{
	width: 50%;
}

/* ===== FOOTER ===== */

footer{
	background: #03190C;
	padding-top: 56px;
}

.footer-top{
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	padding: 0 4% 36px 4%;
	border-bottom: 1px solid rgba(255,255,255,0.12);
}

.footer-brand{
	flex: 2;
	min-width: 260px;
}

.footer-logo-link{
	display: inline-block;
	margin-bottom: 16px;
	line-height: 0;
	transition: transform .2s ease;
}

.footer-logo-link:hover{
	transform: translateY(-1px);
}

.footer-logo-link img{
	display: block;
	height: 68px;
	width: auto;
}

.footer-brand p{
	color: rgba(255,255,255,0.7);
	font-size: 14px;
	line-height: 22px;
	max-width: 360px;
}

.footer-social{
	display: flex;
	gap: 12px;
	margin-top: 20px;
}

.social-icon{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(255,255,255,0.1);
	color: white;
	transition: background-color .2s ease, transform .2s ease;
}

.social-icon:hover{
	background: var(--verde-500);
	transform: translateY(-2px);
}

.social-icon svg{
	width: 18px;
	height: 18px;
}

.footer-col{
	flex: 1;
	min-width: 180px;
}

.footer-col h3{
	color: white;
	font-size: 15px;
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.footer-col ul{
	list-style-type: none;
}

.footer-col li{
	margin-bottom: 10px;
}

.footer-col a,
.footer-whats{
	color: rgba(255,255,255,0.7);
	text-decoration: none;
	font-size: 15px;
	transition: color .2s ease;
}

.footer-col a:hover,
.footer-whats:hover{
	color: var(--verde-400);
}

.footer-whats{
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
}

.footer-whats:last-child{
	margin-bottom: 0;
}

.footer-whats svg{
	width: 16px;
	height: 16px;
}

.footer-base{
	padding:20px 4%;
}

.footer-base p{
	color: rgba(255,255,255,0.5);
	font-size: 13px;
	text-align: center;
}

/* ===== WHATSAPP FLOAT ===== */

.whatsapp-float{
	position: fixed;
	right: 25px;
	bottom: 25px;
	width: 60px;
	height: 60px;
	background-color: #25D366;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 10px rgba(0,0,0,0.3);
	z-index: 1000;
	transition: box-shadow 0.2s ease;
	animation: whatsappFloat 2.6s ease-in-out infinite;
}

.whatsapp-float:hover{
	box-shadow: 0 8px 22px rgba(0,0,0,0.4);
}

@keyframes whatsappFloat{
	0%, 100%{ transform: translateY(0); }
	50%{ transform: translateY(-8px); }
}

.whatsapp-float svg{
	width: 32px;
	height: 32px;
}

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

@media screen and (max-width: 1260px){

	nav.desktop{
		display: none;
	}

	nav.mobile{
		display: block;
	}
}

@media screen and (max-width: 900px){

	.banner h1{
		font-size: 32px;
	}

	.servico-card{
		width: 100%;
	}

	.sobre-resumo .half1,
	.sobre-resumo .half2{
		width: 100%;
	}

	.contato-info-card{
		max-width: 100%;
	}
}

@media screen and (max-width: 480px){

	.banner h1{
		font-size: 26px;
	}

	.banner p{
		font-size: 16px;
	}
}

@media screen and (max-width: 600px){

	.footer-top{
		flex-direction: column;
		gap: 28px;
	}

	.w50{
		width: 100%;
	}

	section.contato form{
		padding:24px;
	}

	.contato-info-card{
		padding:32px 24px;
	}
}
