/*
 * woocommercestyle.css
 * Scopes: body.single-product | body.woocommerce-checkout | global basket bar
 * Fonts supplied by Elementor — no @import needed.
 */

/* =====================================================================
   SINGLE PRODUCT — TOKENS & BASE
   ===================================================================== */
body.single-product{
  --forest:#0E3D22;--pine:#155E33;--fern:#2E7D52;--sage:#5FAF82;
  --mist:#D6EBE0;--frost:#EFF7F2;--nhs:#005EB8;--nhs-lt:#E8F1FB;
  --amber:#E8640A;--amber-dk:#C4530A;--amber-lt:#FFF3EB;
  --white:#FFFFFF;--ink:#0F1C14;--ink-2:#2E3D34;--ink-3:#5C6B62;--ink-4:#8FA396;
  --line:#E4EDE8;--line-2:#F0F5F2;--r:10px;--r-xl:20px;
  --card-sh:0 1px 2px rgba(14,61,34,.04),0 4px 16px rgba(14,61,34,.06),0 20px 48px rgba(14,61,34,.07);
  --ease:160ms cubic-bezier(.4,0,.2,1);--spring:240ms cubic-bezier(.34,1.4,.64,1);
  font-family:'Inter',-apple-system,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;background:var(--frost);
}

/* Hide defaults */
body.single-product .woocommerce-breadcrumb,body.single-product .product_meta,
body.single-product .posted_in,body.single-product .tagged_as,
body.single-product .sku_wrapper,body.single-product .related.products,
body.single-product .up-sells.upsells,body.single-product .woocommerce-variation-availability,
body.single-product .reset_variations,body.single-product .ast-woo-product-category,
body.single-product .single-product-category,body.single-product .woocommerce-tabs ul.tabs,
body.single-product .woocommerce-tabs .tabs,body.single-product .woocommerce-tabs #tab-additional_information,
body.single-product .cp-status,body.single-product .cp-progress,
body.single-product .summary .price,body.single-product .woocommerce-variation-price{display:none!important}

/* Always show description inline */
body.single-product .woocommerce-tabs #tab-description{display:block!important;visibility:visible!important;padding:0!important;border:none!important;background:transparent!important;box-shadow:none!important;margin:0!important}
body.single-product .woocommerce-tabs{margin-top:24px}
body.single-product .woocommerce-tabs .panel{padding:0!important;border:none!important;box-shadow:none!important;background:transparent!important}

/* Column layout */
body.single-product div.product{display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;gap:28px!important}
body.single-product div.product>*{display:flex!important;flex-direction:column!important;min-height:0}

/* Gallery card */
body.single-product .woocommerce-product-gallery{background:var(--white);border:1px solid var(--line);border-radius:var(--r-xl);padding:24px;box-shadow:var(--card-sh);box-sizing:border-box;display:flex!important;flex-direction:column;flex:1 1 0!important;min-height:0}
body.single-product .woocommerce-product-gallery::before,body.single-product .woocommerce-product-gallery::after{display:none!important}
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{flex:1;display:flex;align-items:center;justify-content:center}
body.single-product .woocommerce-product-gallery figure.woocommerce-product-gallery__image{overflow:hidden!important;border-radius:var(--r);display:block;width:100%;margin:0;line-height:0}
body.single-product .woocommerce-product-gallery img{display:block;width:100%;height:auto;border-radius:var(--r);transition:transform 340ms cubic-bezier(.25,.46,.45,.94);will-change:transform}
body.single-product .woocommerce-product-gallery figure.woocommerce-product-gallery__image:hover img{transform:scale(1.04)}
body.single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid var(--line)}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li{margin:0}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img{border:2px solid transparent;border-radius:8px;cursor:pointer;opacity:.65;display:block;transition:border-color 180ms,opacity 180ms,transform 180ms}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
body.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover{border-color:var(--fern);opacity:1;transform:scale(1.05)}

/* Details card */
body.single-product div.product .summary,
body.single-product .summary.entry-summary{background:var(--white);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--card-sh);box-sizing:border-box;overflow:hidden;display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-height:0;padding:0}
body.single-product div.product .summary>*,body.single-product .summary.entry-summary>*{padding-left:28px;padding-right:28px}

/* Consultation badge */
body.single-product .cp-badge{display:flex;align-items:center;gap:10px;background:linear-gradient(90deg,var(--forest) 0%,var(--pine) 100%);padding:11px 28px!important;flex-shrink:0}
body.single-product .summary.is-prescription .cp-badge{display:none!important}
body.single-product .cp-badge-dot{width:7px;height:7px;border-radius:50%;background:#4DF099;flex-shrink:0;animation:cp-pulse 2.2s ease infinite}
@keyframes cp-pulse{0%,100%{box-shadow:0 0 0 0 rgba(77,240,153,.5)}50%{box-shadow:0 0 0 5px rgba(77,240,153,0)}}
body.single-product .cp-badge-text{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.9);flex:1}
body.single-product .cp-badge-pill{font-size:.6rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.65);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:3px 10px;white-space:nowrap}

/* NHS bar */
body.single-product .cp-nhs-bar{display:none;align-items:center;gap:12px;background:var(--nhs);padding:14px 28px!important;flex-shrink:0}
body.single-product .summary.is-prescription .cp-nhs-bar{display:flex!important}
body.single-product .cp-nhs-logo{font-size:.9rem;font-weight:900;color:var(--white);background:rgba(255,255,255,.18);border-radius:6px;padding:3px 10px;flex-shrink:0}
body.single-product .cp-nhs-text{font-size:.7rem;font-weight:600;color:rgba(255,255,255,.85);flex:1}
body.single-product .cp-nhs-free{font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--nhs);background:var(--white);border-radius:999px;padding:4px 12px;white-space:nowrap}

/* Category pill */
body.single-product .cp-cat{margin-top:28px!important;margin-bottom:8px;padding:0 28px!important;display:block}
body.single-product .cp-cat a{display:inline-flex;align-items:center;gap:5px;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fern);text-decoration:none;background:var(--frost);border:1px solid var(--mist);border-radius:999px;padding:4px 12px;transition:background var(--ease),border-color var(--ease)}
body.single-product .cp-cat a::before{content:'<';font-size:.75em;opacity:.65;margin-right:2px}
body.single-product .cp-cat a:hover{background:var(--mist);border-color:var(--sage)}

/* Title */
body.single-product .product_title{font-size:clamp(1.35rem,2.2vw,1.7rem);font-weight:800;line-height:1.18;color:var(--forest);letter-spacing:-.028em;margin:0 0 12px;padding-top:28px!important}
body.single-product .cp-cat + .product_title{padding-top:0!important}

/* Rating */
body.single-product .woocommerce-product-rating{display:flex;align-items:center;gap:6px;font-size:.77rem;color:var(--ink-3);margin:0 0 12px}
body.single-product .star-rating{color:var(--fern)}

/* Short description */
body.single-product .woocommerce-product-details__short-description{font-size:.875rem;line-height:1.78;color:var(--ink-2);padding-top:0;padding-bottom:22px;border-bottom:1px solid var(--line);margin:0;text-align:left}
body.single-product .woocommerce-product-details__short-description p{margin:0 0 .5em;text-align:left}
body.single-product .woocommerce-product-details__short-description p:last-child{margin:0}

/* NHS free delivery banner */
body.single-product .cp-free-delivery{display:flex;align-items:center;gap:10px;background:var(--nhs-lt);border:1px solid rgba(0,94,184,.2);border-radius:var(--r);padding:11px 14px;margin-top:14px}
body.single-product .cp-free-delivery-icon{font-size:1.1rem;flex-shrink:0}
body.single-product .cp-free-delivery-text{font-size:.8rem;font-weight:600;color:var(--nhs);line-height:1.4}
body.single-product .cp-free-delivery-badge{margin-left:auto;font-size:.6rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--white);background:var(--nhs);border-radius:999px;padding:3px 10px;white-space:nowrap}

/* Variations form */
body.single-product form.variations_form{flex:1!important;flex-shrink:0;padding:22px 28px 16px!important;margin:0!important;min-height:0}
body.single-product table.variations,body.single-product table.variations tbody,
body.single-product table.variations tr,body.single-product table.variations td{display:block!important;width:100%!important;border:none!important;padding:0!important;margin:0!important;background:transparent!important}
body.single-product table.variations tr{margin-bottom:20px!important}
body.single-product table.variations tr:last-child{margin-bottom:0!important}
body.single-product .variations td.label{display:block!important;margin-bottom:9px!important}
body.single-product .variations td.label label{display:inline-block!important;font-size:.63rem!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--ink-3)!important;margin:0!important;line-height:1!important;background:none!important;border:none!important;padding:0!important}
body.single-product .variations td.label>*:not(label){display:none!important}
body.single-product .variations td.value{display:block!important}

