/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

html, body {
    overflow-x: hidden;
  }
  
  .site-footer {
      padding-block-end: 1rem;
      padding-block-start: 1rem;
      position: relative;
      display: none;
  }
  
  .elementor-icon i, .elementor-icon svg {
      display: block;
      height: 1em;
      position: relative;
      width: 1em;
      padding-top: 5px;
  }
  
  .countdown-timer {
      display: flex
  ;
      flex-wrap: wrap;
      justify-content: center;
      gap: 0px;
      /* width: max-content; */
      margin-left: -5px;
  }
  
  
  .single-product .single_add_to_cart_button {
      display: none !important;
  }
  .variations .reset_variations {
      display: none !important;
  }
  
  .woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled {
      display: none !important;
  }
  
  #_builder-form .form-builder--item input[type=text][class=form-control], #_builder-form .form-builder--item .date-picker-custom-style, #_builder-form .form-builder--item input[type=number] {
  width: 157px;
      margin-left: -25px;
  }
  
  .elementor-819 .elementor-element.elementor-element-f7f0734 {
      padding: 28px 33px 28px 33px;
      border-style: solid;
      border-width: 1px 1px 1px 1px;
      border-color: #DEDEDE;
      border-radius: 10px 10px 10px 10px;
      --icon-box-icon-margin: 15px;
      height: -webkit-fill-available;
  }
  
  .elementor-819 .elementor-element.elementor-element-4e35e07 {
      background-image: url(https://yogalap.com/wp-content/uploads/2025/07/Subtract-1.png);
      padding: 33px 33px 33px 33px;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      border-radius: 10px 10px 10px 10px;
      --icon-box-icon-margin: 15px;
      height: -webkit-fill-available;
  }
  
  .elementor-819 .elementor-element.elementor-element-481e173 {
      padding: 28px 33px 28px 33px;
      border-style: solid;
      border-width: 1px 1px 1px 1px;
      border-color: #DEDEDE;
      border-radius: 10px 10px 10px 10px;
      --icon-box-icon-margin: 15px;
      height: -webkit-fill-available;
  }
  
  @media (min-width: 1025px) {
      .woocommerce form .form-row {
          padding: 3px;
          margin: 0 0 6px;
          display: inline-block;
      }
  
      .woocommerce-additional-fields__field-wrapper {
          display: grid;
      }
  
      input#billing_full_name {
          width: 226%;
      }
  
      select#billing_country {
          width: 133%;
      }
  
      p#billing_state_field {
          width: 48%;
      }
  
      p#billing_phone_field {
          width: 48%;
      }
      p#billing_address_1_field {
      width: 48%;
  }
  }
  
  /* Hide Add to Cart and Price for Product ID 70 */
  body.postid-70 form.cart,
  body.postid-70 p.price {
      display: none !important;
  }

 /* Hide Add to Cart and Price for Product ID 2254 */
body.postid-2254 form.cart,
body.postid-6031 form.cart,
body.postid-6039 form.cart,
body.postid-6049 form.cart,
body.postid-6059 form.cart,
body.postid-6060 form.cart,
body.postid-6061 form.cart,
body.postid-70 p.price,
body.postid-4193 form.cart,
body.postid-4190 form.cart,
body.postid-4185 form.cart,
body.postid-4177 form.cart,
body.postid-4169 form.cart,
body.postid-3932 form.cart,
body.postid-4193 p.price,
body.postid-4190 p.price,
body.postid-4185 p.price,
body.postid-4177 p.price,
body.postid-4169 p.price,
body.postid-3932 p.price {
    display: none !important;
}  
 
  @media (min-width: 1025px) {
    .elementor-element.elementor-element-64f6ba1.elementor-widget.elementor-widget-testimonial {
        height: 300px;
    }
    .elementor-element.elementor-element-91bf975.elementor-widget.elementor-widget-testimonial {
        height: 300px;
    }
    .elementor-element.elementor-element-37a5ef2.elementor-widget.elementor-widget-testimonial {
        height: 300px;
    }
    .elementor-element.elementor-element-a4c2134.elementor-widget.elementor-widget-testimonial {
        height: 300px;
    }
  }
  @media (min-width: 1025px) {
    .elementor-element.elementor-element-38bbcc0.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-939ed1e.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-502cc3d.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-4e35e07.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-dbc3976.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-6df61d6.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-3a87e42.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
    .elementor-element.elementor-element-f7f0734.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
        height: 350px;
    }
  }
  
  
  
  
  .elementor-element.elementor-element-20ee6f7.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px !important;
  }
  .elementor-element.elementor-element-a699571.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  .elementor-element.elementor-element-7f2fb1e.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  .elementor-element.elementor-element-e366e0d.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  .elementor-element.elementor-element-71256b1.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  .elementor-element.elementor-element-4d2c039.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  .elementor-element.elementor-element-edf605a.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  .elementor-element.elementor-element-4184ea7.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
      height: 375px;
  }
  @media only screen and (min-width: 1025px) {
      .elementor-element.elementor-element-2a22f1b3.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-58f5f7e1.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-172d6998.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-2963b79e.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-efd1e62.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-70878cd3.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-6c1d4e0e.elementor-position-top.elementor-widget.elementor-widget-image-box,
      .elementor-element.elementor-element-14130984.elementor-position-top.elementor-widget.elementor-widget-image-box {
          height: 370px;
      }
  }
  @media only screen and (min-width: 1025px) {
      .elementor-element.elementor-element-464914bb.elementor-widget.elementor-widget-testimonial,
      .elementor-element.elementor-element-22e50577.elementor-widget.elementor-widget-testimonial,
      .elementor-element.elementor-element-86ea9f5.elementor-widget.elementor-widget-testimonial,
      .elementor-element.elementor-element-5424436e.elementor-widget.elementor-widget-testimonial,
      .elementor-element.elementor-element-2007d30a.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box{
          height: 280px;
      }
  }
  @media only screen and (min-width: 1025px) {
      .elementor-element.elementor-element-158d21ea.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box,
      .elementor-element.elementor-element-4f349dde.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box,
      .elementor-element.elementor-element-12c581f.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
          height: 310px;
      }
  }
  @media only screen and (min-width: 1025px) {
      .elementor-element.elementor-element-2007d30a.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box,
      .elementor-element.elementor-element-6f23076e.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box,
      .elementor-element.elementor-element-22836930.elementor-view-default.elementor-position-top.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
          height: 260px;
      }
  }



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

@media (min-width: 1025px) {
    select#billing_country {
        width: 95%;
    }
}

@media (min-width: 1025px) {
    p#billing_address_1_field {
        width: 46%;
    }
}
@media (min-width: 1025px) {
    .woocommerce form .form-row {
        padding: 3px;
        margin: 0 0 6px;
        display: inline-block;
        width: 50%;
    }
}
@media (min-width: 1025px) {
    select#billing_country {
        width: 100%;
    }
}
@media (min-width: 1025px) {
    p#billing_address_1_field {
        width: 50%;
    }
}
@media (min-width: 1025px) {
    p#billing_state_field {
        width: 50%;
    }
}
@media (min-width: 1025px) {
    p#billing_phone_field {
        width: 50%;
    }
}



.woocommerce-info {
    border-top-color: #D8AB18;
    background-color: #004750;
    color: white;
}
a.showcoupon {
    color: #d8ab18;
}
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
    background: #004750;
    border-radius: 5px;
    color: white;
}
.form-row.place-order {
    width: 100% !important;
}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float: right;
    background-color: #D8AB18;
    width: -webkit-fill-available;
}

/* Default tab styling */
div#elementor-tab-title-1691,
div#elementor-tab-title-1692 {
    background-color: #ffffff;
    margin: 10px;
    border-radius: 6px;
}

div#elementor-tab-title-1691 a,
div#elementor-tab-title-1692 a {
    color: #004750; /* default text color */
}

/* Active tab styling */
div#elementor-tab-title-1691.elementor-active,
div#elementor-tab-title-1692.elementor-active {
    background-color: #D8AB18 !important;
}

