*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
}

html, body {
    margin: 0;
	min-height: 100%;
}

body {
    background-color: #eee;
}

.hidden {
    display: none;
}

b { font-weight: bold }
i { font-style: italic }

.card a:not(.btn) {
	color: #FBC02D;
}

.card a:not(.btn):hover {
    text-decoration: underline;
}

.clearfix { clear: both }

.btn, .btn-large {
    background-color: #FFEB3B;
}

.btn:hover, .btn-large:hover {
    background-color: #ffed4f;
}

.btn:active, .btn-large:active {
    background-color: #bfb02c;
}

/* Header */

header {
    position: fixed;
    top: 0;
    width: 100%;
    min-height: 64px;
    background-color: #424242;
    z-index: 1000;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	transition: all .3s ease;
}

.slider-page header {
    background-color: rgba(21,21,21,.4);
    box-shadow: none;
}

header.scrolling {
    background-color: #424242;
    -webkit-box-shadow: rgba(0, 0, 0, 0.156863) 0px 2px 5px 0px, rgba(0, 0, 0, 0.117647) 0px 2px 10px 0px;
    box-shadow: rgba(0, 0, 0, 0.156863) 0px 2px 5px 0px, rgba(0, 0, 0, 0.117647) 0px 2px 10px 0px;
}

header ul#nav {
    display: inline-block;
    float: right;
    margin: 0;
    margin-right: 5%;
}

header ul#nav {
    -webkit-padding-start: 0;
    list-style-type: none;
}

header ul#nav li {
    position: relative;
    line-height: 64px;
    vertical-align: top;
    display: inline-block;
    transition: .3s background-color ease;
    margin-left: -4px;
    cursor: pointer;
}

header ul#nav li:hover {
    background-color: rgba(255,255,255,.1);
}

header ul#nav > li:not(.single) > a {
    pointer-events: none;
}

header ul#nav li a {
    display: block;
    text-decoration: none;
    color: #fff;
    text-transform: uppercase;
    height: 100%;
    padding: 0 15px;
}

header ul#nav li a i {
    vertical-align: middle;
}

header ul#nav li > ul {
    position: absolute;
    -webkit-padding-start: 0;
    box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.26);
    background-color: #383838;
    white-space: nowrap;
    visibility: hidden;
    transform: translateY(-10px);
    opacity: 0;
    transition: all .2s ease;
}

header ul#nav li:hover > ul {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

header ul#nav li ul li {
    display: block;
    line-height: 46px;
    margin-left: 0;
}

header ul#nav li ul li a {
    text-transform: capitalize;
}

header #navbackdrop, header .navtoggle {
	display: none;
}

header ul#nav > li.search {
    width: 64px;
}

/* Search */

header ul#nav li.search {
    width: 48px;
    text-align: center;
}

header ul#nav li.search a {
    padding: 0;
}

#search {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: #f6f6f6;
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transition: all .2s ease;
}

#search.active {
    opacity: 1;
    visibility: visible;
}

#search form {
    width: 60%;
    height: 36px;
    line-height: 36px;
    text-align: left;
    background: #fff;
    border-radius: 2px;
    margin: 14px 0;
    display: inline-block;
    float: right;
    margin-right: 20%;
}

#search form .s {
    display: inline-block;
    width: calc(100% - 76px);
    border: none;
    background: none;
	color: #212121;
    height: 100%;
    line-height: 36px;
    font-size: 16px;
    outline: none;
    margin: 0;
    vertical-align: top;
}

#search form .s:focus {
	border: none;
	box-shadow: none;
}

#search form .submit {
}

#search form .status {
    display: inline-block;
    line-height: 36px;
    width: 24px;
    height: 24px;
	pointer-events: none;
    margin: 6px 20px;
}

#search form .status i {
    transform: scale(1);
    position: absolute;
    font-size: 24px;
    transition: transform .2s ease;
}

#search form .status .spinner {
    transform: scale(0);
    position: absolute;
  	height: 20px;
  	width: 20px;
  	margin: 2px;
    transition: transform .2s ease;
}

#search form .status .spinner span {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
	border: 2px solid #4285f4;
  	border-top-color: transparent;
  	border-radius: 50%;
 	-webkit-animation: spin 1.1s infinite linear;
 	animation: spin 1.1s infinite linear;
}