/* Swatch pills */
body.single-product .variable-items-wrapper{display:flex!important;flex-wrap:wrap!important;gap:8px!important;list-style:none!important;padding:0!important;margin:0!important}
body.single-product .variable-item{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:52px!important;width:auto!important;height:auto!important;padding:9px 18px!important;border:1.5px solid var(--line)!important;border-radius:var(--r)!important;background:var(--white)!important;color:var(--ink-2)!important;font-size:.84rem!important;font-weight:600!important;line-height:1.2!important;cursor:pointer!important;user-select:none!important;box-sizing:border-box!important;flex-shrink:0!important;text-align:center!important;white-space:nowrap!important;transition:border-color var(--ease),background var(--ease),color var(--ease),box-shadow var(--ease),transform var(--spring)!important}
body.single-product .variable-item .variable-item-contents{display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;color:inherit!important;font-size:inherit!important;font-weight:inherit!important;background:transparent!important;width:auto!important;height:auto!important;border-radius:0!important}
body.single-product .variable-item .variable-item-contents img,body.single-product .variable-item .variable-item-span-image,
body.single-product .variable-item .variable-item-color,body.single-product .variable-item .woo-variation-swatch{display:none!important}
body.single-product .variable-item .variable-item-contents span{display:inline!important;color:inherit!important;font-size:inherit!important;font-weight:inherit!important}
body.single-product .variable-item:not(.disabled):hover{border-color:var(--amber)!important;background:var(--amber-lt)!important;color:var(--amber-dk)!important;box-shadow:0 0 0 3px rgba(232,100,10,.10)!important;transform:translateY(-1px)!important}
body.single-product .variable-item.selected{border-color:var(--amber)!important;background:var(--amber)!important;color:var(--white)!important;font-weight:700!important;box-shadow:0 3px 12px rgba(232,100,10,.35),0 0 0 3px rgba(232,100,10,.12)!important;transform:translateY(0)!important}
body.single-product .variable-item.selected .variable-item-contents,
body.single-product .variable-item.selected .variable-item-contents span{color:var(--white)!important}
body.single-product .variable-item.selected::after{content:''!important;position:absolute!important;top:-5px!important;right:-5px!important;width:15px!important;height:15px!important;border:2px solid var(--white)!important;border-radius:50%!important;background:var(--amber-dk) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 5l2.5 2.5L8 3' stroke='%23fff' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/9px no-repeat!important;pointer-events:none!important}
body.single-product .variable-item.selected:hover{background:var(--amber-dk)!important;border-color:var(--amber-dk)!important;box-shadow:0 4px 16px rgba(196,83,10,.42),0 0 0 3px rgba(196,83,10,.14)!important;transform:translateY(-1px)!important}
body.single-product .variable-item:focus-visible{outline:2.5px solid var(--amber)!important;outline-offset:2px!important}
body.single-product .variable-item.disabled{opacity:.35!important;cursor:not-allowed!important;pointer-events:none!important;border-style:dashed!important}

/* Variation description */
body.single-product .woocommerce-variation{padding-top:14px!important;padding-bottom:20px!important;flex-shrink:0}
body.single-product .woocommerce-variation-description{background:var(--frost);border-left:3px solid var(--sage);border-radius:0 var(--r) var(--r) 0;padding:13px 16px;font-size:.82rem;line-height:1.7;color:var(--ink-2);text-align:left}
body.single-product .woocommerce-variation-description p{margin:0 0 .3em;text-align:left}
body.single-product .woocommerce-variation-description p:last-child{margin:0}

/* Cart zone */
body.single-product form.cart{margin-top:auto!important;padding:20px 28px 24px!important;border:none!important;border-top:2px solid var(--line-2)!important;background:var(--white)!important;display:flex!important;flex-direction:column!important;gap:0!important;flex-shrink:0!important;box-shadow:none!important}
body.single-product form.cart>*{border-left:none!important;border-right:none!important}

/* Price display */
body.single-product .cp-price-wrap{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}
body.single-product .cp-price-label{display:block;font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);margin-bottom:5px}
body.single-product .cp-price-amount{font-size:2rem;font-weight:800;color:var(--pine);letter-spacing:-.04em;line-height:1;display:block}

/* Qty + button row */
body.single-product .cp-pay-row{display:flex!important;align-items:stretch;gap:10px;flex-wrap:wrap}
body.single-product form.cart .quantity{display:inline-flex!important;align-items:center;border:1.5px solid var(--line)!important;border-radius:var(--r);background:var(--white);overflow:hidden;flex-shrink:0}
body.single-product form.cart .quantity input.qty{width:40px;height:52px;border:none!important;background:transparent;text-align:center;font-size:.95rem;font-weight:700;color:var(--ink);outline:none;padding:0;-moz-appearance:textfield}
body.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
body.single-product form.cart .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none}
body.single-product form.cart .quantity .qty-minus,body.single-product form.cart .quantity .qty-plus,
body.single-product form.cart .quantity button:not(.single_add_to_cart_button){width:36px;height:52px;border:none!important;background:var(--line-2);color:var(--ink-3);font-size:1.05rem;line-height:1;cursor:pointer;flex-shrink:0;transition:background var(--ease),color var(--ease)}
body.single-product form.cart .quantity .qty-minus:hover,
body.single-product form.cart .quantity .qty-plus:hover{background:var(--mist);color:var(--pine)}

/* Payment button */
body.single-product .woocommerce a.button,body.single-product .woocommerce button.button,
body.single-product .woocommerce input.button,body.single-product .woocommerce #respond input#submit,
body.single-product .woocommerce .button.alt,body.single-product .cart button,
body.single-product form.cart button,body.single-product .cp-pay-row button{border:none!important;outline:none!important;box-shadow:none!important}
body.single-product .single_add_to_cart_button,body.single-product button.single_add_to_cart_button,
body.single-product button.single_add_to_cart_button.alt,body.single-product button.single_add_to_cart_button.button,
body.single-product .woocommerce button.single_add_to_cart_button,body.single-product .woocommerce form.cart button,
body.single-product form.cart .single_add_to_cart_button,body.single-product form.cart>.cp-pay-row>button,
body.single-product .cp-pay-row>button{-webkit-appearance:none!important;appearance:none!important;flex:1 1 auto!important;min-width:160px;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px;height:52px;padding:0 28px;border:none!important;border-radius:var(--r)!important;outline:none!important;background:var(--amber)!important;color:var(--white)!important;font-family:'Inter',-apple-system,sans-serif!important;font-size:.88rem!important;font-weight:800!important;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:0 2px 8px rgba(232,100,10,.3),0 8px 24px rgba(232,100,10,.18)!important;transition:background var(--ease),box-shadow var(--ease),transform var(--spring);white-space:nowrap;text-decoration:none}
body.single-product .single_add_to_cart_button:hover,body.single-product button.single_add_to_cart_button.alt:hover,
body.single-product .cp-pay-row>button:hover{background:var(--amber-dk)!important;box-shadow:0 4px 12px rgba(196,83,10,.35),0 12px 32px rgba(196,83,10,.22)!important;transform:translateY(-1px)}
body.single-product .single_add_to_cart_button:active{transform:translateY(0)}
body.single-product .single_add_to_cart_button:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(232,100,10,.4)!important}
body.single-product .single_add_to_cart_button.loading{opacity:.65;cursor:wait;transform:none}
body.single-product .single_add_to_cart_button.added{background:var(--fern)!important}
body.single-product .cp-btn-lock{display:inline-flex;align-items:center;opacity:.8;flex-shrink:0}

