/*
Description: Custom Base Styles for Woocommerce Pages
Author: Clever Starfish
*/

.nobr {
    white-space: nowrap;
}  
dl {
    overflow: hidden; 
}
dl dt, dl dd {
    float: left;
}
dl dt {
    clear: left;
    font-weight: bold;
    margin-right: 5px;
}
dl dd { 
    margin-left: 0;
}

.woocommerce-product-gallery {
  position: relative;
}

.woocommerce-product-gallery figure {
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.woocommerce-product-gallery .woocommerce-product-gallery__trigger {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  height: 30px;
  width: 30px;
  z-index: 99;
  text-align: center;
}

.woocommerce-product-gallery img {
  width: 100%;
  vertical-align: top;
}

.woocommerce-product-gallery .woocommerce-product-gallery__image {
  min-height: 0 !important;
}

.woocommerce-product-gallery .flex-control-thumbs {
  overflow: hidden;
  padding: 0 !important;
  margin: 3px -5px 0 !important;
  width: auto !important;
}

.woocommerce-product-gallery .flex-control-thumbs li {
  list-style: none;
  display: inline-block;
  width: calc(100% / 3);
  padding: 5px !important;
  vertical-align: top;
  cursor: pointer;
  box-sizing: border-box;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
  opacity: 0.6;
  transition: 0.2s;
  border: 1px solid transparent;
}

.woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
  opacity: 1;
}

.woocommerce-product-gallery .flex-control-thumbs li:hover img {
  opacity: 1;
} 

/* ------------------------------------
MY ACCOUNT
------------------------------------ */

.woocommerce .col2-set {
    width: 100%;
}
.woocommerce .col2-set:after, .woocommerce .col2-set:before {
    content: " ";
    display: table;
}
.woocommerce .col2-set:after {
    clear: both;
}
.woocommerce .col2-set .col-1 {
    float: left;
    width: 48%;
}
.woocommerce .col2-set .col-2 {
    float: right;
    width: 48%;
}

p.lost_password {
    margin: 5px 0 30px;
    font-size: 0.9em;
}

.woocommerce .addresses .title h3 {
    display: inline-block;
    margin-right: 10px;
    float: none;
}
.woocommerce .addresses .title .edit {
    float: none;
}

.woocommerce-account form {
    max-width: 460px;
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
    padding: 10px 10px;
    vertical-align: middle;
}
.woocommerce table.my_account_orders {
    margin-top: 0;
}
.woocommerce table.my_account_orders td, .woocommerce table.my_account_orders th {
    border-right: none;
}
.woocommerce table.my_account_orders td:last-child, .woocommerce table.my_account_orders th:last-child {
    border-right: 1px solid #ccc;
    text-align: right;
}
.woocommerce table.my_account_orders .order-actions .button {
    margin: 3px;
    padding: 3px 13px;
}

.woocommerce table .amount {
    font-weight: bold;
}

/* ------------------------------------
CART
------------------------------------ */

.woocommerce table.cart, .woocommerce table.cart td, .woocommerce table.cart th {
    background: transparent;
    border: none;
}
.woocommerce table.cart td {
    border-top: 1px solid #ccc;
}
.woocommerce table.cart td.actions {
    text-align: right;
    padding: 15px 0 0;
}
.woocommerce table.cart td.actions .input-text {
    width: 180px;
    vertical-align: top;
    margin-right: 5px; 
    margin-bottom: 10px; 
}
.woocommerce table.cart td.actions .coupon {
    float: left;
}
.woocommerce table.cart td.actions .coupon label {
    display: none;
}
.woocommerce table.cart td.actions .button {    
    padding: 6px 20px;
    margin-left: 5px;
    margin-bottom: 10px; 
}
.woocommerce table.cart td.actions .coupon .button {
    margin-left: 0;
}
.woocommerce table.cart td.actions .coupon, .woocommerce table.cart td.actions .cart-buttons {
    float: left;
    text-align: left;
    width: 60%;
}
.woocommerce table.cart td.actions .cart-buttons {
    margin-left: 4%;
    text-align: right;
}

.woocommerce table.cart .product-thumbnail img {
    width: 30px;
    height: auto;   
}
.woocommerce table.cart .product-remove {
    border-right: 0;
    width: 20px;
}
.woocommerce table.cart a.remove {
    background: transparent;
    border-radius: 5px;
    color: #727272;
    display: block;
    float: right;
    font-size: 36px;
    font-weight: normal;
    height: 17px;
    line-height: 14px;
    text-align: center;
    width: 18px;
}
.woocommerce table.cart .product-name {
    width: 43%;
}
.woocommerce table.cart .product-subtotal {
    text-align: right;
}
.woocommerce .wc-proceed-to-checkout {
    margin-top: 15px;
}
.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals {
    width: 100%;
}
.woocommerce .cart-collaterals:after, .woocommerce .cart-collaterals:before {
    content: " ";
    display: table;
}
.woocommerce .cart-collaterals:after {
    clear: both;
}
.woocommerce .cart-collaterals .cross-sells {
    float: left;
    width: 48%;
    max-width: 380px;
}
.woocommerce .cart-collaterals .cross-sells h2 {
    font-size: 26px;
}
.woocommerce .cart-collaterals .cross-sells ul.products li {
    width: 48%;
}
.woocommerce .cart-collaterals .shipping_calculator {
    clear: right;
    float: right;
    width: 48%;
    max-width: 300px;
}
.woocommerce .cart-collaterals .shipping_calculator h2 {
    font-size: 20px;
    margin-top: 30px;
    text-align: right;
}
.woocommerce .cart-collaterals .shipping_calculator a {
    color: #403c3c; 
}
.woocommerce .cart-collaterals .shipping_calculator .shipping-calculator-form,
.woocommerce-checkout form.login,
.woocommerce .create-account,
.woocommerce .shipping_address,
.woocommerce form.checkout_coupon {
    display: inline-block;
    width: 100%;
}

