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

.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title {
    margin-top: 2rem;
    margin-bottom: 2rem;
    text-align: center;
    font-weight: bold;
    letter-spacing: -1px;
}

.woocommerce-cart .product-name a {
    font-weight: bold !important;
    text-decoration: none !important;
    line-height: 1.2em !important;
    letter-spacing: -1px;
    color:#111;
}

.woocommerce-cart label, .woocommerce-checkout label {
    font-size: var(--text-m) !important;
    letter-spacing: -.5px !important;
	color: black;
}

.woocommerce div.product .stock.in-stock,.woocommerce-cart-form__cart-item .in-stock, .sunshower-mini-cart .in-stock, .woocommerce-checkout-review-order .in-stock{
    background: #4DA252;
    text-align: center;
    padding: 6px;
    width: 80px;
    border-radius: 5px;
    color: white!important;
    font-weight: bold;
    font-size:var(--text-s);
    margin-top: 5px;
    line-height:1;
    display: block!important;
    width:auto!important;
}


.woocommerce div.product .stock.available-on-backorder,.woocommerce-cart-form__cart-item .available-on-backorder, .sunshower-mini-cart .available-on-backorder, .woocommerce-checkout-review-order .available-on-backorder{
    background: #fff;
    border:1px solid #4DA252;
    text-align: center;
    padding: 6px;
    width: auto; 
    border-radius: 5px;
    color: #4DA252!important;
    font-weight: bold;
    font-size:var(--text-s);
    margin-top: 5px;
    line-height:1;
    display: block!important;
} 

.woocommerce div.product .stock.available-on-date,.woocommerce-cart-form__cart-item .available-on-date, .sunshower-mini-cart .available-on-date, .woocommerce-checkout .available-on-date {
    background: #fff;
    border:1px solid #EC4F4F;
    text-align: center;
    padding: 6px;
    width: auto;
    border-radius: 5px;
    color: #EC4F4F!important;
    font-weight: bold;
    font-size:var(--text-s);
    margin-top: 5px;
    line-height:1;
    display: block!important;
} 

.woocommerce ul#shipping_method li input {
    margin: 3px .4375em 0 0;
    vertical-align: middle;
}

.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
    width: auto;
}

.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
    background-color: #f0f0f0;
    opacity: 0.4;
}

.woocommerce .woocommerce-cart-form .quantity .qty {
    width: 30% !important;
    text-align: center;
    min-height: 36px;
    padding: 0 !important;
    background-color:#fff;
}

.woocommerce div.product .stock.in-stock,.woocommerce-cart .in-stock {
    background: #4DA252;
    text-align: center;
    padding: 6px;
    max-width: 150px!important;
    border-radius: 5px;
    color: white!important;
    font-weight: bold;
    font-size:var(--text-s);
    margin-top: 5px;
    margin-bottom: 5px;
    line-height: 1;
    display: block!important;
}
.woocommerce div.product .stock.available-on-backorder,.woocommerce-cart .available-on-backorder {
    background: #fff;
    border: 1px solid #4DA252;
    text-align: center;
    padding: 6px;
    width: auto;
    border-radius: 5px;
    color: #4DA252!important;
    font-weight: bold;
    margin-top: 5px;
    line-height: 1;
    display: block!important;
} 

.woocommerce div.product .stock.available-on-date,.woocommerce-cart .stock.available-on-date {
    background: #fff;
    border:1px solid #EC4F4F;
    text-align: center;
    padding: 6px;
    width: auto;
    border-radius: 5px;
    color: #EC4F4F!important;
    font-weight: bold;
    margin-top: 5px;
    line-height:1;
    display: block!important;
} 

.woocommerce-cart .woocommerce-Price-amount {
}

