:root{

	--c-blue: #006BA6;
	--c-teal: #007D99;
	--c-gold: #eeba2b;
	--c-pomegranate: #C4391d;


}

.c-blue{color: var(--c-blue);}
.c-teal{color: var(--c-teal);}
.c-gold{color: var(--c-gold);}
.c-pomegranate{color: var(--c-pomegranate);}

.bg-blue{background-color: var(--c-blue) !important;}
.bg-teal{background-color: var(--c-teal) !important;}
.bg-gold{background-color: var(--c-gold) !important;}
.bg-pomegranate{background-color: var(--c-pomegranate) !important;}


.row{ max-width: 80vw; }
.row.wide{ max-width: 90vw; }
.row.fullwidth{ max-width: 100%; }
.column, .columns {
    float: left;
    padding-left: 10px;
    padding-right: 10px;
    position: relative;
}
.row .row {margin: 0 -10px;}

/* maki */
[class*="maki-"]:before {
  font-family: 'maki', sans-serif;
}

body, p, .sub-nav dt, .sub-nav dd, .sub-nav li, span, div {
    font-family: 'Open Sans', sans-serif;
	font-size: 16px;
    line-height: 1.2;
    color: #555555;
}


label > span{
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit
}

strong{color:#A39161}

a{
	font-family: 'Open Sans', sans-serif;
	font-size:16px;
	color:#555555;
	outline: 0;
	transition:0.25s;
	display: inline-block;
}
a:hover, a:focus, a.active{color:#CCA849;text-decoration:underline}

table a.button{margin-bottom: 0}

.button.expand.small{padding: 10px 20px;}
.button.expand.tiny{padding: 0.825rem 1.25rem;}


.button.btn-small.pill {
	font-size: 12px;
	padding: 5px 10px;
	border-radius: 500px;
	background: var(--c-pomegranate);
	transition: 0.25s;
}

.button.btn-small.pill:hover {opacity: 0.8;}



h2{font-size: 2.125rem;} 
h3{font-size: 1.6875rem;}
h4{font-size: 1.375rem;}
h5{font-size: 1.125rem;} 
h6{font-size: 1.125rem;}

@media only screen and (min-width: 40.0625em) {
	h2{font-size: 2.75rem;} 
	h3{font-size: 2.3125rem;}
	h4{font-size: 1.6875rem;}
	h5{font-size: 1.4375rem;} 
	h6{font-size: 1.125rem;}
}

h1, h2, h3, h4, h5{font-family:Oswald;}

hr{margin:20px 0;border-color:#A39161}


[class*="block-grid-"] {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
}

input[type="text"], input[type="password"], input[type="date"], input[type="number"], input[type="email"], textarea{
	box-shadow: none;
	border: 0;
	border-bottom: 1px solid #ccc;
	padding: 2px;
	background-color: #ececec;
}
input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="number"]:focus, textarea:focus{border-color:#A39161}

.submenu {padding:5px 0 10px;background: rgba(255, 255, 255, 1);box-shadow:1px 1px 3px #888;width: 100%;line-height:55px;position: relative;white-space: nowrap;overflow-x: auto;overflow-y: hidden;transition:0.7s}

.pos-fixed {position:fixed;}

/* offset for anchor links */
*[id]:not(a):not(option):before { 
  display: block; 
  content: " "; 
  margin-top: -75px; 
  height: 75px; 
  visibility: hidden; 
}

.filter{width:100%;height:100%;background:rgba(0, 0, 0, 0.15) !important;}

.clearing-blackout {background: rgba(0, 0, 0, 0.9);}
.clearing-assembled .clearing-container .visible-img, .clearing-assembled .clearing-container .carousel {background: none;}

.orbit-background{border-bottom:5px solid #A39161;height:500px}

.orbit-container .orbit-slides-container li .orbit-caption{
	background: none;
	color: #58595B;
	top:0;
	bottom: inherit;
	text-transform: uppercase; 
	height: 100%;
	padding:0;
	margin:0;
}
.orbit-bullets {
    display: block;
    float: none;
    margin: 0;
    overflow: hidden;
    position: relative;
    text-align: center;
    top: -75px;
}
.orbit-bullets li {background: transparent;border:1px solid #ffffff;height:0.6625rem;width:0.6625rem;}
.orbit-bullets li.active {background: #ffffff;}
.orbit-container .orbit-slides-container img {
    display: inline-block;
}

.main-banner{position: relative;}
.main-banner li{min-height:600px;}
.main-banner h2{font-family: 'Gloria Hallelujah', cursive;color:#fff;background: #A39161;line-height: 72px;display: inline-block;padding: 0 10px;border-radius: 3px;}

.main-banner li[onclick]:hover{
	cursor: pointer;
	opacity: 0.8;
}

.main-banner strong{color: inherit;}


nav{background:#ed1c23;padding:10px 0;}
nav a, nav a:hover, nav p, nav p > *{color:#fff;font-size:14px;}
nav p{margin-bottom:0;}

.menu li{display:inline-block;}
.menu a{margin:0;margin-right:15px;font-size:18px}
.menu a:hover, .menu a.active{text-decoration:none;} 

.menu.partner{margin-left:0;}
.menu.partner img{
	height: 150px;
	object-fit: contain;
	padding: 9px 10px;
}

.menu li.promo{
	border: 2px solid #CCA849;
	position: relative;
	padding: 5px 0 3px;
}

.menu li.promo > a {color:#CCA849;}
.menu li.promo > a > .label{
	position: absolute;
	top: -12px;
	right: -2px;
	background-color: #CCA849;
}

.menu .btn-small{top:-2px}


.fb-follow, .fb-follow+div{
	display:inline-block;vertical-align: bottom !important;
}
.fb-follow > span{
	height: 22px !important;
}

.paralax .filter{padding:80px 0;background:RGBA(0, 0, 0, 0.4)}
.outline-btn{border:3px solid #A39161;background:rgba(255,255,255,0.9);border-radius:3px;color:#A39161;text-transform:uppercase;padding:10px 20px;font-weight:bold;margin-top:30px;font-size:22px}
.outline-btn:hover{text-decoration:none;}

.paralax .outline-btn{border:3px solid #ffffff;color:#ffffff;background:none;}
.paralax .outline-btn:hover{background:#ffffff;color:#000000}
.paralax .carouselbtn .outline-btn:hover{background:RGBA(0, 0, 0, 0.4);color:#000000}

.paralax h4{color:#ffffff;}

.card{
	background:#fff;
	padding: 0 15px;
	box-shadow: 0 1px 5px rgba(85, 85, 85, 0.25);
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
}

.title{color:#a39161;margin-top:0;}


footer{background:var(--c-blue);padding:60px 0 40px;}
footer *{color:#ffffff;font-size:16px;line-height: 1.5;}
footer hr{border-color: #fff;}

.copy{ background:#555555;padding:20px 0 15px; }


.oferta-form{background:#eeeeee;}
.oferta-form h3{color:var(--c-blue);margin-bottom:40px}
.oferta-form ul div:not(.text-left){background:#ffffff;padding:15px;border-radius:3px;transition:0.45s}
.oferta-form ul div:not(.text-left):hover{margin-top: -15px;box-shadow: 6px 6px 0px rgba(103, 102, 102, 0.2);margin-bottom:15px}
.oferta-form ul div span{border-radius:50%;display:block;margin-top:10px;border:5px solid;margin:auto}
.oferta-form ul div span.big-card{height:250px;width:250px;}
.oferta-form ul div span.small-card{height:200px;width:200px;}
.oferta-form ul div[class^="cor"] a:first-of-type{
	font-size:11px;
	padding:10px 20px;
	text-transform:uppercase;
	color:#ffffff;
	top:-20px;
	margin-bottom:-10px;
	position:relative;
	font-weight:bold;
	letter-spacing:1px;
	border-radius:5px
}

.oferta-form ul > li div[class^="cor-"] span{border-color:#A39161;}
.oferta-form ul > li div.cor-criancas span{border-color:#E43316;}
.oferta-form ul > li div.cor-pre-adolescentes span{border-color:#063D78;}
.oferta-form ul > li div.cor-adolescentes span{border-color:#063D78;}
.oferta-form ul > li div.cor-adultos span{border-color:#EF8900;}
.oferta-form ul > li div.cor-intensivos span{border-color:#0A7BA5;}
.oferta-form ul > li div.cor-verao-2020 span{border-color:#0A7BA5;}
                    
.oferta-form ul > li div[class^="cor-"] a:first-of-type, .compare-grid a.title[class^="cor-"], .compare-grid a.title:hover{background:#A39161;}
.oferta-form ul > li div.cor-criancas a:first-of-type, .compare-grid a.title.cor-criancas, .compare-grid a.title.criancas:hover{background:#E43316;}
.oferta-form ul > li div.cor-pre-adolescentes  a:first-of-type, .compare-grid a.title.cor-pre-adolescentes , .compare-grid a.title.pre-adolescentes :hover{background:#063D78;}
.oferta-form ul > li div.cor-adolescentes  a:first-of-type, .compare-grid a.title.cor-adolescentes , .compare-grid a.title.adolescentes :hover{background:#063D78;}
.oferta-form ul > li div.cor-adultos a:first-of-type, .compare-grid a.title.cor-adultos, .compare-grid a.title.adultos:hover{background:#EF8900;}
.oferta-form ul > li div.cor-intensivos a:first-of-type, .compare-grid a.title.cor-intensivos, .compare-grid a.title.intensivos:hover{background:#0A7BA5;}
.oferta-form ul > li div.cor-verao-2020 a:first-of-type, .compare-grid a.title.cor-verao-2020, .compare-grid a.title.verao-2020:hover{background:#0A7BA5;}


.curso-resumo {margin:0;width:100%;}
.curso-resumo li{border-bottom:1px solid #ccc;width:100%;display: block;padding:15px 0}

.curso-contacto {margin-top:40px;padding:0px 10px;border:1px solid #A39161;border-top:0;}
.curso-contacto .title-bar{
	background:#A39161;
	color:#ffffff;
	padding:15px 10px;
	text-align:center;
	text-transform:uppercase;
	margin: 0 -10px 20px
}

.cta-panel{padding: 40px 0 30px;background: #eee}
.compare-grid{display: flex;}
.compare-grid.no-flex{display: block;}
.compare-grid a.title{
	padding: 10px 20px;
	text-transform: uppercase;
	color: #ffffff;
	background: #bfbfbf;
	position: relative;
	font-weight: bold;
	letter-spacing: 2px;
	border-radius: 5px;
}
.compare-grid a.title.default.active, .compare-grid a.title.default:hover{
	background: #a39161;
}
.compare-grid a.title.active{text-decoration: none}
.compare-grid a{display: block;}
.compare-grid.no-flex a{display: inline-block;}
.compare-grid a:not(.title)::before{font-family: FontAwesome;content: "\f105";margin-right: 5px;}
.compare-grid a:not(:last-child){margin: 10px 10px;}
.compare-grid a:not(.title):last-child{margin: 10px 10px 20px}

.bar-list{background: #fff;padding: 10px;margin-bottom: 30px}
.bar-list h5{font-size:20px;background: #A39161;padding: 0;color: #fff;margin: -10px -10px 10px}
.bar-list h5 a{color:inherit;font-size: inherit;padding:10px;display: block}


table.exames{border:0;width:100%;}
table.exames thead tr th{background:#A39161;color:#ffffff;}
table.exames tbody tr:not(.nohover):hover td{background:#202020 !important;color:#fff !important;}
table.exames tbody tr:hover td strong:not(.text-primary){color:#fff !important;}

table.conferencia{border:0;width:100%;}
table.conferencia thead tr th{background:#A39161;color:#ffffff;}
table.conferencia tbody tr:not(.nohover):hover td{background:#f5f5f5 !important;color:#000 !important;}
table.conferencia tbody tr:hover td strong:not(.text-primary){color:#fff !important;}

select.animated{border-color:#000}

.course-title{
	min-height:65px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.image_circle {position: relative;width:150px;height:150px;overflow: hidden;}
.image_circle > img {
  position: absolute;
  left: 50%;
  top: 50%;
  height: 100% !important;
  width: auto;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  max-width: none;
  transition:0.5s
}
.image_circle > img.portrait {
  width: 100%;
  height: auto;
}

#togglebanner{visibility: hidden;display: none}
#togglebanner:checked + .fixed-banner > div{max-height: 100%;}
#togglebanner:not(:checked) + .fixed-banner > div{max-height: 45px;overflow: hidden;}

.togglelabel{
	display: inline-block;
	position: absolute;
	top: -18px;
	left: calc(50% - 18px);
	font-size: 22px;
	background: #a39161;
	width: 35px;
	text-align: center;
	border-radius: 50%;
	color: #fff;
	line-height: 35px;
}

#togglebanner:checked + .fixed-banner > div+.togglelabel i.fa-angle-up::before {
    content: "\f107";
}

.fixed-banner{
	background: #fff;
	padding: 18px 10px 10px;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 9999;
	border-top:2px solid #a39161;
}


.text-inline{display: inline !important;}

.text-bold{font-weight: bold;}
.b-white{border-color:#fff}
.text-black{color:#000}

#minfo{
	position: absolute;
	top:-9999px;
	left:-9999px;
	visibility: hidden;
}

#minfo:not(:checked)+div{display: none;}

.flex-banner{
	display:flex;flex-wrap:wrap
}

.flex-banner > div{
	margin:10px auto;
	max-width: 32%;
}


.survey .s-type{
	display:flex;
	width:100%
}
.survey .s-type > label{
	padding:20px 15px;
	color:#fff;
	width:100%;
	text-align: center;
	margin: 5px;
	font-size: 20px;
	font-weight: 700;
}

.survey .s-type.active label:not(.active){
	opacity: 0.5;
}

.survey input[name=s-type-flag]{
	opacity: 0;
	margin-bottom: 0;
	position: absolute;
	top: -999px;
	left: -999px;
}

.survey .s-qbox{
	pointer-events: none;
	border: 0;
	box-shadow: none;
	padding: 0;
	font-weight: bold;
	background: #fff;
	color:#A39161;
	margin-top: 20px !important;
	margin-bottom: 5px !important;
	font-size: 16px;
	min-height: initial;
	resize: none;
}

/* Professores Listagem */
.lista-equipa li:nth-child(1) .box, .lista-equipa li:nth-child(4n+1) .box{
	background: var(--c-blue);
}
.lista-equipa li:nth-child(2) .box, .lista-equipa li:nth-child(4n+2) .box{
	background: var(--c-gold);
}
.lista-equipa li:nth-child(3) .box, .lista-equipa li:nth-child(4n+3) .box{
	background: var(--c-pomegranate);
}
.lista-equipa li:nth-child(4) .box, .lista-equipa li:nth-child(4n+4) .box{
	background: var(--c-teal);
}

.box{position: relative;cursor: pointer;}

.box img{
	height: 500px;
	width: 100%;
	object-fit: cover;
	object-position: center left;
}

.box:hover img{
	mix-blend-mode: luminosity;
	filter: grayscale(100%);
}
  
.box .team-info{
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 20px;
	color: #fff;
}
.box .team-info h5{
	display: inline-block;
	border-bottom: 4px solid;
	padding-bottom: 5px;
	margin-bottom: 5px;
}
.box .team-info h3, h5{color: inherit;}


.reveal-modal[id^=equipa] img{
	height:calc(100% + 10px); 
	min-height:400px; 
	object-fit: cover;
	object-position: center left;
}


@media only screen and (max-width: 40em) { 
	.flex-banner > div{
		max-width: 100%;
	}
	
	.survey .s-qbox{height:auto}

	.summer-banner{height:500px !important}

	.main-banner li{min-height:350px;}

	.orbit-caption .mgt120{margin-top: 0 !important;}
	.orbit-caption span{font-size: 30px !important;}

	.box img{height: 400px;}

	.reveal-modal[id^=equipa] img{
		width: 100%;
		min-height: auto;
		height: auto;
		object-fit: initial;
	}

}

@media only screen and (min-width: 40.063em) and (max-width: 64em) { 

	.reveal-modal[id^=equipa] img{
		width: 100%;
		min-height: auto;
		max-height: 500px;
	}

} 

@media only screen and (min-width: 64.063em) { 
	.box-stick{
		display:flex
	}
}


.cursos-ops{
	display: flex;
}
.cursos-ops li{
	float: none;
	width: 100%;
	text-align: center;
}
.cursos-ops .tab-title.active > a{
	background-color: #A39161;
	color: #fff
}

.cursos-ops .tab-title > a{
	text-decoration: none !important;
}
