html {
    background: url('background.png');
    background-repeat: no-repeat;
    
}

h1, h2, h3 {
    font-family: 'Fjalla One', sans-serif;
}

h2 {
	font-size: 2rem;
	margin-bottom: 20px;
}

h3 {
    color: #6a1c1a;
    font-size: 1.5rem;
    margin: 15px;
}

p, li, td {
	font-family: 'Noto Sans', sans-serif;
	color: #2C3531;
    line-height: 1.5em;
}

a {
	color: #3567A0;
	font-family: 'Noto Sans', sans-serif;
}

a:hover, a:active, a:focus {
	color: #2B8276;
}

section {
	width: 90%;
    margin: auto;
    max-width: 1200px;
    padding: 1rem 0;
}


/* Navigation and Header*/

nav {
	background: #6a1c1a;
}

.menu-items {
	height: 60px;
	width: 90%;
	max-width: 1600px;
	margin: auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
}

.menu-items a {
	margin-right: 30px;
	font-weight: 700;
	font-size: 1.2rem;
	letter-spacing: 1px;
}



nav p, nav li, nav a {
	color: #D1E8E2;
}

.mobile-menu, .mobile-items {
	display: none;
}

header {
    background: #6a1c1a;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #EFEFEF;
    padding: 0 1rem 0 0;
}

header img {
    border-left: 2px solid #3a0f0e;
    border-right:2px solid #3a0f0e;
}

header h1 .sub {
    font-size: 2.5rem;
}

h1 {
    line-height: 1.4em;
    font-size: 3.2rem;
    text-align: center;
    margin: 0;
}

header .details {
    color: #EFEFEF;
    text-align: center;
    font-size: 1.3rem;
    margin: 0;
}

.title-wrap {
    padding-left: 4rem;
}

@media (max-width: 800px) {

	h1 {
		font-size: 2.5rem;
	}

	header .details {
		font-size: 1.3rem;
	}

	.menu-items a {
		font-size: 1rem;
	}

}

@media (max-width: 600px) {

    header {
        flex-wrap: wrap;
    }

    header .title-wrap {
        padding: 0;
        margin: 1rem 0 0 0;
    }

    h1 {
        width: 100%;
    }

	.mobile-menu {
		display: block;
		line-height: 60px;
		margin-left: 15px;
		font-size: 1.3rem;
	}

	.mobile-menu:hover {
		cursor: pointer;
		color: #2B8276;
	}

	.mobile-items a {
		width: 100%;
		display: block;
		text-align: center;
		border-top: 1px solid #333;
	}

	.menu-items, .mobile-items {
		display: none;
	}

	header .details {
		width: 100%;
		text-align: center;
		border-radius: 0;
		padding-right: 0;
		font-size: 1rem;
	}


}

/* Registration */


.register a {
    display: block;
    text-align: center;
    border: 7px solid #103b19;
    padding: 20px;
    width: 400px;
    margin: auto;
    border-radius: 25px;
    background: #2F653C;
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #EFEFEF;
    letter-spacing: 1px;
    text-decoration: none;
}

.register a:hover {
	background: #103b19;
}

@media (max-width: 600px) {

	.register a {
		font-size: 1.2rem;
		width: 80%;
	}

}


/* Speakers */

.speakers ul {
	column-count: 3;
    column-gap: 10px;
    width: 95%;
}

.speakers li, .contact li, .committee li {
	font-size: 1.2rem;
	padding: 5px 0;
    line-height: 23px;
}



.speakers a:hover {
	color: #2B8276;
}

.name {
	font-weight: bold;
}

.affiliation {
	font-style: italic;
	font-size: .9rem;
}


/* Schedule */

#schedule table {
    width: calc(100% - 15px);
    margin: 15px 0 30px 15px;
    border-collapse: collapse;
    border: 1px solid #CCC;
}

#schedule td {
    padding: 10px;
    vertical-align: top;
}

#schedule td.time {
   width:180px;
}

#schedule .speaker {
    font-weight: bold;
    width: 250px;
}

#schedule td a {
    font-weight: bold;
    text-decoration: none;
    color:#3567A0;
    line-height: 2em;
}

#schedule td a:hover {
     color: #2B8276;
}

#schedule .closed a::after {
    content: '▶';
    display: inline-block;
    margin-left: 6px;
    font-size: 14px;
}

#schedule .open a::after {
    content: '▼';
    display: inline-block;
    margin-left: 6px;
    font-size: 14px;
}

#schedule .abstract p {
    display: none;
}

#schedule .abstract p {
    padding-bottom: 1em;
}

#schedule tr {
    border-bottom: 1px solid #CCC;
}

#schedule tr:nth-child(odd) {
    background: #f5f5f5;
}

#schedule tr:nth-child(even) {
    background: #fff;
}

.event h4 {
    margin-top: 0;
    margin-bottom: .5rem;
}


@media (max-width: 1200px) {

	.speakers ul {
		column-count: 2;
	    column-gap: 10px;
	    width: 95%;
	}
}

@media (max-width: 900px) {

	.speakers ul {
		column-count: 1;
	    column-gap: 10px;
	    width: 95%;
	}
}

@media (max-width: 700px) {

	.speakers li {
		font-size: 1rem;
	}

   #schedule table,
   #schedule tr,
   #schedule td,
   #schedule tbody  {
        display: block;
        width: 100%;
   }

   #schedule td  {
        padding: 3px 10px;
   }


}
