* {
  box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
input {
  -webkit-user-select: initial;
     -moz-user-select: initial;
      -ms-user-select: initial;
          user-select: initial;
}
body {
  cursor: none;
}
#hidden_iframe {
  display: none;
}
nav#eventmanager {
  display: none;
}
input {
  border: none;
  background-color: #cecece;
  color: black;
  font-size: 2em;
  line-height: 1.2em;
  padding: 0.1em 0.2em;
  font-family: Times;
}
::-webkit-input-placeholder {
  font-style: italic;
}
::-moz-placeholder {
  font-style: italic;
}
/* ff 19+ */
:-ms-input-placeholder {
  font-style: italic;
  color: rgba(0, 0, 0, 0.5);
}
/* ie */
input:-moz-placeholder {
  font-style: italic;
}
header {
  display: block;
  position: relative;
  text-align: center;
  /* 	height: 156px; */
  background-color: transparent;
  /*
	background-image: url('../img/headerbg_white.svg'), url('../img/header_logo_white.png');
	background-position: 0 0, 98% 30%;
	background-repeat: no-repeat, no-repeat;
	background-size: cover, 120px;
*/
  min-height: 80px;
  z-index: 50;
}
header.blue {
  background-color: #007cc2;
  background-color: transparent;
  background-image: url(../img/header_logo_white.png), url(../img/headerbg_blue.svg);
  color: white;
  text-align: left;
  background-position: 98% 30%, 0 0;
  background-repeat: no-repeat, no-repeat;
  background-size: 120px, cover;
  max-height: 120px;
  margin-bottom: 30px;
}
header.green {
  background-color: #41cb48;
  background-color: transparent;
  background-image: url(../img/header_logo_white.png), url(../img/headerbg_green.svg);
  color: white;
  text-align: left;
  background-position: 98% 30%, 0 0;
  background-repeat: no-repeat, no-repeat;
  background-size: 120px, cover;
  max-height: 120px;
  margin-bottom: 30px;
}
/*
header.green:before{
		content: url('../img/headerbg_white.svg');
		display:block;
		position: absolute;
		left: 0; right: 0; bottom: 0;
		height: 100%;
		width: 100%;
	}
*/
header h1 {
  padding: 0.5em 1em;
  font-size: 1.5em;
  font-variant: small-caps;
  font-weight: lighter;
  font-family: Helvetica, Arial, sans-serif;
}
#s01purchase header {
  min-height: 208px;
  position: relative;
  color: transparent;
}
#s01purchase header:after {
  content: url(../img/header_logo_color.png);
  display: block;
  position: relative;
  z-index: 500;
  top: 0;
  padding-bottom: 20px;
}
#s01purchase header.green {
  color: white;
  min-height: 110px;
}
#s01purchase header.green:after {
  content: none;
  padding: 0;
}
#s01purchase ul {
  text-align: center;
}
#s01purchase footer {
  text-align: center;
}
#s01purchase footer p.acceptedcards {
  font-size: 1.2em;
  line-height: 0.9em;
  vertical-align: middle;
  color: #444;
}
#s01purchase footer p.acceptedcards span.cardlogos {
  margin-left: 0.6em;
}
li.button {
  list-style: none;
  display: inline-block;
  padding: 1em;
  width: 49%;
  height: 21em;
  vertical-align: top;
}
li.button a {
  display: block;
  background-color: #007cc2;
  color: white;
  font-family: Helvetica, sans-serif;
  font-variant: small-caps;
  font-size: 1.5em;
  width: 100%;
  height: 100%;
  text-decoration: none;
  text-align: center;
  padding: 1em;
}
li.button.disabled {
  color: transparent !important;
}
li.button.disabled * {
  color: transparent !important;
  border: none;
}
li.button.third {
  width: 32%;
}
li.button.third.left a {
  background: transparent url('../img/bg_pass_blue_left.svg') no-repeat scroll center center;
}
li.button.third.middle a {
  background: transparent url('../img/bg_pass_blue_mid.svg') no-repeat scroll center center;
}
li.button.third.right a {
  background: transparent url('../img/bg_pass_blue_right.svg') no-repeat scroll center center;
}
li.button.half.middle {
  margin: 0 25%;
}
li.button a.family {
  background-color: #D9992B;
  background: transparent url(../img/bg_pass_family.svg) no-repeat scroll center center;
}
#pick-annualtype li.button {
  height: 19em;
}
#pick-annualtype li.button h1 {
  line-height: 1em;
}
#pick-annualtype li.button p.description {
  margin-top: 1em;
}
#pick-annualtype li.button.half.middle {
  height: 17em;
}
p.description {
  display: block;
  font-size: 0.8em;
  font-family: Georgia, serif;
  font-style: italic;
  font-variant: normal;
}
li.button h1 {
  line-height: 2em;
  margin-top: 1em;
}
li.button p.price {
  line-height: 1.5em;
}
li p.description {
  border-top: solid 1px white;
  padding-top: 1em;
  margin-top: 1.5em;
}
a.information {
  display: none;
  visibility: collapse;
  margin: 0 auto;
  display: block;
  text-align: center;
  float: bottom;
  border-radius: 100%;
  background-color: #007cc2;
  color: white;
  font-family: Georgia, serif;
  font-style: italic;
  font-weight: bold;
  font-size: 2em;
  padding: 0.4em;
  width: 2em;
  height: 2em;
  text-decoration: none;
}
a.back,
a.ok,
a.skip,
a.addmore,
a.submit,
a.stepnext,
a.stepprev {
  color: white;
  text-decoration: none;
}
a.back.disabled,
a.ok.disabled,
a.skip.disabled,
a.addmore.disabled,
a.submit.disabled,
a.stepnext.disabled,
a.stepprev.disabled {
  opacity: 0.35;
}
a.back,
a.stepprev {
  float: left;
  padding: 1em 0.7em 1em 1.3em;
  margin-left: 1em;
  display: inline-block;
  background-color: #007cc2;
  background: transparent url(../img/bg_back_btn.svg) no-repeat scroll center center;
  background-size: contain;
}
a.ok,
a.submit,
a.stepnext {
  float: middle;
  padding: 1em;
  font-size: 1.5em;
  display: inline-block;
  background-color: #007cc2;
  background: transparent url(../img/bg_ok_btn.svg) no-repeat scroll center center;
  background-size: contain;
}
a.skip {
  float: right;
  padding: 1em;
  font-size: 1em;
  display: inline-block;
  background-color: #007cc2;
  background: transparent url(../img/bg_ok_btn.svg) no-repeat scroll center center;
  background-size: contain;
}
#driver-license a.ok {
  margin-left: 37%;
}
a.addmore {
  padding: 1em;
  font-size: 1.1em;
  display: inline-block;
  background-color: #007cc2;
  background: transparent url(../img/bg_addmore_btn.svg) no-repeat scroll center center;
  background-size: contain;
  float: left;
  margin: 0 5em 0 2em;
}
a.cancelpurchase {
  display: block;
  width: 5.5%;
  text-align: center;
  text-decoration: none;
  color: gray;
  margin: 0 0 -0.5em 2%;
}
a.cancelpurchase:before {
  display: block;
  content: url(../img/cancel.svg);
  width: 45px;
  height: 44px;
  text-align: center;
  margin: 0 auto;
}
a.cancelpurchase.disabled {
  visibility: hidden;
}
footer {
  font-family: Arial, Helvetica, sans-serif;
}
footer p.subtotal {
  font-size: 1.375em;
  display: inline-block;
  float: right;
  padding: 1em;
}
footer p.subtotal span {
  font-weight: bold;
}
#attractmode {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #047CC2;
  text-align: center;
  color: white;
}
#attractmode_logo {
  position: relative;
  margin: 17em auto 16em;
  width: 240px;
  height: 123px;
}
#attractmode ul {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}
#attractmode li {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
#attractmode li img {
  width: 100%;
  height: 100%;
}
#welcome {
  position: relative;
  text-align: center;
}
#welcome header {
  min-height: 238px;
}
#welcome header img {
  width: 308px;
  height: 228px;
  margin: 0 auto;
  padding-top: 20px;
}
#welcome li.button.half {
  width: 40%;
  height: 14em;
}
#welcome li.button.half a {
  height: 9em;
}
#welcome li.button.half a h1 {
  line-height: 1.1em;
  width: 98%;
}
#welcome li.button.half a p.description {
  border: none;
  margin: 0;
  padding-top: 0;
}
#welcome li.button.half.left a {
  background: transparent url('../img/bg_addmore_btn.svg') no-repeat scroll center center;
}
#welcome li.button.half.right a {
  background: transparent url('../img/bg_ok_btn.svg') no-repeat scroll center center;
}
/* TODO: clean up in to proper .less */
#pick-quantity li {
  display: inline-block;
  list-style-type: none;
  width: 48%;
  padding: 2em;
  text-align: center;
}
#pick-quantity li.third {
  width: 33%;
}
#pick-quantity li div.passtype {
  display: block;
  background: #9c9c9c;
  background: transparent url(../img/bg_pass_gray.svg) no-repeat scroll 0 0;
  background-size: contain;
  color: white;
  padding: 1em;
  text-align: center;
  min-height: 282px;
  font-size: 1.3em;
}
#pick-quantity li.third.left div.passtype {
  background: transparent url(../img/bg_pass_gray_left.svg) no-repeat scroll 0 0;
  background-size: contain;
}
#pick-quantity li.third.middle div.passtype {
  background: transparent url(../img/bg_pass_gray_mid.svg) no-repeat scroll 0 0;
  background-size: contain;
}
#pick-quantity li.third.right div.passtype {
  background: transparent url(../img/bg_pass_gray_right.svg) no-repeat scroll 0 0;
  background-size: contain;
}
#pick-quantity li div.passtype h1 {
  font-size: 1.5em;
  line-height: 1.2em;
  margin-top: 1em;
}
#pick-quantity div.number {
  position: relative;
  padding-top: 3em;
}
#pick-quantity li input {
  border: none;
  background-color: #cecece;
  color: black;
  font-size: 1.5em;
  width: 75px;
  text-align: center;
}
#pick-quantity li a {
  color: white;
  padding: 1em;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
