@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;700;800;900&display=swap');
body{
    font-family: 'Montserrat', sans-serif;
	color:#000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	background: #fff;
	font-size: 17px;
}
.off{
	display:none;
}
.on{
	display:block;
}
a,
a:hover{
	text-decoration: none;
}
.container-fluid{ padding: 0;}
.esconde{
    opacity: 0;
}
.visible{
    opacity: 1;
}
::selection {background-color:#33CC33; color:#fff;}
::-moz-selection{background-color:#33CC33; color:#fff;}

header{
	position: fixed;
	z-index: 100;
	width: 100%;
	background: #efefef;
	padding-bottom: 5px;
}
.logo img{
	width: 100%;
	height: auto;
    max-width: 160px;
    margin-top: 0px;
}
nav.menu{
	display: inline-block;
	margin-top: 40px;
}
nav.menu ul{
	padding: 0;
}
nav.menu ul li{
	list-style: none;
	display: inline-block;
	position: relative;
}
nav.menu ul li a{
	color: #000;
	text-transform: uppercase;
	font-size: 14px;
	padding: 10px 12px;
}
nav.menu ul li a:hover,
nav.menu ul li a.active{
	color: #ccc;
}
nav.menu ul li a.ctaPadrao{
	color: #fff;
	border-radius: 30px;
	padding: 10px 20px;
	border:1px solid #fff;
}
.menu_icon{
	display: none;
    float: right;
    background: #fff;
    padding: 7px 10px;
    text-transform: uppercase;
    color: #000;
    font-size: 21px;
    position: absolute;
    font-weight: 700;
    top: -70px;
    right: 10px;
    border: 1px solid #000;
}
.menu_icon:hover{
	cursor: pointer;
}
.menu_icon.active{
	background: #000;
	color: #fff;
}
.wfloat{
	position:fixed;
	width:60px;
	height:60px;
	bottom:40px;
	right:40px;
	background-color:#25d366;
	color:#FFF;
	border-radius:50px;
	text-align:center;
  font-size:30px;
	box-shadow: 2px 2px 3px #999;
  z-index:100;
}

.wmy-float{
	margin-top:16px;
}
.topo{
	background-image: url(images/fundo.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	height: 100vh;
	width: 100%;
	position: relative;
}
.semPadding{
	padding: 0;
}
.chamada h1{
	font-weight: 800;
	margin-top: 150px;
	font-size: 28px;
	letter-spacing: -2px;
}
.modelo img{
	width: 90%; 
	height: auto;
	margin-top: 25vh;
	left: 10%;
	position: relative;
}
.boxTopo{
	background: #fff;
	border-radius: 20px;
	padding: 50px 40px 20px 40px;
	box-shadow: 0px 0px 15px 0px rgba(88,88,88,0.1);
	position: relative;
	z-index: 5;
	display: inline-block;
	margin-top: 80px;
}
.simboloSaude{
	position: absolute;
	top: -60px;
}
#modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 10;
  display: none;
}

#modal-image {
  max-width: 80%;
  max-height: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 11;
  display: none;
}

#modal-caption {
  position: absolute;
  bottom: 10px;
  left: 10px;
  right: 10px;
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.8);
  color: #333;
  text-align: center;
  z-index: 12;
  display: none;
}

.simboloSaude img{
	width: 100%;
	height: auto;
	max-width: 140px;
}
.infoBoxTopo {
	display: block;
	margin-bottom: 15px;
}
.infoBoxTopo img{
	display: inline-block;
	max-width: 80px;
	width: 100%;
	height: auto;
} 
.infoBoxTopo h4{
	display: inline-block;
	font-size: 19px;
	font-weight: 400;
    vertical-align: middle;
	margin-left: 10px;
} 
.tarjagreen{
	width: 100%;
	height: auto;
	padding: 40px 0;
	position:absolute;
	bottom: 0;
	z-index: 4;
}
.tarjagreen p{
	color: #fff;
	line-height: 100%;
	font-weight: 700;
}

