/* -----------------------------------------------------------------------------
 * WooCommerce
 * -------------------------------------------------------------------------- */

div#primary.woo-shop {
    padding-top: 0;
}

#buildr-featured-woocommerce {
    color: #fff;
    margin: 15px 0 30px;
    border-bottom: thin solid #eeeeee;
}

#buildr-featured-woocommerce .details-wrap {
    padding: 20px 0;
    border-top: 1px solid #ebebeb;
    color: #333333;
    text-align: center;
    overflow: hidden;
}


ul.product_list_widget {
    padding: 0 !important;
    list-style: none;
}

ul.product_list_widget .product-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    position: relative;
}

ul.product_list_widget .product-wrap > a img {
    max-width: 80px;
    height: auto;
}

ul.product_list_widget .product-wrap .product-title {
    padding: 15px;
    font-size: .75em;
    text-transform: uppercase;
    letter-spacing: .075em;
    font-weight: 600;
    line-height: normal;
    margin: 0;
    flex-grow: 1;
}

ul.product_list_widget .product-wrap .product-title a {
    color: #131313;
}

ul.product_list_widget .product-wrap a.remove {
    position: absolute;
    top: 0;
    left: 0;
    background: #1c1c1c;
    height: 20px;
    width: 20px;
    text-align: center;
    color: #fff;
}

ul.product_list_widget .product-wrap > .quantity {
    text-align: right;
}

div.widget_shopping_cart_content > .total {
    margin: 0px 0 20px;
}

div.widget_shopping_cart_content > .buttons > a.button {
    text-align: center;
    display: block;
}

div.widget_shopping_cart_content > .buttons > a.button:first-child {
    margin-bottom: 5px;
}

div#buildr-woocommerce-wrap {
    margin: 100px 0;
}

#buildr-featured-woocommerce h4.product_category_title {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .125em;
    color: #333333;
    /*color: #ffffff;*/
}

#buildr-featured-woocommerce h2.woocommerce-loop-product__title,
#buildr-featured-woocommerce h2.woocommerce-loop-category__title {
    font-size: 1.15em;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
    line-height: normal;
    margin: 0;
    color: #333333;
}

div#buildr-woocommerce-wrap.single {
    margin-top: 50px;
    margin-bottom: 0;
}

.price del {
    opacity: .5;
    font-size: smaller;
}

.price ins {
    text-decoration: none;
}

.featured-product-wrap {
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    -moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    transition: 0.3s all ease-out;
    -moz-transition: 0.3s all ease-out;
    -webkit-transition: 0.3s all ease-out;
}

div#buildr-featured-woocommerce ul.products {
    margin-top: 20px;
}

div#buildr-featured-woocommerce ul.products.columns-2 li.product:nth-child(odd) {
    margin-right: 4%;
}

div#buildr-featured-woocommerce ul.products.columns-2 li.product:nth-child(even) {
    margin-right: 0%;
}

h1.woocommerce-products-header__title.page-title {
    border-bottom: 1px solid #eeeeee;
    padding: 0 0 30px 0px;
    margin-top: 0;
}

.woocommerce-stats-header {
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: .250em;
    color: #373737;
    margin-bottom: 0;
    margin-top: 15px;
}

h3.shop-sub-heading {
    padding: 15px;
    font-size: .85em;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 30px;
    color: #fff;
    border-radius: 2px;
}

div#buildr-woocommerce-wrap .woocommerce-result-count {
    margin: 0;
    height: 40px;
    line-height: 40px;
}

div#buildr-featured-woocommerce ul.products.columns-2 li.first,
div#buildr-featured-woocommerce ul.products.columns-2 li.last {
    clear: none;
}

div#buildr-featured-woocommerce ul.products li.product span.price {
    text-align: center !important;
}

div#buildr-woocommerce-wrap div.results-bar-wrap {
    margin-top: 20px;
}

