/* A lotta Woocommerce stuff */
#coupon_code {
  min-width: 200px;
}

.product .wc-tab .pdf-link {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.product .wc-tab .pdf-link img {
    margin-right:1em;
}

.woocommerce-shipping-totals.shipping td::before {
    display: none !important;
}


.billing-payment-notice {
		
	margin: 34px 0 37px 0;
	padding: 22px;
	background: white;
	border: 2px solid orange;
	border-radius: 5px;
	
}

.billing-payment-notice p {
	font-size:17px;
	line-height: normal;
	margin: 0;
}

.billing-payment-notice p::before {
	font-family: "WooCommerce";
	content: "\e016";
	display: inline-block;
	position: relative;
	top: 1px;
	left: 1px;
	color: orange;
	margin-right: 9px;
}

.billing-payment-notice i {
	color:orange;
}


#shipping_method_0_ps_dayross_freight + label:after {
    display: block;
    margin-top:0.25em;
    font-size:15px;
    line-height: normal;
    content: "Cost includes Curbside delivery, unless dock is available.";
    padding-left: 21px;
}

input[id^="shipping_method_0_ps_dayross_depot_pickup"] + label:after {
    display: block;
    margin-top:0.25em;
    font-size:15px;
    line-height: normal;
    content: "Product will be available for pick-up at a depot near you. You will receive a confirmation email with the depot address when your product is shipped.";
    padding-left: 21px;
}

.shop_table .product-name {
    width: 60%;
}
.woocommerce-checkout #primary {
    margin-bottom: 3em;
}
.woocommerce-shipping-fields {
    margin-top: 1em;
}

#address_type_field { margin-bottom: 1em; }

#ship-to-different-address { margin-left: 2px; }
#ship-to-different-address label span {  margin-left: 7px; }

.create-account { margin-bottom: 1.5em; }
.create-account p label { font-size:22px; }

.woocommerce-account-fields label {
    color:#333;
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 27px;
}

.woocommerce-account-fields label span {
    margin-left:-3px;
}

.checkout-grid-2 {
    display:grid;
    grid-template-columns: 1fr 1fr;
    grid-gap:2em;
}
@media screen and (max-width:1023px) {
    .checkout-grid-2 { grid-template-columns: 1fr; }   
}


#tab-description p {
    font-size: 17px;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
    margin: 0;
}
.woocommerce-review__author {
    font-size: 18px;
    color:#0075cc;
}
.woocommerce-widget-layered-nav-list {
    list-style: none;
    padding: 0;
}


.single-product .commentlist {
    padding-left: 0;
}

.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
	background: white;
}

.woocommerce-shipping-calculator p {
    font-size: 15px;
}

#calc_shipping_country_field .select2-selection {
    border-radius: 0;
    height: 35px;
}

#calc_shipping_country_field:before {
    display:block;
    content:"Select your country...";
}


dd p {
    display: inline-block;
    margin: 0 0 0 5px;
    color: #0075cc;
    font-size: 16px;
    font-weight: bold;
}
.coin-sizing-grid picture {
    margin:0 auto;
}
.coin-sizing-grid h4 {
    color:#0077C5;
    font-size: 19px;
}


.coin-sizing-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 1em;
    text-align: center;
}

.coin-sizing-grid > div {
    padding: 15px;
    border: 1px solid #efefef;
}


@media screen and (max-width:1023px) {
   .coin-sizing-grid {  grid-template-columns: repeat(3, 1fr);   }
}
@media screen and (max-width:767px) {
   .coin-sizing-grid {  grid-template-columns: repeat(2, 1fr);   }
}
@media screen and (max-width:640px) {
   .coin-sizing-grid {  grid-template-columns: 1fr;   }
}





.woocommerce nav.woocommerce-pagination ul li a, 
.woocommerce nav.woocommerce-pagination ul li span {
      background:white;
}

.woocommerce #respond input#submit, 
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button {
    border-radius:0;
    background:#0073aa;
    color:white;
}

