@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&display=swap');

.site-header .header-inner {
   padding-top: 10px;
   padding-bottom: 10px;
}

/* ! Site logos ================= */
.site-header h1.site-title, .site-footer h4.site-title {
   text-transform: none;
}
@media (min-width: 576px) {
   .site-footer:not(.footer-stacked) .footer-inner .site-branding {
      max-width: 50%;
      padding-right: 3%;
   }
   .site-footer:not(.footer-stacked)  .footer-inner .copyright {
      max-width: 50%;
      padding-left: 3%;
   }
}
@media (max-width: 576px) {
   .site-footer:not(.footer-stacked) .footer-inner .copyright {
      padding-top: 30px;
   }
}
@media (min-width: 1300px) {
   .site-footer .footer-inner, .site-footer:not(.dynamic-footer) {
      max-width: 1300px;
   }
}
@media (min-width: 576px) and (max-width: 767px) {
   .site-footer .footer-inner, .site-footer:not(.dynamic-footer) {
      max-width: calc(100vw - 40px);
   }
}

/* ! Header logo & icons hover ================= */
.elementor.elementor-location-header h2.elementor-heading-title:hover, .elementor.elementor-location-header a.elementor-icon:hover, .elementor.elementor-location-header .elementor-menu-toggle:hover, footer.site-footer h4.site-title:hover {
   opacity: 0.8;
}

/* ! Account page ================= */
.woocommerce-account #content {
   font-family: "Montserrat", Sans-serif;
}

/* ! Product loops ================= */
.product-loops1 .woocommerce ul.products li.product a img {
	display: block;
	position: absolute;
	top: 30%;
	width: min(29%, 108px);
	left: 1.3vw;
}
.product-loops1 .woocommerce ul.products li.product {
    p, div  {
			padding-left: min(33%, 118px);
    }
	div.short_desc {
		font-size: clamp(14px, 1vw, 16px) !important;
		line-height: 1.2 !important;
	}
}



.product-loops1 .woocommerce ul.products li.product {
   background-color: #ffffff;
   border: 2px solid var( --e-global-color-secondary );
   border-radius: 10px;
   padding: 12px 20px;
}
.product-loops1 .woocommerce ul.products li.product a span.price, .product-loops1 .woocommerce ul.products li.product a.add_to_cart_button  {
   font-family: "Montserrat", Sans-serif;
}
.product-loops1 .woocommerce ul.products li.product a h2.woocommerce-loop-product__title {
   font-size: 32px;
   line-height: 40px;
   color: var( --e-global-color-text );
   font-family: "DM Serif Display", serif;
   letter-spacing: 1px;
}
.product-loops1 .woocommerce ul.products li.product a span.price {
  font-size: 24px;
  line-height: 40px;
	font-weight: 700;
	margin-top: 10px;
	padding-left: min(33%, 118px);
}
.product-loops1 .woocommerce ul.products li.product a div.short_desc  {
   font-family: "Roboto Condensed", Sans-serif;
   font-size: 16px;
   line-height: 20px;
   font-weight: 400;
   color: var( --e-global-color-text );
}
.product-loops1 .woocommerce ul.products li.product a.add_to_cart_button, .product-loops1 .woocommerce ul.products li.product a.product_type_paywall  {
   font-family: "Montserrat", Sans-serif;
   color: #ffffff;
   background-color: var( --e-global-color-primary );
   padding: 20px 30px;
   border-radius: 10px;
   text-transform: uppercase;
}
.product-loops1 .woocommerce ul.products li.product a.add_to_cart_button:hover, .product-loops1 .woocommerce ul.products li.product a.product_type_paywall:hover {
   background-color: #79AD5FCC;
}
/* @media (max-width: 580px) { */
@media (max-width: 1020px) {
   .product-loops1 .woocommerce ul.products li.product {
      width: 100%;
      float: none;
   }
}

/* move the buttons on the home page */
body.home li.type-product {
	position: relative;
	min-height: 13rem;
	a.button {
		position: absolute;
		bottom: 0.5rem;
		right: 0.5rem;
	}
}

