/*-------- COLORS + VARIABLES TO CHANGE --------*/

:root {
  --main-text-color: #000000;
  --main-white-color: #f4f4f4;
  --main-green-color: #00b450;
  --main-yellow-color: #f7931e;
  --main-red-color: #ff0000;
  --main-blue-color: #0000ff;
  --main-background-color: #f4f4f4;
  --main-background-color-rgb: 244,244,244;
  --secondary-background-color: #e7fff1;
  --border-color: rgba(0,0,0,0.8);
  --slight-border-color: rgba(0,0,0,0.2);
  
}

::-moz-selection {color: var(--main-white-color); background: var(--main-green-color);}
::selection {color: var(--main-white-color); background: var(--main-green-color);}

* {color: var(--main-text-color);}



/*-------- SITE CONTEXT --------*/
body {transition: all 1s ease-in-out; background-color: var(--main-background-color); overflow-x: hidden;}

#entry {opacity: 0; transition: all 1s ease-in-out;}

#footer #mainContainer {background-color: var(--main-background-color)}
#mainContainer {width:100vw; max-width: 1920px; padding-top: 150px; margin-right:auto; margin-left:auto; overflow:clip;}
#header, #updates, #footer, #projects, #projectsByList, #switchListGrids {padding-left:20px; padding-right:20px;}

h1, h2, h3, h4, h5, h6, p, ul, li, #citiesMap .label00, #citiesMap .label{font-family: "nimbus-sans", sans-serif !important; font-weight: 400; font-style: normal;  -webkit-font-smoothing: antialiased;}
h1, h2, h3, h4, h5, h6, p {color: var(--main-text-color);}

h1{font-size:60px; line-height:1;}
h2{font-size:30px; line-height:1;}
h3{font-size:24px;}
h4{font-size:17px; text-transform:uppercase; line-height:1;}
h5{font-size:14px;}
p{font-size:24px; line-height:1.15;}
p.big{font-size:30px; line-height:1.15;}
p.small{font-size:17px; line-height:1.2;}
.lowerCase{text-transform:lowercase;}




a{color: var(--main-text-color); text-decoration:none; transition: all 0.5s; opacity:1;}
a:hover{color: var(--main-text-color); opacity:1;}
a:active{color: var(--main-text-color); opacity:1;}
h3.buttonLink a, h2.buttonLink a{color: var(--main-text-color); border:solid 1px var(--border-color);}
h3.buttonLink a:hover, h2.buttonLink a:hover{color: var(--main-green-color); border:solid 1px var(--main-green-color);}


@keyframes generalTransitions {0%   {opacity:0;}  100%  {opacity:1;}}

ul{list-style: none; padding-left: 0; padding:0;}

img{max-width:100%;}
button{background:none; border:none;}



/*-------- PRE-LOADER [GENERAL]--------*/
#preLoader{position:fixed; top:15px; left:500px; pointer-events:none; z-index:7; transition: all 0.4s ease-in-out;}
#preLoader.beforeAnimation{top:0px !important; left:0px !important;}
#preLoader #uccnbraga24LogotypeSymbol {width:95px; height:95px; transition: all 0.4s ease-in-out;}
#preLoader #uccnbraga24LogotypeSymbol.beforeAnimation svg path.strokeForSymbol{stroke-width:calc(97px / var(--windowHeight));}
#preLoader #uccnbraga24LogotypeSymbol.beforeAnimation {width:100vw; height:100vh;}
#preLoader #uccnbraga24LogotypeSymbol svg {animation:preLoaderAnimation 12s ease-in-out infinite;}
#preLoader #uccnbraga24LogotypeSymbol svg path.strokeForSymbol{transition: all 0.4s ease-in-out; stroke-width: calc(95px / 97);}

@keyframes preLoaderAnimation {0%   {transform: rotate(0deg);}  70%  {transform:rotate(360deg);}  100%  {transform:rotate(360deg); }}


/*-------- ENTRY BACKGROUND [GENERAL]--------*/
#entryBackground{position:fixed; width:100vw; height:100vh; top:0px; left:0px; background-color:var(--main-background-color); pointer-events: none; z-index:-1; transition: all 1s ease-in-out; }

/*-------- MAIN SUBTITLES [GENERAL]--------*/
#mainSubtitles{position:fixed; top:175px; left:0px; width:100vw; height:calc(100vh - 175px); opacity:0; transition: all 1.5s ease-in-out; transition-delay:0.5s; pointer-events: none; z-index:7;}
#mainSubtitles h2{position:fixed; font-size:30px; text-transform:uppercase; color: var(--main-white-color); background-color: var(--main-green-color); border:1px solid var(--border-color); text-align:center;}
#mainSubtitles h2:nth-child(1){top:275px; left:-100%; opacity:0; height:55px; padding-left:20px; padding-right: 20px; padding-top: 11px; padding-bottom: 5px; border-radius:55px; transition: all 1s ease-in-out;}
#mainSubtitles h2:nth-child(2){bottom:200px; right:-100%; opacity:0; width:550px; height:85px; padding-left:40px; padding-right:40px; padding-top:12px; padding-bottom:5px; border-radius:55px; transition: all 1s ease-in-out;}