.woocommerce-cart-form .button:disabled,
.woocommerce-cart-form .button:hover:disabled {
    background: gray;
    opacity: 0.2 !important;
}
.woocommerce-cart-form .button{
    color:white !important; 
}
.woocommerce-cart-form .button:hover {
    background:#00791c;
}
.woocommerce-terms-and-conditions {
  background: white;
}

.shop_table {
    background: white;
}
.shop_table thead th {
    border-top: 0;
}

#order_review_heading {
    margin-top: 35px;
}

.woocommerce-MyAccount-navigation ul {
    margin: 0 0 2em;
    padding: 0;
    list-style: none;
}

/*--- Cart Page specific ---- */
.woocommerce-cart .cross-sells .products-grid {
    grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width:768px) {
    .woocommerce-cart .cross-sells { display:none; }
}



/* Tabs */
.woocommerce-Tabs-panel {

    background: white;
    padding: 25px !important;
    border-left: 1px solid #e2e2e2;
    border-right: 1px solid #e2e2e2;
    border-bottom: 1px solid #e2e2e2;

}
.woocommerce div.product .woocommerce-tabs ul.tabs { margin-bottom:0 !important; }

.woocommerce-Tabs-panel h2 {
    font-size: 29px;
    color:#005dac;
}


.woocommerce-Tabs-panel ul,
.woocommerce-Tabs-panel ol {
	margin-left:1.5em;
}

.woocommerce-Tabs-panel hr {
	margin: 2em 0;
	border-top: 1px solid #d3d3d3;
	border-bottom: none;
	border-left: none;
	border-right: none;
	background: none;
}


.featherlight-next:hover, 
.featherlight-previous:hover {
    background: rgba(0,0,0,.45) !important;
}


/*---- Elements ----- */
section.upsells,
section.related {
    margin-bottom: 45px;
}



/*--------------------------------------------------------------
## Product Categories + Archives
--------------------------------------------------------------*/
.widgettitle {
    font-size:30px;
    color:black;
	position:relative;
	width:100%;
}

.widget-category-list {
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: "Poppins", sans-serif;
}

@media screen and (max-width:1023px) {
	
	/* JQuery will slideToggle this */
	.widget-category-list {
		display:none;
	}
	
	.mobile-toggle { cursor:pointer; }
	.mobile-toggle::after {
		display: block;
		content: "+";
		position: absolute;
		right: 14px;
		top: 0;
	}
	
	.mobile-toggle.selected::after {
		display: block;
		content: "-";
	}
	
	
	#woocommerce_layered_nav-4, 
	#woocommerce_layered_nav-5 {
		display:none;
	}
	
}

.widget-category-list > li {
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f3f3f3;
    
}
.widget-category-list > li {
    line-height: 1.5em !important;
}



.widget-category-list a {
    color:black;
}
.widget-category-list .active {
    color:#005dac;
    font-size: 20px;
}

.widget-category-list .child-categories {
    list-style:none;
    margin-bottom:20px;
}

.widget-category-list .child-categories a {
    font-size: 15px;
    color: black;
}
.widget-category-list .child-categories a.active {
    font-weight:bold;
}


.shop-grid {
    display: grid;
    grid-template-columns: 300px 4fr;
    grid-column-gap: 30px;
}

.shop-grid > div {
    display: grid;
    align-content: start;
}

.shop-grid .filters { 
    padding:15px;
    background:white;
    align-content: start;
}

.shop-grid .filters .woocommerce-widget-layered-nav {
    border-top: 1px solid #efefef;
    padding-bottom: 14px;
}
.shop-grid .filters .widget_layered_nav h2 {
    font-size: 18px;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 2rem; 
    grid-row-gap: 2rem;
}

.products-grid .product { 
    background:white;    
    transition: all 0.35s linear;
}
.products-grid .product:hover {
    box-shadow: 5px 5px 25px #bdbdbd;
    transition: all 0.35s linear;
}

