body {
	font-size: 12px;
}

a { outline: none; }

[class^="fontastic-"]:before,
[class*=" fontastic-"]:before {
	position: relative;
	top: 3px;	
}


header {
	position: relative;
	z-index: 100;
}

.cw-h:hover,
.cw { color: white !important;}
.c1-h:hover,
.c1 { color: #2881C1 !important; }
.c2-h:hover,
.c2 { color: #2b2b2d; }
.c3-h:hover, 
.c3 { color: #cbdae8; }
.cw-b { background-color: white; }
.c1-b { background-color: #2881C1; }
.c2-b { background-color: #2b2b2d; }
.c3-b { background-color: #cbdae8; }

.font-bold 		{ font-family: 'Montserrat-black', Arial, Helvetica, sans-serif; }
.font-extrabold { font-family: 'Montserrat-extrabold', Arial, Helvetica, sans-serif; }
.font-medium 	{ font-family: 'Montserrat-medium', Arial, Helvetica, sans-serif; }
.font-semibold 	{ font-family: 'Montserrat-semibold', Arial, Helvetica, sans-serif; }
.font-italic 	{ font-family: 'Montserrat-lightitalic', Arial, Helvetica, sans-serif; }
.font-light 	{ font-family: 'Montserrat-light', Arial, Helvetica, sans-serif; } 

.transition {
	-webkit-transition: all 0.5s ease-in-out;
  	-moz-transition: all 0.5s ease-in-out;
  	-o-transition: all 0.5s ease-in-out;
  	transition: all 0.5s ease-in-out;
}

.master-logo { cursor: pointer; }

#barra-topo { position:relative; z-index: 5; }
#barra-topo .send-btn { height: 4em; position: relative; }
#barra-topo .send-btn a {
	
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translate3d(0, 50%, 0);
	
	padding: 0.4rem 1rem;
	border-radius: 25px;
	
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#71b9e7+0,4277b7+100 */
	background: rgb(113,185,231); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(113,185,231,1) 0%, rgba(66,119,183,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(113,185,231,1) 0%,rgba(66,119,183,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(113,185,231,1) 0%,rgba(66,119,183,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#71b9e7', endColorstr='#4277b7',GradientType=0 ); /* IE6-9 */
}

nav { 
	position: relative; 
	z-index: 4; 
	padding-top: 1.5rem; 
	padding-bottom: 1.5rem; 
	font-size: 1.2em;
  	width: 100%;
  	background-color: white; 
  	text-transform: uppercase;
}
nav.fixed {
	padding-top:0;	
	padding-bottom:0;
	position: fixed;
	top:0;
	left: 0;
	-webkit-box-shadow: 0px 0px 17px 2px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 17px 2px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 17px 2px rgba(0,0,0,0.75);
}
nav.fixed .master-logo { width: 150px;padding-top: 0.5rem;padding-bottom: 0.5rem; max-width: 90%;}
nav .master-logo { max-width: 320px; width: 100%; }
nav.zindex { z-index: 10; }
nav .menu-bars-responsive { font-size: 2.5em; margin-right: 1.5rem;position: relative; z-index: 2;}
nav .menu.vertical.responsive {
	position: fixed;
	z-index: 5;
	right: -500px;
	top: 0;
	height: 100%;
	background-color: white;
	max-width: 500px;
	padding-left: 2rem;
	
	-webkit-box-shadow: 6px 0px 17px 2px rgba(0,0,0,0.75);
	-moz-box-shadow: 6px 0px 17px 2px rgba(0,0,0,0.75);
	box-shadow: 6px 0px 17px 2px rgba(0,0,0,0.75);
}
nav a.close { font-size: 3em !important;  }

.slick-container .item { outline: none; } 
.slick-container .slick-pics img { width: 100%; }
.slick-container .slick-pagination .slick-dots { list-style: none; margin: 0;padding: 0;}
.slick-container .slick-pagination .slick-dots li {margin: 0;padding: 0;line-height:1.4rem; font-size: 1.4em;}
.slick-container .slick-pagination .on { display: none; }
.slick-container .slick-pagination .slick-active .on { display: inline; }
.slick-container .slick-pagination .slick-active .off { display: none; }
.slick-container .slick-pagination .item:hover { color: #CACACA !important; }
.slick-container .slick-pagination .item:hover .on { display: inline; }
.slick-container .slick-pagination .item:hover .off { display: none; }

#banner { position: relative; z-index: 2;}

#banner .slick-container { position: relative; }
#banner .slick-container .slick-pagination { position: absolute;right: 2rem;top: 0; height: 100%; display: flex; align-items: center; }


#banner .slick-container .slick-pagination .item:focus,
#banner .slick-container .slick-pagination .item:visited,
#banner .slick-container .slick-pagination .item {outline: none; color : #333; }


#banner .slick-container .item { position: relative; }
#banner .slick-container .item .text-container { position: absolute; background-color: rgba(255,255,255,0.7); top: 8vw; left: 8vw; padding: 2em 3em; z-index: 5; font-size: 1em }
#banner .slick-container .item.sao-mateus .text-container {
	bottom: 3vw;
	top: auto;
}
#banner .slick-container .item .text-container h2 {margin-top: 1rem; font-size: 1.6em; line-height: 1.4rem;}
#banner .slick-container .item .text-container .c1 { text-transform:uppercase; line-height: 1.2; font-size: 3em;}
#banner .slick-container .item .text-container a { margin-top: 0.5rem;text-transform: uppercase; }

#master-title { transform: translate3d(0, -50%, 0); }
#master-title h1 {
	font-size: 3em;
	background-color: #4075B5;
	display: inline-block; 
	text-transform: uppercase; 
	padding: 0.6rem 5rem; 
	-webkit-box-shadow: 0px 0px 17px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 17px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 17px 0px rgba(0,0,0,0.75);
}

#home { position: relative; z-index: 3; }
#home .h3 { margin-top: 2rem; margin-bottom: 4rem;font-size: 1em; }
#home .h3 h6 { font-size: 2em; text-transform: uppercase; }
#home .h3 p { font-size: 1.2em; }
#home img.doctor { max-width: 200px; margin-bottom: 1rem; }
#home .section-title {font-size: 1.9em; margin:0;padding: 0; text-transform: uppercase;}
#home .section-text { font-size: 1.5em; margin-bottom: 4rem;}
	

#home #centro { 1em; }
#home #centro h1 { line-height: 1.2; color: #333; margin: 0; font-size: 2em; }
#home #centro h6 { margin-bottom: 1rem; }
#home #centro p, #home #centro h6 { font-size: 1.3em; }
#home #centro .bloco-1 {
	padding: 2rem 4rem;
	background: transparent url('../_img/client/fundo001.jpg') 50% 50% no-repeat;
	background-size: cover;

	display: flex;
	-webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	justify-content: flex-end; 
}
#home #centro .bloco-1 p:last-child { margin-bottom: 0; }
#home #centro .bloco-2 div { height: 100%; }
#home #centro .bloco-2 .a {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e3e6e7+0,e7eaeb+100 */
	background: rgb(227,230,231); /* Old browsers */
	background: -moz-linear-gradient(left,  rgba(227,230,231,1) 0%, rgba(231,234,235,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(227,230,231,1) 0%,rgba(231,234,235,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(227,230,231,1) 0%,rgba(231,234,235,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e3e6e7', endColorstr='#e7eaeb',GradientType=1 ); /* IE6-9 */
}
#home #centro .bloco-2 .b {
   	/*padding: 6rem 2rem 6rem 0;*/
	padding: 2rem;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e7eaeb+0,f2f5f6+11,f6f9fa+100 */
	background: rgb(231,234,235); /* Old browsers */
	background: -moz-linear-gradient(left,  rgba(231,234,235,1) 0%, rgba(242,245,246,1) 11%, rgba(246,249,250,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(231,234,235,1) 0%,rgba(242,245,246,1) 11%,rgba(246,249,250,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(231,234,235,1) 0%,rgba(242,245,246,1) 11%,rgba(246,249,250,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e7eaeb', endColorstr='#f6f9fa',GradientType=1 ); /* IE6-9 */


	display: flex;
	-webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	justify-content: flex-end; 
}


#home .item-doctor p {font-size: 1.3em; margin: 0.25rem 0; }
#home .item-doctor .subtitle { color: #64ABDE; margin: 0; margin-bottom: 1rem;}
#home .item-doctor .h5 { font-size: 1.5em; } 

#home .item-doctor.round .doctor {

	border-radius: 50%;
}


#equipa .doctor-container {

	display: grid;
	grid-template-columns: repeat(auto-fit, 29%);
	grid-gap: 2rem;
	justify-content: center;
}
@media screen and (max-width: 1023px) {
	#equipa .doctor-container { grid-template-columns: repeat(auto-fit, 45%); }
}
@media screen and (max-width: 749px) {
	#equipa .doctor-container { grid-template-columns: repeat(auto-fit, 90%); }
}
#staff-categories a {
	font-size: 16px;
	/*border-left: 1px solid grey;*/
	color: black;
}
#staff-categories a.selected {
	color: #2881C1;
}
#staff-categories li:first-child a { border: none; }
@media screen and (max-width: 1400px) {
	#staff-categories a { font-size: 14px; }
}


#home #equipa { background-color: #EEF3F8; padding-top: 4rem; padding-bottom: 4rem;}
#home #equipa .doctor-container { padding-top: 3rem; }
#home #equipa .doctor-container .item-doctor { margin-bottom: 1rem;  }
#home #equipa .section-text { text-transform: uppercase; }


#home #problematicas { background-color: white; padding-top: 4rem; padding-bottom: 4rem;}
#home #problematicas { font-size: 1em; }
#home #problematicas .accordion-item .accordion-title,
#home #problematicas .accordion-item .accordion-content { 
	border: none; 
	background-color: #F4F4F5; 
	font-size: 1.4em;
	padding-left: 2rem;
	padding-right: 2rem;
}
#home #problematicas .accordion-item .accordion-title { font-size: 1.4em; cursor: pointer; }
#home #problematicas .accordion-item .accordion-content h3 { font-size: inherit; }
#home #problematicas .accordion-item.is-active { border-top: 3px solid #2881C1; }


#home #problematicas .help { text-transform: uppercase; margin-top: 3rem;margin-bottom: 3rem; }
#home #problematicas .help span { font-size: 1.5em; }
#home #problematicas .help a {
	font-size: 1.5em;
	margin: 0; 
  	border: solid 3px #64A7DA; 
  	border-radius: 1em;
  	background-color: #EFF3F7;
	padding: 0.8rem 2rem;  	
}

#home #casossucesso {
	
	padding-top: 4rem; 
	padding-bottom: 4rem;
	background: transparent url('../_img/client/fundo002.jpg') 50% 50% no-repeat;
	background-size: cover;
}
#home #casossucesso .section-text { text-transform: uppercase; }



#home #casossucesso .title {
	
	font-size: 1.6em;
}

#home #casossucesso h6 {
	margin-bottom: 1rem;
}


#home #casossucesso .text {
	
	font-size: 1.2em;
}

#home #casossucesso .utente {
	
	font-size: 1.3em;
}


#home #casossucesso .slick-pagination { text-align: right; margin-top: 3rem; margin-bottom: 3rem}
#home #casossucesso .slick-pagination li { display: inline-block; vertical-align: top; margin: 0 0.2rem;}
#home #casossucesso .slick-pagination li a { color: #676666;}
#home #casossucesso .slick-pagination li.slick-active a { color: white;}


#home #intervencao { padding-top: 4rem; padding-bottom: 4rem; }
#home #intervencao2 .section-text,
#home #intervencao .section-text { line-height: 1.8rem; margin-bottom: 3rem; text-transform: uppercase;}
#home #intervencao .item { padding-bottom: 2rem; }
#home #intervencao2 .item .title, 
#home #intervencao .item .title {
	text-transform: uppercase;
	padding-top: 0.4rem; 
	padding-bottom: 0.4rem;
	font-size: 1.5em;
	padding-left: 2rem;
	margin-bottom: 0.5rem;
}
#home #intervencao2 .item .text,
#home #intervencao .item .text { text-align: justify; font-size: 1.3em; }