/* Responsive — single product */
@media (max-width:782px){
  body.single-product div.product{flex-direction:column!important;gap:18px!important}
  body.single-product .woocommerce-product-gallery,body.single-product div.product .summary,
  body.single-product .summary.entry-summary{flex:0 0 100%!important;width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important;box-sizing:border-box!important}
  body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{max-height:420px;overflow:hidden}
  body.single-product .woocommerce-product-gallery .flex-control-thumbs{flex-wrap:nowrap!important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  body.single-product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar{display:none}
  body.single-product .woocommerce-product-gallery .flex-control-thumbs li{flex-shrink:0}
}
@media (max-width:600px){
  body.single-product div.product .summary>*,body.single-product .summary.entry-summary>*{padding-left:18px;padding-right:18px}
  body.single-product .cp-badge{padding:10px 18px!important}
  body.single-product .cp-nhs-bar{padding:12px 18px!important}
  body.single-product .cp-cat{padding:0 18px!important;margin-top:20px!important}
  body.single-product form.variations_form{padding:16px 18px!important}
  body.single-product form.cart{padding:16px 18px 20px!important}
  body.single-product .cp-price-amount{font-size:1.65rem}
  body.single-product .woocommerce-variation{padding-top:10px!important;padding-bottom:14px!important}
  body.single-product .woocommerce-variation-description{padding:10px 12px;font-size:.8rem}
  body.single-product .single_add_to_cart_button{width:100%;flex:none!important;min-height:54px;min-width:0}
  body.single-product .variable-item{padding:8px 12px!important;min-width:40px!important;font-size:.8rem!important}
  body.single-product .product_title{font-size:1.3rem;padding-top:20px!important}
  body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{max-height:300px}
}
@media (max-width:400px){
  body.single-product div.product .summary>*,body.single-product .summary.entry-summary>*{padding-left:14px;padding-right:14px}
  body.single-product .cp-badge{padding:9px 14px!important}
  body.single-product .cp-nhs-bar{padding:10px 14px!important}
  body.single-product .cp-cat{padding:0 14px!important}
  body.single-product form.variations_form{padding:14px 14px!important}
  body.single-product form.cart{padding:14px 14px 18px!important}
  body.single-product .cp-price-amount{font-size:1.45rem}
  body.single-product .cp-badge-pill{display:none}
}
@media print{body.single-product form.cart{display:none!important}}

/* =====================================================================
   GLOBAL CART / CHECKOUT STICKY BAR
   ===================================================================== */
body.wp-admin .wrp-cartbar,
body.wp-core-ui .wrp-cartbar,
#wpwrap .wrp-cartbar{display:none!important}

body.wrp-cartbar-visible:not(.woocommerce-checkout):not(.single-product){padding-bottom:110px}
.wrp-cartbar{
  position:fixed;left:0;right:0;bottom:0;z-index:9999;
  transform:translateY(100%);opacity:0;pointer-events:none;
  transition:transform .24s cubic-bezier(.4,0,.2,1),opacity .2s ease;
}
.wrp-cartbar.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.wrp-cartbar__bg{
  width:100%;
  background:#fff;
  border-top:1px solid #E4EDE8;
  box-shadow:0 -8px 28px rgba(14,61,34,.10);
}
.wrp-cartbar__inner{
  width:min(100%,1300px);
  margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 20px;
  box-sizing:border-box;
}
.wrp-cartbar__item{display:flex;align-items:center;gap:14px;min-width:0;flex:1 1 auto}
.wrp-cartbar__thumb{
  width:42px;height:42px;border-radius:10px;overflow:hidden;flex:0 0 42px;
  background:#F0F5F2;border:1px solid #E4EDE8;display:flex;align-items:center;justify-content:center
}
.wrp-cartbar__thumb img{display:block;width:100%;height:100%;object-fit:cover}
.wrp-cartbar__meta{min-width:0;display:flex;flex-direction:column;gap:3px}
.wrp-cartbar__name{font-size:.95rem;font-weight:700;color:#2E3D34;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wrp-cartbar__extra{font-size:.72rem;font-weight:600;letter-spacing:.03em;color:#5C6B62;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wrp-cartbar__notice{font-size:.68rem;color:#8FA396;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wrp-cartbar__actions{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.wrp-cartbar__price{font-size:1rem;font-weight:800;color:#0E3D22;white-space:nowrap}
.wrp-cartbar__btn{
  -webkit-appearance:none!important;appearance:none!important;border:none!important;outline:none!important;
  display:inline-flex;align-items:center;justify-content:center;height:46px;min-width:190px;
  padding:0 22px;border-radius:8px;text-decoration:none!important;
  background:#F09350!important;color:#fff!important;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  box-shadow:0 2px 8px rgba(240,147,80,.30),0 8px 24px rgba(240,147,80,.18);
  transition:background .16s ease,box-shadow .16s ease,transform .2s cubic-bezier(.34,1.4,.64,1)
}
.wrp-cartbar__btn,
.wrp-cartbar__btn:hover,
.wrp-cartbar__btn:focus,
.wrp-cartbar__btn:active,
.wrp-cartbar__btn:visited{color:#fff!important;text-decoration:none!important}
.wrp-cartbar__btn:hover{background:#FFA15E!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(255,161,94,.35),0 12px 32px rgba(255,161,94,.22)}
.wrp-cartbar__btn:active{transform:translateY(0)}
.wrp-cartbar__btn:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(240,147,80,.18),0 4px 12px rgba(255,161,94,.22)!important}

@media (max-width:767px){
  body.wrp-cartbar-visible:not(.woocommerce-checkout):not(.single-product){padding-bottom:118px}
  .wrp-cartbar__inner{padding:12px 14px;gap:12px}
  .wrp-cartbar__thumb{width:38px;height:38px;flex-basis:38px}
  .wrp-cartbar__name{font-size:.84rem}
  .wrp-cartbar__extra{font-size:.66rem}
  .wrp-cartbar__notice{font-size:.62rem}
  .wrp-cartbar__price{font-size:.92rem}
  .wrp-cartbar__btn{height:42px;min-width:0;padding:0 14px;font-size:.7rem}
}
@media (max-width:560px){
  .wrp-cartbar__inner{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  .wrp-cartbar__item{grid-column:1/-1}
  .wrp-cartbar__actions{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:10px;
    width:100%;
  }
  .wrp-cartbar__price{justify-self:start}
  .wrp-cartbar__btn{width:100%}
  .wrp-cartbar__extra,.wrp-cartbar__notice{white-space:normal}
}

/* =====================================================================
   CHECKOUT — TOKENS & BASE
   ===================================================================== */
body.woocommerce-checkout{
  background:#EFF7F2!important;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  color:#0F1C14;-webkit-font-smoothing:antialiased;
}

/* Hide clutter */
body.woocommerce-checkout .woocommerce::before,body.woocommerce-checkout .woocommerce::after,
body.woocommerce-checkout h3#order_review_heading,
body.woocommerce-checkout .woocommerce-additional-fields:not(:has(p)),
body.woocommerce-checkout .woocommerce-additional-fields:empty,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper:empty,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper:not(:has(*)),
body.woocommerce-checkout .woocommerce-message::before,
body.woocommerce-checkout .woocommerce-message{display:none!important}

/* Page title */
body.woocommerce-checkout .entry-title{font-size:1.6rem!important;font-weight:800!important;color:#0E3D22!important;letter-spacing:-.025em!important;margin-top:0!important;margin-bottom:4px!important}

/* Section cards */
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{background:#fff!important;border:1px solid #E4EDE8!important;border-radius:12px!important;padding:28px!important;margin-bottom:16px!important;box-sizing:border-box!important;box-shadow:0 1px 2px rgba(14,61,34,.04),0 4px 12px rgba(14,61,34,.05),0 16px 40px rgba(14,61,34,.05)!important;transition:box-shadow 160ms ease!important}
body.woocommerce-checkout .woocommerce-billing-fields:hover,
body.woocommerce-checkout .woocommerce-shipping-fields:hover,
body.woocommerce-checkout .woocommerce-additional-fields:hover{box-shadow:0 1px 2px rgba(14,61,34,.05),0 6px 20px rgba(14,61,34,.09),0 24px 56px rgba(14,61,34,.08)!important}

/* Order review card */
body.woocommerce-checkout #order_review{background:#fff!important;border:1px solid #E4EDE8!important;border-radius:12px!important;padding:26px 26px 0!important;margin-bottom:0!important;box-sizing:border-box!important;overflow:hidden!important;box-shadow:0 1px 2px rgba(14,61,34,.04),0 4px 12px rgba(14,61,34,.05),0 16px 40px rgba(14,61,34,.05)!important}

/* Section headings */
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{font-size:.6rem!important;font-weight:800!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#5C6B62!important;margin:0 0 20px!important;padding-bottom:14px!important;border-bottom:1px solid #E4EDE8!important;display:flex!important;align-items:center!important;gap:8px!important}
body.woocommerce-checkout .woocommerce-billing-fields h3::before,
body.woocommerce-checkout .woocommerce-shipping-fields h3::before,
body.woocommerce-checkout .woocommerce-additional-fields h3::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#2E7D52;flex-shrink:0;box-shadow:0 0 0 3px rgba(46,125,82,.18)}
body.woocommerce-checkout .woocommerce-shipping-fields h3 label{font-size:.6rem!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#5C6B62!important;cursor:pointer!important;margin:0!important}
body.woocommerce-checkout #ship-to-different-address-checkbox{accent-color:#0E3D22!important;width:15px!important;height:15px!important;cursor:pointer!important}

/* Labels */
body.woocommerce-checkout label{display:block!important;font-size:.6rem!important;font-weight:700!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#5C6B62!important;margin-bottom:6px!important;line-height:1!important}
body.woocommerce-checkout label .required,body.woocommerce-checkout abbr.required{color:#dc2626!important;text-decoration:none!important}
body.woocommerce-checkout #payment ul.wc_payment_methods label{text-transform:none!important;letter-spacing:0!important;font-size:.88rem!important;font-weight:500!important;color:#0F1C14!important}

/* Inputs */
body.woocommerce-checkout input[type="text"],body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],body.woocommerce-checkout input[type="number"],
body.woocommerce-checkout input[type="password"],body.woocommerce-checkout textarea,
body.woocommerce-checkout select{font-size:.9rem!important;font-weight:400!important;color:#0F1C14!important;background:#fff!important;border:1.5px solid #E4EDE8!important;border-radius:8px!important;box-shadow:0 1px 2px rgba(14,61,34,.04)!important;outline:none!important;transition:border-color 140ms ease,box-shadow 140ms ease!important}
body.woocommerce-checkout input[type="text"]:focus,body.woocommerce-checkout input[type="email"]:focus,
body.woocommerce-checkout input[type="tel"]:focus,body.woocommerce-checkout input[type="number"]:focus,
body.woocommerce-checkout input[type="password"]:focus,body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus{border-color:#2E7D52!important;box-shadow:0 0 0 3px rgba(46,125,82,.14)!important;background:#fff!important}
body.woocommerce-checkout textarea{resize:vertical!important;line-height:1.65!important}
body.woocommerce-checkout input::placeholder,body.woocommerce-checkout textarea::placeholder{color:#8FA396!important;font-weight:400!important}

/* Validation */
body.woocommerce-checkout .woocommerce-validated input,body.woocommerce-checkout .woocommerce-validated select{border-color:#2E7D52!important;box-shadow:0 0 0 3px rgba(46,125,82,.10)!important}
body.woocommerce-checkout .woocommerce-invalid input,body.woocommerce-checkout .woocommerce-invalid select{border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.09)!important}
body.woocommerce-checkout .woocommerce-invalid label{color:#dc2626!important}

/* Select2 */
body.woocommerce-checkout .select2-container--default .select2-selection--single{height:auto!important;border:1.5px solid #E4EDE8!important;border-radius:8px!important;background:#fff!important;box-shadow:0 1px 2px rgba(14,61,34,.04)!important;transition:border-color 140ms ease,box-shadow 140ms ease!important}
body.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single{border-color:#2E7D52!important;box-shadow:0 0 0 3px rgba(46,125,82,.14)!important}
body.woocommerce-checkout .select2-selection__rendered{font-size:.9rem!important;color:#0F1C14!important}
body.woocommerce-checkout .select2-dropdown{border:1.5px solid #E4EDE8!important;border-radius:8px!important;box-shadow:0 8px 24px rgba(14,61,34,.12)!important}
body.woocommerce-checkout .select2-results__option{font-size:.88rem!important;color:#2E3D34!important;padding:10px 14px!important}
body.woocommerce-checkout .select2-results__option--highlighted{background:#0E3D22!important;color:#fff!important}
body.woocommerce-checkout .select2-search--dropdown .select2-search__field{border:1.5px solid #E4EDE8!important;border-radius:6px!important;font-size:.875rem!important;outline:none!important}

/* Notices */
body.woocommerce-checkout .woocommerce-info,body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error{position:relative!important;border-radius:8px!important;border-left-width:3px!important;padding:12px 16px 12px 44px!important;font-size:.82rem!important;font-weight:500!important;margin-bottom:16px!important;line-height:1.6!important;list-style:none!important}
body.woocommerce-checkout .woocommerce-info::before,body.woocommerce-checkout .woocommerce-message::before,
body.woocommerce-checkout .woocommerce-error::before{position:absolute!important;top:13px!important;left:14px!important;margin:0!important;font-size:15px!important;line-height:1!important}
body.woocommerce-checkout .woocommerce-info{background:#EFF7F2!important;border-color:#2E7D52!important;color:#155E33!important}
body.woocommerce-checkout .woocommerce-message{background:#EFF7F2!important;border-color:#2E7D52!important;color:#0E3D22!important}
body.woocommerce-checkout .woocommerce-error{background:#fef2f2!important;border-color:#dc2626!important;color:#991b1b!important}
body.woocommerce-checkout .woocommerce-error li{margin:0!important;padding:0!important;line-height:1.6!important}
body.woocommerce-checkout .woocommerce-info a,body.woocommerce-checkout .woocommerce-message a,
body.woocommerce-checkout .woocommerce-error a{color:inherit!important;font-weight:700!important;text-decoration:underline!important;text-underline-offset:2px!important}

/* Coupon / login panels */
body.woocommerce-checkout .checkout_coupon,body.woocommerce-checkout .woocommerce-form-login{background:#fff!important;border:1px solid #E4EDE8!important;border-radius:10px!important;padding:22px!important;margin-bottom:16px!important;box-shadow:0 1px 3px rgba(14,61,34,.05),0 4px 12px rgba(14,61,34,.05)!important}
body.woocommerce-checkout .checkout_coupon .button,body.woocommerce-checkout .woocommerce-form-login .button{background:#0E3D22!important;color:#fff!important;border:none!important;border-radius:8px!important;font-size:.78rem!important;font-weight:700!important;letter-spacing:.05em!important;text-transform:uppercase!important;padding:11px 20px!important;cursor:pointer!important;transition:background 160ms ease!important}
body.woocommerce-checkout .checkout_coupon .button:hover,body.woocommerce-checkout .woocommerce-form-login .button:hover{background:#155E33!important}

/* Order review table */
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  width:100%!important;
  border-collapse:collapse!important;
  table-layout:auto!important;
  font-size:.85rem!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{font-size:.58rem!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#8FA396!important;padding:0 0 12px!important;border-bottom:1px solid #E4EDE8!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th:last-child{text-align:right!important}

/* Product title fix */
body.woocommerce-checkout .woocommerce-checkout-review-order-table th.product-name,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{width:auto!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th.product-total,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
  width:96px!important;
  min-width:96px!important;
  white-space:nowrap!important;
  text-align:right!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item td{padding:14px 0!important;border-bottom:1px solid #E4EDE8!important;vertical-align:top!important;color:#0F1C14!important;line-height:1.55!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name{
  width:auto!important;
  max-width:none!important;
  padding-right:24px!important;
  font-weight:600!important;
  color:#2E3D34!important;
  font-size:.92rem!important;
  line-height:1.55!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name a{
  font-size:inherit!important;
  line-height:inherit!important;
  color:inherit!important;
  text-decoration:none!important;
  font-weight:600!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item td:last-child{font-weight:700!important;color:#0E3D22!important;white-space:nowrap!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name .product-quantity{display:none!important}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .shipping th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .shipping td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .tax-rate th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .tax-rate td{padding:10px 0!important;border-bottom:1px solid #E4EDE8!important;font-size:.82rem!important;color:#5C6B62!important}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .tax-rate td{text-align:right!important;font-weight:500!important}

/* =====================================================================
   SHIPPING METHODS — KEEP STYLE, SMALLER TEXT, PUSH TEXT RIGHT
   ===================================================================== */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping{
  vertical-align:top!important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping th{
  width:100px!important;
  min-width:100px!important;
  max-width:100px!important;
  padding:14px 12px 0 0!important;
  vertical-align:top!important;
  text-align:left!important;
  font-size:.82rem!important;
  font-weight:500!important;
  color:#5C6B62!important;
  white-space:normal!important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping td{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:6px 0 12px 0!important;
  vertical-align:top!important;
  text-align:left!important;
}

/* Shipping list reset */
body.woocommerce-checkout #shipping_method,
body.woocommerce-checkout .woocommerce-shipping-methods{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

body.woocommerce-checkout #shipping_method li,
body.woocommerce-checkout .woocommerce-shipping-methods li{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 10px 0!important;
  padding:0!important;
  list-style:none!important;
}

body.woocommerce-checkout #shipping_method li:last-child,
body.woocommerce-checkout .woocommerce-shipping-methods li:last-child{
  margin-bottom:0!important;
}

/* Radios */
body.woocommerce-checkout #shipping_method li input[type="radio"],
body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"]{
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  z-index:2!important;
  accent-color:#0E3D22!important;
}

/* Buttons */
body.woocommerce-checkout #shipping_method li label,
body.woocommerce-checkout .woocommerce-shipping-methods li label{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:56px!important;
  padding:14px 16px 14px 52px!important; /* moved right */
  border:1px solid #D6E5E0!important;
  border-radius:10px!important;
  background:#fff!important;
  font-size:.72rem!important; /* reduced */
  font-weight:600!important;
  line-height:1.45!important;
  color:#0E3D22!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
  text-align:left!important;
  white-space:normal!important;
  overflow:visible!important;
  box-shadow:none!important;
  transition:all .15s ease!important;
}

body.woocommerce-checkout #shipping_method li label *{
  white-space:normal!important;
}

/* JS wrapped output */
body.woocommerce-checkout .wrp-shipping-option__label{
  display:block!important;
  width:100%!important;
  padding:0!important;
  min-height:0!important;
}

body.woocommerce-checkout .wrp-shipping-option__title{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding-left:2px!important;
  font-size:.72rem!important; /* reduced */
  font-weight:700!important;
  line-height:1.45!important;
  color:#0E3D22!important;
  text-align:left!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}

body.woocommerce-checkout .wrp-shipping-option__price{
  display:block!important;
  margin:4px 0 0 2px!important;
  padding:0!important;
  font-size:.88rem!important; /* reduced slightly */
  font-weight:800!important;
  line-height:1.2!important;
  color:#0E3D22!important;
  text-align:left!important;
  white-space:nowrap!important;
}

body.woocommerce-checkout #shipping_method .amount,
body.woocommerce-checkout .woocommerce-shipping-methods .amount{
  display:block!important;
  font-weight:800!important;
  font-size:.88rem!important;
  margin-top:4px!important;
}

body.woocommerce-checkout #shipping_method li label:hover,
body.woocommerce-checkout .woocommerce-shipping-methods li label:hover{
  border-color:#BFD8CD!important;
  background:#F9FCFB!important;
}

body.woocommerce-checkout #shipping_method li input[type="radio"]:checked + label,
body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"]:checked + label{
  border-color:#2E7D52!important;
  background:#F4FBF7!important;
}

body.woocommerce-checkout #shipping_method br,
body.woocommerce-checkout .woocommerce-shipping-methods br{
  display:none!important;
}

/* Payment section */
body.woocommerce-checkout #payment{background:#F0F5F2!important;border-top:1.5px solid #E4EDE8!important;border-radius:0 0 12px 12px!important;margin:18px -26px 0!important;overflow:hidden!important}
body.woocommerce-checkout #payment ul.wc_payment_methods{list-style:none!important;margin:0!important;padding:0!important}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method{border-bottom:1px solid #E4EDE8!important;margin:0!important}
body.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method:last-child{border-bottom:none!important}

/* Payment method row — radio + label layout */
body.woocommerce-checkout #payment ul.wc_payment_methods li{
  position:relative!important;
}
body.woocommerce-checkout #payment ul.wc_payment_methods li input[type="radio"]{
  position:absolute!important;
  left:24px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:17px!important;height:17px!important;
  margin:0!important;
  appearance:none!important;-webkit-appearance:none!important;
  border:2px solid #BFD8CD!important;
  border-radius:50%!important;
  background:#fff!important;
  cursor:pointer!important;
  transition:border-color 140ms ease,background 140ms ease,box-shadow 140ms ease!important;
  flex-shrink:0!important;
  z-index:2!important;
}
body.woocommerce-checkout #payment ul.wc_payment_methods li input[type="radio"]:checked{
  border-color:#0E3D22!important;
  background:#0E3D22!important;
  box-shadow:inset 0 0 0 3px #fff!important;
}
body.woocommerce-checkout #payment ul.wc_payment_methods li input[type="radio"]:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 3px rgba(14,61,34,.2)!important;
}
body.woocommerce-checkout #payment ul.wc_payment_methods li label{
  display:flex!important;align-items:center!important;gap:12px!important;
  padding:16px 24px 16px 52px!important;
  font-size:.9rem!important;font-weight:600!important;color:#0F1C14!important;
  cursor:pointer!important;transition:background 140ms ease!important;
  margin:0!important;text-transform:none!important;letter-spacing:0!important;
  min-height:52px!important;
}
body.woocommerce-checkout #payment ul.wc_payment_methods li label:hover{background:#E8F0EC!important}
body.woocommerce-checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
body.woocommerce-checkout #payment ul.wc_payment_methods li input[type="radio"]:checked~label{
  background:#EFF7F2!important;
}
body.woocommerce-checkout #payment ul.wc_payment_methods li label img{
  height:22px!important;width:auto!important;border-radius:4px!important;
  opacity:.85!important;margin-left:auto!important;flex-shrink:0!important;
}

/* Payment box — card entry area */
body.woocommerce-checkout #payment .payment_box{
  background:#fff!important;
  border-top:1px solid #E4EDE8!important;
  border-bottom:1px solid #E4EDE8!important;
  padding:20px 24px!important;
  font-size:.82rem!important;color:#5C6B62!important;line-height:1.7!important;
}
body.woocommerce-checkout #payment .payment_box p{margin:0 0 6px!important;font-size:.8rem!important;color:#5C6B62!important}
body.woocommerce-checkout #payment .payment_box p:first-of-type{
  margin-bottom:16px!important;
  padding-bottom:14px!important;
  border-bottom:1px solid #E4EDE8!important;
  font-size:.78rem!important;
  color:#8FA396!important;
}
body.woocommerce-checkout #payment .payment_box p:last-child{margin:0!important}

/* Card field labels inside payment_box */
body.woocommerce-checkout #payment .payment_box label{
  display:block!important;
  font-size:.6rem!important;font-weight:700!important;
  letter-spacing:.09em!important;text-transform:uppercase!important;
  color:#5C6B62!important;margin-bottom:6px!important;margin-top:14px!important;
  line-height:1!important;
}
body.woocommerce-checkout #payment .payment_box label:first-of-type{margin-top:0!important}

/* Card number, expiry, CVV inputs */
body.woocommerce-checkout #payment .payment_box input[type="text"],
body.woocommerce-checkout #payment .payment_box input[type="tel"],
body.woocommerce-checkout #payment .payment_box input[type="number"],
body.woocommerce-checkout #payment .payment_box input{
  display:block!important;width:100%!important;
  height:46px!important;
  padding:0 14px!important;
  font-size:.92rem!important;font-weight:500!important;color:#0F1C14!important;
  background:#fff!important;
  border:1.5px solid #D6E5E0!important;
  border-radius:8px!important;
  box-shadow:0 1px 3px rgba(14,61,34,.05)!important;
  box-sizing:border-box!important;
  outline:none!important;
  transition:border-color 140ms ease,box-shadow 140ms ease!important;
  -webkit-appearance:none!important;appearance:none!important;
}
body.woocommerce-checkout #payment .payment_box input:focus{
  border-color:#2E7D52!important;
  box-shadow:0 0 0 3px rgba(46,125,82,.14)!important;
  background:#fff!important;
}
body.woocommerce-checkout #payment .payment_box input::placeholder{
  color:#B0C4BB!important;font-weight:400!important;
}

/* Expiry + CVV side-by-side row */
body.woocommerce-checkout #payment .payment_box .form-row-first,
body.woocommerce-checkout #payment .payment_box .form-row-last,
body.woocommerce-checkout #payment .payment_box p.form-row-first,
body.woocommerce-checkout #payment .payment_box p.form-row-last{
  display:inline-block!important;
  width:calc(50% - 6px)!important;
  vertical-align:top!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout #payment .payment_box .form-row-first{margin-right:12px!important}
body.woocommerce-checkout #payment .payment_box .form-row-first input,
body.woocommerce-checkout #payment .payment_box .form-row-last input{
  width:100%!important;
}

/* Month/Year selects in expiry */
body.woocommerce-checkout #payment .payment_box select{
  display:inline-block!important;
  width:calc(50% - 5px)!important;
  height:46px!important;
  padding:0 10px!important;
  font-size:.88rem!important;font-weight:500!important;color:#0F1C14!important;
  background:#fff!important;
  border:1.5px solid #D6E5E0!important;
  border-radius:8px!important;
  box-shadow:0 1px 3px rgba(14,61,34,.05)!important;
  box-sizing:border-box!important;
  outline:none!important;
  cursor:pointer!important;
  transition:border-color 140ms ease,box-shadow 140ms ease!important;
  -webkit-appearance:none!important;appearance:none!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235C6B62' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 10px center!important;
  padding-right:28px!important;
}
body.woocommerce-checkout #payment .payment_box select:first-of-type{margin-right:10px!important}
body.woocommerce-checkout #payment .payment_box select:focus{
  border-color:#2E7D52!important;box-shadow:0 0 0 3px rgba(46,125,82,.14)!important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text{padding:14px 24px 0!important;font-size:.72rem!important;color:#8FA396!important;line-height:1.65!important;background:#F0F5F2!important}

/* Terms */
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper{margin-bottom:14px!important}
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper .form-row{padding:0!important;margin:0!important}
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper .validate-required{padding:0!important;margin:0!important}
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox{
  display:inline-flex!important;align-items:flex-start!important;justify-content:flex-start!important;
  gap:10px!important;width:100%!important;margin:0!important;padding:0!important;cursor:pointer!important;flex-wrap:nowrap!important
}
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox input[type="checkbox"],
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]{
  flex:0 0 15px!important;width:15px!important;height:15px!important;margin:2px 0 0 0!important;
  position:static!important;float:none!important;accent-color:#0E3D22!important;cursor:pointer!important
}
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text{
  display:inline!important;font-size:.76rem!important;font-weight:400!important;line-height:1.5!important;
  color:#5C6B62!important;text-transform:none!important;letter-spacing:0!important;white-space:normal!important
}
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox abbr.required,
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox .required{
  display:inline!important;margin-left:4px!important;color:#dc2626!important;text-decoration:none!important;vertical-align:baseline!important;white-space:nowrap!important
}
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper a{color:#0E3D22!important;font-weight:700!important;text-decoration:underline!important;text-underline-offset:2px!important}

/* Place order wrapper */
body.woocommerce-checkout #payment .form-row.place-order{padding:18px 24px 24px!important;margin:0!important;background:#fff!important;border-top:1.5px solid #E4EDE8!important}
body.woocommerce-checkout #payment .form-row.place-order::after{content:'🔒  SSL Encrypted  ·  256-bit Security  ·  Secure Checkout';display:block;text-align:center;font-size:.58rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8FA396;margin-top:20px;padding:14px 0 0;border-top:1px solid #E4EDE8;line-height:1.6}

/* Place order button */
body.woocommerce-checkout #place_order{
  display:block!important;width:100%!important;background:#F09350!important;color:#fff!important;
  font-size:.8rem!important;font-weight:800!important;letter-spacing:.09em!important;text-transform:uppercase!important;
  border:none!important;border-radius:8px!important;padding:16px 24px!important;cursor:pointer!important;
  box-shadow:0 2px 8px rgba(240,147,80,.30),0 8px 24px rgba(240,147,80,.18)!important;
  transition:background 160ms cubic-bezier(.4,0,.2,1),box-shadow 160ms cubic-bezier(.4,0,.2,1),transform 200ms cubic-bezier(.34,1.4,.64,1)!important
}
body.woocommerce-checkout #place_order,
body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout #place_order:focus,
body.woocommerce-checkout #place_order:active,
body.woocommerce-checkout #place_order:visited{color:#fff!important}
body.woocommerce-checkout #place_order:hover{background:#FFA15E!important;box-shadow:0 4px 12px rgba(255,161,94,.35),0 12px 32px rgba(255,161,94,.22)!important;transform:translateY(-1px)!important}
body.woocommerce-checkout #place_order:active{transform:translateY(0)!important;box-shadow:0 2px 6px rgba(240,147,80,.25)!important}
body.woocommerce-checkout #place_order.loading,
body.woocommerce-checkout #place_order.processing,
body.woocommerce-checkout #place_order.disabled{color:#fff!important}

/* Loading overlay */
body.woocommerce-checkout .blockUI.blockOverlay{background:rgba(239,247,242,.7)!important;border-radius:12px!important}
body.woocommerce-checkout .blockUI.blockOverlay::before{display:none!important}
body.woocommerce-checkout form.woocommerce-checkout.processing{opacity:.6;pointer-events:none;transition:opacity .25s ease}

/* =====================================================================
   CHECKOUT — MOBILE RESPONSIVE
   ===================================================================== */
@media (max-width:767px){
  body.woocommerce-checkout .entry-title{margin-top:20px!important;font-size:1.3rem!important}
  body.woocommerce-checkout .woocommerce{padding-top:12px!important;padding-bottom:40px!important}
  body.woocommerce-checkout .woocommerce-billing-fields,body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields{padding:20px!important;margin-bottom:12px!important;border-radius:10px!important}
  body.woocommerce-checkout #order_review{padding:20px 20px 0!important;border-radius:10px!important}
  body.woocommerce-checkout #payment{margin:14px 0 0!important;border-radius:0 0 10px 10px!important}
  body.woocommerce-checkout #payment ul.wc_payment_methods li label{padding:14px 18px!important}
  body.woocommerce-checkout #payment .payment_box{padding:12px 18px!important}
  body.woocommerce-checkout .woocommerce-privacy-policy-text{padding:12px 18px 0!important}
  body.woocommerce-checkout #payment .form-row.place-order{padding:16px 18px 20px!important}
  body.woocommerce-checkout .checkout_coupon,body.woocommerce-checkout .woocommerce-form-login{padding:18px!important}
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount{font-size:1.25rem!important}
  body.woocommerce-checkout .woocommerce-info,body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-error{padding:11px 12px 11px 40px!important;font-size:.78rem!important}
  body.woocommerce-checkout .woocommerce-info::before,body.woocommerce-checkout .woocommerce-message::before,
  body.woocommerce-checkout .woocommerce-error::before{top:12px!important;left:12px!important;font-size:14px!important}

  body.woocommerce-checkout .woocommerce-checkout-review-order-table th.product-total,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
    width:90px!important;
    min-width:90px!important;
  }

  body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name{
    padding-right:16px!important;
  }

  body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.shipping th{
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
  }

  body.woocommerce-checkout #shipping_method li input[type="radio"],
  body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"]{
    left:14px!important;
  }

  body.woocommerce-checkout #shipping_method li label,
  body.woocommerce-checkout .woocommerce-shipping-methods li label{
    padding:12px 12px 12px 46px!important;
    font-size:.7rem!important;
  }

  body.woocommerce-checkout .wrp-shipping-option__title{
    font-size:.7rem!important;
  }

  body.woocommerce-checkout .wrp-shipping-option__price,
  body.woocommerce-checkout #shipping_method .amount,
  body.woocommerce-checkout .woocommerce-shipping-methods .amount{
    font-size:.84rem!important;
  }
}
@media (max-width:480px){
  body.woocommerce-checkout .entry-title{margin-top:16px!important;font-size:1.15rem!important}
  body.woocommerce-checkout .woocommerce{padding-top:8px!important;padding-bottom:32px!important}
  body.woocommerce-checkout .woocommerce-billing-fields,body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields{padding:16px!important}
  body.woocommerce-checkout #order_review{padding:16px 16px 0!important}
  body.woocommerce-checkout #payment ul.wc_payment_methods li label{padding:12px 16px!important}
  body.woocommerce-checkout #payment .payment_box{padding:10px 16px!important}
  body.woocommerce-checkout .woocommerce-privacy-policy-text{padding:10px 16px 0!important}
  body.woocommerce-checkout #payment .form-row.place-order{padding:14px 16px 18px!important}
  body.woocommerce-checkout input[type="text"],body.woocommerce-checkout input[type="email"],
  body.woocommerce-checkout input[type="tel"],body.woocommerce-checkout input[type="number"],
  body.woocommerce-checkout input[type="password"],body.woocommerce-checkout select{font-size:1rem!important}

  body.woocommerce-checkout .woocommerce-checkout-review-order-table th.product-total,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
    width:84px!important;
    min-width:84px!important;
  }

  body.woocommerce-checkout #shipping_method li label,
  body.woocommerce-checkout .woocommerce-shipping-methods li label{
    padding:12px 12px 12px 44px!important;
  }
}
/* =====================================================================
   WOOCOMMERCE ORDER CONFIRMATION — woocommerce-order / order-received
   ===================================================================== */
body.woocommerce-order,
body.woocommerce-order-pay{
  background:#EFF7F2!important;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  color:#0F1C14;
  -webkit-font-smoothing:antialiased;
}

/* Page title */
body.woocommerce-order .entry-title,
body.woocommerce-order-pay .entry-title{
  font-size:1.6rem!important;font-weight:800!important;
  color:#0E3D22!important;letter-spacing:-.025em!important;
  margin-top:0!important;margin-bottom:4px!important;
}

/* ── Thank you banner ── */
body.woocommerce-order .woocommerce-order{
  max-width:860px;
  margin:0 auto;
  padding:0 0 60px;
}

body.woocommerce-order p.woocommerce-thankyou-order-received,
.woocommerce-thankyou-order-received{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  background:linear-gradient(90deg,#0E3D22 0%,#155E33 100%)!important;
  color:#fff!important;
  font-size:.92rem!important;font-weight:600!important;
  border-radius:12px!important;
  padding:18px 24px!important;
  margin:0 0 24px!important;
  line-height:1.5!important;
}
body.woocommerce-order p.woocommerce-thankyou-order-received::before,
.woocommerce-thankyou-order-received::before{
  content:'✓';
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;
  background:rgba(255,255,255,.18);
  border-radius:50%;
  font-size:.95rem;font-weight:900;
  flex-shrink:0;
}

/* ── Order overview strip ── */
.woocommerce-order-overview,
ul.woocommerce-order-overview{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  list-style:none!important;
  margin:0 0 24px!important;
  padding:0!important;
  background:#fff!important;
  border:1px solid #E4EDE8!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:0 1px 2px rgba(14,61,34,.04),0 4px 12px rgba(14,61,34,.05)!important;
}
.woocommerce-order-overview li,
ul.woocommerce-order-overview li{
  flex:1 1 140px!important;
  padding:18px 22px!important;
  border-right:1px solid #E4EDE8!important;
  border-bottom:none!important;
  margin:0!important;
  display:flex!important;flex-direction:column!important;gap:4px!important;
  font-size:.7rem!important;font-weight:700!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;
  color:#8FA396!important;
  line-height:1!important;
}
.woocommerce-order-overview li:last-child,
ul.woocommerce-order-overview li:last-child{border-right:none!important}
.woocommerce-order-overview li strong,
ul.woocommerce-order-overview li strong{
  display:block!important;
  font-size:.92rem!important;font-weight:700!important;
  letter-spacing:0!important;text-transform:none!important;
  color:#0E3D22!important;margin-top:4px!important;
  line-height:1.3!important;
}

/* ── Order details section wrapper ── */
.woocommerce-order-details,
section.woocommerce-order-details{
  background:#fff!important;
  border:1px solid #E4EDE8!important;
  border-radius:12px!important;
  overflow:hidden!important;
  margin-bottom:20px!important;
  box-shadow:0 1px 2px rgba(14,61,34,.04),0 4px 12px rgba(14,61,34,.05)!important;
}
.woocommerce-order-details h2.woocommerce-order-details__title,
section.woocommerce-order-details h2{
  font-size:.58rem!important;font-weight:800!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
  color:#5C6B62!important;
  margin:0!important;padding:18px 24px!important;
  border-bottom:1px solid #E4EDE8!important;
  display:flex!important;align-items:center!important;gap:8px!important;
}
.woocommerce-order-details h2.woocommerce-order-details__title::before,
section.woocommerce-order-details h2::before{
  content:'';display:inline-block;
  width:7px;height:7px;border-radius:50%;
  background:#2E7D52;flex-shrink:0;
  box-shadow:0 0 0 3px rgba(46,125,82,.18);
}

/* ── Order table ── */
.woocommerce-table--order-details,
table.woocommerce-table--order-details{
  width:100%!important;
  border-collapse:collapse!important;
  table-layout:auto!important;
  margin:0!important;
}
.woocommerce-table--order-details thead th{
  font-size:.58rem!important;font-weight:800!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;
  color:#8FA396!important;
  padding:14px 24px!important;
  border-bottom:1px solid #E4EDE8!important;
  text-align:left!important;
}
.woocommerce-table--order-details thead th:last-child{text-align:right!important}
.woocommerce-table--order-details tbody tr{border-bottom:1px solid #E4EDE8!important}
.woocommerce-table--order-details tbody tr:last-child{border-bottom:none!important}
.woocommerce-table--order-details tbody td{
  padding:16px 24px!important;
  font-size:.88rem!important;color:#2E3D34!important;
  vertical-align:top!important;line-height:1.55!important;
}
.woocommerce-table--order-details tbody td:last-child{
  text-align:right!important;font-weight:700!important;color:#0E3D22!important;
  white-space:nowrap!important;
}
/* Product name */
.woocommerce-table--order-details .woocommerce-table__product-name a{
  color:#2E3D34!important;font-weight:600!important;text-decoration:none!important;
}
.woocommerce-table--order-details .woocommerce-table__product-name a:hover{
  color:#0E3D22!important;text-decoration:underline!important;text-underline-offset:2px!important;
}
/* Product meta / description below product name */
.woocommerce-table--order-details .woocommerce-table__product-name .variation,
.woocommerce-table--order-details .product-purchase-note{
  font-size:.78rem!important;color:#5C6B62!important;font-weight:400!important;
  margin-top:6px!important;line-height:1.6!important;
}
/* Subtotal / total rows */
.woocommerce-table--order-details tfoot tr{border-bottom:1px solid #E4EDE8!important}
.woocommerce-table--order-details tfoot tr:last-child{border-bottom:none!important}
.woocommerce-table--order-details tfoot th,
.woocommerce-table--order-details tfoot td{
  padding:12px 24px!important;
  font-size:.82rem!important;color:#5C6B62!important;
  vertical-align:middle!important;
}
.woocommerce-table--order-details tfoot td{
  text-align:right!important;font-weight:600!important;color:#2E3D34!important;
}
/* Order total row */
.woocommerce-table--order-details tfoot .order-total th,
.woocommerce-table--order-details tfoot .order-total td{
  padding:16px 24px!important;
  font-size:.92rem!important;font-weight:800!important;
  color:#0E3D22!important;
  background:#F4FBF7!important;
  border-top:2px solid #D6EBE0!important;
}
.woocommerce-table--order-details tfoot .order-total td .amount{
  font-size:1.2rem!important;font-weight:800!important;color:#0E3D22!important;
}

/* ── Customer addresses grid ── */
.woocommerce-customer-details,
section.woocommerce-customer-details{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:16px!important;
  margin-bottom:20px!important;
}
.woocommerce-column--billing-address,
.woocommerce-column--shipping-address{
  background:#fff!important;
  border:1px solid #E4EDE8!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:0 1px 2px rgba(14,61,34,.04),0 4px 12px rgba(14,61,34,.05)!important;
}
.woocommerce-column--billing-address h2,
.woocommerce-column--shipping-address h2{
  font-size:.58rem!important;font-weight:800!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
  color:#5C6B62!important;
  margin:0!important;padding:16px 22px!important;
  border-bottom:1px solid #E4EDE8!important;
  display:flex!important;align-items:center!important;gap:8px!important;
}
.woocommerce-column--billing-address h2::before,
.woocommerce-column--shipping-address h2::before{
  content:'';display:inline-block;
  width:6px;height:6px;border-radius:50%;
  background:#2E7D52;flex-shrink:0;
}
.woocommerce-column--billing-address address,
.woocommerce-column--shipping-address address{
  display:block!important;
  padding:18px 22px!important;
  font-size:.85rem!important;color:#2E3D34!important;
  line-height:1.75!important;font-style:normal!important;
}
.woocommerce-column--billing-address address p,
.woocommerce-column--shipping-address address p{margin:0!important}

/* ── Notices on order page ── */
body.woocommerce-order .woocommerce-notice,
body.woocommerce-order .woocommerce-info{
  border-radius:8px!important;border-left-width:3px!important;
  padding:12px 16px 12px 20px!important;
  font-size:.82rem!important;font-weight:500!important;
  margin-bottom:20px!important;line-height:1.6!important;
  background:#EFF7F2!important;border-color:#2E7D52!important;color:#155E33!important;
  list-style:none!important;
}

/* ── Mobile responsive — order page ── */
@media (max-width:767px){
  body.woocommerce-order .woocommerce-order{padding:0 0 40px}
  .woocommerce-order-overview li,
  ul.woocommerce-order-overview li{
    flex:1 1 calc(50% - 1px)!important;
    border-bottom:1px solid #E4EDE8!important;
  }
  .woocommerce-order-overview li:nth-child(2n),
  ul.woocommerce-order-overview li:nth-child(2n){border-right:none!important}
  .woocommerce-customer-details,
  section.woocommerce-customer-details{grid-template-columns:1fr!important;gap:12px!important}
  .woocommerce-table--order-details thead th,
  .woocommerce-table--order-details tbody td,
  .woocommerce-table--order-details tfoot th,
  .woocommerce-table--order-details tfoot td{padding-left:16px!important;padding-right:16px!important}
  .woocommerce-order-details h2.woocommerce-order-details__title,
  section.woocommerce-order-details h2{padding:14px 16px!important}
  .woocommerce-column--billing-address h2,
  .woocommerce-column--shipping-address h2{padding:14px 16px!important}
  .woocommerce-column--billing-address address,
  .woocommerce-column--shipping-address address{padding:14px 16px!important}
}
@media (max-width:480px){
  .woocommerce-order-overview,
  ul.woocommerce-order-overview{flex-direction:column!important}
  .woocommerce-order-overview li,
  ul.woocommerce-order-overview li{
    flex:none!important;
    border-right:none!important;
    border-bottom:1px solid #E4EDE8!important;
  }
  .woocommerce-order-overview li:last-child,
  ul.woocommerce-order-overview li:last-child{border-bottom:none!important}
  .woocommerce-table--order-details tfoot .order-total td .amount{font-size:1.05rem!important}
}

/* =====================================================================
   FINAL SAFE FIXES — PURCHASE NOTE WRAP + PAYMENT RADIO ALIGNMENT
   Add this at the very bottom of the current working CSS only.
   ===================================================================== */

/* Purchase note wrap fix: desktop + mobile.
   Targets the exact WooCommerce classes without changing the whole table layout. */
body.woocommerce-checkout .woocommerce-table__product-purchase-note.product-purchase-note,
body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note,
body.woocommerce-checkout td.woocommerce-table__product-purchase-note.product-purchase-note,
body.woocommerce-checkout th.woocommerce-table__product-purchase-note.product-purchase-note{
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:break-word!important;
  word-wrap:break-word!important;
  word-break:normal!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  text-align:left!important;
  line-height:1.55!important;
}

/* If the purchase note is output as a row, wrap the text inside its cells only. */
body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note td,
body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note th{
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:break-word!important;
  word-wrap:break-word!important;
  word-break:normal!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  text-align:left!important;
  line-height:1.55!important;
}

/* Wrap any text elements inside the purchase note. */
body.woocommerce-checkout .woocommerce-table__product-purchase-note.product-purchase-note *,
body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note td *,
body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note th *{
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-wrap:break-word!important;
  word-break:normal!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Mobile purchase note safety. */
@media (max-width:767px){
  body.woocommerce-checkout .woocommerce-table__product-purchase-note.product-purchase-note,
  body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note td,
  body.woocommerce-checkout tr.woocommerce-table__product-purchase-note.product-purchase-note th{
    font-size:.82rem!important;
    line-height:1.55!important;
  }
}

/* Credit or Debit Card radio/checkbox alignment on the live checkout page only.
   Scoped to form.checkout so it does not touch /checkout/order-received. */
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method{
  position:relative!important;
}

/* Put the payment radio next to the Credit or Debit Card text. */
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input[type="radio"],
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input[type="checkbox"],
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input.input-radio{
  position:absolute!important;
  left:24px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:16px!important;
  height:16px!important;
  margin:0!important;
  float:none!important;
  z-index:2!important;
  accent-color:#0E3D22!important;
}

/* When payment box is visible, keep the radio aligned to the top label row. */
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method:has(.payment_box) > input[type="radio"],
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method:has(.payment_box) > input[type="checkbox"],
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method:has(.payment_box) > input.input-radio{
  top:29px!important;
  transform:none!important;
}

/* Move the label text right so it lines up after the radio. */
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > label{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:100%!important;
  min-height:58px!important;
  padding:15px 24px 15px 54px!important;
  margin:0!important;
  box-sizing:border-box!important;
  text-align:left!important;
  line-height:1.35!important;
  white-space:normal!important;
}

/* Keep card icons aligned right. */
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > label img{
  margin-left:auto!important;
  flex:0 0 auto!important;
  align-self:center!important;
  max-width:170px!important;
  height:auto!important;
  object-fit:contain!important;
}

/* Mobile payment radio alignment. */
@media (max-width:767px){
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input[type="radio"],
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input[type="checkbox"],
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input.input-radio{
    left:18px!important;
  }

  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > label{
    padding:14px 18px 14px 48px!important;
  }

  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > label img{
    max-width:120px!important;
  }
}

@media (max-width:480px){
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input[type="radio"],
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input[type="checkbox"],
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > input.input-radio{
    left:16px!important;
  }

  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > label{
    padding:12px 16px 12px 44px!important;
  }

  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method > label img{
    max-width:105px!important;
  }
}

/* =====================================================================
   FINAL SAFE FIX — CARD EXPIRY MONTH + YEAR INLINE
   Add this at the very bottom of the current working CSS.
   ===================================================================== */

/* Target the expiry date field row only on the live checkout form */
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="month"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="month"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="Month"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="Month"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="exp"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="exp"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="expiry"]),
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="expiry"]){
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  gap:8px!important;
}

/* Keep the Card Expiry Date label above both dropdowns */
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="month"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="month"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="Month"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="Month"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="exp"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="exp"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[name*="expiry"]) label,
body.woocommerce-checkout form.checkout #payment .payment_box .form-row:has(select[id*="expiry"]) label{
  flex:0 0 100%!important;
  width:100%!important;
  max-width:100%!important;
}

/* Month dropdown */
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="Month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="Month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="exp_month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="exp_month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="expiry_month"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="expiry_month"]{
  display:inline-flex!important;
  flex:0 0 calc(50% - 4px)!important;
  width:calc(50% - 4px)!important;
  max-width:calc(50% - 4px)!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}

/* Year dropdown */
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="Year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="Year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="exp_year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="exp_year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[name*="expiry_year"],
body.woocommerce-checkout form.checkout #payment .payment_box select[id*="expiry_year"]{
  display:inline-flex!important;
  flex:0 0 calc(50% - 4px)!important;
  width:calc(50% - 4px)!important;
  max-width:calc(50% - 4px)!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}

/* Mobile: keep Month and Year inline */
@media (max-width:767px){
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="Month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="Month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="exp_month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="exp_month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="expiry_month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="expiry_month"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="Year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="Year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="exp_year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="exp_year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[name*="expiry_year"],
  body.woocommerce-checkout form.checkout #payment .payment_box select[id*="expiry_year"]{
    flex:0 0 calc(50% - 4px)!important;
    width:calc(50% - 4px)!important;
    max-width:calc(50% - 4px)!important;
  }
}

/* =====================================================================
   FINAL SAFE FIX — PAYMENT LABEL LEFT ALIGN + TERMS STAR POSITION
   Add this at the very bottom of the current working CSS.
   ===================================================================== */

/* Align labels inside the Credit/Debit Card payment box to the left */
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard label,
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard .form-row label,
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard p label{
  text-align:left!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  margin-left:0!important;
  padding-left:0!important;
}

/* Ensure the payment box form rows do not center their contents */
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard .form-row,
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard p.form-row{
  text-align:left!important;
}

/* Terms checkbox row: align text and checkbox neatly */
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:100%!important;
  text-align:left!important;
}

/* Keep the checkbox tight to the terms text */
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox input[type="checkbox"]{
  flex:0 0 14px!important;
  width:14px!important;
  height:14px!important;
  margin:2px 4px 0 0!important;
  position:static!important;
}

/* Keep terms text inline */
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-checkbox-text{
  display:inline!important;
  text-align:left!important;
  line-height:1.45!important;
}

/* Move the required red star closer to the terms text and slightly left */
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-wrapper abbr.required,
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-wrapper .required{
  display:inline!important;
  margin-left:2px!important;
  padding-left:0!important;
  position:relative!important;
  left:-2px!important;
  top:0!important;
  vertical-align:baseline!important;
  color:#dc2626!important;
  text-decoration:none!important;
}

/* =====================================================================
   FINAL SAFE FIX — PRIVACY TEXT SPACING + REQUIRED STAR CLOSER
   ===================================================================== */

/* Fix spacing inside the privacy text box */
body.woocommerce-checkout form.checkout #payment .woocommerce-privacy-policy-text{
  padding:16px 22px!important;
  margin:0 0 16px 0!important;
  line-height:1.55!important;
}

body.woocommerce-checkout form.checkout #payment .woocommerce-privacy-policy-text p{
  margin:0!important;
  padding:0!important;
  line-height:1.55!important;
}

/* Move the required red star closer to the terms text */
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-wrapper .required,
body.woocommerce-checkout form.checkout #payment .woocommerce-terms-and-conditions-wrapper abbr.required{
  margin-left:3px!important;
  padding-left:0!important;
  position:relative!important;
  left:-8px!important;
  top:0!important;
  vertical-align:baseline!important;
  color:#dc2626!important;
  text-decoration:none!important;
}

/* =====================================================================
   FINAL SAFE FIX — PAYMENT INPUT CURSOR
   Card Number and CVV fields should use text cursor, not pointer hand.
   ===================================================================== */

body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[type="text"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[type="tel"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[type="number"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[name*="card"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[id*="card"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[name*="cvv"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[id*="cvv"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[name*="cvc"],
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard input[id*="cvc"]{
  cursor:text!important;
}

/* Keep dropdowns as normal selectable controls */
body.woocommerce-checkout form.checkout #payment .payment_box.payment_method_creditordebitcard select{
  cursor:pointer!important;
}

/* WooCommerce My Account: clean clinical layout */

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    background: #ffffff;
    border: 1px solid #d9e2e7;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    padding: 12px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin-bottom: 6px;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: block;
    padding: 12px 14px;
    color: #243746;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    border: 1px solid transparent;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: #eef6f8;
    color: #0f5f6f;
    border-color: #c8e1e6;
}

.woocommerce-account .woocommerce-MyAccount-content {
    padding: 24px;
    color: #243746;
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: #16313f;
    font-weight: 700;
}

.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error {
    border-radius: 6px;
    border-top-color: #0f5f6f;
    background: #f6fafb;
    color: #243746;
}

.woocommerce-account table.shop_table {
    border: 1px solid #d9e2e7;
    border-radius: 8px;
    overflow: hidden;
}

.woocommerce-account table.shop_table th {
    background: #f3f7f9;
    color: #16313f;
    font-weight: 700;
}

.woocommerce-account .button,
.woocommerce-account button.button {
    background: #0f5f6f;
    color: #ffffff;
    border-radius: 6px;
    font-weight: 700;
    border: none;
}

.woocommerce-account .button:hover,
.woocommerce-account button.button:hover {
    background: #0b4b58;
    color: #ffffff;
}

/* =====================================================================
   FINAL SAFE FIX — CHECKOUT PAYMENT METHOD TITLE + CARD ICON ALIGNMENT
   ===================================================================== */

body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method.payment_method_creditordebitcard>label{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:100%!important;
  min-height:64px!important;
  padding:14px 22px 14px 20px!important;
  margin:0!important;
  box-sizing:border-box!important;
  text-align:left!important;
  line-height:1.35!important;
  white-space:normal!important;
}

body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>input[type="radio"],
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>input.input-radio{
  display:none!important;
}

body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label img{
  display:block!important;
  width:auto!important;
  height:24px!important;
  max-width:148px!important;
  margin-left:auto!important;
  object-fit:contain!important;
  border-radius:0!important;
  opacity:1!important;
}

@media(max-width:767px){
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method.payment_method_creditordebitcard>label{
    min-height:60px!important;
    padding:13px 18px 13px 20px!important;
  }

  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label img{
    height:22px!important;
    max-width:126px!important;
  }
}

@media(max-width:480px){
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method.payment_method_creditordebitcard>label{
    min-height:58px!important;
    padding:12px 16px 12px 20px!important;
  }

  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label img{
    height:21px!important;
    max-width:118px!important;
  }
}

/* Fine tune Credit or Debit Card title alignment */
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method.payment_method_creditordebitcard>label{
  padding-left:24px!important;
}

@media(max-width:767px){
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method.payment_method_creditordebitcard>label{
    padding-left:24px!important;
  }
}

@media(max-width:480px){
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.payment_method_creditordebitcard>label,
  body.woocommerce-checkout form.checkout #payment ul.wc_payment_methods li.wc_payment_method.payment_method_creditordebitcard>label{
    padding-left:22px!important;
  }
}