#mainSubtitles.onEntry{opacity:1;}
#mainSubtitles.onEntry h2:nth-child(1){top:275px; left:15%; opacity:1;}
#mainSubtitles.onEntry h2:nth-child(2){bottom:200px; right:10%; opacity:1;}

/*-------- PROMPT BUTTON [GENERAL]--------*/
#promptButton {position:fixed; opacity:0; transition: all 0.5s ease; bottom:80px; right:calc(50vw - 30px); cursor:pointer; z-index:999;}
#promptButton.beforeAnimation {opacity:1;}
#promptButton svg {width:60px; height:60px; transform:rotate(90deg); animation:promptAnimation 2.5s ease-in-out infinite; }
#promptButton svg *{stroke-width:1px;}

@keyframes promptAnimation {0%   {opacity:0}  30%  {opacity:1}  50%  {opacity:0}  80%  {opacity:1}}

/*-------- SUB-HEADER [GENERAL]--------*/
#subHeader{position:fixed; top:0px; left:0px; width: 100vw; padding-top:20px; padding-left:20px; padding-right:20px; transition: all 0.4s ease-in-out; z-index:5;}
#subHeader .row div #uccnbraga24Logotype {float:left; width:316px; height:85px; transition: all 0.4s ease-in-out;}
#subHeader .row div #uccnbraga24Logotype.beforeAnimation {width:379px; height:102px;}
#subHeader .row div #uccnLogotype {float:left; width:112px; height:82px; margin-right:25px; transition: all 0.4s ease-in-out;}
#subHeader .row div #uccnLogotype.beforeAnimation {width:134px; height:98px;}


/*-------- HEADER [GENERAL]--------*/
#header.onEntry{margin-top:calc(100vh - 175px);}
#header{display:flex; position:sticky; top:0px; margin-top:0px; height:175px; background-color: var(--main-background-color); border-bottom: 1px solid var(--border-color); transition: all 1s ease-in-out; z-index:3;}
#header .row {align-self:flex-end; width:100vw;}
#header .row #mainMenu h2, #header .row #languageSwitch h2 {margin-bottom:10px; line-height:1;}
#header .row #mainMenu h2:nth-child(2) {margin-top:-5px; margin-right: 0px; height:39px; border:solid 1px var(--border-color); border-radius:24px; padding:3px 16px 0px 24px; line-height:1}
#header .row #mainMenu h2:nth-child(2) ul {float: left;}
#header .row #mainMenu h2:nth-child(2) svg {float: left; margin-left: 5px; margin-top: 5px;}
#header .row #mainMenu h2 ul li {float:left; margin-right: 25px;}
#header .row #languageSwitch h2 ul li {float:left; margin-right: 15px;} 
#header .row #languageSwitch h2 ul li:last-child {margin-right: 0px;}
#header .row #mainMenu h2 ul li a:after, #header .row #languageSwitch h2 ul li a:after {display:block; content: ''; border-bottom: solid 1px var(--border-color); transform: scaleX(0); transform-origin:  0% 50%; transition: transform 250ms ease-in-out;}
#header .row #mainMenu h2:nth-child(2) ul li a:after {display:none;}
#header .row #mainMenu h2 ul li a:hover:after, #header .row #languageSwitch h2 ul li a:hover:after {transform: scaleX(1);}
#header .row #mainMenu h2 ul li.current-menu-item, #header .row #languageSwitch h2 ul li.current-lang, #header .row #mainMenu h2 ul li.activeMenuItem{border-bottom: 1px solid var(--border-color);}
#header .row #mainMenu h2.mediaOnMenu ul li.current-menu-item{border-bottom: 0px;}
#header .row #mainMenu h2 ul li.current-menu-item a:after, #header .row #languageSwitch h2 ul li.current-lang a:after, #header .row #mainMenu h2 ul li.activeMenuItem a:after{display:none;}


/*-------- MENU BUTTON FOR SMALL DEVICES [GENERAL]--------*/
#smallMenuButton{display:none !important; position:fixed; top:28px; right:20px; transition: all 0.5s; opacity:1; z-index:5;}
#smallMenuButton button, #smallMenuButton button svg{width:64px; height:64px; padding:0; transition: all 0.5s; z-index:9999999999;}
#smallMenuButton button svg line {stroke-width:1px;}


/*-------- PRE FOOTER [GENERAL]--------*/
#preFooter{position:sticky; display:block; bottom:-100px; width:100vw; height:100px; border-top:1px solid var(--border-color); background-color:var(--main-background-color); transition: all 0.5s ease-in-out; z-index:2;}
#preFooter #logotype {display:none !important;}
#preFooter #logotype a svg{width:auto; height:50px; margin-top:5px;}
#preFooter #socialMedia a {transition: all 0.5s;}
#preFooter #socialMedia a:hover {opacity:0.7;}
#preFooter #socialMedia a.facebook, #preFooter #socialMedia a.instagram{float:left; margin-left:20px;}
#preFooter #socialMedia a.facebook svg{width:auto; height:28px;}
#preFooter #socialMedia a.instagram svg{width:auto; height:25px;}

