.body-border { border:5px dotted yellow; }

.required { color:red; }
.formErr, .has-error { color: red; }
.red { color:#CC0D0D; }
.missing { color: #f0f!important; }
.indent { margin-left:25px;}
.nopadding-top { padding-top:0!important; }
.nomargin-top { margin-top:0!important; }
.norightborder { border-right:0!important; }
.noleftborder { border-left:0!important; }
.no-margin-bottom { margin-bottom:0; }
.no-margin-top { margin-top:0; }
.nomargin { margin:0; }
.mobile { display:none!important; }
.desktop { display:block!important; }
.uppercase { text-transform:uppercase; }
.attention { text-transform: uppercase; font-size: 1.25em; font-weight: 700; }
.centered-button { display:block;margin:0 auto; }

body { color:black;font-size:14px;font-family:'Open Sans',sans-serif;;line-height:16px;background-color:#04002c; }
h1 { text-align:center;font-size:36px;line-height:40px;margin-bottom:.75em; }

a, a:visited { color:black; }
a:hover { color:gray; }
* { box-sizing:border-box; }

.footerLinks { width:100%;max-width:1200px;margin:0 auto 1em;text-align:center;font-size:12px;color:white;box-sizing:border-box;}
.footerLinks h4 { margin: 20px 0 0; text-transform: uppercase; font-size:14px}
.footerLinks a { padding:0 10px;color:white; text-transform:uppercase;line-height:2em;}
.footerLegal { width:100%;max-width:800px;margin:0 auto;padding-bottom:30px;text-align:center;font-size:11px;color:white;line-height:17px;box-sizing:border-box; }

@media screen and (max-width: 1200px) {
  .footerLinks { max-width:880px; }
}

@media screen and (max-width: 880px) {
  .footerLinks { max-width:600px; }
}

#bodyContent { width:100%;max-width:1200px;margin:0 auto;background-color:#04002c; }
.container { width:100%;padding:6px 5% 20px 5%;background-color:white;border-bottom-left-radius:50px;border-bottom-right-radius:50px; }

header { width:100%;position:relative; }
footer { width:100%;padding-top:20px;margin:0 auto;}
main { width:100%;margin:0 auto;background-color:#04002c; }

/* {{{ Home Page */
.home-container { width:100%;max-width:1200px;margin:0 auto;position:relative; }
.home-container .header { width:100%;display:block; }
.home-container .btn { position:absolute;width:25%;display:block;min-width:140px;max-width:320px;font-size:20px;padding:11px 30px; }
.home-container .enter { top:15%;left:12%; }
.home-container .rules { top:25%;left:12%; }

.home-container.french .enter { top:15%;left:10%; }
.home-container.french .rules { top:25%;left:10%; }
/* }}} */

/* {{{ Exit Pages */
.exit { width:100%;max-width:1200px;margin:0 auto;text-align:center;}
.exit .text16 { font-size:16px; line-height:18px; }
.exit .text13 { font-size:13px; line-height:15px; }
.exit h1 { margin-top:30px; }
.exit p { padding-top:20px; }
/*
.exit a, .exit a:visited { color:#007A43; }
.exit a:hover { color:#00502c; }
*/
.exit .exit-logo { width:90%;max-width:300px;display:block;margin:0 auto; }

.thankyou h2 { line-height:26px; }

/* }}} */

/* {{{ Subpage Header */
header, tail {
  width:100%;
  max-width:1200px;
  margin:0 auto;
  display:block;
}

header img, tail img {
  width:100%;
  display:block;
}
/* }}} */

/* {{{ Steps */
.steps {
  width:100%;
  margin:0 auto;
  padding:0;
  list-style-type:none;
  display:flex;
  justify-content: center;
}
.steps li {
  display:block;
  margin:10px 0;
  text-align:center;
  border-left:2px solid black;
  padding:0px 20px;
  color:#000000;
  font-weight:normal;
  font-size:16px;
  text-transform: uppercase;
}
.steps li span { font-size:22px;font-weight:normal;
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
	vertical-align: middle;
}
.steps li.active { color:#ee402f;font-weight:bold; }
/* }}} Steps */

/* {{{ Form */
.entry { width:100%;margin:0 auto; padding-bottom:2em;}

.form-title { display:block;margin:12px 0 3px 0; }
.form-p { display:block;margin:0;margin-top:3px;padding:0; }

.form-group { width:100%;padding:1px 7px; clear:both; margin-bottom:15px; }
.form-group:after { content: ""; display: table; clear: both; }
.form-group .control-label { width:20%;float:left;padding:0;padding-top:7px;display:block; text-align: right; padding-right: 20px;}
.form-group .form-control { width:80%;float:right; }

.form-group .control-label.skill { width:40%;}
.form-group .form-control.skill { width:60%; }

.form-control input { width:100%;border-radius:3px;border:1px solid black;padding:5px; }

.form-control span.question {font-size:20px;font-family:'Open Sans',Arial,sans-serif;}
.form-control input.question { width:40px;border-radius:3px;border:1px solid black;padding:5px;margin-top:-4px; }

.form-group.has-error input { border:1px solid red; }
.form-control textarea { width:100%; }
.form-indent {display: inline-block;width:80%;margin-left:20%;}
.help-block { display:block;margin-top:2px;color:red;float:right; }

.checkbox { margin-bottom:12px; }
.checkbox label { text-indent:-20px;margin-left:25px;font-size:13px;display:inline-block;}

#sAddress2_row { margin-top:-13px; }
label[for=sAddress2] { display:none!important; }

#sProvince label, #sLanguage label { padding-top:3px; }
.form-control #sProvince,
.form-control #sLanguage,
.form-control #sOther { border:1px solid black;border-radius:3px;padding:9px 5px 6px 5px;width:100%;background-color:white; }

/* input[type="checkbox"] { width:12px;height:12px;} */
.radio-input { margin:10px 0; }
.form-control.dob-input { width:32.65%;float:left;padding:5px 5px 2px 5px; }

#sDOB_0 { width:15%;float:left;margin-right:1%; }
#sDOB_1 { width:10%;float:left;margin-right:1%; }
#sDOB_2 { width:10%;float:left; }

#sDOB_row .help-block, #sSkill_row .help-block { float:none;width:100%;line-height:18px; }

#sSkill_row label { padding-top:0; }
/* }}}  */

/* {{{ Upload Page */
.upload-table { border:0; }
.upload-table th { background-color:#087ec3;color:white; }
.upload-table td { border:0;padding:3px 6px; }
.upload-table tr td:first-child { width:10%;border-right:1px solid #087ec3; }

.tip-container { display:flex;justify-content:space-between;align-items:center;gap:30px; }
.tip-container .tip img, .tip-container .amazon img { width:100%; }

.tip-container.french .tip img { width:70%; }
.tip-container.french .amazon img { width:100%; }
/* }}}  */

/* {{{ Accordian */
.accordion-header {
  cursor: pointer;
  border: 3px solid transparent;
  padding:4px;
  margin: 0 auto;
  font-weight: 700;
  background-color:#ee402f;
  color:white;
  display: grid;
  grid-template-columns: 1fr 2em;
  transition: background-color 0.5s ease, border-color 0.5s ease, color 0.5s ease;
}

.accordion-header div.accordion-expand-icon {
  position: relative;
  width: 1em;
  height: 1em;
  align-self: center;
  justify-self: center;
  transition: transform 0.4s linear;
}

.accordion-header div.accordion-expand-icon::before,
.accordion-header div.accordion-expand-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  background-color: currentColor;
}

.accordion-header div.accordion-expand-icon::before { height: 0.22em; }
.accordion-header div.accordion-expand-icon::after {
  width: 0.22em;
  transition: transform 0.4s linear;
}

.accordion-header.open div.accordion-expand-icon { transform: rotate(180deg); }
.accordion-header.open div.accordion-expand-icon::after { transform: rotate(90deg); }

.accordion-header + div.accordion-content {
  display: block;
  max-height:0;
  overflow:hidden;
  opacity: 0;
  border: 3px solid transparent;
  border-top: none;
  padding: 5px;
  transition: all 0.5s linear;
  margin-bottom:0;
}

.accordion-header.open + div.accordion-content {
  max-height:10000px;
  opacity: 1;
}
/* }}}  */

/* {{{ FAQ */
.faq h1 { text-align:left; }
.faq .question { margin-bottom:6px;font-weight:bold; }
.faq p { margin-top:6px; }
.faq { line-height:18px; }
.faq .light-border { border:1px solid gray;padding:10px;}
.faq ol { margin:0;padding:0;padding-left:15px; }
.faq a { font-weight:bold;text-decoration:underline;text-decoration-color:#000000; }
.faq hr { border:1px dashed #007EC3; margin:2em 10%;}
.faq .faq-image { width:50%;display:block;margin-top:20px; }
.faq table { border-collapse: collapse; }
.faq th { text-align:left;color:#ffffff;font-size:14px;padding-bottom:5px; }
.faq td { font-size:14px;padding-bottom:5px; }
/* }}} FAQ */

/* {{{ Ticket Selection */
.ticket .section-options { width:100%; }
.ticket .ticket-option { width: 32%; padding: 0 5%;float:left;position:relative; }
.ticket .ticket-option .ticket-image { height:170px; max-width: 100%; object-fit: contain;display:inline-block; }

.ticket .help-block { color:#ff0000;float:none; }

.ticket .image-label { display:inline-block;vertical-align:middle; }
.ticket .ticket-option p { display:inline-block;vertical-align:middle;margin:0; }

.ticket .soldout  { position:relative; display:block;  }
.ticket .soldout:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .7;
    background-size:contain;
}
.ticket .soldout.en:after { background-image: url('/img/en/soldout.png'); }
.ticket .soldout.fr:after { background-image: url('/img/fr/soldout.png'); }

.ticket-overlay { position:absolute;top:0;left:0;width:70%;margin-left:10%;margin-top:-10px;border-radius:20px; }

p.warning {
  padding:10px;
  background-color:#eaeaea;
  margin-left:-25%;
  margin-right:-25%;
  font-size:90%;
}
/* }}} Ticket Selection */

/* {{{ Review Page */
.review { }
.review #submit { float:right;max-width: 300px; }
.review #back, .review #back:visited { float:left;background-color:#CC0D0D;max-width: 300px; }
.review #back:hover { background-color:#A30D0D; }
.review p { font-size:14px;line-height:19px; }
.review .leftColumn {width:48%;display:block;float:left;font-size:16px;line-height:20px;margin-right:3%; }
.review .rightColumn {width:43%;display:block;float:right;font-size:16px; }

.review h1.form-title { text-align:left;font-size:30px;line-height:30px;margin:20px 0; }
.review h2 { text-align:left;font-size:18px;line-height:18px;margin:10px 0; }

.review .ticket-container { width:100%;display:block;padding-top:10px; }
.review .ticket-container img { display:inline-block;margin:0 auto;vertical-align:middle; }
.review .ticket-container p { width:60%;display:inline-block;text-align:left:;vertical-align:middle;padding-left:20px;font-weight:700; }

/* }}} Review Page */

/* {{{ Rules */
table { border:1px solid black; }
th { text-align:left;background-color:#000000;color:#ffffff;padding:6px 4px; }
td { text-align:left;padding:3px 3px;border-right:1px solid black;border-bottom:1px solid black; }
td:last-child { border-right:0; }
td:first-child { width:30%;min-width:90px; }
tr { }
tr:last-child td { border-bottom:0; }
.rules h4 { margin-bottom:0; }
.rules h3 { margin:30px 0 6px 0; }
.rules ol.alpha {list-style-type: lower-alpha;}

/* }}} */

/* {{{ Tips */
#tips { font-size:16px;line-height:20px;padding:0 5%; margin: 0 auto; width:100%; max-width:1200px;display:block; }
#tips ol { margin:0 20px;padding:0; }
#tips ol li { margin:15px 0; }
#tips .tips-icon { width:12%;max-width:80px;min-width:60px;float:left;padding-right:12px;display:block; }
#tips .tips-text { width:20%;float:left;display:block;text-align:left;margin-top:2%; }
#tips .tips-back { width:15%;float:right;display:block;vertical-align:top;min-width:130px; }

#recieptSamples { padding:0 0; margin: 0 auto; width:100%; max-width:1000px;display:flex; flex-wrap: wrap;padding-top:16px; }
#recieptSamples img { width:30%;margin-right:3%;display:block;float:left;margin-bottom:20px; }

#recieptSamples .approved1 { order:1;-webkit-order:1; }
#recieptSamples .reject1 { order:2;-webkit-order:2; }
#recieptSamples .reject2 { order:3;-webkit-order:3; }
#recieptSamples .approved2 { order:4;-webkit-order:4; }
#recieptSamples .reject3 { order:5;-webkit-order:5; }
#recieptSamples .reject4 { order:6;-webkit-order:6; }

#amazon .btn-container { display:flex;justify-content: flex-end;margin:8px 0; }
#amazon img { display:block;width:100%; }
/* }}} Tips */

/* {{{ Form Alert - Borrowed From Bootstap */
.alert-container { width:100%;background-color:white; }
.alert {
  padding: 15px;
  margin: 0 auto;
  border: 1px solid transparent;
  border-radius: 4px;
  width:100%;
  max-width:1100px;

}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #468847;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #356635;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #3a87ad;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #2d6987;
}
.alert-warning {
  background-color: #fcf8e3;
  border-color: #fbeed5;
  color: #c09853;
}
.alert-warning hr {
  border-top-color: #f8e5be;
}
.alert-warning .alert-link {
  color: #a47e3c;
}
.alert-danger {
  background-color: #f2dede;
  border-color: #eed3d7;
  color: #b94a48;
}
.alert-danger hr {
  border-top-color: #e6c1c7;
}
.alert-danger .alert-link {
  color: #953b39;
}

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
}
.close:hover,
.close:focus {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}
/* }}} Form Alert - Borrowed From Bootstap */

/* {{{ CSS Button */
a.btn, .btn {
  display: inline-block;
  margin-bottom: 0;
  text-align: center;
  vertical-align: middle;
  padding: 9px 20px;
  font-size: 16px;
  line-height: 1.42857143;
  text-decoration:none;
  font-weight:700;
  text-transform:uppercase;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 3px solid transparent;
  white-space: nowrap;
  border-radius: 10px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: transform 0.5s ease;
  /* transition: color 0.5s ease; */
}
.btn:focus,
.btn:active:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus {
  color: #ffffff;
  text-decoration: none;
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default:active {  background-image: none; }

.btn span { display:inline-block;transform: rotate(180deg); }

.btn.btn-small {
  padding: 6px 15px;
  font-size: 12px;
  line-height: 1;
}

.btn.btn-large { width:100%;max-width:230px;cursor:pointer;display:block; }

.btn-default, a.btn-default:visited  { color:white;background-color:#021851;border-color:#ffca05!important; }
.btn-default:focus,
.btn-default:hover,
a.btn-default:hover,
.btn-default:active { color:white;transform:scale(0.9); }

.btn-default[disabled],
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus  { background-color:#005F89; }

.btn-secondary, a.btn-secondary:visited  { color:white;background-color:#000000;border-color:#ffca05!important; }
.btn-secondary:focus,
.btn-secondary:hover,
a.btn-secondary:hover,
.btn-secondary:active { color:white;transform:scale(0.9); }

.btn-secondary[disabled],
.btn-secondary.disabled:hover,
.btn-secondary[disabled]:hover,
fieldset[disabled] .btn-secondary:hover,
.btn-secondary.disabled:focus,
.btn-secondary[disabled]:focus,
fieldset[disabled] .btn-secondary:focus  { background-color:#000000; }
/* }}} CSS Button */

/* {{{ CSS Button Spinner */
.lds-ring {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
}
.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  margin: 4px;
  border: 4px solid #fff;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #fff transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* }}} */

/* CSS Button Overrides */
.enternow { width:100%;max-width:250px;display:block!important;margin:0 auto;font-size:20px!important; }


/* Media Query  1200px - 800px */
@media only screen and (max-width:1200px) and (min-width:800px) {
  #bodyContent, header, tail { width:100%;max-width:800px;margin:0 auto; }

  .home-container .btn { font-size:16px;padding:7px 10px; }

  .upload-table { font-size:12px; }

	.form-group .control-label { width:30%; }
	.form-group .form-control { width:70%; }
}

/* Media Query  800px - 400px */
@media only screen and (max-width:800px) {
  #bodyContent, header, tail { width:100%;max-width:400px;margin:0 auto; }

  .mobile { display:block!important; }
  .desktop { display:none!important; }

  .home-container .btn { width:80%;font-size:18px;padding:7px 10px; }
  .home-container .enter, .home-container.french .enter { top:9%;left:10%; }
  .home-container .rules, .home-container.french .rules { top:14%;left:10%; }

  .upload-table { font-size:12px; }

  .form-group { width:100%;float:none; }
  .form-group .control-label { width:100%; text-align:left; }
  .form-group .form-control { width:100%; }
  .form-indent { width:100%;margin-left:0%; }

  .contact-info .form-control {  width:100%; }
  .contact-info .control-label { display:block; width:100%; text-align:left;padding-right:0px;padding-bottom:4px;}
  .contact-info .form-indent { padding:10px 3px 0 10px;margin-left:1%;width:96%; }
  #contact-submit { display:block;margin:0 auto;float:none; }
  #recieptSamples img { width:47%;margin-right:3%; }
  #recieptSamples .approved2 { order:2;-webkit-order:3; }
  #recieptSamples .reject1 { order:3;-webkit-order:3; }
  #recieptSamples .reject2 { order:4;-webkit-order:4; }
  #recieptSamples .reject3 { order:5;-webkit-order:5; }
  #recieptSamples .reject4 { order:6;-webkit-order:6; }
  .indent { margin-left:15px;}

  .steps li {
    display:flex;
    align-items: center;
    margin:8px 0;
    padding:0px 8px;
    font-size:13px;
  }

  .tip-container { display:block; }
  .tip-container .tip img { width:100%; }
  .tip-container .amazon img { width:75%; }

  .tip-container.french .tip img { width:100%; }
  .tip-container.french .amazon img { width:57%; }

  .dz-button { margin:0 auto; }
  .form-file-count { margin-left:0; }

	.footerLinks a { padding:0 5px; }
	.footerLegal { font-size:10px;line-height:16px; }
	body { overflow-x:hidden; }
	#recieptSamples img { width:100%;margin-right:0; }
  .form-control span.question {font-size:17px;font-family:'Open Sans',Arial,sans-serif; }
}

@media screen and (max-width: 320px) {

}