form.woocommerce-ordering > select,
.woocommerce select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0 50px 0 15px !important;
    cursor: pointer;
    height: 40px;
    color: #fff;
    line-height: 40px;
    margin: 0 0 30px 0;
    font-family: Montserrat;
    letter-spacing: .125em;
    font-size: 12px;
    border: none !important;
    border-radius: 2px;
    background-image: url(../images/caret-down.svg);
    background-repeat: no-repeat;
    background-position: calc(100% - 5px) 8px;
}

form.woocommerce-ordering > select::-ms-expand,
.woocommerce select::-ms-expand {
    display: none;
}

@media screen and (min-width:0\0) {
    form.woocommerce-ordering > select,
    .woocommerce select {
        background:none\9;
        padding: 5px\9;
    }
}

form.woocommerce-ordering > select > option:first-child,
.woocommerce select > option:first-child {
    text-transform: uppercase;
}

#buildr-woocommerce-wrap div.product h1.product_title.entry-title {
    font-size: 48px;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
    line-height: normal;
    margin-top: 0;
    margin-bottom: 5px;
}

#buildr-woocommerce-wrap div.product h2,
div#related-products-wrap h2 {
    margin: 0px 0 15px !important;
    font-size: 32px;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
    line-height: normal;
    margin-top: 0;
    margin-bottom: 5px;
}

div#related-products-wrap h2 {
    margin-bottom: 30px !important;
}

#buildr-woocommerce-wrap div.product .summary .price {
    font-size: 42px;
    display: block;
    margin-bottom: 30px;
}

#buildr-woocommerce-wrap div.product .summary form, 
#buildr-woocommerce-wrap div.product .summary form input.qty {
    text-align: center;
}

div#buildr-woocommerce-wrap div.product input.qty {
    margin-bottom: 10px;
    padding-right: 10px;
}

div#buildr-woocommerce-wrap div.product textarea, 
div#buildr-woocommerce-wrap div.product input[type="text"], 
div#buildr-woocommerce-wrap div.product input[type="number"], 
div#buildr-woocommerce-wrap div.product input[type="email"] {
    border: thin solid #cacaca !important;
    border-radius: 2px;
}

#buildr-woocommerce-wrap div.product .summary form button {
    width: 100%;
}

#buildr-woocommerce-wrap div.product .summary form {
    margin-top: 30px;
}

#buildr-woocommerce-wrap div.product .summary .product-cat {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: .125em;
    margin-bottom: 10px;
    margin-top: 0px;
    display: block;
}

#buildr-woocommerce-wrap div.product .summary .product-cat a {
    color: #333;
}

.woocommerce-tabs.wc-tabs-wrapper {
    padding-top: 50px;
    border-top: thin solid #eee;
    margin-top: 30px;
}

.woocommerce-tabs.wc-tabs-wrapper ul.tabs {
/*    border-bottom: 2px solid #333;*/
    margin-bottom: 30px;
}

.woocommerce-tabs.wc-tabs-wrapper ul.tabs li {
    border: thin solid #333;
    padding: 0 15px;
    border-radius: 2px;
    border-bottom: none;
    opacity: .5;
    background-color: #333;
    font-size: 14px;
    margin: 2px 0 !important;
}

.woocommerce-tabs.wc-tabs-wrapper ul.tabs li.active {
    opacity: 1;
}

.woocommerce-tabs.wc-tabs-wrapper ul.tabs li a {
    color: #fff;
}

.woocommerce-tabs.wc-tabs-wrapper > div.wc-tab {
    margin-bottom: 50px;
    border: none;
    box-shadow: none;
    padding-top: 30px;
}

div#related-products-wrap {
    background: #fafafa;
    padding: 100px 0 50px 0;
    border-top: thin solid #eee;
    margin-top: 50px;
}

div#reviews .woocommerce-noreviews {
    background: none !important;
}

div#related-products-wrap h2 {
    margin-bottom: 20px !important;
}

div#related-products-wrap span.small-divider {
    margin: 0px 0 20px;
}

.woocommerce-tabs.wc-tabs-wrapper span.small-divider {
    margin: 5px 0px 15px;
}

.single-product div.product .woocommerce-product-gallery {
    margin-bottom: 30px;
}

.summary .woocommerce-product-details__short-description {
    margin-bottom: 30px;
}

