	/*
	 * Theme Name: Cecilia Meireles
	 *
	 * assets/css/main.css | Definições de globais e de estrutura
	 *
	 */


	 /* Elements */
	html, body {
		font-family: var(--font-body);
		height: 100%;
		margin: 0px;
		padding: 0px;
		color: var(--ink);
		letter-spacing: 0;
		background: var(--cream);
	}

	*, *::before, *::after {
		box-sizing: border-box;
	}

	a {
	 	text-decoration: none;
	}

	iframe {
		width: 100%;
		/* min-height: 440px; */
	}

	/* Structure */
	#header {
		width: 100%;
		height: auto;
	}

	#subheader {
		height: 60px;
	}

	.header-front-page #subheader {
		height: 120px;
	}
	
	#footer {
		width: 100%;
		height: auto;
	}	

	#main {
		min-height: calc(100vh - 960px);		
	}

	#main.front-page {
		min-height: calc(100vh - 1020px);		
	}

	/* General classes */
	.wrapper {
	width: calc(100% - 60px);
	max-width: 1400px;
	margin: 0 auto;
}

	.separated-area:after {
  		content: "";
	 	display: block;
  		width: 1120px;  
  		height: 1px;
    	clear: both;
  		margin-bottom: 70px;
  		border-bottom: 1px solid #d2d2d2;	 	
	}

	.button {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: center;
    	text-decoration: none;
    	text-transform: uppercase;
    	letter-spacing: 0.3px;
    	cursor:pointer;
    	color: #686578;
	}

	.button.prev {
		transform: scaleX(-1);
	}

	.button.disabled {
		cursor: default;
		opacity: 0.5;
	}

	.button-rounded {
    	height: 30px;
    	border-radius: 20px;
		background-color: #686578;
		justify-content: center;
    	color: white;
    	padding: 0px 20px;
    	font-size: 10px;
	}

	.button-rounded:visited {
		color: white;
	}

	.button-outline {
		background-color: #ffffff;
		color: #686578;
		border: 1px solid #686578;
	}

	.button-outline:visited {
		color: #686578;
	}

	.button-disabled {
		background-color: #b0b0b0;
		cursor:wait;
	}

	.button-icon {
		background: transparent;
		color: #545361;
    	font-size: 20px;
	}

	.button-icon.button-text i {
		padding-right: 6px;
	}

	.field {
		height: 26px;
		border: 1px solid #686578;
		border-radius: 20px;
		background-color: #ffffff;
		color: #686578;
		letter-spacing: 0.3px;
		text-transform: uppercase;
		text-align: center;
		padding-left: 10px;
		padding-right: 10px;
	}

	.field-message {
		position: absolute;
		left: 10px;
		top: 40px;
		font-size: 10px;
		font-weight: bold;
		text-transform: uppercase;
		display: none;
	}

	.option {
		position: relative;
	}

	.option > input {
		position: absolute;
		left: 0;
		top: 0;
		opacity: 0;
		z-index: -1000;
	}

	.option > input + label .checkbox-checked,
	.option > input:checked + label .checkbox-unchecked {
		display: none;
	}

	.option > input + label .checkbox-unchecked,
	.option > input:checked + label .checkbox-checked {
		display: block;
	}

	.error .field {
		color: #c60808;
		border-color: #c60808; 
	}

	.error .field-message {
		display: block;
		color: #c60808;
	}

	.message .field-message {
		display: block;
	}
	
	.panel-container.pages-0 div {
		display: none !important; 
	}
	.controls {
		display: flex;
		flex-direction: row;
	}
	.panel-container.pages-1 .controls {
		display: none !important;
	}  

	.panel {
		overflow: hidden;
		position: relative;
	}

	.panel > div {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		display: flex;
		flex-direction: row;
		transition-property: left;
		transition-duration: 300ms;
		transition-timing-function:  ease-out;
	}	

	.panel > div > div {
		height: 100%;
		flex-shrink: 0;
	}	

	.hyperlink {
		cursor: pointer;
	}

	img.filled {
		object-fit: fill;
		width: 100%;
		height: 100%;
	}

	img.cover {
		object-fit: cover;
		width: 100%;
		height: 100%;
	}

	img.contain {
		object-fit: contain;
		height: 100%;
	}	

	.centered {
		display: flex;
		align-items: center;
    	justify-content: center;
	}

	.vcentered {
		display: flex;
		align-items: center;
	}

	.two-column {
		display: flex;
		flex-direction: row;
		align-items: center;
	}

	.two-column > .stretch {
		flex-grow: 1;
	}

	.two-column > div:first-child {
		justify-content: flex-start;
	}

	.two-column > div:nth-child(2) {
		justify-content: flex-end;
	}

	.two-column.reverse > div:first-child {
		justify-content: flex-end;
	}

	.two-column.reverse > div:nth-child(2) {
		justify-content: flex-start;
	}

	.two-column.centered > div {
		justify-content: center;
	}

	.form-process {
	    visibility: hidden;
	    position: absolute;
	    left: 0; top: 0;
	    height:0; width:0;
	    border: none;
	}

	.resizable-parent {
		position: relative;
	}

	.resizable-parent .resizable-item {
		display: block;
		position: absolute;
	}


	/* Specific classes common to various pages */
	.language-switcher {
		font-size: 12px;
		font-weight: 400;
		color: #a9a4ab;
		letter-spacing: 0.3px;
		text-transform: uppercase;
	}

	.language-switcher a, a:visited {
		color: #a9a4ab;
	}

	.language-switcher .current {
		color: #686578;
	}

	.textblock {
		font-size: 14px;
		font-weight: normal;
		margin-bottom: 45px;
	}

	.textblock:last-child {
		margin-bottom: 0px;	
	}

	.textblock .title {
		color: #545460;
		font-size: 11px;
		font-weight: bold;
		letter-spacing: 0.3px;
		text-transform: uppercase;
		padding-bottom: 10px;
		margin-bottom: 12px;
		border-bottom: 1px solid #e8e8e8;
	}

	.textblock .content > br:first-child {
		display: none;
	}

	.textblock p:last-child {
		margin-bottom: 0px;
	}

	.dateblock {
		text-transform: uppercase;
	}

	.dateblock > div {
		display: flex;
		flex-direction: row;
	}

	.date {
		margin-left: 10px;
		width: 90px;
	}

	.date.full {
		width: 140px;
	}

	.date:first-child {
		margin-left: 0px;
	}
	
	.date .day {
		font-weight: bold;
	}



