/* --------------------------------------------------------------

   reset.css
   * Resets default browser CSS.

-------------------------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code,
del, dfn, em, img, q, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  line-height: 1.5;
}

/* Tables still need 'cellspacing="0"' in the markup. */
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
table, td, th { vertical-align: middle; }

/* Remove possible quote marks (") from <q>, <blockquote>. */
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }

/* Remove annoying border on linked images. */
a img { border: none; }
/* --------------------------------------------------------------

   typography.css
   * Sets up some sensible default typography.

-------------------------------------------------------------- */

/* Default font settings.
   The font-size percentage is of 16px. (0.75 * 16px = 12px) */
html { font-size:100.01%; }
body {
  font-size: 75%;
  color: #222;
  background: #fff;
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
}


/* Headings
-------------------------------------------------------------- */

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

h1 { font-size: 3em; line-height: 1; margin-bottom: .5em; }
h2 { font-size: 2em; margin-bottom: 1em; }
h3 { font-size: 1.5em; line-height: 1; margin-bottom: 1em; }
h4 { font-size: 1.2em; line-height: 1.25; margin-bottom: 1.25em; }
h5 { font-size: 1em; font-weight: bold; margin-bottom: 1.5em; }
h6 { font-size: 1em; font-weight: bold; }

h1 img, h2 img, h3 img,
h4 img, h5 img, h6 img {
  margin: 0;
}


/* Text elements
-------------------------------------------------------------- */

p           { margin: 0 0 1.5em; }
p img.left  { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }
p img.right { float: right; margin: 1.5em 0 1.5em 1.5em; }