div#elementor-tab-title-1691.elementor-active a,
div#elementor-tab-title-1692.elementor-active a {
    color: #004750 !important;
}
a.woocommerce-privacy-policy-link {
    color: #D8AB18;
}
.elementor-815 .elementor-element.elementor-element-9270bb1 .elementor-tab-content {
    border-width: 2px;
    border-block-end-color: #E7E7E7;
    background-color: #EEEEEE;
    color: var(--e-global-color-primary);
    font-family: "Inter", Sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 24px;
    overflow: scroll;
    height: 400px;
}
/* Desktop only */
@media (min-width: 1025px) {
  .elementor-element.elementor-element-7c37e361.elementor-widget.elementor-widget-testimonial {
      height: 275px;
  }
}
/* Desktop only */
@media (min-width: 1025px) {
  .elementor-element.elementor-element-09e714d.elementor-position-left.elementor-view-default.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
      height: 280px;
  }

  .elementor-element.elementor-element-af56019.elementor-position-left.elementor-view-default.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
      height: 230px;
  }

  .elementor-element.elementor-element-8b10faf.elementor-position-left.elementor-view-default.elementor-mobile-position-top.elementor-widget.elementor-widget-icon-box {
      height: 230px;
  }
	.elementor-element.elementor-element-2634431.elementor-widget.elementor-widget-testimonial {
    height: 320px;
}
.elementor-element.elementor-element-684b4ef.elementor-widget.elementor-widget-testimonial {
    height: 320px;
}
}

@media (min-width: 1025px) {
  .elementor-element.elementor-element-422746a8.elementor-widget.elementor-widget-testimonial {
    height: 280px;
  }
}

.elementor-1012 .elementor-element.elementor-element-a1a887b .elementor-tab-content {
    color: #FFFFFF;
    font-family: "Roboto", Sans-serif;
    font-weight: 400;
    overflow: scroll;
    height: 450px;
}
div#elementor-tab-content-1281 {
    overflow: scroll;
    height: 300px;
}
div#elementor-tab-content-1282 {
    overflow: scroll;
    height: 300px;
}

@font-face {
  font-family: 'Agrandir Wide Medium';
  src: url('https://yogalap.com/wp-content/uploads/2025/10/Agrandir-WideMedium.woff2') format('woff2'),
       url('https://yogalap.com/wp-content/uploads/2025/10/Agrandir-WideMedium.woff') format('woff'),
       url('https://yogalap.com/wp-content/uploads/2025/10/Agrandir-WideMedium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* 🏷 Headings (including spans inside headings) */
h1, h2, h3, h4, h5, h6,
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
  font-family: 'Agrandir Wide Medium', sans-serif !important;
}

/* 🧍 Body text */
body, p, span, li {
  font-family: 'Montserrat', sans-serif !important;
}

/* Product Variation Buttons Styling */
span.variable-item-span.variable-item-span-button {
    background-color: white !important;
    color: #004750 !important;
    border: 2px solid #D8AB18 !important;
    width: 300px;
    transition: all 0.3s ease;
}

/* Selected variation styling */
span.variable-item-span.variable-item-span-button.selected,
span.variable-item-span.variable-item-span-button:selected,
span.variable-item-span.variable-item-span-button[aria-pressed="true"] {
    background-color: #D8AB18 !important;
    color: white !important;
    border: 2px solid #D8AB18 !important;
}

/* Hover effect */
span.variable-item-span.variable-item-span-button:hover {
    background-color: #D8AB18 !important;
    color: white !important;
    border: 2px solid #D8AB18 !important;
}


.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th {
    border: 0;
    line-height: 2em;
    vertical-align: top;
    background-color: #004750;
}

.woocommerce .elementor-233 .elementor-element.elementor-element-74de897e form.cart table.variations label {
    color: #ffffff !important;
    font-family: "Inter", Sans-serif;
    font-size: 20px;
}
span.woo-selected-variation-item-name {
    color: white;
}


.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th {
    border: 0;
    line-height: 2em;
    vertical-align: top;
    background-color: #004750;
    padding: 24px;
    border-radius: 5px;
}
button#privacy-policy-close {
    background-color: #D8AB18;
    color: white;
    border-color: white;
}
div#privacy-policy-content {
    background-color: #004750 !important;
    color: white;
}

header#site-header {
    background-color: #004750;
}

a.woocommerce-terms-and-conditions-link {
    color: #D8AB18;
}

@media (max-width: 767px) {
  .elementor-1012 .elementor-element.elementor-element-a1a887b .elementor-tab-title {
    font-family: "Roboto", Sans-serif;
    font-weight: 600;
    color: white;
  }
}
span.woocommerce-Price-amount.amount {
    color: #D8AB18;
}
@media (min-width: 1025px) {
  .elementor-element-15922c51,
  .elementor-element-e5a02c8,
  .elementor-element-22798687,
  .elementor-element-66a6ae1e,
  .elementor-element-29120dd3,
  .elementor-element-3c599479 {
    height: 534px !important;
  }
}


@media (min-width: 1024px) {
    .elementor-element.elementor-element-03c540e.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-8723290.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-5064fc4.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-68d7ca8.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-5c2954d.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-f5268ab.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }
}
@media (min-width: 1024px) {
    .elementor-element.elementor-element-2c6e95b3.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-265e146f.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-6582aa25.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-77c136c5.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-67017b17.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-72d882a8.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }
}
@media (min-width: 1024px) {
    .elementor-element.elementor-element-7ad7fb7f.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-2249e68f.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-378c04ba.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-3ad07fc4.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-609c3357.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-77a0c1f2.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }
}
@media (min-width: 1024px) {
    .elementor-element.elementor-element-3214110d.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-6a1f999d.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-3fd3cbaf.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-797ec451.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-24b9d383.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-67f2f061.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }
}
@media (min-width: 1024px) {
    .elementor-element.elementor-element-1a4216ff.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-7deae2a6.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-4d95f34d.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-48133fc0.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-199ab6c9.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-26b4d4c3.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }
}
@media (min-width: 1024px) {
    .elementor-element.elementor-element-75c30ad3.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-e7c0378.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-984ab3e.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-69bd5544.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-380ad076.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }

    .elementor-element.elementor-element-736e9928.elementor-position-top.elementor-position-top.elementor-widget.elementor-widget-image-box {
        height: 534px;
    }
}
@media (min-width: 1025px) {
  .elementor-element.elementor-element-edit-mode.elementor-element-01a58ed.elementor-element--toggle-edit-tools.elementor-widget.elementor-widget-testimonial {
      height: 280px;
  }
  .elementor-element.elementor-element-edit-mode.elementor-element-5da2817.elementor-element--toggle-edit-tools.elementor-widget.elementor-widget-testimonial {
      height: 280px;
  }
}
.woocommerce .elementor-2533 .elementor-element.elementor-element-6d67ce71 form.cart table.variations label {
    color: #ffffff;
    font-family: "Inter", Sans-serif;
    font-size: 20px;
}
div#elementor-tab-content-1561 {
    overflow: scroll;
    height: 300px;
}
div#elementor-tab-content-1562 {
    overflow: scroll;
    height: 300px;
}

.elementor-element.elementor-element-ab21847.elementor-widget.elementor-widget-testimonial {
    height: 276px;
}
.elementor-element.elementor-element-7f8c9c8.elementor-widget.elementor-widget-testimonial {
    height: 276px;
}

.elementor-1012 .elementor-element.elementor-element-a1a887b .elementor-tab-content {
    color: #004750;
    font-family: "Roboto", Sans-serif;
    font-weight: 400;
    overflow: scroll;
    height: 450px;
}


.wc-block-grid.wp-block-product-new.wp-block-woocommerce-product-new.wc-block-product-new.has-4-columns {
    display: none;
}

.elementor-2782 .elementor-element.elementor-element-869dc9b .elementor-tab-title.elementor-active, .elementor-2782 .elementor-element.elementor-element-869dc9b .elementor-tab-title.elementor-active a {
    background-color: #D8AB18 !important;
    color: #fff !important;
    border-radius: 15px;
}
.elementor-2782 .elementor-element.elementor-element-869dc9b .elementor-tab-title {
     background: white !important;
    border-radius: 15px;
    margin-left: 5px !important;
}
div#elementor-tab-content-1411 {
    overflow: scroll;
    height: 350px;
}
div#elementor-tab-content-1412 {
    overflow: scroll;
    height: 350px;
}

