/* ============================================================
   Awtad Product Styler — v4.3.0
   Plus Jakarta Sans · Brand: #670cc0 · #18cdc7 · #0d1918 · #f7f5f2
   Scope: body.single-product ONLY
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300&display=swap');

/* ── Keyframes ── */
@keyframes awUp    { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:translateY(0)} }
@keyframes awRight { from{opacity:0;transform:translateX(22px)} to{opacity:1;transform:translateX(0)} }
@keyframes awZoom  { from{opacity:0;transform:scale(0.96)}      to{opacity:1;transform:scale(1)} }
@keyframes awCard  { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
@keyframes awPulse { 0%,100%{box-shadow:0 0 0 3px rgba(24,205,199,.25)} 50%{box-shadow:0 0 0 8px rgba(24,205,199,.04)} }
@keyframes awSkeleton { 0%{background-position:-400px 0} 100%{background-position:400px 0} }

/* ══════════════════════════════════════════════════════════
   1. BASE
══════════════════════════════════════════════════════════ */
body.single-product { font-family:'Plus Jakarta Sans',system-ui,sans-serif; background:#f7f5f2; }
body.single-product div.product { animation:awUp .6s cubic-bezier(.16,1,.3,1) both; }

/* ══════════════════════════════════════════════════════════
   2. BREADCRUMBS
══════════════════════════════════════════════════════════ */
body.single-product .woocommerce-breadcrumb {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  font-size:12px; font-weight:500; color:#98b0af; letter-spacing:.01em; animation:awUp .4s .05s both;
}
body.single-product .woocommerce-breadcrumb a { color:#68807f; text-decoration:none; transition:color .18s; }
body.single-product .woocommerce-breadcrumb a:hover { color:#670cc0; }

/* ══════════════════════════════════════════════════════════
   3. GALLERY
══════════════════════════════════════════════════════════ */
body.single-product .woocommerce-product-gallery {
  border-radius:20px; overflow:hidden; border:1px solid rgba(13,25,24,.09);
  background:linear-gradient(135deg,#f0e6fd,#d0f7f5);
  box-shadow:0 2px 20px rgba(13,25,24,.06);
  animation:awZoom .65s .1s cubic-bezier(.16,1,.3,1) both; transition:box-shadow .3s;
}
body.single-product .woocommerce-product-gallery:hover { box-shadow:0 16px 56px rgba(103,12,192,.12); }
body.single-product .woocommerce-product-gallery img { transition:transform .55s cubic-bezier(.16,1,.3,1); display:block; }
body.single-product .woocommerce-product-gallery:hover img { transform:scale(1.03); }
body.single-product .woocommerce-product-gallery .flex-control-thumbs { margin-top:12px; }
body.single-product .woocommerce-product-gallery .flex-control-thumbs li img {
  border-radius:10px; border:2px solid transparent; opacity:.55; transition:all .22s; cursor:pointer;
}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
body.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover { border-color:#670cc0; opacity:1; }

/* ══════════════════════════════════════════════════════════
   4. SUMMARY
══════════════════════════════════════════════════════════ */
body.single-product div.product div.summary { animation:awRight .65s .2s cubic-bezier(.16,1,.3,1) both; }

body.single-product .posted_in { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
body.single-product .posted_in a {
  display:inline-flex; align-items:center;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:11px; font-weight:700;
  letter-spacing:.04em; text-transform:uppercase; padding:4px 12px; border-radius:99px;
  background:#f0e6fd; color:#670cc0; text-decoration:none; transition:background .18s,color .18s;
}
body.single-product .posted_in a:hover { background:#670cc0; color:#fff; }

body.single-product h1.product_title {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  font-size:32px; font-weight:800; letter-spacing:-.045em; line-height:1.08; color:#0d1918; margin-bottom:16px;
}
body.single-product .woocommerce-product-rating { margin-bottom:16px; }
body.single-product .star-rating::before { color:rgba(13,25,24,.1); }
body.single-product .star-rating span::before { color:#18cdc7; }
body.single-product .woocommerce-review-link { font-size:12px; color:#68807f; }

body.single-product p.price, body.single-product span.price { display:flex; align-items:baseline; gap:10px; margin-bottom:20px; }
body.single-product .price .woocommerce-Price-amount {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:34px; font-weight:800; letter-spacing:-.06em;
  background:linear-gradient(135deg,#670cc0,#18cdc7);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
body.single-product .price del .woocommerce-Price-amount {
  font-size:18px; font-weight:500; background:none; -webkit-text-fill-color:#98b0af; color:#98b0af;
}
body.single-product .woocommerce-product-details__short-description {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:14px; color:#68807f; line-height:1.8;
  margin-bottom:22px; padding-bottom:22px; border-bottom:1px solid rgba(13,25,24,.08);
}
body.single-product .tagged_as {
  font-size:12px; color:#98b0af; margin-bottom:6px; display:flex; flex-wrap:wrap; align-items:center; gap:4px;
}
body.single-product .tagged_as a {
  font-size:11px; font-weight:600; color:#68807f; text-decoration:none; padding:2px 9px;
  border-radius:99px; background:rgba(13,25,24,.05); border:1px solid rgba(13,25,24,.08); transition:all .18s;
}
body.single-product .tagged_as a:hover { color:#670cc0; border-color:rgba(103,12,192,.2); background:#f0e6fd; }
body.single-product .sku_wrapper { font-size:11.5px; color:#98b0af; margin-bottom:4px; }

body.single-product p.stock {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13px; font-weight:700; color:#0fa8a3;
  display:inline-flex; align-items:center; gap:7px; margin-bottom:18px;
}
body.single-product p.stock::before {
  content:''; width:7px; height:7px; border-radius:50%; background:#18cdc7; flex-shrink:0;
  animation:awPulse 2s ease-in-out infinite;
}
body.single-product p.out-of-stock { color:#dc2626; font-weight:700; font-size:13px; }

/* ══════════════════════════════════════════════════════════
   5. QUANTITY + ADD TO CART
══════════════════════════════════════════════════════════ */
body.single-product form.cart { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:20px 0; }
body.single-product .quantity input.qty {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; border:1.5px solid rgba(13,25,24,.14);
  border-radius:12px; color:#0d1918; font-size:16px; font-weight:700; background:#fff;
  text-align:center; height:52px; width:72px; transition:border-color .2s,box-shadow .2s;
}
body.single-product .quantity input.qty:focus { border-color:#670cc0; outline:none; box-shadow:0 0 0 4px rgba(103,12,192,.08); }

body.single-product button.single_add_to_cart_button {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; background:#0d1918; color:#f7f5f2;
  border:none; border-radius:12px; font-size:14px; font-weight:700; padding:0 32px; height:52px;
  letter-spacing:-.01em; cursor:pointer; position:relative; overflow:hidden;
  transition:background .28s,transform .22s,box-shadow .22s; flex:1; min-width:160px;
}
body.single-product button.single_add_to_cart_button::after {
  content:''; position:absolute; top:0; left:-100%; width:60%; height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent); transition:left .55s ease;
}
body.single-product button.single_add_to_cart_button:hover::after { left:150%; }
body.single-product button.single_add_to_cart_button:hover {
  background:#670cc0; transform:translateY(-2px); box-shadow:0 12px 36px rgba(103,12,192,.28);
}
body.single-product button.single_add_to_cart_button:active { transform:translateY(0) scale(.98); }

/* ══════════════════════════════════════════════════════════
   6. TABS NAV
══════════════════════════════════════════════════════════ */
body.single-product .woocommerce-tabs .tabs {
  border-bottom:2px solid rgba(13,25,24,.08); padding:0; display:flex; gap:2px; margin-bottom:0; position:relative;
}
body.single-product .woocommerce-tabs .tabs li { background:transparent; border:none; border-radius:0; margin:0; padding:0; }
body.single-product .woocommerce-tabs .tabs li a {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; color:#68807f; font-size:13px; font-weight:600;
  padding:12px 22px; background:transparent; border-radius:0; display:block; text-decoration:none;
  position:relative; transition:color .2s; letter-spacing:-.01em;
}
body.single-product .woocommerce-tabs .tabs li a::after {
  content:''; position:absolute; bottom:-2px; left:0; right:0; height:2px;
  background:linear-gradient(90deg,#670cc0,#18cdc7); transform:scaleX(0); transition:transform .28s cubic-bezier(.16,1,.3,1);
}
body.single-product .woocommerce-tabs .tabs li.active a,
body.single-product .woocommerce-tabs .tabs li a:hover { color:#0d1918; background:transparent; }
body.single-product .woocommerce-tabs .tabs li.active a::after,
body.single-product .woocommerce-tabs .tabs li a:hover::after { transform:scaleX(1); }

body.single-product .woocommerce-tabs .panel {
  background:#fff; border:1px solid rgba(13,25,24,.07); border-top:none;
  border-radius:0 0 20px 20px; padding:2.5rem; animation:awUp .4s ease both;
}

/* ══════════════════════════════════════════════════════════
   7. DESCRIPTION — default p/h4/h5/ul/ol
   (used for non-semantic content not caught by JS)
══════════════════════════════════════════════════════════ */
body.single-product #tab-description h5 {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:10.5px; font-weight:800;
  letter-spacing:.14em; text-transform:uppercase; color:#68807f; margin-top:2.25rem; margin-bottom:14px;
  display:flex; align-items:center; gap:10px; padding-bottom:10px; border-bottom:1.5px solid rgba(13,25,24,.07);
}
body.single-product #tab-description h5::before {
  content:''; width:3px; height:16px; border-radius:2px;
  background:linear-gradient(180deg,#670cc0,#18cdc7); flex-shrink:0;
}
body.single-product #tab-description h5:first-child { margin-top:0; }

body.single-product #tab-description h4 {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:14px; font-weight:800;
  letter-spacing:-.03em; color:#0d1918; margin-top:2.25rem; margin-bottom:14px;
  padding:11px 16px; background:#f7f5f2; border-radius:10px; border-left:3px solid #670cc0;
}
body.single-product #tab-description h4:empty { display:none; margin:0; padding:0; }

body.single-product #tab-description p {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:14px; color:#68807f;
  line-height:1.8; margin:0 0 8px;
}
body.single-product #tab-description p:last-child { margin-bottom:0; }

body.single-product #tab-description ul {
  list-style:none; padding:0; margin:0 0 4px; display:flex; flex-direction:column;
  background:#fcfaf8; border:1px solid rgba(13,25,24,.08); border-radius:12px; overflow:visible;
}
body.single-product #tab-description ul li {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; padding:11px 16px 11px 40px; position:relative;
  border-bottom:1px solid rgba(13,25,24,.06); font-size:13.5px; font-weight:500; color:#68807f; line-height:1.6;
  transition:background .16s,color .16s,padding-left .18s;
}
body.single-product #tab-description ul > li::before {
  content:''; position:absolute; left:16px; top:50%; transform:translateY(-50%);
  width:6px; height:6px; border-radius:50%; background:linear-gradient(135deg,#670cc0,#18cdc7); transition:left .18s;
}
body.single-product #tab-description ul li:last-child { border-bottom:none; }
body.single-product #tab-description ul li:hover { background:#fff; color:#0d1918; padding-left:46px; }
body.single-product #tab-description ul li:hover::before { left:22px; }

body.single-product #tab-description ol {
  list-style:none; padding:0 16px 0 52px; margin:0 0 4px;
  counter-reset:awStep; display:flex; flex-direction:column; position:relative;
}
body.single-product #tab-description ol::before {
  content:''; position:absolute; left:27px; top:20px; bottom:20px;
  width:1.5px; background:linear-gradient(180deg,#670cc0,#18cdc7); opacity:.18;
}
body.single-product #tab-description ol li {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; padding:13px 14px; position:relative;
  border-bottom:1px solid rgba(13,25,24,.05); counter-increment:awStep;
  font-size:13.5px; font-weight:500; color:#68807f; line-height:1.6; transition:background .18s; border-radius:6px;
}
body.single-product #tab-description ol li:last-child { border-bottom:none; }
body.single-product #tab-description ol li:hover { background:#f7f5f2; }
body.single-product #tab-description ol li::before {
  content:counter(awStep); position:absolute; left:-36px; top:50%; transform:translateY(-50%);
  width:26px; height:26px; border-radius:50%;
  background:linear-gradient(135deg,#670cc0,#18cdc7); color:#fff;
  font-size:11px; font-weight:800; display:flex; align-items:center; justify-content:center; z-index:1;
}

/* ══════════════════════════════════════════════════════════
   8. NOTICES
══════════════════════════════════════════════════════════ */
body.single-product .woocommerce-message {
  border:none; background:#f0e6fd; border-radius:12px; color:#0d1918;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:14px; padding:13px 18px;
}
body.single-product .woocommerce-message::before { display:none; }
body.single-product .woocommerce-message a.button {
  background:#670cc0; color:#fff; border-radius:8px; font-size:12px; font-weight:700;
  padding:5px 14px; border:none; transition:background .2s; text-decoration:none;
}
body.single-product .woocommerce-message a.button:hover { background:#18cdc7; }
body.single-product .woocommerce-info {
  background:#d0f7f5; border:none; border-radius:12px; color:#0d1918;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:14px; padding:13px 18px;
}

/* ══════════════════════════════════════════════════════════
   9. RELATED PRODUCTS
══════════════════════════════════════════════════════════ */
body.single-product .related.products h2, body.single-product .upsells.products h2 {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:22px; font-weight:800;
  letter-spacing:-.04em; color:#0d1918; margin-bottom:1.5rem;
}
body.single-product .related.products ul.products li.product,
body.single-product .upsells.products ul.products li.product {
  background:#fff; border:1px solid rgba(13,25,24,.08); border-radius:16px; padding:1.25rem;
  transition:all .3s cubic-bezier(.16,1,.3,1); position:relative; overflow:hidden;
}
body.single-product .related.products ul.products li.product::before,
body.single-product .upsells.products ul.products li.product::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2.5px;
  background:linear-gradient(90deg,#670cc0,#18cdc7); transform:scaleX(0);
  transform-origin:left; transition:transform .32s cubic-bezier(.16,1,.3,1);
}
body.single-product .related.products ul.products li.product:hover::before,
body.single-product .upsells.products ul.products li.product:hover::before { transform:scaleX(1); }
body.single-product .related.products ul.products li.product:hover,
body.single-product .upsells.products ul.products li.product:hover {
  border-color:rgba(103,12,192,.2); box-shadow:0 16px 48px rgba(13,25,24,.09); transform:translateY(-5px);
}
body.single-product .related.products ul.products li.product:nth-child(1){animation:awCard .5s .10s cubic-bezier(.16,1,.3,1) both}
body.single-product .related.products ul.products li.product:nth-child(2){animation:awCard .5s .20s cubic-bezier(.16,1,.3,1) both}
body.single-product .related.products ul.products li.product:nth-child(3){animation:awCard .5s .30s cubic-bezier(.16,1,.3,1) both}
body.single-product .related.products ul.products li.product a img,
body.single-product .upsells.products ul.products li.product a img {
  border-radius:10px; transition:transform .4s cubic-bezier(.16,1,.3,1);
}
body.single-product .related.products ul.products li.product:hover a img { transform:scale(1.04); }
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:14px; font-weight:700;
  letter-spacing:-.02em; color:#0d1918; transition:color .2s;
}
body.single-product .related.products ul.products li.product:hover .woocommerce-loop-product__title { color:#670cc0; }
body.single-product .related.products ul.products li.product .price .woocommerce-Price-amount,
body.single-product .upsells.products ul.products li.product .price .woocommerce-Price-amount {
  font-size:16px; font-weight:800;
  background:linear-gradient(135deg,#670cc0,#18cdc7);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
body.single-product .related.products ul.products li.product .button,
body.single-product .upsells.products ul.products li.product .button {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; background:#0d1918; color:#f7f5f2;
  border:none; border-radius:9px; font-size:12px; font-weight:700; padding:9px 16px;
  transition:all .22s; display:block; text-align:center; text-decoration:none; margin-top:10px; width:100%;
}
body.single-product .related.products ul.products li.product .button:hover,
body.single-product .upsells.products ul.products li.product .button:hover {
  background:#670cc0; transform:translateY(-1px); box-shadow:0 6px 20px rgba(103,12,192,.24);
}

/* ══════════════════════════════════════════════════════════
   10. FOCUS
══════════════════════════════════════════════════════════ */
body.single-product *:focus-visible { outline:2px solid #670cc0; outline-offset:2px; border-radius:6px; }

/* ══════════════════════════════════════════════════════════
   ADVANCED UX
══════════════════════════════════════════════════════════ */
.aw-progress-bar {
  position:fixed; top:0; left:0; width:0%; height:3px;
  background:linear-gradient(90deg,#670cc0,#18cdc7); z-index:99999; transition:width .1s linear; pointer-events:none;
}
.aw-skeleton { background:linear-gradient(90deg,#ede8e2 25%,#e3ddd6 50%,#ede8e2 75%); background-size:800px 100%; animation:awSkeleton 1.4s ease-in-out infinite; border-radius:8px; }
.aw-skeleton-wrap { display:none; padding:2rem 0; }
.aw-skeleton-wrap.active { display:block; }
.aw-sk-img { width:100%; aspect-ratio:1; border-radius:16px; margin-bottom:1rem; }
.aw-sk-h   { height:20px; border-radius:6px; margin-bottom:10px; }
.aw-sk-h.w60{width:60%} .aw-sk-h.w40{width:40%}
.aw-sk-p   { height:14px; border-radius:4px; margin-bottom:7px; }
.aw-sk-p.w90{width:90%} .aw-sk-p.w80{width:80%}
.aw-sk-btn { height:52px; border-radius:12px; margin-top:20px; }

@keyframes awLbIn { from{opacity:0;transform:scale(.92)} to{opacity:1;transform:scale(1)} }
.aw-lightbox {
  display:none; position:fixed; inset:0; background:rgba(13,25,24,.92); z-index:99998;
  align-items:center; justify-content:center; padding:2rem;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.aw-lightbox.open { display:flex; animation:awUp .25s ease both; }
.aw-lightbox img { max-width:min(90vw,800px); max-height:88vh; border-radius:16px; object-fit:contain; animation:awLbIn .3s cubic-bezier(.16,1,.3,1) both; box-shadow:0 32px 80px rgba(0,0,0,.5); }
.aw-lightbox-close {
  position:absolute; top:20px; right:24px; width:40px; height:40px; border-radius:50%;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); color:#fff; font-size:20px;
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .2s; line-height:1;
}
.aw-lightbox-close:hover { background:rgba(255,255,255,.22); }
body.single-product .woocommerce-product-gallery__image { cursor:zoom-in; }

.aw-tab-pill {
  position:absolute; bottom:-2px; height:2px; background:linear-gradient(90deg,#670cc0,#18cdc7);
  border-radius:2px; transition:left .28s cubic-bezier(.16,1,.3,1),width .28s cubic-bezier(.16,1,.3,1); pointer-events:none;
}
.aw-scroll-reviews {
  display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:600; color:#68807f;
  cursor:pointer; background:none; border:none; padding:0; margin-left:8px;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; transition:color .18s; vertical-align:middle;
}
.aw-scroll-reviews:hover { color:#670cc0; }
.aw-scroll-reviews::before { content:'↓'; font-size:11px; }

.aw-sku-copy { display:inline-flex; align-items:center; gap:4px; cursor:pointer; position:relative; }
.aw-sku-copy .sku { transition:color .18s; }
.aw-sku-copy:hover .sku { color:#670cc0; }
.aw-sku-copy-icon { font-size:11px; color:#98b0af; opacity:0; transition:opacity .18s; }
.aw-sku-copy:hover .aw-sku-copy-icon { opacity:1; color:#670cc0; }
.aw-sku-toast {
  position:absolute; left:50%; top:-30px; transform:translateX(-50%);
  background:#0d1918; color:#18cdc7; font-size:10px; font-weight:700; padding:4px 10px;
  border-radius:6px; white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .18s; letter-spacing:.04em;
}
.aw-sku-toast.show { opacity:1; }

.aw-float-cart { display:none; }
@media (max-width:768px) {
  .aw-float-cart {
    display:flex; align-items:center; gap:12px; position:fixed; bottom:0; left:0; right:0;
    background:rgba(247,245,242,.96); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
    padding:14px 20px; border-top:1px solid rgba(13,25,24,.09); z-index:9999;
    transform:translateY(100%); opacity:0; transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .3s ease;
  }
  .aw-float-cart.visible { transform:translateY(0); opacity:1; }
  .aw-float-cart-title { flex:1; font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13px; font-weight:700; color:#0d1918; letter-spacing:-.02em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .aw-float-cart-price { font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:15px; font-weight:800; background:linear-gradient(135deg,#670cc0,#18cdc7); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; flex-shrink:0; }
  .aw-float-cart-btn { font-family:'Plus Jakarta Sans',system-ui,sans-serif; background:#670cc0; color:#fff; border:none; border-radius:10px; font-size:13px; font-weight:700; padding:11px 20px; cursor:pointer; flex-shrink:0; transition:background .2s; }
  .aw-float-cart-btn:hover { background:#5409a3; }

  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    display:flex; flex-direction:row; overflow-x:auto; gap:14px; padding-bottom:16px;
    scroll-snap-type:x mandatory; scrollbar-width:none;
  }
  body.single-product .related.products ul.products::-webkit-scrollbar,
  body.single-product .upsells.products ul.products::-webkit-scrollbar { display:none; }
  body.single-product .related.products ul.products li.product,
  body.single-product .upsells.products ul.products li.product { flex:0 0 220px; scroll-snap-align:start; }
}

.comment-form-rating .stars { display:inline-flex; flex-direction:row-reverse; gap:4px; }
.comment-form-rating .stars a { font-size:24px; color:rgba(13,25,24,.12); text-decoration:none; transition:color .15s,transform .15s; }
.comment-form-rating .stars a:hover,
.comment-form-rating .stars a:hover ~ a { color:#18cdc7; transform:scale(1.2); }
.comment-form-rating .stars.selected a { color:rgba(13,25,24,.12); }
.comment-form-rating .stars.selected .active ~ a,
.comment-form-rating .stars.selected .active { color:#18cdc7; }


/* ============================================================
   SEMANTIC SECTION CARDS — v4.3.0
   Built and injected by product-enhancements.js
   All scoped inside body.single-product #tab-description
   ============================================================ */

/* ── Section card shell ── */
body.single-product #tab-description .aw-sec {
  background:#fff;
  border:1px solid rgba(13,25,24,.08);
  border-radius:14px;
  overflow:hidden;
  margin-bottom:1rem;
  animation:awCard .45s cubic-bezier(.16,1,.3,1) both;
}

/* Paired sections side by side */
body.single-product #tab-description .aw-sec-pair {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  margin-bottom:1rem;
}
body.single-product #tab-description .aw-sec-pair .aw-sec { margin-bottom:0; }

/* ── Section header ── */
body.single-product #tab-description .aw-sec-head {
  display:flex; align-items:center; gap:10px; padding:13px 18px;
  border-bottom:1px solid rgba(13,25,24,.07);
}
body.single-product #tab-description .aw-sec-icon {
  width:30px; height:30px; border-radius:8px; display:flex; align-items:center; justify-content:center; flex-shrink:0;
  background:rgba(13,25,24,.05);
}
body.single-product #tab-description .aw-sec-icon-svg {
  display:flex; align-items:center; justify-content:center; width:16px; height:16px;
}
body.single-product #tab-description .aw-sec-icon-svg svg { width:16px; height:16px; }
body.single-product #tab-description .aw-sec-title {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  font-size:13px; font-weight:700; color:#0d1918; letter-spacing:-.01em;
}

/* ── Accent colors on header ── */
body.single-product #tab-description .aw-sec--teal   .aw-sec-head { background:rgba(209,247,245,.4); }
body.single-product #tab-description .aw-sec--teal   .aw-sec-icon { background:rgba(24,205,199,.15); color:#0fa8a3; }
body.single-product #tab-description .aw-sec--teal   .aw-sec-title { color:#0c5c5a; }

body.single-product #tab-description .aw-sec--purple .aw-sec-head { background:rgba(240,230,253,.4); }
body.single-product #tab-description .aw-sec--purple .aw-sec-icon { background:rgba(103,12,192,.12); color:#670cc0; }
body.single-product #tab-description .aw-sec--purple .aw-sec-title { color:#3d0a75; }

body.single-product #tab-description .aw-sec--dark   .aw-sec-head { background:#0d1918; }
body.single-product #tab-description .aw-sec--dark   .aw-sec-icon { background:rgba(255,255,255,.1); color:#18cdc7; }
body.single-product #tab-description .aw-sec--dark   .aw-sec-title { color:#18cdc7; }

body.single-product #tab-description .aw-sec--amber  .aw-sec-head { background:rgba(254,249,195,.5); }
body.single-product #tab-description .aw-sec--amber  .aw-sec-icon { background:rgba(234,179,8,.15); color:#854F0B; }
body.single-product #tab-description .aw-sec--amber  .aw-sec-title { color:#713f12; }

body.single-product #tab-description .aw-sec--green  .aw-sec-head { background:rgba(209,250,229,.4); }
body.single-product #tab-description .aw-sec--green  .aw-sec-icon { background:rgba(16,185,129,.15); color:#10b981; }
body.single-product #tab-description .aw-sec--green  .aw-sec-title { color:#065f46; }

body.single-product #tab-description .aw-sec--red    .aw-sec-head { background:rgba(254,226,226,.4); }
body.single-product #tab-description .aw-sec--red    .aw-sec-icon { background:rgba(239,68,68,.12); color:#dc2626; }
body.single-product #tab-description .aw-sec--red    .aw-sec-title { color:#991b1b; }

body.single-product #tab-description .aw-sec--blue   .aw-sec-head { background:rgba(219,234,254,.4); }
body.single-product #tab-description .aw-sec--blue   .aw-sec-icon { background:rgba(59,130,246,.12); color:#2563eb; }
body.single-product #tab-description .aw-sec--blue   .aw-sec-title { color:#1e3a8a; }

body.single-product #tab-description .aw-sec--coral  .aw-sec-head { background:rgba(254,226,209,.4); }
body.single-product #tab-description .aw-sec--coral  .aw-sec-icon { background:rgba(234,88,12,.12); color:#c2410c; }
body.single-product #tab-description .aw-sec--coral  .aw-sec-title { color:#7c2d12; }

body.single-product #tab-description .aw-sec--gray   .aw-sec-head { background:rgba(243,244,246,.6); }
body.single-product #tab-description .aw-sec--gray   .aw-sec-icon { background:rgba(13,25,24,.08); color:#68807f; }
body.single-product #tab-description .aw-sec--gray   .aw-sec-title { color:#0d1918; }

/* ── Pills (who-is-this-for) ── */
body.single-product #tab-description .aw-pills-grid {
  display:flex; flex-wrap:wrap; gap:8px; padding:16px 18px;
}
body.single-product #tab-description .aw-pill {
  display:inline-flex; align-items:center; padding:7px 14px; border-radius:99px;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13px; font-weight:500; color:#68807f;
  background:#f7f5f2; border:1px solid rgba(13,25,24,.09); transition:all .18s;
}
body.single-product #tab-description .aw-pill:hover { background:#f0e6fd; color:#670cc0; border-color:rgba(103,12,192,.2); }

/* ── Checklist ── */
body.single-product #tab-description .aw-checklist { display:flex; flex-direction:column; }
body.single-product #tab-description .aw-check-row {
  display:flex; align-items:flex-start; gap:12px; padding:12px 18px;
  border-bottom:1px solid rgba(13,25,24,.06); transition:background .15s;
}
body.single-product #tab-description .aw-check-row:last-child { border-bottom:none; }
body.single-product #tab-description .aw-check-row:hover { background:#fafafa; }
body.single-product #tab-description .aw-check-icon {
  width:20px; height:20px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  flex-shrink:0; margin-top:1px;
}
body.single-product #tab-description .aw-check-icon svg { width:10px; height:10px; }
body.single-product #tab-description .aw-check-in  { background:rgba(16,185,129,.12); color:#059669; }
body.single-product #tab-description .aw-check-ex  { background:rgba(239,68,68,.1); color:#dc2626; }
body.single-product #tab-description .aw-check-def { background:rgba(103,12,192,.1); color:#670cc0; }
body.single-product #tab-description .aw-check-text {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13.5px; font-weight:400; color:#68807f; line-height:1.55;
}

/* ── Workflow (horizontal steps) ── */
body.single-product #tab-description .aw-flow-steps {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(80px,1fr));
}
body.single-product #tab-description .aw-flow-step {
  display:flex; flex-direction:column; align-items:center; padding:20px 12px; text-align:center;
  border-right:1px solid rgba(13,25,24,.07); position:relative;
}
body.single-product #tab-description .aw-flow-step:last-child { border-right:none; }
body.single-product #tab-description .aw-flow-step:hover { background:#fafafa; }
body.single-product #tab-description .aw-step-num {
  width:30px; height:30px; border-radius:50%; background:#f0e6fd;
  display:flex; align-items:center; justify-content:center;
  font-size:12px; font-weight:700; color:#670cc0; margin-bottom:10px; flex-shrink:0;
  border:1.5px solid rgba(103,12,192,.2);
}
body.single-product #tab-description .aw-flow-step:hover .aw-step-num {
  background:#670cc0; color:#fff; border-color:transparent;
}
body.single-product #tab-description .aw-step-text {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:12px; color:#68807f; line-height:1.5;
}

/* ── Requirements grid ── */
body.single-product #tab-description .aw-req-grid {
  display:grid; grid-template-columns:1fr 1fr;
}
body.single-product #tab-description .aw-req-item {
  display:flex; align-items:flex-start; gap:10px; padding:13px 18px;
  border-bottom:1px solid rgba(13,25,24,.06); border-right:1px solid rgba(13,25,24,.06);
  transition:background .15s;
}
body.single-product #tab-description .aw-req-item:nth-child(even) { border-right:none; }
body.single-product #tab-description .aw-req-item:nth-last-child(-n+2) { border-bottom:none; }
body.single-product #tab-description .aw-req-item:hover { background:#f7f9ff; }
body.single-product #tab-description .aw-req-num {
  width:22px; height:22px; border-radius:50%; background:rgba(59,130,246,.12); color:#2563eb;
  display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; flex-shrink:0; margin-top:1px;
}
body.single-product #tab-description .aw-req-text {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13px; color:#68807f; line-height:1.5;
}

/* ── Deliverables chips ── */
body.single-product #tab-description .aw-file-grid {
  display:flex; flex-wrap:wrap; gap:8px; padding:16px 18px;
}
body.single-product #tab-description .aw-file-chip {
  display:inline-flex; align-items:center; gap:6px; padding:8px 14px;
  border-radius:10px; border:1px solid rgba(13,25,24,.09); background:#f7f5f2;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13px; font-weight:500; color:#68807f;
  transition:all .18s;
}
body.single-product #tab-description .aw-file-chip:hover { background:#f0e6fd; color:#670cc0; border-color:rgba(103,12,192,.2); }

/* ── Timeline ── */
body.single-product #tab-description .aw-timeline { display:flex; flex-direction:column; padding:8px 0; }
body.single-product #tab-description .aw-t-row { display:flex; align-items:flex-start; padding:0 18px; }
body.single-product #tab-description .aw-t-connector {
  display:flex; flex-direction:column; align-items:center; width:32px; flex-shrink:0;
}
body.single-product #tab-description .aw-t-dot {
  width:10px; height:10px; border-radius:50%; background:rgba(103,12,192,.25);
  border:2px solid rgba(103,12,192,.4); flex-shrink:0; margin-top:15px; box-sizing:border-box;
}
body.single-product #tab-description .aw-t-line {
  width:1.5px; background:rgba(13,25,24,.1); flex:1; min-height:14px;
}
body.single-product #tab-description .aw-t-body {
  padding:10px 0 10px 10px;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13.5px; color:#68807f; line-height:1.55;
}

