/* =========================================
   ELARA HERBAL — SINGLE PRODUCT REDESIGN
   Loaded only on single product pages (is_product()).
   Pure WooCommerce + Astra native markup — no Elementor,
   no XPro Elementor Addons.
   ========================================= */

/* ---- WC breadcrumb (Astra prints it inside .summary, above title) ---- */
.summary .woocommerce-breadcrumb{display:block;font-size:13px;color:var(--bd);margin-bottom:14px;}
.summary .woocommerce-breadcrumb a{color:var(--bd);transition:color .25s ease;text-decoration:none;}
.summary .woocommerce-breadcrumb a:hover{color:var(--g);}

/* ---- main product wrapper: 2-col grid (gallery | summary), tabs + related span full width ----
   div[id^="product-"] uniquely targets the single-product container
   (related-product <li> cards share the "product" class but never this id pattern). */
div[id^="product-"]{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  max-width:var(--mx);
  margin:0 auto;
  padding:44px 32px 70px;
  align-items:start;
}
div[id^="product-"] > .woocommerce-tabs,
div[id^="product-"] > .related.products{
  grid-column:1 / -1;
}

/* ---- gallery ---- */
.woocommerce-product-gallery{position:relative;border-radius:var(--r);overflow:hidden;background:var(--be);}
.woocommerce-product-gallery__wrapper{margin:0;}
.woocommerce-product-gallery img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;}
.woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:10px;margin:14px 0 0;list-style:none;padding:0;flex-wrap:wrap;}
.woocommerce-product-gallery .flex-control-thumbs li{width:72px;}
.woocommerce-product-gallery .flex-control-thumbs img{border-radius:8px;border:2px solid transparent;cursor:pointer;aspect-ratio:1/1;object-fit:cover;transition:border-color .2s ease;}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs img:hover{border-color:var(--g);}