span.elementor-testimonial__title {
    margin-left: -55px;
    margin-top: 15px;
}

a {
  color: #D8AB18;   /* Default link color */
  text-decoration: none; /* Optional: removes underline */
}

a:hover,
a:focus {
  color: #b88a12;   /* Slightly darker shade on hover */
  text-decoration: underline; /* Optional: underline on hover */
}


.single-product.postid-9119 .woocommerce-variation-price {
    display: none !important;
}

a:hover {
    text-decoration: none !important;
}

/* Disable WooCommerce product image zoom completely */
.woocommerce-product-gallery__image a {
    pointer-events: none !important;
}

.woocommerce-product-gallery__image .zoomImg {
    display: none !important;
}

/* Event Thumbnail*/

.eventful .eventful__item--thumbnail img {
    width: 450px !important;
    height: 300px !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    background-repeat: no-repeat !important;
}

.wpws-registration-login-register-link {
    display: none;
}

/* ////////////////////////////////////////////////// */
/* Webinar Form CSS 
  /////////////////////////////////
  */  @media (min-width: 1025px) {
    .wpws_registration_widget form {
      display: flex !important;
      flex-wrap: wrap;
      gap: 10px;
      align-items: center;
     
      width: 180% !important;
    }
  
  
    .wpws_registration_widget form .wpws-field-wrapper {
      flex: 1 1 auto;
      margin: 0 !important;
      min-width: 200px;
    }
  
    .wpws_registration_widget input[type="text"],
    .wpws_registration_widget input[type="email"],
    .wpws_registration_widget input[type="password"] {
      width: 100%;
      box-sizing: border-box;
    }
  
    .wpws_registration_widget .wpws-action-button {
      height: 48px;
      padding: 0 20px;
      white-space: nowrap;
    }
  
    .wpws_registration_widget .wpws-gdpr-optin {
      width: 100%;
      text-align: left;
      margin-top: 10px;
    }
  
    .wpws-registration-form {
      display: flex;
      column-gap: 10px;
      width: 80% !important;
    }
  
    .wpws-registration-action-button {
      width: 18%;
    }
  
    .wpws-registration-alternate-sessions {
      display: contents;
    }
  
    button.wpws-26 {
      margin-top: -12px !important;
      width: 100% !important;
    }
  
    .wpws-17.wpws-13.wpws-registration-calendar {
      visibility: hidden;
    }
  
    .wpws-registration-login-register-link {
      margin-bottom: -71px;
      margin-left: 80px;
    }
  
    /* --- CSS-Only Title for Webinar Times --- */
    .wpws-registration-alternate-sessions::before {
      content: "Select Your Time\A";
      white-space: pre-line;
      color: #004750;
          background-color: white;
          display: block;
          padding:5px;
          border-radius:5px;
      font-weight: bold;
      font-size: 18px;
      margin-bottom: 3px;
          font-family: 'Montserrat';
    }
  }
  
   @media (max-width: 768px) {
    .wpws_registration_widget form {
      display: flex !important;
      flex-direction: column;
      gap: 15px;
      align-items: stretch;
      justify-content: center;
      margin-top: 0;
      width: 100% !important;
      padding: 0px;
    }
  
    .wpws_registration_widget form .wpws-field-wrapper {
      flex: 1 1 100%;
      margin: 0 !important;
      min-width: 100%;
      width: 100%;
    }
  
    .wpws_registration_widget input[type="text"],
    .wpws_registration_widget input[type="email"],
    .wpws_registration_widget input[type="password"] {
      width: 100%;
      box-sizing: border-box;
    }
  
    .wpws_registration_widget .wpws-action-button {
      width: 100%;
      height: 48px;
      padding: 0;
      white-space: nowrap;
    }
  
    .wpws-registration-action-button {
      width: 100%;
    }
  
    .wpws_registration_widget .wpws-gdpr-optin {
      width: 100%;
      text-align: left;
      margin-top: 10px;
    }
  
    .wpws-registration-form {
      display: flex;
      flex-direction: column;
      row-gap: 5px;
      width: 100% !important;
    }
  
    .wpws-registration-login-register-link {
      margin-top: 30px;
          margin-left: 30px;
          margin-right: 30px;
          margin-bottom: -90px;
      text-align: center;
    }
  
.wpws-registration-alternate-sessions {
    display: contents;
}
  
    /* Keep calendar hidden */
    .wpws-17.wpws-13.wpws-registration-calendar {
      visibility: hidden;
    }
  
    button.wpws-26 {
      width: 100% !important;
      
    }
  
    /* Mobile label for time selection */
    .wpws-registration-alternate-sessions::before {
      content: "Select Your Time:\A";
      white-space: pre-line;
      color: white;
      display: block;
      font-weight: bold;
      font-size: 16px !important;
      margin-bottom: 0px;
          text-align: center;
    }
  }
  
  body.page-id-9195 .wpws-registration-login-register-link {
      font-size: 25px !important;
      padding-bottom: 10px !important;
		color: white !important;
		
  }

a.register-now-button {
    background: #D8AB18 !important;
}

.eventful .eventful__item {
    transition: all 0.3s;
    background-color: var(--eventful_event_background_color);
    /* box-shadow: var(--eventful_box_shadow); */
    margin: var(--eventful_box_margin);
    border: var(--eventful_event_border);
    border-radius: var(--eventful_event_border_radius);
    padding: var(--event_inner_padding);
    overflow: hidden;
    height: 500px;
}


.sc-crhfPb.kPYTFI {
    background-color: #D8AB18 !important;
}
.sc-iUwfNp.jMZYPF {
    background-color: #004750 !important;
}
.sc-hKinHC.dsHuar {
    color: #004750 !important;
}
.sc-kWtpeL.ihunWD {
    color: #004750 !important;
}
.sc-doqphf.fMYPKA {
    color: #004750 !important;
}
.sc-gcUDKN.fmkHvw.wpws-registration-main {
    border-top: #004750 !important;
}

.sc-iUwfNp.jMZYPF {
    background-color: #004750 !important;
}
.sc-hKinHC.dsHuar {
    color: #004750 !important;
}
.sc-doqphf.fMYPKA {
    color: #004750 !important;
}
.sc-kWtpeL.ihunWD {
    color: #004750 !important;
}
.sc-crhfPb.kPYTFI {
    background-color: #D8AB18 !important;
}

.elementor-add-to-cart.elementor-product-webinar {
    display: none;
}



/* Webinar Checkout */

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained {
    background-color: #D8AB18;
    color: white;
}
button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained {
    background-color: #D8AB18;
    color: white;
    border-color: #D8AB18;
}

.wpws-registration-login-register-link {
    color: white !important;
    font-size: 18px !important;
    font-family: 'Montserrat';
}

.sc-iUwfNp.jMZYPF {
    background-color: #004750 !important;
}
.sc-kWtpeL.ihunWD {
    color: #004750 !important;
}
.sc-doqphf.fMYPKA {
    color: #004750 !important;
}
.sc-hKinHC.dsHuar {
    color: #004750 !important;
}
.sc-crhfPb.kPYTFI {
    background-color: #D8AB18 !important;
}

@media (max-width: 767px) {
    .elementor-1012 .elementor-element.elementor-element-a1a887b .elementor-tab-title {
        font-family: "Roboto", Sans-serif;
        font-weight: 600;
        color: #ffffff;
        background-color: #004750;
    }
}

a.pum-cta {
    background-color: #D8AB18;
    padding: 13px;
    border-radius: 10px;
    color: white;
}
div#popmake-11353{
    padding-top: 50px;
    padding-bottom: 50px;
}

.woocommerce div.product p.price ins, .woocommerce div.product span.price ins{
	text-decoration: auto;
}


/* Hide Additional information column */
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    display: none !important;
}

/* Make Billing details 100% width */
.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
}