/* ! Product single page ================= */
.woocommerce .woocommerce-breadcrumb {
   opacity: 0;
}
.single.single-product form div.quantity {
   display: none;
}
.single-product.woocommerce product, .single-product.woocommerce div.product form.cart .button {
   font-family: "Montserrat", Sans-serif;
}
.single-product.woocommerce h1.product_title, .single-product.woocommerce h2 {
   font-weight: 500;
   font-family: "DM Serif Display", serif;
   letter-spacing: 1px;
   color: #808080;
}
.single-product.woocommerce div.product div.summary p.price {
   color: var( --e-global-color-primary );
   font-family: "Montserrat", Sans-serif;
   font-size: 24px;
   line-height: 40px;
   font-weight: 700;
}
@media (min-width: 768px) {
   .single-product.woocommerce div.product .woocommerce-product-gallery {
      width: 230px;
      pointer-events: none;
      float: left;
      margin: 20px 5vw 0 0;
   }
   .single-product.woocommerce div.product div.summary {
      width: calc(90% - 230px);
      margin-left: 10%;
      /* 	float: right; ================= */
      float: none;
      h1 {
         font-size: 1.8em;
         padding-top: 0.8em;
      }
   }
}
.single-product.woocommerce div.product .woocommerce-product-gallery a.woocommerce-product-gallery__trigger {
   display: none;
}
@media (max-width: 767px) {
   .single-product.woocommerce div.product:not(.product_cat-video-tutorials) .woocommerce-product-gallery {
      display: none;
   }
   .single-product.woocommerce div.product div.summary {
      width: 100%;
   }
}
.single-product.woocommerce .single_add_to_cart_button.button.button.alt {
   font-family: "Montserrat", Sans-serif;
   color: #ffffff;
   background-color: var( --e-global-color-primary );
   padding: 20px 30px;
   border-radius: 10px;
   margin-top: 10px;
}
.single-product.woocommerce .single_add_to_cart_button.button.button.alt:hover {
   background-color: #79AD5FCC;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
   display: none;
}
.woocommerce div.product .woocommerce-Tabs-panel h2 {
   display: none;
}
.woocommerce-tabs #jp-relatedposts {
   display: none !important;
}

/* ! Product single page - video tutorials ================= */
.single-product.woocommerce div.product_cat-video-tutorials  div.product_meta {
   display: none;
}
.single-product.woocommerce div.product_cat-video-tutorials  div.woocommerce-product-gallery {
   pointer-events: none;
}
@media (min-width: 768px) {
   .single-product.woocommerce div.product_cat-video-tutorials .woocommerce-product-gallery {
      width: 350px;
      pointer-events: none;
      float: left;
   }
   .single-product.woocommerce div.product_cat-video-tutorials  div.summary {
      width: calc(95% - 350px);
      margin-left: 5%;
      float: right;
   }
}
@media (max-width: 768px) {
   .single-product.woocommerce div.product_cat-video-tutorials .woocommerce-product-gallery {
      max-width: 300px;
      margin-left: auto;
      margin-right: auto;
   }
}

/* ! Side cart ================= */
.xoo-wsc-container, .xoo-wsc-slider {
   font-family: "Montserrat", Sans-serif;
}

/* ! Footer down*/
#primary.content-area, main.site-main {
   min-height: calc(100vh - 177px);
}

/* ! Content width tweaks ================= */
@media (min-width: 768px) {
   .site-footer .footer-inner, .site-footer:not(.dynamic-footer), .site-header .header-inner, .site-header:not(.dynamic-header), body:not([class*=elementor-page-]) .site-main {
      max-width: 100%;
      padding-left: 5%;
      padding-right: 5%;
   }
}
body:not(.home) main#content {
   width: 94%;
   margin: auto;
}
.page-header .entry-title {
   max-width: 1300px;
}