#home #intervencao2 { 
	padding-top: 4rem; 
	padding-bottom: 4rem;
	background: transparent url('../_img/client/fundo003.png') 50% 50% no-repeat;
	background-size: cover; 
}
#home #intervencao2 .item { margin-bottom: 1.5rem;}
#home #intervencao2 .item .border { border: 6px solid rgba(0, 0, 0, 0.12); border-radius: 50px;}
#home #intervencao2 .item .title { margin: 0; font-size: 1.3em;padding:1rem;}
#home #intervencao2 .marcacao { margin-top: 3rem; }
#home #intervencao2 .marcacao a { padding: 1rem 3rem; font-size: 1.4em; text-transform: uppercase; background-color: #7398CD;}

#home #contactos { padding-top: 4rem; padding-bottom: 4rem; }
#home #contactos .item-address { font-size: 1.2em;  }

#home #contactos .contatos-info { margin-top: 4rem; }
#home #contactos .contatos-info .title {
	
	text-transform: uppercase;
	font-size: 1.6em;
		
}

.social-icons {
	position: fixed;
	right: 24px;
	bottom: 6rem;
	width: 60px;
	
	z-index: 10;
}

.social-icons a {
	display: block;
	border-radius: 50px;
	font-size: 30px;
	color: #FFF;
	background-color: #1972f5;
	padding-top:0.5rem;
	padding-bottom:0.5rem;
	text-align: center;
	box-shadow: 0 0 3px rgba(0,0,0,0.3);
	-webkit-transition: all 0.15s ease-out;  /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
    transition: all 0.15s ease-out; 
	margin-top: 1rem;
}

