/*Estilo geral*/
*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: 'Poppins', sans-serif;
}

body{
	background-color: #faeacc;
	height: 100vh;
}
.center{
	text-align: center;
}
.interface {
	max-width: 1280px;
	margin: 0 auto;
}
.flex{
	display: flex;
}

.btn-contato a button{
	padding: 10px 40px;
	font-size: 18px;
	font-weight: 600;
	background-color: #430a05;
	border: 0;
	border-radius: 30px;
	cursor: pointer;
	color: #faeacc;
	transition: .02s;
}

button:hover, form .btn-enviar input[type=submit]:hover {
	box-shadow: 0px 0px 8px #430a05;
	transform: scale(1.05);
}
h2.titulo {
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	font-size: 38px;
	text-align: center;
}
h2.titulo span {
	color: #430a05;
}
h2 {color:#430a05;}

/* Estilo cabeçalho */
header{
	padding: 40px 4%;
}
header > .interface {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
header a {
	color: #6d3b63;
	text-decoration: none;
	display: inline-block;
	transition: .2s;
}
header nav.menu-desktop a:hover {
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	transform: scale(1.05);
}
header nav ul{
	list-style-type: none;
}

header nav.menu-desktop ul li{
	display: inline-block;
	padding: 0 40px;
}

/*Menu Mobile*/

.btn-abrir-menu i{
	color: #430a05;
	font-size: 40px;
	display: none;
}
.menu-mobile{
	background-color: #faeacc;
	height: 100vh;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 999999;
	width: 0%;
	overflow: hidden;
	transition: .2s;
}
.menu-mobile.abrir-menu{
	width: 70%;
}
.menu-mobile.abrir-menu ~ .overlay-menu{
	display: block;
}
.menu-mobile .btn-fechar{
	padding: 20px 5%;
}
.menu-mobile .btn-fechar i{
	color: #430a05;
	font-size: 30px;
}
.menu-mobile nav ul{
	text-align: right;
}
.menu-mobile nav ul li a{
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	font-size: 20px;
	font-weight: 300;
	padding: 20px 8%;
	display: block;
}
.menu-mobile nav ul li a:hover{
	background-color: #430a05;
	color: #faeacc;
}
.overlay-menu{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #430a05a7;
	z-index: 888888;
	display: none;
}
/*Estilo topo site*/
section.topo-do-site{
	padding: 40px 4%;
}
section.topo-do-site .flex{
	align-items: center;
	justify-content: center;
	gap: 90px;
}
.topo-do-site h1 {
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	font-size: 42px;
	line-height: 40px;
}
.topo-do-site .txt-topo-site h1 span {
	color: #430a05;
	font-size: 84px;
}
.topo-do-site .txt-topo-site p{
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	margin: 40px 0;
}
.topo-do-site .txt-topo-site p a{
	color: #6d3b63;
	margin: 40px 0;
	text-decoration: none;
	transition: .2s;
}
.topo-do-site .txt-topo-site p a:hover{
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	transform: scale(1.05);
}
.topo-do-site .img-topo-site img{ 
	position: relative;
	animation: flutuar 2s ease-in-out infinite alternate; /*flutuar por 2segundos do inicio ao fim suavemente*/
}
@keyframes flutuar{ /*flutuar de 0 a 30px*/
	0%{
		top: 0;
	}
	100%{
		top: 30px;
	}
}

/*Estilo especialidades*/
section.especialidades {
	padding: 40px 4%;
}
section.especialidades .flex{
	gap: 60px;
}
.especialidades .especialidades-box {
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	padding: 40px;
	border-radius: 20px;
	margin-top: 45px;
	transition: .2s;
}
.especialidades .especialidades-box:hover {
	transform: scale(1.05);
	box-shadow: 0 0 8px #b67c6b                                                                                                                                                                                                                                                                                                                     fff78;
}
.especialidades .especialidades-box i {
	font-size: 70px;
	color: #430a05;
}
.especialidades .especialidades-box h3 {
	font-size: 28px;
	margin: 15px 0;
}

/*Estilo Sobre*/
section.sobre{
	padding: 40px 4%;
}
section.sobre .flex{
	align-items: center;
	gap: 60px;
}
.sobre .txt-sobre{
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
}
.sobre .txt-sobre h2{
	font-size: 40px;
	line-height: 40px;
	margin-bottom: 30px;
}
.sobre .txt-sobre h2 span{
	color: #430a05;
	display: block;
}
.sobre .txt-sobre p{
	margin: 20px 0;
	text-align: justify;
}
.btn-social button{
	color: #faeacc;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	border: 0;
	background-color: #430a05;
	font-size: 20px;
	cursor: pointer;
	margin: 0 10px;
	transition: .2s;
}
/*Estilo Portifólio*/
section.portifolio{
	padding: 40px 4%;
	box-shadow: 0 0 15px 2px #b67c6b                                                                                                                                                                                                                                                                                                                     fff78;
}
section.portifolio .flex{
	justify-content: space-around;
	margin-top: 40px;
}
.img-port{
	width: 360px;
	height: 460px;
	background-color: #430a05;
	background-size: cover;
	background-position: 100% 0%;
	transition: 8s;
	cursor: pointer;
	border-radius: 40px;
	position: relative;
}
.img-port:hover{
	background-position: 100% 100%;
}
.overlay, .overlay a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #430a05b8;
	border-radius: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	font-weight: 600;
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	opacity: 0;
	transition: .5s;
	text-decoration: none;
}
.overlay:hover, .overlay a:hover {
	opacity: 1;
}

/*Estilo Formulário*/
section.formulario{
	padding: 40px 4%;
}
form {
	max-width: 500px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap: 10px;
	margin-top: 40px;
}
form input, form textarea {
	width: 100%;
	background-color: #6d3b6382;
	border: 0;
	outline: 0;
	padding: 20px 15px;
	border-radius: 15px;
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	font-size: 18px;
}
form textarea {
	resize: none;
	max-height: 200px;
}
form .btn-enviar{
	margin-top: 20px;
	text-align: center;
}
form .btn-enviar input[type=submit]{
	width: 120px;
	background-color: #430a05;
	color: #faeacc;
	font-weight: 700;
	cursor: pointer;
	transition: .2s;
}
/*Estilo Rodapé*/
footer {
	padding: 40px 4%;
	box-shadow: 0 0 15px 2px #b67c6b                                                                                                                                                                                                                                                                                                                     fff78;
}
footer .flex{
	justify-content: space-between;
}
footer .line-footer{
	padding: 20px 0;
}
.borda {
	border-top: 2px solid #430a05;
}
footer .line-footer p i{
	color: #430a05;
	font-size: 22px;
}
footer .line-footer p a{
	color: #b67c6b                                                                                                                                                                                                                                                                                                                     ;
	text-decoration: none;
}

/*Responsivo*/
/*Responsivo*/
@media screen and (max-width: 1028px){
	/*Geral*/
	.flex{
		flex-direction: column;
	}
	h2.titulo {
		font-size: 28px;
		line-height: 34px;
	}

	/*Topo do site – imagem acima do texto no mobile*/
	.topo-do-site .flex{
		flex-direction: column; /* antes estava column-reverse */
		gap: 40px;
	}
	.topo-do-site .img-topo-site{
		order: -1; /* força imagem vir antes do texto */
	}
	.topo-do-site .img-topo-site img{
		width: 100%;
		height: auto;
		display: block;
	}

	/*Menu*/
	.btn-abrir-menu i{
		display: block;
	}
	/*Cabeçalho*/
	.menu-desktop, .btn-contato {
		display: none;
	}
	
	/*Topo*/
	section.topo-do-site{
		padding: 20px 8%;
	}
	.topo-do-site h1{
		font-size: 30px;
	}
	
	/*Minhas especialidades*/
	section.especialidades{
		padding: 20px 8%;
	}
	.especialidades .especialidades-box h3 {
  		font-size: 18px;
	}
	/*Sobre*/
	section.sobre .flex{
		flex-direction: column-reverse;
	}
	section.sobre{
		padding: 20px 8%;
	}
	.sobre .txt-sobre h2{
		font-size: 30px;
		line-height: 35px;
		text-align: center;
	}
	.btn-social{
		text-align: center;
	}
	.img-sobre img{
		width: 100%;
	}
	/*Portifólio*/
	section.portifolio{
		padding: 20px 8%;
	}
	.img-port{
		width: 100%;
		max-width: 360px;
		margin: 0 auto;
	}
	section.portifolio .flex{
		gap: 40px;
	}
	/*Rodapé*/
	footer .flex{
		flex-direction: column;
		gap: 30px;
	}
	footer .line-footer{
		text-align: center;
	}
	.borda {
		margin-top: 25px;
	}
	footer .line-footer p i {
		font-size: 16px;
	}
}

/*carrosel*/
section.slide{
	margin: 0 auto;
	width: 100%;
	padding: 0 !important;
	overflow: hidden;
}
.slide-content{
	width: 500%;
	height: auto;
	display: flex;
}
.slide-content input, .img-mobile{
	display: none;
}
.slide-box{
	width: 20%;
	height: auto;
	position: relative;
	text-align: center;
	transition: 1s;
}
.slide-box img{
	width: 100%;
}
.nav-manual, .nav-auto{
	position: absolute;
	width: 100%;
	margin-top: 30%;
	text-align: center;
}
.nav-manual .manual-btn, .nav-auto div{
	width: 12px;
	height: 12px;
	display: inline-block;
	border: 1px solid #430a05;
	padding: 10px;
	border-radius: 50%;
	cursor: pointer;
	transition: .02s;
}
.nav-manual .manual-btn:not(:last-child), .nav-auto div:not(:last-child){
	margin-right: 5px;
}
.nav-manual .manual-btn:hover{
	background-color: #430a05;
}

#radio1:checked ~ .nav-auto .auto-btn1, 
#radio2:checked ~ .nav-auto .auto-btn2, 
#radio3:checked ~ .nav-auto .auto-btn3,
#radio4:checked ~ .nav-auto .auto-btn4,
#radio5:checked ~ .nav-auto .auto-btn5{
	background-color: #430a05;
}
#radio1:checked ~ .primeiro{
	margin-left: 0%;
}
#radio2:checked ~ .primeiro{
	margin-left: -20%;
}
#radio3:checked ~ .primeiro{
	margin-left: -40%;
}
#radio4:checked ~ .primeiro{
	margin-left: -60%;
}
#radio5:checked ~ .primeiro{
	margin-left: -80%;
}

@media screen and (max-width: 700px){
	.img-desktop{
		display: none;
	}
	.img-mobile{
		display: block;
	}
	.nav-auto, .nav-manual{
		margin-top: 103%;
	}
}

span.span-required{
	display: none;
	color: #e97f02;
}