@media (min-width: 1100px) {
    .woocommerce-cart .woocommerce {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    /* The table containing the list of products and our custom elements */

    .woocommerce-cart .woocommerce-cart-form {
        flex: 1 0 60%;
        margin-right: 30px;
        margin-top: 0 !important;
        font-size: 110%;
    }

    /* The element that contains the cart totals */
    .woocommerce-cart .cart-collaterals {
        flex: 1 0 35%;
        padding-top: 0 !important;
        font-size: 110%;
        /*position: -webkit-sticky;
        position: sticky;*/
        align-self: flex-start;
        /*top: 40px;*/
    }

    /* Some minor tweak to make sure the cart totals fill the space */
    .woocommerce-cart .cart-collaterals .cart_totals {
        width: 100%;
        padding: 0 20px 70px;
    }

    .woocommerce-cart .woocommerce-notices-wrapper {
        flex: 0 0 100%;
    }
}

/* shipping customisation */
.woocommerce-cart form.woocommerce-shipping-calculator {
    border: 2px solid #15A1D2;
    padding: 7px;
    border-radius: 5px;
    background: white;
}
.woocommerce-cart a.shipping-calculator-button {
    margin-top: 0px!important;
    font-weight: bold;
}
.woocommerce-cart small.tax_label, .woocommerce-checkout .shipping small.tax_label {
    display: none;
}
.woocommerce-cart p.woocommerce-shipping-contents, .woocommerce-checkout p.woocommerce-shipping-contents {
    display: none;
}

/* cart customisation */
.woocommerce-cart-form .shop_table tr:first-child td,
.woocommerce-cart-form .shop_table tr:first-child th {
    padding-top: 50px;
}

.shop_table tr:first-child td,
.shop_table tr:first-child th {
    border-top: 0;
}

.shop_table .product-remove {
    text-align: center;
}

.shop_table tr td,
.shop_table tr th {
    border-right: 0;
    border-left: 0;
    border-bottom: 0;
}

.shop_table td,
.shop_table th {
    border-color: #cfcfcf;
    padding: 18px !important;
}

.woocommerce-cart-form .shop_table thead {
    display: none !important;
}

.woocommerce-cart-form .shop_table [type=button].qty_button,
.woocommerce-cart-form .shop_table [type=submit].qty_button {
    display: inline-block;
    font-weight: 400;
    color: #999;
    text-align: center;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid #999;
    padding: .5rem 1rem;
    font-size: 1rem;
    border-radius: 3px;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.woocommerce-cart-form .shop_table [type=button].qty_button:hover,
.woocommerce-cart-form .shop_table [type=submit].qty_button:hover {
    background-color: #999;
    border: 1px solid #999;
    color: #fff;
}

@media screen and (max-width: 768px) {
	.woocommerce-cart table.shop_table_responsive tr:nth-child(2n) td {
		background-color: white!important;
	}
	.woocommerce-cart table.shop_table_responsive tr:nth-child(odd) td {
		background-color: #efefef!important;
	}
	.woocommerce-cart-form table.shop_table tr td {
		border: none!important;
		padding: 0px 18px 10px 18px!important;
	}
	.woocommerce-cart .woocommerce-cart-form td.product-remove {
		position: absolute;
		right: 12px;
		padding: 10px!important;
	}
	.woocommerce-cart .woocommerce-cart-form td.product-thumbnail {
		text-align: left!important;
		padding-top: 10px!important;
	}
	.woocommerce-cart .woocommerce-cart-form .product-thumbnail img {
		background: white;
		padding: 5px;
		border-radius: 5px;
	}
	.woocommerce-cart .woocommerce-cart-form tr td.product-name {
		text-align: left!important;
	}
	.woocommerce-cart .woocommerce-cart-form tr td.product-name::before {
		display: none;
	}
	.woocommerce-cart p.stock {
		margin-bottom: 0px;
	}
	.woocommerce-cart dl.variation {
		padding-top: 5px;
	}
	.woocommerce-cart .woocommerce-cart-form td.actions {
		padding-top: 10px!important;
	}
	
}

table tbody tr:hover>td,
table tbody tr:hover>th {
    background-color: #fcfcfc;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    background-color: #000;
    color: #fff;
    -webkit-font-smoothing: antialiased;
}

.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
    background-color: #222;
    color: #fff;
}

.woocommerce-cart-form .shop_table thead {
    background-color: #f8f8f8;
}

.shop_table .product-thumbnail img {
    max-width: 80px;
}

.woocommerce-cart-form .shop_table ins {
    text-decoration: none !important;
    font-weight: 800;
    color: #333;
}

.woocommerce-cart-form .shop_table .product-subtotal {
    display: none;
}

.woocommerce-cart-form .shop_table .actions #coupon_code {
    width: 60%;
    border: 1px solid #e1e1e1;
    padding: 0 30px 0 20px;
}

