:root {
	--tooltip-bg: rgba(00, 101, 50, 0.90);
	--tooltip-color: #fff;
	--tooltip-padding: 10px 15px;
	--tooltip-radius: 8px;
	--tooltip-font-size: 0.95rem;
	--tooltip-max-width: 18rem;
	--tooltip-gap: 10px;
	/* gap between target and tooltip */
	--tooltip-arrow-size: 8px;
	--transition-time: 180ms;
	
	--cor-principal: #095;
	--cor-hover: #0D9;
	--radius: 24px;
}

* {
	font-family: "TASA Explorer", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	box-sizing: border-box;
}

body {
	font-family: Arial, sans-serif;
	margin: 0;
	padding: 0;
	color: #333;
	line-height: 1.6;
}

header {
	position: absolute;
	width: 100%;
	top: 0;
	height: 90vh;
	color: white;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 0 20px 40px;
}

header h1 {
	width: 26rem;
	background: rgba(255, 255, 255, .3);
	margin: 0;
	padding: 2rem 4rem;
	border-radius: calc(var(--radius) * 2);
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	backdrop-filter: blur(10px);
}

header h2 {
	font-size: 2.8rem;
	margin: 8rem 4rem 0;
	line-height: 3rem;
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.6);
	font-weight: 800;
}

header p {
	font-size: 1.5rem;
	margin: 0 4rem 4rem;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
}

.whatsapp {
	width: 100%;
	margin-top: 3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.whatsapp > span {
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
	font-size: 1.5rem;
	color: white;
}

.whatsapp > a {
	width: 28rem;
	background: var(--cor-principal);
	display: flex;
	gap: 2rem;
	justify-content: center;
	align-items: center;
	color: white;
	font-size: 1.3rem;
	padding: 14px 28px;
	text-decoration: none;
	text-wrap: nowrap;
	border-radius: var(--radius);
	font-weight: bold;
	transition: 0.3s;
}

.whatsapp img {
	max-height: 3rem;
}

.whatsapp a:hover {
	background: var(--cor-hover);
}



/* SECTIONS */

section {
	/* width: 100vw; */
	padding: 60px 0;
}

section h2 {
	text-align: center;
	margin-bottom: 1.2rem;
	color: var(--cor-principal);
	font-weight: 800;
	font-size: 2rem;
}

section p {
	text-align: center;
	font-size: 1.1rem;
	max-width: 900px;
	margin: 0 auto 2rem;
}

.secao-diferenciais {
	background: #c5b39d url('riviera3-2.jpg') no-repeat center center/cover;
	background-blend-mode: multiply;
	padding-left: 20%;
	padding-right: 20%;
}

.secao-diferenciais h2 {
	color: white;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
}

.diferenciais {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
	text-align: center;
	justify-content: center;
	align-items: center;
	margin-top: 2rem;
}

.diferenciais div {
	display: flex;
	align-items: center;
	background: #f5f5f5;
	padding: 20px;
	width: 11rem;
	min-height: 6rem;
	border-radius: var(--radius);
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 1.2rem;
	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
}

.galeria {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	text-align: center;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.galeria li {
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 15rem;
	height: 10rem;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2);
	transition: transform 0.3s ease;
}
.galeria li:hover {
	transform: scale(1.02);
}

.galeria img {
	object-fit: cover;
	width: 100%;
	cursor: zoom-in;
}

.tour {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: #FB9 url(riviera3-7.jpg) no-repeat center center/cover;
	background-blend-mode: screen;
}

.tour > a {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 3rem;
	width: 600px;
	height: 450px;
	border-radius: 10px;
	overflow: hidden;
	border-radius: var(--radius);
	box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.2);
}

.tour img {
	height: 100%;
	object-fit: cover;
}

.cta {
	background: var(--cor-principal);
	color: white;
	text-align: center;
	padding: 5rem 4rem;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.cta h2 {
	margin-bottom: 20px;
	color: white;
}

.cta a {
	background: white;
	color: var(--cor-principal);
}

.cta a:hover {
	background: #f5f5f5;
}

#mapa {
	width: 100%;
}

.selos {
	padding: 2rem;
	text-align: center;
}

.selos img {
	max-width: 100%;
}

footer {
	background: #333;
	color: white;
	text-align: center;
	padding: 20px;
	font-size: 0.9rem;
}

/* MOBILE */

@media screen and (max-width: 768px) {
	.selos {
		display: none;
	}
	.tour > a {
		width: 320px;
		height: 240px;
	}
	header h2 {
		line-height: auto;
	}
	header p {
		margin-bottom: 1.5rem;
	}
	.whatsapp > a {
		width: 24rem;
	}
}

@media screen and (max-width: 460px) {
	.whatsapp > a {
		width: 24rem;
	}
	header h1 {
		width: 16rem;
		padding: 1.5rem 2rem 1rem;
		border-bottom-left-radius: var(--radius);
		border-bottom-right-radius: var(--radius);
	}
	header h2{
		margin-top: 4rem;
	}
	.whatsapp > a {
		width: 80vw;
		flex-wrap: wrap;
		gap: 0;
	}
}