:root {
    font-size: 17.5px;
}

html,
body {
	background: white;
	font-family: var(--font-family);
	font-weight: 300;
	letter-spacing: 0;
	padding: 0;
	margin: 0;
	color: var(--black);
	overflow-x: hidden;
}
html.lock,
body.lock {
	overflow: hidden;
}
body.bg-lightgrey {
	background-color: #f8f8f8;
}

@media(min-width: 768px) {
	:root {
		font-size: 16px;
    }
}

@media(min-width: 1025px) {
	:root {
		font-size: 23px;
	}
}


a, a:hover, a:focus,
button, button:hover, button:focus {
	transition: all ease-in-out .2s;
	-moz-transition: all ease-in-out .2s;
	-webkit-transition: all ease-in-out .2s;
	text-decoration: none;
	cursor: pointer;
	color: currentColor;
	outline: none;
	box-shadow: none;
}
*:focus {
	outline: none;
	box-shadow: none;
}
*::placeholder, *::-webkit-placeholder {
	color: currentColor;
}
*:-ms-input-placeholder {
	color: currentColor;
}


.container,
.container-fluid {
	position: relative;
	width: 100%;
	padding: 0 20px;
}
.container .row,.container-fluid .row{
	margin-right: -20px;
    margin-left: -20px;
}

@media(min-width: 1450px) {
.container.container-full {
	max-width: 1390px; /* Layouts' fullscreen */
}
}

@media(min-width: 1200px) {
	.container {
		max-width: 1084px; /* 1044 + 40 padding */
	}
	
	.container.container-sm {
		max-width: 890px; /* 850 + 40 padding */
	}
}


/*************************************/
/********** BUTTONS / LINKS **********/
/*************************************/

.button,
.button:hover,
.button:focus {
	display: inline-block;
    padding: 15px 25px;
	font-size: 18px;
  font-weight: 500;
    color: white;
    line-height: 1;
    position: relative;
    border: 0;
    border-radius: 60px;
}
.button.white,
.button.button-fill.white:hover,
.button.button-fill.white:focus {
	color: white;
}
.button.button-fill {
	color: var(--blue);
}


