@font-face {
    font-family: 'icomoon';
    src:    url('../fonts/icomoon.eot?mhx75s');
    src:    url('../fonts/icomoon.eot?mhx75s#iefix') format('embedded-opentype'),
        url('../fonts/icomoon.ttf?mhx75s') format('truetype'),
        url('../fonts/icomoon.woff?mhx75s') format('woff'),
        url('../fonts/icomoon.svg?mhx75s#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}
/* ICOMOON */
[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    
    /* Enable Ligatures ================ */
    letter-spacing: 0;
    -webkit-font-feature-settings: "liga";
    -moz-font-feature-settings: "liga=1";
    -moz-font-feature-settings: "liga";
    -ms-font-feature-settings: "liga" 1;
    font-feature-settings: "liga";
    -webkit-font-variant-ligatures: discretionary-ligatures;
    font-variant-ligatures: discretionary-ligatures;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-menu:before {
  content: "\e904";
}
.icon-library:before {
  content: "\e909";
}
.icon-cart:before {
  content: "\e907";
}
.icon-coin-dollar:before {
  content: "\e915";
}
.icon-credit-card:before {
  content: "\e917";
}
.icon-phone:before {
  content: "\e90a";
}
.icon-envelop:before {
  content: "\e90f";
}
.icon-clock:before {
  content: "\e90c";
}
.icon-printer:before {
  content: "\e90d";
}
.icon-display:before {
  content: "\e90e";
}
.icon-mobile:before {
  content: "\e919";
}
.icon-user:before {
  content: "\e905";
}
.icon-hour-glass:before {
  content: "\e918";
}
.icon-search:before {
  content: "\e90b";
}
.icon-lock:before {
  content: "\e900";
}
.icon-truck:before {
  content: "\e916";
}
.icon-notification:before {
  content: "\e913";
}
.icon-plus:before {
  content: "\e911";
}
.icon-minus:before {
  content: "\e912";
}
.icon-info:before {
  content: "\e91b";
} 
.icon-cross:before {
  content: "\e910";
}
.icon-checkmark:before {
  content: "\e914";
}
.icon-google-plus:before {
  content: "\e906";
}
.icon-facebook:before {
  content: "\e901";
}
.icon-instagram:before {
  content: "\e902";
}
.icon-twitter:before {
  content: "\e903";
}
.icon-pinterest:before {
  content: "\e908";
}
.icon-paypal:before {
  content: "\e91a";
}


/* CSS RESET http://meyerweb.com/eric/tools/css/reset/  v2.0 | 20110126 License: none (public domain) */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/***********************/
/* COMMON TO ALL PAGES */
/***********************/
*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
body{
    background-color:#999999;
    margin:0;
    padding:0;   
}
body, input, select, textarea{
    font-family: 'Poppins', sans-serif;
}
#main-wrapper{
    max-width:1200px;
    background-color:#FFF;
    margin:0 auto; 
}
header{
    position:relative;
    margin-bottom:4px;
}
#header-background{
    width:100%;
    display:block;
}
#logo{
    position:absolute;
    left:2%;
    top:10%;
    height:80%;
    display:block;
}
#cart-link{
    position:absolute;
    right:5%;
    top:12%;
    color:#FFF;
    text-decoration:none;
    font-size:24px;
    line-height:24px;     
    z-index:10;    
}#cart-link .cart-items{
    display:block;
    position:absolute;        
    font-size:14px;
    font-weight:600;
    line-height:14px;
    padding:3px 8px;
    color:#FFF;
    border-radius:9px;
    background-color:#F98555;
    top:-10px;
    right:-8px;
} 
#hamburger{
    display:none;
}
nav{
    position:absolute;
    bottom:10%;
    right:2%;
    height:40px;
    z-index:5;    
}
nav ul li, nav ul li a{
    display:inline-block;
}
nav ul li a{
    padding:10px 25px;
    color:#FFF;
    text-decoration:none;  
    font-size:20px;
    line-height:20px;
    font-weight:600;
    text-transform:uppercase;
}
nav ul li a:hover{
    background-color:rgba(255,255,255,0.2);
}
@media all and (max-width: 800px){
    #cart-link{
        right:4%;        
    }    
    nav{
        right:0;
        width:100%;
    }
    #hamburger{
        display:block;
        position:absolute;
        width:40px;
        height:40px;
        cursor:pointer;
        right:2%;
        bottom:0;
    }
    #hamburger span{
        display:block;
        position:absolute;
        left:0;
        width:100%;
        height:15%;
        background-color:#FFF;
        border-radius:2px;
    }
    #hamburger span:nth-child(1){
        top:0;
    }
    #hamburger span:nth-child(2){
        top:42.5%;
    }
    #hamburger span:nth-child(3){
        bottom:0;
    }
    nav ul{
        display:none;
        position:absolute;
        top:45px;
        right:0;
        width:100%;
    }
    nav ul li, nav ul li a{
        display:block;
        color:#FFF;
    }
    nav ul li a{
        background-color:#8050A0;
        border-bottom:1px solid #A070C0;
    }
    nav ul li a:hover{
        background-color:#9060B0;
    }
}
@media all and (max-width: 520px){
    #cart-link{
        top:auto;
        bottom:12%;
        right:22%;
    }
}
h1{
    font-size:18px;
    line-height:20px;
    letter-spacing:1.5px;
    color:#000;
    font-weight:600;
    text-transform:uppercase;
    margin:0;
    padding:5px 0;
}
h2{
    font-size:18px;
    line-height:20px;
    letter-spacing:1.5px;
    color:#000;
    font-weight:600;
    text-transform:uppercase;
    margin:0;
    padding:5px 0;
}
.success-message{
    background-color:#EAFFEA;
    color:#0C0;
    border:1px solid #0C0;
    border-radius:3px;
    font-family: 'Open Sans', sans-serif;
    font-size:16px;
    line-height:20px;
    padding:5px 0 5px 10px !important;
    margin:2px 0;
    text-align:left;    
}
.error-message{
    background-color:#FFF0F0;
    color:#C00;
    border:1px solid #C00;
    border-radius:3px;
    font-family: 'Open Sans', sans-serif;
    font-size:16px;
    line-height:20px;
    padding:5px 0 5px 10px !important;
    margin:2px 0;
    text-align:left;    
}
.purple-button, .less-purple-button{
    background-color:#8050A0;
    color:#FFF;
    padding:10px;
    font-size:16px;
    text-transform:uppercase;
    border:0;
    cursor:pointer;
    text-decoration:none;
    display:inline-block;
}
.less-purple-button{
    background-color:#A070C0;    
}

