html {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	background-color: transparent;
}
body {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 0.85em;
	background-color: transparent;
	overflow: hidden;
	overflow-y: scroll !important;
}
a:link, a:visited, a:active {
	color: #1E5C97;
	text-decoration: underline;
}
a:hover {
	color: #666666;
	text-decoration: none;
}
p, td, div, label, input, button, ul, li, h1 { 
	margin: 0;
	padding: 0;
	border: 0;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 1.00em;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
p {
	padding: 0 0 15px 0;
}
ul { 
	margin-left: 20px;
	padding: 0;
	border: 0;
}
li {
	list-style-type: square;
}
img, iframe, table {
	margin: 0;
	padding: 0;
	border: 0; 
}
table {
	border-spacing: 5px;
	margin-bottom: 150px;
	width: 97%;
}
td {
	vertical-align: top;
	text-align: left;
	width: 50%;
	border: 0;
}

.Title { 
	font-size: 1.15em;
	font-weight: bold;
	color: #02478C;
	padding: 20px 0 3px 3px;
	width: 100%;
}
.Alert {
	margin: 0 0 15px 3px;
	width: 285px;
	font-weight: bold;
	color: #F30;
}
.LabelU, .LabelP, .LabelH {
	margin: 10px 0 0 3px;
	float: left;
	width: 80px;
}
.Input {
	font-size: 1.00em;
	margin: 0 0 5px 5px;
	padding: 8px 0 8px 8px;
	border: 1px solid #cccccc;
	width: 200px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	-webkit-appearance: none;
}
.Button {
	font-size: 1.00em;
	margin: 0 0 0 5px;
	padding: 8px;
	border: 1px solid #cccccc;
	background-color: #02478C;
	width: 200px;
	color: #FFF;
	text-align: center;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	-webkit-appearance: none;
}
input[type='checkbox'] {
	-webkit-appearance: checkbox;
}
input[type="radio"] { 
	-webkit-appearance: radio; 
}
input[type="submit"], input[type="button"] { 
	-webkit-appearance: button; 
}
select { 
	-webkit-appearance: textfield; 
}


#container {
	margin: 0;
	padding: 0;
	border: 0;
	width: 100%; 
	height: 100%; 
	position: fixed;
	top: 60px;
	z-index: -1;
	background-image: url(https://login.unibocconi.it/shibboleth/grafica/sfondo.jpg);
	background-repeat: no-repeat;
	background-position: top; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	opacity:0.4;
	filter: alpha(opacity=40);
}


#containerHeader {
	margin: 0;
	padding: 0;
	border: 0;
	width: 100%;
	height: 60px;
	background-color: #333333;
	position: fixed; 
	top: 0px;
	z-index: 1;
	clear: both;
	overflow-y: hidden;
}
.imgHeader {
	margin: 15px 0 10px 15px;
	padding: 0;
	border: 0;
	float: left;
}
.titleHeader {
	margin-right: 15px;
	padding: 0;
	border: 0;
	float: right; 
}
.titleHeader p {
	margin-top: 8px;
	color: #FFF;
  font-family: Georgia, 'Times New Roman', Sans-Serif;
	font-size: 41px; 
}
.titleHeader img {
	height: 60px;
}


#containerFooter {
	margin: 0;
	padding: 0;
	border: 0;
	width: 100%;
	height: 58px;
	background-color: #333333;
	position: fixed;
	bottom: 0px;
	z-index: 1;
	clear: both;
	overflow-y: hidden;
}
.textFooter {
	margin: 20px 10px 20px 15px;
	border: 0;
	padding: 0;
	color: #FFFFFF;
	float: left;
}
.logoFooter {
	margin: 5px 20px 5px 0;
	border: 0;
	padding: 0;
	float: right;
}


#containerPage {
	margin: 80px 0 0 0;
	border: 0;
	padding: 0; 
	clear: both;
}
.textPage {
	margin: 0 0 0 15px;
	padding: 0;
	border: 0;
	width: 100%;
	clear: both;
}
.iframePage {
	width: 100%;
	margin: 40px 0 0 15px;
	padding: 0;
	border: 0;
	-webkit-overflow-scrolling: touch !important; 
	overflow-y: scroll !important;
	overflow-x: hidden;
}
.Iframe {
	width: 100%; 
	height: 100%; 
	height: 75vh;
	background-color: transparent;
}
#Dframe {
	width: 100%; 
	height: 30px; 
	background-color: transparent;
}


