/* basics */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,div{display:block;position:relative;padding:0;margin:0;}.left {float:left;}.right {float:right;}.txtl{text-align:left;}.txtc{text-align:center;}.txtr{text-align:right;}.clear{clear:both;}img{border:0;}.clearfix:after{visibility:hidden;display:block;font-size:0;content:"";clear:both;height:0;}.clearfix{min-height:0;display:block;}* html .clearfix{height:1%;}

/* elemeents */
html, body { margin: 0; }
body, td, div, select, textarea, input { font: 16px Helvetica, sans-serif; color:#666; }
a { color:#10a7e4; text-decoration: none; }
a:hover { text-decoration: underline; }
h1 { font-size: 1.5em; margin: 0 0 10px; font-weight: normal; color: #10a7e4; }
h2 { font-size: 1.3em; margin: 0 0 10px; font-weight: normal; color: #10a7e4; }
h3 { font-size: 1.1em; margin: 0 0 10px; font-weight: normal; color: #10a7e4; }
h4 { font-size: 1em; margin: 0 0 2px; font-weight: normal; color: #10a7e4; }
p { font-size: 1em; margin: 0 0 10px; line-height:1.4em; }
ul,ol{margin:0 0 10px 0;padding: 0; }
ul li, ol li{line-height:1.3em;margin: 0 0 5px;padding: 0; list-style: none; }
li ol, li ul{margin-bottom:0; }

/* helpers */
.hide { display: none; }
.img100 { width: 100%; }
.white { color: #fff; }
.blue { color: #32a9e0; }
.ucase { text-transform: uppercase; }
.bold { font-weight: bold; }
.red { color: #f50202 !important; }

/* fontsize */
.fs12 { font-size: 12px; }
.fs13 { font-size: 13px !important; }
.fs14 { font-size: 14px; }
.fs18 { font-size: 18px; }
.fs20 { font-size: 20px; }
.fs22 { font-size: 22px; }
.fs24 { font-size: 24px; }
.fs28 { font-size: 28px; }
.fs32 { font-size: 32px; }
.fs40 { font-size: 40px; }
.fs50 { font-size: 50px; }
.fs60 { font-size: 60px; }

/* structure */
html, body{margin:0;padding:0;text-align:left; background: #dedede; height: 100%; }
#wrapper { margin: 0 auto; padding: 0; position: relative; max-width: 800px; width: 100%; background: #fff; min-height: 100%; }
.wrap { padding: 10px; }

/* header */
/*header nav ul { margin-bottom: 10px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
header nav li { float: left; width: 25%; padding: 10px 2px; box-sizing: border-box; margin: 0; border-right: 1px solid #ccc; text-align: center; }*/
/*bcChange*/
header nav ul { margin-bottom: 10px; display: flex !important; justify-content: space-around; }
header nav li { float: left; width: 23%; padding: 10px 2px; box-sizing: border-box; margin: 0 1%; text-align: center; border-radius: 10px;}
header nav li.current-menu { border: 2px solid #b3b2b2;background-color: #e8e8e8;}
/*header nav li:last-child { border-right: 0; }*/

header nav li a { display: block; font-size: .8em; color: #666; }
header nav li a.current { color:#10a7e4; }
header nav li a i { font-size: 30px !important;  }
header #location { margin-bottom: 10px; }
header #location-map img { height: auto; max-height: 150px; width: 100%; display: block; }
header #location-logo { width: 40%; float: left; text-align: center;  }
header #location-logo img { width: 90%; margin-top: -15px; border: 1px solid #eeeeee; box-sizing: border-box; background: #fff; }
header #location-info { width: 60%; float: left; padding: 5px; box-sizing: border-box; }
header #location-info.full { width: 100%; float: none; }
header #location-info h1 { margin-bottom: 0; font-weight: bold; }
header #location-info a { text-decoration: underline; }

#register-signin { text-align: center; }
#register-signin li { display: inline; padding: 0 10px; border-right: 1px solid #ccc; }
#register-signin li:last-child { border-right: 0; }

/* card */
/*.card-container { margin-bottom: 20px; padding: 10px 10px 30px; border-bottom: 3px solid #e5e5e5; }*/
.card-container { padding: 10px 10px 30px; border-bottom: 12px solid #e5e5e5; }
.card-container:nth-of-type(1) { border-top: 3px solid #e5e5e5; }
.card-container:last-child {border-bottom: 3px solid #e5e5e5;}

.card-container .tablegrid { margin-bottom: 0; }
/*bcChange*/
.card-container h2{ border-bottom: 1px solid lightgrey; padding-bottom: 5px;}

.card { padding: 10px 0; margin: 0 0 10px; border-radius: 5px;}
.card .card-stamp-container { width: 10%; float: left; text-align: center; }
.card .card-stamp-container:nth-child(10n+1) { clear: both; }
.card .card-stamp { width: 24px; height: 24px; background-color: #fff; margin: 0 auto 10px; padding: 2px; border-radius: 50%; }
.card .card-stamp i { font-size: 20px; color: #ff9905;}

.card.big .card-stamp-container { width: 20%; }
.card.big .card-stamp-container:nth-child(5n+1) { clear: both; }
.card.big .card-stamp { width: 55px; height: 55px; }
.card.big .card-stamp i { font-size: 40px; margin-top: 4px;}
.card .card-stamp i.reward-star { color: #0b7325; }
.card-btn { margin: 0 0 10px; display: none; }
@media screen and (max-width: 1199px) {
	.card-btn { display: block; }
}

/* homepage detail */
#homepage-detail img { max-width: 100%; }


/* stamp */
#stamp-canvas-wrap { background: #29a8e2!important; width: 100%; min-height: 450px; height:100%; height:100vh; }
#stamp-canvas-wrap h1 { text-align: center; text-transform: uppercase; font-weight: bold; padding: 20px 0 0; }
#stamp-canvas-wrap .phone { display:block; background: url(/images/mobile/phone.png?v=1) no-repeat center center; width: 276px; height: 163px; position:absolute; top: 180px; left: 50%; margin-left: -138px; }
#stamp-canvas-wrap .stamp { display:block; background: url(/images/mobile/stamp.png) no-repeat center center; width: 128px; height: 76px; position:absolute; top: 119px; left: 50%; margin-left: -65px; z-index: 10;
  -webkit-animation: dropStamp 1.5s infinite ease;
  -moz-animation: dropStamp 1.5s infinite ease;
  animation: dropStamp 1.5s infinite ease;
}
@-moz-keyframes dropStamp {
  0% { -moz-transform: translateY(0); }
  90% { -moz-transform: translateY(105px); }
  100% { -moz-transform: none; }
}
@-webkit-keyframes dropStamp {
  0% { -webkit-transform: translateY(0); }
  90% { -webkit-transform: translateY(105px); }
  100% { -webkit-transform: none; }
}
@keyframes dropStamp {
  0% { transform: translateY(0); }
  90% { transform: translateY(105px); }
  100% { transform: none; }
}
/* bc */
#help-container { position: fixed; bottom: 0; width: 100%; text-align: center; max-width: 800px; margin: 0 auto; }
#stamp-trouble { padding: 10px 0;   }
#stamp-trouble a { background-color: #ff9905;color: #fff; text-decoration: underline;}
#multistamp { padding: 10px 0;  }
#multistamp a { background-color: #3fb34f; color: #fff; text-decoration: underline; }

/*backup of above code
#help-container { position: fixed; bottom: 0; width: 100%; text-align: center; max-width: 800px; margin: 0 auto; }
#stamp-trouble { padding: 10px 0;  background-color: #ff9905; }
#stamp-trouble a { color: #fff; text-decoration: underline; padding: 10px 0; }
#multistamp { padding: 10px 0;  background-color: #3fb34f; }
#multistamp a { color: #fff; text-decoration: underline; }
*/

/* security code */
#security-code { padding: 10px; background: #29a8e2; padding: 30px 10px; min-height: 500px; }

/* deals */
#deals p { padding: 10px; }
#deal { padding: 10px; }
#deal .deal-detail img { max-width: 150px; width: 100%; float: left; margin-right: 10px; margin-bottom: 10px; border: 1px solid #ccc; }


/* reward earned */
#reward-earned { background: #29a8e2; padding: 30px 10px; min-height: 700px; }
#reward-earned img { max-width: 150px; width: 100%; }

/* reward prompt */
#reward-prompt { background: #29a8e2; padding: 30px 10px; min-height: 700px; }
@media screen and (max-width: 600px) {
	#reward-prompt a.btn { display: block; margin-bottom: 15px; }
}


/* stamp register complete */
#register-complete { background: #29a8e2; padding: 30px 10px; min-height: 500px; }

/* security code page */
#security-code-page { background: #29a8e2; padding: 30px 10px; min-height: 500px; }

/* redeem */
#redeem { height: 100% !important; background: #ffffff; padding: 10px 10px; text-align: center; box-sizing: border-box; }
#redeem h1, #redeem p { color: rgba(0, 0, 0, 0.99); }
#redeem-time { max-width: 300px; margin: 0 auto; }
.countdown-section { display: block; width: 46%; margin: 0 1%; padding: 10px; float: left; text-align: center; color: #131313; box-sizing: border-box; }
.countdown-amount { font-size: 50px; }
.countdown-period { display: block; }
.countdown-descr { display: block; }

#redeem .deal-detail img { max-width: 400px; width: 50%; float: center;  margin-bottom: 10px; solid #ccc; }
/* details */
#details { padding: 10px; }
#details .location h3, #details .location h4 { margin-bottom: 0; color: #666; font-weight: bold; }
#details .location { margin-bottom: 15px; padding-bottom: 10px; border-bottom: 1px solid #ccc; }
#details .location:last-child { border-bottom: 0; }
#details .location a { text-decoration: underline; }

/* rewards */
#rewards { padding: 10px; }

/* unavailable */
#unavailable { background: #29a8e2; padding: 30px 10px; box-sizing: border-box; }

/* buttons */
/*.btn { border-radius: 0px; color: #ffffff; background: #ff9905; padding: 10px 20px; text-decoration: none; border: 0; cursor: pointer; -webkit-appearance: none; text-align: center; box-sizing: border-box; }*/
/*bcChange*/
.btn { border-radius: 3px; color: #ffffff; background: #ff9905; padding: 10px 20px; text-decoration: none; border: 0; cursor: pointer; -webkit-appearance: none; text-align: center; box-sizing: border-box; }
.btn:hover { text-decoration: none; }
.btn.green { background-color: #0b7325; }
/*.btn.w100 { width: 100%; display: block; }*/
/*bcChange*/
.btn.w100 { width: 100%; display: block; -webkit-box-shadow: 6px 8px 39px -8px rgba(0,0,0,0.64); -moz-box-shadow: 6px 8px 39px -8px rgba(0,0,0,0.64); box-shadow: 0px 0px 7px 1px rgba(0,0,0,0.4); }
.btn.shadow {-webkit-box-shadow: 6px 8px 39px -8px rgba(0,0,0,0.64); -moz-box-shadow: 6px 8px 39px -8px rgba(0,0,0,0.64); box-shadow: 0px 0px 7px 1px rgba(0,0,0,0.4); } /* shadow button */

/* tables */
.tablegrid {width:100%; border-collapse:collapse;margin: 0 0 10px; }
.tablegrid th, .tablegrid td{padding:10px 15px;text-align: left;}
/*.tablegrid thead th, .tablegrid tbody th{background:#cccccc;border:1px solid #ccc;border-bottom:3px solid #999; font-size: .8em;}*/
/*bcChange*/
.tablegrid thead th, .tablegrid tbody th{background:#cccccc;border:1px solid #ccc; font-size: .8em;}
.tablegrid tbody th{background:#f7f7f7;border:1px solid #ccc;border-right:2px solid #999;}
.tablegrid td{border:1px dashed #ccc;border-bottom:1px solid #ddd; font-size: .8em; vertical-align: top;}
.tablegrid td.icon { text-align: center; width: 1px; }
.tablegrid td.fixed100 { width: 100px; }
.tablegrid tr.earned td { color: #0b7325; }
.tablegrid td .btn { display: block; }
.mogrid {overflow-y:auto;-webkit-overflow-scrolling: touch;}
#reward-prompt .tablegrid thead th { background: #fff; }
#reward-prompt .tablegrid td { color: #fff; }

/* form styles */
form.cssform { padding: 0; border: 0; margin-bottom: 10px; }
form.cssform div.fc { margin: 0 0 8px 0; float: left; box-sizing: border-box; width: 100%; }
form.cssform input.field, form.cssform select.field, form.cssform textarea.field { width: 100%; display: block; border:1px solid #e5e5e5; padding: 8px; box-sizing: border-box; }
form.cssform input.field.auto { width: auto; }
form.cssform input.field.inline { display: inline; }
form.cssform label { font-size: 1em; }
form.cssform input.color { width: 88%; float: left; }
form.cssform input.select { display: block; float: left; margin: 0; color: #555555; }
form.cssform div.fc.wauto { width: auto; margin-right: 15px; margin-bottom: 10px; display: inline; }
form.cssform div.fc.wauto label { margin-left: 5px; }


/* alerts */
ul.alert {margin: 0 0 15px; font-size:1em;line-height:16px;padding:5px 5px 5px 30px;color:#000;border: 2px solid #c00;font-weight: bold;background: #fcc;border-radius:5px;-moz-box-shadow:0 5px 10px 0px rgba(0,0,0,.7);-webkit-box-shadow:0 5px 10px 0px rgba(0,0,0,.7);box-shadow:0 10px 5px -5px rgba(0,0,0,.3);position:relative;}
ul.alert li { margin-bottom: 0; list-style: none; }
ul.alert.success{background: #cfc;border-color:#0c0;}
ul.alert.warn{background: #ffc;border-color:#ff3;}
ul.alert:before{content:'!';position:absolute;left:0px;top:0px;background:#c00;text-align:center;padding:0px 10px 0px 8px;color:#fff;height:100%;line-height:2em;}
ul.alert.success:before{content:'\2713';background:#0c0;padding:0px 8px 0px 6px;}
ul.alert.warn:before{content:'i';background:#ff3;color:#000;}

/* snowshoe messages */
#snowshoe-messages { position: absolute; text-align: center; width: 100%; top: 0; width: 100%; left: 0;  }
#snowshoe-messages h3 { color: #fff; background-color: #ff9905; padding: 10px 0; }

/* social media icons */
.social-icons { text-align: center; padding: 15px 0; }
.social-icons a { display: inline-block; margin: 0 5px; font-size: 24px; }