/* Home page */
#slideshow { 
}
#shop{
    padding:2% 3%;
}
#shop .category-item{
   border:1px solid black; 
   text-decoration:none;
   width:30%;
   margin-top:2.5%;
   margin-bottom:2.5%;
   margin-right:5%;
   float:left;
}
#shop .category-item:nth-child(3n){
    margin-right:0;
}
#shop .category-item:nth-child(3n+4){
    clear:left;
}
#shop .category-item img{
    display:block;
    width:100%;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%); 
}
#shop .category-item:hover img{
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
}
#shop .category-item h3{
    color:#FFF;
    background-color:#8050A0;
    text-transform:uppercase;
    text-align:center;
    font-weight:600;
    font-size:16px;
    line-height:18px;
    padding:14px 2px;
}
#shop .clear{
    clear:left;
}
@media all and (max-width: 800px){
    #shop .category-item, #shop .category-item:nth-child(3n){  
        width:45%;
        margin-right:10%;
    }
    #shop .category-item:nth-child(3n+4){
        clear:none;
    }    
    #shop .category-item:nth-child(2n){
        margin-right:0%;
    }
    #shop .category-item:nth-child(2n+3){
        clear:left;
    }    
}
#about-us{
    padding:3% 3%;    
    background-color:#CC90F4;
    font-size:16px;   
    line-height:22px;
}
#about-us p{
    padding:10px 0;
}
#about-us img{
    float:left;
    width:30%;
    margin-right:6%;
}
#about-us .clear{
    clear:left;
}
#faq{
    padding:3% 3%; 
}
#faq li{
    margin-bottom:5px;
}
#faq .q{
    background-color:#8050A0;
    color:#FFF;
    font-size:16px;
    line-height:20px;
    padding:1.5%;
    cursor:pointer;
}
#faq .a{
    background-color:#CC90F4;
    color:#000;
    font-size:16px;
    line-height:22px;
    padding:1.5%;
}
#contact{
    padding:3% 3%; 
    background-color:#000015;
    color:#FFF;
    background-image:url('../images/contact-background.jpg');
    background-position: top right;
    background-repeat: no-repeat;
}
#contact h2{
    color:#FFF;
}
#contact p.contact-details{
    margin-top:10px;
    margin-bottom:20px;
    font-size:16px;
    line-height:28px;
}
#contact p.contact-details a{
    color:#FFF;
}
#contact form{
    background-color:#8050A0;
    color:#FFF;
    padding:15px;
    width:50%;
}
#contact form label{
    float:left;
    width:65px;
    font-weight:600;
    text-transform:uppercase;
    font-size:16px;
    line-height:30px;
}
#contact form .input-holder{
    margin-left:80px;
    margin-bottom:6px;    
}
#contact form input, #contact form textarea{
    width:100%;
    font-size:16px;
    line-height:30px;
    height:30px;  
    padding:0 5px;
}
#contact form textarea{
    height:100px;
    line-height:18px;
    padding-top:3px;
}
#contact form button{
    border:1px solid rgba(255,255,255,0.6);;
    background-color:rgba(255,255,255,0.2);
    color:#FFF;
    font-size:16px;
    line-height:18px;
    text-transform:uppercase;
    padding:5px 8px;
    cursor:pointer;
}
#contact .error-message, #contact .success-message{
    display:none;
}
@media all and (max-width: 800px){
    #contact form{
        width:100%;
    }
    #contact-mobile-background{
        background-color:rgba(0,0,0,0.75);
    }
}

