/* ========================================== */
/* Conf websites CSS. Fiorucci A. 2018-2022   */
/* For internal pages                         */
/* ========================================== */

/* Color style: Red #C00000 Blue #C0039AC


/* Main declarations */
	body {
		margin: 0;
		padding: 0;
		font-family: 'Roboto Condensed', sans-serif;
		background: #F4F4F4;
		color: #505050;
		font-size: large;
		line-height: 1.8;
	}

/* Title style */
	h1 {
		font-family: 'Itim', cursive;
		margin-top: 4rem;
		margin-bottom: 2rem;
		font-weight: bold;
		color: #C00000;
		text-align: left;
	}
	
/* Remove the dotted outline on focused links */
a, a:hover, a:active, a:focus {
  outline: 0;
}

/* Paragraph style */
	p {
		font-size: large;
	}
	p a:link, p a:visited{
		position: relative;
		text-decoration: none;
		font-weight: bold;
		color: #505050;
	}
	/* Animate a:hover colouring */
	p a:hover{
		transition: 0.1s ease;
		color: #C00000; 
	}
	/* Animate a:hover underlining */
	/*
	p a:before{
		content: "";
		position: absolute;
		width: 100%;
		height: 1.5px;
		bottom: -2px;
		left: 0;
		background: #C00000;
		visibility: hidden;
		transform: scaleX(0);
		transition: 0.2s ease;
	}
	*/
	
	.nam{
		color: #C00000;
	}
	
	/*
	p a:hover:before{
		visibility: visible;
		transform: scaleX(1);
	}
	*/
	
	p a.notunderline:hover:before{
		visibility: hidden;
	}
	
	.itemlist:before {
		content: "\25BA \2001";
	}
	.itemlist {
		position: relative;
		margin-left: 30px;
	}
	
	.decal{
		position: relative;
		margin-left: 80px;
		margin-bottom: 40px;
	}
	
/* Form iframe */
.formg {
	width: 720px; 
	height: 1750px; 
	border:none; 
	margin:0;
}

/* Header with title */
	.header {
		top: 0;
		width: 100%;
		height: 24vh;
		background-image: url('images/header.png'); 
		background-repeat: no-repeat; 
		background-size: cover;
		color: black;
		position: relative;
		font-family: Itim, 'cursive';
		font-size: 5rem;
		font-weight: 900; 
		text-shadow: 0 0 2px #595959, 0 0 4px #404040;
		display: flex;
		justify-content: center;
		align-items: center;
		line-height:0.7;
	}
	
	.justifiedcontent {
		margin-left: 4%;
		margin-right: auto;
		text-align: left;
		
	}
	
	.subheader {
		font-size: 3rem;
		color: #545454;
	}
	
	@media screen and (max-width: 900px) {
		.header{
			height: 15vh;
			font-size: 2rem;
			line-height:1;
			text-shadow: 0 0 4px white;
		}
		.subheader {
			font-size: 1.2rem;
			color: #545454;
			text-shadow: 0 0 4px white;
		}
		body {
			font-size: small;
		}
		h1 {
			margin-top: 2rem;
		}
		p {
			font-size: small;
		}
		.formg {
			width:95%;
		}
	}
	@media screen and (max-height: 600px) {
		.header{
			font-size: 2rem;
			line-height:1;
			text-shadow: 0 0 4px white;
		}
		.subheader {
			font-size: 1.2rem;
			color: #545454;
			text-shadow: 0 0 4px white;
		}
		body {
			font-size: medium;
		}
		p {
			font-size: medium;
		}
	}
	
/* Centered content */
.centered {
	justify-content: center;
	text-align: center;
}

