/*FONTS <<< Carregar as fontes no ficheiro fonts.css >>> */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;900&display=swap');
.montserratLight { font-family: 'Montserrat', sans-serif; font-weight:300; }
.montserrat { font-family: 'Montserrat', sans-serif; font-weight:400; }
.montserratSemiBold { font-family: 'Montserrat', sans-serif; font-weight:600; }
.montserratBlack { font-family: 'Montserrat', sans-serif; font-weight:900; }

html { position: relative; width: 100%; max-width: 100%; overflow-x: hidden; }
body { position: relative; width: 100%; max-width: 100%; overflow-x: hidden; color: #33393B; font-size: 16px; line-height: 150%; font-family: 'Montserrat', sans-serif; font-weight:400; background-color: #EAF4F5; background-image: url('../images/client/padrao-fundo.png'); background-repeat:repeat; background-position:center; background-size:auto; }
section { position: relative; width: 100%; max-width: 100%; }
strong,.bold,.semiBold { font-weight: 600; }
em,.italic { font-style: italic; }
a { text-decoration: none; }
.light { font-weight:300; }
.black { font-weight:900; }
.uppercase { text-transform: uppercase; }
.lowercase { text-transform: lowercase; }
.ancora { position: absolute; top: -150px; left: 50%; pointer-events: none; }
.ancora#rota-da-agua { top: -100px; }

.limitador { width: 1400px; max-width: 100%; margin: auto; }
.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl,.container,.row > * { padding-left: 30px; padding-right: 30px; }
.row { margin-left: -30px; margin-right: -30px; }

.stdText iframe { max-width: 100%!important; }
.stdText img { max-width: 100%; height: auto; }
.stdText ul, .stdText ol { padding-left: 40px; padding-right: 40px; margin-bottom:20px }
.stdText ul li { list-style: disc; }
.stdText ol li { list-style: decimal; }
.stdText h1,.stdText h2,.stdText h3,.stdText h4,.stdText h5,.stdText h6 { margin-bottom:30px; }
.stdText h1 { font-size: 28px; line-height: 110%; }
.stdText h2 { font-size: 26px; line-height: 110%; }
.stdText h3 { font-size: 24px; line-height: 110%; }
.stdText h4 { font-size: 22px; line-height: 120%; }
.stdText h5 { font-size: 20px; line-height: 120%; }
.stdText h6 { font-size: 18px; line-height: 120%; }
.stdText p { margin-bottom:20px; }
.stdText a { color: #33393B; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.stdText a:hover { color: #4DABBE; }

.textoPopup { color: transparent!important; text-shadow: 0 0 0 rgba(49, 143, 159, 1), 0 -25px 0 rgba(49, 143, 159, 0); }
.textoPopup:hover { color: transparent; text-shadow: 0 25px 0 rgba(49, 143, 159, 0), 0 0 0 rgba(49, 143, 159, 1); }

.stdButton { width: fit-content; background-color: transparent!important; min-height: 60px; display:flex; justify-content: center; align-items:center; flex-wrap:nowrap; border-radius:3px; overflow:hidden; z-index:1; }
.stdButton img { margin-right:15px; width: auto; height: 30px; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.stdButton i { margin-right:15px; font-size: 18px; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.stdButton p { color: transparent!important; font-weight:600; text-transform:uppercase; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.stdButton p { color: transparent; text-shadow: 0 0 0 rgba(255, 255, 255, 1), 0 -25px 0 rgba(255, 255, 255, 0); }
.stdButton::before { content:""; position:absolute; top:0; left:0; width:100%; height:100%; background-color: #4DABBE; z-index:-2; }
.stdButton::after { content:""; position:absolute; top:0; left:50%; width:0; height:100%; z-index: -1; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.stdButton:hover::after { left: 0; width: 100%; background-color:#248B97; }
.stdButton:hover img,.stdButton:hover i { transform:rotate(360deg); transform-origin:center center; }
.stdButton:hover p { color: transparent; text-shadow: 0 25px 0 rgba(255, 255, 255, 0), 0 0 0 rgba(255, 255, 255, 1); }

.stdButtonWhite::before { background-color: #ffffff; }
.stdButtonWhite:hover::after { background-color: #C8C8C8; }
.stdButtonWhite p,.stdButtonWhite i { color: #318F9F; }
.stdButtonWhite p,.stdButtonWhite i { color: transparent; text-shadow: 0 0 0 rgba(49, 143, 159, 1), 0 -25px 0 rgba(49, 143, 159, 0); }
.stdButtonWhite:hover p,.stdButtonWhite:hover i { color: transparent; text-shadow: 0 25px 0 rgba(49, 143, 159, 0), 0 0 0 rgba(49, 143, 159, 1); }

.titulo1 { font-size: 48px; line-height: 100%; }
.titulo2 { font-size: 36px; line-height: 100%; }
.titulo3 { font-size: 22px; line-height: 120%; }

.mb-60 { margin-bottom:60px; }
.mb-50 { margin-bottom:50px; }
.mb-40 { margin-bottom:40px; }
.mb-30 { margin-bottom:30px; }
.mb-20 { margin-bottom:20px; }
.mb-10 { margin-bottom:10px; }

.white { color:#ffffff; }
.blue { color: #4DABBE; }

.popup .popupBox1 { width: 850px; background-color:#EAF4F5; }
.popup .fotoEstoria { position:relative; width: 100%; max-width:100%; padding-bottom:62.5%; background-size:cover; background-position:center; background-repeat:no-repeat; }

/*
.section1 .slick, .section1 .slick-list, .section1 .slick-track, .section1 .slick-slide { height: 100%; }
*/

.filtro::before { content:""; position:absolute; top:0; left:0; width:100%; height:100%; background-color:rgba(0, 0, 0, 0.6); z-index:-5; pointer-events:none; }

.section1 { margin-top:110px; margin-bottom: 100px; text-align:center; }
.section1 .limitador { position:relative; }
.section1 .limitador::before { content:""; position:absolute; top:0; left:30px; width:calc( 100% - 60px ); height:100%; z-index:-1; background-color: #318F9F; background: #318F9F linear-gradient(to right, rgba(0,168,169,0), rgba(0,168,169,1)); }
.section1 .jarallax { position: relative; padding:180px 0; }
.section1 .box { position: relative; display:flex; flex-direction: column; align-items: center; }
.section1 .box .iconPlay { width:160px; max-width:100%; }
.section1 .box .iconPlay:hover { transform: scale(1.2) rotate(360deg); transform-origin:center center; }
.section1 .box2 { position: relative; width: 100%; max-width: 100%; height: 100%; padding: 50px 30px 30px 30px; display: flex; justify-content: center; flex-wrap: wrap; flex-direction: column; text-align: left; z-index:1; }
.section1 .box2::before { content:""; position:absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: transparent; z-index:-1; border-radius:3px; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.section1 .box2:hover::before { top: -30px; left:-30px; width:calc( 100% + 60px ); height:calc( 100% + 60px ); background-color: #4DABBE; -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); }
.section1 .box2 i { font-size:20px; width: fit-content; }
.section1 .box2:hover i { transform: rotate(360deg); transform-origin:center center; }

.section2 { margin-bottom: 100px; }
.section2 .areaImagem { position:relative; width:300px; max-width:100%; margin: auto; margin-bottom: 30px; border-radius: 50%; padding:30px; background-color:#ffffff; }
.section2 .areaImagem div { width:100%; max-width:100%; padding-bottom:100%; border-radius: 50%; background-size:cover; background-position:center; background-repeat:no-repeat; }
.section2 .areaImagem:hover { padding:0px; }
.section2 .areaBrasao { position:relative; width:300px; max-width:100%; margin:auto; }
.section2 .brasao { width:100%; max-width:100%; padding-bottom: 100%; margin-top:30px; background-size:contain; background-position:center; background-repeat:no-repeat; }
.section2 .fundo { position:absolute; top: -30px; left:0; width:100%; height:100%; z-index:-1; background-size:contain; background-position:center; background-repeat:no-repeat; background-image:url('../images/client/elemento-1.png'); }
.section2 .box1 { margin-top: 180px; }
.section2 .box2 { margin-top: 150px; }

.section3 { margin-bottom: 100px; }
.section3 .limitador { position:relative; padding:100px 0; }
.section3 .limitador::before { content:""; position:absolute; top:0; left:-50vw; width:calc( 100% + 50vw - 30px ); height:100%; z-index:-2; background-color: #318F9F; background: #318F9F linear-gradient(to left, rgba(0,168,169,0), rgba(0,168,169,1)); }
.section3 .limitador::after { content:""; position:absolute; bottom:-2px; right:28px; width:255px; height:255px; z-index:-1; background-size:contain; background-position:center; background-repeat:no-repeat; background-image:url('../images/client/elemento-2.png'); }
.section3 .areaMapa { position: relative; width:650px; max-width:100%; margin:auto; margin-bottom:50px; z-index:1; }
.section3 .mapa { position:relative; width:100%; max-width:100%; padding-bottom:100%; background-size:contain; background-position:center; background-repeat:no-repeat; }
.section3 .mapa .ponto { position:absolute; width:30px; height:30px; background-image: url("../images/client/mapa-ponto.png"); background-size: contain; background-position: center; background-repeat: no-repeat; cursor: pointer; z-index:5; }
.section3 .mapa .ponto:hover { transform:scale(1.5); }
.section3 .areaInfo { display: none; position: relative; width: 350px; max-width:100%; margin:auto; margin-bottom:50px; }
.section3 .areaInfo .info { position:relative; width: calc( 100% + 30px); max-width: calc( 100% + 30px); padding:30px; background-color:#ffffff; margin-left: auto; margin-right: -30px; -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); overflow: auto;
    height: 70vh; }
.section3 .areaInfo .closeInfo { position:absolute; top:0px; right:-5px; padding: 5px; z-index:10; cursor:pointer; font-size:20px; color:#4DABBE; }
.section3 .areaInfo .closeInfo:hover i { transform:rotate(360deg); transform-origin:center center; }
.section3 .areaInfo img { max-width:100%; }
.section3 .areaPops { position: relative; display:flex; justify-content:flex-start; flex-wrap:wrap; gap:10px; z-index:1; }
.section3 .areaPops .stdButton { -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); }

.section4 { margin-bottom: 100px; }
.section4 a { color: #33393B; }
.section4 .box { position:relative; height: 100%; padding: 30px; cursor: pointer; -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); }
.section4 .box .areaImagem { position:relative; width:100%; max-width:100%; }
.section4 .box .imagem { width:100%; max-width:100%; padding-bottom:62.5%; background-size:cover; background-position:center; background-repeat:no-repeat; }
.section4 .box:hover { background-color:#ffffff; }

.section5 { margin-bottom: 100px; }
.section5 .box { position: relative; cursor: pointer; display: flex; justify-content: center; align-items: center; flex-direction: column; flex-wrap: wrap; width:300px; max-width: 100%; height: 250px; margin: auto; margin-bottom: 60px; padding: 30px; text-align:center; -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); }
.section5 .box .imagem { width:65px; height:65px; margin-bottom: 15px; background-size:contain; background-position:top center; background-repeat:no-repeat; }
.section5 .box:hover { background-color: #FFFFFF; }
.section5 .areaFlex { display:flex; justify-content:space-between; flex-direction:column; height: 100%; }
.section5 .barraAzul { position: relative; width:100%; background-color:#00A8A9; flex: 1; }
.section5 .barraAzul::before { content:""; position:absolute; top:0; right: 0px; width: 100vw; height:100%; z-index:-2; background-color:#00A8A9; }

.section6 { margin-bottom: 100px; }
.section6 .box { position: relative; width:100%; min-height:150px; padding: 30px; margin-bottom:5px; cursor:pointer; }
.section6 .box::before { content:""; position:absolute; top:0; left:0; width:100%; height:100%; background: transparent; z-index:-1; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out;  }
.section6 .box:hover::before { background: #318F9F; }
.section6 .box.fundo1 { background: #318F9F linear-gradient(to right, rgba(0,168,169,0), rgba(0,168,169,1)); }
.section6 .box.fundo2 { background: #318F9F linear-gradient(to left, rgba(0,168,169,0), rgba(0,168,169,1)); }
.section6 .areaBrasao { position:relative; width:300px; max-width:100%; margin:auto; }
.section6 .areaBrasao .fundo { position:relative; width:100%; height:100%; padding-bottom: 100%; background-size:contain; background-position:center; background-repeat:no-repeat; background-image:url('../images/client/elemento-3.png'); }

.section7 { margin-bottom: 50px; }
.section7 a,.section7 .stdPopup { color: #33393B; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out; }
.section7 a:hover,.section7 .stdPopup:hover { color: #4DABBE; }
.section7 .box2 { text-align:right; }
.section7 .formNewsletter { position:relative; }
.section7 .areaContactos { display:flex; align-items:flex-start; }
.section7 .areaBrasao { position:relative; width:100px; max-width:100%; margin-right: 30px; }
.section7 .brasao { width:100%; max-width:100%; padding-bottom: 100%; background-size:contain; background-position:center; background-repeat:no-repeat; }
.section7 .contactos { flex:1; }
.section7 .contactos p { margin-bottom:20px; }
.section7 .contactos p span { font-size:12px; }
.section7 .box5 p { margin-bottom:15px; }
.section7 .box5 a,.section7 .box5 .stdPopup { margin:0 15px 15px 0; }
.section7 .utd { text-align:right; }
.section7 #micrositeUTD { width:45px; }

#emailNewsletter,#name1,#contact1,#subject1,#message1 { display: inline-block; vertical-align: middle; position:relative; width:100%; max-width:100%; height: 60px; margin-bottom: 10px; background-color:#ffffff; border-radius:3px; border:1px solid #CCCDCE; }
#emailNewsletter { padding-right:72px; }
#name1,#contact1 { width:calc( 50% - 5px ); }
#name1 { margin-right:10px; }
#message1 { padding-top:15px; padding-bottom:15px; min-height:120px; height:120px; max-height:120px; resize:none; }
#subject1 { display:none; }
#submitNewsletter { position:absolute; top:0; right:0; width: 60px; height:60px; z-index:1; cursor: pointer; text-align:center; display:flex; justify-content:center; align-items:center; } 
#submitNewsletter:hover { background-color:#248B97; }
#submitNewsletter:hover i { color:#ffffff; }
#checkForRealContactNewsletter, #checkForRealContact1 { text-align:left!important; }
#checkForRealContactNewsletter .form-check,#checkForRealContact1 .form-check { margin-bottom:10px; }
#checkForRealContactNewsletter label, #checkForRealContact1 label { font-size:13px; }
#checkForRealContactNewsletter .stdPopup, #checkForRealContact1 .stdPopup { font-weight:600; }
div.socialNetworks { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:flex-start; gap: 10px; }
div.socialNetworks div.socialNetworkIcon { display: flex; justify-content: center; align-items: center; width:60px; height:60px; margin: 0; background-color:#CAE6EC; border-color:#CAE6EC; }
div.socialNetworks div.socialNetworkIcon i { font-size:22px; }
div.socialNetworks div.socialNetworkIcon:hover { background-color:#4DABBE; }
div.socialNetworks div.socialNetworkIcon:hover i { color:#ffffff; }



/* Large Devices, Wide Screens */
@media only screen and (max-width : 1200px) {
    .titulo1 { font-size: 40px; line-height: 100%; }
	.titulo2 { font-size: 30px; line-height: 110%; }
	.titulo3 { font-size: 22px; line-height: 120%; }

	.section1 .box .iconPlay { width:125px; }
	.section2 .areaImagem { padding: 15px; }
	.section3 .areaMapa { width: 500px; }
    .section3 .areaInfo .info { width: 100%; max-width: 100%; margin-left: auto; margin-right: auto; }
}

/* Medium Devices, Desktops */
@media only screen and (max-width : 992px) {
    .section1 .box { padding:0 30px; }
    .section1 .box2 { text-align:center; padding: 40px 30px 20px 30px; }
    .section1 .box2 .titulo3 { margin-bottom:15px; }
    .section1 .box2 i { margin:auto; }
    .section2 .areaImagem,.section2 .areaBrasao { width:200px; }
    .section2 .areaBrasao { margin-bottom:50px; }
    .section2 .areaImagem { padding: 0px; margin-top: 50px; margin-bottom:30px; }
    .section2 .box1 { margin-top: 0px; }
	.section2 .box2 { margin-top: 0px; }
    .section2 .box3 { text-align:center; }
    .section3 .limitador::before { left:0; width: 100vw; }
    .section3 .limitador::after { right:-2px; }
    .section6 .areaBrasao { display:none; }
    .section7 { text-align:center; }
    #checkForRealContactNewsletter, #checkForRealContact1 { text-align: center !important; width: fit-content; margin-left:auto; margin-right:auto; }
    .section7 .box2,.section7 .utd { text-align:center; }
    div.socialNetworks { justify-content:center; }
    .section7 .areaContactos { flex-direction:column; align-items:center; }
    .section7 .areaBrasao { margin: 30px auto 30px auto; }
    .section7 .contactForm { position:relative; width:550px; max-width:100%; margin-left:auto; margin-right:auto; }
    .section7 .contactForm .stdButton { margin-left:auto; margin-right:auto; }
    .section7 .box5 a, .section7 .box5 .stdPopup { margin: 0 8px 15px 8px; }
}

/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
    .titulo1 { font-size: 28px; line-height: 110%; }
	.titulo2 { font-size: 24px; line-height: 110%; }
	.titulo3 { font-size: 20px; line-height: 120%; }

	.section4 .box { width:450px; max-width:100%; margin-left:auto; margin-right:auto; }
}

/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 576px) {
    .container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl,.container,.row > * { padding-left: 15px; padding-right: 15px; }
	.row { margin-left: -15px; margin-right: -15px; }

	.section1 .limitador::before { left:15px; width:calc( 100% - 30px ); }

	.section1 .jarallax { padding:125px 0; }
	.section1 .box { padding:0 15px; }
	.section1 .box2 { padding: 40px 15px 20px 15px; }
	.section3 .limitador::after { width:175px; height:175px; }

	#name1,#contact1 { width: 100%; }
	#name1 { margin-right:0px; }
}