/* Category page */
#category{
    padding:2% 3%;
}
#category p{
    padding:10px 0;
}
.cat-listing .product-item{
   border:1px solid black; 
   text-decoration:none;
   width:30%;
   margin-top:2.5%;
   margin-bottom:2.5%;
   margin-right:5%;
   float:left;
}
.cat-listing .product-item:nth-child(3n){
    margin-right:0;
}
.cat-listing .product-item:nth-child(3n+4){
    clear:left;
}
.cat-listing .product-item img{
    display:block;
    width:100%;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%); 
}
.cat-listing .product-item:hover img{
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
}
.cat-listing .product-item h3{
    background-color:#8050A0;
    color:#FFF;    
    text-transform:uppercase;
    text-align:center;
    font-weight:600;
    font-size:16px;
    line-height:18px;
    padding:14px 2px;
}
.cat-listing .product-item h3 .orig-price{
    color:#CCC;  
    font-weight:400;
    text-decoration:line-through;
}
.cat-listing .product-item h3 .price{
    color:#FFF;  
    font-weight:400;
}
.cat-listing .clear{
    clear:left;
}
@media all and (max-width: 800px){
    .cat-listing .product-item, .cat-listing .product-item:nth-child(3n){  
        width:45%;
        margin-right:10%;
    }
    .cat-listing .product-item:nth-child(3n+4){
        clear:none;
    }    
    .cat-listing .product-item:nth-child(2n){
        margin-right:0%;
    }
    .cat-listing .product-item:nth-child(2n+3){
        clear:left;
    } 
}