/* ── Revision Policy ── */
body.single-product #tab-description .aw-policy-body { padding:14px 18px; display:flex; flex-direction:column; gap:6px; }
body.single-product #tab-description .aw-policy-intro {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13.5px; color:#0d1918; line-height:1.6;
  font-weight:500; padding:10px 14px; background:#f7f5f2; border-radius:8px; border-left:3px solid rgba(103,12,192,.3);
  margin-bottom:4px;
}

/* ── Notes (important notes) ── */
body.single-product #tab-description .aw-notes-body { padding:8px 18px 14px; display:flex; flex-direction:column; gap:0; }
body.single-product #tab-description .aw-note-item {
  display:flex; align-items:flex-start; gap:12px; padding:10px 0;
  border-bottom:1px solid rgba(13,25,24,.06);
}
body.single-product #tab-description .aw-note-item:last-child { border-bottom:none; }
body.single-product #tab-description .aw-note-dot {
  width:7px; height:7px; border-radius:50%; background:#f59e0b; flex-shrink:0; margin-top:7px;
}
body.single-product #tab-description .aw-note-text {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13.5px; color:#68807f; line-height:1.55;
}

/* ── Usage Rights grid ── */
body.single-product #tab-description .aw-rights-grid {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
}
body.single-product #tab-description .aw-right-item {
  padding:14px 18px; border-bottom:1px solid rgba(13,25,24,.06); border-right:1px solid rgba(13,25,24,.06);
  transition:background .15s;
}
body.single-product #tab-description .aw-right-item:nth-child(even) { border-right:none; }
body.single-product #tab-description .aw-right-item:nth-last-child(-n+2) { border-bottom:none; }
body.single-product #tab-description .aw-right-item:hover { background:#f0fffe; }
body.single-product #tab-description .aw-right-label {
  font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#98b0af; margin-bottom:4px;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
}
body.single-product #tab-description .aw-right-val {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:13px; color:#68807f; line-height:1.5;
}