a:focus,
a:hover     { color: #000; }
a           { color: #009; text-decoration: underline; }

blockquote  { margin: 1.5em; color: #666; font-style: italic; }
strong      { font-weight: bold; }
em,dfn      { font-style: italic; }
dfn         { font-weight: bold; }
sup, sub    { line-height: 0; }

abbr,
acronym     { border-bottom: 1px dotted #666; }
address     { margin: 0 0 1.5em; font-style: italic; }
del         { color:#666; }

pre 				{ margin: 1.5em 0; white-space: pre; }
pre,code,tt { font: 1em 'andale mono', 'lucida console', monospace; line-height: 1.5; }


/* Lists
-------------------------------------------------------------- */

li ul,
li ol       { margin:0 1.5em; }
ul, ol      { margin: 0 1.5em 1.5em 1.5em; }

ul          { list-style-type: disc; }
ol          { list-style-type: decimal; }

dl          { margin: 0 0 1.5em 0; }
dl dt       { font-weight: bold; }
dd          { margin-left: 1.5em;}


/* Tables
-------------------------------------------------------------- */

table       { width: 100%; }
#content > :not(script):not(#notice_wrapper) + table { margin-top: 1.4em; }
th          { font-weight: bold; }
th,td,caption { padding: 4px 5px; }
tr.even td  { background: #e5ecf9; }
caption     { background: #eee; }


/* Misc classes
-------------------------------------------------------------- */

.small      { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; }
.large      { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; }
.hide       { display: none; }

.quiet      { color: #666; }
.loud       { color: #000; }
.highlight  { background:#ff0; }
.added      { background:#060; color: #fff; }
.removed    { background:#900; color: #fff; }

.first      { margin-left:0; padding-left:0; }
.last       { margin-right:0; padding-right:0; }
.top        { margin-top:0; padding-top:0; }
.bottom     { margin-bottom:0; padding-bottom:0; }
/* --------------------------------------------------------------
   grid.css - mirror version of src/grid.css
-------------------------------------------------------------- */

/* A container should group all your columns. */
.container {
  width: 960px;
  margin: 0 auto;
}

/* Use this class on any div.span / container to see the grid. */
.showgrid {
  background: url(grid.png);
}


/* Columns
-------------------------------------------------------------- */

/* Sets up basic grid floating and margin. */
.column, div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, div.span-21, div.span-22, div.span-23, div.span-24 {
  float: left;
  margin-right: 0px;
}

/* The last column in a row needs this class. */
.last, div.last { margin-right: 0; }

/* Use these classes to set the width of a column. */
.span-1  { width: 40px; }
.span-2  { width: 80px; }
.span-3  { width: 120px; }
.span-4  { width: 160px; }
.span-5  { width: 200px; }
.span-6  { width: 240px; }
.span-7  { width: 280px; }
.span-8  { width: 320px; }
.span-9  { width: 360px; }
.span-10  { width: 400px; }
.span-11  { width: 440px; }
.span-12  { width: 480px; }
.span-13  { width: 520px; }
.span-14  { width: 560px; }
.span-15  { width: 600px; }
.span-16  { width: 640px; }
.span-17  { width: 680px; }
.span-18  { width: 720px; }
.span-19  { width: 760px; }
.span-20  { width: 800px; }
.span-21  { width: 840px; }
.span-22  { width: 880px; }
.span-23  { width: 920px; }
.span-24  { width: 960px; }

/* Use these classes to set the width of an input. */
input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 {
  border-left-width: 1px!important;
  border-right-width: 1px!important;
  padding-left: 5px!important;
  padding-right: 5px!important;
}

input.span-1, textarea.span-1 { width: 28px!important; }
input.span-2, textarea.span-2 { width: 68px!important; }
input.span-3, textarea.span-3 { width: 108px!important; }
input.span-4, textarea.span-4 { width: 148px!important; }
input.span-5, textarea.span-5 { width: 188px!important; }
input.span-6, textarea.span-6 { width: 228px!important; }
input.span-7, textarea.span-7 { width: 268px!important; }
input.span-8, textarea.span-8 { width: 308px!important; }
input.span-9, textarea.span-9 { width: 348px!important; }
input.span-10, textarea.span-10 { width: 388px!important; }
input.span-11, textarea.span-11 { width: 428px!important; }
input.span-12, textarea.span-12 { width: 468px!important; }
input.span-13, textarea.span-13 { width: 508px!important; }
input.span-14, textarea.span-14 { width: 548px!important; }
input.span-15, textarea.span-15 { width: 588px!important; }
input.span-16, textarea.span-16 { width: 628px!important; }
input.span-17, textarea.span-17 { width: 668px!important; }
input.span-18, textarea.span-18 { width: 708px!important; }
input.span-19, textarea.span-19 { width: 748px!important; }
input.span-20, textarea.span-20 { width: 788px!important; }
input.span-21, textarea.span-21 { width: 828px!important; }
input.span-22, textarea.span-22 { width: 868px!important; }
input.span-23, textarea.span-23 { width: 908px!important; }
input.span-24, textarea.span-24 { width: 948px!important; }

/* Add these to a column to append empty cols. */

.append-1  { padding-right: 40px; }
.append-2  { padding-right: 80px; }
.append-3  { padding-right: 120px; }
.append-4  { padding-right: 160px; }
.append-5  { padding-right: 200px; }
.append-6  { padding-right: 240px; }
.append-7  { padding-right: 280px; }
.append-8  { padding-right: 320px; }
.append-9  { padding-right: 360px; }
.append-10  { padding-right: 400px; }
.append-11  { padding-right: 440px; }
.append-12  { padding-right: 480px; }
.append-13  { padding-right: 520px; }
.append-14  { padding-right: 560px; }
.append-15  { padding-right: 600px; }
.append-16  { padding-right: 640px; }
.append-17  { padding-right: 680px; }
.append-18  { padding-right: 720px; }
.append-19  { padding-right: 760px; }
.append-20  { padding-right: 800px; }
.append-21  { padding-right: 840px; }
.append-22  { padding-right: 880px; }
.append-23  { padding-right: 920px; }

/* Add these to a column to prepend empty cols. */

.prepend-1  { padding-left: 40px; }
.prepend-2  { padding-left: 80px; }
.prepend-3  { padding-left: 120px; }
.prepend-4  { padding-left: 160px; }
.prepend-5  { padding-left: 200px; }
.prepend-6  { padding-left: 240px; }
.prepend-7  { padding-left: 280px; }
.prepend-8  { padding-left: 320px; }
.prepend-9  { padding-left: 360px; }
.prepend-10  { padding-left: 400px; }
.prepend-11  { padding-left: 440px; }
.prepend-12  { padding-left: 480px; }
.prepend-13  { padding-left: 520px; }
.prepend-14  { padding-left: 560px; }
.prepend-15  { padding-left: 600px; }
.prepend-16  { padding-left: 640px; }
.prepend-17  { padding-left: 680px; }
.prepend-18  { padding-left: 720px; }
.prepend-19  { padding-left: 760px; }
.prepend-20  { padding-left: 800px; }
.prepend-21  { padding-left: 840px; }
.prepend-22  { padding-left: 880px; }
.prepend-23  { padding-left: 920px; }


/* Border on right hand side of a column. */
div.border {
  padding-right: 0;
  margin-right: 0;
  border-right: 1px solid #eee;
}

/* Border with more whitespace, spans one column. */
div.colborder {
  padding-right: 19px;
  margin-right: 20px;
  border-right: 1px solid #eee;
}


/* Use these classes on an element to push it into the
next column, or to pull it into the previous column.  */

.pull-1 { margin-left: -40px; }
.pull-2 { margin-left: -80px; }
.pull-3 { margin-left: -120px; }
.pull-4 { margin-left: -160px; }
.pull-5 { margin-left: -200px; }
.pull-6 { margin-left: -240px; }
.pull-7 { margin-left: -280px; }
.pull-8 { margin-left: -320px; }
.pull-9 { margin-left: -360px; }
.pull-10 { margin-left: -400px; }
.pull-11 { margin-left: -440px; }
.pull-12 { margin-left: -480px; }
.pull-13 { margin-left: -520px; }
.pull-14 { margin-left: -560px; }
.pull-15 { margin-left: -600px; }
.pull-16 { margin-left: -640px; }
.pull-17 { margin-left: -680px; }
.pull-18 { margin-left: -720px; }
.pull-19 { margin-left: -760px; }
.pull-20 { margin-left: -800px; }
.pull-21 { margin-left: -840px; }
.pull-22 { margin-left: -880px; }
.pull-23 { margin-left: -920px; }
.pull-24 { margin-left: -960px; }

.pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float: left; position:relative;}

.push-1 { margin: 0 -40px 1.5em 40px; }
.push-2 { margin: 0 -80px 1.5em 80px; }
.push-3 { margin: 0 -120px 1.5em 120px; }
.push-4 { margin: 0 -160px 1.5em 160px; }
.push-5 { margin: 0 -200px 1.5em 200px; }
.push-6 { margin: 0 -240px 1.5em 240px; }
.push-7 { margin: 0 -280px 1.5em 280px; }
.push-8 { margin: 0 -320px 1.5em 320px; }
.push-9 { margin: 0 -360px 1.5em 360px; }
.push-10 { margin: 0 -400px 1.5em 400px; }
.push-11 { margin: 0 -440px 1.5em 440px; }
.push-12 { margin: 0 -480px 1.5em 480px; }
.push-13 { margin: 0 -520px 1.5em 520px; }
.push-14 { margin: 0 -560px 1.5em 560px; }
.push-15 { margin: 0 -600px 1.5em 600px; }
.push-16 { margin: 0 -640px 1.5em 640px; }
.push-17 { margin: 0 -680px 1.5em 680px; }
.push-18 { margin: 0 -720px 1.5em 720px; }
.push-19 { margin: 0 -760px 1.5em 760px; }
.push-20 { margin: 0 -800px 1.5em 800px; }
.push-21 { margin: 0 -840px 1.5em 840px; }
.push-22 { margin: 0 -880px 1.5em 880px; }
.push-23 { margin: 0 -920px 1.5em 920px; }
.push-24 { margin: 0 -960px 1.5em 960px; }

.push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float: right; position:relative;}


/* Misc classes and elements
-------------------------------------------------------------- */

/* In case you need to add a gutter above/below an element */
.prepend-top {
  margin-top:1.5em;
}
.append-bottom {
  margin-bottom:1.5em;
}

/* Use a .box to create a padded box inside a column.  */
.box {
  padding: 1.5em;
  margin-bottom: 1.5em;
  background: #E5ECF9;
}

/* Use this to create a horizontal ruler across a column. */
hr {
  background: #ddd;
  color: #ddd;
  clear: both;
  float: none;
  width: 100%;
  height: 1px;
  margin: 0 0 1.45em;
  border: none;
}
hr.space {
  background: #fff;
  color: #fff;
}


/* Clearing floats without extra markup
   Based on How To Clear Floats Without Structural Markup by PiE
   [http://www.positioniseverything.net/easyclearing.html] */

.clearfix:after, .container:after {
  content: "\0020";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  overflow:hidden;
}
.clearfix, .container {display: block;}

/* Regular clearing
   apply to column that should drop below previous ones. */

.clear { clear:both; }
/* --------------------------------------------------------------

   forms.css
   * Sets up some default styling for forms
   * Gives you classes to enhance your forms

   Usage:
   * For text fields, use class .title or .text
   * For inline forms, use .inline (even when using columns)

-------------------------------------------------------------- */

label       { font-weight: bold; }
fieldset    { padding:1.4em; margin: 0 0 1.5em 0; border: 1px solid #ccc; }
/*
legend      { font-weight: bold; font-size:1.2em; }
*/


/* Form fields
-------------------------------------------------------------- */

input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"],
input.text, input.title,
textarea, select {
  background-color:#fff;
  border:1px solid #bbb;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
input.text:focus, input.title:focus,
textarea:focus, select:focus {
  border-color:#666;
}

input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"],
input.text, input.title,
textarea, select {
  margin: .5em 0;
}

input.text,
input.title   { width: 300px; padding:5px; }
input.title   { font-size:1.5em; }
textarea      { width: 390px; height: 250px; padding:5px; resize: none;}

#waitlist_form .title,
.feedback-request .title{
	width: 390px;
}


input[type=checkbox], input[type=radio],
input.checkbox, input.radio {
	position: relative;
	top: .125em;
}

form.inline { line-height:3; }
form.inline p { margin-bottom:0; }


/* Success, notice and error boxes
-------------------------------------------------------------- */

.notice-wrapper .error,
.notice-wrapper .notice,
.notice-wrapper .success,
#notice-wrapper .error,
#notice-wrapper .notice,
#notice-wrapper .success { padding: .8em; margin-bottom: 1em; border: 2px solid #ddd; border-radius: 2px; box-shadow: 0 1px 2px currentColor;}

#notice-wrapper .error ul,
.notice-wrapper .notice ul,
#notice-wrapper .notice ul,
#notice-wrapper .success ul { margin-bottom: 0; }

#notice-wrapper .error      { background: #FBE3E4; color: #8a1f11; border-color: #FBC2C4; }
.notice-wrapper .notice,
#notice-wrapper .notice     { background: #FFF6BF; color: #514721; border-color: #FFD324; }
#notice-wrapper .success    { background: #E6EFC2; color: #264409; border-color: #C6D880; }
#notice-wrapper .error a    { color: #8a1f11; }
.notice-wrapper .notice a,
#notice-wrapper .notice a   { color: #514721; }
#notice-wrapper .success a  { color: #264409; }

.notice-wrapper,
#notice-wrapper {
	margin: 0 0 0 0;
	text-align: left;
	z-index: 666;
}

.notice-wrapper ul li,
#notice-wrapper ul li,
.notice-wrapper ul,
#notice-wrapper ul {
	list-style: disc !important;
	margin: 0 0 0 10px;
	padding: 0;
}

.center #notice-wrapper,
.center .notice-wrapper {
	text-align: center;
}

.center #notice-wrapper div,
.center .notice-wrapper div {
	display: inline-block;
	text-align: left;
}

.event_status {
  display: inline-block;
}

#notice-wrapper.fixed {
	position: fixed;
	top: 0;
	width: 75%;
	left: 50%;
	margin: 0 0 0 -37.5%;
}

#notice-wrapper.fixed > div {
	margin: 1em;
	position: relative;
	left: 0;
	bottom: 0;
}

#notice-wrapper a {
	text-decoration: none;
}

#notice-wrapper a[href]:hover {
	text-decoration: underline;
}

/* Full screen layout for special pages
-------------------------------------------------------------- */
html.fullscreen {
	width: 100%;
	min-height: 100%;
}

.print {
	display: none !important;
}

div.fullwidthbox {
  position: relative;
  z-index: 10;
}

#messagetabright {
  padding-top: 10px;
}

.badgeheader {
  font-size: 1em;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 10px;
}

/* Banner
-------------------------------------------------------------- */
#banner {
	display: block;
	font-size: 16px;
	height: 7em;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
}

#banner::after {
	display: block;
	content: attr(data-content);
	background-image: linear-gradient(to bottom, #D00006, #8a1f11 100%);
	background-origin: border-box;
	border: 1px dashed currentColor;
	box-shadow: -2px -2px #D00006, 2px 2px #8a1f11, 0 2px 8px rgba(0,0,0,.667);
	color: rgba(255, 255, 255, .667);
	font-family: Arial, sans-serif;
	font-weight: bold;
	line-height: 1.333em;
	position: relative;
	right: calc(-50% + 2em);
	text-align: center;
	top: 1.5em;
	transform: rotate(45deg);
	width: 16em;
	z-index: 9001;
}