/* ! Page titles ================= */
.page-header h1.entry-title {
   font-family: "DM Serif Display", Sans-serif;
   font-size: 36px;
   font-weight: 400;
   letter-spacing: 1px;
   color: var( --e-global-color-primary );
   padding-top: 15px;
   padding-bottom: 10px;
}

/* ! Checkout page ================= */
form.woocommerce-checkout #customer_details .col-1, form.woocommerce-checkout #customer_details .col-2 {
   width: 100%;
   float: none;
   clear: both;
}
@media (min-width: 1024px) {
   form.woocommerce-checkout #customer_details .col-1 {
      width: 70%;
      padding-right: 50px;
   }
   form.woocommerce-checkout #customer_details {
      background-image: url('https://passthelare.com/wp-content/uploads/2022/11/logo-b-pass_the_lare.png');
      background-size:20%;
      background-position: top right;
      background-repeat: no-repeat;
   }
}

/* ! Woo buttons and links ================= */
.page.woocommerce-account button.woocommerce-Button, .page.woocommerce-account button.woocommerce-button, .page.woocommerce-account a.button, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
   font-family: "Montserrat", Sans-serif;
   color: #ffffff;
   background-color: var( --e-global-color-primary );
   padding: 20px 30px;
   border-radius: 10px;
   margin-top: 10px;
}
.page.woocommerce-account button.woocommerce-Button:hover, .page.woocommerce-account button.woocommerce-button:hover, .page.woocommerce-account a.button:hover  {
   background-color: #79AD5FCC;
}
.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover {
   background-color: #79AD5FCC;
}
.page.woocommerce-account main a:not(.button) {
   color: var( --e-global-color-primary );
   font-weight: bold;
   line-height: 2;
}
.woocommerce-checkout #billing_how_other_field label span.optional {
   display: none;
}

/* ! Woo - account page ================= */
@media (min-width: 768px) {
   body.woocommerce-account nav.woocommerce-MyAccount-navigation ul {
      max-width: 250px;
   }
}
body.woocommerce-account nav.woocommerce-MyAccount-navigation ul {
   padding-inline-start: 0;
   list-style-type: none;
   display: grid;
   width: 100%;
   margin-bottom: 30px;
   grid-row-gap: 10px;
}
body.woocommerce-account nav.woocommerce-MyAccount-navigation li {
   order: 1;
   background-color: var( --e-global-color-primary );
}
body.woocommerce-account nav.woocommerce-MyAccount-navigation li a {
   display: block;
   background-color: var( --e-global-color-primary );
   padding: 10px 25px;
   text-decoration: none;
   color: white !important;
   /* text-align: center; ================= */
}
body.woocommerce-account nav.woocommerce-MyAccount-navigation li a:hover {
   opacity: 0.85;
}
body.woocommerce-account nav.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
   order: 3;
}

/* ! Cart custom message ================= */
div.cart-custom-message {
   max-width: 1340px;
   margin-left: auto;
   margin-right: auto;
   padding: 5px 20px;
}

/* ! Cart Page: hide QTY and subtotal ================= */
body.woocommerce-page .shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents {
	th.product-quantity, th.product-subtotal, td.product-quantity, td.product-subtotal {
		display: none;
	}
}


/* ! Purchased Product Pages ================= */
@media (min-width: 768px) {
   body.single-product div.product.woopaywall-not-purchasable div.summary {
      width: 99%;
      margin: -1.9em 0 -1em 40px;
      /* 		width: calc(95% - 120px); ================= */
   }
   body.single-product div.product.woopaywall-not-purchasable div.summary h1 {
      margin-top: 0;
		font-size: 16px;
		padding-top: 1.4em;
   }
}
body.single-product div.product.woopaywall-not-purchasable .woocommerce-product-gallery {
	/* 	width: 120px; ================= */
	width: 26px;
	margin-right: 10px;
}
body.single-product div.product.woopaywall-not-purchasable div.summary p, body.single-product div.product.woopaywall-not-purchasable div.summary div  {
   display: none;
}