/* Navigation bar */
	.topnav {
		z-index: 2;
		font-family: 'Roboto Condensed', sans-serif;
		letter-spacing: 0.05em;
		font-weight: bold;
		font-style: normal;
		text-transform: uppercase;
		background-color: white;
		overflow: hidden;
		box-shadow: 0px 15px 30px -15px #c0c0c0;
		top: 0;
		right: 0; 
		position: -webkit-sticky; 
		position: sticky; 
	}
	
	.navlink, .navlink-active {
		float: left;
		display: inline-block;
		color: #505050;
		text-align: center;
		padding-top: 1.5vh;
		padding-bottom: 1.3vh;
		padding-left: 1.5vw;
		padding-right: 1.5vw;
		text-decoration: none;
		font-size: large;
		position: relative;
		transition:all 0.2s ease;
	}
	
	.navlink:hover, .navlink-active:hover {
		opacity: 1;
		color: #C00000;
		background-color: #efefef;
		/*box-shadow: inset 0px 60px 60px -60px #006699; */
	}
	
	.navlink::before, .navlink-active::before {
		transition: 0.1s ease;
		height: 5px;
		content: "";
		position: absolute;
		background-color: #C00000;
		height: 0%;
		top: 0;
		left: 0;
		width: 100%;
	}

	.navlink:hover::before, .navlink-active:hover::before {
		height: 6%;
	} 
	
	.navlink-active::before {
		height: 6%;
	} 
	
	.navlink-active {
		color: #C00000;
	}
	
/* Ensure responsive */
	.topnav .icon {
		display: none;
	}
	@media screen and (max-width: 1080px) {
		.topnav a {display: none;}
		.topnav a.icon {
			float: left;
			display: inline-block;
			color: #505050;
			text-align: center;
			padding-top: 1.5vh;
			padding-bottom: 1.3vh;
			padding-left: 1.4vw;
			padding-right: 1.4vw;
			text-decoration: none;
			font-size: large;
			position: relative;
			transition:all 0.2s ease;
		}
		.topnav a.icon:hover {
			opacity: 1;
			color: #C00000; 
		}
		
		/*.topnav a.icon::before {
			transition: 0.1s ease;
			height: 5px;
			content: "";
			position: absolute;
			background-color: #005282;
			height: 0%;
			top: 0;
			left: 0;
			width: 100%;
		}

		.topnav a.icon:hover::before {
			height: 10%;
		}*/
	}
	@media screen and (max-width: 1080px) {
		.topnav.responsive {
				position: -webkit-sticky; 
			position: sticky;
		}
		.topnav.responsive .icon {
			position: absolute;
			left: 0;
			top: 0;
		}
		.topnav.responsive a {
			float: none;
			display: block;
			text-align: right;
			text-transform: uppercase;
		}
	}

/* Bottom design with contact bar */
	.botbar {
		z-index: 2;
		position: fixed;
		left: 0;
		bottom: 0;
		right: 0;
		padding-left: 0;
		font-family: 'Open Sans', sans-serif;
		font-weight: 400;
		font-style: normal;
		overflow: hidden;
		background-color: rgb(60,60,60);
	}
	
	.botlink {
		float: left;
		display: inline-block;
		color: white;
		text-align: center;
		padding: 1.5vh 1.3vw;
		text-decoration: none;
		font-size: large;
		position: relative;
		transition:all 0.2s ease;
	}
	
	.botlink:hover {
		opacity: 1;
		color: #ffcb9a;
		box-shadow: inset 0 60px 60px -60px #6f6757; 
	}
	
	.botlink::before {
		transition: 0.2s ease;
		height: 5px;
		content: "";
		position: absolute;
		background-color: #ffcb9a;
		height: 0%;
		top: 0;
		left: 0;
		width: 100%;
	}

	.botlink:hover::before {
		height: 10%;
	} 
	
	
	/* INSPIRATION FROM https://codepen.io/naguib/pen/wzoRWJ */
	/* ===================================================== */
	/* ===================================================== */
	/* ===================================================== */

li {
	list-style-type: none;
}

.social {
	z-index: 3;
  position: fixed;
  right: 0;
  bottom: 0%;
  perspective: 1000px;
}

.social li a {
  display: block;
  height: 19px;
  width: 30px;
  background: #252525;
  border-bottom: 1px solid #252525;
  font-family: 'FontAwesome', 'Source Sans Pro', sans-serif;
  font-size: large;
  color: white;
  padding: 10px;
  text-decoration: none;
  text-align: center;
  transition: background .5s ease .300ms
}

.social li a:hover {
	color: white;
}

.social li:first-child a { 
	border-radius: 20px 0 0 0;
}
.social li:last-child a { 
	border-radius: 0 0 0 20px;
}

.social li:first-child a:hover {
	background: #dd4b39; 
}
.social li:nth-child(2) a:hover { 
	background: #00acee;
}
.social li:nth-child(3) a:hover { 
	background: #3b5998;
}
.social li:nth-child(4) a:hover { 
	background: #006699;
}
    
