:root {	
	--preto:#000000;
	--pretoE:#00000099;
	--cinza01:#333333;
	--cinza02:#666666;
	--cinza03:#999999;
	--cinza04:#CCCCCC;
	--branco02: #F9F9F9;
	--branco01: #FFFFFF;
	--branco01E: #FFFFFFCC;
	--azul:#181c24;
	--azulE:#181c24CC;
	--vermelho:#c92f27;
	--bege01:#EBE7E1;
	--bege01E:#EBE7E199;
	--bege02:#BBB7B1;
	--bege02:#BBB7B199;
}
html, body{
	padding:0px;
	margin:0px;
	overflow-x: hidden;
	background-color: var(--branco02);
	font-family: "Open Sans", sans-serif;
}
a, ul, li, p, h1, h2, h3, h4, h5, h6, button, input, textarea, select{
	text-decoration:none;
	margin: 0px;
	padding: 0px;
	line-height: 115%;
	color: var(--preto01);
}
a{
	color: inherit;
}
.container{
	width: 90%;
	max-width: 1100px;
	margin: auto;
}
.flex{
	display: flex;
}

/*CTA*/
	.ctaBtn{
		font-size: 15px;
		font-weight: 700;
		text-transform: uppercase;
		text-decoration: none;
		display: inline-block;
		padding: 15px 30px;
		border-radius: 10px;
		transition: all 0.3s ease;
		border: none;
		cursor: pointer;
		box-shadow: 0 4px 20px var(--vermelho);
		background-color: var(--vermelho);
		color: var(--branco01);
	}
	.ctaBtn:hover {
		filter: brightness(1.2);
		transform: translateY(-2px);
	}

/*BARRA*/
	.barra{
		width: 100%;
		overflow: hidden;
		white-space: nowrap;
		padding: 10px 0;
		font-family: sans-serif;
		font-size: 12px;
		font-weight: 500;
		letter-spacing: 0.5px;
		box-sizing: border-box;
		color: var(--bege01);
		background-color: var(--azul);
	}
	.barraConteudo{
		display: inline-block;
		padding-left: 100%;
		animation: moverTextoInfinito 30s linear infinite;
	}
	.barraConteudo span {
		text-transform: uppercase;
		letter-spacing: 5px;
		display: inline-block;
	}

@keyframes moverTextoInfinito {
	0% {
		transform: translate3d(0, 0, 0);
	}
	100% {
		transform: translate3d(-100%, 0, 0);
	}
}

/*HEADER*/
	header{
		width: 100%;
		padding:10px 0;
		z-index: 9999;
		background-image: linear-gradient(to right, var(--bege01), var(--bege02));
	}
	header .container{
		gap: 50px;
		align-items: center;
		justify-content: space-between;
	}
	.headerMarca{
		width: 100%;
	}
	.headerMarca img{
		height: 50px;
	}
	.headerRSocial{
		width: 150px;
		display: flex;
		flex-direction: justify-content;
		gap: 10px;
	}
	.headerRSocial img{
		width: 30px;
		filter: grayscale(1);
	}
	.headerRSocial img:hover{
		filter: grayscale(0);
	}
	.headerEfeito{
		width: 100%;
		height: 2px;
		background-image: linear-gradient(to right, var(--azul) 65%, var(--vermelho) 65%);
	}
	
/*SESSAO01*/
	.sessao01 {
		background-image: url(../img/background01.webp);
	}
	.sessao01Background{
		padding: 75px 0;
		background: var(--branco01E);
	}
	.sessao01 .container{
		gap: 100px;
		align-items: center;
	}
	.sessao01Info{
		width: 100%;
	}
	.sessao01InfoTag{
		display: inline-block;
		padding: 5px 20px;
		border-radius: 5px;				
		font-size: 12px;
		font-weight: 400;
		text-transform: uppercase;
		letter-spacing: 3px;
		border: 1px solid var(--bege02);
		color: var(--pretoE);
		background: var(--bege01E);
	}
	.sessao01Info h1 {
		margin: 20px 0;
		font-size: 48px;
		font-weight: 900;
		color: var(--azul);
		text-shadow: 0 0 10px var(--cinza04);
	}
	.sessao01Info h1 span{
		color: var(--vermelho);
	}
	.sessao01Info p{
		font-size: 18px;
		line-height: 150%;
		color: var(--pretoE);
		margin: 0 0 30px;
	}
	.sessao01Imagem{
		min-width: 550px;
		height: 550px;
		padding: 2px;
		border-radius: 15px;
		overflow: hidden;
		background-image: linear-gradient(-45deg, var(--azul), var(--bege02), var(--vermelho));
	}
	.sessao01Imagem img{
		width: 100%;
		height: 100%;
		border-radius: 15px;
		object-fit: cover;
 	}