.button::before {
	content: "";
	position: absolute;
	top: -2px;bottom: -2px;
	left: -2px;right: -2px;
    border: 0;
	
	transition: all 0.5s ease-in-out;
    background: linear-gradient(to left bottom, #009fde 20%, #0062b5 100%);
    
    transition: var(--transition);
    -webkit-transition: var(--transition);
    will-change: transform;
    pointer-events: none;
	border-radius: 60px;
}

.button.button-fill:before{
	background: none;
	border: 2px solid var(--blue);
}


.button.button-fill::before {
    border-color: var(--blue);
    background-color: none;
}
.button:hover::before,
.button:focus::before {
	transform: scale(1.05)

}
.button.button-fill:hover::before,
.button.button-fill:focus::before {
	transform: scale(1.05)
}

.button > span {
	position: relative;
	z-index: 2;
	font-size: inherit !important;
	color: inherit !important;
}



.menu_lateral a.button:hover{
	font-weight: 500;
    color: #fff;
}


@media(min-width: 992px) {
    .button,
    .button:hover {
		padding: 23px 50px;
	}
}




.link, .link:hover {
	display: inline-block;
	position: relative;
	font-size: 16px;
	font-weight: bold;
	color: var(--blue);
	text-transform: uppercase;
	padding-right: 22px;
	vertical-align: middle;
	line-height: normal;
}
.link.link-reverse {
	padding-right: 0;
	padding-left: 22px;
}
.link::after {
	content: "";
	width: 12px;
	height: 9px;
	position: absolute;
	top: 0;bottom: 0;
	right: 0;
	margin: auto;
	background-image: url(/assets/img/arrow-link-blue.svg);
	background-size: cover;
	background-position: -12px;
	transition: all .4s ease-in-out;
}
.link.link-reverse::after {
	right: auto;
	left: 0;
	transform: rotate(180deg);
}
.link:hover::after {
	background-position: 12px;
	background-image: url(/assets/img/arrow-link-blue-hover.svg);
}



/****************************/
/********** HEADER **********/
/****************************/

header {
	position: fixed;
	top: 0;left: 0;
    width: 100vw;
    height: 87px;
	background-color: white;
	font-size: 0;
	z-index: 10;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    padding-left: 50px;
    display: flex;
	
}
header.open {
	z-index: 12;
    transition: none;
}

header::before {
    -webkit-transform: translateZ(0);
    content: "";
    position: fixed;
    top: 0;bottom: 0;
    left: 0;right: 0;
    background-color: var(--black);
    opacity: 0;
    pointer-events: none;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    z-index: 2;
}
header.open::before {
    opacity: .75;
    pointer-events: auto;
}
header .social a i {
    color: var(--black);
}
header a.logo {
    display: inline-block;
	max-width:255px;
    height: 100%;
	padding-top: 30px; 
   
}
header a.logo img {
    width: 100%;
}
header > div:not(.menu) {
    flex: 1;
    display: flex;
    justify-content: flex-end;
}

header > div:not(.menu) a {
    transition: all 0.4s ease;
    display: inline-block;
    padding: 30px 10px;
    font-size: 18px;
    font-weight: bold;
    color:var(--black);
    letter-spacing: .02em;
    line-height: 1.95;
	position: relative;
}


header .social a i::before {
    transition: all 0.4s ease;
}
header .social a:hover i::before {
	color: var(--blue);
}

header div.clinicas{
	padding:30px
}
header  div.clinicas span {
    position: relative;
    z-index: 1;
    font-size: 18px;
	font-weight: normal;
	letter-spacing: normal;
	color: var(--black);
	margin-right:30px
}

header div.clinicas span:last-of-type{
	margin-left:0px
}

header  div.clinicas span strong{
	color: var(--blue);
	font-weight: bold;
}

header div.clinicas a{
	font-size: 18px;
	font-weight: normal;
	letter-spacing: normal;
	color: var(--black);
	padding: 0!important
	}



header > div:not(.menu) a.menu-toggle {
    position: relative;
    padding-right: 60px;
    background-color: transparent;
	color: var(--black);
	transition: var(--transition)
}
header > div:not(.menu) a.menu-toggle span {
    position: absolute;
    top: 0;bottom: 0;
    right: 40px;
    margin: auto;
    width: 32px;
    height: 2px;
	background-color: var(--black);
	transition: var(--transition);
    -webkit-transition: var(--transition);
}
header > div:not(.menu) a.menu-toggle span:first-child {
    transform: translateY(-8px);
}
header > div:not(.menu) a.menu-toggle span:last-child {
    transform: translateY(5px);
}
header > div:not(.menu) a.menu-toggle:hover span:first-child {
    transform: translateY(-7px);
}
header > div:not(.menu) a.menu-toggle:hover span:last-child {
    transform: translateY(7px);
}

header .menu .top-menu{
	display: flex;
	flex:1;
}

@media(max-width: 1024px) {
    header {
        padding-left: 30px;
        height: 73px;
    }

    header > div:not(.menu) a {
        font-size: 10px;
        padding: 27px 25px;
    }

   

    header > div:not(.menu) a.menu-toggle {
        padding-right: 60px;
    }
    header > div:not(.menu) a.menu-toggle span {
        right: 25px;
    }
	
	header div:not(.menu) .social{
		display:none
	}
	
	header div:not(.menu) .social.social_mobile{
		display:block;
		padding: 20px 25px;
	}
	header div:not(.menu) .social.social_mobile a{
		padding:0 10px;
	}
	header div:not(.menu) .social.social_mobile i{
		font-size:18px
	}
	header a.logo{
		width: 100%;
		max-width: 100%;
		background: white;
		padding-top: 10px;
    	padding-bottom: 10px;
	}
	header a.logo img {
		max-width: 173px;
		max-height: inherit;
	}
	header div.clinicas{
		order: 1;
		background: var(--black);
		padding: 16px;
		width: 100%;
	}
	header div.clinicas span {
		font-size: 14px;
		color: #ffffff;
		margin-right: 15px;
	}
	
	header div.clinicas a{
		font-size: 14px!important;
		color: #ffffff!important;
		padding: 0 3px!important;
	}

	header {
		height: auto;
		padding: 0;
    	flex-direction: column-reverse;
    }
    header::before {
        z-index: 0;
    }
	header a.logo img {
		display: block;
        margin: 12px auto;
        object-fit: contain;
	}
	header a.logo{
		transition: var(--transition);
    	-webkit-transition: var(--transition);
		opacity: 1;
		-webkit-transition: -webkit-transform .25s;
    transition: transform .25s;
	}
	header a.logo.hide{
		display: none;
		opacity: 0;
	}
	header .fab {
        font-size: 15px;
    }
	header > div:not(.menu) {
		flex-direction: row-reverse;
        background-color: var(--black);
	}
	header > div:not(.menu) a {
		flex: 1;
		padding: 12px;
		text-align: center;
    }
    header > div:not(.menu) a i::before {
        color: var(--primary);
    }
    header > div:not(.menu) .social a:last-of-type {
        padding-right: 22px;
    }
	header > div:not(.menu) a.contact-us {
		flex: 0;
		padding: 0 0 0 43px;
		font-size: 0;
		background: transparent;
	}
	
	header > div:not(.menu) a.menu-toggle {
		flex: 1;
		font-size: 0;
		padding: 0;
		padding-right: 33px;
		z-index: 2;
	}
	header > div:not(.menu) a.menu-toggle span {
		right: 20px;
        background-color: white;
        z-index: 3;
	}

	header.open > div:not(.menu) a.menu-toggle {
		transform: translate(-5px, 0px);
	}

	header.open > div:not(.menu) a.menu-toggle span {
		width: 30px;
		right: 6px;
		background-color: white;
	}
	header.open > div:not(.menu) a.menu-toggle span:first-child {
		transform: rotate(45deg);
	}
	header.open > div:not(.menu) a.menu-toggle span:last-child {
		transform: rotate(-45deg);
	}
}

/*********************************/
/********** HEADER MENU **********/
/*********************************/

header .menu {
	position: fixed;
	height: 100vh;
	width: 0;
	max-width: 100%;
	padding: 0px;
	background-color: white;
	top: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
	overflow: auto;
	z-index: 2;
}
header.open .menu {
	transform: translateX(0%);
	width: 100vw;
}
header .menu .row{
	height: 100vh;
}
header.open .menu .row{
	height: 100vh;
}

header .menu .geral-menu{
	max-width:660px;
	width:100%;
	/*float: right;*/
	padding: 0 30px 30px;
	margin-left: auto;
	margin-right: auto;
}

header .menu .bg-menu{
	position: absolute;
	min-width: 100%;
	min-height: 100%;
	overflow: hidden;
	background-size: cover;
	background-repeat: no-repeat;
}


/********** MENU CLOSE **********/

header .menu .menu-toggle {
	height: 30px;
	width: 30px;
	position: absolute;
	right: 60px;
    top: 14px;
}
header .menu .menu-toggle span {
	position: absolute;
	top: 0;bottom: 0;
	left: 50%;
    margin: auto;
    width: 40px;
    height: 2px;
	background-color: var(--black);
	transition: var(--transition);
    -webkit-transition: var(--transition);
}
header .menu .menu-toggle span:first-child {
	transform: translateX(-50%) rotate(45deg);
}
header .menu .menu-toggle span:last-child {
	transform: translateX(-50%) rotate(-45deg);
}

@media(min-width: 768px) and (max-width: 1024px) {
	header.open  a.menu-toggle span {
		right: 10px;
		background-color: white;
		z-index: 3;
	}
	header.open  a.menu-toggle{
		right: 31px;
		top: 3px;
	}
	header > div:not(.menu) a.menu-toggle{
		padding-right:0
	}
    
}


/********** SEARCH FORM **********/

header .menu .form {
	padding: 20px 0 60px;
	position: relative;
}
header .menu .form input {
	font-size: 17px;
    font-weight: 300;
	color: #a8a7a7;
	line-height: 1;
	padding: 17px 30px;
	background-color: white;
	border:none;
	border-bottom: 1px solid rgba(157, 157, 157,.36);
    width: 100%;
    border-radius: 0;
}
header .menu .form a[submit] {
	position: absolute;
	height: 50px;
	width: 51px;
	top: 0;right: 0;
	font-size: 0;
}
header .menu .form a[submit]::after {
	content: "";
    background: url(/assets/img/arrow-campo-blue.svg) no-repeat;
    width: 23px;
    height: 14px;
    position: absolute;
    right: 42px;
    top: 35px;
}

/********** MENU **********/

header .menu ul {
	padding:0;
	margin:0;
	list-style:none;
	margin:-10px 0;
}
header .menu > ul {
	display: flex;
	flex-direction: column;
    justify-content: center;
    padding-top: 80px;
}
header .menu ul li {
    font-size: 0;
    padding: 10px 0;
}

header .menu ul li.sub > .h2,
header .menu ul li.sub > h2 {
	padding-right: 25px;
    position: relative;
    transition: var(--transition)
}
@media(max-width:1024px){
	header .menu ul li.sub > .h2 span,
	header .menu ul li.sub > h2 span{
		position:absolute;
		right: 0;
		cursor: pointer;
		z-index: 99;
		width: 25px;
		height: 25px;
		top:5px;
	}
}
header .menu ul li.sub ul {
	margin:0;
	margin-left:20px;
	overflow:hidden;
	max-height:0;
    transition:var(--transition);
    will-change: max-height;
}
header .menu ul li.sub.active ul {
	max-height: none;
}
header .menu ul li.sub ul li {
	padding:5px 0;
}
header .menu ul li.sub ul li:first-of-type {
	margin-top: 18px;
}


header .menu ul ul li.sub2 ul {
	margin:0;
	margin-left:20px;
	overflow:hidden;
	max-height:0;
    transition:var(--transition);
    will-change: max-height;
}
header .menu ul ul li.sub2.active ul {
	max-height: none;
}
header .menu ul ul li.sub2 ul li {
	padding:5px 0;
}
header .menu ul ul li.sub2 ul li:first-of-type {
	margin-top: 10px;
}

header .menu ul li h2,
header .menu ul li .h2 {
	font-size: 1.304rem;
	font-weight: 300;
	color: var(--black);
	margin: 0;
	display: inline-block;
}
header .menu ul li h3,
header .menu ul li .h3 {
	font-size: 0.935rem;
  	color: #6e6e6e;
	font-weight: 300;
	margin: 0;
	display: inline-block;
	position: relative
}

@media(max-width:1024px){
	header .menu ul li.sub > .h2 span,
	header .menu ul li.sub > h2 span{
		position:absolute;
		right: 0;
		cursor: pointer;
		z-index: 99;
		width: 25px;
		height: 25px;
		top:5px;
	}
	
	header .menu ul ul li.sub2 ul {
		max-height: none;
	}
}



header .menu ul li .h4,
header .menu ul li h4 {
	font-size: 0.783rem;
  	color: #6e6e6e;
	font-weight: 300;
	margin: 0;
	display: inline-block;
}

header .menu ul li.sub.open > .h2 a, 
header .menu ul li.active > .h2 a, 
header .menu ul li > .h2 a:hover,
header .menu ul li.sub.open > h2 a, 
header .menu ul li.active > h2 a, 
header .menu ul li > h2 a:hover,

header .menu ul li.sub2.open > .h3 a, 
header .menu ul li.active > .h3 a, 
header .menu ul li > .h3 a:hover

header .menu ul li.sub2.open > h3 a, 
header .menu ul li.active > h3 a, 
header .menu ul li > h3 a:hover{
	color: #000;
}


header .menu ul ul ul li.active > .h4 a, header .menu ul ul ul li > .h4 a:hover,
header .menu ul ul ul li.active > h4 a, header .menu ul ul ul li > h4 a:hover  {
	color: var(--black);
}

header .menu ul li:last-of-type .h2 a,
header .menu ul li:last-of-type h2 a{
	color: var(--blue)
}

header .menu ul li:last-of-type .h2 a:hover,
header .menu ul li:last-of-type h2 a:hover{
	color:var(--black);
}

/********** SOCIAL AND LANGUAGE **********/



header .menu div.top-menu a {
	font-size: 18px;
    font-weight: bold;
    color:var(--black);
    letter-spacing: .02em;
    line-height: 1.95;
	transition: all 0.4s ease;
    display: inline-block;
    padding: 30px 10px;
}

header .menu div.top-menu div.clinicas a{
	font-size: 18px;
	font-weight: normal;
	letter-spacing: normal;
	color: var(--black);
	padding: 0!important
	}

header .menu div.top-menu a:hover {
	color: var(--blue);
}

@media(max-width: 1024px) {
	header .menu ul{
		margin:0 25px;
	}
	
	header .menu ul:first-of-type{
		margin-right:40px
	}
	
	header .menu ul li.sub > .h2::after,
	header .menu ul li.sub > h2::after{
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		margin: auto;
		width: 16px;
    	height: 8px;
		background-image: url(/assets/img/caret-menu.svg);
		transition: var(--transition);
		-webkit-transition: var(--transition);
		background-repeat: no-repeat;
	}
	
	header .menu ul li.sub > .h3 a,
	header .menu ul li.sub > h3 a {
		color: rgb(var(--primary));
	}
	header .menu ul li.sub > .h3::after,
	header .menu ul li.sub > h3::after {
		transform: rotate(180deg);
	}
	
	/*header .menu ul li.sub ul {
		max-height: none !important;
	}*/
	header .menu .geral-menu{
		max-width: 100%;
		width: 100%;
		float: right;
		padding: 0 0px 30px;
	}
	
	header .menu .row{
		margin-left: -20px;
		margin-right: -20px
	}
	
	header .menu .col-12{
		padding:0;
	}
	
	header .menu .col-12:last-of-type{
		background: white
	}
	
	header .menu ul li.sub > h3 {
		width: 100%;
	}
	
	/*header .menu ul li h3{
		font-size: 1.4rem;
	}*/
	
	header .menu .form {
		padding:20px 25px 40px;
		margin-right:20px
	}
	
	header .menu .form input{
		padding-left:0
	}
	
	header .menu .form a[submit]{
		width: 23px;
		height: 14px;
		right: 25px;
		top: 40px;
	}
	header .menu .form a[submit]:after{
		right: 0px;
		top: 0px;
	}
}

@media(max-width: 767px) {
	header .menu {
		padding: 0px 20px 40px;
        display: block;
        z-index: 1;
	}
	header .menu .form {
		margin:0;
	}
	
	header .menu > ul {
		padding-top:40px;
	}
	header .menu ul li {
		padding:7px 0;
	}
	header .menu ul li.sub ul li:first-of-type {
		margin-top:12px;
	}
}


/****************************/
/********** FOOTER **********/
/****************************/
footer,
.morada-contactos{
	background:#302f30;
	padding:100px 0;
}

footer .col-md-6,
.morada-contactos .col-md-6{
	display: flex;
}

footer .col-md-6 .img,
.morada-contactos .col-md-6 .img{
	max-width: 123px;
	width: 100%;
	height: auto;
}

.morada-contactos  .txt h2,
footer .txt,
.morada-contactos .txt{
	font-size: 0.783rem;
	font-weight: 300;
	text-align: left;
	color: #afaeaf;
	margin-left:70px
}

.morada-contactos  .txt h2{
	margin-left:0px
}

.morada-contactos  .txt h2,
footer .txt p,
.morada-contactos .txt p{
	margin-bottom:0
}

footer .txt a.link_map,
.morada-contactos .txt a.link_map{
	font-size: 0.609rem;
	font-weight: bold;
	text-transform: uppercase;
	color: var(--blue);
	display:block;
	margin-top: 10px;
	margin-bottom: 20px
}

footer .txt a.link_map i,
.morada-contactos .txt a.link_map i{
	margin-right: 10px;
	font-size: 0.709rem
}

footer .txt a.link_map:hover,
.morada-contactos .txt a.link_map:hover{
	color: white
}

footer .txt a.social,
.morada-contactos .txt a.social{
	font-size: 0.783rem;
	font-weight: 300;
	color: #ffffff;
	padding-top:30px;
	display: block
}

footer .txt a.social i,
.morada-contactos .txt a.social i{
	margin-right: 18px;
	font-size: 0.883rem;
}

footer .txt a.social:hover,
.morada-contactos .txt a.social:hover{
	color: var(--blue)
}

footer .line{
	background: #d9d9d9;
	height:1px;
	max-width: 742px;
	margin: 100px auto 55px;
	opacity: .14
}

footer .link_politicas{
	text-align: center
}
footer .link_politicas a{
	font-size: 0.783rem;
	font-weight: 300;
	color: #afaeaf;
	margin-right:20px;
}

footer .link_politicas a:hover{
	color: white;
}

footer .link_politicas a:last-of-type{
	margin-right: 0;
}

footer .social-follow{
	margin: 40px auto;
	font-size: 1rem;
	text-align: center;
}

footer .social-follow a{
	color: white;
	margin: 0 15px
}

footer .social-follow a:hover{
	color: var(--blue);	
}

footer .credito{
	font-size: 0.609rem;
	font-weight: 300;
	text-align: center;
	color: #afaeaf;
}
footer .credito h3{
	font-size: 0.609rem;
	font-weight: 300;
	text-align: center;
	color: #afaeaf;
	display: inline;
}


footer .credito a{
	color: #afaeaf;
}

footer .credito a:hover{
	color: white;
}


@media(max-width:992px){
	footer{
		background:#302f30;
		padding:60px 0 80px;
	}
	
	footer .col-md-6, .morada-contactos .col-md-6{
		flex-wrap:wrap;
	}
	
	footer .txt,
	.morada-contactos .txt{
		font-size: 0.82rem;
		margin: 20px 0 50px
	}
	
	footer .line {
	   max-width: 100%;
		margin: 0 auto 35px;
	}
	footer .link_politicas{
		margin-top:15px
	}

	footer .txt a.link_map, .morada-contactos .txt a.link_map{
		font-size:.8
	}
	footer .txt a.social, .morada-contactos .txt a.social{
		padding-top:15px
	}
	
	footer .social-follow a{
		margin: 0 10px
	}
}





.botoes_hp{
	position: fixed;
	bottom: 15px;
	right: 100px;
	z-index: 99
}

.botoes_hp a:first-of-type{
	position:relative;
	font-size: .696rem;
	font-weight: bold;
	letter-spacing: normal;
	text-align: center;
	color: #ffffff;
	padding: 9px 20px;
	display: inline-block;
	margin-right: 10px
}
.botoes_hp a:first-of-type:before{
	background: var(--black);

	border-radius:30px;
	
	content: "";
	position: absolute;
	top: -2px;bottom: -2px;
	left: -2px;right: -2px;
    border: 0;
	transition: all 0.5s ease-in-out;
    
    transition: var(--transition);
    -webkit-transition: var(--transition);
    will-change: transform;
    pointer-events: none;
}

.botoes_hp a:first-of-type:hover::before,
.botoes_hp a:first-of-type:focus::before {
	transform: scale(1.05)

}

.botoes_hp a img{
	width: 22px;
	height: 22px;
}

.botoes_hp a.button:last-of-type{
	padding: 10px;
	display: none;
}

.botoes_hp a > span {
	position: relative;
	z-index: 2;
	font-size: inherit !important;
	color: inherit !important;
}

@media(max-width:992px){
	.botoes_hp{
		position: fixed;
		bottom: 38px;
		right: 0px;
		z-index: 99;
		width: 100%;
	}
	.botoes_hp a:first-of-type{
		width:100%;
		position: absolute;
		font-size: .8rem;
	}
	.botoes_hp a:first-of-type:before{
		border-radius:0;
		background: #212021
	}
	.botoes_hp a.button:last-of-type{
		right:20px;
		bottom:20px;
		float:right
	}
	.botoes_hp.bottom_content{
		bottom: 87px;
	}

	.body-content .zEWidget-launcher{
		bottom:50px!important;
	}
	.body-content{
		padding-bottom: 38px;
	}
}

@media(max-width:767px){
	
	.botoes_hp.bottom_content{
		bottom: 90px;
	}

}

@media(min-width:992px){
	.zEWidget-launcher, .zEWidget-webWidget{
		bottom:55px!important;
	}
	.botoes_hp {
		bottom: 15px;
		
	}
}

@media(max-width:767px){
	.body-content #launcher{
		bottom:55px!important;
	}
}