.woocommerce-gift-fields {
    background: #f8f9fa;
    border: 2px solid #D8AB18;
    border-radius: 8px;
    padding: 20px 20px 80px 20px !important;
}

/* Each gift item */
.gift-item-fields {
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 15px;
    margin-bottom: 15px !important;
}

.gift-item-fields:last-child {
    margin-bottom: 10px !important;
		padding-bottom: 0px;
}

/* Mobile: Stack gift fields vertically */
@media (max-width: 768px) {
    .gift-item-fields .form-row-first,
    .gift-item-fields .form-row-last {
        float: none !important;
        width: 100% !important;
        margin-right: 0 !important;
        margin-bottom: 15px !important;
    }
.woocommerce-gift-fields {
    background: #f8f9fa;
    border: 2px solid #D8AB18;
    border-radius: 8px;
    padding: 20px 20px 20px 20px !important;
}
	}


.wc-gift-toggle-container {
    background: #f8f9fa;
    border: 2px solid #D8AB18 !important;
    border-radius: 8px;
    padding: 15px;
    margin: 20px 0;
    padding-bottom: 80px !important;
}


.eventful .eventful__item__readmore a {
    font-size: 0; /* hide original text */
    font-family: Montserrat, sans-serif;
}

.eventful .eventful__item__readmore a::after {
    content: "Learn More";
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    color: rgb(255, 255, 255);
    display: inline-block;
	
}


/* Gift This course Hide from the checkout via custom css */
.wc-gift-toggle-container {
    background: #f8f9fa;
    border: 2px solid #D8AB18 !important;
    border-radius: 8px;
    padding: 15px;
    margin: 20px 0;
    display: none;
}

button.wpws-55 {
    margin-top: -13px;
}

.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-disabled {
    display: none !important;
}

.wc-app-subscription-container {
    background: #f8f9fa;
    border: 2px solid #004750 !important;
    border-radius: 8px;
    padding: 15px;
    margin: 20px 0;
    display: none;
}

/* =========================================================
   PHASE 1 — Site-wide product checkout redesign (CSS only)
   Brand: teal #004750 · gold #D8AB18
   Scope: all single product pages (BIL, fundamentals, BIC, MIC, albums…).
   Variation styles only apply where .variations_form exists.
   ========================================================= */
body.single-product {
  --yl-teal: #004750;
  --yl-gold: #D8AB18;
  --yl-gold-soft: #f7efd4;
  --yl-cream: #f4efe6;
  --yl-bg: #f3f4f6;
  --yl-card: #ffffff;
  --yl-input: #F7F5F0; /* isabelline — billing fields match mockup */
  --yl-radius: 16px;
  --yl-radius-sm: 10px;
  --yl-shadow: 0 8px 28px rgba(0, 71, 80, 0.08);
}

/* Page atmosphere */
body.single-product .site-content,
body.single-product .elementor-location-single {
  background: var(--yl-bg);
}