/* Product Detail page */
#product{
    padding:2% 3%;
}
#product .name-and-price{
    float:right;
    width:50%;
}
#product .images {
    float:left;
    width:45%;
    max-width:500px;
}
#product .description-and-button {
    float:right;
    width:50%;
}
#product .prod-price{
    color:#1A1A1A;
    font-size:20px;
    line-height:30px;    
}
#product .original-price{
    text-decoration: line-through;
    color:#999;
}
#product .images .product-image{
    width:100%;
}
#product .images .thumb{
    display:block;
    float:left;
    position:relative;
    width:24%;
    padding-bottom:24%;
    margin-right:1.3%;
}
#product .images .thumb.last{
    margin-right:0;
}
#product .images .img{
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    background-size: cover;   
}
#product .description{
    padding:15px 0;
    font-size:16px;
    line-height:22px;
}
#product .description p{
    padding:6px 0;
}
#product li ul, #product li ol {
	margin:0 1.5em;
}
#product ul, #product ol {
	margin:0 1.5em 1.5em 1.5em;
}
#product ul {
	list-style-type:disc;
}
#product ol {
	list-style-type:decimal;
}
#product .options td{
    padding:3px;
}
#product .options label{
    display:block;
    text-align:right;
}
#product .options select{
    border:1px solid #000;
    padding:5px;
}
#product .add-to-cart{
    margin-top:10px;
}
#product .clear-both {
    clear:both;
}
#estimate-shipping-toggle{
    cursor:pointer;
    color:#333;
    margin-top:20px;
    display:inline-block;
}
#estimate-shipping-error, #estimate-shipping-success{
    display:none;
}
form#estimate-shipping{
    margin-top:10px;
    display:none;
    max-width:400px;
}
form#estimate-shipping label{
    float:left;
    width:110px;
    font-size:16px;
    line-height:30px;
}
form#estimate-shipping .input-holder{
    margin-left:125px;   
    margin-bottom:10px;
}
form#estimate-shipping input{ 
    font-size:16px;
    line-height:30px;
    border:1px solid #333;
    height:30px;   
    width:100%;
}
form#estimate-shipping button{
    margin-bottom:15px; 
}
form#estimate-shipping #working-icon{
    display:none;
}
#product .share{
    margin:15px 0;
    color:#2D8FCE;
    font-size:16px;
    line-height:32px;
    text-transform:uppercase;
}
#product .share a{
    color:#40B6EB;
    text-decoration:none;
    font-size:18px;
    margin-left:10px;
}
#product h2{
    color:#CC90F4;
    border-bottom:1px solid #CC90F4;
    margin-top:20px;
    margin-bottom:5px;
}
@media all and (max-width: 800px){
    #product .name-and-price{
        float:none;
        width:100%;
    }
    #product .images {
        float:none;
        width:100%;
    }
    #product .description-and-button {
        float:none;
        width:100%;
    }
    #product .clear-both {
        clear:none;
    }
}

/* Cart page */
#cart{
    padding:2% 3%;
}
table.cart{
    margin:15px 0;
}
table.cart th, table.cart td{
    padding:6px 10px;
    border-bottom:1px dotted #8050A0;
}
table.cart th{
    font-weight:bold;
    border-bottom:1px solid #8050A0;
}
table.cart a{
    text-decoration:none;
    color:#1A1A1A;
}
table.cart .cart-item-option{
    margin-left:15px;
    font-size:12px;
}
table.cart .total-row td{
    border-bottom:none;
}
table.cart  td.gst{
    color:#666;
    font-size:12px;
}