/* ! Discount tags*/
.woocommerce span.onsale {
   background-color: #79AD5F;
}
@media (max-width: 767px) {
   .woocommerce.single-product span.onsale {
      position: relative;
      display: inline-block;
      max-width: 80px;
      padding: 2px 10px;
      margin-top: -30px;
      margin-left: calc(100% - 100px);
   }
}

/* ! equal height product listings ================= */
.woocommerce .products ul, .woocommerce ul.products {
   display: flex !important;
   flex-wrap: wrap;
}

/* ! remove red border submit button ================= */
button[type="submit"] {
   border: none;
   margin: 1em 0;
}

/* ! Hide the default price display for products with discount percentage or sale price ================= */
.has-discount .price > .amount {
   display: none;
}

/* ! Ensure custom price display is visible ================= */
.discount-percentage,
.price del,
.price ins {
   display: inline;
}
li.product:has(.discount-percentage) .price del::after {
   content: "" !important;
}

/* ! Discounted Prices (New 11/2024) ================= */
.product-row, .summary.entry-summary {
   ins, a {
      text-decoration: none;
   }
   p.discounted {
      opacity: 0.52;
      font-size: 20px !important;
      font-weight: 700 !important;
      font-family: "Montserrat", sans-serif;
      margin: 0 !important;
   }
   p.price {
      font-size: 24px !important;
      font-weight: 700 !important;
      font-family: "Montserrat", sans-serif;
      margin: 0 !important;
   }
}
/* more broad than above 0325 */
.woocommerce p.price {
  font-size: 20px !important;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
	color: #222;
  & ins, & a {
    text-decoration: none;
  }
}
.woocommerce p.discounted {
  font-size: 20px !important;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
	opacity: 0.52;
}


@media (max-width: 480px) {
	.bogo-product-notice {
		padding: 1rem 0 0 !important
	}
	
}

/* Product Row Specific Formats  */
.product-row-1 {
   p.price, p.discounted, .bogo-product-notice {
      color: var(--e-global-color-secondary) !important;
   }
  a.add_to_cart_button, a.product_type_paywall {
		background: var(--e-global-color-secondary) !important;
	}
}

.product-row-2 {
   p.price, p.discounted, .bogo-product-notice {
      color: var(--e-global-color-accent) !important;
   }
  a.add_to_cart_button, a.product_type_paywall {
		background: var(--e-global-color-accent) !important;
	}
}

.product-row-3 {
   p.price, p.discounted, .bogo-product-notice {
      color: var(--e-global-color-0835071) !important;
   }
	  a.add_to_cart_button, a.product_type_paywall {
		background: var(--e-global-color-0835071) !important;
	}

}

.product-row-4 {
   p.price, p.discounted, .bogo-product-notice {
      color: var(--e-global-color-primary) !important;
   }
	  a.add_to_cart_button, a.product_type_paywall {
		background: var(--e-global-color-primary) !important;
	}

}
.discount-message {
   color: var(--e-global-color-accent) !important;
   font-weight: bold;
   margin-top: 5px;
}
.product-total del {
   opacity: 0.7;
}
iframe {
   margin: 1rem 0;
}

/* hide subtotal row on checkout page: */
.woocommerce-checkout-review-order-table {
	tr.cart-subtotal {
		display: none;
	}
	.woocommerce-Price-amount {
		font-weight: 700;
	}
}
.discPrice {
	font-weight: 700;
}

.bogo-notice {
	background: #f37122;
	color: #fff;
	text-align: center;
	padding: 1.7rem 1rem;
	text-wrap: balance;
}
.bogo-notice p {
	text-align: center;
	line-height: 1.2;
	margin: 0;
	font-size: clamp(1rem, 5vw, 1.4rem);
	font-weight: bold;
}