@media only screen and (max-width: 400px) { 
	p { font-size: 1.05em; }
	table { margin-bottom: 300px; }
	.imgHeader img { width: 110px; height: 23px; margin-top: 8px; }
	.titleHeader img { height: 41px; margin-top: 15px; }
	.titleHeader p { margin-top: 25px; font-size: 21px; }
	.Alert  { font-size: 1.10em; text-align: center; margin: 0 auto; }
	.LabelH { font-size: 1.10em; width: 95%; height: 5px; }
	.LabelU, .LabelP { font-size: 1.10em; width: 95%; text-align: center; padding: 0 8px 3px 8px; margin-top: 9px; float: none; }
	.Input  { font-size: 1.10em; width: 95%; text-align: center; padding: 8px; margin: 0; } 
	.Button { font-size: 1.10em; width: 95%; text-align: center; padding: 8px; margin: 0; }
	.textPage { text-align: center; width: 95%; margin: 0 0 0 7px; }
}

@media only screen and (max-width: 500px) { 
	p { font-size: 1.05em; }
	td { border-bottom: 3px solid #999; }
	table { margin-bottom: 250px;	}
	table td {display:inline;} 
	table td:nth-child(1) {display:block;width:100%;float:left;}
	table td:nth-child(2) {display:block;width:100%;}
	table td:nth-child(3) {}
}

@media only screen and (max-device-width: 667px) {
	.imgHeader img { margin-left: 5px; }
	.titleHeader img { margin-right: 15px; }
	.Alert  { width: 100%; text-align: center; margin-bottom: 10px; }
	.LabelU, .LabelP  { padding: 0 8px 3px 8px; margin-top: 3px; }
	.Input  { padding: 8px; margin: 0 0 5px 5px; }
	.Button { padding: 8px; margin: 0 0 0 5px; }
	#container { top: 0px; }
	#containerPage { margin: 15px; }
	#containerHeader { position: static; height: 60px; top: auto; z-index: 0; }
	#containerFooter { position: static; height: 58px; bottom: auto; z-index: 0; } 
}

@media only screen and (max-device-width: 667px) and (orientation: landscape) {
	.Alert  { font-size: 1.20em; margin-bottom: 10px; }
	.LabelH  { width: 100px; float: left; }
	.LabelU, .LabelP  { font-size: 1.20em; width: 100px;  float: left; }
	.Input  { font-size: 1.20em; } 
	.Button { font-size: 1.20em; }
	.iframePage { margin: 10px 0 0 0; }
	.textPage { margin: 0; }
}

@media only screen and (max-device-width: 667px) and (orientation: portrait) {
	.Alert  { font-size: 1.15em; margin: 0 auto; margin-bottom: 10px; }
	.LabelH { height: 3px; }
	.LabelU, .LabelP { font-size: 1.15em; width: 100%; text-align: center;  float: none; }
	.Input  { font-size: 1.15em; width: 100%; text-align: center; } 
	.Button { font-size: 1.15em; width: 100%; text-align: center; }
	.iframePage { margin: 30px 0 0 0; }
	.textPage { text-align: center; margin: 0; }
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), 
	only screen and (min-resolution: 192dpi) and (orientation: portrait), 
	only screen and (min-resolution: 2dppx) and (orientation: portrait) {
	#container {
		top: 60px;
	}
	#containerPage {
		margin: 80px 0 0 0;
	}
	#containerHeader {
		position: fixed; 
		height: 60px;
		top: 0px;
		z-index: 1;
	}
	#containerFooter {
		position: fixed;
		height: 58px;
		bottom: 0px;
		z-index: 1;
	}
	.textPage { margin-left: 5px; }
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape), 
	only screen and (min-resolution: 192dpi) and (orientation: landscape), 
	only screen and (min-resolution: 2dppx) and (orientation: landscape) {
	td { font-size: 0.65em; }
}
@media only screen and (max-device-width: 1279px) and (orientation: portrait) {
	p { font-size: 1.15em; }
	td { border-bottom: 3px solid #999; }
	table { margin-bottom: 150px; }
	table td {display:inline; } 
	table td:nth-child(1) {display:block;width:100%;float:left;}
	table td:nth-child(2) {display:block;width:100%;}
	table td:nth-child(3) {}
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and ( min-resolution: 192dpi), only screen and ( min-resolution: 2dppx) {
	p { margin-left: 10px; }
}