.woocommerce td.product-quantity {
    min-width: 200px;
}

#add_payment_method table.cart .product-thumbnail,
.woocommerce-cart table.cart .product-thumbnail,
.woocommerce-checkout table.cart .product-thumbnail {
    min-width: 120px!important;
}

#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
    width: 100%;
}

.woocommerce a.remove {
    color: #ccc !important;
}

.woocommerce a.remove:hover {
    color: #fff !important;
    background: transparent !important;
}

.cart_totals {
    width: 100%!important;
}

.cart_totals>h2 {
    display: none;
}

.woocommerce-cart-form .shop_table .actions #coupon_code {
    width: 60%;
    border: 1px solid #e1e1e1;
    padding: 0 30px 0 20px;
    height: 33px;
}

/* .woocommerce-shipping-calculator #calc_shipping_city_field {
    display: none !important;
} */

/*checkout customisation*/
form.checkout {
    margin-top: 50px;
}

/* .woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    padding: 1em 2em em 3.5em;
    margin: 0 0 1em;
    position: relative;
    background-color: #f7f6f7;
    color: #515151;
    border-top: 3px solid #a8854a;
    list-style: none outside;
    width: auto;
    word-wrap: break-word;
} */

.woocommerce-info, .woocommerce-message {
    border: 2px solid #15a1d2!important;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    border: 1px solid #d3ced2;
    padding: 20px;
    margin: 0em 0 4em;
    text-align: left;
    border-radius: 5px;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    float: left;
    width: 100%;
}

.woocommerce-billing-fields,
.woocommerce-checkout {
    position: relative;
}

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
    border: 1px solid #cfcfcf;
    padding: 50px 40px 50px;
    border-radius: 5px;
    margin-bottom: 30px;
}

.woocommerce-billing-fields>h3 {
    font-size: 18px;
    border: 1px solid #cfcfcf;
    display: table;
    min-width: 183px;
    height: 54px;
    border-radius: 5px;
    line-height: 50px;
    text-align: center;
    padding: 0 15px;
    margin: 0 auto;
    background-color: #fff;
    position: absolute;
    top: -28px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

#order_review_heading {
    font-size: 18px;
    border: 1px solid #cfcfcf;
    display: table;
    min-width: 155px;
    height: 54px;
    border-radius: 5px;
    line-height: 50px;
    text-align: center;
    padding: 0 15px;
    position: absolute;
    margin: 0;
    z-index: 3;
    right: 140px;
    top: -28px;
    background-color: #fff;
}

#order_review .shop_table thead tr th {
    width: 50% !important;
}

#order_review .shop_table thead tr th {
    padding-top: 50px !important;
    font-size: 16px;
    color: #333;
}

table caption+thead tr:first-child td,
table caption+thead tr:first-child th,
table colgroup+thead tr:first-child td,
table colgroup+thead tr:first-child th,
table thead:first-child tr:first-child td,
table thead:first-child tr:first-child th {
    border-top: 0px solid #ccc;
}

#order_review_heading {
    font-size: 18px;
    border: 1px solid #cfcfcf;
    display: table;
    min-width: 155px;
    height: 54px;
    border-radius: 5px;
    line-height: 50px;
    text-align: center;
    padding: 0 15px;
    position: absolute;
    margin: 0;
    z-index: 3;
    right: 190px;
    top: -28px;
    background-color: #fff;
}

#ship-to-different-address {
    font-size: 18px;
    margin-bottom: 20px;
    color: #111;
    font-weight: 800;
}

#ship-to-different-address span {
    padding-left: 10px;
}

#order_review .shop_table tr th,
#order_review .shop_table tr td {
    padding: 30px 20px !important;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    font-size: 100%;
    margin: 0;
    line-height: 1;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    overflow: visible;
    padding: .618em 1em;
    font-weight: 700;
    border-radius: 3px;
    left: auto;
    color: #fff;
    background-color: #111;
    border: 0;
    display: inline-block;
    background-image: none;
    box-shadow: none;
    text-shadow: none;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    background-color: #111;
    text-decoration: none;
    background-image: none;
    color: #fff;
}

/*Checkout customisation*/
@media (min-width: 1199px) {
    #customer_details {
        float: left;
        width: calc(100% - 540px);
        padding-right: 40px;
    }

    #order_review {
        float: left;
        width: 540px;
    }
}