a.plus {
  position: absolute;
  display: block;
  top: 0;
  width: 100%;
  background: #007cc2;
  background: transparent url(../img/bg_arrow_up.svg) no-repeat scroll center top;
  background-size: contain;
}
a.minus {
  display: block;
  float: bottom;
  background: #007cc2;
  background: transparent url(../img/bg_arrow_down.svg) no-repeat scroll center bottom;
  background-size: contain;
}
#pick-quantity footer a.ok {
  position: relative;
  left: 40%;
}
/* *** #config-annual *** */
nav#passes-nav {
  position: absolute;
  width: 17.5%;
  background: #ebebeb;
  top: 0;
  bottom: 0;
  left: 0;
  padding-top: 105px;
  padding-bottom: 70px;
  z-index: 20;
  overflow-y: hidden;
}
nav#passes-nav ul {
  height: 100%;
  overflow: hidden;
}
nav#passes-nav div.scrollbutton {
  display: block;
  position: absolute;
  width: 100%;
  height: 42px;
}
nav#passes-nav div.scrollbutton.scrollup {
  top: 60px;
  background: transparent url(../img/scroll_arrow_up.svg) scroll no-repeat center bottom;
  background-size: contain;
}
nav#passes-nav div.scrollbutton.scrolldown {
  bottom: 20px;
  background: transparent url(../img/scroll_arrow_down.svg) scroll no-repeat center bottom;
  background-size: contain;
}
nav#passes-nav div.scrollbutton.disabled {
  opacity: 0.15;
}
#passes-nav li {
  display: block;
  /* margin-top: 0; */
  text-align: center;
  padding: 10px;
}
#passes-nav li.selected {
  background-color: white;
  box-shadow: -10px 0 10px rgba(0, 0, 0, 0.25);
  position: relative;
}
#passes-nav li.selected:after {
  content: 'x';
  display: block;
  position: absolute;
  height: 3.5em;
  width: 83%;
  bottom: 3.5em;
  right: 1em;
  background: transparent url(../img/delete.svg) scroll no-repeat right top;
  font-family: Helvetica, Arial, sans-serif;
  color: transparent;
  line-height: 1.8em;
  box-sizing: border-box;
  padding-top: 1.9em;
}
#passes-nav li.selected.toDelete h1,
#passes-nav li.selected.toDelete h2 {
  opacity: 0.25;
}
#passes-nav li.selected.toDelete {
  border-left: solid 8px #FF3640;
}
#passes-nav li.selected.toDelete:after {
  content: 'Delete?';
  color: #E4343D;
  text-shadow: 0 1px 0 #fff;
  font-weight: bold;
  background: transparent url(../img/delete-red.svg) scroll no-repeat right top;
}
#passes-nav li.selected.undeletable:after {
  content: none;
}
#passes-nav li.disabled {
  opacity: 0.4;
}
nav ul {
  display: block;
}
#passes-nav h1 span {
  text-transform: capitalize;
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
#config-annual nav li h1:after {
  content: '';
  width: 107px;
  height: 70px;
  display: block;
  background: transparent url(../img/explorer-pass.svg) no-repeat scroll center top;
  background-size: contain;
  margin: 0.5em auto 0.6em;
  padding: 0em;
  border-radius: 4px;
  background-clip: border-box;
  box-shadow: 0 0 11px rgba(0, 0, 0, 0.35);
}
#config-annual nav li.selected h1:after {
  box-shadow: none;
}
#config-annual nav li.complete h1:after {
  background: transparent url(../img/explorer-pass-checked.svg) no-repeat scroll center top;
  background-size: contain;
}
section.annualdata {
  padding-left: 18.5%;
  padding-right: 0.5%;
  z-index: 0;
}
section.annualdata nav,
section > nav.breadcrumb {
  text-align: center;
  display: block;
  padding: 2em 0 2em;
  font-size: 1.1em;
}
section.annualdata nav a,
section > nav.breadcrumb a {
  width: 10em;
  background: #cecece;
  display: inline-block;
  color: white;
  text-decoration: none;
  font-family: Helvetica, Arial, sans-serif;
  /* font-variant: small-caps; */
  letter-spacing: 1px;
  height: 2em;
  vertical-align: middle;
  line-height: 2.2em;
  padding: 0 0.5em;
  position: relative;
}
section.annualdata nav a.selected,
section > nav.breadcrumb a.selected {
  background: #007cc2;
}
section.annualdata nav a:before,
section > nav.breadcrumb a:before {
  content: '';
  display: block;
  border: 1em solid transparent;
  border-left: 0.4em solid white;
  position: absolute;
  left: 0;
  width: 0;
  top: 0;
  bottom: 0;
}
section.annualdata nav a:after,
section > nav.breadcrumb a:after {
  content: '';
  display: block;
  border: 1em solid white;
  border-left: 0.4em solid transparent;
  border-right: 0 solid white;
  position: absolute;
  right: 0;
  width: 0;
  top: 0;
  bottom: 0;
}
section > nav.breadcrumb {
  padding: 0 0 1em;
  margin-top: -2em;
}
/*
#billing-street nav.breadcrumb {
	margin-top: -2em;
}
*/
section > nav.breadcrumb a {
  width: auto;
  padding: 0 1.5em;
  font-size: 0.73863em;
}
section > nav.breadcrumb a.disabled {
  opacity: 0.45;
  color: black;
  cursor: default;
}
section.annualdata p.error {
  color: red;
  text-align: center;
  padding: 0.5em 0 0 0;
  font-size: 1.4em;
  line-height: 1em;
  height: 1.4799em;
}
#config-annual p.error {
  color: #007cc2;
}
div.dateentry {
  text-align: center;
}
div.dateentry label {
  display: inline-block;
  text-align: center;
}
div.dateentry input {
  display: block;
}
div.dateentry label.month input {
  width: 2em;
}
div.dateentry label.day input {
  width: 2em;
}
div.dateentry label.year input {
  width: 4em;
}
#config-annual footer {
  padding-left: 18%;
  text-align: center;
}
/* *** review *** */
#s01-001b table {
  margin: 1em auto 0;
  width: 90%;
  padding: 2em;
}
#s01-001b tr.pass td {
  background-color: #f0f0f0;
  border: solid 2px white;
  padding: 0.7em;
}
#s01-001b tr.pass td.delete-sli {
  padding: 0.2em;
  color: transparent;
  width: 2.7em;
  background: transparent url(../img/cancel.svg) no-repeat center center;
  background-size: 75% 75%;
}
#s01-001b tr.pass td.edit-sli {
  padding: 0.2em;
  color: transparent;
  width: 2.7em;
  background: transparent url(../img/edit.svg) no-repeat center center;
  background-size: 75% 75%;
}
#s01-001b tr.pass td.blank {
  opacity: 0;
  width: 2.7em;
}
#s01-001b tr.pass.annual td {
  padding-top: 0.3em;
  padding-bottom: 0.3em;
}
#s01-001b tr.pass.family td {
  border: none;
  border-left: solid 2px white;
}
#s01-001b tr.pass.family.subitem td:first-child {
  padding-left: 2.5em;
}
#s01-001b tr.pass.family.subitem td {
  background-color: #e8e8e8;
  padding-top: 0.3em;
  padding-bottom: 0.3em;
}
#s01-001b th {
  padding-left: 0.7em;
}
#s01-001b tr.pass td.empty {
  background: transparent !important;
}
#s01-001b tfoot td {
  font-family: Helvetica, Arial, sans-serif;
  padding: 0.56em 0 2em 0.56em;
  font-size: 1.25em;
}
/*
#s01-001b p.total {
	text-align: right;
	margin: 0.5em 10% 1em 0;
	span {
		text-align: left;
// 		width: 16.5%;
		width: 10.2%;
		display: inline-block;
		padding-left: 1em;
	}
}
*/
#s01-001c p.total {
  display: inline-block;
  float: right;
  padding: 0 .5em;
}
#s01-001c p.total span {
  font-weight: bold;
}
section.billing {
  text-align: center;
  margin: 0 auto;
}
div.keyboard {
  /*background-color: rgba(0,0,0,0.05);*/
  color: #ddd;
  font-family: Georgia;
  font-style: italic;
  min-height: 10em;
  margin: 0 auto;
  padding: 1em 0;
  text-align: left;
}
#billing-street div.keyboard {
  padding-top: 0;
}
div.keyboard.number {
  min-width: 14em;
  width: 32%;
}
.nameinput {
  display: inline-block;
  width: 49%;
}
.schoolinput {
  display: block;
  width: 99%;
}
.keypad-row {
  width: 100%;
  padding: 0 0 0.2em;
}
.keyboard button {
  background-color: #007cc2;
  color: white;
  border: 0;
}
.keyboard button:hover,
.keyboard button:active {
  background-color: #064a6b;
}
.keypad-row > * {
  display: inline-block;
  vertical-align: top;
  font-size: 2em;
  height: 2.2em;
}
button.keypad-key {
  width: 9%;
  border: none;
  margin: 0 .5%;
  min-width: 1.5em;
}
div.keyboard.full.street button.keypad-key,
div.keyboard.full.street div.keypad-space,
div.keyboard.full.email button.keypad-key,
div.keyboard.full.email div.keypad-space {
  width: 8%;
}
div.keypad-space,
div.keypad-half-space {
  margin: 0 .5%;
  /* background: rgba(0,0,0,0.05); */
}
div.keypad-space {
  width: 9%;
  min-width: 1.5em;
}
div.keypad-half-space {
  width: 4%;
}
.keyboard.number button.keypad-key,
.keyboard.number button.keypad-special,
.keyboard.number div.keypad-space {
  width: 32%;
}
button.keypad-special {
  border: 0;
  margin: 0 0.5%;
  min-width: 1.5em;
}
button.keypad-special.keypad-shift {
  width: 19%;
}
.keyboard.email button.keypad-special.keypad-shift,
.keyboard.email button.keypad-special.keypad-back {
  width: 17%;
}
button.keypad-special.keypad-spacebar {
  width: 49%;
}
.keyboard.email button.keypad-special.keypad-spacebar {
  width: 39%;
}
button.keypad-special.keypad-back {
  width: 19%;
  color: transparent;
  background-image: url(../img/backspace.svg);
  background-repeat: no-repeat;
  background-position-x: center;
}
button.keypad-special.keypad-back:after {
  content: 'Delete';
  display: block;
  position: relative;
  color: white;
  font-size: 0.4em;
  top: 4px;
  text-transform: uppercase;
}
#streetinput,
#emailinput {
  width: 98%;
}
p#csz {
  text-align: left;
  padding: 0.1em 1.5%;
  font-size: 1.7em;
}
p.inputwrapper {
  position: relative;
}
#countryinput {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  display: inline-block;
  padding: 0 0.625em 0 4.3125em;
  margin: 0 0 0 0.5em;
  font-family: Arial, sans-serif;
  border: none;
  border-radius: 0;
  color: white;
  background-color: #007cc2;
}
#countryinput select {
  opacity: 0;
  font-size: 30px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: white;
  color: black;
}
#countryinput.usa {
  background: #007cc2 url('../img/flags.png') scroll no-repeat 0 0;
}
#countryinput.usa:after {
  content: 'United States';
  display: inline-block;
  padding: 0.8em 0;
}
#countryinput.mex {
  background: #007cc2 url('../img/flags.png') scroll no-repeat 0 -43px;
}
#countryinput.mex:after {
  content: 'Mexico';
  display: inline-block;
  padding: 0.8em 0;
}
#countryinput.can {
  background: #007cc2 url('../img/flags.png') scroll no-repeat 0 -87px;
}
#countryinput.can:after {
  content: 'Canada';
  display: inline-block;
  padding: 0.8em 0;
}
input.localeinput {
  display: inline-block;
}
#city {
  width: 64%;
}
#state {
  width: 34%;
}
p.detail {
  font-family: Helvetica, Arial, sans-serif;
  text-transform: capitalize;
}
p.instruction,
p.prompt {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.2em;
  margin-bottom: 0.3em;
  text-align: center;
}
p.instruction.introduction {
  width: 53%;
  margin: -1.3em auto 1.3em;
  font-size: 1.1em;
  font-style: italic;
}
p.instruction.introduction strong {
  font-style: inherit;
  font-weight: bold;
}
p.total {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.2em;
}
#annual-delivery > p,
#annual-delivery > div {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.2em;
  text-align: center;
}
#annual-delivery ul {
  text-align: left;
  display: inline-block;
  padding: 1em 0;
}
#annual-delivery li {
  padding: 0.1em;
}
#annual-delivery label {
  display: block;
  padding: 1em 1em 1em 3em;
  background-color: #007cc2;
  color: white;
  font-size: 1.2em;
  padding: 1em 1em 1em 1.75em;
  vertical-align: top;
}
#annual-delivery label strong {
  color: #ffb42b;
}
#annual-delivery input {
  display: inline-block;
  position: absolute;
  opacity: 0;
}
#annual-delivery input:checked + label {
  color: #212121;
  background-color: white;
  background: transparent url(../img/checkbox_check.png) scroll no-repeat center left;
}
#annual-delivery input:checked + label strong {
  color: #212121;
  font-weight: bold;
}
#annual-delivery footer {
  text-align: center;
}
.billing p.error {
  color: #007cc2;
  text-align: center;
  padding: 0.2em 0 0.3em 0;
  font-size: 1.4em;
  line-height: 1.1em;
  min-height: 1em;
}
#swipecard {
  position: relative;
  text-align: center;
  min-height: 350px;
}
#swipecard textarea {
  /* visibility: hidden; */
  position: absolute;
  top: 30px;
  left: 0;
  opacity: 0.1;
}
#swipecard p {
  text-align: center;
}
span.cardlogos {
  display: inline-block;
  width: 257px;
  height: 50px;
  background: transparent url('../img/credit-cards.png') no-repeat;
  margin-left: 1em;
  color: transparent;
}
.instruction.charge {
  margin-top: 2em;
}
.instruction.charge span {
  font-weight: bold;
}
.billing div#deliverydetails {
  font-size: 1.1em;
  font-family: Arial, Helvetica, sans-serif;
  display: inline-block;
  margin: 0 auto;
}
.billing div.vcard {
  display: block;
  padding-bottom: 0.5em;
  text-align: left;
  margin: 0;
}
.billing div.vcard p {
  display: inline-block;
}
.billing div.vcard p span {
  display: inline-block;
}
.billing div.vcard p.label {
  font-weight: bold;
}
.billing div.vcard p.label:after {
  content: ':';
  display: inline-block;
}
.billing div.vcard p.adr span.street-address:after,
.billing div.vcard p.adr span.locality:after {
  content: ',';
}
.billing div.vcard p.adr span.region:after {
  content: ' ';
  margin-right: 0.2em;
}
.billing div.vcard p.adr span.country-name {
  visibility: collapse;
}
.billing div.vcard p.adr span.country-name:before {
  content: ', ';
}
.billing div.vcard.notused {
  opacity: 0.3;
}
.billing p.delivery {
  font-style: italic;
  text-align: left;
  margin: 0;
}
#payment p.error span.declined {
  color: #FF3640;
}
#payment footer {
  text-align: left;
}
#s01-001e > div {
  text-align: center;
  margin: 0 auto;
  width: 95%;
}
#s01-001e footer a.skip {
  margin-right: 1.5em;
  position: relative;
  float: none;
  left: 48%;
}
#modal_bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(255, 255, 255, 0.65);
  text-align: center;
  z-index: 1000;
}
#modal_win {
  position: relative;
  text-align: center;
  margin: 11.7em auto 0;
  background: white;
  font-size: 1.5em;
  font-family: Helvetica, Arial, sans-serif;
  line-height: 1em;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
  padding: 1em;
  display: inline-block;
  max-width: 50%;
}
#modal_win img {
  display: block;
  margin: 0 auto 1em;
  height: 55px;
}
#modal_win p.small {
  font-size: 0.8em;
}
#modal_win p.troubleshoot {
  font-size: 0.6em;
  margin-top: 1em;
}
.timeout #modal_win {
  margin: 11.3em auto 0;
}
.timeout #modal_win img {
  height: 75px;
}
#subscribe > div {
  text-align: center;
  margin: 0 auto;
  width: 90%;
}
#subscribe footer {
  padding-top: 0.5em;
}
#subscribe footer a.submit {
  /* this is the ok button */
}
#subscribe footer a.ok {
  /* this is the skip button */
  position: absolute;
  right: 6%;
  top: 0.8em;
  font-size: 1.2em;
}
#museum_mailinglists {
  text-align: left;
  -webkit-column-count: 2;
     -moz-column-count: 2;
          column-count: 2;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.4em;
  line-height: 1.2em;
}
#museum_mailinglists li {
  margin-bottom: 0.15em;
  display: inline-block;
  width: 100%;
  position: relative;
}
#museum_mailinglists li label {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  white-space: pre;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0.5em 0.1em 0.5em 1.3em;
  font-size: 0.9em;
  background-color: #007cc2;
  color: white;
}
#museum_mailinglists li input:checked + label {
  background-color: white;
  background: transparent url(../img/checkbox_check.png) scroll no-repeat center left;
  color: #212121;
}
#museum_mailinglists input {
  display: inline-block;
  position: absolute;
  opacity: 0;
}
#printing {
  text-align: center;
}
#printing img {
  min-height: 350px;
  margin: 0 auto;
  height: 500px;
}
#printing footer a.ok {
  position: relative;
}
#printing footer a.skip {
  margin-right: 1.5em;
}
@media screen {
  article.ticket {
    display: none !important;
    width: 36%;
    max-width: 382px;
  }
}
@media print {
  section {
    display: none !important;
  }
  article.ticket {
    display: block !important;
    width: 100%;
    max-width: 100%;
    page-break-inside: avoid;
    page-break-after: always;
    /* before? */
  }
}
article.ticket {
  padding: 1em 10% 1em 0;
  color: black;
  font-family: Arial, sans-serif;
  font-weight: bold;
  background-color: white;
  font-size: 0.5em;
  text-align: center;
}
article.ticket.receipt {
  text-align: left;
}
article.ticket.receipt h2 {
  text-transform: uppercase;
}
article.ticket.receipt div.chargesummary p {
  padding-bottom: 0.3em;
}
article.ticket.receipt p.total {
  text-align: right;
}
article.ticket table {
  width: 100%;
  text-align: left;
}
article.ticket p.cue {
  font-weight: bold;
  text-align: right;
  text-transform: uppercase;
  font-size: 1.75em;
}
article.ticket h1,
article.ticket h2 {
  font-weight: bold;
}
article.ticket h1 {
  font-size: 2.55em;
  text-align: center;
  padding: 0.4em 0;
}
article.ticket.receipt h1 {
  font-size: 1.75em;
}
article.ticket h2 {
  font-size: 1.2em;
}
article.ticket h2.barcodenum {
  font-size: 2.5em;
  text-align: center;
  font-family: monospace;
}
article.ticket div {
  text-align: left;
}
article.ticket p.summary,
article.ticket ul {
  /* Temporary fix! Arial Narrow is not on the kiosks???*/
  font-family: Calibri, "Arial Narrow", "Helvetica Condensed", Arial, sans-serif;
  letter-spacing: -1px;
}
p.summary {
  font-size: 1.7em;
  font-weight: normal;
  padding-bottom: 0.8em;
}
article.ticket div.barcodeLeft {
  width: 20%;
  float: left;
  height: 180px;
}
article.ticket div.barcodeLeft img {
  height: 33px;
  width: 20em;
  -webkit-transform-origin: bottom left;
      -ms-transform-origin: bottom left;
          transform-origin: bottom left;
  -webkit-transform: rotate(90deg) translateX(-30px);
      -ms-transform: rotate(90deg) translateX(-30px);
          transform: rotate(90deg) translateX(-30px);
}
p.participating {
  font-size: 1.75em;
  font-weight: bold;
  padding-left: 20%;
}
article.ticket ul {
  font-size: 1.7em;
  font-weight: normal;
  padding-left: 20%;
  padding-bottom: 1em;
}
article.ticket div.smallprint p {
  padding-bottom: 1em;
}
/*
article.ticket p.officeuse pre{
	text-align: left;
	padding: 0.5em;
	border: solid 1px #000;
	font-size: 0.8em;
	display: block;
}
*/
article.ticket footer.officeuse {
  padding: 0.7em 2%;
  border: 1px solid #000;
  font-size: 1.4em;
  display: block;
  margin: 0.5em auto 0.8em;
  position: relative;
}
article.ticket footer.officeuse h3 {
  padding-bottom: 0.4em;
  font-weight: bold;
}
article.ticket footer.officeuse dl dt {
  display: inline-block;
  width: 27%;
  clear: left;
  vertical-align: bottom;
  font-weight: normal;
  line-height: 1.2em;
}
article.ticket footer.officeuse dl dd {
  display: inline-block;
  width: 47%;
  clear: right;
  font-size: 1.1em;
  vertical-align: bottom;
  padding-top: 3px;
}
article.ticket footer.officeuse dl dd.passcode {
  position: absolute;
  top: 2em;
}
article.ticket footer.officeuse dl dd.seat {
  position: absolute;
  top: 3.4em;
}
/*
article.ticket p.officeuse i {
	font-style: normal;
	font-weight: bolder;
	font-size: 1.2em;
}
*/
article.ticket div.explorername {
  text-align: center;
}
article.ticket div.explorername h2 {
  text-transform: none;
  font-weight: normal;
  font-size: 2em;
}
article.ticket div.explorername h3 {
  font-weight: bold;
  text-transform: none;
  border-bottom: solid 1px #000;
  padding: 1em 0.2em 0.2em;
  font-size: 2.1em;
}
article.ticket img.explorerlogo {
  width: 50%;
  margin: 0 auto;
}
div.barcode img {
  /*
	width: 228px;
	height: 88px;
*/
  width: 100%;
  height: 39px;
}
#s04thankyou {
  text-align: center;
}
#s04thankyou img {
  min-height: 512px;
  width: 100%;
  padding-top: 1em;
}
#content section footer {
  position: absolute;
  bottom: 1em;
  width: 100%;
  text-align: center;
  min-height: 76px;
  display: block;
}
footer p.subtotal {
  position: absolute;
  right: 0;
  bottom: 0;
}
a.back,
a.stepprev {
  position: absolute;
  /* left: 18%; */
  float: none;
  top: 0.6em;
}
#content section#config-annual footer {
  width: 100%;
  right: 0;
}
a.back {
  left: 0;
}
a.stepprev {
  left: 18%;
}
a.addmore {
  float: none;
  position: absolute;
  left: 7%;
  top: 0.4em;
}
#s01-001e footer a.skip {
  position: absolute;
  left: 59%;
  top: 0.8em;
}
#payment span.cardlogos {
  position: absolute;
  top: 0.6em;
  display: block;
  left: 11%;
  margin: 0;
}
section#payment footer {
  text-align: left;
}
#pick-quantity footer a.ok {
  position: static;
}
#s01purchase footer p.acceptedcards span.cardlogos {
  margin-left: 0.6em;
  display: inline-block;
  /* position: static; */
}
/* quick fixes for error modal */
#modal_win strong {
  font-weight: bold;
  white-space: pre;
}
#modal_win p {
  overflow: hidden;
}
#modal_win p.error {
  padding: 1em 0;
  font-size: 0.8em;
  line-height: 1.2em;
  text-align: left;
  color: #444444;
}
#modal_win.error {
  margin-top: 5em;
}
div#testwarning {
  display: inline-block;
  position: absolute;
  top: 0;
  width: 24%;
  text-align: center;
  left: 50%;
  margin-left: -12%;
  padding: 0.25em;
  background-color: orange;
  font-family: Arial, Helvetica, sans-serif;
  font-style: italic;
  z-index: 900;
}
#modal_win.renew {
  margin-top: 8.7em;
}
#modal_win.renew ul {
  display: block;
  text-align: left;
  list-style: decimal;
  padding: 0.5em 0;
  margin-left: 1.8em;
}
#modal_win.renew ul ol {
  list-style: decimal;
  padding: 0.25em;
  line-height: 1.1em;
  display: list-item;
}
#modal_win.renew a.done {
  font-size: 0.8em;
  padding: 1em;
  display: inline-block;
  background-color: #007cc2;
  color: white;
  background: transparent url(../img/bg_ok_btn.svg) no-repeat scroll center center;
  background-size: contain;
  cursor: pointer;
  text-decoration: none;
}
/*# sourceMappingURL=kiosk.css.map */