body.single-product { --la-blue:#67B6CE; --la-white:#fff; --la-pill-bg:#F4FCFF; --la-price-font:"six-hands-marker"; }
body.single-product .la-product-meta { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0 18px; }
body.single-product .la-meta-pill { display:inline-flex; align-items:center; padding:4px 11px; border:1px solid var(--la-blue); border-radius:999px; color:var(--la-blue); background:var(--la-white); font-size:12px; line-height:1.4; text-decoration:none; transition:background .15s,color .15s; }
body.single-product .la-meta-pill:hover, body.single-product .la-meta-pill:focus-visible { background:var(--la-blue); color:var(--la-white); }
body.single-product form.cart .la-native-select { display:none!important; }
body.single-product form.cart .la-variation-pills { display:flex; flex-wrap:wrap; gap:9px; margin:5px 0 16px; }
body.single-product form.cart .la-option { margin:0; padding:9px 17px; min-height:42px; border:1px solid var(--la-blue); border-radius:999px; color:var(--la-blue); background:var(--la-white); font:inherit; font-size:14px; line-height:1.35; text-transform:none; letter-spacing:normal; white-space:normal; box-shadow:none; cursor:pointer; }
body.single-product form.cart .la-option:hover:not(:disabled), body.single-product form.cart .la-option[aria-pressed="true"] { color:var(--la-white); background:var(--la-blue); }
body.single-product form.cart .la-option:disabled { opacity:.35; cursor:not-allowed; text-decoration:line-through; }
body.single-product .la-meta-pill:focus-visible, body.single-product form.cart button:focus-visible { outline:2px solid var(--la-blue); outline-offset:3px; }
body.single-product form.cart .quantity[data-la-quantity] { display:inline-flex; align-items:stretch; flex-wrap:nowrap; padding:0!important; border:1px solid var(--la-blue)!important; border-radius:999px!important; overflow:hidden; height:46px; width:auto; float:none; vertical-align:middle; background:#fff; }
body.single-product form.cart .quantity[data-la-quantity] input.qty { border:0!important; border-left:1px solid var(--la-blue)!important; border-right:1px solid var(--la-blue)!important; border-radius:0!important; margin:0!important; padding:0 3px!important; width:43px!important; min-width:0; height:44px!important; color:var(--la-blue); background:white; box-shadow:none; text-align:center; appearance:textfield; }
body.single-product form.cart input.qty::-webkit-inner-spin-button, body.single-product form.cart input.qty::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
body.single-product form.cart .quantity button[class^="la-qty-"] { display:block; border:0; border-radius:0; margin:0; padding:0; width:35px; min-width:35px; height:44px; color:var(--la-blue); background:#fff; font:inherit; font-size:18px; box-shadow:none; cursor:pointer; }
body.single-product form.cart .quantity button[class^="la-qty-"]:hover { background:var(--la-blue); color:#fff; }
body.single-product form.cart .single_add_to_cart_button { border:1px solid var(--la-blue)!important; border-radius:999px!important; background:var(--la-blue)!important; color:white!important; min-height:46px; padding:10px 25px!important; text-transform:none; box-shadow:none; vertical-align:middle; }
body.single-product form.cart .single_add_to_cart_button:hover:not(.disabled) { background:white!important; color:var(--la-blue)!important; }
body.single-product form.cart .single_add_to_cart_button.disabled { opacity:.45!important; }

/* Elementor can apply button styles and sibling margins after the plugin CSS. */
body.single-product .la-product-meta .la-meta-pill {
  padding:2px 10px!important; color:var(--la-blue)!important;
  border-color:var(--la-blue)!important; background:var(--la-pill-bg)!important;
}
body.single-product .la-product-meta .la-meta-pill:hover,
body.single-product .la-product-meta .la-meta-pill:focus-visible {
  background:var(--la-blue)!important; color:#fff!important;
}
body.single-product form.cart .variations .la-variation-pills {
  gap:8px!important; justify-content:flex-start!important; padding:0!important;
}
body.single-product form.cart .variations .la-variation-pills > button.la-option {
  margin:0!important; padding:5px 13px!important; min-height:32px!important;
  width:auto!important; max-width:100%; flex:0 1 auto!important;
  font-size:14px!important; line-height:1.35!important; font-weight:400!important;
  border:1px solid var(--la-blue)!important; border-radius:999px!important;
  color:var(--la-blue)!important; background:var(--la-pill-bg)!important;
  letter-spacing:normal!important; text-transform:none!important;
}
body.single-product form.cart .variations .la-variation-pills > button.la-option:hover:not(:disabled),
body.single-product form.cart .variations .la-variation-pills > button.la-option[aria-pressed="true"] {
  background:var(--la-blue)!important; color:#fff!important;
}
/* Also hide Astra controls inserted AFTER JavaScript initialisation. */
body.single-product form.cart .quantity[data-la-quantity] > .plus,
body.single-product form.cart .quantity[data-la-quantity] > .minus {
  display:none!important;
}
body.single-product form.cart .quantity[data-la-quantity] > button[class^="la-qty-"] {
  margin:0!important; padding:0!important; border:0!important;
  border-radius:0!important; font-size:18px!important; line-height:44px!important;
  background:#fff!important; color:var(--la-blue)!important;
}
body.single-product form.cart .quantity[data-la-quantity] > button[class^="la-qty-"]:hover {
  background:var(--la-blue)!important; color:#fff!important;
}
body.single-product .woocommerce-variation-price .price,
body.single-product .woocommerce-variation-price .price * {
  font-family:var(--la-price-font), sans-serif!important;
  color:#0d3744!important;
  font-size:2.3rem!important;
  font-weight:400!important;
}

/* Keep variation choices in Astra's body typeface, not the button handwriting. */
body.single-product form.cart .variations .la-variation-pills > button.la-option {
  font-family:var(--la-attribute-font, var(--ast-body-font-family, var(--e-global-typography-text-font-family, sans-serif)))!important;
}


.la-promo-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: #08718a;
    color: #fff;

    font-family: "Six And", sans-serif;
    font-size: 22px;
    font-weight: normal;
    line-height: 1;

    padding: 10px 18px 9px;

    border-radius: 52% 48% 55% 45% / 45% 55% 46% 54%;

    transform: rotate(-4deg);

    position: relative;
    z-index: 5;
}

.la-product-visual {
    position: relative;
}

.la-product-visual .la-promo-badge {
    position: absolute;
    top: 12px;
    right: 12px;
}
