@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//www.threeleaflearning.com/wp-content/themes/woodmart/fonts/woodmart-font-1-400.woff2?v=8.3.3") format("woff2");
}

@font-face {
	font-family: "star";
	font-weight: 400;
	font-style: normal;
	src: url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"), url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/star.woff") format("woff"), url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/star.ttf") format("truetype"), url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/star.svg#star") format("svg");
}

@font-face {
	font-family: "WooCommerce";
	font-weight: 400;
	font-style: normal;
	src: url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"), url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"), url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"), url("//www.threeleaflearning.com/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");
}

:root {
	--wd-header-banner-h: 160px;
	--wd-text-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(118,118,118);
	--wd-text-font-size: 15px;
	--wd-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: rgb(20,20,20);
	--wd-entities-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-transform: capitalize;
	--wd-entities-title-color: rgb(0,0,0);
	--wd-entities-title-color-hover: rgb(78, 113, 252);
	--wd-alternative-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: rgb(22,22,22);
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(129,215,66);
	--wd-alternative-color: #fbbc34;
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: #83b735;
	--btn-accented-bgcolor-hover: #74a32f;
	--wd-form-brd-width: 2px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: rgb(252,247,90);
	--notices-warning-color: rgb(252,54,40);
	--wd-link-color: rgb(30,115,190);
	--wd-link-color-hover: rgb(39,94,247);
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: rgb(255,255,255);
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-attachment: scroll;
	background-position: center center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
.header-banner {
	background-color: rgba(239,207,0,0.33);
	background-image: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
:is(.woodmart-archive-shop .wd-builder-off,.wd-wishlist-content,.related-and-upsells,.cart-collaterals,.wd-shop-product,.wd-fbt) .wd-products-with-bg, :is(.woodmart-archive-shop .wd-builder-off,.wd-wishlist-content,.related-and-upsells,.cart-collaterals,.wd-shop-product,.wd-fbt) .wd-products-with-bg :is(.wd-product,.wd-cat) {
	--wd-prod-bg:rgb(239,239,239);
	--wd-bordered-bg:rgb(239,239,239);
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(191,212,222);
	background-image: none;
}
html .product-image-summary-wrap .product_title, html .wd-single-title .product_title {
	font-weight: 600;
}
.page .wd-page-content {
	background-color: rgb(255,255,255);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) .wd-page-content {
	background-color: rgb(255,255,255);
	background-image: none;
}
.single-product .wd-page-content {
	background-color: rgb(255,255,255);
	background-image: none;
}
.woodmart-archive-blog .wd-page-content {
	background-color: rgb(255,255,255);
	background-image: none;
}
.single-post .wd-page-content {
	background-color: rgb(255,255,255);
	background-image: none;
}
body, [class*=color-scheme-light], [class*=color-scheme-dark], .wd-search-form[class*="wd-header-search-form"] form.searchform, .wd-el-search .searchform {
	--wd-form-brd-color: rgb(0,0,0);
	--wd-form-brd-color-focus: rgb(129,215,66);
}
.wd-nav-arrows.wd-pos-sep:not(:where(.wd-custom-style)) {
	--wd-arrow-bg: rgb(255,255,255);
}
.wd-nav-pagin-wrap:not(.wd-custom-style) {
	--wd-pagin-bg: rgb(178,178,178);
}
.product-labels .product-label.onsale {
	background-color: rgb(221,51,51);
}
.product-labels .product-label.out-of-stock {
	background-color: rgb(183,183,183);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}

@media (max-width: 1024px) {
	:root {
		--wd-header-banner-h: 180px;
	}

}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 35px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-bottom-active: -1px;
--btn-default-brd-radius: 0px;
--btn-default-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .15);
--btn-default-box-shadow-hover: inset 0 -2px 0 rgba(0, 0, 0, .15);
--btn-accented-bottom-active: -1px;
--btn-accented-brd-radius: 0px;
--btn-accented-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .15);
--btn-accented-box-shadow-hover: inset 0 -2px 0 rgba(0, 0, 0, .15);
--wd-brd-radius: 8px;
}