/* Category Headings and Products for Home Page Anchor (#shop) AND WooCommerce */
body.home .elementor-divider__text.elementor-divider__element, body.woocommerce .elementor-divider__text.elementor-divider__element {
	text-wrap: balance;
	font-size: clamp(35px, 2vw, 38px) !important;
  font-weight: 500 !important;
	line-height: 1.2 !important;
	text-align: center !important;
}
body.home h2.woocommerce-loop-product__title, body.woocommerce h2.woocommerce-loop-product__title {
	font-size: clamp(20px, 1.3vw, 25px) !important;
	line-height: 1.1 !important;
	letter-spacing: 0.5px !important;
}
body.home .elementor-widget-divider .elementor-divider, body.woocommerce .elementor-widget-divider .elementor-divider {
	margin: 2.2rem 0 0;
}
body.home .product-loops1 .woocommerce ul.products li.product a.add_to_cart_button,
body.woocommerce .product-loops1 .woocommerce ul.products li.product a.add_to_cart_button, 
.product-loops1 .woocommerce ul.products li.product a.product_type_paywall {
	padding: 18px 23px;
}

/* hide Paid on products 2025/02 */
li.woopaywall-not-purchasable span.price, li.in-cart span.price {
	display: none !important;
}

.button.product_type_paywall {
	text-align: center;
	min-width: 12ch;
}

/* change the margin to avoid uneven widths on tablet */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
/* 	 margin: 0 3.8% 2.992em 0; */
	margin: 0.63vw !important;
}
@media (max-width: 1020px) {
	ul.products li.product {
		margin: 0.8rem 0 !important; }
}

/* Hide the duplicate BOGO coupon row in cart/checkout */
tr.cart-discount.coupon-bogoapril {
	display: none;
}

@keyframes urgentMessage {
  0%   { background: #d00146; }
  20%  { background: #680369; }
  40%  { background: #0265df; }
  60%  { background: #0265df; }
  80%  { background: #680369; }
  100% { background: #d00146; }
}
@keyframes urgentShake {
  0%   { transform: rotate(0deg); }
  20%  { transform: rotate(-.2deg); }
  40%  { transform: rotate(.2deg); }
  60%  { transform: rotate(-.05deg); }
  80%  { transform: rotate(0deg); }
  100% { transform: rotate(0deg); }
}
.woocommerce-info[data-coupon="bogosummer"] {
/*     rotate: -1.3deg; */
    color: white;
    font-weight: 700;
    font-size: 130%;
    line-height: 1.1;
    padding: 2rem 5rem 3rem;
    border: none;
    border-radius: 1rem;
    position: relative;
    top: 1.8rem;
    left: -2rem;
    background: #d00146; /* Fallback */
    animation: urgentMessage 9s infinite linear, urgentShake 5s infinite ease;
    &::before {
        content: "*";
        font-size: 190%;
        color: white;
        font-weight: 800;
        position: relative;
        left: -5px;
        top: 0.3rem;
    }
}
/* move the add button below the BOGO message */
span.acfw-bogo-notice-text {
	display: flex;
	flex-direction: column;
	a.button {
		margin: 1rem 0 0;
		width: max-content;
	}
}


/* ! Unused =========================== */

/* ! Account header icon ============ */

/* ! header nav.site-navigation {
height: 40px;
width: 40px;
position: absolute;
right: 10px; top: 22px;
}

ul#menu-main li.accountic1 a {
color: transparent !important;
font-size: 12px;
padding: 0 5px;
}

ul#menu-main li.accountic1 a:before {
height: 40px;
width: 40px;
position: absolute;
left: 50%;
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
content: url('https://passthelare.com/wp-content/uploads/2022/11/user-icon.svg');
}

@media (max-width: 480px) {
#site-header .header-inner {
align-items: start;
}
}
*/

/* ! add logo to site title
.elementor-616.elementor-location-header h2.elementor-heading-title.elementor-size-default {
text-align: center;
background: url(https://passthelare.com/wp-content/uploads/2022/11/logo-pass_the_lare.svg);
background-repeat: no-repeat;
display: table;
padding-left: 3rem;
margin: auto;
}
*/

