/* FONTS */


@font-face {
    font-family: 'KlavikaBold';
    src: url('https://static.tecnico.ulisboa.pt/fonts/klavika/klavikaboldbold-webfont.eot?') format('eot'), url('https://static.tecnico.ulisboa.pt/fonts/klavika/klavikaboldbold-webfont.woff') format('woff'), url('https://static.tecnico.ulisboa.pt/fonts/klavika/klavikaboldbold-webfont.ttf') format('truetype'), url('https://static.tecnico.ulisboa.pt/fonts/klavika/klavikaboldbold-webfont.svg#webfontBUN34PZS') format('svg');
    font-weight: bold;
    font-style: normal;
}

/* MAIN */

body, html
{
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	font-family: 'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;
	font-weight: 300;
  background: url(hero.jpg) center;
  background-size: cover;
}

h1
{
	font-family: 'KlavikaBold' ,'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;
	font-size: 40px;
	margin: 40px auto;
	max-width: 620px;
  line-height: 1.2;
}

p
{
	font-size: 22px;
	margin: 40px auto;
	max-width: 620px;
	line-height: 1.5
}

header
{
	position: absolute;
	z-index: 2;
	top: 50px;
	width: 100%;
	text-align: center;
}

header #logo
{
	display: inline-block;
}

header #logo img
{
	width: 160px;
	margin: auto;
  	display: block;
}

section
{
    width: 100%;
    height: 100%;
    position: absolute;
}

#background
{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 1;
	top: 0;
}

#background .overlay
{
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 3;
	background: rgba(0,0,0,0.3);
}

#background video 
{ 
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -100;
 background: url('hero.jpg') no-repeat;
  background-size: cover;
  transition: 1s opacity;
  z-index: 2;
}

#main-content
{
	position: relative;
	z-index: 2;
	top: 50%;
	width: 100%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	padding: 0 50px;
	box-sizing: border-box;
	margin: auto;
	text-align: center;
	color: #fff;
}


#main-content .form-wrap
{
	  width: 100%;
	  max-width: 940px;
	  margin: 80px auto;
}

#main-content .form-wrap form
{
	background: rgba(255,255,255,0.50);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.20);
	border-radius: 3px;
	padding: 0 5px;
	box-sizing: border-box;
	width: 100%;
	overflow: auto;
}

#main-content .element-container
{
	width: 35%;
	display: block;
	float: left;
	padding: 15px 10px;
	box-sizing: border-box;
}

#main-content .element-container:nth-child(3)
{
  width: 30%;
}


/* Código temporário */

#main-content .form-wrap
{
  max-width: 620px;
}

#main-content .element-container:nth-child(2)
{
  display: none;
}

#main-content .element-container
{
  width: 60%;
}

#main-content .element-container:nth-child(3)
{
  width: 40%;
}

/* FIM */


#main-action,
#main-content .dropdown
{
  display: inline-block;
  box-sizing: border-box;
  text-decoration: none;
	font-size: 14px;
  font-family: 'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;
	text-transform: uppercase;
	width: 100%;
    padding: 15px;
    margin: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    border: 0;
}

#main-action
{
	color: #fff;
	background: #009DE0;
  font-weight: 500;
}

#main-content .dropdown 
{
    
    background: #fff;
    color: #45555F;
    border:none;
    outline:none;
    display: inline-block;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    cursor:pointer;
}


#main-content label
{
    position:relative;
    display: inline-block;
    width: 100%;
}

#main-content label:after 
{
    content: '▼';
    font-size: .8em;
    font-weight: 400;
    color: #333;
    right: 12px;
    top: 50%;
    margin-top: -8px;
    padding: 0 0 2px;
    position: absolute;
    pointer-events: none;
}

#main-content label:before
{
    content:'';
    right:6px; top:5px;
    width:20px; height:20px;
    background:#fff;
    position:absolute;
    pointer-events:none;
    display:block;
}


/* INTERACTIONS */

.disabled
,#main-action[href=""]
{
	opacity: .5;
	cursor: default; 
	pointer-events: none;
	outline: none;
}

#main-content #main-action:active
{
	  padding: 16px 15px 14px 15px;
	  background: #008FCC;
	  outline: none;
	  box-shadow: inset 0 1px 1px 0 rgba(0,0,0,.1);
}

/* MOBILE */

/* MOBILE */

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

  h1
  {
    font-size: 32px
  }

  p
  {
    display: none;
  }

  #main-content
  {
    padding: 0 25px;
    max-width: 500px;
  }

  #main-content .form-wrap
  {
    max-width: 450px;
    margin: 40px auto;
  }

  #main-content .form-wrap form
  {
    padding: 0;
    background: transparent;
    box-shadow: none;
  }

    #main-content .element-container
    {
      width: 100% !important;
      padding: 10px 0;
    }
  #background video
  {
    display: none;
  }

  #background .overlay
  {
      background: rgba(0,0,0,0.4);
  }
}

@media screen and (max-height: 649px), screen and (max-width: 500px)  
{
  #main-content
  {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
      top: 0;
      padding-top: 150px;
  }
}