.single-product div#buildr-woocommerce-wrap .product span.onsale {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 999;
}

div#related-products-wrap li.product span.onsale {
    left: 10px !important;
    right: unset !important;
}

.woocommerce table.variations {
    margin-bottom: 30px;
}

.woocommerce table.variations .label,
.woocommerce table.shop_attributes .label {
    color: #333;
    line-height: 40px;
    text-align: left;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
}

.woocommerce table.variations select {
    margin-bottom: 0;
}

.woocommerce table.variations .value,
.woocommerce table.shop_attributes td {
    text-align: right;
    padding: 0px 0 0 15px;
}

.woocommerce table.variations a.reset_variations {
    display: block !important;
    margin-top: 15px;
    color: #333;
}

table.shop_attributes th, 
table.shop_attributes td p {
    line-height: 40px;
    padding: 0 !important;
    margin: 0 !important;
}

table.shop_attributes th {
    color: #333;
    line-height: 40px;
    text-align: left;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
} 

@media (max-width: 991px) {
    
    div#buildr-woocommerce-wrap.single {
/*        margin-top: 15px;*/
    }
    
    div#related-products-wrap {
        margin-top: 0;
        padding-top: 50px;
    }
    
    #buildr-woocommerce-wrap div.product h1.product_title.entry-title,
    #buildr-woocommerce-wrap div.product .summary .price {
        font-size: 32px;
    }
    
    #buildr-woocommerce-wrap div.product h2, 
    div#related-products-wrap h2 {
        font-size: 20px;
    }
    
    .woocommerce-tabs.wc-tabs-wrapper > div.wc-tab {
        padding-top: 15px;
    }
    
}

.woocommerce ul.products.columns-1 li.product, 
.woocommerce-page ul.products.columns-1 li.product {
    width: 100%;
}

div#buildr-woocommerce-wrap ul.products li.product {
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    -moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    transition: 0.3s all ease-out;
    -moz-transition: 0.3s all ease-out;
    -webkit-transition: 0.3s all ease-out;
}

div#buildr-woocommerce-wrap ul.products li.product {
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    -moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.075);
    transition: 0.3s all ease-out;
    -moz-transition: 0.3s all ease-out;
    -webkit-transition: 0.3s all ease-out;
}

div#buildr-woocommerce-wrap ul.products li.product img {
    width: 100%;
    margin: 0;
}

div#buildr-woocommerce-wrap ul.products li .details-wrap {
    padding: 20px;
    background-color: #ffffff;
    border-top: 1px solid #ebebeb;
    overflow: hidden;
}

div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-product__title, 
div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-category__title {
    font-size: 1.15em;
    text-transform: uppercase;
    letter-spacing: .15em;
    font-weight: 600;
    line-height: normal;
    margin: 0;
    color: #131313;
}

div#buildr-woocommerce-wrap ul.products li.product span.price {
    margin: 10px 0 20px 0;
    display: block;
    font-size: 20px;
    margin-top: 15px;
    text-align: right;
    margin-bottom: 0;
    color: #333;
    font-weight: 600;
}

@media (max-width: 991px) {
    div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-product__title, 
    div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-category__title {
        font-size: 1em;
    }
}

@media (max-width: 767px) {
    div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-product__title,
    div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-category__title {
        font-size: .85em;
    }
}

div#buildr-woocommerce-wrap ul.products li.product .product_category_title {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .125em;
    color: #333333;
}

div#buildr-woocommerce-wrap ul.products .product_category_excerpt {
    color: #777;
    margin: 15px 0;
}

div#buildr-woocommerce-wrap ul.products li.product .button {
    margin-top: 15px;
    text-align: center;
}

.woocommerce ul.products li.product, 
.woocommerce-page ul.products li.product {
    margin-bottom: 30px;
}

/* ----- WooCommerce Mid-Loop CTA----- */

div.woocommerce-cta {
    margin: 0;
    padding: 0;
    background: none;
    color: #ffffff;
    background-size: cover;
    background-position: 50%;
}