/*****************************************/
/********** CONTENT PAGE BANNER **********/
/*****************************************/

.content .banner {
	margin-top: 87px;
	margin-bottom: 40px;
	height: 390px;
	position: relative;
	background-color: #f0efef;
	text-align: left;
}

.content .banner.banner_marginbottom{
	margin-bottom:0
}

.content .banner .image {
	position: absolute;
	top: 0;bottom: auto;
	left: auto;right: 0;
	overflow: hidden;
	width: 50%;
	height: 100%;
}

.content .banner .image img {
	position: relative;
	top: 50%;left: 50%;
	width: 100%;
	min-height: 100%;
	height: auto;
	object-fit: cover;
	transform: translate(-50%, -50%);
}

.content .banner ul {
	padding: 0;
	margin-bottom: 15px;
	list-style: none;
	font-size: 18px;
	font-weight: 300;
	line-height: 2;
	letter-spacing: normal;
	color: var(--black);
}
.content .banner ul li {
	display: inline-block;
	margin-left: 0
}
.content .banner ul li a.disabled {
	pointer-events:none;
}
.content .banner ul li a:hover, .content .banner ul li a:focus {
	color: var(--blue);
}

.content .banner h1 {
	font-size: 2.609rem;
	font-weight: 300;
	line-height: 1.17;
	letter-spacing: -1.2px;
	color: var(--black);
	margin: 0;
}

.content .banner span {
	display: block;
	font-size: 1rem;
	font-weight: 500;
	color: var(--gold);
	text-transform: uppercase;
	margin-top: 17px;
}

.content .banner .icon {
	position: relative;
	width: 55px;
	height: 55px;
	margin: 50px auto 0;
}
.content .banner .icon img {
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}


@supports(mix-blend-mode: multiply) {		

}


@media(min-width: 768px) {
	.content .banner {
		padding: 170px 0 60px;
	}

	.content .banner ul {
		margin-bottom: 20px;
	}
}

@media(min-width: 992px) {
	.content .banner .container{
		position:relative;
		height: 100%;
	}
	
	.content .banner .row{
		position:absolute;
		bottom:80px;
		width: 100%
	}
	
	.content .banner {
		padding: 0;
		height: 390px
	}
}

@media(max-width:768px){
	.content .banner{
		margin-top:117px;
		min-height: inherit;
		height: auto
	}
	.content .banner .image{
		position:relative;
		width:100%;
	}
	
	.content .banner .image img{
		max-width:100%;
		transform: none;
		top: inherit;
		left: inherit;
	}
	.content .banner .container{
		padding: 30px 20px;
	}
}

@media(min-width:768px) and (max-width:992px){
	.content .banner {
		margin-top:0px;
		padding: 117px 0 40px;
	}
	.content .banner .col-md-6 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
}


/**************************************************/
/********** CONTENT PAGE LATERAL CONTENT **********/
/**************************************************/
.lateral-content{
	display: flex;
	align-self: flex-start;
	margin-top:120px
}

.menu_lateral{
	max-width:354px;
	flex-basis: 354px;
	flex-shrink: 0;
}

.menu_lateral .button{
	width:100%;
	text-align: center;
	margin-bottom: 57px
}

.menu_lateral ul{
	list-style: none;
	padding-left: 0;
	margin-left: 0;
	margin-bottom: 3rem
}

.menu_lateral ul ul{
	margin-left:30px;
	margin-bottom:15px
}

.menu_lateral li a{
	font-size: 21.5px;
	font-weight: 300;
	line-height: 1.49;
	text-align: left;
	color: #6e6e6e;
}

.menu_lateral a.titulo_menu{
	font-size: 1.304rem;
	line-height: 1.72;
	color: var(--black);
	margin-bottom:15px;
	display: block;
}
.menu_lateral ul.sub2 li{
	line-height: normal;
    padding: 0;
    margin: 0;
}


.menu_lateral .active ul li a,
.menu_lateral .active2.open ul li a,
.menu_lateral ul.sub2 li a{
	font-weight: 300;
	font-size: 18px;
	color: #6e6e6e;
}