@media (min-width: 1199px) {
    .woocommerce-cart .cart-collaterals .cart_totals {
        width: 100%;
        padding: 0 0px 70px;
    }
}

/*Checkout customisation*/
@media (max-width: 1198px) {

    input[type="text"],
    input[type="number"],
    textarea,
    input,
    select,
    textarea {
        font-size: 16px !important;
    }

    #order_review_heading {
        position: relative;
        z-index: 1;
        right: auto;
        top: auto;
        margin: 0 auto -27px;
    }
}

.wc-stripe-banner-checkout span.banner-divider {
    padding-bottom: 30px;
}

/*Account page*/
.woocommerce-MyAccount-navigation>ul li {
    line-height: 50px;
    list-style: none;
    padding: 0 !important;
    width: 100%;
}

.woocommerce-MyAccount-navigation {
    float: left;
    width: 30%;
    border: 1px solid #ededed;
}

.woocommerce-MyAccount-navigation>ul {
    padding: 0;
}

.woocommerce-MyAccount-navigation>ul li:not(:first-child) {
    border-top: 1px solid #ededed;
}

.woocommerce-MyAccount-navigation li a {
    line-height: 30px;
    list-style: none;
    padding: 10px 20px !important;
    width: 100%;
}


.woocommerce-account .addresses .title h3 {
    float: left;
    font-size: 20px;
    font-weight: 700;
}

.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2,
.woocommerce-account .col2-set .col-2 {
    float: left;
    width: 100%;
    margin-bottom: 30px;
}

.woocommerce #content table.cart img,
.woocommerce table.cart img,
.woocommerce-page #content table.cart img,
.woocommerce-page table.cart img {
    height: 80px;
    width: 80px;
    object-fit: contain;
}



/* PLACE ORDER BUTTON */
#place_order {
    width: 100%;
    display: block;
    text-align: center;
    margin-bottom: 1em;
    font-size: 1.25em;
    padding: 1em;
    background-color: #15A1D2 !important;
}

#place_order.loading {
    opacity: .45 !important;
    padding-right: 2.618em;
    pointer-events: none !important;
}

#place_order.loading::after {
    font-family: WooCommerce;
    content: none !important;
    left: 80%;
    vertical-align: bottom;
    -webkit-animation: spin 0.7s ease infinite !important;
    animation: spin 0.7s ease infinite !important;
    margin-left: 0.23em;
    position: absolute !important;
    top: auto;
    animation: spin 0.7s ease infinite;
    backface-visibility: visible;
    border-left-color: transparent !important;
    border-radius: 50%;
    border: 0.2em solid white;
    border-left-color: white;
    border-left-color: white;
    box-sizing: border-box;
    content: " " !important;
    display: block;
    height: 1.1em;
    left: auto !important;
    opacity: 1 !important;
    position: absolute;
    right: 25px !important;
    top: 18px !important;
    visibility: visible !important;
    width: 1.1em;
}

.checkout-button {
    background-color: #15A1D2 !important;
}

.checkout-product-image {
    width: 75px;
    height: 75px;
    padding: 0;
    vertical-align: middle;
    background-color: #fff;
    margin-bottom: 10px;
}

.checkout-product-image img {
    object-fit: contain !important;
    object-position: center !important;
    width: 70px !important;
    height: 70px !important;
    background-color: #fff;
}

.woocommerce table.shop_table {
    border: 1px solid rgba(0, 0, 0, .1);
    margin: 0 -1px 24px 0;
    text-align: left;
    width: 100%;
    border-collapse: separate;
    border-radius: 5px;
}

.wc-proceed-to-checkout > *{
    width:100%;
}


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

    .woocommerce #content table.cart .product-thumbnail,
    .woocommerce table.cart .product-thumbnail,
    .woocommerce-page #content table.cart .product-thumbnail,
    .woocommerce-page table.cart .product-thumbnail {
        display: block;
    }
    
    

    .woocommerce table.shop_table_responsive tr td::before,
    .woocommerce-page table.shop_table_responsive tr td::before {
        content: attr(data-title) "";
        font-weight: 700;
        float: left;
    }
}

/* extra styles */
table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
    background-color: hsla(0, 0%, 50.2%, .0705882353);
}