.woocommerce .cart-collaterals .shipping_calculator:after, .woocommerce .cart-collaterals .shipping_calculator:before {
    content: " ";
    display: table;
}
.woocommerce .cart-collaterals .shipping_calculator:after {
    clear: both;
}
.woocommerce .cart-collaterals .shipping_calculator .col2-set .col-1, .woocommerce .cart-collaterals .shipping_calculator .col2-set .col-2 {
    width: 48%;
}
form.woocommerce-shipping-calculator {
    margin: 5px 0; 
}
form.woocommerce-shipping-calculator .form-row:first-child {
    margin-top: 0;
}
.woocommerce-remove-coupon {
    font-size: 0.8em;
    text-transform: uppercase;
}
.woocommerce .cart-collaterals .cart_totals {
    float: right;
    text-align: right;
    width: 48%;
    max-width: 300px;
}
.woocommerce .cart-collaterals .cart_totals h2 {
    font-size: 26px;
}
.woocommerce .cart-collaterals .cart_totals table {
    margin: 0;
}

/* ------------------------------------
CHECKOUT/FORMS
------------------------------------ */

abbr {
    border: medium none;
    text-decoration: none;
    color: red;
}
.woocommerce form .form-row{
    margin: 6px 0;    
}
.woocommerce form .form-row:after, .woocommerce form .form-row:before {
    content: " ";
    display: table;
}
.woocommerce form .form-row:after {
    clear: both;
}
.woocommerce form .form-row label {
    display: block;
    padding: 4px 0;
}
.woocommerce form .form-row label.inline {
    display: inline-block;
}
.woocommerce form .form-row label.checkbox {
    display: inline;
}
.woocommerce form .form-row .selector,
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
    width: 100% !important;
} 
.woocommerce form .form-row .button {
    margin: 10px 15px 10px 0;
}
.woocommerce form .form-row-first, .woocommerce form .form-row-last {
    float: left;
    overflow: visible;
    width: 48%;
}
.woocommerce form .form-row-last {
    float: right;
}
.woocommerce form .form-row-wide {
    clear: both;
}

.woocommerce-checkout .shipping_address *:first-child {
    margin-top: 0;
}

.woocommerce #payment .form-row select,
.woocommerce #payment .form-row .selector {
    width: auto !important;
}
.woocommerce #payment .terms {
    padding: 0 1em;
    text-align: right;
}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float: right;
}

.woocommerce-message, .woocommerce-error, .woocommerce-info {
    padding: 12px 15px !important;
    margin: 15px 0 !important;
    background: #efefef;
    overflow:hidden; 
    position: relative;
    line-height: normal;
}
.woocommerce-message .button, .woocommerce-error .button, .woocommerce-info .button {
    float:right;
    margin-left: 15px;
}
.woocommerce-error {
    color: #da3003;
    list-style: none;    
}
.woocommerce-error li {
    list-style: none;
    padding: 0 !important;
} 

fieldset {
    border: none;
    margin: 20px 0 0;
    padding: 0;
}
legend {
    border: 0 none;
    padding: 0;
    margin: 0;
    white-space: normal;
    font-weight: bold;
}
#customer_details {
    margin-bottom: 20px;
}
#calc_shipping_state {
    display: none;
}

.woocommerce td.product-name dl.variation {
    margin: 2px 0 0;
    font-size: 13px;
}
.woocommerce dl dd p, .woocommerce-page dl dd p {
    margin: 0;
    line-height: normal;
}
.woocommerce td.product-name dl.variation dd, .woocommerce td.product-name dl.variation dt {
    margin-bottom: 0;
    margin-left: 0;
    padding-bottom: 0;    
}