/*-------- FOOTER [GENERAL]--------*/
#footer{height:200px; background-color: var(--main-text-color); padding-left:20px; padding-right:20px;}
#footer .row {height:200px;}
#footer .row #cities {height:200px; padding-top:20px; padding-bottom:20px;}
#footer .row #cities a {float:left; margin-right:15px; opacity:0.8; transition: all 0.5s ease-in-out;}
#footer .row #cities a:hover {opacity:0.5;}
#footer .row #cities a img{width:90%; height:auto; margin-bottom:3px;}
#footer .row #copyright {height:200px; padding-top:20px; padding-bottom:20px;}
#footer .row #copyright h6{color: var(--main-white-color); margin-bottom:0px; opacity:0.8;}


/*-------- MAIN CONTAINER [GENERAL]--------*/
#mainContainer.beforeAnimation{margin-top:175px;}
#mainContainer {opacity:0; transition: all 1.5s ease; transition-delay:0.5s; ;margin-top:0px; min-height:100vh; padding-top:0px; padding-left:0px; padding-right:0px;}
#programme, #spacesMap, #trip{padding-bottom:100px;}


/*-------- MODULES :: FILTER MENU [GENERAL]--------*/
.module.filter.menu {margin-top:35px;}
.module.filter.menu h2 ul li{float:left; height:45px; padding:6px 24px 0px 24px; margin-left:5px; border-radius:24px; border:solid 1px var(--border-color); line-height:1; background-color: var(--main-background-color); transition: all 0.4s ease-in-out; cursor:pointer;}
.module.filter.menu h2 ul li:hover{background-color: var(--main-green-color); color:var(--main-white-color);}
.module.filter.menu h2 ul li.active{background-color: var(--main-green-color); color:var(--main-white-color);}
.module.filter.menu h2 ul li.inactive,.module.filter.menu h2 ul li.inactive:hover {background-color: transparent; color:var(--main-text-color); opacity:0.4; cursor:auto; pointer-events:none;}


/*-------- MODULES :: GRID + SECONDARY MENU [GENERAL]--------*/

.module.grid.item{display:block; height:430px; padding:0px; border-left: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color);}
.module.grid.item:nth-child(1), .module.grid.item:nth-child(2){border-top:1px solid var(--border-color);}
.module.grid.item:nth-child(2n){border-right:1px solid var(--border-color);}
.module.grid.item:last-child {border-right:1px solid var(--border-color);}
.module.grid.item a {display:block; width:100%; height:100%; background-color:var(--main-background-color); transition: all 0.4s ease-in-out;}
.module.grid.item a.withGradient {background-color:none; background:linear-gradient(180deg, rgba(231,255,241,1) 50%, rgba(231,255,241,0) 100%);}
.module.grid.item a > * {transition: all 0.8s ease-in-out;}
.module.grid.item a:hover {background-color: var(--main-green-color);}
.module.grid.item a.withGradient:hover {background-color:none; background:linear-gradient(180deg, rgba(0,0,0,0.5) 50%, rgba(231,255,241,0) 100%);}
.module.grid.item a:hover > div * {color: var(--main-white-color);}
.module.grid.item a:hover > div svg * {stroke: var(--main-white-color);}
.module.grid.item a:hover > .allArea.overlay {opacity:1;}
.module.grid.item a:hover > .bottomArea.right img{opacity:0}
.module.grid.item a .topArea {width:100%; height:50%;}
.module.grid.item a .topArea.left {width:calc(100% - 48px - 60px); height:50%; float:left; padding-top:38px; padding-left:40px;}
.module.grid.item a .topArea.right {width:calc(48px + 60px); height:50%; float:left; text-align:right; padding-top:38px; padding-right:40px;}
.module.grid.item a .topArea h1 {margin-bottom:0px;}
.module.grid.item a .topArea svg {width:60px; height:60px;}
.module.grid.item a .topArea svg *{stroke-width:1px;}
.module.grid.item a .bottomArea {display:flex; width:100%; height:50%;}
.module.grid.item a .bottomArea.left {width:50%; float:left; padding-bottom:40px; padding-left:40px;}
.module.grid.item a .bottomArea.right {width:50%; float:left; justify-content:flex-end; padding-bottom:20px; padding-right:20px;}
.module.grid.item a .bottomArea.right img{opacity:1;}
.module.grid.item a .bottomArea.full {width:100%; padding-bottom:40px; padding-left:40px; padding-right:40px;}
.module.grid.item a .bottomArea p {align-self:flex-end; margin-bottom:0px;}
.module.grid.item a .allArea {position:relative; display:block; width:100%; height:100%; background-size:cover; background-position:50% 50%; z-index:-1;}
.module.grid.item a .allArea.overlay {opacity:0;}
.module.grid.item.last {width:100%;}
.module.grid.item.last a .topArea.left {width: calc(50% - 48px - 60px);}
.module.grid.item.last a .topArea.right {width: calc(50% + 48px + 60px);}
.module.grid.item.last a .bottomArea.full {width:50%;}

