html {
	scroll-behavior: smooth;
}

body {
	font-family: "Poppins", sans-serif !important;
}

section {
	padding: 80px 30px;
}

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

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

/* BOTÃO IR TOPO */
#btnArrowUp {
	background-color: #FFA726 !important;
	color: white !important;
	bottom: 20px;
	left: 20px;
	width: 50px;
	height: 50px;
	display: none;
	z-index: 99999999;
}

/* BOTÃO WPP */
#btnWhatsapp {
	bottom: 20px;
	right: 20px;
	width: 60px;
	height: 60px;
	display: flex;
	z-index: 99999999;
}

#btnWhatsapp img {
	object-fit: contain;
}

/* MENU */
.navbar {
	transition: background-color 0.3s ease;
}

.bg-dark-capa {
	background-color: rgba(33, 37, 41) !important;
}

.bg-dark-opacity {
	background-color: rgba(33, 37, 41, 0.8) !important;
}

.navbar-dark .navbar-nav .nav-link {
	color: rgba(255, 255, 255, 0.7) !important;
}

.navbar-dark .navbar-nav .nav-link.active {
	color: rgba(255, 206, 38) !important;
}

.navbar-dark .navbar-nav .nav-link:hover {
	color: rgba(255, 206, 38, 0.9) !important;
}

.nav-link {
	font-size: 17px;
	font-weight: 500;
}

.navbar-brand img {
	height: 30px;
}

.navbar-collapse .nav-item {
	text-align: center !important;
}

/* MENU BURGUER */
.navbar-toggler span {
	display: block;
	background-color: #4f4f4f;
	height: 3px;
	width: 25px;
	margin-top: 5px;
	margin-bottom: 5px;
	position: relative;
	left: 0;
	opacity: 1;
	transition: all 0.35s ease-out;
	transform-origin: center left;
}

.navbar-toggler span:nth-child(1) {
	transform: translate(0%, 0%) rotate(0deg);
}

.navbar-toggler span:nth-child(2) {
	opacity: 1;
}

.navbar-toggler span:nth-child(3) {
	transform: translate(0%, 0%) rotate(0deg);
}

.navbar-toggler span:nth-child(1) {
	margin-top: 0.3em;
}

.navbar-toggler:not(.collapsed) span:nth-child(1) {
	transform: translate(15%, -33%) rotate(45deg);
}

.navbar-toggler:not(.collapsed) span:nth-child(2) {
	opacity: 0;
}

.navbar-toggler:not(.collapsed) span:nth-child(3) {
	transform: translate(15%, 33%) rotate(-45deg);
}

/* CAPA */
.capa-pagina {
	background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)), url("../img/capa.jpg");
	background-size: cover;
	background-position: center;
	display: flex;
	justify-content: center;
	align-items: center;
	color: white;
	height: 100vh !important;
}

.capa-pagina div {
	text-align: center;
	padding: 50px;
}

.capa-pagina h1 {
	font-weight: 600;
	font-size: 35px;
	margin-bottom: 20px;
	line-height: 2.5rem !important;
}

.capa-pagina h3 {
	line-height: 2.2rem !important;
}

.capa-pagina .destaque {
	color: rgba(255, 206, 38, 0.9) !important;
}

/* SOBRE */
#sobre {
	height: fit-content;
	position: relative;
	width: 100%;
}

.img-sobre {
	object-fit: contain;
	height: 400px;
	display: none;
}

#sobre .titulo {
	font-weight: 600;
	text-align: center;
}

#sobre p {
	text-align: justify;
}

#sobre .efeito-brilho {
	position: relative;
	overflow: hidden;
}

#sobre .efeito-brilho.brilho-azul::after  {
	background: linear-gradient(120deg,
			transparent,
			rgb(22, 104, 177, 0.6),
			transparent);
	content: "";
	position: absolute;
	top: -50%;
	left: -150px;
	width: 70px;
	height: 200%;
	transform: rotate(25deg);
	transition: left 0.8s ease;
}