.woocommerce-checkout #payment {
    background: #efefef;
    border: 1px solid #ccc;
}
.woocommerce-checkout #payment ul.payment_methods {
    text-align: left;
    padding: 1em;
    border-bottom: 1px solid #ccc;
    margin: 0;
    list-style: none;
}
.woocommerce-checkout #payment ul.payment_methods:after, .woocommerce-checkout #payment ul.payment_methods:before {
    content: " ";
    display: table;
}
.woocommerce-checkout #payment ul.payment_methods:after {
    clear: both;
}
.woocommerce-checkout #payment div.payment_box {
    position: relative;
    width: 100%;
    padding: 15px;
    margin: 1em 0 10px;
    font-size: .92em;
    border-radius: 2px;
    line-height: 1.5;
    background-color: #fff;
    box-sizing: border-box; 
    -moz-box-sizing: border-box; 
    -ms-box-sizing: border-box; 
    -webkit-box-sizing: border-box;
}
.woocommerce-checkout #order_review {
    margin-bottom: 25px;
}
.woocommerce-checkout #payment div.payment_box p {
    margin: 0;
}
.woocommerce-checkout #payment h3 {
    margin: 10px 15px 0;
}
.woocommerce-checkout #payment div.payment_box:after {
    content: "";
    display: block;
    border: 8px solid #fff;
    border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
    position: absolute;
    top: -3px;
    left: 0;
    margin: -1em 0 0 2em;
}
form.checkout #order_review .shop_table {
    margin-top: 0;
}
.woocommerce-checkout #payment .place-order .terms {
    float:left;
}
.woocommerce-checkout #payment .place-order .terms .checker {
    margin-left: 8px;
}
.woocommerce form.checkout_coupon .form-row input.button {
    margin-top: 0;
}
.woocommerce form.checkout_coupon #coupon_code {
    margin-bottom: 10px;
}
.woocommerce ul.order_details, .woocommerce ul#shipping_method {
    list-style: none;
    padding: 0 !important;
}
.woocommerce ul#shipping_method {
    margin: 0 !important; 
    font-size: 13px; 
}
.woocommerce ul#shipping_method div.radio {
    margin-right: 4px;
}

/* ------------------------------------
MEDIA QUERIES
------------------------------------ */

@media screen and (max-width:760px) {
    
    .woocommerce .cart-collaterals .cross-sells {
        display: none;
    }
    .woocommerce .cart-collaterals {
        padding-bottom: 30px;
    }
    
}

@media screen and (max-width:640px) {
    
    .woocommerce .col2-set .col-1, .woocommerce .col2-set .col-2,
    .woocommerce form .form-row-first, .woocommerce form .form-row-last {
        float: none;
        width: 100%;
    }
    .woocommerce table.my_account_orders td:nth-child(4), .woocommerce table.my_account_orders th:nth-child(4) {
        display: none;
    }
    
    .woocommerce .cart-collaterals .cart_totals, .woocommerce .cart-collaterals .shipping_calculator {
        width: 100%;
        float: none;
        text-align: left;
        max-width: none; 
    }
    .woocommerce table.cart .product-thumbnail {
        display: none;
    }
    .woocommerce table.cart .product-name {
        font-size: 13px;
    } 
    
}

@media screen and (max-width:480px) {
    
    .woocommerce table.my_account_orders td:nth-child(2), .woocommerce table.my_account_orders th:nth-child(2) {
        display: none;
    } 
    .woocommerce table.cart td.actions .coupon {
        width: 100%;
    }  
    .woocommerce table.cart .product-price {
        display: none;
    }    
    
} 

@media screen and (max-width:380px) {

    .woocommerce table.cart td.actions .button, .woocommerce table.cart td.actions .input-text, .woocommerce .wc-proceed-to-checkout a.button {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    } 
    .woocommerce table.cart td.actions .coupon {
        margin-bottom: 15px;
    }
    
} 

.woocommerce-password-strength {
  text-align: center;
  font-weight: 600;
  padding: 8px .5em;
  font-size: 1em;
  line-height: normal;
  margin-top: 10px;
}

.woocommerce-password-strength.strong {
  background-color: #c1e1b9;
  border-color: #83c373;
}

.woocommerce-password-strength.short {
  background-color: #f1adad;
  border-color: #e35b5b;
}

.woocommerce-password-strength.bad {
  background-color: #fbc5a9;
  border-color: #f78b53;
}

.woocommerce-password-strength.good {
  background-color: #ffe399;
  border-color: #ffc733;
}

.woocommerce-password-hint {
  margin: 8px 0 0 0;
  display: block;
  line-height: normal;
}

.woocommerce-MyAccount-navigation {
  margin: 30px 0 0;
}

@media screen and (min-width: 720px) {
  .woocommerce-MyAccount-navigation {
    width: 240px;
    float: left;
  }
}

#content .woocommerce-MyAccount-navigation ul, #content .woocommerce-MyAccount-navigation li {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
}

#content .woocommerce-MyAccount-navigation li {
  margin-bottom: 2px;
}

#content .woocommerce-MyAccount-navigation a {
  padding: 10px 15px 8px;
  background: #efefef;
  color: #403c3c;
  border: 1px solid #e9e9e9;
  display: block;
  transition: 0.2s;
}

#content .woocommerce-MyAccount-navigation a:hover {
  background-color: #efefef;
}

#content .woocommerce-MyAccount-navigation .is-active a {
  background: transparent;
}

.woocommerce-MyAccount-content {
    margin-top: 30px;   
}

@media screen and (min-width: 720px) {
  .woocommerce-MyAccount-content {
    float: right;
    width: calc(100% - 300px);
  }
}