/* ---------- LEFT: product column (no card bg — only image stage is tinted) ---------- */
body.single-product .elementor-element-73941bb7 {
  background: transparent !important;
  background-color: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

body.single-product .elementor-element-73941bb7 > .elementor-widget-wrap {
  background: transparent !important;
  box-shadow: none !important;
}

/* BIC: wider left column so date + “Live cohort” stay on one line
   Breakpoint 768 — Elementor preview/desktop often < 1025px wide */
@media (min-width: 768px) {
  body.postid-67 .elementor-element-28137b44 > .elementor-container {
    display: flex !important;
    align-items: flex-start !important;
    gap: 24px !important;
  }

  body.postid-67 .elementor-element-73941bb7.elementor-column,
  body.postid-67 .elementor-element-73941bb7 {
    width: 48% !important;
    max-width: 48% !important;
    min-width: 360px !important;
    flex: 1 1 48% !important;
  }

  body.postid-67 .elementor-element-33cc2620.elementor-column,
  body.postid-67 .elementor-element-33cc2620 {
    width: 52% !important;
    max-width: 52% !important;
    flex: 1 1 52% !important;
  }
}

/* Featured image stage + breathing rings (mockup .product-visual / .breath-rings) */
body.single-product .woocommerce-product-gallery {
  position: relative !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
  background: linear-gradient(160deg, #F3EBCF 0%, #F7F5F0 100%) !important;
  aspect-ratio: 4 / 3.1;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 36px 28px !important;
  box-sizing: border-box !important;
  box-shadow: 0 1px 2px rgba(0, 71, 80, 0.04), 0 12px 32px -16px rgba(0, 71, 80, 0.14) !important;
}

body.single-product .woocommerce-product-gallery__wrapper {
  position: relative !important;
  z-index: 2 !important;
  width: 64% !important;
  max-width: 420px !important;
  margin: 0 auto !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 48px -20px rgba(0, 71, 80, 0.35) !important;
  background: #fff !important;
}

body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery__image a {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-product-gallery__image img.wp-post-image,
body.single-product .woocommerce-product-gallery__image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border-radius: 14px !important;
}

/* Hide gallery chrome that fights the mockup stage */
body.single-product .woocommerce-product-gallery__trigger {
  z-index: 4 !important;
}
body.single-product .flex-control-thumbs,
body.single-product .woocommerce-product-gallery ol.flex-control-nav {
  display: none !important;
}

/* Concentric “wave” rings behind the photo */
body.single-product .yl-breath-rings {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

body.single-product .yl-breath-rings .yl-ring {
  position: absolute !important;
  border-radius: 50% !important;
  border: 1px solid rgba(0, 71, 80, 0.1) !important;
  box-sizing: border-box !important;
  animation: yl-breathe 7s ease-in-out infinite !important;
}

body.single-product .yl-breath-rings .yl-r1 {
  width: 120px !important;
  height: 120px !important;
  animation-delay: 0s !important;
}

body.single-product .yl-breath-rings .yl-r2 {
  width: 200px !important;
  height: 200px !important;
  animation-delay: 0.8s !important;
  border-color: rgba(216, 171, 24, 0.22) !important;
}

body.single-product .yl-breath-rings .yl-r3 {
  width: 290px !important;
  height: 290px !important;
  animation-delay: 1.6s !important;
}

body.single-product .yl-breath-rings .yl-r4 {
  width: min(380px, 92%) !important;
  height: min(380px, 92%) !important;
  aspect-ratio: 1 / 1;
  animation-delay: 2.4s !important;
  border-color: rgba(0, 71, 80, 0.06) !important;
}

@keyframes yl-breathe {
  0%,
  100% {
    transform: scale(0.94);
    opacity: 0.55;
  }
  50% {
    transform: scale(1.05);
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.single-product .yl-breath-rings .yl-ring {
    animation: none !important;
    opacity: 0.7 !important;
    transform: none !important;
  }
}

@media (max-width: 767px) {
  body.single-product .woocommerce-product-gallery__wrapper {
    width: 78% !important;
  }

  body.single-product .yl-breath-rings .yl-r1 {
    width: 90px !important;
    height: 90px !important;
  }
  body.single-product .yl-breath-rings .yl-r2 {
    width: 150px !important;
    height: 150px !important;
  }
  body.single-product .yl-breath-rings .yl-r3 {
    width: 210px !important;
    height: 210px !important;
  }
  body.single-product .yl-breath-rings .yl-r4 {
    width: min(280px, 90%) !important;
    height: min(280px, 90%) !important;
  }
}

body.single-product span.onsale {
  background: var(--yl-teal) !important;
  color: #F3D66C !important;
  border-radius: 999px !important;
  min-width: auto !important;
  min-height: auto !important;
  width: auto !important;
  height: auto !important;
  line-height: 1.2 !important;
  padding: 7px 13px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  left: 18px !important;
  top: 18px !important;
  right: auto !important;
  z-index: 3 !important;
}

body.single-product .product_title,
body.single-product .elementor-widget-woocommerce-product-title .product_title,
body.single-product .product_title,
body.single-product .elementor-widget-woocommerce-product-title .product_title {
  color: var(--yl-teal) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

body.single-product p.price {
  display: flex !important;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  margin: 12px 0 8px !important;
}

body.single-product p.price del {
  opacity: 0.55;
  font-size: 16px !important;
  order: 1;
}

body.single-product p.price del .amount {
  color: #8a9396 !important;
  text-decoration: line-through;
}

body.single-product p.price ins {
  text-decoration: none !important;
  order: 2;
}

body.single-product p.price ins .amount {
  color: var(--yl-gold) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
}

/* Fundamentals: hide catalog base price — user sets amount via slider.
   Target p.price, Elementor price widget, and span.woocommerce-Price-amount.amount
   in the product summary. Do NOT hide checkout / order-review totals. */
body.single-product.postid-70 p.price,
body.single-product.postid-3932 p.price,
body.single-product.postid-4169 p.price,
body.single-product.postid-4177 p.price,
body.single-product.postid-4185 p.price,
body.single-product.postid-4190 p.price,
body.single-product.postid-4193 p.price,
body.single-product.postid-70 .elementor-widget-woocommerce-product-price,
body.single-product.postid-3932 .elementor-widget-woocommerce-product-price,
body.single-product.postid-4169 .elementor-widget-woocommerce-product-price,
body.single-product.postid-4177 .elementor-widget-woocommerce-product-price,
body.single-product.postid-4185 .elementor-widget-woocommerce-product-price,
body.single-product.postid-4190 .elementor-widget-woocommerce-product-price,
body.single-product.postid-4193 .elementor-widget-woocommerce-product-price,
body.single-product.postid-70 .summary .price,
body.single-product.postid-3932 .summary .price,
body.single-product.postid-4169 .summary .price,
body.single-product.postid-4177 .summary .price,
body.single-product.postid-4185 .summary .price,
body.single-product.postid-4190 .summary .price,
body.single-product.postid-4193 .summary .price,
body.single-product.postid-70 .entry-summary .price,
body.single-product.postid-3932 .entry-summary .price,
body.single-product.postid-4169 .entry-summary .price,
body.single-product.postid-4177 .entry-summary .price,
body.single-product.postid-4185 .entry-summary .price,
body.single-product.postid-4190 .entry-summary .price,
body.single-product.postid-4193 .entry-summary .price {
  display: none !important;
}

/* Explicit catalog amount spans (user report: span.woocommerce-Price-amount.amount) */
body.single-product.postid-70 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 .summary span.woocommerce-Price-amount.amount,
body.single-product.postid-70 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 .entry-summary span.woocommerce-Price-amount.amount,
body.single-product.postid-70 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 .elementor-widget-woocommerce-product-price span.woocommerce-Price-amount.amount,
body.single-product.postid-70 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 p.price span.woocommerce-Price-amount.amount,
body.single-product.postid-70 .product > .price span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 .product > .price span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 .product > .price span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 .product > .price span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 .product > .price span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 .product > .price span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 .product > .price span.woocommerce-Price-amount.amount {
  display: none !important;
}

/* Keep checkout / Pay Now totals visible on fundamentals */
body.single-product.postid-70 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 #custom-checkout-section span.woocommerce-Price-amount.amount,
body.single-product.postid-70 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 #order_review span.woocommerce-Price-amount.amount,
body.single-product.postid-70 #payment span.woocommerce-Price-amount.amount,
body.single-product.postid-3932 #payment span.woocommerce-Price-amount.amount,
body.single-product.postid-4169 #payment span.woocommerce-Price-amount.amount,
body.single-product.postid-4177 #payment span.woocommerce-Price-amount.amount,
body.single-product.postid-4185 #payment span.woocommerce-Price-amount.amount,
body.single-product.postid-4190 #payment span.woocommerce-Price-amount.amount,
body.single-product.postid-4193 #payment span.woocommerce-Price-amount.amount {
  display: inline !important;
}

/* ---------- LEFT: date / variation panel (match yogalap-checkout mockup) ---------- */
/* CRITICAL: never hide table.variations — WVS swatches live inside it */
body.single-product table.variations,
body.single-product form.variations_form table.variations {
  display: table !important;
  width: 100% !important;
  margin-top: 18px !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  opacity: 1 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

body.single-product form.variations_form,
body.single-product .elementor-widget-woocommerce-product-add-to-cart,
body.single-product .elementor-add-to-cart {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  visibility: visible !important;
  overflow: visible !important;
}

/* One teal card wrapping label + options */
body.single-product form.variations_form table.variations tbody,
body.single-product form.variations_form table.variations tr {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-spacing: 0 !important;
}

body.single-product form.variations_form table.variations th.label,
body.single-product form.variations_form table.variations td.value,
body.single-product .woocommerce div.product form.cart .variations td,
body.single-product .woocommerce div.product form.cart .variations th {
  display: block !important;
  width: 100% !important;
  background: var(--yl-teal) !important;
  border: 0 !important;
  color: #fff !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  vertical-align: top !important;
}

body.single-product form.variations_form table.variations th.label {
  border-radius: 14px 14px 0 0 !important;
  padding: 22px 18px 10px !important;
}

body.single-product form.variations_form table.variations td.value {
  border-radius: 0 0 14px 14px !important;
  padding: 0 18px 22px !important;
  margin-top: -1px !important; /* kill hairline gap between th/td */
}

/* Seamless single card — no cream strip between title and options */
body.single-product form.variations_form table.variations {
  background: var(--yl-teal) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border-spacing: 0 !important;
}

/* Replace mashed Woo label with mockup title + copy */
body.single-product form.variations_form .variations .label label,
body.single-product .woocommerce form.cart table.variations label,
body.single-product .elementor form.cart table.variations label {
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  display: block !important;
}

body.single-product form.variations_form .variations .label label::before {
  content: "Select your start date";
  display: block !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #ffffff !important;
  margin-bottom: 6px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.single-product form.variations_form .variations .label label::after {
  content: "Starting dates apply to live sessions. You receive immediate access to the course material after purchase.";
  display: block !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: rgba(243, 235, 207, 0.75) !important; /* parchment muted */
  margin-bottom: 4px !important;
}

/* Hide “: Saturday …” selected suffix — options already show the choice */
body.single-product span.woo-selected-variation-item-name {
  display: none !important;
}

body.single-product .variable-items-wrapper {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  row-gap: 10px !important;
  width: 100% !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  list-style: none !important;
}

body.single-product .variable-item,
body.single-product .variable-item.button-variable-item,
body.single-product li.variable-item {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  position: relative !important;
  box-sizing: border-box !important;
}

/* Option card — one horizontal row: date | tag | gold (mockup .date-opt)
   WVS defaults to flex-direction:column — must force row or tag/dot stack */
body.single-product .variable-item .variable-item-contents,
body.single-product .variable-item-contents {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: 13px 16px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(247, 245, 240, 0.18) !important;
  background: rgba(247, 245, 240, 0.04) !important;
  color: #ffffff !important;
  transition: border-color 0.18s ease, background 0.18s ease !important;
  height: auto !important;
  min-height: 48px !important;
  position: relative !important;
  cursor: pointer !important;
}

body.single-product .variable-item.selected .variable-item-contents {
  border-color: var(--yl-gold) !important;
  background: rgba(216, 171, 24, 0.12) !important;
  color: #ffffff !important;
}

body.single-product .variable-item:hover .variable-item-contents {
  border-color: rgba(216, 171, 24, 0.5) !important;
}

/* Date text — left, single line (override legacy width:300px rule above) */
body.single-product span.variable-item-span.variable-item-span-button,
body.single-product .variable-item .variable-item-span {
  flex: 1 1 auto !important;
  order: 1 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  display: block !important;
  box-sizing: border-box !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: left !important;
  font-weight: 500 !important;
  font-size: 13.5px !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.single-product .variable-item.selected span.variable-item-span.variable-item-span-button,
body.single-product .variable-item.selected .variable-item-span,
body.single-product span.variable-item-span.variable-item-span-button.selected,
body.single-product .variable-item:hover .variable-item-span {
  background: transparent !important;
  background-color: transparent !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Tag (.tag-small) — ::before so ::after can be the gold radio like the mockup */
body.single-product .variable-item-contents::before {
  content: "" !important;
  order: 2 !important;
  flex: 0 0 auto !important;
  align-self: center !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  position: static !important;
  transform: none !important;
  font-size: 10.5px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: rgba(247, 245, 240, 0.55) !important;
  white-space: nowrap !important;
}

body.single-product .variable-item[data-value="self-study-no-live-sessions"] .variable-item-contents::before,
body.single-product .variable-item.button-variable-item-self-study-no-live-sessions .variable-item-contents::before {
  content: "" !important;
}

/* Gold radio — same row as text (mockup .date-opt.selected::after) */
body.single-product .variable-item.selected .variable-item-contents::after {
  content: "" !important;
  order: 3 !important;
  flex: 0 0 8px !important;
  align-self: center !important;
  display: block !important;
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  min-height: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--yl-gold) !important;
  box-shadow: none !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  transform: none !important;
}

body.single-product .variable-item:not(.selected) .variable-item-contents::after {
  content: none !important;
  display: none !important;
}

/* Mobile: name on top (left); tag left on row 2; gold dot right-middle */
@media (max-width: 767px) {
  body.single-product .variable-item .variable-item-contents,
  body.single-product .variable-item-contents {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto auto !important;
    align-items: center !important;
    justify-content: unset !important;
    flex-direction: unset !important;
    flex-wrap: unset !important;
    column-gap: 12px !important;
    row-gap: 8px !important;
    gap: unset !important;
    padding: 14px 16px !important;
  }

  /* Name — top left (column 1 only, so dot can sit on the right) */
  body.single-product span.variable-item-span.variable-item-span-button,
  body.single-product .variable-item .variable-item-span {
    grid-column: 1 !important;
    grid-row: 1 !important;
    order: unset !important;
    flex: unset !important;
    width: auto !important;
    max-width: 100% !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    line-height: 1.35 !important;
  }

  /* Tag — left aligned under the name */
  body.single-product .variable-item-contents::before {
    grid-column: 1 !important;
    grid-row: 2 !important;
    order: unset !important;
    justify-self: start !important;
    align-self: center !important;
    text-align: left !important;
  }

  /* Gold dot — right side of the box, vertically centered */
  body.single-product .variable-item.selected .variable-item-contents::after {
    grid-column: 2 !important;
    grid-row: 1 / -1 !important;
    order: unset !important;
    align-self: center !important;
    justify-self: end !important;
    margin: 0 !important;
  }
}

/* ---------- RIGHT: checkout column ---------- */
body.single-product #custom-checkout-section {
  display: flex;
  flex-direction: column;
  gap: 0; /* explicit card margins — avoid double gap under coupon */
}

/* Empty notices wrapper was adding a flex gap under the coupon bar */
body.single-product #custom-checkout-section > .woocommerce-notices-wrapper:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}

/* Coupon bar — match mockup .coupon-row (parchment + diamond icon)
   Bottom gap = same as Billing → Your order (20px) */
body.single-product .woocommerce-form-coupon-toggle {
  margin: 0 0 20px !important;
}

body.single-product .woocommerce-form-coupon-toggle .woocommerce-info,
body.single-product .woocommerce-form-coupon-toggle > .woocommerce-info {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  background: #F3EBCF !important; /* parchment */
  background-color: #F3EBCF !important;
  border: 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-radius: 14px !important;
  color: var(--yl-teal) !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  padding: 16px 20px !important;
  margin: 0 !important;
  box-shadow: none !important;
  position: relative !important;
  list-style: none !important;
}

/* Diamond + center dot icon (replaces WC info icon) */
body.single-product .woocommerce-form-coupon-toggle .woocommerce-info::before {
  content: "" !important;
  display: inline-block !important;
  flex-shrink: 0 !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 12L12 3l9 9-9 9-9-9z' stroke='%23004750' stroke-width='1.5' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2' fill='%23004750'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 16px 16px !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  speak: never;
}

body.single-product .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon,
body.single-product a.showcoupon {
  color: var(--yl-gold) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body.single-product .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon:hover,
body.single-product a.showcoupon:hover {
  text-decoration: underline !important;
}

body.single-product form.checkout_coupon {
  background: var(--yl-card) !important;
  border-radius: var(--yl-radius) !important;
  padding: 16px !important;
  border: 0 !important;
  box-shadow: var(--yl-shadow) !important;
  margin: 0 0 20px !important;
}

/* When coupon form is closed, don’t leave phantom margin in the flex column */
body.single-product form.checkout_coupon[style*="display: none"],
body.single-product form.checkout_coupon[style*="display:none"] {
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product form.checkout_coupon .form-row {
  width: auto !important;
  float: none !important;
  display: inline-block !important;
  vertical-align: middle !important;
  margin: 0 8px 0 0 !important;
  padding: 0 !important;
}

body.single-product form.checkout_coupon #coupon_code {
  background: var(--yl-input) !important;
  border: 1.5px solid rgba(0, 71, 80, 0.14) !important;
  border-radius: var(--yl-radius-sm) !important;
  min-height: 46px !important;
  color: var(--yl-teal) !important;
  padding: 10px 14px !important;
  width: 220px !important;
  max-width: 100% !important;
}

body.single-product form.checkout_coupon button.button,
body.single-product form.checkout_coupon .button {
  background: var(--yl-gold) !important;
  color: var(--yl-teal) !important;
  border: 0 !important;
  border-radius: var(--yl-radius-sm) !important;
  min-height: 46px !important;
  padding: 10px 18px !important;
  font-weight: 700 !important;
  float: none !important;
}

body.single-product form.checkout_coupon button.button:hover {
  filter: brightness(0.97);
}

@media (max-width: 767px) {
  body.single-product form.checkout_coupon .form-row {
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px !important;
  }

  body.single-product form.checkout_coupon #coupon_code {
    width: 100% !important;
  }

  body.single-product form.checkout_coupon button.button {
    width: 100% !important;
  }
}

/* Billing card — match yogalap-checkout mockup */
body.single-product .woocommerce-billing-fields {
  background: var(--yl-card);
  border-radius: var(--yl-radius);
  padding: 22px 22px 20px;
  box-shadow: var(--yl-shadow);
  margin-bottom: 20px;
}

body.single-product .woocommerce-billing-fields h3,
body.single-product #order_review_heading {
  color: var(--yl-teal) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  margin: 0 0 22px !important;
  border: 0 !important;
  padding: 0 !important;
}

body.single-product #order_review_heading {
  background: var(--yl-card);
  border-radius: var(--yl-radius) var(--yl-radius) 0 0;
  padding: 22px 22px 0 !important;
  margin: 0 !important;
  box-shadow: none;
}

/* 2-col grid: First|Last, Email|Country — like mockup .field-row */
body.single-product .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: start;
}

body.single-product .woocommerce-billing-fields__field-wrapper::after,
body.single-product .woocommerce-billing-fields__field-wrapper::before {
  display: none !important;
  content: none !important;
}

/* Kill Woo float layout inside billing */
body.single-product .woocommerce-billing-fields .form-row,
body.single-product .woocommerce-billing-fields p.form-row {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
  box-sizing: border-box !important;
}

/* Everything except the four primary fields spans full width */
body.single-product .woocommerce-billing-fields__field-wrapper > *:not(.form-row-first):not(.form-row-last):not(#billing_email_field):not(#billing_country_field) {
  grid-column: 1 / -1;
}

body.single-product .woocommerce-billing-fields .form-row label,
body.single-product .woocommerce-billing-fields label {
  color: var(--yl-teal) !important;
  opacity: 0.75;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-billing-fields .required,
body.single-product .woocommerce-billing-fields abbr.required {
  color: var(--yl-gold) !important;
  opacity: 1 !important;
  text-decoration: none !important;
  border: 0 !important;
  font-weight: 700 !important;
}

body.single-product .woocommerce-billing-fields .optional {
  opacity: 0.65;
  font-weight: 500 !important;
}

/* Inputs / selects — same fixed height (select padding+min-height was making country taller) */
body.single-product .woocommerce-billing-fields .form-row input.input-text,
body.single-product .woocommerce-billing-fields .form-row textarea,
body.single-product .woocommerce-billing-fields .form-row select,
body.single-product .woocommerce-billing-fields .form-row .select2-selection,
body.single-product .woocommerce-billing-fields input.input-text,
body.single-product .woocommerce-billing-fields textarea,
body.single-product .woocommerce-billing-fields select,
body.single-product .woocommerce-billing-fields .select2-selection--single,
body.single-product .woocommerce-billing-fields #billing_country,
body.single-product .woocommerce-billing-fields select.country_to_state,
body.single-product .woocommerce-billing-fields select.country_select {
  font-family: "Montserrat", sans-serif !important;
  background-color: var(--yl-input) !important;
  border: 1.5px solid rgba(0, 71, 80, 0.14) !important;
  border-radius: var(--yl-radius-sm) !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 14px !important;
  box-shadow: none !important;
  color: var(--yl-teal) !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  line-height: 45px !important; /* height − borders — keeps text vertically centered */
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  outline: none !important;
  transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  vertical-align: middle !important;
}

body.single-product .woocommerce-billing-fields .form-row textarea {
  height: auto !important;
  min-height: 96px !important;
  max-height: none !important;
  padding: 12px 14px !important;
  line-height: 1.4 !important;
}

body.single-product .woocommerce-billing-fields .select2-container {
  width: 100% !important;
}

body.single-product .woocommerce-billing-fields .select2-container .select2-selection--single {
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
}

body.single-product .woocommerce-billing-fields .select2-selection__rendered {
  color: var(--yl-teal) !important;
  padding: 0 !important;
  line-height: 45px !important;
  display: block !important;
}

body.single-product .woocommerce-billing-fields .select2-selection__arrow {
  height: 46px !important;
  top: 1px !important;
  right: 10px !important;
}

/* Native country <select> — chevron only; do not add vertical padding */
body.single-product .woocommerce-billing-fields select,
body.single-product .woocommerce-billing-fields #billing_country,
body.single-product .woocommerce-billing-fields select.country_to_state,
body.single-product .woocommerce-billing-fields select.country_select {
  background-color: var(--yl-input) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23004750' d='M1.4 0.6L6 5.2 10.6 0.6 12 2 6 8 0 2z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 12px 8px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 14px !important;
  padding-right: 36px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  line-height: 45px !important;
}

body.single-product .woocommerce-billing-fields .form-row input.input-text:focus,
body.single-product .woocommerce-billing-fields .form-row textarea:focus,
body.single-product .woocommerce-billing-fields input.input-text:focus,
body.single-product .woocommerce-billing-fields textarea:focus,
body.single-product .woocommerce-billing-fields .select2-container--open .select2-selection--single,
body.single-product .woocommerce-billing-fields .select2-container--focus .select2-selection--single {
  border-color: var(--yl-gold) !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(216, 171, 24, 0.15) !important;
}

body.single-product .woocommerce-billing-fields .form-row select:focus,
body.single-product .woocommerce-billing-fields select:focus {
  border-color: var(--yl-gold) !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(216, 171, 24, 0.15) !important;
}

/* Keep coupon / other checkout inputs consistent */
body.single-product .woocommerce form .form-row input.input-text,
body.single-product .woocommerce form .form-row textarea,
body.single-product .woocommerce form .form-row select,
body.single-product .woocommerce form .form-row .select2-selection {
  background: var(--yl-input) !important;
  border: 1.5px solid rgba(0, 71, 80, 0.14) !important;
  border-radius: var(--yl-radius-sm) !important;
  min-height: 48px !important;
  box-shadow: none !important;
  color: var(--yl-teal) !important;
}

body.single-product .woocommerce form .form-row label {
  color: var(--yl-teal) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
}

/* Optional billing toggle — dashed row like mockup .toggle-row
   Default: OFF (fields hidden). Click label → checkbox checked → fields open. */
body.single-product .wc-billing-toggle-container {
  background: transparent !important;
  border: 1.5px dashed rgba(0, 71, 80, 0.2) !important;
  border-radius: var(--yl-radius-sm) !important;
  padding: 14px 16px !important;
  margin: 6px 0 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

body.single-product .wc-billing-toggle-container .billing-toggle-row,
body.single-product .wc-billing-toggle-container > .form-row.billing-toggle-row {
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

body.single-product .billing-toggle-label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  cursor: pointer !important;
  opacity: 1 !important;
  width: 100% !important;
}

/* Visually hide checkbox but keep it clickable via the label */
body.single-product .billing-toggle-checkbox {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  /* do NOT use pointer-events:none — breaks toggle */
}

body.single-product .billing-toggle-text {
  color: var(--yl-teal) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  opacity: 1 !important;
  line-height: 1.3 !important;
  cursor: pointer !important;
}

body.single-product .billing-toggle-text::before {
  content: "＋ ";
  font-weight: 700;
}

body.single-product .wc-billing-toggle-container:has(.billing-toggle-checkbox:checked) .billing-toggle-text::before {
  content: "− ";
}

body.single-product .wc-billing-toggle-container:has(.billing-toggle-checkbox:checked) {
  border-style: solid !important;
  border-color: rgba(0, 71, 80, 0.18) !important;
}

/* Default OFF — always hidden unless checkbox is checked
   (overrides earlier display:grid !important that kept fields stuck open) */
body.single-product .billing-details-wrapper,
body.single-product #billing-details-wrapper {
  display: none !important;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(0, 71, 80, 0.1);
}

body.single-product .wc-billing-toggle-container:has(.billing-toggle-checkbox:checked) .billing-details-wrapper,
body.single-product .wc-billing-toggle-container:has(.billing-toggle-checkbox:checked) #billing-details-wrapper,
body.single-product #show_billing_details:checked ~ .billing-details-wrapper,
body.single-product #show_billing_details:checked ~ #billing-details-wrapper {
  display: grid !important;
}

body.single-product .billing-details-wrapper .form-row {
  width: 100% !important;
}

@media (max-width: 767px) {
  body.single-product .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr;
  }

  body.single-product .woocommerce-billing-fields__field-wrapper > * {
    grid-column: 1 / -1 !important;
  }
}

/* Order + payment card */
body.single-product #order_review {
  background: var(--yl-card);
  border-radius: 0 0 var(--yl-radius) var(--yl-radius);
  padding: 8px 22px 22px;
  box-shadow: var(--yl-shadow);
  margin-top: 0 !important;
}

/* Join heading + review into one visual card */
body.single-product #order_review_heading + #order_review {
  margin-top: -2px !important;
}