.social li a span {
	
  width: 200px;
  float: left;
  font-weight: bold;
  text-align: center;
  background: #D0D0D0;
  position:absolute;
  color: #252525;
  margin-top: -7px;
  margin-left: -275px;
  padding: 8px;
  transform-origin: 0;
  visibility: hidden;
  opacity: 0;
  transform: scaleY(0);
  border-radius: 5px;
  transition: all .3s ease;
}

.social li span:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 216px;
  top: 7px;
  border-left: 10px solid #D0D0D0;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-top: 10px solid transparent;
}

.social li a:hover span {
  visibility: visible;
  opacity: 1;
  transform: scaleY(1);
}

/* Sponsor gallery */
	.sponsor{
		padding: 30px;
	}
	
/* Image gallery */
	.gallery_row {
		text-align: center;
	}
	.gallery_column {
		float: left;
		width: 30%;
		padding: 1.5%;
		text-align: center;
		position: relative; 
		z-index: 1; /* Put everything behind the navbars! */
	}
	/* Clear floats after image containers */
	.gallery_row::after {
		content: "";
		clear: both;
		display: table;
	}
	@media screen and (max-width: 800px) {
		.gallery_column {
			width: 60%;
			padding-left: 20%;
			padding-right: 20%;
			position: relative;
		}
	}
	/* Overlay */
	.image_overlay {
		opacity: 1;
		display: block;
		width: 100%;
		height: auto;
		transition: .5s ease;
		
	}
	.overlay {
		position: absolute;
		transition: .5s ease;
		opacity: 0;
		top: 50%;
		left: 50%;
			-webkit-transform: translate(-50%, -50%);
			-moz-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			-o-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		text-align: center;
	}
	.gallery_column:hover .image_overlay {
		opacity: 0.3;
	}
	.gallery_column:hover .overlay {
		opacity: 1;
	}
	.text_overlay {
		background-color: rgb(60,60,60);
		color: white;
		font-size: large;
		padding: 1rem;
	}
	/* Image zoom */
	.image_zoom {
		position: relative;
		overflow: hidden;
	}
	.image_zoom img {
		max-width: 100%;
			-webkit-transition: all 0.5s;
			-moz-transition: all 0.5s;
		transition: all 0.5s;
	}
	.image_zoom:hover img {
			-webkit-transform: scale(2.2);
			-moz-transform: scale(2.2);
			-ms-transform: scale(2.2);
			-o-transform: scale(2.2);
		transform: scale(2.2);
	}
	

/* Form style */
	.form-container {
		border: 3px solid rgb(60,60,60);
		width: 50%;
		margin: 0 auto;
		margin-top: 100px;
		margin-bottom: 100px;
		width: 650px;
		padding: 30px;
		background: rgb(230,230,230);
	}
	.title-container {
		font-family: 'Acme', sans-serif;
		font-size: xx-large;
		margin-bottom: 50px;
	}
	input[type=text], input[type=email] {
		width: 50%;
		padding: 6px 3px;
		margin-top:8px;
		margin-bottom:60px;
		box-sizing: border-box;
		border: none;
		border-bottom: 3px solid #ccc;
			-webkit-transition: 0.5s;
			-moz-transition: 0.5s;
			-ms-transition: 0.5s;
			-o-transition: 0.5s;
		transition: 0.5s;
		outline: none;
		font-size: medium;
		font-style: italic;
		font-family: Montserrat, sans-serif;
		background: rgb(230,230,230);
	}
	input[type=text]:focus, input[type=email]:focus {
		border-bottom: 3px solid rgb(60,60,60);
		background: rgb(230,230,230);
	}
	input[type=email]:focus:invalid {
			-webkit-box-shadow: none;
			-moz-box-shadow: none;
		box-shadow: none;
		border-color: red;
	}
	input[type=text]:focus:invalid {
			-webkit-box-shadow: none;
			-moz-box-shadow: none;
		box-shadow: none;
		border-color: red;
	}
	input[type=radio] {
		margin-top:12px;
		margin-bottom:12px;
	}
	input[type=submit] {
		display: inline-block;
		border: 3px solid rgb(60,60,60);
			-webkit-border-radius: 6px;
			-moz-border-radius: 6px;
			-ms-border-radius: 6px;
			-o-border-radius: 6px;
		border-radius: 6px;
		background-color: rgb(200,200,200);
		color: rgb(60,60,60);
		text-align: center;
		font-size: large;
		font-family:'Montserrat';
		font-weight: bold;
		padding: 20px;
		width: 30%;
			-webkit-transition: all 0.5s;
			-moz-transition: all 0.5s;
			-ms-transition: all 0.5s;
			-o-transition: all 0.5s;
		transition: all 0.5s;
		margin-top: 50px;
		margin-bottom: 20px;
		margin-left: 35%;
		margin-right: 35%;
		cursor: pointer;
	}
	input[type=submit]:hover {
		background-color: rgb(60,60,60);
		color: rgb(242,242,242);
	}
	