.social-icons .whatsapp {

	background-color: #25d366;
}



@media screen and (max-width: 479px) {

	.social-icons {
		width: 54px;
		right: 14px;
		bottom: calc(6rem - 14px );
	}

	.social-icons a {
		padding-top: 4.5px;
		padding-bottom: 4.5px;
	}
}

.social-icons a span.fontastic-phone {
	position: relative;
	top: 3px;
}
.social-icons a:hover {
	background-color: #FFF;
	color: #2881C1;
	-webkit-transform: scale(1.1);  /* Chrome, Opera 15+, Safari 3.1+*/ 
  	-ms-transform: scale(1.1);  /* IE 9*/ 
    transform: scale(1.1);  /* Firefox 16+, IE 10+, Opera*/ 
}

.popup-form .close { font-size: 3em;}
.popup-form .title { font-size: 1.6em;}

footer {
	
	border-top : 1px solid #E1E1E1;
	padding-top: 4rem;
}

footer .logo { width: 70%; max-width: 200px;}

footer ul.menu .title {
	
	font-size: 1.3em;
	text-transform: uppercase;
}

footer ul.menu a {
	
	margin: 0;
	padding: 0;
	font-size: 1.2em;
	color: #2b2b2d;
}

footer ul.menu a.button { width: 80%; }