body.single-product .woocommerce-checkout-review-order-table {
  border: 0 !important;
  margin-bottom: 18px !important;
}

body.single-product .woocommerce-checkout-review-order-table th,
body.single-product .woocommerce-checkout-review-order-table td,
body.single-product .woocommerce-checkout-review-order-table th,
body.single-product .woocommerce-checkout-review-order-table td {
  border: 0 !important;
  border-bottom: 1px solid #eef1f2 !important;
  padding: 12px 4px !important;
  color: var(--yl-teal);
  background: transparent !important;
}

body.single-product .woocommerce-checkout-review-order-table thead th {
  font-size: 11px !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8a9396 !important;
  font-weight: 700 !important;
}

body.single-product .woocommerce-checkout-review-order-table .order-total th,
body.single-product .woocommerce-checkout-review-order-table .order-total td,
body.single-product .woocommerce-checkout-review-order-table .order-total th,
body.single-product .woocommerce-checkout-review-order-table .order-total td {
  border-bottom: 0 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--yl-teal) !important;
  padding-top: 16px !important;
}

body.single-product .woocommerce-checkout-review-order-table .order-total .amount,
body.single-product #order_review .amount,
body.single-product .woocommerce-checkout-review-order-table .order-total .amount,
body.single-product #order_review .amount {
  color: var(--yl-gold) !important;
}