/* Cart page */
#checkout{
    padding:2% 3%;
}
#checkout h2{
    color:#CC90F4;
    border-bottom:1px solid #CC90F4;
    margin-top:10px;
    margin-bottom:20px;
}
#checkout form{
    max-width:550px;
}
#checkout label{
    float:left;
    width:110px;
    font-size:16px;
    line-height:30px;
}
#checkout .input-holder{
    margin-left:125px;   
    padding:0;
    margin-bottom:10px;
}
#checkout input, #checkout select, #checkout textarea{ 
    font-size:16px;
    line-height:30px;
    border:1px solid #333;
    height:30px;   
    width:100%;
    padding:0 5px;
}
#checkout textarea{
    height:100px;
    line-height:18px;
    padding-top:3px;
}

/* Payment page */
#payment{
    padding:2% 3%;
}
#payment h2{
    color:#CC90F4;
    border-bottom:1px solid #CC90F4;
    margin-top:10px;
    margin-bottom:20px;
}
#payment #paypal-error, #payment #credit-card-error{
    display:none;
}
#payment form #working-icon{
    display:none;
}
#payment label:not(.radio){
    float:left;
    width:110px;
    font-size:16px;
    line-height:30px;
}
#payment label.radio{
    line-height:40px;
}
#payment .input-holder{
    margin-left:125px;   
    padding:0;
    margin-bottom:10px;
}
#payment input[type="text"], #payment .hosted-field{ 
    font-size:16px;
    line-height:30px;
    border:1px solid #333;
    height:30px;   
    width:100%;
    padding:0 5px;
}
#payment span.text{
    line-height:30px;
    font-weight:600;
    color:#888;
}
#payment #card-details{
    max-width:550px;
}

/* Order Success page */
#order-success{
    padding:2% 3%;
}
#order-success h2{
    color:#CC90F4;
    border-bottom:1px solid #CC90F4;
    margin-top:10px;
    margin-bottom:20px;
}
#order-success p{
    padding:6px 0;
}

/* Footer elements */
footer{
    padding:3% 3%;  
    border-top:1px solid #80808A;
    background-color:#000015;
    background-image:url('../images/footer-background.jpg');
    background-position:bottom left;
    background-repeat:no-repeat;
}
footer #newsletter, footer #facebook, footer #instagram{
    width:30%;
    margin-right:5%;
    float:left;
}
footer #instagram{
    margin-right:0;
}
footer h3{
    font-size:18px;
    line-height:20px;
    letter-spacing:1.5px;
    font-weight:600;
    text-transform:uppercase;
    margin:0;
    padding:5px 0 8px 0;    
    color:#FFF;
}
footer #newsletter form{
    background-color:#8050A0;
    color:#FFF;
    padding:15px;
    margin-bottom:20px;
}
footer #newsletter form p{
    font-size:14px;
    margin-bottom:10px;
}
footer #newsletter form label{
    float:left;
    width:65px;
    font-weight:600;
    text-transform:uppercase;
    font-size:16px;
    line-height:24px;
}
footer #newsletter form .input-holder{
    margin-left:80px;
    margin-bottom:5px;    
}
footer #newsletter form input{
    width:100%;
    font-size:16px;
    line-height:24px;
    height:24px;
    padding:0 4px;
}
footer #newsletter form button{
    border:1px solid rgba(255,255,255,0.6);;
    background-color:rgba(255,255,255,0.2);
    color:#FFF;
    font-size:16px;
    line-height:18px;
    padding:5px 8px;
    text-transform:uppercase;
    cursor:pointer;
}
footer .clear{
    clear:left;
}
@media all and (max-width: 800px){
    footer #newsletter, footer #facebook, footer #instagram{
        width:100%;
        margin-right:0;
        margin-bottom:20px;
        float:none;
    }
}

/* https://bxslider.com */
/** VARIABLES
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.bx-wrapper img {
  max-width: 100%;
  display: block;
}
.bxslider {
  margin: 0;
  padding: 0;
}
ul.bxslider {
  list-style: none;
}
.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}
/** THEME
===================================*/
.bx-wrapper {
  background: #fff;
}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%;
}
/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}