.module.grid.secondary.item {border-left:0px; border-right:0px;}
.module.grid.secondary.item a {display:block; width:100%; height:100%; background-color:var(--secondary-background-color); transition: all 0.4s ease-in-out;}
.module.grid.secondary.item a:hover {background-color: var(--main-green-color);}

/*-------- MODULES :: TABLE LIST [GENERAL]--------*/

.module.tableList.all{opacity:0; border-bottom:1px solid var(--border-color); transition: all 0.25s ease-in-out;}
.module.tableList.all.active{display:block !important; opacity:0;}
.module.tableList.title {margin-top:45px; margin-bottom:15px;}
.module.tableList.title div h1 {font-size:42px;}
.module.tableList.group.name {position: sticky; top:350px;}
.module.tableList.group.name h2 {color:transparent; font-size: 40px; -webkit-text-stroke: 1px var(--border-color); padding-top:25px; pointer-events:none; }
.module.tableList.item{border-top:1px solid var(--border-color); overflow-y:hidden; transition: all 0.4s ease-in-out;}
.module.tableList.item div {margin-top:35px; margin-bottom:35px;}
.module.tableList.item div.body {margin-top:0px; margin-bottom:0px;}
.module.tableList.item .header{cursor: pointer;}
.module.tableList.item .first svg {width: 23px; height: 32px; transition:all 0.4s ease-in-out;}
.module.tableList.item .header svg {display:block !important; opacity:1 !important; width:23px; height:32px; transition:all 0.4s ease-in-out;}
.module.tableList.item .header svg * {stroke-width:1px;}
.module.tableList.item .tag{float:left; margin-right:3px; margin-top:15px; border:solid 1px; border-radius:24px; padding:4px 16px 4px 16px; text-transform:none; line-height:1; color: var(--main-text-color); border-color: var(--main-text-color);}

/*-------- .module.tableList.item .tag.main-programme{color: var(--main-green-color); border-color: var(--main-green-color);}
.module.tableList.item .tag.secondary-programme{color: var(--main-yellow-color); border-color: var(--main-yellow-color);}
.module.tableList.item .tag.work-sessions{color: var(--main-red-color); border-color: var(--main-red-color);}
.module.tableList.item .tag.subnetwork-sessions{color: var(--main-blue-color); border-color: var(--main-blue-color);}
--------*/