/*SESSAO02*/
	.sessao02{
		padding: 75px 0;
		background-color: var(--branco01);
	}
	.sessao02Titulo{
		text-align: center;
	}
	.sessao02Titulo h2 {
		font-size: 36px;
		color: var(--azul);
	}
	.sessao02Titulo p {
		max-width: 600px;
		margin: 15px auto;
		font-size: 17px;
		line-height: 125%;
		color: var(--cinza02);
	}
	.sessao02Conteudo{
		width: 100%;
		display: flex;
		gap: 20px;
		margin: 50px 0;
	}
	.sessao02ConteudoBg{
		width: 100%;
		display: flex;
		border-radius: 10px;
		background-size: cover;
		background-position: center;
		background-image: url(../img/background02.webp);
		box-shadow: 0 0 10px var(--bege01E);
		transition: ease 0.3s;
	}
	.sessao02ConteudoBg:hover{
		transform: translateY(-10px);
		box-shadow: 0 0 20px var(--bege02);
	}
	.sessao02ConteudoBackground{
		width: 100%;
		padding: 40px 20px;
		border-radius: 10px;
		background-image: linear-gradient(45deg, var(--bege01), #EBE7E1CC);
	}
	.sessao02ConteudoIcone{
		width: 45px;
		height: 45px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 10px;
		margin: 0 0 20px;
		background-color: var(--azul);
	}
	.sessao02ConteudoIcone img{
		width: 25px;
	}
	.sessao02ConteudoBg h3 {
		font-size: 18px;
		margin: 0 0 10px;
		color: var(--azul);
	}
	.sessao02ConteudoBg p {
		color: var(--pretoE);
		line-height: 130%;
	}
	.sessao02Cta{
		width: 100%;
		display: flex;
		text-align: center;
		justify-content: center;
	}

/*SESSAO03*/
	.sessao03{
		padding: 75px 0;
		background-color: var(--bege01);
	}
	.sessao03Titulo{
		text-align: center;
	}
	.sessao03Titulo h2 {
		font-size: 36px;
		color: var(--azul);
	}
	.sessao03Titulo p {
		max-width: 600px;
		margin: 15px auto;
		font-size: 17px;
		line-height: 125%;
		color: var(--cinza02);
	}
	.sessao03Slide{
		width: 100%;
		height: 450px;
		display: flex;
		gap: 20px;
		margin: 50px 0;
	}
	.sessao03SlideBg{
		margin: 10px;
		width: 100%;
		overflow: hidden;
		border-radius: 10px;
		border: 1px solid var(--bege02);
		transition: ease 0.3s;
	}
	.sessao03SlideBg:hover{
		transform: scale(1.02);
	}
	.sessao03SlideBg img{
		width: 100%;
		transition: ease 0.5s;
	}
	.sessao03SlideBg:hover img{
		transform: scale(1.05);
	}
	.sessao03Cta{
		width: 100%;
		margin: 50px 0 0;
		display: flex;
		text-align: center;
		justify-content: center;
	}

/*SESSAO04*/
	.sessao04{
		padding: 0 0 75px;
		background-color: var(--bege01);
	}
	.sessao04Background{
		width: 100%;
		border-radius: 20px;		
		display: flex;
		overflow: hidden;
		background-image: url(../img/background01.webp);
	}
	.sessao04BackgroundBg{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		padding: 75px 150px;
		background-color: var(--azulE);
	}
	.sessao04BackgroundBg h2{
		font-size: 36px;
		text-align: center;
		color: var(--bege01);
	}
	.sessao04BackgroundBg p:first-of-type{
		max-width: 600px;
		margin: 10px auto 50px;
		font-size: 18px;
		letter-spacing: 1px;
		text-align: center;
		letter-spacing: 0;
		color: var(--bege01);
	}
	.sessao04BackgroundBg p:last-of-type{
		max-width: 600px;
		margin: 50px auto 0;
		font-size: 14px;
		text-align: center;
		letter-spacing: 0;
		color: var(--branco01E);
	}
	
/*WHATSAPP*/
	.whatsapp{
		width: 70px;
		height: 70px;
		border-radius: 100px;
		position: fixed;
		z-index: 2;
		bottom:20px;
		right: 20px;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		background-color: green;
	}
	.whatsapp img{
		width: 30px;
		margin: 3px -2px 0 0;
	}

/*FOOTER*/
	footer{
		width: 100%;
		position: relative;
		padding: 50px 0;
		background-color: var(--branco01);
	}
	footer .container{
		gap: 50px;
	}
	.footerMarca{
		width: auto;
	}	
	.footerMarca img{
		width: 220px;
	}
	.footerDados{
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 20px;
	}
	.footerDadosBg{
		display: flex;
		gap: 10px;
		align-items: center;
	}
	.footerDadosBg02{
		width: 40px;
		height: 40px;
		display: flex;
		align-items: center;
		border-radius: 50px;
		background-color: var(--vermelho);
	}
	.footerDadosBg img{
		width: 20px;
		height: 20px;
		padding: 10px;
		border-radius: 50px;
		background-color: var(--azul);
	}
	.footerDadosBg02 img{
		width: 20px;
		height: 20px;
		padding: 10px;
		filter: grayscale(1) brightness(10);
	}
	.footerDadosBg p{
		font-size: 12px;
		text-transform: uppercase;
		white-space: nowrap;
		color: var(--cinza02);
	}
	.footerDadosBg p span{
		font-size: 16px;
		line-height: 100%;
		font-weight: bold;
		color: var(--cinza02);
	}
	.footerAssinatura{
		width: 100%;
		margin: 25px 0 0;
		padding: 25px 0 0;
		border-top: 1px solid #0001;
	}
	.footerAssinatura p{
		font-size: 12px;
		text-align: center;
		color: var(--cinza02);
	}

/*POPUP*/
	.popupBackground{
		width: 100%;
		height: 100%;
		position: fixed;
		z-index: 999;
		opacity: 0;
		top: 0;
		left: 0;
		pointer-events: none;
		transition: opacity 0.3s ease;
		background-color: var(--pretoE);
	}
	.popupBackground.active {
		opacity: 1;
		pointer-events: auto;
	}
	.popupBg {
		width: 90%;
		max-width: 650px;
		max-height: 80vh;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		border-radius: 16px;
		padding: 35px;
		box-shadow: 0 20px 40px var(--pretoE);
		overflow-y: auto;		
		border: 1px solid var(--pretoE);
		background-color: var(--azul);
	}
	.popupFechar {
		position: absolute;
		top: 20px;
		right: 20px;
		background: none;
		border: none;
		font-size: 24px;
		cursor: pointer;
		transition: color 0.2s ease;
		color: var(--bege02);
	}
	.popupFechar:hover {
		color: var(--bege01);
	}
	.popupProgresso {
		margin: 0 0 30px;
	}
	.popupProgressoTexto{
		font-size: 12px;
		text-transform: uppercase;
		letter-spacing: 1px;
		margin-bottom: 10px;
		display: block;
		color: var(--bege02);
	}
	.popupProgressoLinha{
		width: 100%;
		height: 5px;
		border-radius: 10px;
		overflow: hidden;
		background-color: var(--pretoE);
	}
	.popupProgressoLinhaPreenchida{
		width: 20%;
		height: 100%;
		transition: width 0.3s ease;
		background-color: var(--vermelho);
	}
	.popupEtapas {
		display: none;
	}
	.popupEtapas.active {
		display: block;
	}
	.popupEtapas h3 {
		margin: 0 0 15px;
		font-size: 20px;
		color: var(--branco02);
	}
	.popupEtapas p {
		margin: 10px 0;
		font-size: 14px;
		font-style: italic;
		line-height: 150%;
		color: var(--bege02);
	}
	.popupEtapasConteudoForm{
		width: 100%;
		margin: 10px 0 0;
		display: flex;
		flex-wrap: wrap;
	}
	.popupEtapasConteudoForm label {
		font-size: 16px;
		margin: 0 0 10px;
		color: var(--branco01);
	}
	.popupEtapasInput{
		width:auto; 
		padding:15px; 
		background:var(--pretoE); 
		border:1px solid var(--bege02); 
		border-radius:10px;
		color:#fff;
		font-size:15px;
		outline:none;
	}
	.popupEtapasConteudo{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		margin: 0 0 25px;
	}
	.popupEtapasConteudoItens{
		width: 30%;
		margin: 1.33%;
		display: flex;
		flex-wrap: wrap;
	}
	.popupEtapasConteudoItens img{
		width: 100%;
		height: auto;
		border-radius: 10px 10px 0 0;
	}
	.popupEtapasConteudoDescricao {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 15px 0;
		min-height: 40px;
		cursor: pointer;
		transition: all 0.2s ease;
		position: relative;
		border-radius: 0 0 10px 10px;
		background-color: var(--pretoE);
	}
	.popupEtapasConteudoDescricao:hover {
		background-color: var(--bege02);
	}
	.popupEtapasConteudoDescricao.selected {
		background-color: var(--vermelho);
	}
	.popupEtapasConteudoDescricao span{
		font-size: 14px;
		text-align: center;
		font-weight: 600;
		color: var(--bege01);
	}
	.popupEtapasConteudoDescricao:hover span{
		color: var(--azul);
	}
	.popupEtapasConteudoDescricao.selected:hover span{
		color: var(--bege01);
	}
	.popupZoomBackground{
		width: 100%;
		height: 100%;
		display: none;
		position: fixed; 
		top: 0;
		left: 0; 
		background-color: rgba(9, 11, 15, 0.95); /* Fundo escuro cobrindo a tela inteira */
		z-index: 99999; /* Força ele a ficar por cima da caixa do primeiro popup */
		align-items: center;
		justify-content: center;
		padding: 15px;
		box-sizing: border-box;
	}
	.popupZoomBg{
		width: 100%;
		max-width: 800px; /* Alargado para o infográfico ler bem */
		height: auto; /* Deixa a caixa crescer ou encolher conforme a imagem */
		max-height: 90vh; /* Proteção para a caixa não sumir da tela */
		border-radius: 10px;
		padding: 35px 20px 20px 20px; /* Mais espaço no topo para o botão fechar */
		position: relative;
		background-color: var(--azul);
		border: 1px solid var(--bege02); 
		box-sizing: border-box;		
	}
	.popupZoomBg button {
		position: fixed; !important; 
		top: 15px !important; 
		right: 15px !important; 
		background: rgba(15, 17, 21, 0.6) !important; /* Um fundo escuro sutil para dar contraste se a imagem for clara por trás */
		border: none !important; 
		color: var(--bege02) !important; 
		font-size: 28px !important; 
		cursor: pointer !important;
		z-index: 99999 !important; /* Força o botão a ficar no topo de todas as camadas */
		width: 40px;
		height: 40px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 1;
		transition: background 0.2s ease;
	}
	.popupZoomBg button:hover {
		background: rgba(15, 17, 21, 0.9) !important;
		color: var(--bege01) !important;
	}
	#imgZoomElement {
		width: 100%;
		height: auto;
		max-height: 50vh; /* O segredo: limita a altura da imagem para caber na tela sem cortar */
		object-fit: contain;
		border-radius: 6px;
		display: block;
		margin: 0 auto;
	}
	.popupEtapasConteudoAvisos{
		margin0:15px 0 0;
	}
	.popupEtapasConteudoAvisos span{
		display:block;
		font-size:12px;
		color:var(--vermelho);
		font-weight:600;
	}
	.popupEtapasResumo {
		border-radius: 10px;
		padding: 20px;
		margin: 25px 0;
		border: 1px solid var(--bege02);
		background-color: var(--pretoE);
	}
	.popupEtapasResumoBg {
		margin: 0 0 10px;
		font-size: 14px;
		padding: 0 0 10px;
		border-bottom: 1px solid var(--azul);
		color: var(--bege01);
	}
	.popupEtapasResumoBg:last-child {
		margin: 0;
		padding: 0;
		border: none;
	}
	.popupEtapasResumoBg strong {
		float: right;
		color: var(--branco02);
	}
	.popupEtapasResumoSubmit{
		width: 100%;
		margin: 15px 0 0;
		text-align: center;
	}
	.popupEtapasResumoSubmit button{
		width:100%; 
		padding: 15px;
		border: none;
		border-radius: 5px;
		box-shadow:0 5px 15px var(--vermelho);
		font-weight: bold;
		text-transform: uppercase;
		color:var(--branco01); 
		background-color:var(--vermelho); 
	}
	.popupNavegador {
		width: 100%;
		display: table;
		margin-top: 25px;
	}
	.popupNavegadorEsquerda {
		display: table-cell;
		text-align: left;
	}
	.popupNavegadorDireita {
		display: table-cell;
		text-align: right;
	}
	.btn-secondary {
		padding: 10px 25px;
		border-radius: 5px;
		cursor: pointer;
		border: 1px solid var(--bege02);
		color: var(--bege02);
		background: none;
		font-size: 14px;
		font-weight: 600;
		transition: all 0.2s ease;
	}
	.btn-secondary:hover {
		border: 1px solid var(--bege01);
		color: var(--branco01);
	}
	.btn-next {
		background-color: var(--bege02);
		color: var(--azul);
		border: none;
		padding: 10px 25px;
		border-radius: 5px;
		cursor: pointer;
		font-size: 14px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.5px;
		transition: all 0.2s ease;
	}
	.btn-next:hover {
		background-color: var(--bege01);
	}
	.btn-next:disabled {
		background-color: var(--preto);
		color: var(--bege02);
		cursor: not-allowed;
	}
	.popupEtapas input[type="number"],
	.popupEtapas input[type="email"],
	.popupEtapas input[type="tel"] {
		width: 100%;
		padding: 14px;
		background-color: var(--pretoE);
		border: none;
		border-radius: 8px;
		color: #ffffff;
		font-size: 15px;
		outline: none;
		transition: border-color 0.2s ease;
	}
	.popupEtapas input[type="number"]:focus,
	.popupEtapas input[type="email"]:focus,
	.popupEtapas input[type="tel"]:focus {
		border-color: 1px solid var(--bege01);
	}
	.link-exemplo-medida {
		color: var(--vermelho);
		text-decoration: underline;
		cursor: pointer;
		font-size: 13px;
		margin-left: 5px;
		display: inline-block;
	}
	.link-exemplo-medida:hover {
		color: #fff;
	}

	/* Customização do Campo de Upload de Ficheiro */
	.popupEtapas input[type="file"] {
		display: block;
		width: 100%;
		padding: 12px;
		background-color: rgba(255, 255, 255, 0.02);
		border: 1px dashed #2a313d;
		border-radius: 8px;
		color: #94a3b8;
		cursor: pointer;
		font-size: 13px;
	}

	.popupEtapas input[type="file"]::-webkit-file-upload-button {
		background-color: #2a313d;
		border: none;
		border-radius: 4px;
		color: #f8fafc;
		padding: 6px 12px;
		margin-right: 10px;
		font-weight: 600;
		cursor: pointer;
		text-transform: uppercase;
		font-size: 11px;
	}

	.popupEtapas input[type="file"]::-webkit-file-upload-button:hover {
		background-color: rgba(255, 255, 255, 0.2);
	}

	/* Remove setas padrão dos inputs numéricos nativos */
	input[type=number]::-webkit-inner-spin-button, 
	input[type=number]::-webkit-outer-spin-button { 
		-webkit-appearance: none; 
		margin: 0; 
	}
	input[type=number] { 
		-moz-appearance: textfield; 
	}