@media (min-width: 1222px) {
[data-vc-full-width]:not([data-vc-stretch-content]),
:is(.vc_section, .vc_row).wd-section-stretch {
padding-left: calc((100vw - 1222px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
padding-right: calc((100vw - 1222px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
}
}


.wd-page-title {
background-color: rgb(239,239,239);
}

/* Extend Referral System - Referral Link page: make link field readable */
.woocommerce-account .referral-link-wrapper input,
.woocommerce-account input#referral-link,
.woocommerce-account input[name="referral_link"],
.woocommerce-account input[type="text"]{
  width: 100% !important;
  max-width: 520px;
  box-sizing: border-box;
}

/* Make copy button sit nicely */
.woocommerce-account .referral-link-wrapper,
.woocommerce-account .referral-link-wrapper form,
.woocommerce-account .referral-link-wrapper .copy-btn,
.woocommerce-account .referral-link-wrapper button{
  max-width: 520px;
}

/* Mobile: stack input + button */
@media (max-width:768px){
  .woocommerce-account .referral-link-wrapper{
    display:flex;
    flex-direction:column;
    gap:10px;
    align-items:flex-start;
  }
  .woocommerce-account .referral-link-wrapper input{
    max-width: 100% !important;
  }
}
/* =========================================================
   ThreeLeaf - Premium Cart & Checkout (Classic Woo + CURCY)
   COMPLETE WORKING VERSION
   Fixes:
   - Shipping method alignment (radio + label)
   - Single shipping option price "SGD10.00" breaking vertically
   - Premium UI styling for cart + checkout
   ========================================================= */

:root{
  --tl-card:#ffffff;
  --tl-border:rgba(0,0,0,.08);
  --tl-soft:rgba(0,0,0,.04);
  --tl-text:rgba(0,0,0,.85);
  --tl-muted:rgba(0,0,0,.60);
  --tl-radius:16px;
  --tl-shadow:0 10px 28px rgba(0,0,0,.06);
}

/* =========================================================
   A) Shipping methods alignment (KEEP)
   ========================================================= */
.woocommerce ul#shipping_method,
.woocommerce-checkout ul#shipping_method{
  margin:0 !important;
  padding:0 !important;
}

.woocommerce ul#shipping_method li,
.woocommerce-checkout ul#shipping_method li{
  list-style:none;
  display:grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important; /* radio | label */
  column-gap:10px;
  row-gap:6px;
  align-items:start;
  margin:10px 0 !important;
}

.woocommerce ul#shipping_method li input[type="radio"],
.woocommerce-checkout ul#shipping_method li input[type="radio"]{
  margin:3px 0 0 0 !important;
}

/* =========================================================
   A2) Shipping label layout fix (SINGLE / MULTI option stable)
   - Prevent SGD10.00 breaking into vertical letters
   - Keep name wrap, keep price nowrap
   ========================================================= */
.woocommerce ul#shipping_method li label,
.woocommerce-checkout ul#shipping_method li label{
  display:flex !important;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  flex-wrap:wrap;                 /* method name can wrap */
  margin:0 !important;
  min-width:0;
  line-height:1.35;
  word-break:normal !important;   /* STOP character-by-character breaks */
  overflow-wrap:normal !important;
  hyphens:none !important;
}

/* Price elements (Woo + CURCY/WOOCS common) must never wrap */
.woocommerce ul#shipping_method li label .amount,
.woocommerce ul#shipping_method li label .woocommerce-Price-amount,
.woocommerce ul#shipping_method li label .woocommerce-Price-currencySymbol,
.woocommerce ul#shipping_method li label bdi,
.woocommerce ul#shipping_method li label .woocs_price_code,
.woocommerce-checkout ul#shipping_method li label .amount,
.woocommerce-checkout ul#shipping_method li label .woocommerce-Price-amount,
.woocommerce-checkout ul#shipping_method li label .woocommerce-Price-currencySymbol,
.woocommerce-checkout ul#shipping_method li label bdi,
.woocommerce-checkout ul#shipping_method li label .woocs_price_code{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}