footer .logos { min-width: 150px; width: 50%; }
footer .logos { margin-top: 2rem; min-width: 150px; width: 50%; }

footer .credits {
	background-color: #2881C1;
	color: #FFF;
	margin-top: 3rem;
	padding: 1rem 0;
}
@media screen and (max-width: 1023px) { footer .credits, footer .credits .text-right { text-align: center; } }
footer .credits a { color: #FFF; }

.hover-2,
.hover-1 { -webkit-transition: all 0.5s ease-out; cursor: pointer;  }
.hover-1:hover { background-color: #2881C1  !important; color: white !important; }
.hover-2:hover { background-color: #666  !important; color: white !important; }

/**
 * 	
 * 
 * 
 *  CSS
 * 
 * 
 * 
 */

@media screen and (max-width: 1440px) {
	nav .master-logo { width: 75%; margin: auto;};
}
@media screen and (max-width: 1400px) {
	nav .menu a { padding: 0.7rem 0.7rem; };
}
@media screen and (max-width: 1400px) {
	nav .menu-desktop a { font-size:0.9em; };
}
@media screen and (max-width: 1200px) {
	nav .menu-desktop a { text-transform: capitalize; };
}


/* Small only */
@media screen and (max-width: 39.9375em) { 
	
	
	#banner .slick-container .item .text-container {
		height: 100%;
	    display: flex;
	    align-items: center;
	    width: 100%;
	    font-size: 0.7em;
	    top: 0 !important;
	    left: 0 !important;
	}
	#banner .slick-pagination { display: block !important; margin-top: 2rem; }
	
	#home #centro .bloco-1 { padding: 3rem; }
	#home #centro h3 { font-size: 1.5em; }
	
	#master-title h1 { font-size: 1.5em; }
	#home .section-text { font-size: 1.5em; }
	
	footer ul.menu a.button { width: 100;% }
	
	#home #intervencao2 .marcacao a { padding: 1rem 1rem; font-size: 1em; }
	
	#home #contactos .contatos-info .title { margin-top: 3rem; }
	#home #problematicas .accordion-item .accordion-title { font-size: 1.8em; }
	
	#centro .item-doctor { text-align: center; }
	
	
	.item-address:after {
		
		content: '';
		display: block;
		height: 0.3rem;
		border-bottom: 1px solid #F1F1F1;
		width: 40%;
		margin: auto;
		margin-bottom: 1.3rem;
	}
	
	footer ul.menu { margin-top: 2rem; }
}

/* tiny only */
@media screen and (max-width: 399px) {
	
	#banner .slick-container .item .text-container {
		height: 100%;
	    display: flex;
	    align-items: center;
	    width: 100%;
	    font-size: 0.7em;
	    top: 0 !important;
	    left: 0 !important;
	}
	#banner .slick-pagination { display: block !important; margin-top: 2rem; }
	
	#home #centro .bloco-1 { padding: 1rem; }
	
	#master-title { transform: none; }
	#master-title h1 { font-size: 1.3em; display: block;}
	
	footer ul.menu a.button { width: 100%; }
	
	#home #intervencao2 .marcacao a { padding: 1rem 1rem; font-size: 1em; }
	
	#home #contactos .contatos-info .title { margin-top: 3rem; }
	#home #problematicas .accordion-item .accordion-title { font-size: 1.3em; }
	
	#centro .item-doctor { text-align: center; }
	
	.item-address:after {
		
		content: '';
		display: block;
		height: 0.3rem;
		border-bottom: 1px solid #F1F1F1;
		width: 40%;
		margin: auto;
		margin-bottom: 1.3rem;
	}
	footer ul.menu { margin-top: 2rem; }
}
  
/* Medium and up */
@media screen and (min-width: 40em) {}

@media screen and (min-width: 1390px ) {}
 
/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
	
	#banner .slick-container .item .text-container { font-size: 0.9em; }
	#master-title h1 { font-size: 1.5em; }
	#home .section-text { font-size: 1.5em;}
	
	footer ul.menu a.button { width: 100%; }
}
  