.sponsors {
    text-align: center;
    margin: 0px 0 20px;
    padding-top: 0px;
    border-top: 1px solid #e5e5e5;
}

.sponsors img {
    max-width: 700px;
    width: 100%;
    height: auto;
}

@media screen and (max-width: 1365px) {

	iframe {
		min-height: 300px;
	}

	.header-front-page #subheader {
		height: 160px;
	}

	#footer {
		height: 1120px;
	}	

	#main.front-page {
		min-height: calc(100vh - 1460px);		
	}

	#main.front-page {
		min-height: calc(100vh - 1520px);		
	}

	.wrapper {
		width: 660px;
	}

	.separated-area:after {
		width: 660px;
	}

	.data {
		width: 80px;
	}	

}	

@media screen and (max-width: 760px) {

	iframe {
		min-height: 250px;
	}

	#header {
		height: initial;
		min-height: 200px;
	}	

	.header-front-page #subheader {
		height: 60px;
	}		

	#footer {
		height: 1340px;
	}	

	#main {
		min-height: calc(100vh - 1600px);		
	}

	.wrapper {
		width: 344px;
	}

	.wrapper.no-margin {
		width: 380px;
	}

	.separated-area:after {
		width: 344px;
  		margin-bottom: 90px;
	}	

	.wrapper.no-margin.separated-area:after {
		width: 380px;
  	}

	.datas > div {
		justify-content: center;
	}

	.data {
		width: 90px;
	}


}	