/* Push price to the right consistently */
.woocommerce ul#shipping_method li label .woocommerce-Price-amount,
.woocommerce-checkout ul#shipping_method li label .woocommerce-Price-amount,
.woocommerce ul#shipping_method li label .amount,
.woocommerce-checkout ul#shipping_method li label .amount,
.woocommerce ul#shipping_method li label bdi,
.woocommerce-checkout ul#shipping_method li label bdi{
  margin-left:auto !important;
}

/* Soften any small/secondary currency lines */
.woocommerce ul#shipping_method li label small,
.woocommerce-checkout ul#shipping_method li label small{
  opacity:.70;
  font-weight:500;
  font-size:.92em;
  white-space:normal;
}

/* =========================================================
   B) Premium typography + cart table
   ========================================================= */
.woocommerce-cart,
.woocommerce-checkout{
  color:var(--tl-text);
}

.woocommerce-cart .shop_table{
  border:1px solid var(--tl-border);
  border-radius:var(--tl-radius);
  overflow:hidden;
  background:var(--tl-card);
}

.woocommerce-cart .shop_table thead th{
  background:var(--tl-soft);
  color:var(--tl-muted);
  font-weight:700;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:.6px;
}

.woocommerce-cart .shop_table td,
.woocommerce-cart .shop_table th{
  padding:14px 14px;
}

.woocommerce-cart .product-thumbnail img{
  border-radius:12px;
}

/* Coupon layout */
.woocommerce-cart .coupon{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.woocommerce-cart .coupon input.input-text{
  min-width:220px;
}

/* =========================================================
   C) Checkout cards
   ========================================================= */
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2,
.woocommerce-checkout #order_review{
  background:var(--tl-card);
  border:1px solid var(--tl-border);
  border-radius:var(--tl-radius);
  box-shadow:var(--tl-shadow);
}

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{
  padding:18px 18px;
}

.woocommerce-checkout #order_review{
  padding:16px 16px;
}

.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading{
  font-weight:800;
  letter-spacing:.3px;
  margin-bottom:10px;
}

/* =========================================================
   D) Premium form fields
   ========================================================= */
.woocommerce form .form-row{
  margin-bottom:14px;
}

.woocommerce form .form-row label{
  font-weight:700;
  color:var(--tl-muted);
  font-size:13px;
  margin-bottom:6px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  border:1px solid var(--tl-border);
  border-radius:14px;
  padding:12px 14px;
  background:#fff;
  transition:all .15s ease;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(22,122,86,.15);
  border-color:rgba(22,122,86,.35);
}

/* =========================================================
   E) Order review table
   ========================================================= */
.woocommerce-checkout #order_review .shop_table{
  border:none;
}

.woocommerce-checkout #order_review .shop_table th{
  color:var(--tl-muted);
  font-weight:800;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:.6px;
}

.woocommerce-checkout #order_review .shop_table td,
.woocommerce-checkout #order_review .shop_table th{
  padding:12px 10px;
  vertical-align:top;
}

.woocommerce-checkout #order_review .product-name{
  word-break:break-word;
}

.woocommerce-checkout #order_review .order-total td,
.woocommerce-checkout #order_review .order-total th{
  border-top:1px solid var(--tl-border);
  padding-top:14px;
}

/* =========================================================
   F) Payment methods: clearer
   ========================================================= */
.woocommerce-checkout #payment{
  background:transparent;
  border:none;
  margin-top:14px;
}

.woocommerce-checkout #payment ul.payment_methods{
  padding:0;
  margin:0;
  border:none;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.woocommerce-checkout #payment ul.payment_methods li{
  list-style:none;
  border:1px solid var(--tl-border);
  background:#fff;
  border-radius:14px;
  padding:12px 12px;
  transition:all .15s ease;
}