#sobre .efeito-brilho.brilho-amarelo::after  {
	background: linear-gradient(120deg,
			transparent,
			rgb(255, 167, 38, 0.6),
			transparent);
	content: "";
	position: absolute;
	top: -50%;
	left: -150px;
	width: 70px;
	height: 200%;
	transform: rotate(25deg);
	transition: left 0.8s ease;
}

#sobre .efeito-brilho.brilho-verde::after  {
	background: linear-gradient(120deg,
			transparent,
			rgb(57, 148, 60, 0.6),
			transparent);
	content: "";
	position: absolute;
	top: -50%;
	left: -150px;
	width: 70px;
	height: 200%;
	transform: rotate(25deg);
	transition: left 0.8s ease;
}

#sobre .efeito-brilho:hover::after {
	left: 130%;
}

#servicos .efeito-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	overflow: hidden;
	transform: rotate(180deg);
	background-image: linear-gradient(#6c757d 1%, white 1% ,#f8f9fa 98%) !important;
}

.efeito-img svg {
	width: 100%;
	display: block;
	border-bottom: 1px solid white;
}

.efeito-img g {
	fill:  #6c757d !important;
}

.divider-vertical {
	position: absolute;
	top: 10%;
	right: 0;
	width: 1px;
	height: 80%;
	background-color: rgba(0, 0, 0, 0.3);
	/* background: linear-gradient(180deg, var(--token-6c349557-7e9c-4eab-aed7-48c63943d20d, rgb(65, 84, 140)) 0%, rgba(65, 84, 140, 0.2) 100%); */
}

.divider-horizontal {
	width: 50%;
	height: 1px;
	background-color: rgba(0, 0, 0, 0.3);
	margin: 1.5rem auto;
}

/* SERVIÇO */
#servicos {
	height: fit-content;
	position: relative;
	width: 100%;
	padding: 17% 30px 80px 30px;
}

#servicos .titulo {
	font-weight: 600;
	position: relative;
	margin-bottom: 0.7rem;
	display: inline-block;
	text-align: center;
}

#servicos .titulo::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 50%;
	height: 2px;
	background-color: #fff;
	border-radius: 3px;
}

#servicos .card {
	color: black;
	height: 100%;
	text-align: center;
}

#servicos .card h5 {
	margin-top: 25px;
}

#servicos .card p {
	margin-top: 20px;
}

#servicos .card .icon-card {
	justify-content: center;
	display: flex;
	height: 70px;
}

#servicos .card .icon-card i {
	font-size: 45px;
	width: 65px !important;
	height: 65px !important;
	background-color: #FFA726;
	border-radius: 60px;
	margin-top: 25px;
}

#servicos .card-hover {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

#servicos .card-hover:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
}

#contato {
	height: fit-content;
	border-top: 4px solid #ffce26e6 !important;
}

#contato i {
	color: rgba(255, 206, 38, 0.902) !important;
	font-size: 35px;
}
#contato a {
	color: white !important;
	text-decoration: underline;
}
#contato .foto-contato {
	object-fit: contain;
	width: 100%;
	height: 350px;
}

footer {
	background-color: white;
	padding: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: rgb(46, 46, 46);
	font-size: 14px;
}

.copyright img {
	width: 100px;
	object-fit: contain;
	padding-bottom: 5px;
}

@media (min-width: 452px) {
}

/* // Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
	.navbar-brand img {
		height: 50px !important;
	}

	.capa-pagina h1 {
		font-size: 50px;
		margin-bottom: 15px;
		line-height: 4rem !important;
	}

	.img-sobre {
		object-fit: contain;
		height: 300px;
		display: block;
	}

	#sobre .titulo,
	#servicos .titulo {
		text-align: left;
	}
}

/* // Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	.capa-pagina h1 {
		font-size: 70px;
		margin-bottom: 20px;
		line-height: 5rem !important;
	}
}

/* // X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	#sobre, #contato, #servicos {
		min-height: 100vh !important;
	}
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {}