/**************************** GLOBAL *******************************/

* {

box-sizing:border-box;    
transition:background-color 200ms linear;
-webkit-transition:background-color 200ms linear;
text-underline-offset:6px;
text-decoration-thickness:2px !important;

}


html, body {

margin:0px;
padding:0px;
font-size:18px;
background-color:#fffefc;
font-family:'Questrial', arial, sans-serif;
color:#292929;
width:100%;
overflow-x:hidden;
letter-spacing:1px;
position:relative;

}


.container {

width:100%;
max-width:1600px;
text-align:left;
padding-left:15px;
padding-right:15px;
position:relative;
display:inline-block;

}


#main {

position:relative;
min-height:640px;

}


.hide {display:none !important;}


h1 {

font-weight:normal;
margin-top:0px;
margin-bottom:20px;
line-height:1em;

}



h2 {

margin-top:0px;
margin-bottom:20px;
font-weight:normal;

}


tbody {display:table; height:100%; width:100%;}



.cta {

display:inline-block;
margin-left:auto;
margin-right:auto;
padding:10px;
padding-left:20px;
padding-right:20px;
background-color:#1b8e39;
color:#ffffff;
font-variant:small-caps;
font-size:20px;
letter-spacing:1px;
text-align:center;
font-weight:bold;
cursor:pointer;
text-decoration:none;
border:0px;

}


.cta:hover {background-color:#209e41;}
.cta:active {background-color:#1b8e39;}

.cta2 {background-color:#28354b;}
.cta2:hover {background-color:#2c4775;}
.cta2:active {background-color:#2c4775;}


.submitbutton {

background-color:#dddddd;
border:1px solid #999999;
border-radius:6px;
font-variant:small-caps;
padding:8px;
font-weight:bold;
margin-top:10px;
display:inline-block;
cursor:pointer;

}


.submitbutton:active {background-color:#e9e9e9;}


.small {

font-size:14px;
line-height:1.2em;

}


.borderline {

height:2px;
background-color:#2aa70c;
background-color:#dbe7ec;
width:100%;
position:relative;

}


.secheading {

font-size:40px;
margin-bottom:20px;
margin-top:0px;
font-weight:bold;
width:45%;
padding-bottom:6px;
border-bottom:4px solid;
display:block;

}


.secheading2 {

width:100%;
background-color:#a52272;
margin-bottom:20px;
transform:skew(-12deg);
height:42px;

}


.secheading2 h1 {

font-size:50px;
font-family:'Yanone Kaffeesatz';
background-color:#fffefc;
margin-left:50px;
padding-left:10px;
padding-right:15px;
display:inline-block;
margin-bottom:0px;

}


.secheading2b {

width:95%;
background-color:#a52272;
margin-bottom:20px;
transform:skew(-12deg);
height:42px;

}


.secheading2b h1 {

font-size:50px;
font-family:'Yanone Kaffeesatz';
background-color:#fffefc;
padding-left:20px;
padding-right:20px;
display:inline-block;
margin-bottom:0px;
transform:skew(12deg);

}


.secheading3 {

font-size:40px;
margin-bottom:20px;
margin-top:0px;
font-weight:bold;
display:block;

}


.section {

padding-top:40px;
padding-bottom:40px;

}


.overlay {

position:fixed;
top:0px;
left:0px;
width:100%;
height:100%;
background-color:rgba(0,0,0,.3);
z-index:20;
display:none;

}



.popholder {

position:fixed;
top:0px;
left:0px;
width:100%;
height:100%;
text-align:center;
z-index:25;
padding:15px;
display:none;

}


.popup {

display:inline-block;
position:relative;
background-color:#fffefc;
border-radius:8px;
box-shadow:0px 0px 5px #000000;
padding:30px;
max-width:100%;

}


.closepop {

font-size:14px;
display:inline-block;
cursor:pointer;
text-decoration:underline;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
position:absolute;
top:6px;
right:8px;

}


.chat {

position:relative;
z-index:1 !important;

}


#chatload {

position:absolute;
width:100%;
left:0px;
text-align:center;
margin-top:40px;

}


#chatload img {

width:150px;
height:auto;

}



@media screen and (max-width:500px) {

.secheading {width:95%;}
.popholder {background-color:#fffefc;}
.popup {box-shadow:none; position:absolute; left:0px; top:0px; width:100% !important; padding-top:40px;}

}


@media screen and (min-width:501px) and (max-width:1000px) {

.secheading {width:85%;}

}


@media screen and (max-width:600px) {

.secheading2 h1 {margin-left:30px;}
.secheading2b {background:none;}

}







/**************************** HEADER *******************************/

#header {

position:relative;
padding-top:20px;
padding-bottom:20px;
background-color:#182130;
color:#fefefe;
border-bottom:2px solid #000000;
height:84px;

}


#header .container {text-align:center;}


#logo, #logo2 {

display:inline-block;
position:absolute;
left:20px;
top:3px;
width:300px;

}


#logo img, #logo2 img {

width:100%;
height:auto;

}


#headright {

position:absolute;
right:15px;
top:10px;

}


.headicon {

height:30px;
display:inline-block;
font-size:15px;
text-transform:uppercase;
text-decoration:none;
color:inherit;
margin-left:20px;
cursor:pointer;
position:relative;

}


.headicon img {

height:100%;
width:auto;
vertical-align:middle;
margin-right:5px;
position:relative;
top:-2px;

}


#headright .pipe {

font-size:14px;
position:relative;
left:10px;
margin-right:-5px;
top:-1px;

}


.ccount {

font-size:14px;
color:#ffffff;
background-color:#1b8e39;
width:25px;
height:25px;
border-radius:50%;
position:absolute;
font-weight:bold;
text-align:center;
padding-top:4px;
top:-10px;
left:10px;

}


#searchform {

width:40%;
position:relative;
display:inline-block;

}


#searchform .textfield {

padding:10px;
border-radius:12px;
width:100%;
border:0px;
font-size:18px;
padding-right:50px;
background-color:#fafafa;

}


#searchbutton {

height:35px;
background:none;
border:0px;
position:absolute;
right:2px;
top:2px;
opacity:.6;

}


#searchbutton img {

height:100%;
width:auto;

}


#mobicon {

position:absolute;
left:15px;
top:-3px;
margin-left:0px !important;
height:45px;

}


#accountmenu {

width:250px;
max-width:100%;
position:absolute;
right:0px;
top:35px;
z-index:5;
background-color:#182130;
border-bottom-left-radius:8px;
border-bottom-right-radius:8px;
padding:15px;
text-align:left;
display:none;

}


.accountlink {

display:block;
padding:15px;
color:#fafafa;
text-decoration:none;
font-size:16px;
cursor:pointer;

}


.accountlink:hover {

text-decoration:underline;

}


.cartreturn {

color:#2cbddb;

}



@media screen and (max-width:1200px) {

#logo {width:200px; top:10px;}

}



@media screen and (max-width:900px) {

#header {height:126px;}
#header.checkout {height:70px;}
#searchform {width:100%; margin-top:20px;}
.headicon span {display:none;}
.headicon {margin-left:5px; height:40px;}
.login, .register, .pipe {display:none;}
#accountmenu {position:fixed; bottom:0px; top:50px;}
#logo {position:relative; left:0px; width:230px; top:2px;}
#logo2 {width:230px; top:0px;}
#headright {top:1px;}

}


@media screen and (min-width:901px) {

#mobicon {display:none;}
#mobclose {display:none;}

}







/**************************** NAVIGATION *******************************/

#topnav {

background-color:#28354b;
border-bottom:2px solid #000000;

}

#topnav .container {position:static;}
#topnav ul {margin:0px; padding-left:0px;}
#topnav li {display:inline-block;}


.navlink {

position:relative;
color:#dfdfdf;
text-decoration:none;
text-transform:uppercase;
font-size:26px;
letter-spacing:1.5px;
display:inline-block;
font-family:'Yanone Kaffeesatz';
padding-top:20px;
padding-bottom:11px;
padding-right:10px;
padding-left:10px;

}


.navlink:after {

display:block;
content: '';
border-bottom:4px solid #a52272; 
transform: scaleX(0);  
transition: transform 250ms ease-in-out;
position:relative;
top:6px;

}


.navlink:hover:after {

transform: scaleX(1);

}


.subnav {

visibility:hidden;
opacity:0;
position:absolute;
left:0px;
width:100%;
background-color:#111111;
color:#fafafa;
z-index:2;
margin-top:1px;
padding-top:60px;
text-align:center;
transition:opacity 200ms linear;
-webkit-transition:opacity 200ms linear;
border-bottom:4px solid #a52272;

}


.hasdrop:hover .subnav {

visibility:visible;
opacity:1;

}


.linkblock {

display:inline-block;
width:250px;
margin-right:60px;
margin-bottom:60px;
vertical-align:top;
text-align:center;
text-decoration:none;

}


.linkblock:hover .linkthumb {

transform:scale3d(1.2, 1.2, 1.2) translateY(-15px);
filter:brightness(120%);

}


.linkblock:hover .linklabel {

font-size:28px;

}

.linkthumb {

width:100%;
height:auto;
margin-bottom:20px;
transition:transform 200ms ease-in-out, filter 200ms ease-in-out;
-wenkit-transition:transform 200ms ease-in-out, filter 200ms ease-in-out;

}


.linklabel {

font-size:22px;
text-transform:uppercase;
font-family:'Yanone Kaffeesatz';
color:#fafafa;
transition:font-size 200ms linear;
-webkit-transition:font-size 200ms linear;

}




#mobmenu {

width:100%;
position:absolute;
top:0px;
left:-100%;
height:100%;
z-index:5;
background-color:#ffffff;
text-align:left;

}


#mobhead {

padding:15px;
background-color:#28354b;
border-bottom:4px solid #2bbbd9;
position:fixed;
top:0px;
width:100%;
height:60px;

}


#mobclose img {

height:30px;
width:auto;

}


.inner {

padding-left:15px;
padding-right:15px;
margin-top:60px;
border-top:1px solid #000000;

}


.navlinkM {

display:block;
padding-top:10px;
padding-bottom:10px;
color:inherit;
text-decoration:none;
font-family:'Yanone Kaffeesatz';
font-size:22px;

}


.navlinkM2 {

font-size:20px;

}


.navhead {

padding-bottom:6px;
border-bottom:2px solid;
width:90%;
margin-top:10px;

}

.divider {

width:95%;
height:2px;
background-color:#dddddd;
margin-top:6px;
margin-bottom:6px;

}


@media screen and (max-width:900px) {

#topnav {display:none;}

}


@media screen and (max-width:1200px) {

.navlink {font-size:18px; padding-left:0px;}

}







/**************************** FORMS *******************************/

.cform {

display:inline-block;
padding:30px;
text-align:left;
width:100%;
max-width:450px;
position:relative;

}


.cform label {

display:block;
margin-bottom:4px;

}


.cform .textfield {

padding:15px;
border:1px solid #d5d5d5;
border-radius:6px;
font-size:18px;
width:100%;
background:#ffffff;

}


.cform .checkbox {

border:1px solid #d5d5d5;
width:20px;
height:20px;
position:relative;
top:1px;
margin-right:6px;
background:#ffffff;

}


.cform .cta {width:100%;}


.error {

font-size:14px;
color:red;
font-style:italic;
display:inline-block;

}


.ferror {

border:2px solid red !important;

}


.forgot {

font-size:14px;
display:inline-block;
margin-top:6px;
color:#666666;
text-decoration:none;

}


#logform {

width:350px;
position:absolute;
right:0px;
top:40px;
z-index:5;
background-color:#182130;
border-bottom-left-radius:8px;
border-bottom-right-radius:8px;
padding:15px;
display:none;

}


#logform .textfield {padding:10px;}
#logform .cta {font-size:16px;}
#logform .forgot {color:#cccccc;}
#logform .error {width:100%; margin-top:6px;}
#logform2 .error {width:100%; margin-top:6px;}








/**************************** BANNERS *******************************/

#banner, #bannerM {

width:100%;
position:relative;
background-color:#000000;

}

.banner_holder, .banner img {

width:100%;
height:auto;
background-size:contain;
background-position:center;
background-repeat:no-repeat;

}


.banner {

width:100%;
position:absolute;
top:0px;
left:0px;
z-index:1;

}


.banneractive {z-index:3;}


.navbuttons {

position:absolute;
bottom:10px;
left:0px;
width:100%;
text-align:center;
z-index:5;
opacity:0.8;

}


.navbtn {

width:15px;
height:15px;
background-color:#cccccc;
margin-left:6px;
margin-right:6px;
display:inline-block;
border-radius:3px;

}


.btnactive {background-color:#a52272;}


#bannerM .navbtn {

width:25px;
height:25px;

}



@media screen and (max-width:700px) {

#banner {display:none;}

}


@media screen and (min-width:701px) {

#bannerM {display:none;}

}









/**************************** PRODUCTS *******************************/

.prodholder {

font-size:0px;

}


.prodblock {

display:inline-block;
padding-left:40px;
padding-right:40px;
padding-top:10px;
padding-bottom:10px;
width:24.9%;
margin-bottom:60px;
text-decoration:none;
color:inherit;
vertical-align:top;

}


.prodblock a {

text-decoration:none;
color:inherit;
cursor:pointer;

}


.prodthumb {

width:100%;
height:auto;
margin-bottom:10px;
background-color:#dedede;

}


.prodname {

display:block;
font-size:22px;
margin-bottom:6px;
text-transform:uppercase;

}


.prodbrand {

text-transform:uppercase;
font-size:16px;
display:block;
margin-bottom:8px;

}


.prodprice {

display:inline-block;
font-size:20px;
font-weight:bold;
color:#000000;

}

.onsale {text-decoration:line-through;}


.prodsale {

display:inline-block;
font-size:20px;
font-weight:bold;
color:#1b8e39;
margin-left:10px;

}


.salebox {

display:inline-block;
font-variant:small-caps;
font-size:14px;
color:#ffffff;
background-color:#1b8e39;
padding:4px;
padding-top:2px;
padding-bottom:2px;
margin-left:5px;
position:relative;
top:-2px;

}



.prodstock {

display:block;
font-size:14px;
margin-top:5px;

}


.nostock {

font-style:italic;
color:#df4242;

}



@media screen and (max-width:550px) {

.prodblock {width:100%; padding-left:0px; padding-right:0px;}

}


@media screen and (min-width:551px) and (max-width:900px) {

.prodblock {width:49.9%; padding-left:20px; padding-right:20px;}

}


@media screen and (min-width:901px) and (max-width:1200px) {

.prodblock {width:33.2%;}

}








/**************************** PRODUCT PAGE *******************************/

#gallery {

text-align:center;
display:inline-block;
margin-bottom:40px;
vertical-align:top;
margin-right:80px;
width:450px;
max-width:100%;

}


#imgholder {

width:450px;
height:450px;
margin-bottom:20px;
background-color:#f5f5f5;
border:1px solid #f5f5f5;

}



#mainimg, #mainimg2 {

width:100%;
height:auto;
background-color:#f5f5f5;

}


#mainimg:hover {cursor:zoom-in;}


.imgthumb, .zimgthumb {

height:80px;
width:auto;
margin-left:10px;
margin-right:10px;
border:1px solid #dddddd;
background-color:#f5f5f5;
cursor:pointer;

}


.imgthumb.active, .zimgthumb.active {border-color:#000000;}


#zoombox {

background-color:#f5f5f5;

}


#zoomclose {

position:absolute;
top:15px;
right:15px;
display:inline-block;
z-index:5;

}


#zimageholder {

position:absolute;
top:0px;
left:0px;
width:100%;
height:85%;

}

#zmainimg {

width:auto;
height:auto;
max-height:100%;
max-width:100%;

}

#zthumbrow {

position:absolute;
bottom:20px;
left:0px;
width:100%;
text-align:center;

}


#info {

display:inline-block;
vertical-align:top;
width:50%;
max-width:600px;
margin-bottom:40px;

}


#info .pname {

font-size:34px;
display:block;
margin-bottom:8px;

}



#info .pbrand {

text-transform:uppercase;
font-size:16px;
display:block;
margin-bottom:10px;

}


#info .pprice {

font-size:28px;
font-weight:bold;
margin-bottom:10px;

}


#info .psale {

font-size:28px;
font-weight:bold;
margin-left:8px;

}

#info .salebox {

position:relative;
top:-4px;

}


#info .psummary {

display:block;
margin-top:10px;

}


.infotab {

padding:8px;
background-color:#dddddd;
color:#222222;
display:inline-block;
width:120px;
text-align:center;
cursor:pointer;
text-transform:uppercase;
font-size:16px;
border:1px solid #222222;
border-bottom:0px;

}


.infotab.active {

background-color:#222222;
color:#fafafa;

}



#info ul {

padding-left:15px;

}


#info li {

margin-bottom:8px;

}


.tabinfo {

padding-top:10px;
border-top:1px solid #222222;
display:none;

}


.tabinfo.active {

display:block;

}


#addform {

position:relative;
width:220px;
display:inline-block;
margin-right:15px;

}


#addform #quantity {

width:50px;
padding:6px;
border:1px solid #dddddd;

}


#addform .cta {

margin-top:15px;
margin-bottom:40px;
padding:20px;
padding-left:30px;
padding-right:30px;
width:100%;

}


#addform label {

font-size:15px;

}


#addform .spinner {

height:30px;
width:auto;
position:absolute;
bottom:55px;
left:100px;
display:none;
filter:brightness(120%);

}


.save {

display:inline-block;
text-transform:uppercase;
text-decoration:underline;
vertical-align:middle;
font-size:14px;
cursor:pointer;

}


.save.already {

font-style:italic;
text-decoration:none;
cursor:default;

}


#info .center {display:inline-block;}


#cartconfirm .popup {padding-bottom:10px !important;}


#cartconfirm a, #cartstock a {

display:inline-block;
text-decoration:underline;
color:inherit;
text-transform:uppercase;
font-size:16px;
margin-left:20px;
margin-right:20px;
cursor:pointer;
font-weight:bold;
margin-top:10px;
margin-bottom:20px;

}




@media screen and (max-width:500px) {

#imgholder {width:300px !important; height:300px !important; margin-left:auto; margin-right:auto;}
#thumbrow {white-space:no-wrap; overflow-x:auto;}
#addform {width:100%; margin-right:0px;}
.save {margin-top:-10px; margin-bottom:40px;}
#info .center {width:100%; text-align:center;}
.nostock {display:block; text-align:center;}

}


@media screen and (max-width:900px) {

#info {width:100%; max-width:100%;}
#gallery {width:100%;}
#imgholder {width:400px; height:400px; margin-left:auto; margin-right:auto;}

}


@media screen and (min-width:901px) and (max-width:1150px) {

#info {width:45%;}
#gallery {width:400px; margin-right:60px;}
#imgholder {width:400px; height:400px;}

}









/**************************** CART PAGE *******************************/

#cartlist {

width:100%;
max-width:800px;
position:relative;
display:inline-block;
vertical-align:top;

}


.cartrow {

padding-top:30px;
padding-bottom:30px;
border-bottom:1px solid #dddddd;

}


.cartrow:last-of-type {

border-bottom:0px;

}


.cartfield {

display:inline-block;
padding:10px;
vertical-align:top;

}


.cartpic img {

height:100px;
width:auto;

}


.cartinfo {

max-width:400px;

}


.cartname {

font-size:24px;
display:block;
margin-bottom:6px;
text-decoration:none;
color:inherit;
font-weight:bold;

}


.cartbrand {

font-size:12px;
text-transform:uppercase;
display:block;
margin-bottom:10px;

}


.cartprice {

display:block;
margin-bottom:8px;

}


.cartprice .price2 {

margin-left:6px;
color:#1b8e39;

}


.cartinfo label {

font-size:13px;
margin-right:4px;

}


.cartqty {

width:50px;
border:1px solid;
padding-left:5px;
padding-top:3px;
padding-bottom:3px;

}


.minilinks {display:inline-block; margin-left:10px;}

.cartlink {

display:inline-block;
font-size:13px;
color:#666666;
text-decoration:underline;
margin-right:20px;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
cursor:pointer;

}


.cartlink:hover {color:#000000;}


.cartsub {

font-weight:bold;
color:#000000;
font-size:24px;
float:right;
padding-left:60px;

}


#cartlist .nostock {

margin-top:15px;

}


#carttotal {

display:inline-block;
vertical-align:top;
width:100%;
border:1px solid #222222;
margin-top:30px;
text-align:center;
max-width:350px;
margin-left:80px;

}


#carttotal .tothead {

padding:15px;
background-color:#182130;
color:#fafafa;
font-size:24px;
font-weight:bold;
display:block;
width:100%;
margin-bottom:10px;

}


#carttotal .totinner {

padding:15px;
line-height:22px;
text-align:left;

}


#carttotal .totamount {

font-size:34px;
font-weight:bold;
display:block;
margin-bottom:15px;

}


#carttotal .label {

margin-right:10px;
margin-bottom:8px;
display:inline-block;

}


#carttotal .amount {

display:inline-block;
float:right;

}


#carttotal .cta {

width:100%;
display:block;
margin-top:20px;
font-size:28px;
padding-top:15px;
padding-bottom:15px;

}


#updatecart .spinner {

width:100px;
height:auto;

}



#logpop .popup {

width:420px;
padding-top:40px;

}


#logpop .cform {padding:0px;}


#logpop .small {margin-bottom:10px;}


#logpop .small a {

text-decoration:none;
font-style:italic;
color:#555555;

}


#closelog {

display:inline-block;
position:absolute;
top:3px;
right:3px;

}


#closelog img {

width:35px;
height:auto;

}


#logpop .cta {background-color:#28354b;}


.popbreak {

width:100%;
height:1px;
background-color:#333333;
margin-top:40px;
margin-bottom:40px;

}


.or {

padding:5px;
padding-left:8px;
padding-right:8px;
display:inline-block;
text-align:center;
position:relative;
top:-55px;
background-color:#fffefc;
margin-bottom:-45px;

}


#guest {

width:100%;
color:inherit;
background:transparent !important;
border:1px solid;

}


.popheading {

text-transform:uppercase;
text-align:center;
margin-bottom:10px;
font-size:22px;

}


.poperror {

text-align:center;
margin-bottom:6px;
display:none;

}


#logpopform .spinner {

position:absolute;
display:none;
width:100%;
left:0px;
bottom:5px;
text-align:center;

}


#logpopform .spinner img {

height:30px;
width:auto;
filter:brightness(120%);

}



@media screen and (max-width:700px) {

.cartpic {display:block; padding:0px; margin-bottom:8px;}
.cartinfo {max-width:60%;}
.minilinks {display:block; margin-top:25px; margin-left:0px;}

}




@media screen and (max-width:1260px) {

#carttotal {display:block; margin-left:0px; max-width:800px;}

}








/**************************** CHECKOUT PAGE *******************************/

#payform {

width:100%;

}


#payform .col1 {

margin-right:80px;
display:inline-block;
position:relative;
width:100%;
max-width:700px;

}


.checkblock {

display:inline-block;
vertical-align:top;
border:1px solid;
position:relative;

}


.checkblock .expand {display:none;}


.checkhead {

padding:15px;
background-color:#182130;
color:#fafafa;
font-size:24px;
font-weight:bold;
display:block;
width:100%;
margin-bottom:10px;

}


.checkhead1 {

font-size:28px;
font-weight:bold;
display:block;
width:100%;
margin-bottom:30px;

}


.checkinner {

padding:15px;

}


#summary {

width:100%;
max-width:400px;

}


#summary1 {

width:100%; 
border:0;
margin-bottom:10px;

}


#summary_spinner {

width:100%;
text-align:center;
position:absolute;
left:0px;

}

#summary_spinner img {

width:120px;
height:auto;

}


#summary_row .label {

margin-right:10px;
margin-bottom:8px;
display:inline-block;

}


#summary_row .amount {

display:inline-block;
float:right;

}


.break {

height:1px;
background-color:#292929;
margin-top:0px;
margin-bottom:8px;

}


#summary_row .total {

font-weight:bold;
font-size:22px;

}


#summary .cta {

width:100%;
display:block;
margin-top:20px;
font-size:28px;
height:60px;

}


.estdate {

display:block;
margin-top:8px;
font-size:16px;
font-weight:bold;

}



#dcode {

height:40px;
width:75%;
max-width:300px;

}


#dcode_apply, #gcode_apply {

display:inline-block;
padding:10px;
font-size:16px;
background-color:#dddddd;
border-radius:6px;
margin-left:6px;
font-variant:small-caps;
border:1px solid #999999;
font-weight:bold;
vertical-align:middle;
position:relative;
top:-2px;
cursor:pointer;

}

.dcode_label {

display:block !important;
width:100% !important;
font-size:16px;
text-align:left !important;
padding-left:3px;
margin-bottom:4px;
margin-top:10px;

}


.removecode {

font-size:10px;
display:inline-block;
margin-left:4px;
position:relative;
top:4px;
opacity:.8;

}


.removecode img {

width:18px;
height:18px;

}


#errcode, #errgcode {display:none;}


#submitting.cta {

padding-top:5px !important;
cursor:default;
display:none;

}

#submitting img {

height:50px;
width:auto;

}

#submitting:hover, #submitting:active {background-color:#1b8e39;}


.itempic {

display:inline-block;
width:20%;
margin-right:10px;
margin-bottom:10px;

}


.itempic img {

width:100%;
height:auto;

}


.itemfield {

width:75%;
display:inline-block;
vertical-align:top;
font-size:16px;
position:relative;
top:8px;
margin-bottom:20px;
padding-top:10px;

}


.itemprice {

font-weight:bold;
display:block;
margin-top:6px;

}


#shipping, #billing, #payment {

width:100%;
padding:20px;
padding-right:40px;

}


.pform label {

display:inline-block;
width:120px;
margin-right:5px;
text-align:right;

}


.pform .paylabel {

width:100%;
display:block;
margin-bottom:2px;
text-align:left;
color:#30313d;
font-size:14px;

}


.pform .textfield, .pform select {

padding:10px;
border:1px solid #d5d5d5;
border-radius:6px;
font-size:18px;
width:500px;
background:#ffffff;
margin-bottom:10px;
max-width:100%;

}


.fstate {

width:230px !important;
margin-right:20px;

}


.fzip {

width:100px !important;

}


.ziplabel {width:60px !important;}


.field_left {

display:inline-block;

}


.field_right {

display:inline-block;
float:right;
margin-right:10px;

}


.addlabel {

position:relative;
top:7px;

}


.pform .checkbox {

border:1px solid #d5d5d5;
width:20px;
height:20px;
position:relative;
top:1px;
margin-right:4px;
margin-left:0px;
background:#ffffff;


}


.pform .checklabel {

width:auto;
display:inline-block;
font-size:16px;
position:relative;
top:-1px;

}


.pform .payfield {width:100%;}


.pform .paysubhead {

display:block;
margin-bottom:10px;

}


.paybreak {

width:100%;
height:1px;
background-color:#292929;
margin-top:40px;
margin-bottom:40px;

}


.gcodefield {

width:70px !important;
text-transform:uppercase;

}


.dash {

display:inline-block;
margin-left:6px;
margin-right:6px;

}


#glist {

font-size:14px;
font-style:italic;
margin-top:8px;

}


.glist1 {

margin-bottom:8px;

}


.glist1 span {text-transform:uppercase;}


.removecard {

display:inline-block;
font-size:11px;
color:#666666;
text-decoration:underline;
margin-left:5px;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
cursor:pointer;

}


.useship {

display:inline-block;
font-size:16px;
text-decoration:underline;
text-underline-offset:4px;
text-decoration-thickness:1px !important;
margin-bottom:40px;
margin-top:-10px;
cursor:pointer;
color:#666666;

}


#savedship .popup {

min-width:400px;

}


#savedship .shipblock {

display:inline-block;
vertical-align:top;
margin:20px;
padding:20px;
border:1px solid #cccccc;
background-color:#ffffff;
cursor:pointer;
text-align:left;
min-height:140px;
font-size:17px;

}


#savedship .shipblock:active {background-color:#91ceed;}


#savedship .shiprow {

display:block;
margin-bottom:6px;

}


.smallterms {

text-align:center;
margin-top:8px;
font-size:13px;

}


.smallterms a {

text-underline-offset:3px;
text-decoration-thickness:1px !important;
color:inherit;

}



@media screen and (max-width:500px) {

#payform .col1 {max-width:100%; margin-right:0px;}
#shipping, #billing {padding-right:20px;}
.pform label {width:auto !important; text-align:left; margin-bottom:6px;}
.pform .textfield {width:100%;}
.fstate {width:100% !important; display:block; margin-right:0px;}
.field_left {width:100%;}
.field_right {float:none; margin-right:0px; width:100%;}
.fzip {width:100% !important; display:block;}
#summary {max-width:100%; margin-top:40px;}
.pform br.hide {display:block !important;}
#savedship .popup {min-width:100%;}

}



@media screen and (min-width:501px) and (max-width:850px) {

#payform .col1 {max-width:100%; margin-right:0px;}
#shipping, #billing {padding-right:20px;}
.pform label {width:auto !important; text-align:left; margin-bottom:6px;}
.pform .textfield {width:100%;}
.fstate {width:100% !important; display:block; margin-right:0px;}
.field_left {width:60%;}
.field_right {margin-right:0px;}
.fzip {width:150px !important; display:block;}
#summary {max-width:100%; margin-top:40px;}

}



@media screen and (min-width:851px) and (max-width:1000px) {

#payform .col1 {max-width:48%; margin-right:30px;}
.pform label {width:auto !important; text-align:left; margin-bottom:6px;}
.pform .textfield {width:100%;}
.fstate {width:100% !important; margin-right:0px;}
.field_left {display:block;}
.field_right {float:none; margin-right:0px; display:inline;}
.fzip {width:100% !important;}
#summary {float:right; max-width:380px;}
.pform br.hide {display:block !important;}

}


@media screen and (min-width:1001px) and (max-width:1250px) {

#payform .col1 {max-width:50%}
.pform label {width:auto !important; text-align:left; margin-bottom:6px;}
.pform .textfield {width:100%;}
.fstate {width:180px !important; margin-right:15px;}
.field_right {margin-right:0px;}
#summary {float:right; max-width:380px;}

}






/**************************** CONFIRMATION PAGE *******************************/

#order_summary {

width:100%;
max-width:400px;

}


#order_summary h2 {

font-size:26px;
font-weight:bold;
margin-bottom:20px;

}


.order_label {

display:inline-block;
margin-bottom:8px;

}


.order_value {

display:inline-block;
float:right;
font-weight:bold;
margin-bottom:8px;
padding-left:15px;

}


.order_total {

font-weight:bold;
font-size:20px;

}


.order_method {

font-size:16px;
display:block;
margin-top:10px;

}


.labelship, .labelitems {

font-weight:bold;
display:block;
margin-bottom:8px;

}


#itemlist {

width:100%;
max-width:600px;

}








/**************************** ACCOUNT PAGE *******************************/

.accountblock {

display:inline-block;
vertical-align:top;
width:100%;
max-width:500px;
padding:20px;
border:1px solid #cccccc;
border-radius:8px;
background-color:#ffffff;
font-size:17px;
position:relative;
min-height:250px;
margin-right:30px;
margin-bottom:40px;

}


.accounthead {

font-size:34px;
margin-bottom:20px;

}


.accountrow {

display:block;
margin-bottom:10px;

}


.accountvalue {

font-style:italic;
margin-left:20px;
display:inline-block;

}


.account_form {

display:none;

}


.account_form label {

display:block;
margin-bottom:4px;
font-weight:bold;

}

.account_form .textfield {

padding:5px;
border:1px solid #dddddd;
border-radius:6px;
width:100%;
max-width:100%;
font-size:17px;
display:block;
background-color:#f0eb93;

}


.account_form .spinner {

height:30px;
width:auto;
position:relative;
display:none;
vertical-align:middle;

}


.account_form .cancelink {

display:inline-block;
margin-left:10px;
font-size:14px;
text-decoration:underline;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
cursor:pointer;

}


.account_form br {

margin-bottom:20px;
display:block;

}


.editprofile {

position:absolute;
top:8px;
right:8px;

}


#profileform .mailerror, #passform .passerror {

display:none;
margin-bottom:8px;

}


.editpass {

font-size:16px;
text-decoration:underline;
text-underline-offset:4px;
text-decoration-thickness:1px !important;
cursor:pointer;
display:inline-block;
position:absolute;
bottom:25px;

}


.deleteaccount {

font-size:16px;
text-decoration:underline;
text-underline-offset:4px;
text-decoration-thickness:1px !important;
cursor:pointer;
display:inline-block;
position:absolute;
bottom:25px;
right:20px;

}


#deleteform .submitbutton {

margin-left:8px;
margin-right:8px;

}


.addshipping {

position:absolute;
top:8px;
right:8px;

}


.addshipping img {

height:30px;
width:auto;

}


.shiperror {

margin-bottom:8px;
display:none;

}


.accountblock .editlink {

display:inline-block;
font-size:13px;
text-decoration:underline;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
cursor:pointer;
margin-right:10px;

}


.accountblock .shipblock {

display:inline-block;
vertical-align:top;
margin-right:40px;
min-height:130px;
margin-bottom:20px;

}






/**************************** SAVED ITEMS *******************************/

.saveremove {

display:inline-block;
margin-top:15px;
font-size:14px;
text-decoration:underline !important;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
cursor:pointer;
color:#666666;

}







/**************************** ORDERS *******************************/

#orders {

display:inline-block;

}


.orderrow {

margin-bottom:60px;
padding:15px;
border:1px solid #cccccc;
border-radius:8px;
display:inline-block;
position:relative;

}


.ordercol {

display:inline-block;
vertical-align:top;

}


.ordercol1 {width:300px;}
.ordercol2 {width:200px;}
.ordercol3 {width:300px;}


.orderlabel {

font-size:15px;
text-transform:uppercase;
display:inline-block;
margin-bottom:8px;

}


.ordervalue {

font-size:15px;
display:inline-block;
font-weight:bold;

}

.totallabel {

font-size:18px;
display:inline-block;
margin-bottom:4px;
margin-top:2px;
text-transform:uppercase;

}


.totalvalue {

font-weight:bold;
font-size:24px;
display:inline-block;
margin-bottom:4px;

}


.numitems {

font-size:14px;

}


.trackvalue {

font-size:15px;

}


.trackvalue a {

color:inherit;

}


#orders .submitbutton {

vertical-align:middle;
font-size:14px;
margin-top:20px;

}


.detailsec {

display:none;
padding-bottom:80px;
border-top:1px solid #dddddd;
margin-top:20px;
padding-top:20px;
position:relative;

}


.detailrow {

display:block;
margin-bottom:30px;

}


.detailpic {

display:inline-block;
margin-right:20px;
width:70px;

}

.detailpic img {

width:100%;
height:auto;

}


.detailfield {

display:inline-block;
vertical-align:top;
width:300px;
padding-right:20px;

}


.detailname {

display:block;
margin-bottom:6px;

}


.detailbrand {

display:block;
margin-bottom:8px;
font-size:14px;
text-transform:uppercase;

}


.detailprice {

display:block;

}


.totalfield {

display:inline-block;
vertical-align:top;
font-weight:bold;
width:120px;
text-align:right;

}


.totalrow {

display:block;
margin-bottom:8px;

}


.totalrow .break1 {

border-top:1px solid;

}


.ordersummary {

display:inline-block;
vertical-align:top;
margin-right:60px;

}


.shipsummary {

display:inline-block;
vertical-align:top;
font-size:16px;

}


.shiptitle {

display:block;
font-weight:bold;
margin-bottom:10px;
font-size:18px;

}


.cancelorder {

position:absolute;
bottom:5px;
left:10px;
font-size:14px;
text-decoration:underline;
text-underline-offset:3px;
text-decoration-thickness:1px !important;
color:#0b4fa3;
cursor:pointer;

}


#cancelorder .submitbutton {

width:100px;
margin-left:10px;
margin-right:10px;
font-size:22px;
font-weight:normal;

}


#cancelorder .spinner {

height:44px;
width:auto;
position:relative;
top:5px;
display:none;
margin-bottom:10px;

}


.canceled {

display:block;
position:absolute;
bottom:5px;
left:10px;

}


@media screen and (max-width:550px) {

#orders, .orderrow {display:block;}
.ordercol {display:block; margin-bottom:20px;}
.ordercol1, .ordercol2, .ordercol3, .ordercol4 {width:100%;}
.ordercol4 {margin-bottom:0px;}
.detailpic {display:block; margin-bottom:8px;}
.detailrow .detailfield {width:60%;}
.totalrow .detailfield {width:auto;}
.totalfield {width:auto; float:right;}
.totalrow .break2 {width:100%; margin-bottom:10px;}

}


@media screen and (min-width:551px) and (max-width:900px) {

#orders, .orderrow {display:block;}
.ordercol3 {display:block; margin-top:20px;}

}


@media screen and (min-width:551px) and (max-width:650px) {

.detailpic {display:block; margin-bottom:8px;}
.detailfield {width:70%;}

}


@media screen and (max-width:900px) {

.shipsummary {display:block; margin-top:30px;}
.ordersummary {margin-right:0px; display:block;}

}







/**************************** POLICY PAGES *******************************/

#policy {

line-height:1.3em;

}


#policy .heading1 {

font-size:30px;
font-weight:bold;
margin-bottom:15px;

}


#policy .heading2 {

font-size:22px;
font-weight:bold;
margin-bottom:5px;

}


#policy ul {

margin-top:15px;
margin-bottom:15px;

}


#policy li {

margin-bottom:8px;

}







/**************************** FOOTER *******************************/

#footer {

position:relative;
background-color:#182130;
padding-top:30px;
padding-bottom:30px;
color:#dddddd;

}


.footblock {

display:inline-block;
vertical-align:top;
position:relative;
margin-right:60px;
margin-left:40px;
margin-bottom:60px;

}


.footblock.copyright {

font-style:italic;
float:right;
margin:0px;
padding-right:40px;
font-size:16px;

}


.foothead {

display:block;
font-size:16px;
margin-bottom:10px;
text-transform:uppercase;
font-weight:bold;

}


.footlink {

font-size:14px;
display:block;
color:inherit;
text-decoration:none;
margin-bottom:10px;
cursor:pointer;

}


.footlink:hover {

text-decoration:underline;
text-underline-offset:4px;
text-decoration-thickness:1px !important;

}


#status .popup {

width:500px;

}


#orderstatus {

padding:0px;
position:relative;

}


#orderstatus .spinner {

position:absolute;
width:100%;
left:0px;
bottom:5px;
display:none;

}


#orderstatus .spinner img {

height:30px;
width:auto;
filter:brightness(120%);

}


#statustext {display:none;}
#statustext2 {display:block; font-weight:bold; margin-top:6px;}



@media screen and (max-width:600px) {

.footblock {float:none !important; width:100%; margin-left:20px !important; margin-right:0px;}

}


@media screen and (min-width:601px) and (max-width:850px) {

.footblock.copyright {float:none; padding-right:0px; margin-left:40px;}

}