.servicos{
	position: relative;
	padding: 80px 0 200px 0;
}
.imgservicos{
	width: 70%;
	height: 90%;
	max-height: 650px;
	position: absolute;
	right: 0;
	top: 0;
	background-image: url(images/servicos.jpg);
	background-position: center right;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 0 0 0 30px;
}
.serviceBox{
	background: #ffffff;
	border-radius: 20px;
	-webkit-box-shadow: 0px 0px 50px -20px rgba(0,0,0,0.55);
	-moz-box-shadow: 0px 0px 50px -20px rgba(0,0,0,0.55);
	box-shadow: 0px 0px 50px -20px rgba(0,0,0,0.55);
	padding: 15px;
	text-align: center;
	margin: 25px auto 0 auto;
	z-index: 5;
	position: relative;
    height: 100px;
}
.serviceBox img{
	display: inline-block;
	width: auto;
	max-width: 25%;
	vertical-align: middle;
	height: 100%;
	max-height: 80px;
}
.serviceBox h3{
	font-size: 20px;
	font-weight: bold;
	display: inline-block;
	width: 73%;
	padding: 0;
	margin: 0;
	vertical-align: middle;
}
.numeros{
	padding: 70px 0;
	position: relative;
}
.numeros h3{
	color: #fff;
	font-weight: bold;
}
.numeros h2{
	color: #ffffff;
	font-weight: 900;
	font-size: 46px;
    padding: 0;
    margin-top: 20px;
	margin-bottom: 0;
}
.numeros h4{
	color: #fff;
	font-size: 14px;
    padding-top: 0;
    margin-top: 0;
}
img.imgresponsive{
	width: 100%;
	height: auto;
}
.marcas{
	padding: 70px 0;
	background:#ffffff;
	position: relative;
}
.marcas h3{
	font-weight: bold;
}
img.marca{
	width: 100%;
	height: auto;
	margin-bottom: 30px;
}
.estetico{
	padding: 70px 0;
	background:#efefef;
	position: relative;
}
.estetico h3{
	color: #000000;
	font-weight: bold;
}
.estetico p{
	color: ##204684;
}
.boxestet{
	border-radius: 20px;
	background-color: #ffffff;
	box-shadow: 0px 0px 50px -20px rgba(0,0,0,0.75);
	margin-top: 30px;
}
.boxestet h4{
	font-weight: bold;
	text-align: center;
	padding-top: 20px;
    font-size: 22px;
    height: 90px;
}
.boxestet p{
	text-align: center;
	color: #000000;
}
.boxestet img{
	width: 100%;
	height: auto;
	border-radius: 0 0 20px 20px;
}
.sobre{
	padding: 70px 0 0 0;
	position: relative;
	background:#1a1a1a;
	background: linear-gradient(180deg, rgba(256,256,256,1) 0%, rgba(256,256,256,1) 40%, rgba(26,26,26,1) 40%, rgba(26,26,26,1) 100%);
}
img.familia{
	width: 100%;
	height: auto;
	border-radius: 0 25px 0 0;
}
.sobre h3{
	color: #000000;
	font-weight: bold;
	margin:40px 0 60px 0;
}
.sobre p{
	color: #ffffff;
}
a.ctaHome{
	border-radius: 30px;
	color: #ffffff;
	height: 55px;
	padding: 15px 20px;
	text-transform: uppercase;
	position: relative;
	display: inline-block;
	text-align: center;
	font-size: 15px;
	margin-top: 20px;
}
a.ctaHome:hover{
	background-color: #ffffff;
}
.form-control{
	border-radius: 30px;
    border: none;
    height: 45px;
    padding: 10px 20px;
    margin: 0 10px;
}
.formsubmit{
	color: #fff;
	font-weight: bold;
}
.rodape{
	padding: 60px 0;
	color: #fff;
	text-align: center;
}
.rodape h4{
	text-transform: uppercase;
	color: #fff;
	font-weight: 700;
}
.rodape .menurodape a{
	display: block;
	color: #fff;
}
.rodape hr{
	width: 100%;
	border-color: #33CC33;
}
.rodape i{
	width: 30px;
    height: 30px;
    border-radius: 100%;
    background: #fff;
    text-align: center;
    padding: 6px 5px;
    margin-bottom: 12px;
}
.rodape b{
	font-weight: 900;
}
.social{
}
.social a {
	display: inline-block;
}
img.logorodape2{
	width: 100%;
	height: auto;
}
a.ctaRod{
	background-color: transparent;
	color: #fff;
	padding: 9px 5px;
	font-size: 15px;
	display: block;
	width: 100%;
	border-radius: 20px;
	border: 1px solid #fff;
	margin-bottom: 12px;
	text-align: center;
}
a.ctaRod:hover{
	background-color: #ffffff;
}
.qts{
	opacity: 0.2;
}
.elemento1{
	position: absolute;
	width: 20vw;
	left: 0;
	top: -500px;
	max-width: 280px;
}
.elemento2{
	position: absolute;
	width: 20vw;
	right: 30px;
	top: 0px;
	max-width: 100px;
}
.elemento3{
	position: absolute;
	width: 20vw;
	right: 60px;
	top: -140px;
	max-width: 120px;
}
.elemento4{
	position: absolute;
	width: 20vw;
	right: 0;
	top: -200px;
	max-width: 300px;
}
.elemento5{
	position: absolute;
	width: 20vw;
	left: 40px;
	top: 140px;
	max-width: 130px;
}
.elemento6{
	position: absolute;
	width: 20vw;
	left: 20px;
	top: 200px;
	max-width: 110px;
}
.elemento1 img,
.elemento2 img,
.elemento3 img,
.elemento4 img,
.elemento5 img,
.elemento6 img{
	width: 100%;
	height: auto;
}
.hiddenMobile{
	display: initial;
	visibility: visible;
}
.hiddenDesktop{
	display: none;
	visibility: hidden;
}
.interna{
	width: 100%;
	height: auto;
	min-height: 400px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.interna h1{
	font-weight: 900;
	font-size: 44px;
	text-align: center;
	position: relative;
	top: 200px;
}
.interna p{
	position: relative;
	text-align: center;
	top: 200px;
}
.institucional1 video {
  width: 100%;
  height: auto;
  padding: 0 0 30px 0;
}

.institucional1 video:focus{
  outline :none;
}
.institucional1{
	padding: 70px 0;
}
.institucional1 p{
	color: #fff;
}
.institucional1 h3{
	font-weight: 800;
	color: #fff;
}
.institucional1 h2{
	font-weight: 800;
	color: #fff;
	margin-top: 0;
	padding-top: 0;
	padding-bottom: 20px;
	font-size: 24px;
}
.institucional2{
	padding: 70px 0;
	background: #efefef;
}
.institucional2 p{
	color: #000;
}
.institucional2 h3{
	font-weight: 800;
}
.institucional2 h2{
	font-weight: 800;
	color: #000;
	margin-top: 0;
	padding-top: 0;
	padding-bottom: 20px;
	font-size: 24px;
}
textarea{
	resize: none;
	min-height: 150px;
}
.institucional2 .form-control{
	border-radius: 10px;
    border: none;
    height: 55px;
    padding: 10px 20px;
    margin: 5px 10px;
}
.institucional2 .formsubmit{
	color: #fff;
	font-weight: bold;
}
.institucional2 .formsubmit:hover{
	background: #fff;
}
.atalho{
	text-align: center;
}
.atalho i{
	font-size: 44px; 
	border-radius: 100%;
	border: 1px solid #ccc;
	display: block;
    width: 70px;
    height: 70px;
    padding-top: 12px;
    margin: 40px auto 20px auto;
}
.atalho b{
	columns: #000;
	font-size: 22px;
	font-weight: 900;
	display: block;
}
.assistserv{
	text-align: center;
	margin-bottom: 25px;
}
.assistserv h4{
	font-weight: 700;
	columns: #000
}
.assistserv img{
	width: 100%;
	height: auto;
	max-width: 40%;
}


.boxjeito{
	background: #fff;
	border-radius: 30px;
	padding: 40px;
	position: relative;
	text-align: center;
	margin: 20px 0;
	display: block;
}
.boxjeito img{
	width: 100%;
	height: auto;
	max-height: 100px;
}
.boxjeito h3{
	text-transform: uppercase;
	font-weight: 700;
	font-size: 24px;
}
.boxjeito p{
	color: #000;
	margin-top: 20px;
}


.painel{
	width: 100%;
	height: auto;

}
.areaAcesso{
	text-align: center;
	padding: 100px 0

}
.boxAcesso{
	background-color: #fff;
	border-radius: 20px;
	padding: 30px 20px;
	margin-top: 25vh;
}
.boxAcesso h2{
	font-size: 28px;
	font-weight: 900;
	text-align: center;
}
.areaAcessoPersonalizado{
	background-color: #fff;
	width: 100%;
	height: 100vh;
	position: relative;
}
.areaAcessoPersonalizado::after{
	content: "";
    width: 20px;
    height: 100vh;
    top: 0;
    position: absolute;
    right: -20px;
    background-color: rgba(0,0,0,0.2);
}
.areaAcessoPersonalizado img{
	max-width: 70%;
	left: 15%;
	height: auto;
	top: 25vh;
	position: relative;
}
.areaAcesso h6{
	color: #fff;
	text-align: center;
	margin-top: 50px;
}
.areaAcesso a{
	color: #fff;
    padding: 10px 30px;
    border: 1px solid #fff;
    border-radius: 20px;
    text-align: center;
    margin: 15px auto;
    display: inline-block;
}
.boxdiferencial{
	text-align: center;
	margin-top: 50px;
    background: #fff;
    padding: 10px 0;
    border-radius: 20px;
}
.boxdiferencial img{
	width: 100%;
	height: auto;
	border-radius: 20px;
}
.boxdiferencial h2{
	font-size: 110px;
	font-weight: bold;
	margin-top: 50px;
}
.boxdiferencial h2 span{
	font-size: 50px;
}
.boxdiferencial h4{
	margin-top: 20px;
	font-weight: bold;
}
.boxdiferencial p{

}

.bannertelemedicina img{
	width: 100%;
	height: auto;
	margin-bottom: 80px;
}

.tarjagreen,
nav.menu ul li a.ctaPadrao,
.numeros,
.institucional2 .formsubmit,
.institucional1,
.rodape,
.formsubmit,
a.ctaHome,
img.bannerlink{
	background: #03D069;
}

.boxdiferencial h4,
.boxdiferencial h2,
.marcas h3,
.boxjeito h3,
.institucional2 .formsubmit:hover,
.atalho i,
.institucional2 h3,
a.ctaRod:hover,
.rodape i,
a.ctaHome:hover,
.boxestet h4{
	color: #03D069;
}

.atalho i{
	border-color: #03D069;
}



/*		Responsive CSS 		*/
@media (max-width: 767px) {

	.hiddenDesktop{
		display: initial;
		visibility: visible;
	}
	.hiddenMobile{
		display: none;
		visibility: hidden;
	}

	.menu_icon{
		display: block;
	}
	nav{
		width: 100%;
		float: none;
		position: absolute;
		top: -30px;
		left: 0;
	
		z-index: 100;
	}
	nav.show{
		display: block;
	}
	nav.menu ul {
		background: #cecece;
	}
	nav.menu ul li{
		display: block;
	}
	nav.menu ul li:last-child a{
		border:none;
	}
	nav.menu ul li a{
		color: #000;
		text-transform: uppercase;
		padding: 15px 0px;
		border-bottom: 1px solid #fff;
		border-right: none;
		display: block;
		width: 100%;
		text-align: center;
	}
	nav.menu ul li a:hover{
		background: #efefef;
	}
	.modelo img{
		width: 100%;
		height: auto;
		left: 0;
	}
	.chamada h1 {
		margin-top: -20px;
		background: #fff;
		padding: 30px;
	}
	.topo{
		height: auto;
	}
	.boxTopo{
		margin-top: -10px;
	}
	.tarjagreen{
		position: relative;
	}
	.boxTopo{
		width: 100%;
		border-radius: 0;
	}
	.imgservicos{
		width: 100vw;
		height: 300px;
		max-height: 650px;
		position: relative;
		right: 0;
		top: 0;
		margin-top: 40px;
	}
	.semPaddingMob{
		padding: 0;
	}
	.elemento4 {
		position: absolute;
		width: 100vw;
		right: 0;
		top: -80px;
		max-width: 300px;
	}
	.marcas{
		padding-top: 200px;
	}
	.elemento5{
		top: 0px;
	}
	.elemento6{
		top: -80px;
	}
	.sobre h3{
		color: #fff;
	}
	.sobre {
		padding: 70px 0 70px 0;
		background: #1a1a1a;
	}
}

@media (min-width: 768px) and (max-width: 991px) {

	.menu_icon{
		display: block;
	}
	nav{
		width: 100%;
		float: none;
		position: absolute;
		top: -30px;
		left: 0;
		display: none !important;
		z-index: 100;
	}
	nav.show{
		display: block;
	}
	nav.menu ul {
		background: #cecece;
	}
	nav.menu ul li{
		display: block;
	}
	nav.menu ul li:last-child a{
		border:none;
	}
	nav.menu ul li a{
		color: #000;
		text-transform: uppercase;
		padding: 15px 0px;
		border-bottom: 1px solid #fff;
		border-right: none;
		display: block;
		width: 100%;
		text-align: center;
	}
	nav.menu ul li a:hover{
		background: #33CC33;
	}
	.btn-primary{
		margin-top: 20px;
		margin-left: 0;
	}
	.bloco{
		margin: 0;
		padding: 25px;
	}
	.moderaaparelho2 {
	    position: relative;
	    left: 15vw;
	    width: 200px;
	    height: 401px;
	    top: -50px;
	}
	.arte10 {
    	width: 146px;
    	height: 302px;
    	background-size: cover;
    	left: 40%;
    	position: relative;
    }
    .arte8{
    	display: none;
    }
	.classpadtopo {
	    padding-top: 40px;
	}
	.porque .container{
		background: #042b3e;
		height: auto;
		padding-bottom: 80px;
	}
	.moderaaparelho {
	    position: relative;
	    top: -10px;
	    left: 20vw;
	    width: 245px;
	    height: 297px;
	    background-size: cover;
	}
	.modera{
		height: auto;
		padding-bottom: 80px;
		padding-top: 50px;
	}
	.arte4{
		width: 150px;
		height: 115px;
		position: absolute;
		right: 10vw;
		top: 0vh;
		background-size: cover;
	}
	.arte0{
		width: 99px;
		height: 88px;
		position: absolute;
		right: 25vw;
		top: -30px;
		background-size: cover;
	}
	.padsepara {
    	padding-top: 20px;
    	width: 100%;
	}	
	.arte5 {
    	width: 120px;
    	height: 120px;
    	background-size: cover;
    }
    .sobre{
    	padding-top: 40px;
    	padding-bottom: 40px;
    }
    .arte6{
    	display: none;
    }
    img.logo{
    	width: 100%;
    	height: auto;
    }
    header .social{
    	display: none;
    }
    .arte1,
    .arte3{
    	display: none;
    }
    .arte2{
    	position: relative;
    	top: -50px;
    	right: 0;
    }
    .areamenu{
    	width: 100%;
		height: 100vh;
		position: fixed;
		top: 0;
		margin: 0;
		max-width: 100%;
		left: 0;
		z-index: 1001;
    }
    .fotoGrupo{
    	width: 90%;
    	min-height: 400px;
    }
    .form-control{
    	margin: 20px 0;
    }
    .rodape{
    	text-align: center;
    }
    img.logorodape2{
    	max-width: 60%;
    }
    .boxA1{
    	position: relative;
    	left: 0;
    	border:none;
    	top: auto;
    	padding: 10px 0;
    }
    .boxA2{
    	position: relative;
    	left: 0;
    	border:none;
    	top: auto;
    	padding: 10px 0;
    }
    .boxA3{
    	position: relative;
    	left: 0;
    	border:none;
    	top: auto;
    	padding: 10px 0;
    }
    .boxA4{
    	position: relative;
    	left: 0;
    	border:none;
    	top: auto;
    	padding: 10px 0;
    }
	.difer1{
		position: relative;
		top: auto;
		margin-bottom: 20px;
	}
	.difer2{
		position: relative;
		top: auto;
		margin-bottom: 20px;
	}
	.difer3{
		position: relative;
		top: auto;
		margin-bottom: 20px;
	}
	.difer4{
		position: relative;
		top: auto;
		margin-bottom: 20px;
	}
	.difer5{
		position: relative;
		top: auto;
		margin-bottom: 20px;
	}
	.chamada h1{
		font-size: 32px;
	}
	.topo{
		height: auto;
		min-height: 50vh;
	}
	.orangeBarra{
		width: 100%;
		height: auto;
		padding: 50px;
		position: relative;
		margin-top: 50px;
	}
	.orangeBarra div{
		color: #fff;
		display: block;
		width: 240px;
		position: relative;
		top: 0px;
		left: 30px;
	}
	.ctaHome{
		width: 90%;
	}
	div.video1 {
		width: 100%;
	    height: 260px;
	    position: relative;
	    left: 0;
	    bottom: 0px;
	    background: #efeeee;
	    z-index: 5;
	    overflow: hidden;
	}
	div.video1 video {
		width: 100%;
    	height: 244px;
	}
	.areaMarcasTopo{
		background: rgb(239,238,238);
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	ul.menutop li a{
		font-size: 16px;
		margin: 0 0px 0 -4px;
		padding: 0 8px;
	}
}

@media (min-width: 1300px)  {	
	.modelo img{
	margin-top: 100px;
	}
}