/* ── Section body wrapper ── */
body.single-product #tab-description .aw-sec-body { display:block; }

/* ── Prose paragraphs inside any card ── */
body.single-product #tab-description .aw-prose-body {
  padding:16px 18px; display:flex; flex-direction:column; gap:10px;
}
body.single-product #tab-description .aw-prose-p {
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  font-size:13.5px; color:#68807f; line-height:1.7; margin:0;
}
body.single-product #tab-description .aw-prose-lead {
  font-size:13.5px; color:#0d1918; font-weight:500;
  padding:10px 14px; background:#f7f5f2; border-radius:8px;
  border-left:3px solid rgba(103,12,192,.25); margin-bottom:4px;
}

/* ── Mobile ── */
@media (max-width:640px) {
  body.single-product #tab-description .aw-sec-pair { grid-template-columns:1fr; }
  body.single-product #tab-description .aw-req-grid { grid-template-columns:1fr; }
  body.single-product #tab-description .aw-req-item { border-right:none; }
  body.single-product #tab-description .aw-req-item:nth-last-child(-n+2) { border-bottom:1px solid rgba(13,25,24,.06); }
  body.single-product #tab-description .aw-req-item:last-child { border-bottom:none; }
  body.single-product #tab-description .aw-rights-grid { grid-template-columns:1fr; }
  body.single-product #tab-description .aw-right-item { border-right:none; }
  body.single-product #tab-description .aw-right-item:nth-last-child(-n+2) { border-bottom:1px solid rgba(13,25,24,.06); }
  body.single-product #tab-description .aw-right-item:last-child { border-bottom:none; }
  body.single-product #tab-description .aw-flow-steps { grid-template-columns:repeat(2,1fr); }
}