/* ---- summary panel ---- */
.summary.entry-summary{padding-top:4px;}
.summary .single-product-category{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--au);margin-bottom:10px;}
.summary .single-product-category a{color:inherit;text-decoration:none;}
h1.product_title.entry-title{font-family:'Playfair Display',serif;font-size:34px;font-weight:700;color:var(--dk);margin:0 0 14px;line-height:1.25;}
.summary p.price,
.summary span.price{font-size:26px;font-weight:700;color:var(--g) !important;margin:0 0 18px;display:block;}
.summary p.price .woocommerce-Price-amount,
.summary span.price .woocommerce-Price-amount{color:var(--g) !important;}
.summary p.price del,
.summary span.price del{position:relative;display:inline-block;margin-right:10px;text-decoration:none !important;}
.summary p.price del *,
.summary span.price del *{text-decoration:none !important;}
.summary p.price del .woocommerce-Price-amount,
.summary span.price del .woocommerce-Price-amount{color:#9C9384 !important;font-weight:400;text-decoration:none;font-size:18px;position:relative;}
.summary p.price del::after,
.summary span.price del::after{content:'';position:absolute;left:-1px;right:-1px;top:50%;height:1.5px;background:#9C9384;transform:translateY(-50%);pointer-events:none;}
.summary p.price ins,
.summary span.price ins{text-decoration:none;}
.summary .woocommerce-product-details__short-description{font-size:15px;color:var(--bd);line-height:1.8;margin-bottom:20px;max-width:480px;}
.summary .woocommerce-product-details__short-description p:last-child{margin-bottom:0;}

.summary .star-rating{color:var(--au) !important;margin-bottom:16px;}
.summary .star-rating::before{color:#E3D2AC !important;}
.summary .star-rating span::before{color:var(--au) !important;}

p.stock{font-size:13px;font-weight:600;margin-bottom:16px;}
p.stock.in-stock{color:var(--g);}
p.stock.out-of-stock{color:var(--rd);}

/* trust badges (added via functions.php hook) */
.single-trust-badges{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:22px;}
.single-trust-badges span{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--bd);font-weight:600;}
.single-trust-badges i{color:var(--g);font-size:13px;}

/* ---- add to cart form (simple products) ---- */
.summary form.cart{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:26px;}
.summary .quantity{margin:0;}
.summary .quantity input.qty{width:74px;padding:13px 10px;border:1px solid var(--br);border-radius:6px;text-align:center;font-size:15px;color:var(--dk);}
.summary .quantity input.qty:focus{outline:none;border-color:var(--g);}
.summary .single_add_to_cart_button{background:var(--g) !important;color:#fff !important;border:none;border-radius:6px;padding:15px 36px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;transition:background .25s ease,transform .25s ease;}
.summary .single_add_to_cart_button:hover{background:var(--gd) !important;}
.summary .single_add_to_cart_button.disabled{opacity:.6;cursor:not-allowed;}
.summary .added_to_cart{display:inline-block;margin-left:6px;font-size:13px;color:var(--g);font-weight:600;}

/* ---- variable products: variation table + dropdowns ---- */
.summary table.variations{width:100%;margin-bottom:18px;border:none;}
.summary table.variations tr{border:none;}
.summary table.variations td,
.summary table.variations th{padding:6px 0;border:none;text-align:left;}
.summary table.variations label{font-size:13px;font-weight:600;color:var(--dk);}
.summary table.variations select{width:100%;padding:11px 14px;border:1px solid var(--br);border-radius:6px;font-size:14px;background:#fff;color:var(--dk);}
.summary table.variations select:focus{outline:none;border-color:var(--g);}
.summary .woocommerce-variation-price .price{font-size:22px;}
.summary .woocommerce-variation-add-to-cart{margin-top:10px;}
.summary .woocommerce-variation-availability p.stock{margin:8px 0;}
.summary a.reset_variations{font-size:12px;color:var(--au);margin-left:10px;}

/* ---- product meta (SKU / category / tags) ---- */
.summary .product_meta{font-size:13px;color:var(--bd);padding-top:18px;border-top:1px solid var(--br);display:flex;flex-direction:column;gap:6px;}
.summary .product_meta > span{display:block;}
.summary .product_meta a{color:var(--g);font-weight:600;text-decoration:none;}
.summary .product_meta a:hover{text-decoration:underline;}

/* ---- tabs (description / reviews) ---- */
.woocommerce-tabs{margin-top:50px;border-top:1px solid var(--br);padding-top:36px;}
.woocommerce-tabs ul.tabs{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 28px;border-bottom:1px solid var(--br);flex-wrap:wrap;}
.woocommerce-tabs ul.tabs li{margin:0;}
.woocommerce-tabs ul.tabs li a{display:inline-block;padding:12px 22px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--bd);border-bottom:2px solid transparent;transition:all .25s ease;text-decoration:none;}
.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li a:hover{color:var(--g);border-bottom-color:var(--g);}
.woocommerce-tabs .panel{font-size:14.5px;color:var(--bd);line-height:1.85;max-width:760px;}
.woocommerce-tabs .panel p{margin-bottom:14px;}
.woocommerce-tabs .panel h2{font-family:'Playfair Display',serif;font-size:20px;color:var(--dk);margin-bottom:14px;}

/* reviews */
#reviews .woocommerce-Reviews-title{font-family:'Playfair Display',serif;font-size:22px;color:var(--dk);margin-bottom:18px;}
#reviews .woocommerce-noreviews{color:var(--bd);font-size:14px;}
#reviews #review_form_wrapper{margin-top:30px;}
#reviews .comment-reply-title{font-family:'Playfair Display',serif;font-size:18px;color:var(--dk);display:block;margin-bottom:16px;}
#reviews .comment-form-rating select,
#reviews textarea,
#reviews input[type="text"],
#reviews input[type="email"]{width:100%;padding:12px 14px;border:1px solid var(--br);border-radius:6px;font-size:14px;margin-top:6px;}
#reviews textarea{min-height:120px;}
#reviews .form-submit{margin-top:6px;}
#reviews .form-submit input[type="submit"]{background:var(--g);color:#fff;border:none;border-radius:6px;padding:13px 28px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;width:auto;}
#reviews .form-submit input[type="submit"]:hover{background:var(--gd);}
#reviews p{margin-bottom:14px;}
#reviews label{display:block;font-size:13px;font-weight:600;color:var(--dk);margin-bottom:4px;}
#reviews .required{color:var(--rd);}

/* ---- related products (reuses Astra's shop-loop card markup) ---- */
.related.products{margin-top:60px;padding-top:50px;border-top:1px solid var(--br);}
.related.products > h2{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:var(--dk);text-align:center;margin-bottom:32px;text-transform:uppercase;letter-spacing:1px;}
.related.products ul.products{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:24px !important;list-style:none !important;padding:0 !important;margin:0 !important;}
.related.products ul.products li.product{width:auto !important;float:none !important;margin:0 !important;text-align:left !important;background:#fff;border:1px solid var(--br);border-radius:var(--r);overflow:hidden;position:relative;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .3s ease;box-shadow:0 2px 12px var(--sh);}
.related.products ul.products li.product:hover{transform:translateY(-6px);box-shadow:0 18px 44px rgba(46,42,34,.12);border-color:#E7D6AE;}
.related.products .astra-shop-thumbnail-wrap{position:relative;overflow:hidden;display:block;background:var(--be);}
.related.products .astra-shop-thumbnail-wrap img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.8,.2,1);}
.related.products li.product:hover .astra-shop-thumbnail-wrap img{transform:scale(1.07);}
.related.products .ast-on-card-button .ahfb-svg-iconset{background:var(--g) !important;color:#fff !important;opacity:1 !important;box-shadow:0 4px 12px rgba(58,74,44,.35) !important;}
.related.products .ast-on-card-button:hover .ahfb-svg-iconset{background:var(--gd) !important;}
.related.products .ast-card-action-tooltip{background:var(--dk) !important;}
.related.products span.onsale,
.related.products .ast-onsale-card{background:var(--au) !important;color:#fff !important;}
.related.products .astra-shop-summary-wrap{padding:16px 18px 20px;}
.related.products .ast-woo-product-category{display:block;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--au) !important;margin-bottom:6px;}
.related.products .woocommerce-loop-product__title{font-family:'Playfair Display',serif;font-size:16px;font-weight:600;color:var(--dk) !important;margin:0 0 8px;line-height:1.4;text-decoration:none;}
.related.products .astra-shop-summary-wrap > span.price{display:block;margin-bottom:14px;font-size:15px;}
.related.products span.price .woocommerce-Price-amount{color:var(--g) !important;font-weight:700;}
.related.products .astra-shop-summary-wrap a.button.add_to_cart_button{display:block;text-align:center;background:var(--g) !important;color:#fff !important;border:none;border-radius:6px;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;transition:background .25s ease;}
.related.products .astra-shop-summary-wrap a.button.add_to_cart_button:hover{background:var(--gd) !important;}

/* ---- responsive ---- */
@media(max-width:900px){
  div[id^="product-"]{grid-template-columns:1fr;padding:30px 24px 50px;gap:30px;}
  .related.products ul.products{grid-template-columns:repeat(3,1fr) !important;}
}
@media(max-width:760px){
  h1.product_title.entry-title{font-size:26px;}
  .summary p.price,.summary span.price{font-size:22px;}
  .related.products ul.products{grid-template-columns:repeat(2,1fr) !important;gap:16px !important;}
  .woocommerce-tabs ul.tabs{gap:4px;}
  .woocommerce-tabs ul.tabs li a{padding:10px 16px;font-size:12px;}
}
@media(max-width:480px){
  .related.products ul.products{grid-template-columns:1fr !important;}
  .summary form.cart{flex-direction:column;align-items:stretch;}
  .summary .single_add_to_cart_button{width:100%;text-align:center;}
}


/* Remove WooCommerce gallery zoom trigger (magnifying glass icon) */
.woocommerce-product-gallery__trigger{display:none !important;}


/* Limited-period offer urgency banner */
.elara-urgency-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:linear-gradient(135deg,#C0392B 0%,#A8311F 100%);color:#fff;border-radius:var(--rs);padding:13px 18px;margin:14px 0 18px;font-size:13.5px;font-weight:600;box-shadow:0 6px 20px rgba(192,57,43,.28);animation:elaraUrgencyPulse 2.2s ease-in-out infinite;}
@keyframes elaraUrgencyPulse{0%,100%{box-shadow:0 6px 20px rgba(192,57,43,.28);}50%{box-shadow:0 6px 26px rgba(192,57,43,.48);}}
.elara-urgency-banner i{font-size:15px;color:#FFD9A0;display:inline-block;animation:elaraBoltPulse 1.4s ease-in-out infinite;}
@keyframes elaraBoltPulse{0%,100%{transform:scale(1);opacity:1;}50%{transform:scale(1.22);opacity:.75;}}
.elara-urgency-text{letter-spacing:.2px;}
.elara-urgency-timer{margin-left:auto;background:rgba(255,255,255,.18);border-radius:6px;padding:5px 12px;font-family:'Jost',sans-serif;font-weight:700;letter-spacing:.5px;font-size:13px;}
@media(max-width:480px){.elara-urgency-banner{font-size:12.5px;padding:11px 14px;}.elara-urgency-timer{margin-left:0;width:100%;text-align:center;}}