/*COOKIES*/
	.cookies{
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		z-index: 9999;
		background-color: #0003;
	}
	.cookies .container{
		display: flex;
		justify-content: flex-end;
	}
	.cookiesAviso{
		width: 100%;
		max-width: 300px;
		position: fixed;
		bottom: 0px;
		padding: 20px 0;
		border-radius: 10px 10px 0 0;
		background-color: #FFF;
	}
	.cookiesTexto{
		width: 100%;
		margin: 0 0 20px;
	}
	.cookiesTexto p{
		font-size: 14px;
		text-align: center;
		line-height: 125%;
		margin: 0 20px;
		color: #999;
	}
	.cookiesBotoes{
		width: 100%;
		display: flex;
		justify-content: center;
		margin: 0 0 10px;
	}
	.cookiesBotoes p{
		font-size: 10px;
		font-weight: bold;
		text-align: center;
		text-transform: uppercase;
		margin: 0 10px;
		color: #555;
	}
	.cookiesBotoes p:nth-child(1){
		padding: 10px 20px;
		border-radius: 100px;
		border: 1px solid #555;
		cursor: pointer;
	}
	.cookiesBotoes p:nth-child(1):hover{
		background-color: #555;
		color: #FFF;
	}
	.cookiesBotoes p:nth-child(2){
		font-weight: bold;
		padding: 10px 30px;
		border-radius: 100px;
		border: 1px solid #CCC;
		cursor: pointer;
		color: #FFF;
		background-color: #296;
	}
	.cookiesBotoes p:nth-child(2):hover{
		background-color: #555;
	}
	.cookiesPopUp{
		width: 100%;
		height: 100vh;
		position: fixed;
		top: 0px;
		z-index: 9999;
		background-color: #000C;
		display: none;
	}
	.cookiesPopUp .container{
		height: 100%;
		align-items: center;
		justify-content: center;
	}
	.cookiesPopUpConteudo{
		max-width: 500px;
		align-items: center;
		position: relative;
		background-color: #FFF;
	}
	.cookiesPopUpFechar{
		width: 40px;
		height: 40px;
		border-radius: 40px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: -20px;
		right: -20px;
		cursor: pointer;
		background-color: #FFF;
	}
	.cookiesPopUpFechar p{
		font-size: 16px;
		font-weight: bold;
		color: #000;
	}
	.cookiesPopUpTexto{
		width: auto;
		max-height: 500px;
		padding: 25px;
		overflow: auto;
	}
	.cookiesPopUpTexto h2{
		font-size: 24px;
		padding: 0 0 25px;
		border-bottom: 1px solid #EEE;
	}
	.cookiesPopUpTexto h3{
		margin: 25px 0 10px;
		font-size: 20px;
	}
	.cookiesPopUpTexto p{
		margin: 0 0 10px;
		color: #555;
	}