.products-grid .product:hover a h3 { color:#0077C5; } 

.products-grid .product-meta-wrapper > * { display:block; }
.products-grid a .price { color: #6f6f6f !important; font-size:16px !important; margin:0; }
.products-grid a h3 {
   font-size: 1.25em;
   color:#0a0a0a;
}
.products-grid .product-image-wrapper {
    width:100%;
    height: 190px;
    overflow: hidden;
    border-bottom:1px solid #f7f7f7;
}


.products-grid .price {
    font-size: 15px !important;
    color: #404040 !important;
    font-weight: normal !important;
}


.products-grid span.onsale {
    min-height: 2.236em;
    min-width: 100px;
    padding: 0;
    font-weight: bold;
    position: absolute;
    text-align: center;
    line-height: 2.236;
    top: 0;
    left: 0;
    margin: 0 0 5px;
    border-radius: 0;
    background-color: #ce0000;
    color: #fff;
    font-size: .857em;
    z-index: 9;
}



@media screen and (max-width:1023px) {
    .shop-grid { grid-template-columns: 1fr; }
    .shop-grid .filters { margin-bottom:20px; }
}



@media screen and (max-width:580px) {
    .shop-grid .results-and-sorting > p,
    .shop-grid .results-and-sorting > div,
    .shop-grid .results-and-sorting > form,
    .shop-grid .results-and-sorting > form select { 
        display:block; 
        float:none; 
        width:100%; 
    }    
}

@media screen and (max-width:480px) {
    
    .products-grid { grid-template-columns: 1fr; }
    .products-grid .product-image-wrapper {
        height:auto;
        max-height: 300px;
    }
    
}



/* Main Product Shop Page */
.archive .product-category-grid {
    grid-template-columns: repeat(5, 1fr);
    margin-bottom:40px;
}
@media screen and (max-width:1024px) {
    .archive .product-category-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media screen and (max-width:768px) {
    .archive .product-category-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media screen and (max-width:640px) {
    .archive .product-category-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width:480px) {
    .archive .product-category-grid {
        grid-template-columns:  1fr;
    }
}



@media screen and (max-width:1280px) {
    .products-grid { grid-template-columns: repeat(3, 1fr); }
}

@media screen and (max-width:768px) {
    .products-grid { grid-template-columns: repeat(2, 1fr); }
}

@media screen and (max-width:500px) {
    .products-grid { grid-template-columns: 1fr; }
}


.results-and-sorting {
    background: white;
    padding: 10px 1rem;
    margin-bottom: 15px;
}

.woocommerce .woocommerce-ordering {
    margin: 0;
}
.woocommerce .woocommerce-result-count { 
    margin:5px 0;
    font-size: 17px; 
}

.woocommerce span.onsale {
    min-height: 2.236em;
    min-width: 100px;
    padding: 0;
    font-weight: bold;
    position: absolute;
    text-align: center;
    line-height: 2.236;
    top: 0;
    left: 0;
    margin: 0 0 5px;
    border-radius: 0;
    background-color: #ce0000;
    color: #fff;
    font-size: .857em;
    z-index: 9;
}

.shop-pagination { margin-top: 25px; }



/*--------------------------------------------------------------
## Single Products
--------------------------------------------------------------*/

.product-image {
    background: white;
    padding: 25px;
}
.product-image picture {
    margin: 0 auto;
}

.single-product .content-container {
    grid-column: viewport;
    background: #f7f7f7;
}


.single-product-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
	grid-gap:45px;
    margin-bottom: 45px;
}
@media screen and (max-width:1079px) {
     .single-product-grid-2 {
         grid-template-columns:100%;
    }
}

.woocommerce div.product form.cart .reset_variations {
    visibility: hidden;
    margin-top: -5px;
    margin-bottom: 15px;
    text-align: left;
    font-weight: bold;
    font-size: 15px;
}




/*----- Image Gallery Carousel Stuff ----- */
.image-gallery-container {
  display: block;
  overflow:hidden;
}

.image-gallery-carousel .owl-nav {
    position: absolute;
    top: 20%;
    width: 100%;
    color: rgba(255,255,255,0.2);
    font-size: 35px;
    transition: 0.2s all linear;
}

.image-gallery-carousel:hover .owl-nav {
    color: rgba(255,255,255,1);
}

.image-gallery-carousel .owl-nav .owl-next { position:absolute; right:0; }
.image-gallery-carousel .owl-nav .owl-prev { position:absolute; left:0; }
.product-gallery-thumb { cursor:pointer; }





/*--------- Swatch List ------------ */
.swatch-list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 5px;
}
@media screen and (max-width:1280px) {
    .swatch-list {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media screen and (max-width:1024px) {
    .swatch-list {
        grid-template-columns:repeat(3, 1fr);
    }
}
@media screen and (max-width:640px) {
    .swatch-list {
        grid-template-columns:repeat(2, 1fr);
    }
}

.swatch-list .choose-product-colour,
.swatch-list .choose-product-base-colour {
    position: relative;
    width: 130px;
    height: 130px;
    border: 5px solid white;
}

.swatch-list .choose-product-colour:hover .popup,
.swatch-list .choose-product-base-colour:hover .popup{
	opacity:1;
	transform: scale(1, 1);
}

.swatch-list .popup { 
	position: absolute;
	top: -50%;
	z-index: 10;
	width: 250px;
	height: auto;
	text-align: center;
	padding: 15px;
	background:	white;
	border: 1px solid #e3e3e3;
	left: -50%;
	font-weight: bold;
	font-size: 15px;
	opacity:0;
	
	transform: scale(0.5, 0.5);
	transition:0.15s all ease-in-out;
    
    cursor:pointer;
    
}


.swatch-list .popup img {
    width: 100%;
}
.swatch-list .popup.selected {
    background: #0050dc;
    color: white;
    border: 1px solid #0050dc;
}


.choose-product-colour.selected,
.choose-product-base-colour.selected{
    border: 5px solid #1975ff;
}







.woocommerce div.product p.price, 
.woocommerce div.product span.price {
    color: #005dac;
    font-size: 1.5em;
    font-weight: bold;
}

.woocommerce-product-details__short-description ul {
    list-style: none;
}

.woocommerce-product-details__short-description ul li:before {
	display:inline-block;
	font-family:"standard-icons";
	content: "\e909";
	color: #0077C5;
	margin-right:5px;
}

.woocommerce div.product .woocommerce-product-rating,
.woocommerce .star-rating span {
    color:gold;
}

.single_variation_wrap {
    background:white;
    padding: 25px;
    border: 1px solid #e3e3e3;
}

.woocommerce-variation-add-to-cart {
    height:45px;
}

.woocommerce #respond input#submit.alt, 
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt {
    background-color: #0077C5;
    color: #fff;
    -webkit-font-smoothing: antialiased;
    border-radius: 0;
    padding: 14px 2rem;
}

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

.woocommerce #respond input#submit.alt.disabled, .woocommerce #respond input#submit.alt.disabled:hover, .woocommerce #respond input#submit.alt:disabled, .woocommerce #respond input#submit.alt:disabled:hover, .woocommerce #respond input#submit.alt:disabled[disabled], .woocommerce #respond input#submit.alt:disabled[disabled]:hover, .woocommerce a.button.alt.disabled, .woocommerce a.button.alt.disabled:hover, .woocommerce a.button.alt:disabled, .woocommerce a.button.alt:disabled:hover, .woocommerce a.button.alt:disabled[disabled], .woocommerce a.button.alt:disabled[disabled]:hover, .woocommerce button.button.alt.disabled, .woocommerce button.button.alt.disabled:hover, .woocommerce button.button.alt:disabled, .woocommerce button.button.alt:disabled:hover, .woocommerce button.button.alt:disabled[disabled], .woocommerce button.button.alt:disabled[disabled]:hover, .woocommerce input.button.alt.disabled, .woocommerce input.button.alt.disabled:hover, .woocommerce input.button.alt:disabled, .woocommerce input.button.alt:disabled:hover, .woocommerce input.button.alt:disabled[disabled], .woocommerce input.button.alt:disabled[disabled]:hover {
    background-color: #b5b5b5;
    color: #fff;
}


/* attribute data */
.vardata {
    display: inline-block;
    margin-left: 5px;
    font-weight: 500;
    font-size: 18px;
}



.variations td:last-child {
    text-align: right;
    padding-right:5px !important;
}
.variations td {
    padding: 5px 15px !important;
}
.variations tr {
    background: white;
}
.variations tr:nth-child(even) {
    background:#f2f2f2;
}


/* Price Table */
.price-table-row.calculated-price {
    border-top: 1px solid #e3e3e3;
    font-weight: bold;
    height: 45px !important;
}
#price_calculator td:last-child {
    text-align: right;
}



/* Checkout Page */
.woocommerce ul#shipping_method {
	min-width: 360px !important;
}
.woocommerce ul#shipping_method li{
	margin: 0 0 1em !important;
}