#search form .status.searching i {
    transform: scale(0);
}

#search form .status.searching .spinner {
    transform: scale(1);
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform:rotate(0deg);
		transform:rotate(0deg)
	}
	
	100% {
		-webkit-transform:rotate(360deg);
		transform:rotate(360deg)
	}
}

#search .close-search {
    display: inline-block;
    margin: 12px 0;
}

#search .close-search > * {
    display: inline-block;
    cursor: pointer;
    vertical-align: middle;
}

#search .close-search span {
    font-size: 20px;
}

#search .close-search i {
    width: 40px;
    height: 40px;
    font-size: 40px;
    margin: 0 8px;
}

.search-active #content {
    display: none;
}

#live-search {
    margin-top: 60px;
	display: none;
}

#live-search .container.card {
  margin: 0 auto;
}

.search-active #content, .search-active #slides {
    visibility: hidden;
}

.search-active #live-search {
    display: block;
}

#live-search .result {
	margin-top: 20px;
}

#live-search .result h5 {
	margin-bottom: 0;
}

#live-search .result p {
	padding-top: 6px;
}

/* Logo */

header #logo {
    position: relative;
    display: inline-block;
    height: 100%;
    float: left;
  	padding: 12px 0;
  	max-height: 64px;
    margin-left: 5%;
}

header #logo a {
    position: absolute;
    top: 0;
    width: 100%;
    display: block;
    height: 100%;
}

header #logo svg {
	width: 212px;
    height: 40px;
    fill: #fff;
}

header #logo svg #logo_gear {
    fill: #FEEA39;
}

header #teaminfo {
    margin: 10px 0;
    margin-left: 10px;
    border-left: 1px solid #fff;
    display: inline-block;
    color: #fff;
    padding-left: 10px;
}

header #teaminfo p {
    font-size: 15px;
    line-height: 22px;
    text-indent: 0;
    margin: 0;
}

/* SLIDER */

#slides {
    position: relative;
    height:100vh;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#slides .slides-container {
    display: none;
}

/* PAGIANTION */

.slides-pagination {
    position: absolute;
    z-index: 3;
    bottom: 8px;
    right: 8px;
    text-align: center;
}

.slides-pagination a {
    border: 2px solid #222;
    border-radius: 15px;
    width: 14px;
    height: 14px;
    display: -moz-inline-stack;
    display: inline-block;
    vertical-align: middle;
    *vertical-align: auto;
    zoom: 1;
    *display: inline;
    margin: 2px;
    overflow: hidden;
    text-indent: -100%;
    transition: .2s background-color ease;
    font-size: 0;
}

.slides-pagination a.current {
    background: #222;
}

/* ARROWS */

.slides-arrows {
    margin: 0 auto;
    position: absolute;
    z-index: 3;
    top: 50%;
    margin-top: -25px;
    width: 100%;
}

.slides-arrows a {
    position: absolute;
    opacity: 1;
    transition: all .3s ease-in-out;
    display: block;
    visibility: visible;
}

.slides-arrows a.hidden {
    opacity: 0;
    transition: all .3s ease-in-out;
    visibility: hidden;
}

.slides-arrows .prev {
    height: 50px;
    width: 50px;
    left: 15px;
    background: url("../images/arrow-left.png") no-repeat;
    background-size: cover;
}

.slides-arrows .next {
    height: 50px;
    width: 50px;
    right: 15px;
    background: url("../images/arrow-right.png") no-repeat;
    background-size: cover;
}

/* SLIDES */

#slides ul li > div {
    width: 100%;
    height: 100%;
    background-size: cover;
}

#slides ul li div h1 {
    position: absolute;
    text-align: center;
    font-size: 75px;
    max-width: 100%;
    margin: 0;
}

#slides ul li  div h1.top {
    top: calc( 64px + 2% );
}

#slides ul li div h1.bottom {
    bottom: calc(10px + 2%);
}

#slides ul li div h1.left {
    left: 2%;
}

#slides ul li div h1.right {
    right: 2%;
	text-align: right;
}