div.woocommerce-cta .woocommerce-cta-inner {
    padding: 150px 50px;
    margin-bottom: 30px;
}

@media (max-width:767px) {
    div.woocommerce-cta .woocommerce-cta-inner {
        padding: 100px 30px !important;
    }
}

span.pre-title {
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: .125em;
    color: #ffffff;
    margin-bottom: 15px;
    display: inline-block;
}

div.woocommerce-cta h2 {
/*    letter-spacing: -.05em;*/
    margin: 0;
    font-size: 48px;
}

div.woocommerce-cta p {
    font-size: 18px;
    margin: 15px 0 30px;
}

div#buildr-woocommerce-wrap span.onsale {
    padding: 5px 10px;
    color: #fff;
    border-radius: 2px;
}

div#buildr-woocommerce-wrap ul.products li.product span.onsale {
    position: absolute;
    top: 10px;
    left: 10px;
}

aside.widget_product_search button[type="submit"] {
    margin-top: 15px;
}

a.added_to_cart {
    padding: 15px 0 0;
    display: inline-block;
}

.woocommerce ul.products.columns-3 li.product, 
.woocommerce-page ul.products.columns-3 li.product {
    width: 30.75%;
    margin-right: 3.875%;
}

.woocommerce ul.products.columns-3 li.product:nth-of-type(3n+3), 
.woocommerce-page ul.products.columns-3 li.product:nth-of-type(3n+3) {
    margin-right: 0 !important;
}

div#buildr-featured-woocommerce ul.products.columns-3 li.product.last {
    margin-right: 3.875%;
}

div#buildr-featured-woocommerce ul.products.columns-3 li.product.first {
    clear: none;
}

div#buildr-featured-woocommerce .woocommerce ul.products.columns-3 li.product:nth-of-type(3n+3), 
div#buildr-featured-woocommerce .woocommerce-page ul.products.columns-3 li.product:nth-of-type(3n+3) {
    clear: both;
}

.woocommerce-message, 
.woocommerce-info, 
.woocommerce-error, 
.woocommerce-noreviews, 
p.no-comments {
    background: #fafafa !important;
    display: block !important;
    padding: 20px;
    vertical-align: middle;
    margin-bottom: 30px;
}

.woocommerce-message > a.button {
    float: none !important;
    margin-right: 20px;
}

div#buildr-woocommerce-wrap ul.products li.product .woocommerce-loop-category__title mark {
    background: none;
}

@media (max-width:599px) {
    div#buildr-woocommerce-wrap ul.products li.product {
        width: 100%;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

@media (max-width:1199px) and (min-width:768px) {
    #buildr-woocommerce-wrap .buildr-sidebar ul.product_list_widget .product-wrap {
        display: block;
    }
    #buildr-woocommerce-wrap .buildr-sidebar ul.product_list_widget .product-wrap > a img {
        max-width: 100%;
        float: none;
    }

    #buildr-woocommerce-wrap .buildr-sidebar ul.product_list_widget .product-wrap > .product-title,
    #buildr-woocommerce-wrap .buildr-sidebar ul.product_list_widget .product-wrap > .quantity {
        font-size: 14px;
        padding: 0;
        margin-top: 15px;
    }    
}

/* ----- WooCommerce Cart Page ----- */

.woocommerce-cart form.woocommerce-cart-form table.shop_table {
    width: 100%;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table .product-remove a {
    color: #141414;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table .product-thumbnail {
    padding-bottom: 15px;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table .product-thumbnail img {
    max-height: 120px;
    width: auto;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table .product-subtotal {
    text-align: right;
}

.woocommerce-cart .coupon input.button {
    width: 100%;
    margin-top: 5px;
}

.woocommerce-cart tr.cart-subtotal td, 
.woocommerce-cart tr.order-total td {
    width: 100%;
    text-align: right;
    padding: 5px 0;
}

.woocommerce-cart tr.order-total td {
    padding-bottom: 25px;
}

.woocommerce-cart form.woocommerce-cart-form table.shop_table tr.cart_item td {
    /*border: thin solid #eee;*/
    padding: 15px;
}