.woocommerce-checkout #payment ul.payment_methods li label{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  cursor:pointer;
  font-weight:800;
  color:var(--tl-text);
  margin:0;
}

.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{
  transform:scale(1.05);
  margin:0 6px 0 0;
}

.woocommerce-checkout #payment ul.payment_methods li label img{
  max-height:22px;
  width:auto;
  border-radius:6px;
}

/* Highlight selected method (modern browsers) */
.woocommerce-checkout #payment ul.payment_methods li:has(input[type="radio"]:checked){
  border-color:rgba(22,122,86,.45);
  box-shadow:0 10px 24px rgba(22,122,86,.10);
}

.woocommerce-checkout #payment div.payment_box{
  margin:10px 0 0 0;
  border-radius:12px;
  background:rgba(0,0,0,.03);
  padding:12px 12px;
  color:var(--tl-muted);
}

/* =========================================================
   G) Place order button
   ========================================================= */
.woocommerce-checkout #place_order{
  border-radius:16px;
  padding:14px 18px;
  font-weight:900;
  letter-spacing:.4px;
}

/* =========================================================
   H) Notices
   ========================================================= */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  border-radius:14px;
  padding:12px 14px;
  margin-bottom:14px;
}

/* =========================================================
   I) Mobile stacking (KEEP)
   ========================================================= */
@media (max-width: 768px){
  .woocommerce-checkout .col2-set,
  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review{
    width:100%;
    float:none;
  }

  .woocommerce-checkout .col2-set .col-1,
  .woocommerce-checkout .col2-set .col-2,
  .woocommerce-checkout #order_review{
    padding:14px 14px;
    box-shadow:none;
  }

  .woocommerce-cart .coupon input.input-text{
    width:100%;
    min-width:0;
  }

  /* On small screens, let shipping price drop below if needed (still no letter-break) */
  .woocommerce ul#shipping_method li label,
  .woocommerce-checkout ul#shipping_method li label{
    flex-wrap:wrap;
  }
}
/* =========================================================
   PAYMENT METHOD – HIGH VISIBILITY SELECTED STATE
   ========================================================= */

/* Base payment card */
.woocommerce-checkout #payment ul.payment_methods li{
  position:relative;
  border:2px solid var(--tl-border);
  background:#fff;
  border-radius:16px;
  padding:14px 14px;
  cursor:pointer;
  transition:all .2s ease;
}

/* Hover = subtle highlight */
.woocommerce-checkout #payment ul.payment_methods li:hover{
  border-color:rgba(22,122,86,.35);
  box-shadow:0 8px 18px rgba(22,122,86,.08);
}

/* Radio button – larger & cleaner */
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{
  transform:scale(1.25);
  accent-color:#167a56; /* modern browsers */
}

/* Label layout */
.woocommerce-checkout #payment ul.payment_methods li label{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  font-weight:800;
  color:var(--tl-text);
  cursor:pointer;
}

/* =========================================================
   SELECTED PAYMENT METHOD (KEY PART)
   ========================================================= */
.woocommerce-checkout
#payment
ul.payment_methods
li:has(input[type="radio"]:checked){

  border-color:#167a56;
  background:rgba(22,122,86,.08);
  box-shadow:
    0 10px 24px rgba(22,122,86,.18),
    inset 0 0 0 1px rgba(22,122,86,.25);
}

/* Optional left indicator bar */
.woocommerce-checkout
#payment
ul.payment_methods
li:has(input[type="radio"]:checked)::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:6px;
  background:#167a56;
  border-radius:16px 0 0 16px;
}

/* Payment description box */
.woocommerce-checkout #payment div.payment_box{
  margin-top:12px;
  background:rgba(22,122,86,.06);
  border-left:4px solid #167a56;
  border-radius:12px;
  padding:12px 14px;
  color:var(--tl-text);
}