.menu_lateral .active a,
.menu_lateral ul.sub2 li.active a{
	font-weight: normal;
	color: var(--black);
	pointer-events: none
}

.menu_lateral .active2.open a{
	font-weight: normal;
	color: var(--black);
	pointer-events: auto
}

.menu_lateral .active ul.sub2 a{
	pointer-events: auto
}

.menu_lateral a:hover,
.menu_lateral ul.sub2 li a:hover{
	color: #000;
}

.menu_lateral .sub2{
	display:none;
	height:0
}

.menu_lateral .active.open .sub2,
.menu_lateral .open .sub2{
	display:block;
	height:auto
}


.lateral-content .content2.template{
	padding-top:0;
	padding-left:140px
}





@media(max-width: 992px){
	.lateral-content{
		display: block;
		flex-wrap: wrap;
		margin-top: 70px;
	}
	.menu_lateral {
		order: 1;
		max-width: 100%;
		flex-basis: 354px;
		flex-shrink: 0;
	}
	.lateral-content .content2.template {
		order: 2;
		padding-left: 0px;
	}
	
	.lateral-content .team .team-member {
		flex-wrap: wrap;
		margin-bottom: 40px;
	}
	.lateral-content .team .img {
		flex-basis: 90%;
	}
	
	.menu_lateral ul{
		display:none
	}
}

@media(max-width: 992px){
	.lateral-content{
		margin-top: 40px;
	}
}

@media(min-width:768px) and (max-width: 1024px){
	.menu_lateral {
		max-width: 290px;
		flex-basis: 285px;
	}
	
	.menu_lateral .button{
		font-size:16px;
	}
	
	.lateral-content .content2.template{
		padding-top:0;
		padding-left:80px
	}
}




/**********************************/
/********** CONTENT TEAM **********/
/**********************************/
.lateral-content .team{
	width: 100%;
	position: relative;
	
}
.lateral-content .team .txt{
	align-self: center;
	margin-left: 85px
}

.lateral-content .team .titulo{
	font-size: 1.565rem;
	font-weight: bold;
	letter-spacing: normal;
	text-align: left;
	color: var(--black);
}

.content .lateral-content .template .team p{
	font-size: 1rem;
	letter-spacing: normal;
	text-align: left;
	line-height: 1.57;
	color: var(--grey);
}

.lateral-content .team .img{
	flex-grow: 0;
   flex-shrink: 0;
	flex-basis: 430px;
}

.lateral-content .team .img div{
	background: rgba(0, 159, 222,.08);
}

.lateral-content .team .img div img{
	transform: translate(30px,-50px)
}
.lateral-content .team .team-member {
	display: flex;
	margin-bottom: 80px
}
@media(min-width:768px){
	.lateral-content .team .team-member {
		flex-direction: initial;
	}
	.lateral-content .team .team-member:nth-child(even) {
		flex-direction: row-reverse;
	}
	
	.lateral-content .team .team-member:nth-child(even) .txt{
		margin-left: 0;
		margin-right: 85px
	}
	
	.lateral-content .team .team-member:nth-child(even) .img div img{
	transform: translate(-30px,-50px)
	}
}


@media(max-width:992px){
	.lateral-content .team .team-member{
		margin-bottom:30px
	}
	.lateral-content .team .img {
		flex-basis: 90%;
	}
	.lateral-content .team .txt {
		margin-left: 45px;
		margin-top: 25px;
		margin-bottom: 40px
	}
}

@media(min-width:768px) and (max-width: 1024px){
	
	.lateral-content .team .img {
		flex-grow: 0;
		flex-shrink: 0;
		flex-basis: 350px;
	}
	
	.lateral-content .team .txt {
		align-self: center;
		margin-left: 55px;
	}

}
/*******************************************/
/********** CONTENT PAGE TEMPLATE **********/
/*******************************************/

.content .template {
	padding: 40px 0;
}

.content .template.not-bottom-template{
	padding-bottom:0
}

.content .template h2:first-child,
.content .template h3:first-child,
.content .template h4:first-child,
.content .template p:first-child,
.content .template ul:first-child,
.content .template ol:first-child {
	margin-top: 0;
}

.content .template h2:last-child,
.content .template h3:last-child,
.content .template h4:last-child,
.content .template p:last-child,
.content .template ul:last-child,
.content .template ol:last-child {
	margin-bottom: 0;
}

.content .template h2, .content .template .h2,
.content .template h3, .content .template .h3 {
	font-size: 2.087rem;
	font-weight: normal;
	color: var(--black);
	line-height: normal;
    letter-spacing: -0.96px;
	margin: 1em 0;
}

@media(max-width:768px){
	.content .template.tempBlog {
		padding-top:0
	}
	.content .template h2, .content .template .h2,
	.content .template h3, .content .template .h3{
		font-size: 1.9rem;
	}
}
.content .template h3, .content .template .h3 {
	font-size: 1.565rem;
	font-weight: 300;
	text-transform: none;
}
.content .template h4, .content .template .h4 {
	font-size: 1.217rem;
	font-weight: bold;
	color: var(--black);
	line-height: 0.96;
	margin: 2em 0;
}

.content .template p, .content .template ul, .content .template ol {
	font-size: 1rem;
	font-weight: 300;
	color: var(--grey);
	line-height: 1.7;
	margin: 1.5em 0;
}
.content .template p b, .content .template p strong {
	font-weight: bold;
	color: var(--black);
}
.content .template p a, .content .template li a {
	font-weight: 500;
	color: var(--blue);
    border-bottom: 1px solid currentColor;
    display: inline;
}
.content .template p a:hover, .content .template li a:hover {
	border-bottom: 1px solid transparent;
}
.content .template p small {
	font-size: .696rem;
	font-weight: 300;
}
.content .template p big{
	font-weight: normal
}
.content .template blockquote,
.content .template blockquote p{
	font-weight: 300
}
.content .template p big,
.content .template blockquote,
.content .template blockquote p {
	display: inline-block;
	font-size: 1.304rem;
	font-style: normal;
	color: var(--black);
	line-height: normal;
	padding: 1em 0 1em;
	position: relative;
}