/* Payment methods — match mockup .pay-opt tiles */
body.single-product #payment {
  background: transparent !important;
  border-radius: 0 !important;
  color: var(--yl-teal) !important;
  padding: 0 !important;
}

body.single-product #payment ul.payment_methods {
  border: 0 !important;
  border-top: 1.5px solid rgba(0, 71, 80, 0.09) !important; /* divider above Payment method */
  padding: 28px 0 0 !important;
  margin: 28px 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  list-style: none !important;
}

/* “Payment method” heading (Woo has none by default) */
body.single-product #payment ul.payment_methods::before {
  content: "Payment method";
  display: block;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
  color: var(--yl-teal) !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

/* Secure note after all payment tiles (mockup .secure-note) */
body.single-product #payment ul.payment_methods::after {
  content: "Secure payments provided by Mollie";
  display: flex !important;
  align-items: center !important;
  margin: 8px 0 0 !important; /* + flex gap ≈ 18px under last tile */
  padding: 0 0 0 21px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  color: var(--yl-teal) !important;
  opacity: 0.55 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 2l8 4v6c0 5-3.5 8.5-8 10-4.5-1.5-8-5-8-10V6l8-4z' stroke='%23004750' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: 13px 13px !important;
}

body.single-product #payment ul.payment_methods li.wc_payment_method {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(0, 71, 80, 0.12) !important;
  border-radius: var(--yl-radius-sm) !important;
  padding: 15px 18px !important;
  margin: 0 !important;
  list-style: none !important;
  transition: border-color 0.15s ease, background 0.15s ease !important;
  position: relative !important;
  box-sizing: border-box !important;
}