/* Table style */
	td {
		text-align: center;
		border: none;
		padding: 15px;
	}
	
	td.pic {
		width:20%;
	}
	
	td.txt {
		width:40%;
		padding-left: 30px;
		padding-right: 30px;
	}
	img.left-img {
		width:100%;
		border-radius: 15px 50px;
	}
	img.right-img {
		width:100%;
		border-radius: 50px 15px;
	}
	
/* Schedule style */
	.tablecontainer {
		text-align: center;
	}

	.sc {
		border: 1px solid rgb(50,50,50);
		padding: 15px 30px 15px 30px;
		text-align: center;
		color: black;
	}
	
	.sc a {
		text-decoration: none;
		color: inherit;
	}
	
	.sc, .sc:hover {
			-webkit-transition: ease-in-out 0.5s;
			-moz-transition: color ease-in-out 0.5s;
			-ms-transition: color ease-in-out 0.5s;
			-o-transition: color ease-in-out 0.5s;
		transition: ease-in-out 0.4s;
	}
	
	td.sc:hover {
		background-color: #C00000;
		color: white;
	}
	
	.schedule_table {
		table-layout: fixed;
	}
	
	.schedule_table td:first-child {
		font-weight: bold;
	}
	
	.schedule_table td:first-child:hover {
		background-color: #F4F4F4;
		color: black;
	}
	
	.schedule_table tr:first-child {
		border: 3px solid rgb(50,50,50);
	}
	
	.schedule_table td:first-child, .schedule_table th:first-child {
		border-left:  3px solid rgb(50,50,50);
		border-right: 3px solid rgb(50,50,50);
	}
	
	.schedule_table tr:last-child {
		border-bottom: 3px solid rgb(50,50,50);
	}
	
	.schedule_table td:last-child {
		border-right: 3px solid rgb(50,50,50);
	}
	
	/* Colouring */
	.talk {
		background-color: #ffcdd2;
		font-weight: bold;
		font-style: italic;
	}
	.sem {
		background-color: #ffebee;
		font-weight: bold;
		font-style: italic;
	}
	.lunch {
		background-color: #d9d9d9;
	}
	.break {
		background-color: #f2f2f2;
	}
	.event {
		font-weight: bold;
		background-color: #d9d9d9;
	}
	
	.void {
		background-color: #F4F4F4;
	}
	.anchor{
		display: block;
		height: 50px; 
		margin-top: -50px; 
		visibility: hidden;
	}
	span.spk{
		font-style: normal; 
		font-weight: normal;
	}
	
a.button{
	display: inline-block;
	text-align: center;
	text-decoration: none;
	width: 200px;
	font-weight: bold;
	color: #C00000;
	border: 2px solid #C00000;
	padding: 1em 2em;
	transition: ease-in-out 0.3s;
}

a.button:hover{
	color: white;
	background-color: #C00000;
}

/* List */

ul {
	position: relative;
	list-style: none;
	margin-left: 20px;
	padding-left: 2em;
}

ul li:before {
	content: "\25B6 \2001";
	position: absolute;
	left:0;
}

ul.nobullet {
	position: relative;
	list-style: none;
	margin-left: 50px;
	padding-left: 0em;
}
 ul.nobullet li:before {
    content: "";
	position: absolute;
	left:0;
}

/* Short links */
ul li a:link, ul li a:visited{
		position: relative;
		text-decoration: none;
		font-weight: bold;
		color: #505050;
	}
	/* Animate a:hover colouring */
	ul li a:hover{
		transition: 0.1s ease;
		color: #C00000; 
	}

ul li.ncite:before {
	content: "\2014";
	position: absolute;
	left:0;
}
	

	
/* End CSS */ 