#slides ul li div .slide-desc {
    position: absolute;
    bottom: 0;
    width: 100%;
    background-color: rgba(255,255,255,.2);
    padding: 20px;
}

#slides ul li div .slide-desc p {
    margin: 0;
}

#slides ul li.dark div h1 {
    text-shadow: 0 0 6px rgba(0,0,0,.4);
    color: #fff;
}

#slides ul li.light div {
    color: #fff;
}

#slides ul li.light div h1 {
    color: #212121;
}

#slides ul li.light div .slide-desc {
    color: #353535;
}

#slides ul li:nth-of-type(1) > div {
    background: url("../images/slider/team2016.jpg") center center;
    background-size: cover;
}

#slides ul li:nth-of-type(1) h1:first-of-type {
    text-align: left;
    width: initial;
}

#slides ul li:nth-of-type(1) h1:nth-of-type(2) {
    text-align: left;
    width: initial;
    font-weight: 300;
}

#slides ul li:nth-of-type(2) > div {
    background: url(../images/slider/first-slider.png) center center no-repeat;
}

.mobile #slides ul li:nth-of-type(2) > div {
    background-size: contain;
}

#slides ul li:nth-of-type(3) h1:first-of-type {
    text-align: left;
    width: initial;
}

.slide-sponsors {
    text-align: center;
    position: absolute;
    margin: 0 10%;
    width: 80%;
    top: 50%;
    transform: translateY(-50%);
}

.slide-sponsors img {
    height: 90px;
    padding: 20px;
}
 
/* Content */

#content {
	margin-top: 64px;
}

#content .container.card {
    margin: 0 auto;
    overflow: visible;
}

#content .card:first-of-type {
    margin-top: 0;
}

#content .card + .card {
    margin-top: 20px;
    /*margin-bottom: 0;*/
}

.content.md-whiteframe {
    width: 96%;
    border-radius: 2px;
}

.content > p {
    margin-bottom:1.1em;
  	line-height: 1.2;
}

.content > p + p {
    margin-top: 0;
}

.content p a {
	text-decoration: none;
	border-bottom: 2px solid #FFEB3B;
	color: #444444;
	transition: .2s background-color ease;
	padding-top: 2px;
}

.content p a:hover {
	background-color: rgba(255, 235, 59, 0.35);
}

.content .images {
    text-align: center;
    margin-bottom: 1.1em;
}

.content .images img {
    max-height: 300px;
    max-width: 100%;
    padding: 0 5px;
}

.youtube-video {
    text-align: center;
    padding: 20px;
}

/* Bios */

#bios .bio {
    padding: 20px;
}

#bios .bio:after {
    content: "";
    display: block;
    position: relative;
    border-bottom: 1px solid rgba(0,0,0,.16);
    margin: 0 -40px -20px;
    clear: both;
}

#bios .bio:last-of-type:after {
    display: none;
}

#bios .bio .pic {
    position: relative;
    display: inline-block;
    width: 170px;
    height: 170px;
    vertical-align:top;
}

#bios .bio h3 {
    font-size: 28px;
    margin-bottom: 10px;
    margin-top: 0;
    font-weight: 500;
}

#bios .bio .pic img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
}

#bios .bio .info {
    position: relative;
    display: inline-table;
    vertical-align:top;
    margin-left: 30px;
    width: calc(100% - 206px);
    height: 190px;
}

#bios .bio:last-of-type .info {
    border: none;
}

#bios .bio .info div {
    display: table-cell; 
    vertical-align: middle; 
}

#bios .bio .info span {
    display: block;
    margin: 2px 0;
    font-weight: 300;
}

#bios .bio .info span > span {
    display: inline-block;
    font-weight: bold;
    font-weight: 400;
}

/* Search Page */

.content #search .submit {
    padding: 0;
    border: none;
    background: none;
    position: absolute;
    top: 0;
    margin: 8px;
    left: 260px;
    outline: none;
    cursor: pointer;
}

/* Calendar */

#calendar {
    width: 900px;
	max-width: 100%;
    min-height: 666px;
    margin: 0 auto;
}

#calendar .fc-state-default {
    border: none;
    background: rgba(0,0,0,.2);
}

/* Branding */

/* SECTIONS */

section {
}