#add_payment_method .cart-collaterals .shipping-calculator-button::after, .woocommerce-cart .cart-collaterals .shipping-calculator-button::after, .woocommerce-checkout .cart-collaterals .shipping-calculator-button::after {
    font-family: WooCommerce;
    speak: never;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    margin-left: .618em;
    content: "\e019";
    text-decoration: none;
}

/* ul.woocommerce-shipping-methods {
    font-size: var(--text-s) !important;
}

ul.woocommerce-shipping-methods input[type=radio]+label {
    font-size: var(--text-s)!important;
    color: #111;
} */

ul.woocommerce-shipping-methods label {
    line-height: 1.4;
    text-transform: none;
}

ul.woocommerce-shipping-methods li > * {
    display: table-row;
}

/* .woocommerce-shipping-destination{
    line-height: 1;
    margin-bottom: 10px;
} */

.woocommerce-shipping-destination {
    line-height: 1.2em;
    margin-bottom: 10px;
    letter-spacing: -.5px;
    font-size: .9em;
    background-color: #efefef;
    padding: 10px;
    border: 2px solid darkgrey;
    border-radius: 5px;
}

.woocommerce-checkout .shop_table tbody td {
    border-bottom-style: solid;
    border-bottom-width: 0px!important;
}

.woocommerce-checkout .shop_table tfoot tr th, .shop_table tfoot tr td {
    border-top: 1px solid #ddd !important;
}

.woocommerce-checkout #order_review {
    border: 0px!important;
}

    .woocommerce-cart table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
        content: none!important;
    }


.woocommerce-checkout #payment {
    border: 1px solid #ddd;
    border-radius: 5px;
}

/* .woocommerce-checkout #payment .payment_methods input[type=radio]+label {
    font-size: var(--text-s)!important;
} */


.woocommerce-checkout .checkbox {
    appearance: none;
    display: flex;
    place-content: center;
    border: 2px solid var(--dark-40);
    border-radius: var(--radius-xs);
    padding: 30px;
    gap: 20px;
}

.woocommerce-checkout .woocommerce-shipping-fields #ship-to-different-address input {
    position:relative!important;
    right: 0; 
    top: 0;
    transform: none!important;
}

.woocommerce-checkout #order_review_heading{
    display:none;
}

.woocommerce-checkout .shop_table dl.variation, .woocommerce-cart-form .shop_table dl.variation  {
    display: none !important;
}

.woocommerce-mini-cart, .woocommerce-mini-cart__total, .woocommerce-mini-cart__buttons{padding-right:20px!important;}
.widget_shopping_cart_content{padding-right:10px!important;}

.sunshower-mini-cart .in-stock,.sunshower-mini-cart .available-on-backorder,.sunshower-mini-cart .available-on-date{
    margin-left:65px;
    letter-spacing: -0.5px;
    font-size:var(--text-xs);
}  

.woocommerce-checkout-review-order .in-stock, .woocommerce-checkout-review-order .available-on-backorder,.woocommerce-checkout-review-order .available-on-date{
    margin-left:0;
    letter-spacing: -0.5px;
    font-size:var(--text-s);
}  

.sunshower-mini-cart .mini_cart_item img {
width: 50px;
height: 70px!important;
}

/* PRELOAD CHECKOUT */
/* Checkout page processing spinner */
.woocommerce-checkout.processing .blockUI.blockOverlay {
    background-image: url('https://sunshoweronline.com.au/wp-content/uploads/__Iphone-spinner-1.gif') !important;
    background-position: center 50% !important;
    background-repeat: no-repeat !important;
    background-color: rgba(255, 255, 255, 0.7);
    position: fixed !important;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    text-align: center; 
    color: #fff; 
    font-size: 18px; 
    line-height: 1.5; 
    z-index: 1001; 
}
.woocommerce-order H2 {
    font-size: var(--text-2xl);
    line-height: 1.2;
    margin-bottom: 20px;
    margin-top: 20px;
}
.woocommerce-checkout.processing .blockUI.blockOverlay::after {
    content: "Processing your payment... Please wait."; 
    display: block;
    margin-top: 150px; 
    color:var(--dark);
    font-size:var(--text-2xl);
    font-weight:700;
    letter-spacing:-0.5px;
}