.woocommerce ul#shipping_method li input {
	margin: 7px .4375em 0 0 !important;
}


.woocommerce table.shop_table tbody th, 
.woocommerce table.shop_table tfoot td, 
.woocommerce table.shop_table tfoot th {
    font-weight: 500;
}

.woocommerce #payment #place_order, 
.woocommerce-page #payment #place_order {
    float: left;
}


#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
    margin-bottom: 35px;
}


.pickup-note {
    display: block;
    font-size:16px;
    padding-left: 21px;
    margin-bottom:20px;
    margin-top: -10px;
}

.depot-address {
    font-size:16px;
    padding-left: 21px;
}

.pickup-times {
    margin-bottom: 15px;
    display: flex;
    flex-direction:row;
    justify-content: flex-start;
    align-items: flex-start;
    padding-left: 21px;
}

.pickup-times > div {
    margin-right:15px;
    display: flex;
    flex-direction: column;
}

.pickup-times > div:last-child {
    margin-right:0;
}

#pickup_date {
    display: block;
    margin-top: 6px;   
    margin-bottom: 25px;
    max-width: 190px;
    font-size: 16px;
}

#pickup_time {
    display: block;
    margin-top: 6px;
    border-radius: 0;
    border: 1px solid #ccc;
    background: white;
    font-size: 16px;
    height: 42px;
    width: 190px;
    padding-left: 9px;
    opacity: 1;
}

#pickup_time:disabled {
	opacity: 0.5;
}


.owl-carousel .owl-item img{
    height: 146px;
    width: 100%;
}
@media screen and (min-width:540px) {
    .owl-carousel .owl-item img{
        height: 170px;
        width: 100%;
    }
}
@media screen and (min-width:767px) {
    .owl-carousel .owl-item img{
        height: 190px;
        width: 100%;
    }
}
@media screen and (min-width:1080px) {
    .owl-carousel .owl-item img{
        height: 90px;
        width: 100%;
    }
}
.vid-thumbnail{
    display: flex;
    justify-content: center;
    align-items: center;
}

.vid-thumbnail i{
    position: absolute;
    margin-left: -12px;
}

.vid-thumbnail .vid-thumb{
    object-fit: cover;
    object-position: center;
}

#full-product-vid a{
    display: flex;
    justify-content: center;
    align-items: center;
}
#full-product-vid a i{
    position: absolute;
    margin-left: -12px;
}
#full-product-vid a i:before{
    font-size: 35px;
}
#full-product-vid a{
    display: flex;
    justify-content: center;
    align-items: center;
}
#full-product-vid a i{
    position: absolute;
    margin-left: -12px;
}
#full-product-vid a i:before{
    font-size: 35px;
}
