* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

body { margin: 0 auto; padding: 0; font-size: 120%; font-family: "Poppins", "Helvetica", "Arial", sans-serif; font-weight: 400; text-align: center; color: #000; background: #ccc; width: 100%; max-width: 2560px; min-width: 300px; position:relative; }
#outer_wrapper { width: 100%; height: 100%; margin: 0 0 auto 0; padding: 0; position: relative; max-width: 2560px; }
#wrapper { width: 90%; height: auto; margin: 0 auto; padding: 0; position: relative; top: 0; left: 0; border: 1px solid #000; background: url(/images/bg.jpg) top right no-repeat #f0fcfd; background-size: auto 100%; min-height:100vh; }

#left { width: 45%; text-align: center; position: fixed; top: 0; left: 5%; height: 100vh; overflow: hidden; z-index: 10; }
#hero_box { position: relative; height: 100%; width: 100%; text-align: center; margin: 0; padding: 0; }
#hero { position: relative; height: 100%; max-height: 1732px; width: 100%; max-width: 100%; margin: 0 auto; padding: 0; }
#sponsorship { position: relative; height: 10%; width: 100%; text-align: center; margin: 1% 0; padding: 0; z-index: 30; }
.logo { margin: 0 1%; width: auto; height: 100%; }

#divider_line {position:absolute; top:0; left:50%; width:5px; height:100%; background:#fff; z-index:100;}
#divider {display:none;}

#container {position:relative; min-height:100vh;}

#bow, #bow_mobile {position:absolute; bottom:0; left:0; width:auto; height:30%; z-index:20; }
#hero_mobile, #bow_mobile { display: none; }
#present { position: absolute; bottom: 0; right: 0; width: 50%; height: auto; }
#present_spacer { width: 50%; height: auto; visibility: hidden; }


/*.bow_width {width:70%; height:auto;}*/ /* full display 90% because it's in the float left which is 50% of the whole so double but a lot of fading on top so bring it in a bit*/
#optins { font-size: 80%; font-weight:bold; margin-top:1em; }
.mobile {display:none;}

#container { margin: 0 auto 0 50%; padding: 0; position: relative; text-align: left; }
#entry_form { padding: 1em 5% 0 2em; margin: 0 auto; position: relative; }

#txt_enter {margin: 2em auto; width:80%; height:auto;}

#disclaimer, #disclaimer_mobile { font-size: 80%; font-weight: bold; padding: 1em 5% 0 2em; width: 100%; margin: 2em 0 0 0; text-align: left; position: relative; height:100%; }
#disclaimer_mobile { background-color: #1d9add; width:100%;}
#disclaimer a, disclaimer a:visited { color: #000;}
.width_like_disclaimer { width: 95%; padding: 0; margin: 0 auto 0.5em auto; text-align: left; font-size: 90%; }

#footer {background-color:#fff; color:#000; font-size:90%; font-weight:bold; text-align:center; width:100%; position:relative; padding: 1em 0; clear:both; display:none; }
.quarter {width:24.5%; display:inline-block; margin:0; padding:0;}
#privacy { width:90%; padding: 0 0 .5em 0; margin: .5em auto; text-align: center; font-family: Poppins, Arial, Helvetica, sans-serif; position:relative; }
#privacy a, #privacy a:visited { color: #000; text-decoration:none; }
#privacy a:hover, #privacy a:active, h3 a:hover, h3:active:active { color: #ec1c24; }

a, a:visited { color: #000; }
a:hover, a:active { text-decoration: underline; }

input { margin: .2em 0; padding: 1.75%; border: none; background-color: #dcdfe1; color: #000; }
select { -webkit-appearance: none; appearance: none; margin: .2em; padding: 1.75%; border: none; background-color: #dcdfe1; color: #000; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23333' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); /* SVG for a down arrow */ background-repeat: no-repeat; background-size: 1em; background-position: right 10px center; }
/*select::-ms-value { background: transparent; }*/
input[type="radio"], input[type="checkbox"] { vertical-align: middle; margin: 0 0.5em 0 0; padding: 0; accent-color: #0083cd; }
label { display: inline-block; margin: 0; padding: 0; }
select::-ms-expand { display: none; }
.placeholder_color { color: #999; }
option { margin: 0; padding: 0; color: #000; }

.wl_label { display: block; font-size: 90%; margin-top: .75em; font-weight: 600; }
.w_input { width: 80%; }
.wl_label_margin { margin-left: 5%; }
.checkbox { display: inline-block; width: 1.5em; vertical-align: top; text-align: left; margin-right:1em; }
.pad {padding: 2% 0; vertical-align:central;}

#entry_form input { font-size: 100%; }

#first, #last, #email, #add1, #city, #usstate, #zip, .input_width { width:90%; }
#btn_next { display: inline-block; margin: 0; padding: 0; width: 45%; height: auto; max-width: 800px; background:none;  }

#optins #rulesread, #optins #optin_gstv, #optins #optin1, #optins #optin2, #optins #optin3, #optins #optin4, #optins #optin5 { width: 1.5em; height: 1.5em; border: 1px solid #bcbcbc; background-color: #fff; color: #000; }
	#optins #rulesread:checked, #optins #optin_burlington:checked { background-color: #00a3ed; color: #fff; }
#optins a, #optins a:visited { color: inherit; }

.btn_shop {width:30%; height:auto; margin:1em auto;}

sup {width:2%;}
/*resize into vw*/
h1 { margin: 0; padding: 0; font-size: 2.5vw /*150%*/; font-weight: 700; color: #fff;  font-stretch: ultra-condensed; }
h1 sup { font-size: 50%;}
h2 { margin: 0; padding: 0; font-size: 2.2vw; font-weight: 700; color: #fff; }
h3 { margin: 0.5% 0 0 0; padding: 0; font-size: 1.9vw /*115%*/; font-weight: 400; color: #fff; }
h4 { margin: 0.5% 0 0 0; padding: 0; font-size: 1.2vw /*115%*/; font-weight: 400; color: #fff; }
form{ margin:0; padding:0;}

p { margin: 0; padding: 0; }

.white_bg { background-color: #fff; }
#divider {width:100%; height:2px; margin: 4em 0; background-color:#fff;}
sup {font-size:65%;}
.relative {position:relative;}
.error { color: #ea1a20; background-color: #fbebe6; }
.err_msg { color: #ea1a20; font-size:70%; font-family: Arial, Helvetica, sans-serif; }
.hr { width: 100%; display: block; height: 2px; color: #979797; background-color: #979797; padding: 0; margin: 1em 0 .75em 0; }
.full {width:100%; height:auto;}
.bold {font-weight:bold;}
.normal { font-weight: normal; } 
.smaller {font-size:90%;}
.upper {text-transform:uppercase;}
.block {display:block;}
.inline {display:inline;}
.indent { padding:0 0 0 2em; text-indent: -2em; font-size:90%; font-weight:bold;}
.asterisk {color:#fff; font-size:75%;}
.left {text-align:left;}
.center {text-align:center}
.right {text-align:right;}
.ctr {margin-left:auto; margin-right:auto;}
.clear {clear:both;}
.clear_right {clear:right;}
.clear_left { clear: left; }
.fl_rgt {float:right;}
.fl_lft {float:left;}
.red { color: #ec1c24; }
.orange { color: #fba939; }
.blue { color: #0d3283;}
.white {color:#fff;}
.yellow { color: #ffdd00; }
.orange { color: #f49433;}
.grey { color: #a9a9a9;}
.grey_darker { color: #686868 ;}
.grey_darker { color: #686868 ;}
.red_bg { background-color: #ec1c24; }
.noheight {height:0;}
.max50 {max-width:50%;}
.vtop {vertical-align:top;}
.vmiddle {vertical-align:middle;}
.max100 { max-width: 100%; }
.w80 {width:80%; margin: 0 auto;}
.nounderline {text-decoration:none;}
.nodisplay {display:none;}
.hidden { visibility:hidden;}
.visible { visibility:visible;}

/*
@media screen and (max-width: 1024px), screen and (max-device-width: 1024px) {
	body {font-size:100%;}
	#wrapper { width: 98%; }
#container { padding: 1em 1% 0 1em }
	h1 { font-size: 4vw; }
	h2 { font-size: 1.7vw;}
	h3 { font-size: 1.5vw; }
	h4 { font-size: 1.4vw; }
}
*/

/* or swap at 800px? moved up from 1024*/
@media screen and (max-width: 1200px), screen and (max-device-width: 1200px) {
	#wrapper { width: 87.5%; height: auto; margin: 0 auto; padding: 0; position: relative; top: 0; left: 0; border: 1px solid #000; background: #c2eef3; }
	#container { background: url(/images/bg.jpg) top right no-repeat #fff; background-size: 100% auto; margin: 0; padding: 1em; }
	#left { display: block; float: none; width: 100%; height:auto; padding-bottom: 2em; position:relative; left:0; overflow:visible; }
	#hero_box { height: auto; display:none; }
	#hero { position: relative; width: 100%; height: auto; margin: 0 auto; padding: 0; }
	#hero, .mobile_hide { display: none; }
	#hero_mobile { margin: 0; width: 100%; height: auto; display: block; }

	#sponsorship { position: relative; height: auto; width: 100%; text-align: center; margin: 1% 0; padding: 0; z-index: 30; display:none; }
	.logo { margin: 0 1%; width: 30%; height: auto; }

	#divider_line {display:none; background:none;}
	#divider {display:block; height:1em; background: #fff; margin:0; padding:0;}
	.mobile { display: block; }
	.mobile_center { width:70%; margin:0 auto; max-width:400px; }

	#left2, #right2 { width: 100%; float: none; display:block; margin:0; padding:0; }
	#right2 {margin-top:2em;}
	#bow { display:none; }
	.bow_width { width: 25%; height: auto; }
	/*	#bow_mobile { position: absolute; bottom: 0; left: 0; width: 30%; height: auto; z-index: 20; }*/
	#bow_mobile { display: block; width: 30%; height: auto; }
	#present, #present_spacer { display:none; }
	#btn_next { display: block; margin: 0 auto; padding: 0; width: 90%; height: auto; max-width: 800px; text-align:center; }	
	#footer_image { display:none; }
	#disclaimer {text-align:left;}
	#privacy {font-size:120%;}
	.wl_label {color:#fff;}
	.input_width {width:80%;}
	.social-small { width: 8%; height: auto; margin: 0 4%; padding: 0; display: inline-block; vertical-align: central; }
	.quarter {display:block; width: 100%; text-align:center;}
	.socialicons {margin-top:2em;}
	h1 { font-size: 8vw; text-align:center; }
	h2 { font-size: 5vw; margin:0; text-align:left; }
	h3 { font-size: 3vw; }
	h4 { font-size: 2.5vw; }
}