.content .template blockquote {
	display: block;
	padding: 1.5em 0 1.5em 40px;
	margin: 0;
	position: relative;
}
.content .template blockquote::before {
	content: "";
	position: absolute;
	left: 0;
	height: 27px;
	width: 36px;
	background-image: url(/assets/img/quotation-marks.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.content .template blockquote p {
	padding: 0;
	margin: 0;
}
.content .template blockquote p small {
	display: block;
	font-size: .609rem;
	color: var(--gold);
	margin-top: 20px;
}

.content .template p big:before{
	content:"";
	width: 39px;
	height: 91px;
	background: var(--blue);
	opacity: .15;
	position: absolute;
	left: -20px;
	top:20px;
}

@media(max-width:1024px){
	.content .template p big:before {
		height: 76px;
		top:11px;
	}
}



.content .template ul, .content .template ol {
	padding-left: 2em;
	list-style: none;
}
.content .template ul li, .content .template ol li {
	position: relative;
}
.content .template ul li p, .content .template ol li p {
	margin: 0;
}
.content .template ul li::before {
	content: "";
	display: inline-block;
	height: 5px;
	width: 5px;
	margin-left: -2em;
	margin-right: 1.7em;
	background: var(--blue);
	border-radius:50%;
	vertical-align: top;
	margin-top: 15px
}

.content .template ol {
	counter-reset: item;
}
.content .template ol li {
	counter-increment: item;
}
.content .template ol li::before {
	content: counter(item) ".";
	display: inline-block;
	width: 2em;
	margin-left: -2em;
	font-weight: 500;
	color: var(--black);
}


@media(min-width: 768px) {
	.content .template {
		padding: 70px 0;
	}

	.content .template p big, 
	.content .template blockquote {
		padding-left: 100px;
	}
	
	.content .template p big:before{
		left:80px
	}

	.content .template blockquote::before {
		left: 40px;
		height: 27px;
		width: 36px;
	}
}

@media(min-width: 992px) {
	.content .template {
		padding: 85px 0 100px;
	}
}


@media(max-width: 992px) {
	.content .template blockquote::before {
		height: 20px;
		width: 27px;
	}
	
	.content .template ul li::before {
		margin-top: 12px
	}
}


/*****************************************/
/********** SUBMENUS NAVIGATION **********/
/*****************************************/

.submenu-nav .row {
	margin: -10px
}
.submenu-nav .row > div {
	padding: 10px
}

.submenu-nav .row .button {
	width: 100%;
	font-size: 14px;
	text-align: center;
	padding: 17px 30px;
}
.submenu-nav .row .button:hover,
.submenu-nav .row .button:focus,
.submenu-nav .row .button.selected {
	color: white;
}
.submenu-nav .row .button:hover::before,
.submenu-nav .row .button:focus::before,
.submenu-nav .row .button.selected::before {
	border-color: #aa793a;
	background-color: #aa793a;
}

.submenu-nav .images {
	position: relative;
	margin-top: 50px;
}
.submenu-nav .images img {
	position: absolute;
	top: 0;
	left: 0;
	transition: var(--transition);
	will-change: opacity;
}
.submenu-nav .images img.hidden {
	opacity: 0;
}
.submenu-nav .images img.initial {
	position: static;
}


@media(min-width: 768px) {
	.submenu-nav .container {
		padding: 0 105px;
	}

	.submenu-nav .row .button {
		padding: 22px 30px;
	}

	.submenu-nav .images {
		position: relative;
		margin-top: 80px;
	}
}


/**************************************/
/********** ABOUT US SECTION **********/
/**************************************/


/***************************************************/
/********** RELATED BLOG ARTICLES SECTION **********/
/***************************************************/

.related-blog-articles {
	padding: 50px 0 40px;
}
.related-blog-articles.bg-grey {
	background-color: var(--white);
}

.related-blog-articles .listing {
	margin-top: 40px;
}

.related-blog-articles .title{
	text-align:center;
	font-size: 2.087rem;
	font-weight: bold;
	line-height: 1.25;
	color: #302f30;
}


@media(min-width: 768px) {
	.related-blog-articles {
		padding: 70px 0 80px;
	}

	.related-blog-articles .listing {
		margin-top: 55px;
	}
}

@media(min-width: 992px) {
	.related-blog-articles {
		padding: 140px 0 150px;
	}

	.related-blog-articles .listing {
		margin-top: 70px;
	}
}

/************************************/
/********** CONTACT US BAR **********/
/************************************/

.contact-us-bar {
	padding: 55px 0;
	position: relative;
}
.contact-us-bar::before {
	content: "";
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	background: linear-gradient(210deg, #a8783a, #e5b752);
	mix-blend-mode: multiply;
	z-index: 1;
}

/*.contact-us-bar .bg {
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	background-image: url(/img/contact-us-bar.jpg);
	background-position: center;
	background-size: cover;
	opacity: .3;
}*/
.content.contact-us .contact-us-bar .bg {
	background-image: url(/img/contact-us-form.jpg);
}

.contact-us-bar .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	opacity: .3;
}

.contact-us-bar .bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.8;
}



.contact-us-bar .bg img {
    width: 100%;
    object-fit: cover;
    filter: grayscale(100%);
    position: relative;
    height: 100%;
    background-blend-mode: multiply;
}

.contact-us-bar .container {
	z-index: 2;
}

.contact-us-bar .image {
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
}
.contact-us-bar .image::after {
	content: "";
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	background-color: rgb(var(--primary));
	opacity: .75;
}
.contact-us-bar .image img {
	position: relative;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    height: auto;
    transform: translate(-50%, -50%);
    opacity: .2;
}

.contact-us-bar .container {
	display: flex;
	align-items: center;
	flex-direction: column;
}
.contact-us-bar .container > div {
	flex: 1;
}

.contact-us-bar .container p {
	font-size: 1rem;
	font-weight: 300;
	color: white;
	margin: 0;
	text-align: center;
}
.contact-us-bar .container p.h3 {
	font-size: 2.25rem;
	margin-bottom: 25px;
}

.contact-us-bar .container > .button {
	font-size: 14px;
	padding: 20px 25px;
	margin-top: 30px;
}


@supports(mix-blend-mode: multiply) {		
	.contact-us-bar .image::after {
		mix-blend-mode: multiply;
		opacity: 1;
	}

	.contact-us-bar .image img {
		height: 100%;
		width: 100%;
		object-fit: cover;
		position: static;
		transform: none;
		filter: grayscale(1);
		filter: grayscale(100%);
	}
}


@media(min-width: 768px) {
	.contact-us-bar {
		padding: 65px 0;
	}

	.contact-us-bar .container {
		flex-direction: initial;
	}
	.contact-us-bar .container > div {
		padding-right: 70px;
	}
	.content.contact-us .contact-us-bar .container > div {
		padding: 0;
	}

	.contact-us-bar .container > .button {
		margin-top: 0;
	}

	.contact-us-bar .container p {
		text-align: left;
	}
}

@media(min-width: 992px) {
	.contact-us-bar {
		padding: 95px 0 85px;
	}

	.contact-us-bar .container {
		align-items: flex-end;
	}
	.contact-us-bar .container > .button {
		padding: 25px 40px;
	}
	
	.contact-us-bar .container > div {
		padding-right: 100px;
	}
}


/*************************************/
/********** CONTACT US PAGE **********/
/*************************************/

/********** MAP **********/

.contact-us .template-module .row {
	margin: -20px 0;
}
.contact-us .template-module .row > div {
	padding: 20px 0;
	padding-left: 70px;
}

.contact-us .template-module .row > div::before {
	content: "";
	position: absolute;
	top: 20px;left: 0;
	width: 50px;
	height: 50px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.contact-us .template-module .row > div:first-child::before {
	background-image: url(/assets/img/contact-us-tooth.svg);
}
.contact-us .template-module .row > div:last-child::before {
	background-image: url(/assets/img/contact-us-pin.svg);
}


@media(min-width: 768px) {
	.contact-us .template-module .row {
		margin: 0;
	}
	.contact-us .template-module .row > div {
		padding: 0;
		padding-left: 70px;
	}

	.contact-us .template-module .row > div {
		padding-left: 80px;
	}
	
	.contact-us .template-module .row > div::before {
		top: 0;
		width: 60px;
		height: 60px;
	}
}

@media(min-width: 992px) {
	
}


/**************************/
/********** FORM **********/
/**************************/

.form {
	position: relative;
}

.content.contact-us .form .h3 {
	margin-bottom: 40px;
}

.content .form .row {
	margin: -10px;
}
.content .form .row > div {
	padding: 10px;
	font-size: 0;
}

.content .form label {
	display: block;
	font-size: 18px;
	font-weight: normal;
	letter-spacing: normal;
	text-align: left;
	color: #8a898a;
    margin: 0;
}
.content .form label a {
	border-bottom: 0px solid currentColor;
	color:var(--blue)
}
.content .form label a:hover,
.content .form label a:focus {
	border-bottom: 0px solid transparent;
	color:currentColor
}

.content .form .input-wrapper label {
    position: absolute;
    top: 0;
    transform: translateY(31px);
    pointer-events: none;
    transition: var(--transition);
}

.content .form input,
.content .form textarea {
/*	font-size: 12px;
	font-weight: 500;
	color: white;
	width: 100%;
	padding: 23px 30px;
	background-color: rgba(255, 255, 255, 0.2);
	text-transform: uppercase;
	border: none;
	border-radius: 32px;*/
    resize: none;
}
.content .form textarea {
	border-radius: 20px;
}
.content .form input.not-filled, .content .form textarea.not-filled,
.content .form select.not-filled{
	border: 1px solid var(--warning);
	border-radius: 40px;
}

.content .form textarea.not-filled {
	border-radius: 20px;
}

.content .form .warning {
    font-size: 12px;
    font-weight: 400;
    color: var(--warning);
    height: 20px;
    margin: 0;
    margin-top: 2px;
	text-align: left;
    line-height: 20px;
    padding-left: 20px;
    position: relative;
}
.content .form .warning::before {
    content: "!";
    position: absolute;
    left: 0;
    height: 15px;
    width: 15px;
    background-color: var(--warning);
    border-radius: 100%;
    font-size: 13px;
    font-weight: 500;
    color: white;
    text-align: center;
}

.content .form input[type='checkbox'] {
	display: none;
}
.content .form input[type='checkbox'] + label {
	display: inline-block;
	vertical-align: middle;
	height: 30px;
	width: 30px;
	border: solid 1px rgba(48, 47, 48, 0.15);
	background-color: rgba(255, 255, 255, 1);
	cursor: pointer;
	position: relative;
}
.content .form input[type='checkbox'].not-filled + label {
	border: 1px solid var(--warning);
}
.content .form input[type='checkbox'] + label::before {
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-size: 12px;
	font-weight: 900;
	color: var(--blue);
	line-height: 1;
	width: 12px;
	height: 10px;
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	margin: auto;
	opacity: 0;
	pointer-events: none;
	transition: var(--transition);
    -webkit-transition: var(--transition);
}
.content .form input[type='checkbox']:checked + label::before {
	opacity: 1;
}
.content .form input[type='checkbox'] + label + label {
	display: inline-block;
	vertical-align: middle;
	padding-left: 10px;
    line-height: 1.25;
}
.content .form [submit] {
	width: 240px;
	max-width: 100%;
	font-size: 18px;
	text-align: center;
	padding: 20px;
	margin-top: 20px;
}

.content .form .lower {
	display: flex;
	flex-wrap: wrap;
}
.content .form .lower span {
	display: block;
	font-size: .875rem;
	font-style: italic;
	color: var(--grey);
	min-width: 100%;
	align-self: flex-end;
}


@media(min-width: 768px) {
	.content .form .h3 {
		margin-bottom: 65px;
	}

	.content .form .row {
		margin: -15px -10px;
	}
	.content .form .row > div {
		padding: 15px 10px;
	}

	.content .form [submit] {
		padding: 29px;
		margin: 0;
	}
}

@media(min-width: 768px) and (max-width: 1024px) {
	.content .form [submit] {
		padding: 20px;
		margin: 0;
	}
}


/**************************/
/********** BLOG **********/
/**************************/


.content .banner .banner-blog-articles span{
	font-size: .609rem;
	font-weight: bold;
	color: #cacccc;
	text-transform: uppercase;
	display: inline-block
}

.content .banner .banner-blog-articles span + span{
	display: inline-block
}

.content .banner .banner-blog-articles span a{
	color:var(--blue)
}

.content .banner .banner-blog-articles span a:hover{
	color:var(--black)
}

.content .banner .banner-blog-articles img{
	width: 144px;
  height: 50px;
}

@media (min-width: 992px){
	.content .banner .banner-blog-articles{
		position: absolute;
		bottom: 80px;
		width: 100%;
	}
}

.content .template.img-blog{
	padding-bottom: 0
}

.content .template.img-blog .container div,
.listing-blog .article .image{
	position: relative
}

.content .template.img-blog .container div::before,
.listing-blog .article .image::before{
	content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	background: linear-gradient(-30deg, var(--black) 0%, transparent 43%);
    opacity: .7;
    pointer-events: none;
    z-index: 2;
}

.content .template.img-blog .container div:after,
.listing-blog .article .image::after{
	content:"";
	background-image: url(/img/icon_blog.svg);
	background-repeat: no-repeat;
	width: 116px;
	height: 40px;
	position: absolute;
	bottom:20px;
	right:20px;
	z-index: 3
}

@supports(mix-blend-mode: multiply) {
	.content .template.img-blog .container div::before,
	.listing-blog .article .image::before{
        background: linear-gradient(-30deg, var(--black) 0%, transparent 43%);
		mix-blend-mode: multiply;
		opacity: 1;
	}
	.content .template.img-blog .container div img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		position: static;
		transform: none;
    }
}

.blog-articles{
	margin:130px 0;
}
.blog-articles h3{
	font-size: 2.087rem;
	font-weight: bold;
	line-height: 1.25;
	color: var(--black);
	text-align: center;
	margin-bottom:70px
}
.blog-articles .articles {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -42px;
    justify-content: center;
}

.blog-articles .image, .listing-blog .image{
	position: relative;
	width: 100%;
	height: auto;
	overflow: hidden;
	cursor: pointer;
	display: inline-block;
}
.blog-articles a.image img, .listing-blog a.image img{
	transition: var(--transition);
    -webkit-transition: var(--transition);
	width: 100%
}

.listing-blog a.image img{
	margin-bottom:0;
}

.blog-articles a.image:hover img, .listing-blog a.image:hover img{
	transform: scale(1.1);
}

.blog-articles .articles .article {
    padding: 0 42px;
}

.blog-articles .info, .listing-blog .info{
	font-size: 0.609rem;
	font-weight: bold;
	letter-spacing: normal;
	text-transform: uppercase;
	color: #cacccc;
	display: flex;
	flex-direction: row;
	margin-top:25px;
	margin-bottom:10px;
}

.blog-articles .info a, .blog-articles .titulo a:hover, .listing-blog .info a{
	color: var(--blue);
}

.blog-articles .info .categoria, .listing-blog .info .categoria{
	margin-left:10px
}

.blog-articles .info a:hover, .listing-blog .info a:hover{
	color: var(--black)
}

.blog-articles .titulo, .listing.listing-blog .article .h2{
	font-size: 1.326rem;
	font-weight: 300;
	text-align: left;
	color: var(--black);
	margin: 0;
	margin-bottom:15px;
	line-height: normal;
}

.blog-articles .button{
	display: table;
	margin: 70px auto 0
}


@media(max-width:768px){
	.blog-articles{
		margin:80px 0;
	}
	.blog-articles h3{
		margin-bottom:35px
	}
	.blog-articles .info, .listing-blog .info{
		font-size:.8rem;
		margin-top: 15px;
	}
	.blog-articles .articles .article{
		padding-bottom:30px
	}
	.blog-articles .button {
		margin: 20px auto 0;
	}
	
	.content .template.img-blog .container div:after,
	.listing-blog .article .image::after{
		width:  95px;
    	height: 33px;
		bottom:15px;
		right:15px;
	}

}

.blog-search .selected {
	padding: 20px;
    height: 53px;
	cursor: pointer;
	
}
.blog-search .select:after {
    position: absolute;
    right: 30px;
    top: 35px;
    transform: rotate(90deg);
	content:"";
	background: url(/assets/img/arrow-campo-blue.svg) no-repeat;
    width: 19px;
    height: 11px;
	pointer-events: none;
	z-index: 99;
}

.blog-search .select.opened:after {
    transform: rotate(-90deg);
}

.blog-search .selected span {
    pointer-events: none;
	font-weight: normal;
	position: absolute;
    z-index: 99;
}

.blog-search .options {
    margin-top:53px;
    padding: 0 40px;
}
.blog-search .options > div:first-child {
    margin-top: 10px;
}
.blog-search .options > div:last-child {
    margin-bottom: 30px;
}
.blog-search .options,
.blog-search .selected {
	font-size: .783rem!important;
	font-weight: normal;
	letter-spacing: normal;
	text-align: left;
	color: var(--black);
	width: 100%;
	background:#ffffff;
	border: solid 1px rgba(48, 47, 48, 0.15);
	border-radius:40px;
	position: relative;
}
.blog-search .options{
	border-radius: 0 0 40px 40px;
}
.blog-search .options .option {
    cursor: pointer;
    margin: 10px 0;
}
.blog-search .opened .options .option {
    transition: all 0.4s ease;
	transform-origin: left;
	opacity: .6;
}
.blog-search .opened .options .option:hover {
    opacity: 1;
}
.blog-search .opened .options {
    padding-top: 10px;
}
.blog-search .options .locked {
    opacity: 0.6;
    pointer-events: none;
}
.blog-search .options {
    z-index: 2;
    position: absolute;
    top: 0;
    max-height: 0;
    width: calc(100% - 10px);
    overflow: hidden;
	transition: all 0.4s ease;
	border-top:0;
	border-bottom:0;
	text-transform: capitalize;
}

.blog-search .opened .options{
	border-bottom: solid 1px rgba(48, 47, 48, 0.15);
}


@media(min-width: 768px) {
	
	.blog-search .selected {
		padding: 25px 30px;
	}
	
    .blog-search {
        top: 110px;
    }

    .blog-search .row {
        margin: 0 -1px
    }
    /*.blog-search .row > div {
        padding: 0 1px;
    }*/

    .blog-search input {
        padding: 25px 40px;
	}
	
	.blog-search .options {
		margin-top:27px;
	}
    .blog-search [submit] {
        padding: 25px;
        width: 63px;height: 63px;
    }
}

@media(min-width: 992px) {
	.blog-search,
	.blog-search .selected {
        height: 80px;
	}
	.blog-search .selected {
		padding: 25px 40px;
	}
    .blog-search {
        top: 111px;
    }

    .blog-search [submit] {
        padding: 30px;
        width: 73px;height: 73px;
	}
	
	.blog-search .options {
		margin-top:43px;
	}
}

@media (max-width: 992px){
	.blog-search .selected, .blog-search input {
		padding: 15px 25px;
	}
	.blog-search .select:after {
		right: 20px;
		top: 22px;
	
	}
	.blog-search .options {
		border-radius: 0 0 30px 30px;
		padding: 0 25px;
		margin-top:27px;
	}
}

@media (max-width: 767px){
.blog-search .options {
	width: calc(100% - 20px);
}
}

.blog-search a[clean] {
    font-size: 12px;
    font-weight: normal;
    color: #b5b4b4;
    margin-top: 15px;
    position: relative;
	padding-left: 15px;
	display: block;
	float: right;
}

.blog-search a[clean]:hover{
	color:var(--black);
}

.blog-search a[clean]::before,
.blog-search a[clean]::after {
    position: absolute;
    top: -1px;bottom: 0;left: 0;
    margin: auto;
    height: 1px;
    width: 10px;
    content: '';
    background: #b5b4b4;
}
.blog-search a[clean]::before {
    transform: rotate(45deg)
}
.blog-search a[clean]::after {
    transform: rotate(-45deg)
}

.blog-search a[clean]:hover::before,
.blog-search a[clean]:hover::after {
	background: var(--black);
}


/**************************************/
/********** BLOG ARTICLE NAV **********/
/**************************************/

.content .article-nav{
	width:100%;
	padding-top:62px;
	padding-bottom:60px;
	background: rgba(239, 246, 248, 0.51)
}


.content .article-nav .row {
	margin: -10px;
	align-items: center;
}
.content .article-nav .row a{
	font-size: 16px;
	font-weight: bold;
	font-stretch: normal;
	font-style: normal;
	letter-spacing: normal;
	text-align: left;
	color: var(--blue);
	text-transform: uppercase
}

.content .article-nav .row a:hover{
	color:var(--black)
}

.content .article-nav .row > div {
	padding: 10px
}
.content .article-nav .row > div:nth-child(2) {
	order: 1;
	text-align: center;
}

.content .article-nav .row > div:nth-child(2) a{
	text-align:center
}
.content .article-nav .row > div:last-child {
	text-align: right;
}

.content .article-nav .row > div a.button {
	padding: 12px 30px;
}
.content .article-nav .row > div.disabled a {
	opacity: .25;
	pointer-events: none;
}

.content .article-nav .row div span.desktop{
	display: block;
}

.content .article-nav .row div span.mobile{
	display: none;
}


@media(min-width: 768px) {
	.content .article-nav .row > div:nth-child(2) {
        order: initial;
    }
}
@media(max-width: 768px) {
	.content .article-nav .row a{
		font-size: 13px;
	}
	
	.content .article-nav .row > div:nth-child(2) {
        order: initial;
    }
	.content .article-nav .row div span.desktop{
		display: none;
	}

	.content .article-nav .row div span.mobile{
		display: block;
	}
}


/**************************************/
/********** NEWSLETTER BAR **********/
/**************************************/
.newsletter-bar{
	background: #deffff;
	position: relative;
	width: 100%;
	background-position: left;
	background-repeat: no-repeat;
	background-size: contain;
	padding-top: 90px;
	padding-bottom:90px;
}

@media(max-width:1400px){
.newsletter-bar{
	background-position: -50% top;
	}
}

@media(min-width:768px) and (max-width:1024px){
.newsletter-bar{
	background-position: -60% top;
	}
}

.newsletter-bar .titulo{
	font-size: 1.87rem;
	font-weight: 300;
	letter-spacing: -0.96px;
	color: var(--black);
}

.newsletter-bar p{
	font-size: 1rem;
	font-weight: 300;
	text-align: center;
	color: #7b8a8a;
	margin-bottom:35px
}

.newsletter-bar .col-md-6:last-of-type{
	align-self: center;
	text-align: center
}

@media(max-width:992px){
	.newsletter-bar{
		padding-top: 0px;
		padding-bottom: 60px;
    	height: auto;
		max-height: none;
	}
	.newsletter-bar .titulo {
		margin-top:40px;
		line-height: normal;
		letter-spacing: -0.96px;
	}
	.newsletter-bar .col-md-6:first-child{
		padding:0
	}
}


@media(min-width:1400px) and (max-width:1500px) {
	.newsletter-bar{
		background-position: -20% top;
	}
}


@media(max-width:767px){
	.newsletter-bar{
		background: #deffff!important;
	}
}
/***************************************************/
/********** CONTENT LISTAGENS TRATAMENTOS **********/
/***************************************************/

.listagem-tratamentos .row{
	margin: -15px;
}
.listagem-tratamentos .col-12{
	position: relative;
	padding: 5px
}

.listagem-tratamentos .col-6{
	margin-bottom:30px
}

.listagem-tratamentos .image{
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	cursor: pointer;
}
.listagem-tratamentos a .image img{
	transition: var(--transition);
    -webkit-transition: var(--transition);
	position: relative;
	width: 100%
}


.listagem-tratamentos a:hover .image img{
	transform: scale(1.1);
}

.listagem-tratamentos .titulo{
	position:absolute;
	top:82%;
	bottom:auto;
	font-size: 0.913rem;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: normal;
	text-align: center;
	color: #ffffff;
	width: 100%;
	padding-left: 20px;
	padding-right: 20px;
	text-transform: uppercase;
	transition: var(--transition);
    -webkit-transition: var(--transition);
	opacity: 1;
	z-index: 2;
	left: 0
}

.listagem-tratamentos a .image:before{
	content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-blend-mode: multiply;
    background-image: linear-gradient(to bottom, rgba(48, 47, 48, 0.4), rgba(48, 47, 48, 0.4));
    pointer-events: none;
    z-index: 1;
    opacity: 1;
    transition: var(--transition);
    -webkit-transition: var(--transition);
}

.listagem-tratamentos a:hover .image:before{opacity: 0}

.listagem-tratamentos a:hover .titulo{
	opacity: 0
}


@media(max-width:922px){
	.listagem-tratamentos .row{
		margin: -15px;
	}
	
	.listagem-tratamentos .col-6{
		padding: 5px;
		margin-bottom: 0
	}
	
	.listagem-tratamentos .titulo{
		margin: 0 -5px;
    	padding: 0 10px;
	}
}


/*********************************************/
/********** HOMEPAGE QUOTES SECTION **********/
/*********************************************/

.hp-quotes {
	padding: 187px 0
}


.hp-quotes .slider {
	position: relative;
	width:810px;
	margin: 0 auto
}

.hp-quotes blockquote{
	padding: 0em 0 1.5em 40px;
}
.hp-quotes blockquote p,
.hp-quotes blockquote{
	
	display: block;
	margin: 0;
	position: relative;
	font-size: 1.326rem;
	font-weight: 300;
	line-height: 1.16;
	letter-spacing: normal;
	text-align: left;
	color: var(--black);
}

.hp-quotes blockquote::before {
	content: "";
	position: absolute;
	left: 0;
	height: 18px;
	width: 24px;
	background-image: url(/assets/img/quotation-marks.svg);
	background-size: contain;
	background-repeat: no-repeat;
}

.hp-quotes blockquote p small,
.hp-quotes blockquote small{
	display: block;
	font-size: 14px;
	font-weight: 300;
	line-height: 2.54;
	letter-spacing: normal;
	text-align: left;
	color: var(--lightgrey);
	margin-top: 20px;
}

/********** SLIDER ARROWS **********/

.hp-quotes .slider-arrows a {
	position: absolute;
	top: 7px;
    margin: auto;
    width: 27px;
	height: 52px;
	background-image: url(/assets/img/arrow-quotes.svg);
	background-repeat: no-repeat;
	background-size: contain;
	opacity: .1;
}
.hp-quotes .slider-arrows a.slick-disabled {
	opacity: .1;
	pointer-events:none;
}
.hp-quotes .slider-arrows a:hover {
	opacity: .75;
}
.hp-quotes .slider-arrows a.prev {
	left: 20px;
	transform: rotate(180deg);
}
.hp-quotes .slider-arrows a.next {
	right: 20px;
}

.hp-quotes a.button{
	margin: 0 auto;
	display: table;
}

@media(max-width: 768px) {
	.hp-quotes {
		padding: 80px 0 60px;		
	}
	.hp-quotes blockquote p,
	.hp-quotes blockquote{
		font-size: 1.35rem;
		line-height: 1.3;
	}
	.hp-quotes blockquote{
		padding: 0em 0 1em 40px;
	}    
}

@media(max-width: 992px) {
	.hp-quotes .slider {
		width:100%;
		padding-bottom:30px;
		padding-left: 15px;
		padding-right: 35px;
	}
	.hp-quotes blockquote p small,
	.hp-quotes blockquote small{
		margin-top: 10px;
	}
	

	.hp-quotes .slider-arrows a{
		top: 25%;
		bottom:auto;
		width: 20px;
    	height: 39px;
	}
	.hp-quotes .slider-arrows a.prev{
		left:15px
	}
	.hp-quotes .slider-arrows a.next{
		right:15px
	}
	
	.content .hp-quotes .slider-arrows a{
		bottom:auto;
		top:40px;
	}
}


@media(min-width:768px) and (max-width:1024px) {
	.content .hp-quotes {
		padding: 107px 0
	}
}




.listing .bg_paginacao .pagination {
	width:100%;
	padding-top:65px;
	padding-bottom:63px;
	background: rgba(239, 246, 248, 0.51)
}


.listing .categorias-tag{
	display: flex;
	justify-content: center;
	margin-bottom:80px
}

.listing .categorias-tag .item{
	font-size: 18px;
	font-weight: normal;
	letter-spacing: normal;
	text-align: center;
	color: var(--black);
	position: relative;
	padding:26px 57px;
	display: block;
	margin:0 5px
}

.listing .categorias-tag .item.active{
	color:var(--blue)
}

.listing .categorias-tag .item:before{
	content:"";
	border-radius: 40px;
  	border: solid 1px rgba(48, 47, 48, 0.15);
	position: absolute;
	top:0;left:0;
	right: 0;bottom: 0;
	width: 100%;
	height: 100%;
}

.listing .categorias-tag .item.active:before{
	border: solid 1px var(--blue);
}

.listing .categorias-tag .item:hover:before{
	border: solid 1px var(--black);
}

@media(max-width:1024px){
	.listing .categorias-tag{
		flex-wrap:wrap;
		justify-content: flex-start;
		margin-bottom:40px
	}
	.listing .categorias-tag .item{
		font-size: 16px;
		font-weight: normal;
		letter-spacing: normal;
		text-align: center;
		color: var(--black);
		position: relative;
		padding:13px 9px;
		display: block;
		margin:5px;
		width: 30%;
	}
	
	.listing .bg_paginacao .pagination {
		padding-top:45px;
		padding-bottom:43px;
	}
}



/****************************************/
/********** RECEITAS SAUDÁVEIS **********/
/****************************************/


.listagem_receitas .image{
	position: relative;
	padding-top: 46%;
    overflow: hidden;
}

.listagem_receitas .image img.img-fluid.off {
    opacity: 0;
}

.listagem_receitas .image :not(div) img:first-of-type{
    filter: blur(20px);
}



.listagem_receitas .image :not(div) img:first-of-type,
.listagem_receitas .image :not(div) img.img-fluid{
	display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all 0.4s ease;
    width: 100%;
    height: 100%;
}

.icons_tempo-doses{
	position: absolute;
	bottom:-31px;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
	width:130px;
}

.listagem_receitas .image div,
.icons_tempo-doses div{
	width:63px;
	height: 63px;
	position: absolute;
	bottom:30px;
	right:0;
	text-align: center;
	padding: 10px 0px
	
}

.icons_tempo-doses div{
	bottom:0;
	right: auto;
	left:auto;
}

.listagem_receitas .image div span,
.content .banner .icons_tempo-doses div span{
	position:relative;
	font-size: 11px;
	font-weight: bold;
	color: #ffffff;
	z-index: 9
}

.listagem_receitas .image div img,
.icons_tempo-doses div img{
	height:20px;
	width: 20px;
	display: block;
	position: relative;
	z-index: 9;
	margin: 0 auto -9px;
}

.listagem_receitas .image div:last-of-type img,
.icons_tempo-dosesdiv:last-of-type img{
	height:17px;
	width: 27px;
	margin: 0 auto -6px;
}

.listagem_receitas .image div:first-of-type,
.icons_tempo-doses div:first-of-type{
	right:83px
}

.listagem_receitas .image div:last-of-type,
.icons_tempo-doses div:last-of-type{
	right:10px
}

.listagem_receitas .image div:before,
.icons_tempo-doses div:before{
	content: "";
	width: 63px;
	height: 63px;
	background: rgba(48, 47, 48,.7);
	border-radius: 50%;
	display: block;
	position: absolute;
	left:0; top:0;
	right:0; bottom:0;
	z-index: 1
}

.listagem_receitas.listing.listing-article .items.row{
	margin-bottom:50px
}

.listagem_receitas .bg_paginacao .pagination{
	margin-top: 0;
}

@media(max-width:992px){
	.listagem_receitas .image div,
	.icons_tempo-doses div,
	.listagem_receitas .image div:before,
	.icons_tempo-doses div:before{
		width: 55px;
		height: 55px;
	}
	.listagem_receitas .image div:first-of-type,
	.icons_tempo-doses div:first-of-type{
		right:73px
	}
	.listagem_receitas .image div img,
	.icons_tempo-doses div img{
		margin-bottom: -7px;
	}
	.listagem_receitas .image div:last-of-type img,
	.icons_tempo-dosesdiv:last-of-type img{
		margin-bottom: -4px;
	}
	
	.content .banner .icons_tempo-doses div span{
		margin-top:7px
	}
}


/**********************************/
/********** CONTACT FORM **********/
/**********************************/
.form{
	text-align: center;
	padding-top: 120px;
	padding-bottom:120px
}
.form.contact-form{
	background: rgba(239, 246, 248, 0.51);
	text-align: center;
	padding-top: 120px;
	padding-bottom:120px
}

.form .template{
	padding:0
}
@media(min-width:768px){
	.form:not(.form_peso-ideal) .container{
		max-width: 640px;
	}
	
}

.form .select-wrapper,
.form .input-wrapper,
.form .textarea-wrapper{
	position: relative;
	height: 80px;
	margin-bottom:20px
}

.form .textarea-wrapper{
	height:250px;
}

.form .select-wrapper select,
.form .input-wrapper input,
.form .textarea-wrapper textarea{
	appearance: none;
    -webkit-appearance: none;
	font-size: .783rem!important;
	font-weight: normal;
	letter-spacing: normal;
	text-align: left;
	color: var(--black);
	width: 100%;
	background: none;
	border: none;
	border-radius:0;
	position: relative
}

.form .textarea-wrapper textarea{
	height: 100%;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus
input:-webkit-autofill, 
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: inherit !important;
  -webkit-box-shadow: 0;
  transition: background-color 5000s ease-in-out 0s;
}

.form .select-wrapper:before,
.form .input-wrapper:before,
.form .textarea-wrapper:before{
	content:"";
	border-radius: 40px;
  	border: solid 1px rgba(48, 47, 48, 0.15);
	background: white;
	width: 100%;
	height: 80px;
	position: absolute;
    top: 0;bottom: 0;
	left:0;right:0;
}

.form .textarea-wrapper:before{
	height:250px;
	border-radius: 20px;
}

.form .select-wrapper:after{
	content:"";
	background: url(/assets/img/arrow-campo-blue.svg) no-repeat;
	width: 19px;
	height: 11px;
	position: absolute;
	right: 42px;
	top: 35px;
	transform: rotate(90deg);
}


.form select,
.form input,
.form textarea{
	padding:25px 40px;
}

.form input{
	color: var(--black)
}

@media(min-width: 768px) {
    .form .select-wrapper::before,
    .form .select-wrapper::after {
        right: 30px;
    }
}

.form .row{
	align-items:center;
	padding-top:15px;
}
.form .col-12{
	text-align: left
}

.bg_resposta_peso{
	width:100%;
	padding-top:65px;
	padding-bottom:63px;
	background: rgba(239, 246, 248, 0.51)
}

.content .form.form_peso-ideal [submit]{
	margin-bottom:20px
}

.content .form.form_peso-ideal .bloquear_btn{
	pointer-events: none;
	opacity: .6;
}




.content .form.form_peso-ideal .selected {
	padding: 20px;
    height: 53px;
	cursor: pointer;
	
}
.content .form.form_peso-ideal .select:after {
    position: absolute;
    right: 30px;
    top: 50px;
    transform: rotate(90deg);
	content:"";
	background: url(/assets/img/arrow-campo-blue.svg) no-repeat;
    width: 19px;
    height: 11px;
	pointer-events: none;
	z-index: 99;
}

.content .form.form_peso-ideal .select.opened:after {
    transform: rotate(-90deg);
}

.content .form.form_peso-ideal .selected span {
    pointer-events: none;
	font-weight: normal;
	position: absolute;
    z-index: 99;
}

.content .form.form_peso-ideal .options {
    margin-top:53px;
    padding: 0 40px;
}
.content .form.form_peso-ideal .options > div:first-child {
    margin-top: 10px;
}
.content .form.form_peso-ideal .options > div:last-child {
    margin-bottom: 30px;
}
.content .form.form_peso-ideal .options,
.content .form.form_peso-ideal .selected {
	font-size: .783rem!important;
	font-weight: normal;
	letter-spacing: normal;
	text-align: left;
	color: var(--black);
	width: 100%;
	background:#ffffff;
	border: solid 1px rgba(48, 47, 48, 0.15);
	border-radius:40px;
	position: relative;
}
.content .form.form_peso-ideal .options{
	border-radius: 0 0 40px 40px;
}
.content .form.form_peso-ideal .options .option {
    cursor: pointer;
    margin: 10px 0;
}
.content .form.form_peso-ideal .opened .options .option {
    transition: all 0.4s ease;
	transform-origin: left;
	opacity: .6;
}
.content .form.form_peso-ideal .opened .options .option:hover {
    opacity: 1;
}
.content .form.form_peso-ideal .opened .options {
    padding-top: 10px;
}
.content .form.form_peso-ideal .options .locked {
    opacity: 0.6;
    pointer-events: none;
}
.content .form.form_peso-ideal .options {
    z-index: 2;
    position: absolute;
    top: 0;
    max-height: 0;
    width: calc(100% - 20px);
    overflow: hidden;
	transition: all 0.4s ease;
	border-top:0;
	border-bottom:0;
	text-transform: capitalize;
}

.content .form.form_peso-ideal .opened .options{
	border-bottom: solid 1px rgba(48, 47, 48, 0.15);
}


@media(min-width: 992px) {
	.content .form.form_peso-ideal .selected {
        height: 80px;
		padding: 25px 40px;
		margin-bottom: 20px;
	}
}

@media (max-width: 992px) {
	.content .form.form_peso-ideal .selected {
        height: 61px;
		padding: 20px 30px;
		margin-bottom: 20px;
	}
	.content .form.form_peso-ideal .select:after{
		top:27px
	}
}
@media (max-width: 768px) {
.content .form.form_peso-ideal .options {
    margin-top: 33px;
}
}

@media(max-width: 1024px) {
	.form{
		text-align: center;
		padding-top: 50px;
		padding-bottom:50px
	}
	
	.form .select-wrapper, .form .input-wrapper, .form .textarea-wrapper {
		height: 60px;
		margin-bottom: 20px;
	}
	
	.form .select-wrapper:before, .form .input-wrapper:before{
		height:60px;
		border-radius:30px;
	}
	
	.form .textarea-wrapper:before{
		border-radius:20px;
	}
	
	.form .textarea-wrapper, .form .textarea-wrapper:before{
		height:150px
	}
	.form .select-wrapper select, .form .input-wrapper input, .form .textarea-wrapper textarea,.content .form label {
		
		font-size: .9rem!important;
		
	}
	.form select, .form input, .form textarea {
		padding: 20px 30px;
	}
	.form .select-wrapper:after {
		right: 32px;
		top: 25px;
	}
	
	.content .form input[type='checkbox'] + label {
		display: inline-block;
		vertical-align: middle;
		height: 20px;
		width: 20px;
		border: solid 1px rgba(48, 47, 48, 0.15);
		background-color: rgba(255, 255, 255, 1);
		cursor: pointer;
		position: relative;
	}
	
	.content .form [submit]{
		width:100%;
	}
	
	.content .form .button[submit]::before{
		border-radius:45px
	}
	
	.content .form.form_peso-ideal .row{
		align-items:flex-start;
	}
	.content .form.form_peso-ideal [submit]{
		margin: 0
	}
	
	.content .form.form_peso-ideal .row > div {
		padding: 0px 10px;
		font-size: 0;
	}
}



.page_404 ul{
	display: none
}

.content .banner.page_404 h1{
	font-size: 2.609rem;
	font-weight: bold;
	letter-spacing: -1.2px;
	text-align: center;
	color: #302f30;
}
.content .banner.page_404 h2 {
	font-size: 2.087rem;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.46;
	letter-spacing: -0.96px;
	text-align: center;
	color: #302f30;
	margin-bottom: 40px
}

.content .banner.page_404 .col-12 {
	text-align: center;
	 padding: 90px 0;
}

.content .banner.page_404 {
    min-height: 600px;
}

.at-share-dock.atss{
	box-shadow: none!important;
}

@media(min-width: 800px) and (max-width: 1400px) {
	.lateral-content .galeria1 .container.container-sm{
		max-width: 500px;
	}
}
@media(min-width: 1400px) and (max-width: 1500px) {
	.lateral-content .galeria1 .container.container-sm{
		max-width: 600px;
	}
}


.zapify-widget{display: none !important;opacity: 0;pointer-events: none !important;}


.follow {
    position: fixed;
    bottom: 50px;
    right: 10px;
    display: flex;
    gap: 5px;
    z-index: 99;
}

.follow a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.follow a:before {
    content: "";
    background: var(--blue);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 50%;
}

.follow a::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 26px;
    height: 26px;
    margin: auto;
   -webkit-mask-image: url(/assets/img/whatsapp.svg);
    mask-image: url(/assets/img/whatsapp.svg);
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: cover;
    -webkit-mask-size: cover;
    background-color: white;
    transition: var(--transition);
    z-index: 2;
}

@media (min-width: 768px) {
    .follow {
        bottom: 15px;
        right: 25px;
    }
	.follow a {
        width: 50px;
        height: 50px;
    }

	.follow a::after {
        width: 33px;
        height: 33px;
    }
}