/* resets
--------------------------------------------------------------------------
*/

@import url("http://fast.fonts.net/t/1.css?apiType=css&projectid=b03d2d73-1ea8-447a-9083-e3472269d93f");
    @font-face{
        font-family:"Microbrew One W01 Regular";
        src:url("Fonts/2b6a2c7d-1336-4d69-9d1b-4af8fb2ec4c1.woff2") format("woff2"),url("Fonts/cde20eef-a0fc-4fa3-b29a-74fb14ca9da9.woff") format("woff");
    }

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; line-height: 1; overflow-y: scroll; box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
progress { vertical-align: baseline; }
[hidden], template { display: none; }

svg:not(:root) { overflow: hidden; }

img, iframe { border: 0; vertical-align: middle; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; }

ul, ol { list-style: none; }
li { display: list-item; }

a { color: #000; background: transparent; text-decoration: none; cursor: pointer; -webkit-text-decoration-skip: ink; text-decoration-skip: ink; }
a:focus { outline: thin dotted; }
a:active, a:hover { outline: 0; }

.hide { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }

a, span, button, h2, p { -webkit-transition:color 0.4s ease; transition: color 0.4s ease; }


/* global
--------------------------------------------------------------------------
*/

html { height: 100%; }
body { min-height: 100%; font: 62.5%/1 'Microbrew One W01 Regular', 'Helvetica Neue', Arial, Helvetica, sans-serif; background: #371d32 url(../images/dots.svg) repeat-x fixed 0 0 / auto 100%; color: #000; position: relative; text-align: center; }

section { width: 59.028vw; margin: 0 auto; padding: 2vh; min-height: 100vh; background: #371d32; color: #edd2cb; }
section a { color: #fa5952; }
section a:hover { color: #edd2cb; }
section hr { width: 100%; margin: 2vh 0 0; background: #fa5952; height: 1px; border: 0; display: block; }
section h1 img { width: 100%; height: auto; }
section > h2 { margin: 2vh 0 0; font-size: 2vw; line-height: 150%; letter-spacing: 0.05em; }
section table,
section p { margin: 2vh auto 0; font-size: 1.4vw; line-height: 150%; letter-spacing: 0.05em; }
section table { width: 100%; }
section table th { width: 25%; text-align: center; }
section table td { width: 75%; text-align: left; }
section ul.lineup { margin: 2vh 0 0; font-size: 3vw; line-height: 150%; letter-spacing: 0.05em; }
section ul.also { margin: 2vh 0 0; font-size: 3vw; line-height: 150%; letter-spacing: 0.05em; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
section ul.also li { padding: 0 0.5em; }
section figure.donate { width: 30%; margin: 2vh auto 0; }
section figure.donate img { width: 100%; height: auto; }
section figure.stream { margin: 2vh 0 0; position: relative; padding-bottom: 56.25%; height: 0; }
section figure.stream iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
section .sponsors { margin: 2vh 0 0; padding: 2vh; background: #fff; color: #371d32; }
section .sponsors a { color: #371d32; }
section .sponsors a:hover { color: #fa5952; }
section .sponsors h2 { font-size: 1.6vw; letter-spacing: 0.05em; }
section .sponsors ul { font-size: 1.4vw; letter-spacing: 0.05em; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
section .sponsors ul li.full { width: 100%; }
section .sponsors ul li { padding: 2vh 1vh 0; }
section .sponsors ul li img { height: 6vh; }
section .sponsors + .sponsors ul li img { height: 4vh; }
section .tshirts { display: -ms-grid; display: grid; -ms-grid-columns: (1fr)[2]; grid-template-columns: repeat(2, 1fr); -webkit-column-gap: 2vh; -moz-column-gap: 2vh; column-gap: 2vh; }
section .tshirts div { padding: 2vh 0 0; }
section .tshirts div > img { width: 100%; height: auto; }
section .tshirts div h2 { margin: 2vh 0 0 0; font-size: 1.6vw; letter-spacing: 0.05em; }
section .tshirts div ul li { padding: 2vh 0 0; }
section .tshirts div ul li button { padding: 0.5em 1em; font-family: 'Microbrew One W01 Regular'; font-size: 2em; background: #b54142; color: #fff; border: 0; cursor: pointer; }
section figure.people { width: 60%; margin: 2vh auto 0; }
section figure.people img { width: 100%; height: auto; }
body > ul { position: fixed; bottom: 8.889vh; left: 3.333vw; display: -webkit-box; display: -ms-flexbox; display: flex; }
body > ul li { padding: 0 1.667vw 0 0; }
body > ul li img { width: 3.333vw; height: auto; }
body > ul li.full { width: calc( ( 3.333vw * 3 ) + ( 1.667vw * 3 ) ); position: fixed; top: 8.889vh; left: 3.333vw; }
body > ul li.full img { width: 100%; }
body > img { width: 16.111vw; height: auto; position: fixed; left: calc( 50% + ( 59.028vw / 2 ) + 2vw ); bottom: 3.778vh; }

@media (orientation: portrait) {
	section { width: 90%; padding-bottom: 50vh; }
	section > h2 { font-size: 8vw; }
	section table,
	section p { font-size: 5vw; }
	section table { width: 100%; }
	section table th,
	section table td { width: 100%; text-align: center; display: block; }
	section table td { padding: 0 0 0.5em; }
	section ul.lineup { font-size: 8vw; }
	section ul.also { font-size: 8vw; }
	section .sponsors ul { font-size: 4vw; }
	section ul.also li:first-child { width: 100%; }
	section .sponsors h2,
	section .tshirts div h2,
	section .tshirts div ul li button { font-size: 5vw; }
	section .tshirts { display: block; }
	body > ul { width: 100%; position: absolute; left: 0; bottom: 18vh; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
	body > ul li { padding: 0 2.5vh; }
	body > ul li img { width: auto; height: 4vh; }
	body > ul li.full { width: 100%; position: absolute; top: auto; bottom: 8vh; left: 0; }
	body > ul li.full img { height: 20vh; }
	body > img { width: auto; height: 8vh; position: absolute; left: 50%; bottom: 5vh; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
}