.module.tableList.item .tag.default{color: var(--main-text-color); border-color: var(--main-text-color);}
.module.tableList.item .tag.crafts-folkarts{color: #dd813d; border-color: #dd813d;}
.module.tableList.item .tag.design{color: #e4b626; border-color: #e4b626;}
.module.tableList.item .tag.film{color: #0f4f87; border-color: #0f4f87;}
.module.tableList.item .tag.gastronomy{color: #217c56; border-color: #217c56;}
.module.tableList.item .tag.literature{color: #1a69ac; border-color: #1a69ac;}
.module.tableList.item .tag.media-arts{color: #442478; border-color: #442478;}
.module.tableList.item .tag.music{color: #c6407A; border-color: #c6407A;}

.module.tableList.item .body{transition: all 0.4s ease-in-out;}
.module.tableList.item .body p{margin-bottom:35px;}
.module.tableList.item .venue svg {width:15px; height:32px; transform:rotate(-90deg); float:left; margin-top:-3px; margin-right:10px;}
.module.tableList.item .venue svg * {stroke-width:1.5px;}



/*-------- MODULES ::  CARD LIST + TEXT LIST + PACKAGE LIST [GENERAL]--------*/
.module.block{display:none; opacity:0; transition:all 0.25s ease-in-out;}
.module.block.active{display:block; opacity:0;}


.module.disclaimer{margin-top:15px; margin-bottom:15px; padding-left:20px; padding-right:20px;}
.module.disclaimer svg {width:15px; height:32px; transform:rotate(-90deg); float:left; margin-top:-8px; margin-right:10px;}
.module.disclaimer svg * {stroke-width:1.5px;}
.module.disclaimer h4 {float:left;  text-transform:uppercase;}

.module.cardList.item{padding:20px; margin-bottom: 15px;}
.module.cardList.item h3, .module.cardList.item p{line-height: 1.1; margin-bottom:0px !important;}
.module.cardList.item h3.subtitle {font-weight: 700;}
.module.cardList.item svg {width:15px; height:32px; transform:rotate(-90deg); float:left; margin-top:12px; margin-right:10px;}
.module.cardList.item svg * {stroke-width:1.5px;}
.module.cardList.item svg > p:first-child {float:left; margin-top:9px;}

.module.cardList.item p.secondBlock{margin-top:15px !important;}
.module.cardList.item h3.buttonLink{margin-top:15px;} 
.module.cardList.item h3.buttonLink.spaces{margin-top:15px;} 
.module.cardList.item h3.buttonLink a{margin-top:25px; height:39px; border-radius:24px; padding:0px 16px 1px 15px; line-height:1}

.module.textList.item{padding:20px; padding-bottom:60px;}
.module.textList.item.title {padding:0px;}
.module.textList.item.accordeon{height:150px; border-top:1px solid var(--border-color); overflow:hidden; transition:all 0.5s ease-in-out;}
.module.textList.item.accordeon:last-child{border-bottom:1px solid var(--border-color);}
.module.textList.item.title h2{font-size:45px;}
.module.textList.item.title svg, .module.textList.item.accordeon .title svg {display:none; width:23px; height:32px; margin-top:5px; transform:rotateX(0deg); transition:all 0.4s ease-in-out;}
.module.textList.item.title svg * {stroke-width:1px;}
.module.textList.item.body {padding:0px;}
.module.textList.item.body{margin-bottom:120px;}
.module.textList.item.body .paragraph:not(last-child){margin-bottom:60px;}
.module.textList.item.body .paragraph h3, .module.textList.item.body .paragraph p{line-height: 1.1; margin-bottom:0px !important;}
.module.textList.item.body .paragraph h3.subtitle {font-weight: 700;}
.module.textList.item.body .paragraph p a{color: var(--main-green-color); border-bottom:1px solid var(--main-green-color); transition: all 0.5s;}
.module.textList.item.body .paragraph p a:hover{color: var(--main-text-color); border-bottom:1px solid var(--main-text-color);}
.module.textList.item.body .paragraph h3.buttonLink{margin-top:25px;}
.module.textList.item.body .paragraph h3.buttonLink a{height:39px; border-radius:24px; white-space: nowrap; text-overflow: ellipsis; overflow-x:hidden; padding:0px 16px 1px 15px; line-height:1}

.module.packageList.item{margin-top:50px; padding:20px; padding-top:0px; padding-bottom:60px;}
.module.packageList.item.title {margin-top:0px; padding:0px;}
.module.packageList.item.title h2{font-size:45px;}
.module.packageList.item.body {margin-top:0px; padding:0px;}
.module.packageList.item.body{margin-bottom:60px;}
.module.packageList.item.body .paragraph:not(last-child){margin-bottom:60px;}
.module.packageList.item.body .paragraph h3, .module.textList.item.body .paragraph p{line-height: 1.1; margin-bottom:0px !important;}
.module.packageList.item.body .paragraph h3.subtitle {font-weight: 700;}
.module.packageList.item.body .paragraph p a{color: var(--main-green-color); border-bottom:1px solid var(--main-green-color); transition: all 0.5s;}
.module.packageList.item.body .paragraph p a:hover{color: var(--main-text-color); border-bottom:1px solid var(--main-text-color);}
.module.packageList.item.body .paragraph h3.buttonLink{margin-top:25px;}
.module.packageList.item.body .paragraph h3.buttonLink a{height:39px; border-radius:24px; padding:0px 16px 2px 15px; line-height:1}


/*-------- MODULES :: GALLERIES LIST [GENERAL]--------*/

.module.galleriesList.item{margin-top:50px; padding:10px; padding-top:0px; padding-bottom:60px;}
.module.galleriesList.item.title {margin-top:0px; padding:0px; padding-left:10px; padding-right:10px;}
.module.galleriesList.item.title h2{font-size:45px;}
.module.galleriesList.item.body{margin-top:0px; margin-bottom:60px;}
.module.galleriesList.item.body.item {margin-bottom:0px; padding-left:10px; padding-right:10px;}
.module.galleriesList.item.body.item h3.buttonLink{line-height: 1.1; margin-bottom:0px !important;margin-top:25px; }
.module.galleriesList.item.body.item h3.buttonLink a{height:39px; border-radius:24px; padding:0px 16px 2px 15px; line-height:1}




/*-------- MODULES :: ARTICLE [GENERAL]--------*/
.module.article.header{padding-top:150px;}
.module.article.header:first-child{padding-top:35px;}
.module.article.header h1{font-size:80px; text-align:center;}
.module.article.header.title{margin-top:0px;}
.module.article.header.mainImage{margin-top:75px; padding-top:0px;}
.module.article.body{margin-top:75px;}
.module.article.body.image{margin-top:75px;}
.module.article.body.image .caption, .module.article.body.imageParagraph.image .caption {margin-top:7px;}
.module.article.body.paragraph{margin-top:0px; margin-bottom:0px;}
.module.article.body.paragraph a, .module.article.body.imageParagraph.paragraph a {text-decoration: underline; color: var(--main-green-color); transition: all 0.5s;}
.module.article.body.paragraph a:hover, .module.article.body.imageParagraph.paragraph a:hover {color: var(--main-text-color);}
.module.article.body.imageParagraph{margin-top:75px; margin-bottom:0px;}
.module.article.body.imageParagraph.image, .module.article.body.imageParagraph.paragraph{margin-top:0px;}
.module.article.body div:first-child{margin-top:0px;}
#news .module.article.body {margin-bottom:150px;}


/*-------- MODULES :: FORMS [CONTACT FORM]--------*/

form {display:block !important;}
.forminator-edit-module{display:none !important;}
.forminator-ui:first-child{margin-top:80px;}
.forminator-row {width:100% !important;font-family: "nimbus-sans", sans-serif; font-weight: 400; font-style: normal;  -webkit-font-smoothing: antialiased; font-size:24px; line-height:1.2; color: var(--main-text-color);}
.forminator-row:nth-child(2){display:inline-block;}
.forminator-row .header.form-select-subject {width:calc(40% - 10px); margin-left:10px; float:left;}
.forminator-row .header.form-select-subject .forminator-field{position: relative;}
.forminator-row .header.form-select-subject .forminator-field label{display:none;}
.forminator-row .header.form-select-subject .forminator-field select {display: none;}
.forminator-row .header.form-select-subject .forminator-field .select-selected {background-color: none; transition:all 0.4s ease-in-out}
.forminator-row .header.form-select-subject .forminator-field .select-selected:after {position: absolute; content: url("https://uccnbraga24.koiastudio.com/wp-content/themes/uccnbraga24template/assets/icons/select_arrow_icon.svg"); top:2px; right:0px; width:23px; height:23px; stroke-width:1.5px; transition:all 0.4s ease-in-out; transform: rotateX(180deg);}
.forminator-row .header.form-select-subject .forminator-field .select-selected:before {content: "Subject: ";}
.forminator-row .header.form-select-subject .forminator-field .select-selected.subjectEn:before {content: "Subject: ";}
.forminator-row .header.form-select-subject .forminator-field .select-selected.subjectPt:before {content: "Assunto: ";}
.forminator-row .header.form-select-subject .forminator-field .select-selected.subjectFr:before {content: "Sujet: ";}
.forminator-row .header.form-select-subject .forminator-field .select-selected.select-arrow-active:after {transform: rotateX(0deg); transition:all 0.4s ease-in-out}
.forminator-row .header.form-select-subject .forminator-field .select-items div,.select-selected {padding:0px; border-bottom:none; cursor: pointer; user-select: none; transition:all 0.4s ease-in-out}
.forminator-row .header.form-select-subject .forminator-field .select-items div {color: rgba(0, 0, 0, 0.6); transition: all 0.4s ease-in-out;}
.forminator-row .header.form-select-subject .forminator-field .select-selected {height:30px; border-bottom:1px solid var(--border-color); color: var(--main-text-color);}
.forminator-row .header.form-select-subject .forminator-field .select-items {position: absolute; background-color: none; top: 100%; left: 0; right: 0; margin-top:10px; z-index:1; opacity:1; transition:all 0.4s ease-in-out}
.forminator-row .header.form-select-subject .forminator-field .select-hide {opacity:0;}
.forminator-row .header.form-select-subject .forminator-field .select-items div:hover, .forminator-row .header.form-select-subject .forminator-field .select-items .same-as-selected {background-color: none; color: rgba(0, 0, 0, 1);}

.forminator-row .header.form-email-address {width:calc(60% - 10px); margin-right:10px; float:left;}
.forminator-row .header.form-email-address .forminator-field {width:100%}
.forminator-row .header.form-email-address .forminator-field label {float:left; width:70px; height:30px; border-bottom:1px solid var(--border-color);} 
.forminator-row .header.form-email-address .forminator-field label .forminator-required {display:none;}
.forminator-row .header.form-email-address .forminator-field input {float:left; width: calc(100% - 70px); height:30px; border:0px; border-bottom:1px solid var(--border-color); background:none; padding-left:0px; -webkit-appearance:none; border-radius:0; -webkit-border-radius:0;}
.forminator-row .header.form-email-address .forminator-field input:focus-visible{outline:none !important;}

.forminator-row .body.form-text-message {width:100%;}
.forminator-row .body.form-text-message .forminator-field {margin-top:200px; width:100%;}
.forminator-row .body.form-text-message .forminator-field label {width:100%; border:0px; background-color:#ffffff; padding-top:10px; padding-left:10px;}
.forminator-row .body.form-text-message .forminator-field .forminator-textarea{width:100%; height:240px; border:0px; background-color:#ffffff; padding:10px; padding-top:0px;}
.forminator-row .body.form-text-message .forminator-field .forminator-textarea:focus-visible{outline:none !important;}

.forminator-row.forminator-row-last {margin-top:40px; text-align:right;}
.forminator-row .forminator-col .forminator-field button{height:39px; border:solid 1px var(--border-color); border-radius:24px; padding:0px 16px 2px 15px; line-height:1; transition:all 0.5s ease-in-out;}
.forminator-row .forminator-col .forminator-field button:hover{color: var(--main-green-color); border:solid 1px var(--main-green-color);}


.forminator-screen-reader-only{display:none;}
.forminator-response-message.forminator-show.forminator-error{position:absolute; top:200px; width:calc((100vw / 12)*8); font-family: "nimbus-sans", sans-serif; font-weight: 400; font-style: normal;  -webkit-font-smoothing: antialiased; font-size:24px; line-height:1.2;}
.forminator-response-message.forminator-show.forminator-error label{ color:#ff0000;}
.forminator-response-message.forminator-show.forminator-success{display:block !important; font-family: "nimbus-sans", sans-serif; font-weight: 400; font-style: normal;  -webkit-font-smoothing: antialiased; font-size:60px; line-height:1.2; text-align:center;}





/*-------- Context Elements [HOMEPAGE]--------*/
#homepage {}
#homepage .row {padding-left:0px; padding-right:0px;}
#homepage .row:not(:first-child) {margin-bottom:320px}
#homepage #homepageSlider{transition: all 0.5s ease-in-out;}
#homepage #homepageSlider.row {height:calc(150vh + 320px); padding-left:0px; padding-right:0px;}
#homepage #homepageSlider.row .slickSlider {position:sticky; top:175px; height:calc(100vh - 175px - 10px); padding-left:20px; padding-right:20px;}
#homepage #homepageSlider.row .slickSlider .slick-list {height:calc(100vh - 175px - 10px);}
#homepage #homepageSlider.row .slickSlider .homepageImage{height:calc(100vh - 175px - 10px); background-repeat:no-repeat; background-size:calc(100vw - 40px); background-position:top left; z-index:-2;}
#homepage #homepageSlider.row .slickSlider .homepageImage.mobile{display:none;}
#homepage #homepageSlider.row .slickSlider .homepageImageGradient {display:block; width:calc(100vw - 40px); height:calc(100vh - 175px - 10px); margin-top:calc((100vh - 175px - 10px)*-1); background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 50%); z-index:-1;;}
#homepage #homepageSlider.row .slickSlider .homepageImageCaption {width: calc(100vw * 0.5); margin-top:calc((100vh - 175px - 40px)*-1); margin-left:40px;}
#homepage #homepageSlider.row .slickSlider .homepageImageCaption h1 {font-size:48px; color: var(--main-white-color); mix-blend-mode:difference;}
#homepage #homepageSlider.row .slickSlider .homepageImageCaption svg {width:100px; margin-left:-14px;}
#homepage #homepageSlider.row .slickSlider .homepageImageCaption svg * {stroke:var(--main-white-color); mix-blend-mode:difference;}

/*-------- Slick Slide [HOMEPAGE]--------*/
.slick-track{height:calc(100vh - 175px - 40px) !important;}
.slick-prev, .slick-next, .slick-dots{display:none !important;}


#homepage #homepageHighlightButtons {margin-top:320px;}


#homepage #homepageVideo {background:linear-gradient(0deg, rgba(0,180,80,0) 0%, rgba(0,180,80,1) 100%);}
#homepage #homepageVideo #homepageVideoItem .embed-container {padding:56.25% 0 0 0; position:relative;}
#homepage #homepageVideo #homepageVideoItem .embed-container iframe{position:absolute; top:0; left:0; width:100%; height:100%;}
#homepage #homepageVideo #homepageVideoItemSinopsis {margin-top: 100px;}


/*-------- Context Elements [ABOUT]--------*/


/*-------- Context Elements [ABOUT - TEAM]--------*/
#team {width:100vw; min-height: 100vh; background-color: var(--main-green-color); border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color);}
#team .row {padding-left:10px; padding-right:10px;}
#team .row #teamItems {margin-top:40px; margin-bottom:100px; column-count:2; column-width: calc(100vw / 12); column-gap: 40px;}
#team .row #teamItems ul li {font-size:24px; line-height:1;}


/*-------- Context Elements [ABOUT - LOGOTYPES]--------*/
#logotypes {width:100vw; height: calc(100vh - 174px - 200px); background-color: var(--main-green-color); border-top: 1px solid var(--border-color);}
#logotypes .row {max-width:1920px; margin:auto; margin-top:25px;}
#logotypes .row .logotypesItems {margin-top:45px;}
#logotypes .row .logotypesItems h6 {font-size:14px;}
#logotypes .row .logotypesItems img{height:50px; width:auto; margin-top:5px; mix-blend-mode: multiply;}
#logotypes .row .logotypesItems img.secondRow{height:75px; margin-left:20px; }



/*-------- Context Elements [ABOUT - MAP]--------*/
#citiesMap {opacity:0; transition:all 1s ease-in-out; transition-delay: 1s; border-top:1px solid var(--border-color); margin-top:75px;}
#citiesMap .row {border-left: 1px solid var(--border-color); border-right: 1px solid var(--border-color); }
#citiesMap .row .city{display:none; background-color: var(--main-background-color); }
#citiesMap .row .city.active{display:block; animation-name: generalTransitions; animation-duration: 1s; animation-fill-mode: forwards;}
#citiesMap .row .city .row{border:0px !important; margin-top:40px;}
#citiesMap .row .city .row div *{margin-bottom:80px;}
#citiesMap .row .city .row div h3.buttonLink a{height:39px; border-radius:24px; padding:0px 16px 2px 15px; line-height:1}
#citiesMap .label{opacity:0 !important; font-size:21px !important; transition:all 0.5s ease-in-out;}
#citiesMap .label.active{opacity:1 !important;}
#citiesMap #map {height: calc(100vh - 174px); border: none; margin: 0px 0; outline:none !important; }
#citiesMap #citiesCard{border-left: 1px solid var(--border-color);}
#citiesMap #citiesCard .row{border:0px !important; margin-top:40px;}
#map div {background-color:transparent !important;}
#map .acf-map img {max-width: inherit !important;}

a[href^="http://maps.google.com/maps"]{dislay:none !important;}
a[href^="https://maps.google.com/maps"]{dislay:none !important;}

.gmnoprint a, .gmnoprint span, .gm-style-cc {
    display:none;
}
.gmnoprint div {
    background:none !important;
}

.gm-style iframe + div { border:none!important; }




/*-------- Context Elements [PROGRAMMES]--------*/
#programmes {margin-top:-1px;}
#secondaryMenu {padding-top:220px; border-left: 1px solid var(--border-color); border-right: 1px solid var(--border-color);}
#secondaryMenu .module.grid.item {border-bottom: 0px;}

/*-------- Context Elements [PROGRAMME]--------*/
#programme {min-height:100vh; background-color:var(--secondary-background-color); border-left:1px solid var(--border-color); border-right:1px solid var(--border-color); }
#programme #programmeHeader {position:sticky; top:175px; height:135px; background: linear-gradient(180deg, rgba(231,255,241,1) 50%, rgba(231,255,241,0) 100%); z-index:2;}
#programme #programmeHeader #programmeTitle {margin-top:25px;}


/*-------- Context Elements [SPACES]--------*/
#spacesMap {opacity:1; transition:all 1s ease-in-out; transition-delay: 1s;}
#spacesMap #map {height: 50vh; border: none; margin: 0px 0; outline:none !important; border-bottom: 1px solid var(--border-color);}
#spacesMap .row.spaces {min-height:50vh;}
#spacesMap .row.spaces .space {margin-top:20px;}

/*-------- Context Elements [SPEAKERS]--------*/
#speakers {min-height:100vh; background-color:var(--secondary-background-color); border-left:1px solid var(--border-color); border-right:1px solid var(--border-color); }
#speakers #speakersHeader {position:sticky; top:175px; height:135px; background: linear-gradient(180deg, rgba(231,255,241,1) 50%, rgba(231,255,241,0) 100%); z-index:2;}
#speakers #speakersHeader #speakersTitle {margin-top:25px;}
#speakers #speakersTable.module.tableList.all {border-bottom:0px !important;}
#speakers #speakersTable #speaker:last-child {border-bottom:0px !important;}
#speakers #speakersTable #speaker #speakerImage img {mix-blend-mode:multiply; filter:grayscale(1)}
#speakers #speakersTable #speaker #speakerName h2 {font-size:42px;}


/*-------- Context Elements [PROGRAMME SOON]--------*/
#programmeSoon {min-height:100vh; background-color:var(--secondary-background-color); border-left:1px solid var(--border-color); border-right:1px solid var(--border-color); }
#programmeSoon #programmeHeader {position:sticky; top:175px; height:135px; background: linear-gradient(180deg, rgba(231,255,241,1) 50%, rgba(231,255,241,0) 100%); z-index:2;}
#programmeSoon #programmeHeader #programmeTitle {margin-top:25px;}
#programmeSoon #programmeDescription {margin-top:45px; margin-bottom:100px;}



/*-------- Context Elements [NEWS]--------*/
#news {margin-top:-1px;}

/*-------- Context Elements [PLAN THE TRIP]--------*/
#trip{min-height:100vh; border-left:1px solid var(--border-color); border-right:1px solid var(--border-color);}
#trip #tripHeader {position:sticky; top:175px; height:135px; background: linear-gradient(180deg, rgba(231,255,241,1) 50%, rgba(231,255,241,0) 100%); z-index:2;}


/*-------- Context Elements [REGISTRATIONS]--------*/
#registrations {min-height:100vh; padding-bottom:60px;}
#registrations .row {margin-top:75px;}
#registrations p{font-size:30px; line-height:1.15; margin-bottom:25px;}
#registrations p a{color: var(--main-green-color); border-bottom:1px solid var(--main-green-color); transition: all 0.5s;}
#registrations p a:hover{color: var(--main-text-color); border-bottom:1px solid var(--main-text-color);}
#registrations h2.buttonLink {margin-top:75px;}
#registrations h2.buttonLink a{height:39px; border-radius:24px; padding:0px 16px 2px 15px; line-height:1}





/*-------- BE CREATIVE ÁGORA OVERRIDES --------*/

#subHeader.beCreativeAgora{height:110px !important; background-color: var(--secondary-background-color) !important;}
#header.beCreativeAgora{height:110px !important; background-color:transparent !important; z-index:6 !important; opacity: 1 !important;}
#header.beCreativeAgora h2 ul li:nth-child(2) {display:none;}
#header.beCreativeAgora 
#smallMenuButton.beCreativeAgora {display:none !important;}
#mainMenu.beCreativeAgora{display:none !important;}
#preFooter.beCreativeAgora{display:none !important;}
#languageSwitch.beCreativeAgora{position:fixed !important; top:15px; right:15px; z-index:6; height:110px !important;}
#mainContainer.beCreativeAgora{padding-top: 25px !important; background-color: var(--secondary-background-color) !important;}

#mainContainer.beCreativeAgora #beCreativeAgoraExhibitionBody{margin-top:40px !important;}
#beCreativeAgora row{ padding:20px !important;}
#mainContainer.beCreativeAgora .module.textList.item.title svg {display:block; transform:rotate(-90deg); float:left; margin-top:2px !important; margin-right:10px;}
#mainContainer.beCreativeAgora .module.textList.item.title h2 {font-size:36px; float:left; max-width:270px;}