/* Large and up */
@media screen and (min-width: 77em) {}
  
/* Large only */
@media screen and (min-width: 77em) and (max-width: 89.9375em) {}


input[type]::placeholder,
textarea::placeholder {
	font-family: 'Montserrat-light', Arial, Helvetica, sans-serif;
	font-size: 0.9em;
	color: #2b2b2d;
	opacity: 1;	
}
[type="checkbox"] { margin-bottom: 0; }
.containerCheck {
	line-height: 1.4;
}
.law {

	display: block;
	font-size: 0.8em;
	color: grey;
}
ul.menu.social li {
	margin-right: 0.5rem;
}
ul.menu.social a {
	color: #2b2b2d;
	font-size: 1.1rem;
}

.container-social {

	display: flex;
	-webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	justify-content: space-between;
}

@media screen and (max-width: 1023px) {

	.logo {

		width: auto !important;
	}

	.container-social { 
		
		align-items: center; 
	}

	.container-social .social { 

		margin-top: 2rem;
		margin-bottom: 2rem;
	}
}

.container-menu-btn .button.btn2 {
	margin-top: 0.8rem;
}

footer .container-menu ul.menu { 
	height: 100%;
	justify-content: space-between;
 }
 footer a:hover {

	color: var(--blue ) !important;
 }

 @media screen and (max-width: 639px) {
	.container-menu-btn .button { margin: auto; }

	.container-menu-btn .button.btn1 { margin-top: 2rem; }
	.container-menu-btn .button.btn2 { margin-bottom: 2rem; }

	.tiny-text-center {

		text-align: center;
	}
}

@media screen and (max-width: 399px) {

	footer ul.menu a.button { width: 90%; }
}



#contacts-item {

	margin-top: 5rem;
	background-color: #FEFEFE;
}

#contacts-item .section-title {

	font-size: 1.9em;
    margin-bottom: 4rem;
    padding: 0;
    text-transform: uppercase;
	text-align: center;
}

#contacts-item .container {

	display: grid;
	grid-template-columns: repeat(4, 1fr );
	gap: 2rem;
}

@media screen and (max-width: 1024px) { #contacts-item .container { grid-template-columns: repeat(2, 1fr ); } }
@media screen and (max-width: 600px) { #contacts-item .container { grid-template-columns: repeat(1, 1fr ); } }


#contacts-item .container .item {

	text-align: center;

	display: flex;
	-webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

#contacts-item .container .item span {

	font-size: 2.5em;
	background-color: #CCDFFF;
	color: #1972f5;
	padding: 0.5rem 0.7rem;
	border-radius: 10px;
}

#contacts-item .container .item .title {

	font-size: 1.4em;
	margin-top: 1rem;
}

#contacts-item .container .item .desc {

	font-size: 1.3em;
}

#contacts-item .container .item .button {

	border-radius: 10px;
	background-color: #1972f5;
}

#newsletter {

	margin-top: 3rem;
}

#newsletter .title {

	color: #2881C1;
	font-size: 2em;
}

#newsletter .subtitle {

	color: #2881C1;
	font-size: 1.3em;
}

#newsletter .container {
	width: 95%;
	displaY: flex;
	gap: 2%;
}
#newsletter .button { margin: 0; }

@media screen and (max-width: 1200px) { 

	#newsletter .container {
		display: block;
	}
	#newsletter .button {
		margin-top: 1rem;
	}
}

#newsletter .termsChecker label { font-size: 0.9em; }