/*ANIMACAO*/
	.animacao01,
	.animacao02,
	.animacao03,
	.animacao04,
	.animacao05,
	.animacao06,
	.animacao07,
	.animacao08,
	.animacao09,
	.animacao10,
	.animacao11,
	.animacao12,
	.animacao13,
	.animacao14,
	.animacao15,
	.animacao16{
		opacity: 0;
	}
	.animacaoDelay0250{
		animation-delay: 0.25s;
	}
	.animacaoDelay0500{
		animation-delay: 0.5s;
	}
	.animacaoDelay0750{
		animation-delay: 0.75s;
	}
	.animacaoDelay1000{
		animation-delay: 1.0s;
	}
	.animacaoDelay1250{
		animation-delay: 1.25s;
	}
	.animacaoDelay1500{
		animation-delay: 1.5s;
	}
	.animacaoDelay1750{
		animation-delay: 1.75s;
	}
	.animacaoDelay2000{
		animation-delay: 2.0s;
	}
	.animacaoDelay2250{
		animation-delay: 2.25s;
	}
	.animacaoDelay2500{
		animation-delay: 2.5s;
	}
	.animacaoDelay2750{
		animation-delay: 2.75s;
	}
	.animacaoDelay3000{
		animation-delay: 3.0s;
	}