section .section-title {
	margin: 30px 0;
	font-weight: 500;
	font-size: 30px;
}

/* COLOR */

section#color ul {
	list-style-type: none;
	-webkit-padding-start: 0;
	display: inline-block;
	width: calc(50% - 10px);
	float: left;
}

section#color ul:first-of-type {
	margin-right: 10px;
}

section#color ul li.color {
	padding: 15px;
	color: #222;
	text-transform: uppercase;
	margin-bottom: 10px;
}

section#color ul li.color:last-of-type { margin-bottom: 0 }

section#color ul li.color.dark {
	color: #fff;
}

section#color ul li.color .hex {
	float: right;
}

/* LOGO / ICON */

section#logo .logo {
	width: calc(50% - 10px);
	float: left;
}

section#icon .logo {
	width: calc(20% - 10px);
	float: left;
}

section#icon .logo:nth-of-type(odd), section#logo .logo:nth-of-type(odd) {
	padding-right: 20px;
}

section#icon .logo .title, section#logo .logo .title {
	font-size: 18px;
}

section#icon .logo img, section#logo .logo img {
	width: calc(100% - 30px);
	padding: 15px;
	margin: 10px 0;
}

section#icon .logo.dark img, section#logo .logo.dark img {
	background: #212121;
}

section#icon .logo .links, section#logo .logo .links {
	width: 100%;
	text-align: center;
	display: block;
}

section#icon .logo .links a, section#logo .logo .links a {
	padding: 0 6px;
}

/* FOOTER */

footer {
    width: 100%;
    margin-top: 6px;
}

footer p {
	float: right;
	margin: 0;
	line-height: 42px;	
}

footer a {
	color: rgba(0,0,0,0.5);
	fill: rgba(0,0,0,0.5);
	transition: all .3s ease;
}

footer a:hover {
	color: #000;
	fill: #000;
}

footer #footer-info {
    padding: 48px 64px;
    background: #fff;
}

#footer-logo {
    display: inline-block;
    margin-top: 6px;
    margin-bottom: -6px;
}

#footer-logo svg { 
	display: block ;
	height: 36px;
}

#footer-social {
	text-align: right;
	padding: 20px 64px;
}

#footer-social .icons li {
	display: inline-block;
	margin-left: 14px;
}

#footer-social .icons a {
	display: inline-block;
}

#footer-social .icons svg {
	height: 24px;
}

/* MD Fix */

label {
    pointer-events: none;
}

.input-field label {
    left: 0;
}

.input-field input[type="radio"] ~ label {
    top: 0;
    left: 0;
}

[type="radio"]:not(:checked)+label, [type="radio"]:checked+label {
    padding-left: 28px;
}

.card .card-content > h5:first-of-type, .card .card-content > div:first-of-type, .card .card-content > h4:first-of-type { margin-top: 0 !important; }
.card .card-content > .row:last-of-type { margin-bottom: 0 !important; }

.btn {
    margin: 0 5px;
}

.card { overflow: visible; margin-bottom: 20px;}

.row .col { padding: 0 10px; }

ul.classic-list { padding-left: 24px }
ul.classic-list li { list-style-type: initial }

/* Reponsive */