body.single-product #payment ul.payment_methods li.wc_payment_method:hover {
  border-color: rgba(0, 71, 80, 0.22) !important;
}

body.single-product #payment ul.payment_methods li.wc_payment_method:has(> input:checked) {
  border-color: var(--yl-gold) !important;
  background: rgba(216, 171, 24, 0.06) !important;
}

/* Visually hide native radio but KEEP it clickable.
   pointer-events:none broke WooCommerce: payment_method_selected never ran,
   so update_checkout always restored Card and other methods looked "stuck". */
body.single-product #payment ul.payment_methods li > input.input-radio {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  opacity: 0 !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  z-index: 3 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

body.single-product #payment ul.payment_methods li > label {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--yl-teal) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  cursor: pointer !important;
}

body.single-product #payment ul.payment_methods li > label::before {
  content: "" !important;
  flex-shrink: 0 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  border: 1.5px solid rgba(0, 71, 80, 0.3) !important;
  background: transparent !important;
  box-sizing: border-box !important;
  transition: border-color 0.15s ease, background 0.15s ease !important;
}

body.single-product #payment ul.payment_methods li:has(> input:checked) > label::before {
  border-color: var(--yl-gold) !important;
  background: radial-gradient(circle, var(--yl-gold) 0 4.5px, transparent 5px) !important;
}

/* Gateway icons / badges to the right */
body.single-product #payment ul.payment_methods li label .mollie-gateway-icon,
body.single-product #payment ul.payment_methods li label img {
  margin-left: auto !important;
  max-height: 22px !important;
  width: auto !important;
  flex-shrink: 0 !important;
}

/* Payment box — hide in-tile Mollie secure line (shown once under all methods) */
body.single-product #payment div.payment_box {
  flex: 1 1 100% !important;
  width: 100% !important;
  background: transparent !important;
  color: rgba(0, 71, 80, 0.55) !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

body.single-product #payment div.payment_box::before {
  display: none !important;
}

/* Card = Mollie hosted redirect — never show embedded Components fields */
body.single-product #payment .payment_method_mollie_wc_gateway_creditcard .payment_box,
body.single-product #payment .payment_method_mollie_wc_gateway_creditcard .mollie-components,
body.single-product #payment .payment_method_mollie_wc_gateway_creditcard .mollie-components-description,
body.single-product #payment .mollie-components,
body.single-product #payment .mollie-components-description {
  display: none !important;
}

/* Hide long privacy blurb — mockup goes terms → place order */
body.single-product .woocommerce-privacy-policy-text {
  display: none !important;
}

body.single-product .woocommerce-terms-and-conditions-wrapper {
  color: var(--yl-teal);
  margin: 26px 0 22px !important;
  padding: 0 !important;
}

body.single-product .woocommerce-terms-and-conditions-wrapper .form-row.validate-required {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  float: none !important;
  width: 100% !important;
}

body.single-product .woocommerce-terms-and-conditions-wrapper label.checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--yl-teal) !important;
  opacity: 0.85;
  line-height: 1.5 !important;
  cursor: pointer !important;
}

body.single-product .woocommerce-terms-and-conditions-wrapper #terms,
body.single-product .woocommerce-terms-and-conditions-wrapper input.input-checkbox {
  margin-top: 3px !important;
  flex-shrink: 0 !important;
  width: 16px !important;
  height: 16px !important;
  accent-color: var(--yl-gold) !important;
  cursor: pointer !important;
}

body.single-product .woocommerce-terms-and-conditions-checkbox-text {
  color: var(--yl-teal) !important;
}

body.single-product a.woocommerce-terms-and-conditions-link,
body.single-product a.woocommerce-privacy-policy-link {
  color: var(--yl-gold) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body.single-product a.woocommerce-terms-and-conditions-link:hover {
  text-decoration: underline !important;
}

body.single-product .woocommerce-terms-and-conditions-wrapper abbr.required {
  color: var(--yl-gold) !important;
  text-decoration: none !important;
  border: 0 !important;
  font-weight: 700 !important;
}

body.single-product .form-row.place-order {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Place order — full-width gold CTA */
body.single-product #payment #place_order,
body.single-product #place_order {
  float: none !important;
  width: 100% !important;
  background: var(--yl-gold) !important;
  color: var(--yl-teal) !important;
  border: 0 !important;
  border-radius: 14px !important;
  min-height: 56px !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  padding: 18px 20px !important;
  margin: 0 !important;
  box-shadow: 0 12px 28px -12px rgba(216, 171, 24, 0.55) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
  cursor: pointer !important;
}

body.single-product #payment #place_order:hover,
body.single-product #place_order:hover {
  background: #F3D66C !important;
  filter: none !important;
  transform: translateY(-1px);
  box-shadow: 0 16px 34px -12px rgba(216, 171, 24, 0.65) !important;
}

/* Trust strip under Place order — mockup .trust-strip (3 spaced items) */
body.single-product .form-row.place-order:not(:has(.yl-trust-strip))::after {
  content: "256-bit encryption\2003\2003\2003\2003Money-back guarantee\2003\2003\2003\2003Instant access";
  display: block;
  text-align: center;
  margin: 14px 0 0;
  padding: 0;
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: var(--yl-teal);
  opacity: 0.5;
  line-height: 1.3;
  white-space: normal;
  order: 99;
}

body.single-product .form-row.place-order:has(.yl-trust-strip)::after {
  display: none !important;
  content: none !important;
}

body.single-product .yl-trust-strip {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 36px !important;
  width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
  color: var(--yl-teal) !important;
  opacity: 0.5 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  order: 99;
}

body.single-product .yl-trust-strip span {
  display: inline-block !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  opacity: 1 !important;
}

@media (max-width: 560px) {
  body.single-product .yl-trust-strip {
    gap: 12px 20px !important;
  }
}

/* Gateway icon sizing fallback */
body.single-product #payment .payment_method_mollie_wc_gateway_creditcard img,
body.single-product #payment li.wc_payment_method img {
  max-height: 22px;
  vertical-align: middle;
}

/* Mobile */
@media (max-width: 1024px) {
  body.single-product .elementor-element-73941bb7,
  body.single-product .elementor-element-73941bb7 {
    margin-bottom: 16px;
  }

  body.single-product p.price ins .amount,
  body.single-product p.price ins .amount {
    font-size: 24px !important;
  }

  body.single-product .woocommerce-billing-fields,
  body.single-product #order_review,
  body.single-product .woocommerce-billing-fields,
  body.single-product #order_review {
    padding-left: 16px;
    padding-right: 16px;
  }

  body.single-product #order_review_heading,
  body.single-product #order_review_heading {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
/* ========== END PHASE 1 CHECKOUT REDESIGN ========== */