@media screen and (max-width:767px){
	.flex{
		flex-wrap: wrap;
	}

	/*CTA*/
		.ctaBtn{
			width: 100%;
		}

	/*HEADER*/
		header .container{
			flex-wrap: nowrap;
		}
		.headerMarca{
			width: 50%;
		}
		.headerMarca img{
			width: 100%;
			height: auto;
		}
		.headerRSocial{
			width: 25%;
			justify-content: flex-end;
		}		
		
	/*SESSAO01*/
		.sessao01Background{
			padding: 50px 0;
		}
		.sessao01 .container{
			gap: 50px;
			display: flex;
		}
		.sessao01Info{
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
		}		
		.sessao01Info h1 {
			width: 100%;
			font-size: 42px;
			text-align: center;
		}
		.sessao01Info p{
			text-align: center;
		}
		.sessao01Imagem{
			min-width: 100%;
			height: auto;
		}

	/*SESSAO02*/
		.sessao02{
			padding: 50px 0;
		}
		.sessao02Conteudo{
			flex-wrap: wrap;
			margin: 25px 0;
		}

	/*SESSAO03*/
		.sessao03{
			padding: 50px 0;
		}
		
	/*SESSAO04*/
		.sessao04{
			margin: -50px 0 0;
			padding: 0 0 50px;
		}
		.sessao04BackgroundBg{
			padding: 50px 25px;
		}

	/*FOOTER*/
		footer .container{
			gap: 25px;
		}
		.footerMarca{
			width: 100%;
			text-align: center;
		}	
		.footerMarca img{
			width: 300px;
		}
		.footerDados{
			flex-wrap: wrap;
			justify-content: center;
		}
		.footerDadosBg{
			width: 100%;
		}	

	/*POPUP*/		
		.popupEtapasConteudoItens{
			width: 48%;
			margin: 1%;
			display: flex;
			flex-wrap: wrap;
		}
		.popupEtapasConteudoItens img{
			width: 100%;
			height: auto;
			border-radius: 10px 10px 0 0;
		}
		.popupEtapasConteudoDescricao {
			width: 100%;
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 15px 0;
			min-height: 40px;
			cursor: pointer;
			transition: all 0.2s ease;
			position: relative;
			border-radius: 0 0 10px 10px;
			background-color: var(--pretoE);
		}
		.popupEtapasConteudoDescricao:hover {
			background-color: var(--bege02);
		}
		.popupEtapasConteudoDescricao.selected {
			background-color: var(--vermelho);
		}
		.popupEtapasConteudoDescricao span{
			font-size: 14px;
			text-align: center;
			font-weight: 600;
			color: var(--bege01);
		}
		.popupEtapasConteudoDescricao:hover span{
			color: var(--azul);
		}
		.popupEtapasConteudoDescricao.selected:hover span{
			color: var(--bege01);
		}
		.popupZoomBackground{
			width: 100%;
			height: 100%;
			display: none;
			position: fixed; 
			top: 0;
			left: 0; 
			background-color: rgba(9, 11, 15, 0.95); /* Fundo escuro cobrindo a tela inteira */
			z-index: 99999; /* Força ele a ficar por cima da caixa do primeiro popup */
			align-items: center;
			justify-content: center;
			padding: 15px;
			box-sizing: border-box;
		}
		.popupZoomBg{
			width: 100%;
			max-width: 800px; /* Alargado para o infográfico ler bem */
			height: auto; /* Deixa a caixa crescer ou encolher conforme a imagem */
			max-height: 90vh; /* Proteção para a caixa não sumir da tela */
			border-radius: 10px;
			padding: 35px 20px 20px 20px; /* Mais espaço no topo para o botão fechar */
			position: relative;
			background-color: var(--azul);
			border: 1px solid var(--bege02); 
			box-sizing: border-box;		
		}
		.popupZoomBg button {
			position: fixed; !important; 
			top: 15px !important; 
			right: 15px !important; 
			background: rgba(15, 17, 21, 0.6) !important; /* Um fundo escuro sutil para dar contraste se a imagem for clara por trás */
			border: none !important; 
			color: var(--bege02) !important; 
			font-size: 28px !important; 
			cursor: pointer !important;
			z-index: 99999 !important; /* Força o botão a ficar no topo de todas as camadas */
			width: 40px;
			height: 40px;
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			line-height: 1;
			transition: background 0.2s ease;
		}
		.popupZoomBg button:hover {
			background: rgba(15, 17, 21, 0.9) !important;
			color: var(--bege01) !important;
		}
		#imgZoomElement {
			width: 100%;
			height: auto;
			max-height: 50vh; /* O segredo: limita a altura da imagem para caber na tela sem cortar */
			object-fit: contain;
			border-radius: 6px;
			display: block;
			margin: 0 auto;
		}
		.popupEtapasConteudoAvisos{
			margin0:15px 0 0;
		}
		.popupEtapasConteudoAvisos span{
			display:block;
			font-size:12px;
			color:var(--vermelho);
			font-weight:600;
		}
		.popupEtapasResumo {
			border-radius: 10px;
			padding: 20px;
			margin: 25px 0;
			border: 1px solid var(--bege02);
			background-color: var(--pretoE);
		}
		.popupEtapasResumoBg {
			margin: 0 0 10px;
			font-size: 14px;
			padding: 0 0 10px;
			border-bottom: 1px solid var(--azul);
			color: var(--bege01);
		}
		.popupEtapasResumoBg:last-child {
			margin: 0;
			padding: 0;
			border: none;
		}
		.popupEtapasResumoBg strong {
			float: right;
			color: var(--branco02);
		}
		.popupEtapasResumoSubmit{
			width: 100%;
			margin: 15px 0 0;
			text-align: center;
		}
		.popupEtapasResumoSubmit button{
			width:100%; 
			padding: 15px;
			border: none;
			border-radius: 5px;
			box-shadow:0 5px 15px var(--vermelho);
			font-weight: bold;
			text-transform: uppercase;
			color:var(--branco01); 
			background-color:var(--vermelho); 
		}
		.popupNavegador {
			width: 100%;
			display: table;
			margin-top: 25px;
		}
		.popupNavegadorEsquerda {
			display: table-cell;
			text-align: left;
		}
		.popupNavegadorDireita {
			display: table-cell;
			text-align: right;
		}
		.btn-secondary {
			padding: 10px 25px;
			border-radius: 5px;
			cursor: pointer;
			border: 1px solid var(--bege02);
			color: var(--bege02);
			background: none;
			font-size: 14px;
			font-weight: 600;
			transition: all 0.2s ease;
		}
		.btn-secondary:hover {
			border: 1px solid var(--bege01);
			color: var(--branco01);
		}
		.btn-next {
			background-color: var(--bege02);
			color: var(--azul);
			border: none;
			padding: 10px 25px;
			border-radius: 5px;
			cursor: pointer;
			font-size: 14px;
			font-weight: 700;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			transition: all 0.2s ease;
		}
		.btn-next:hover {
			background-color: var(--bege01);
		}
		.btn-next:disabled {
			background-color: var(--preto);
			color: var(--bege02);
			cursor: not-allowed;
		}
		.popupEtapas input[type="number"],
		.popupEtapas input[type="email"],
		.popupEtapas input[type="tel"] {
			width: 100%;
			padding: 14px;
			background-color: var(--pretoE);
			border: none;
			border-radius: 8px;
			color: #ffffff;
			font-size: 15px;
			outline: none;
			transition: border-color 0.2s ease;
		}
		.popupEtapas input[type="number"]:focus,
		.popupEtapas input[type="email"]:focus,
		.popupEtapas input[type="tel"]:focus {
			border-color: 1px solid var(--bege01);
		}
		.link-exemplo-medida {
			color: var(--vermelho);
			text-decoration: underline;
			cursor: pointer;
			font-size: 13px;
			margin-left: 5px;
			display: inline-block;
		}
		.link-exemplo-medida:hover {
			color: #fff;
		}

		/* Customização do Campo de Upload de Ficheiro */
		.popupEtapas input[type="file"] {
			display: block;
			width: 100%;
			padding: 12px;
			background-color: rgba(255, 255, 255, 0.02);
			border: 1px dashed #2a313d;
			border-radius: 8px;
			color: #94a3b8;
			cursor: pointer;
			font-size: 13px;
		}

		.popupEtapas input[type="file"]::-webkit-file-upload-button {
			background-color: #2a313d;
			border: none;
			border-radius: 4px;
			color: #f8fafc;
			padding: 6px 12px;
			margin-right: 10px;
			font-weight: 600;
			cursor: pointer;
			text-transform: uppercase;
			font-size: 11px;
		}

		.popupEtapas input[type="file"]::-webkit-file-upload-button:hover {
			background-color: rgba(255, 255, 255, 0.2);
		}

		/* Remove setas padrão dos inputs numéricos nativos */
		input[type=number]::-webkit-inner-spin-button, 
		input[type=number]::-webkit-outer-spin-button { 
			-webkit-appearance: none; 
			margin: 0; 
		}
		input[type=number] { 
			-moz-appearance: textfield; 
		}

}