@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-resolution: 192dpi) {
    
    body > .content { margin: 0; margin-bottom: 20px; width: 100%; }
    
    body > .content:first-of-type { margin-top: 64px; }
    
    body.mobile header {
        height: 64px;
    }
    
    header #teaminfo { display: none }
    
    header .navtoggle {
        display: inline-block;
        fill: #fff;
  		padding: 18px 14px;
        position: absolute;
		height: 64px;
		width: 64px
    }
	
	header .navtoggle span {
  		display: block;
  		width: 36px;
  		height: 4px;
  		background: #eee;
  		position: relative;
  		margin: 12px auto;
		transition: all .3s ease;
	}
	
	header .navtoggle span:before, header .navtoggle span:after {
  		display: block;
  		width: inherit;
  		height: inherit;
  		position: absolute;
  		background: inherit;
  		left: 0;
  		content: '';
		transition: all .3s ease;
	}
	
	.nav-active header .navtoggle span {
  		transform: rotate(180deg);
	}
	
	header .navtoggle span:before {
        transform: translateY(12px);
	}
	
	header .navtoggle span:after {
        transform: translateY(-12px);
	}
	
	.nav-active header .navtoggle span {
		background: transparent;
	}
	
	.nav-active header .navtoggle span:before, .nav-active header .navtoggle span:after {
		background: #fff;
		top: 0;
	}
	
	.nav-active header .navtoggle span:before {
  		transform: rotate(45deg);
	}
	
	.nav-active header .navtoggle span:after {
  		transform: rotate(-45deg);
	}
	    
    header, header #logo {
        transition: none;
    }
    
    body header #logo {
        display: block;
        float: none;
        margin: 0 auto;
        vertical-align: top;
        padding: 15px 0;
        width: 182px;
    }
    
    body header #logo svg {
        width: 182px;
        height: 34px;
    }
    
    body #nav-backdrop {
		display: block;
		content: "";
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0;
		lefT: 0;
		right: 0;
		bottom: 0;
		background: rgba(255,255,255,.4);
		z-index: 50;
		opacity: 0;
		visibility: hidden;
		transition: .2s all ease;
	}
    
    body.nav-active #nav-backdrop {
		opacity: 1;
		visibility: visible;
	}
    
    header ul#nav {
        position: fixed;
		display: block;
        width: 250px;
        left: -250px;
		height: 100%;
        min-height: 100%;
		max-height: 100%;
		float: none;
        top: 64px;
        bottom: 0;
        margin: 0;
        background-color: #212121;
        padding: 0;
        overflow-x: auto;
		z-index: 9999;
		transition: .2s left ease-in-out;
		-webkit-transform: translateZ(0);
    }
    
    body.nav-active header ul#nav {
		left: 0;
	}
	
	header ul#nav .top {
        background-color: rgba(0,0,0,.2);
        height: 64px;
	}
	
	header ul#nav::-webkit-scrollbar {
		display: none;
	}
    
    body.mobile header ul#nav > li, body.mobile header ul#nav > li:hover {
        display: block;
        line-height: 46px;
        margin: 0;
        background: transparent;     
    }
        
    header ul#nav li a {
	}
    
    header ul#nav li > ul {
        position: relative;
        visibility: visible;
        opacity: 1;
        overflow: hidden;
        box-shadow: none;
        background: transparent;
		transform: translateZ(0);
		-webkit-transform: translateZ(0);
    }
    
    header ul#nav li > a.active ~ ul {
        
	}
    
    header ul#nav li > a:not(.active) ~ ul {
		height: 0 !important;
	}
	
	header ul#nav li:hover > ul {
	}
	
	header ul#nav li:hover > ul li {
        border-bottom: 1px solid rgba(255,255,255,.05)
	}
    
    header ul#nav li > ul li a {
        text-indent: 10px;
	}
	
	header ul#nav > li:not(.single) > a {
        pointer-events: all;
	}
	
	header ul#nav > li.search, header.top ul#nav > li.search {
        width: 100%;
	}
	
	header ul#nav li.search a {
		display: none;
	}
	
	header ul#nav li.search form {
        position: relative;
        width: 100%;
        margin: 0;
        line-height: 46px;
        padding: 0;
        visibility: visible;
        transform: none;
        opacity: 1;
        padding: 0 15px;
        background-color: rgba(255,255,255,.05);
	}
	
	header ul#nav li.search form .s {
		height: 100%;
        font-size: inherit;
	}
	
	#slides ul li div h1 {
        line-height: 26px;
        font-size: 26px;
	}

	#slides ul li  div h1.top {
    	top: 70px;
	}
    
    #slides ul li div h1.left {
        left: 6px;
    }
	
	.slide-sponsors img {
		height: 50px;
        padding: 10px;
	}
	
	#bios .bio {
        display: block;
        padding: 0;
        margin-bottom: 20px;
    }
	
	#bios .bio .pic {
        display: block;
		width: 120px;
		height: 120px;
  		margin: 0 auto;
	}
	
	#bios .bio .info {
        display: block;
        margin: 0;
  		width: 100%;
        height: initial;
	}
    
    #bios .bio h3 {
        text-align: center;
        padding-top: 10px;
    }
    
    #bios .bio:after {
        margin: 10px -20px 0;
    }
}