/* ============================================================
   THETEKCOFFEE — PRODUCT BÁN HÀNG RETAIL PREMIUM — GLOBAL
   V27 GLOBAL ISOLATION — BODY.TTC-SALES-PRODUCT
   Áp dụng Product bán hàng WooCommerce có body class ttc-sales-product.
   Không dùng :has() và không thể tác động Product Premium Buyback.
   ============================================================ */

/* =========================================================
   THETEKCOFFEE — PRODUCT TARGET MATCH V3
   GLOBAL: ALL SALES PRODUCTS
   WooCommerce + Flatsome
   Scope: body.ttc-sales-product
   ========================================================= */

body.ttc-sales-product {
  --ttc-green:#0b7a4b;
  --ttc-green-2:#118a57;
  --ttc-green-dark:#075f3a;
  --ttc-ink:#102035;
  --ttc-text:#344457;
  --ttc-muted:#728091;
  --ttc-border:#e6ece9;
  --ttc-soft:#f7faf8;
  --ttc-soft-green:#eef8f2;
  --ttc-danger:#ef3f3f;
  --ttc-shadow:0 10px 28px rgba(20,45,32,.055);
  background:#fff;
}

body.ttc-sales-product *,
body.ttc-sales-product *::before,
body.ttc-sales-product *::after{box-sizing:border-box}

/* ---------- KHUNG CHUNG ---------- */
body.ttc-sales-product .container,
body.ttc-sales-product .row.row-main,
body.ttc-sales-product .product-main .row.content-row{
  max-width:1180px;
}

body.ttc-sales-product .product-main{
  padding:18px 0 22px;
  background:#fff;
}

body.ttc-sales-product .product-main .row.content-row{
  align-items:flex-start;
}

@media (min-width:850px){
  body.ttc-sales-product .product-gallery.large-6{
    flex-basis:50%;
    max-width:50%;
  }
  body.ttc-sales-product .product-summary.large-6{
    flex-basis:50%;
    max-width:50%;
  }
}

/* ---------- GALLERY: CARD GIỐNG MOCKUP ---------- */
body.ttc-sales-product .product-gallery-inner{
  padding:18px 18px 14px;
  background:#fff;
  border:1px solid var(--ttc-border);
  border-radius:16px;
  box-shadow:var(--ttc-shadow);
}

body.ttc-sales-product .product-gallery .product-images{
  margin:0 0 14px;
  background:#fbfcfc;
  border:0;
  border-radius:13px;
  overflow:hidden;
}

body.ttc-sales-product .product-gallery .flickity-viewport,
body.ttc-sales-product .product-gallery .flickity-slider{
  border-radius:13px;
}

body.ttc-sales-product .product-gallery .product-thumbnails{
  margin:0 -4px;
}

body.ttc-sales-product .product-gallery .product-thumbnails .col{
  padding:4px;
}

body.ttc-sales-product .product-gallery .product-thumbnails a{
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:5px;
  background:#fff;
  border:1px solid #e7ece9;
  border-radius:6px;
  overflow:hidden;
  opacity:1;
  transition:.18s ease;
}

body.ttc-sales-product .product-gallery .product-thumbnails .is-nav-selected a,
body.ttc-sales-product .product-gallery .product-thumbnails a:hover{
  border-color:var(--ttc-green);
  box-shadow:0 0 0 1px var(--ttc-green);
}

body.ttc-sales-product .product-gallery .zoom-button{
  width:38px;
  height:38px;
  border:1px solid #e2e9e5;
  background:#fff;
  box-shadow:0 4px 14px rgba(23,44,34,.08);
}

body.ttc-sales-product .product-gallery .badge-container{display:none!important}

/* ---------- SUMMARY: SALES COMMAND CENTER ---------- */
body.ttc-sales-product .product-summary{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding-left:20px;
}

body.ttc-sales-product .ttc-brand-kicker-v3{order:1}
body.ttc-sales-product .product-summary .product-title{order:2}
body.ttc-sales-product .product-summary .woocommerce-product-rating{order:3}
body.ttc-sales-product .ttc-pdp-badges-v3{order:4}
body.ttc-sales-product .product-summary .price-wrapper{order:5}
body.ttc-sales-product .product-summary .product-short-description{order:6}
body.ttc-sales-product .product-summary form.cart{order:7}
body.ttc-sales-product .product-summary .product_meta{order:9}
body.ttc-sales-product .product-summary .social-icons{order:10}

body.ttc-sales-product .ttc-brand-kicker-v3{
  margin:2px 0 7px;
  color:var(--ttc-green);
  font-size:12px;
  font-weight:800;
  line-height:1;
  letter-spacing:.04em;
  text-transform:uppercase;
}

body.ttc-sales-product .product-summary .product-title{
  margin:0 0 8px;
  color:var(--ttc-ink);
  font-size:31px;
  font-weight:800;
  line-height:1.16;
  letter-spacing:-.7px;
  text-transform:none;
}

body.ttc-sales-product .product-summary .is-divider{display:none!important}

body.ttc-sales-product .product-summary .woocommerce-product-rating{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:24px;
  margin:0 0 10px;
  color:#677487;
  font-size:12px;
}

body.ttc-sales-product .product-summary .star-rating{
  color:#ffad00;
  margin:0;
}

body.ttc-sales-product .product-summary .woocommerce-review-link{
  color:#667386;
  font-size:12px;
  text-decoration:none;
}

body.ttc-sales-product .ttc-pdp-badges-v3{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 11px;
}

body.ttc-sales-product .ttc-pdp-badges-v3 span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 11px;
  border-radius:8px;
  background:#eaf6ef;
  border:1px solid #d8ece1;
  color:#245a43;
  font-size:12px;
  font-weight:650;
  line-height:1.2;
}

body.ttc-sales-product .product-summary .price-wrapper{
  margin:0 0 12px;
}

body.ttc-sales-product .product-summary .price{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
  margin:0;
  color:var(--ttc-green);
  line-height:1;
}

body.ttc-sales-product .product-summary .price > .amount,
body.ttc-sales-product .product-summary .price ins .amount,
body.ttc-sales-product .single_variation .price ins .amount,
body.ttc-sales-product .single_variation .price > .amount{
  color:var(--ttc-green)!important;
  font-size:31px!important;
  font-weight:800!important;
  letter-spacing:-.6px;
}

body.ttc-sales-product .product-summary .price del,
body.ttc-sales-product .product-summary .price del .amount,
body.ttc-sales-product .single_variation .price del,
body.ttc-sales-product .single_variation .price del .amount{
  color:#8c959f!important;
  font-size:14px!important;
  font-weight:500!important;
  opacity:1!important;
}

body.ttc-sales-product .product-summary .price ins,
body.ttc-sales-product .single_variation .price ins{text-decoration:none}

body.ttc-sales-product .ttc-discount-badge-v3{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:4px 8px;
  border-radius:7px;
  background:var(--ttc-danger);
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1;
}

/* ---------- SHORT DESCRIPTION CARD ---------- */
body.ttc-sales-product .product-summary .product-short-description{
  margin:0 0 13px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:inherit;
  font-size:inherit;
}

body.ttc-sales-product .ttc-pdp-short-v3{
  padding:14px 14px 13px;
  background:#fff;
  border:1px solid var(--ttc-border);
  border-radius:10px;
  box-shadow:0 7px 22px rgba(24,55,39,.04);
}

body.ttc-sales-product .ttc-pdp-short-v3 h3{
  margin:0 0 8px;
  padding:0;
  background:transparent;
  border:0;
  color:var(--ttc-ink);
  font-size:13px;
  font-weight:800;
  line-height:1.45;
}

body.ttc-sales-product .ttc-pdp-lead-v3{
  margin:0 0 10px!important;
  color:#4d5b69!important;
  font-size:12px!important;
  line-height:1.55!important;
}

body.ttc-sales-product .ttc-pdp-highlights-v3{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  border:1px solid #e8edea;
  border-radius:8px;
  overflow:hidden;
}

body.ttc-sales-product .ttc-pdp-highlights-v3 li{
  position:relative;
  display:flex;
  align-items:center;
  min-height:42px;
  margin:0!important;
  padding:9px 10px 9px 34px!important;
  color:#344457;
  font-size:11.5px;
  line-height:1.35;
  background:#fff;
  border-bottom:1px solid #eef2ef;
}

body.ttc-sales-product .ttc-pdp-highlights-v3 li:nth-child(odd){border-right:1px solid #eef2ef}
body.ttc-sales-product .ttc-pdp-highlights-v3 li:nth-last-child(-n+2){border-bottom:0}
body.ttc-sales-product .ttc-pdp-highlights-v3 li::marker{content:""}
body.ttc-sales-product .ttc-pdp-highlights-v3 li::before{
  content:"✓";
  position:absolute;
  left:10px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  width:17px;
  height:17px;
  border-radius:50%;
  background:#1c9a61;
  color:#fff;
  font-size:10px;
  font-weight:900;
}

/* ---------- VARIATION SWATCHES ---------- */
body.ttc-sales-product form.variations_form,
body.ttc-sales-product form.cart{
  margin:0!important;
}

body.ttc-sales-product table.variations{
  width:100%;
  margin:0 0 12px;
  border:0;
}

body.ttc-sales-product table.variations tbody,
body.ttc-sales-product table.variations tr,
body.ttc-sales-product table.variations th,
body.ttc-sales-product table.variations td{
  display:block;
  width:100%;
}

body.ttc-sales-product table.variations tr{margin:0 0 11px}
body.ttc-sales-product table.variations th,
body.ttc-sales-product table.variations td{padding:0;border:0}

body.ttc-sales-product table.variations .label{
  margin:0 0 6px;
  color:var(--ttc-ink);
  font-size:12px;
  font-weight:800;
  line-height:1.3;
}

body.ttc-sales-product table.variations .value select{
  min-height:44px;
  border:1px solid #d8e2dd;
  border-radius:8px;
  background:#fff;
  box-shadow:none;
}

body.ttc-sales-product table.variations .value.ttc-swatches-ready-v3 select{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}

body.ttc-sales-product .ttc-variation-swatches-v3{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

body.ttc-sales-product .ttc-swatch-v3{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  margin:0;
  padding:7px 11px;
  border:1px solid #dce4e0;
  border-radius:6px;
  background:#fff;
  color:#25384a;
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  text-transform:none;
  letter-spacing:0;
  box-shadow:none;
}

body.ttc-sales-product .ttc-swatch-v3:hover,
body.ttc-sales-product .ttc-swatch-v3.is-active{
  border-color:var(--ttc-green);
  box-shadow:0 0 0 1px var(--ttc-green);
  color:#193c2d;
}

body.ttc-sales-product .ttc-swatch-dot-v3{
  width:19px;
  height:19px;
  border-radius:50%;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
}

body.ttc-sales-product .reset_variations{
  display:inline-block;
  margin-top:6px;
  color:#718079;
  font-size:10px;
}

body.ttc-sales-product .single_variation{
  margin:0 0 8px;
}

body.ttc-sales-product .single_variation .woocommerce-variation-price{
  display:none; /* Giá chính đã hiển thị phía trên, tránh lặp */
}

/* ---------- PRIMARY BUY ROW ---------- */
body.ttc-sales-product .ttc-buy-row-v3{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);
  gap:10px;
  width:100%;
  margin:4px 0 10px;
}

body.ttc-sales-product .ttc-buy-row-v3 .quantity{display:none!important}

body.ttc-sales-product .ttc-buy-row-v3 .ttc-buy-now-v3,
body.ttc-sales-product .ttc-buy-row-v3 .single_add_to_cart_button{
  width:100%;
  min-height:52px;
  margin:0!important;
  padding:8px 13px;
  border-radius:7px;
  font-size:14px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:0;
  text-transform:uppercase;
  box-shadow:none;
}

body.ttc-sales-product .ttc-buy-row-v3 .ttc-buy-now-v3{
  border:1px solid var(--ttc-green);
  background:linear-gradient(180deg,#15905c 0%,#087647 100%);
  color:#fff;
}

body.ttc-sales-product .ttc-buy-row-v3 .ttc-buy-now-v3::after{
  content:"Giao nhanh – Thanh toán linh hoạt";
  display:block;
  margin-top:3px;
  font-size:9.5px;
  font-weight:500;
  text-transform:none;
  opacity:.9;
}

body.ttc-sales-product .ttc-buy-row-v3 .single_add_to_cart_button{
  border:1px solid #9dcdb6!important;
  background:#fff!important;
  color:var(--ttc-green)!important;
}

body.ttc-sales-product .ttc-buy-row-v3 .single_add_to_cart_button:hover{
  background:#f2faf6!important;
}

/* ---------- SECONDARY CTA ---------- */
body.ttc-sales-product .ttc-pdp-actions-v3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0;
}

body.ttc-sales-product .ttc-action-card-v3{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:52px;
  padding:7px 7px;
  border:1px solid #dce3e0;
  border-radius:7px;
  background:#fff;
  color:#1b2937;
  text-align:center;
  text-decoration:none;
  transition:.15s ease;
}

body.ttc-sales-product .ttc-action-card-v3:hover{
  border-color:#a7cdbc;
  background:#f7fbf9;
}

body.ttc-sales-product .ttc-action-card-v3 strong{
  color:#1b2937;
  font-size:11px;
  line-height:1.25;
  text-transform:uppercase;
}

body.ttc-sales-product .ttc-action-card-v3 span{
  margin-top:2px;
  color:#697687;
  font-size:9.5px;
  line-height:1.25;
}

body.ttc-sales-product .product_meta,
body.ttc-sales-product .product-summary > .social-icons{display:none!important}

/* ---------- FULL WIDTH BLOCKS BELOW HERO ---------- */
body.ttc-sales-product .ttc-below-hero-v3,
body.ttc-sales-product .ttc-section-nav-wrap-v3{
  width:min(calc(100% - 30px),1180px);
  margin-left:auto;
  margin-right:auto;
}

/* Trust bar */
body.ttc-sales-product .ttc-trustbar-v3{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin:0 0 20px;
  background:#fff;
  border:1px solid var(--ttc-border);
  border-radius:10px;
  box-shadow:0 8px 24px rgba(25,55,38,.035);
  overflow:hidden;
}

body.ttc-sales-product .ttc-trust-item-v3{
  position:relative;
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:9px;
  align-items:center;
  min-height:70px;
  padding:11px 14px;
}

body.ttc-sales-product .ttc-trust-item-v3:not(:last-child)::after{
  content:"";
  position:absolute;
  right:0;
  top:17px;
  bottom:17px;
  width:1px;
  background:#edf1ef;
}

body.ttc-sales-product .ttc-trust-icon-v3{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  color:var(--ttc-green);
}
body.ttc-sales-product .ttc-trust-icon-v3 svg{width:28px;height:28px;stroke:currentColor}
body.ttc-sales-product .ttc-trust-item-v3 strong,
body.ttc-sales-product .ttc-trust-item-v3 small{display:block}
body.ttc-sales-product .ttc-trust-item-v3 strong{color:#203040;font-size:11px;line-height:1.3}
body.ttc-sales-product .ttc-trust-item-v3 small{margin-top:2px;color:#75808b;font-size:9.5px;line-height:1.3}

/* Offer panel */
body.ttc-sales-product .ttc-offer-panel-v3{
  margin:0 0 22px;
  padding:18px;
  border:1px solid #dceee4;
  border-radius:12px;
  background:linear-gradient(105deg,#eef9f3 0%,#f6fbf8 100%);
}

body.ttc-sales-product .ttc-offer-title-v3{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 12px;
  color:#145c3c;
  font-size:18px;
  font-weight:800;
  line-height:1.3;
}
body.ttc-sales-product .ttc-offer-title-v3 svg{width:22px;height:22px;stroke:var(--ttc-green)}

body.ttc-sales-product .ttc-offer-grid-v3{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

body.ttc-sales-product .ttc-offer-card-v3{
  position:relative;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 22px;
  gap:9px;
  align-items:center;
  min-height:78px;
  padding:10px;
  background:#fff;
  border:1px solid #edf1ef;
  border-radius:9px;
}

body.ttc-sales-product .ttc-offer-thumb-v3{
  display:flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border-radius:7px;
  background:#f6f8f7;
  color:#344b3f;
}
body.ttc-sales-product .ttc-offer-thumb-v3 svg{width:30px;height:30px;stroke:currentColor}
body.ttc-sales-product .ttc-offer-copy-v3 strong,
body.ttc-sales-product .ttc-offer-copy-v3 span,
body.ttc-sales-product .ttc-offer-copy-v3 b{display:block}
body.ttc-sales-product .ttc-offer-copy-v3 strong{color:#1f3040;font-size:11px;line-height:1.25}
body.ttc-sales-product .ttc-offer-copy-v3 span{margin-top:2px;color:#7a8590;font-size:9.5px;line-height:1.25}
body.ttc-sales-product .ttc-offer-copy-v3 b{margin-top:3px;color:#f04a45;font-size:12px;line-height:1.2}
body.ttc-sales-product .ttc-offer-plus-v3{
  display:flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#16945b;
  color:#fff;
  font-size:16px;
  font-weight:500;
}

/* ---------- CUSTOM SECTION NAV LIKE MOCKUP ---------- */
body.ttc-sales-product .ttc-section-nav-wrap-v3{
  margin-top:0;
  margin-bottom:0;
  border:1px solid var(--ttc-border);
  border-bottom:0;
  border-radius:11px 11px 0 0;
  background:#fff;
  box-shadow:0 7px 24px rgba(23,49,35,.035);
  overflow:hidden;
}

body.ttc-sales-product .ttc-section-nav-v3{
  display:flex;
  align-items:center;
  overflow-x:auto;
  scrollbar-width:none;
  padding:0 10px;
}
body.ttc-sales-product .ttc-section-nav-v3::-webkit-scrollbar{display:none}

body.ttc-sales-product .ttc-section-nav-v3 a{
  position:relative;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 14px;
  color:#3a4857;
  font-size:10.5px;
  font-weight:650;
  text-decoration:none;
  white-space:nowrap;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child{color:var(--ttc-green)}
body.ttc-sales-product .ttc-section-nav-v3 a:first-child::after{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  bottom:0;
  height:2px;
  background:var(--ttc-green);
}
body.ttc-sales-product .ttc-section-nav-v3 a:hover{color:var(--ttc-green)}

/* Hide default Flatsome/Woo tab nav, keep description panel */
body.ttc-sales-product .woocommerce-tabs .tabs{display:none!important}
body.ttc-sales-product .woocommerce-tabs .panel{display:none!important}
body.ttc-sales-product .woocommerce-tabs #tab-description,
body.ttc-sales-product .woocommerce-tabs .woocommerce-Tabs-panel--description{display:block!important}
body.ttc-sales-product .woocommerce-tabs{padding:0!important;margin:0!important}

/* ---------- DESCRIPTION CARD ---------- */
body.ttc-sales-product #tab-description,
body.ttc-sales-product .woocommerce-Tabs-panel--description{
  width:min(calc(100% - 30px),1180px)!important;
  max-width:1180px!important;
  margin:0 auto 36px!important;
  padding:22px 24px 26px!important;
  background:#fff!important;
  border:1px solid var(--ttc-border)!important;
  border-radius:0 0 11px 11px!important;
  box-shadow:0 9px 26px rgba(23,49,35,.035)!important;
  color:var(--ttc-text)!important;
  font-size:13px!important;
  line-height:1.7!important;
}

body.ttc-sales-product .ttc-detail-layout-v3{
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  gap:32px;
  align-items:start;
}

body.ttc-sales-product .ttc-detail-main-v3{min-width:0}
body.ttc-sales-product .ttc-detail-section-v3{scroll-margin-top:120px}
body.ttc-sales-product .ttc-detail-section-v3 + .ttc-detail-section-v3{margin-top:34px}

body.ttc-sales-product .ttc-eyebrow-v3{
  margin:0 0 5px!important;
  color:var(--ttc-green)!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.08em;
}

body.ttc-sales-product .ttc-product-detail-v3 h2{
  margin:0 0 11px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--ttc-ink)!important;
  font-size:20px!important;
  font-weight:800!important;
  line-height:1.35!important;
  letter-spacing:-.25px;
  text-transform:none!important;
}

body.ttc-sales-product .ttc-product-detail-v3 p{
  margin:0 0 12px!important;
  color:#4c5967!important;
  font-size:12.5px!important;
  line-height:1.72!important;
}

body.ttc-sales-product .ttc-spec-wrap-v3{overflow-x:auto;border:1px solid var(--ttc-border);border-radius:9px}
body.ttc-sales-product .ttc-spec-table-v3{width:100%;margin:0!important;border:0!important;border-collapse:collapse!important;font-size:12px!important}
body.ttc-sales-product .ttc-spec-table-v3 th,
body.ttc-sales-product .ttc-spec-table-v3 td{padding:10px 12px!important;border:0!important;border-bottom:1px solid #edf1ef!important;text-align:left;vertical-align:top}
body.ttc-sales-product .ttc-spec-table-v3 th{width:34%;background:#f5faf7;color:#244d39;font-weight:750}
body.ttc-sales-product .ttc-spec-table-v3 tr:last-child th,
body.ttc-sales-product .ttc-spec-table-v3 tr:last-child td{border-bottom:0!important}

body.ttc-sales-product .ttc-info-cards-v3,
body.ttc-sales-product .ttc-package-grid-v3{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
body.ttc-sales-product .ttc-info-cards-v3 article,
body.ttc-sales-product .ttc-package-grid-v3 > div{
  padding:12px;
  border:1px solid var(--ttc-border);
  border-radius:8px;
  background:#fbfcfb;
}
body.ttc-sales-product .ttc-info-cards-v3 strong,
body.ttc-sales-product .ttc-info-cards-v3 span,
body.ttc-sales-product .ttc-package-grid-v3 strong,
body.ttc-sales-product .ttc-package-grid-v3 span{display:block}
body.ttc-sales-product .ttc-info-cards-v3 strong,
body.ttc-sales-product .ttc-package-grid-v3 strong{color:#243646;font-size:11.5px}
body.ttc-sales-product .ttc-info-cards-v3 span,
body.ttc-sales-product .ttc-package-grid-v3 span{margin-top:3px;color:#71808b;font-size:10.5px;line-height:1.45}

body.ttc-sales-product .ttc-note-v3{margin-top:10px!important;padding:10px 12px;border-radius:8px;background:#fff9ec;color:#675a39!important}

body.ttc-sales-product .ttc-tradein-box-v3{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:18px;
  border:1px solid #dcece4;
  border-radius:10px;
  background:#f4faf7;
}
body.ttc-sales-product .ttc-inline-cta-v3{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:8px 14px;
  border-radius:7px;
  background:var(--ttc-green);
  color:#fff!important;
  font-size:11px;
  font-weight:750;
  text-decoration:none!important;
  white-space:nowrap;
}

body.ttc-sales-product .ttc-product-detail-v3 details{
  margin:7px 0;
  padding:11px 12px;
  border:1px solid var(--ttc-border);
  border-radius:8px;
  background:#fbfcfb;
}
body.ttc-sales-product .ttc-product-detail-v3 summary{color:#293b4a;font-size:11.5px;font-weight:750;cursor:pointer}
body.ttc-sales-product .ttc-product-detail-v3 details p{margin:8px 0 0!important}

/* Right "why buy" card */
body.ttc-sales-product .ttc-detail-aside-v3{position:sticky;top:92px}
body.ttc-sales-product .ttc-why-card-v3{
  padding:14px 15px;
  border:0;
  border-radius:9px;
  background:#f6faf8;
}
body.ttc-sales-product .ttc-why-card-v3 h3{
  margin:0 0 10px;
  color:#135e3e;
  font-size:14px;
  font-weight:800;
  line-height:1.35;
}
body.ttc-sales-product .ttc-why-card-v3 ul{margin:0!important;padding:0!important;list-style:none!important}
body.ttc-sales-product .ttc-why-card-v3 li{
  position:relative;
  margin:0 0 7px!important;
  padding:0 0 0 20px!important;
  color:#465664;
  font-size:10.5px;
  line-height:1.4;
}
body.ttc-sales-product .ttc-why-card-v3 li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:13px;
  height:13px;
  border-radius:50%;
  background:#15925a;
  color:#fff;
  font-size:8px;
  font-weight:900;
}

/* ---------- MOBILE STICKY CTA ---------- */
body.ttc-sales-product .ttc-mobile-buybar-v3{display:none}

/* ---------- TABLET ---------- */
@media (max-width:1024px){
  body.ttc-sales-product .product-summary .product-title{font-size:27px}
  body.ttc-sales-product .ttc-offer-grid-v3{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.ttc-sales-product .ttc-trustbar-v3{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.ttc-sales-product .ttc-trust-item-v3::after{display:none}
  body.ttc-sales-product .ttc-detail-layout-v3{grid-template-columns:minmax(0,1fr) 230px;gap:22px}
}

/* ---------- MOBILE ---------- */
@media (max-width:849px){
  body.ttc-sales-product{padding-bottom:72px}
  body.ttc-sales-product .product-main{padding-top:8px}
  body.ttc-sales-product .product-gallery-inner{margin:0 4px;padding:10px;border-radius:12px;box-shadow:none}
  body.ttc-sales-product .product-gallery .product-thumbnails a{min-height:60px}
  body.ttc-sales-product .product-summary{padding:16px 15px 0}
  body.ttc-sales-product .product-summary .product-title{font-size:25px}
  body.ttc-sales-product .product-summary .price > .amount,
  body.ttc-sales-product .product-summary .price ins .amount{font-size:27px!important}
  body.ttc-sales-product .ttc-pdp-highlights-v3{grid-template-columns:1fr}
  body.ttc-sales-product .ttc-pdp-highlights-v3 li:nth-child(odd){border-right:0}
  body.ttc-sales-product .ttc-pdp-highlights-v3 li:nth-last-child(-n+2){border-bottom:1px solid #eef2ef}
  body.ttc-sales-product .ttc-pdp-highlights-v3 li:last-child{border-bottom:0}
  body.ttc-sales-product .ttc-buy-row-v3{grid-template-columns:1.5fr 1fr;gap:7px}
  body.ttc-sales-product .ttc-pdp-actions-v3{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  body.ttc-sales-product .ttc-action-card-v3{padding:6px 4px}
  body.ttc-sales-product .ttc-action-card-v3 strong{font-size:9.5px}
  body.ttc-sales-product .ttc-action-card-v3 span{font-size:8.5px}
  body.ttc-sales-product .ttc-below-hero-v3,
  body.ttc-sales-product .ttc-section-nav-wrap-v3,
  body.ttc-sales-product #tab-description,
  body.ttc-sales-product .woocommerce-Tabs-panel--description{width:calc(100% - 20px)!important}
  body.ttc-sales-product .ttc-trustbar-v3{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:9px}
  body.ttc-sales-product .ttc-trust-item-v3{flex:0 0 205px;scroll-snap-align:start}
  body.ttc-sales-product .ttc-offer-panel-v3{padding:14px}
  body.ttc-sales-product .ttc-offer-grid-v3{grid-template-columns:1fr}
  body.ttc-sales-product .ttc-section-nav-v3 a{min-height:42px;padding:0 11px;font-size:10px}
  body.ttc-sales-product #tab-description,
  body.ttc-sales-product .woocommerce-Tabs-panel--description{padding:16px 14px 20px!important}
  body.ttc-sales-product .ttc-detail-layout-v3{grid-template-columns:1fr;gap:18px}
  body.ttc-sales-product .ttc-detail-aside-v3{position:static;order:-1}
  body.ttc-sales-product .ttc-product-detail-v3 h2{font-size:18px!important}
  body.ttc-sales-product .ttc-info-cards-v3,
  body.ttc-sales-product .ttc-package-grid-v3{grid-template-columns:1fr}
  body.ttc-sales-product .ttc-tradein-box-v3{grid-template-columns:1fr}
  body.ttc-sales-product .ttc-inline-cta-v3{width:100%}

  body.ttc-sales-product .ttc-mobile-buybar-v3{
    position:fixed;
    z-index:99999;
    left:0;right:0;bottom:0;
    display:grid;
    grid-template-columns:34% 66%;
    gap:8px;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.98);
    border-top:1px solid #e1e8e4;
    box-shadow:0 -8px 24px rgba(20,45,32,.08);
    backdrop-filter:blur(10px);
  }
  body.ttc-sales-product .ttc-mobile-buybar-v3 a,
  body.ttc-sales-product .ttc-mobile-buybar-v3 button{
    min-height:46px;
    margin:0;
    border-radius:8px;
    font-size:13px;
    font-weight:800;
  }
  body.ttc-sales-product .ttc-mobile-zalo-v3{
    display:flex;align-items:center;justify-content:center;
    border:1px solid #c9ddd2;background:#fff;color:var(--ttc-green);text-decoration:none;
  }
  body.ttc-sales-product .ttc-mobile-buy-v3{border:0;background:var(--ttc-green);color:#fff}
}
/* =========================================================
   THETEKCOFFEE PRODUCT TARGET MATCH V3
   CONTACT / NO-PRICE LAYOUT PATCH V4

   Mục tiêu:
   - Xóa toàn bộ giá KHÔNG làm Product Summary co lại.
   - Contact Mode giữ đúng vị trí của form.cart (order:7).
   - Giữ khung Variation + 2 CTA + 3 CTA phụ như layout bán hàng.
   - Không ép sản phẩm không có giá vào WooCommerce cart.
   ========================================================= */

/* 1) Cực kỳ quan trọng: Contact Mode phải đứng đúng vị trí form.cart */
body.ttc-sales-product .product-summary > .ttc-contact-purchase-v3{
  order:7;
  display:flex;
  flex-direction:column;
  width:100%;
  min-width:0;
  margin:0;
  padding:0;
}

/* 2) Giữ một price slot rõ ràng như trạng thái có giá */
body.ttc-sales-product.ttc-product-no-price-v3 .product-summary .price-wrapper{
  display:block!important;
  min-height:44px;
  margin:0 0 12px!important;
}

body.ttc-sales-product .ttc-contact-price-inline-v3{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  color:var(--ttc-green);
  font-size:31px;
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.6px;
}

/* 3) Khung variation giả lập khi Woo không render form.cart */
body.ttc-sales-product .ttc-contact-variation-shell-v3{
  width:100%;
  margin:0 0 12px;
}

body.ttc-sales-product .ttc-contact-variation-row-v3{
  width:100%;
  margin:0 0 11px;
}

body.ttc-sales-product .ttc-contact-variation-row-v3:last-child{
  margin-bottom:0;
}

body.ttc-sales-product .ttc-contact-variation-label-v3{
  margin:0 0 6px;
  color:var(--ttc-ink);
  font-size:12px;
  font-weight:800;
  line-height:1.3;
}

body.ttc-sales-product .ttc-contact-option-list-v3{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

body.ttc-sales-product .ttc-contact-option-v3{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:7px 11px;
  border:1px solid #dce4e0;
  border-radius:6px;
  background:#fff;
  color:#25384a;
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  cursor:default;
}

body.ttc-sales-product .ttc-contact-option-dot-v3{
  display:block;
  width:19px;
  height:19px;
  flex:0 0 19px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:50%;
  background:var(--ttc-contact-dot,#d8dadd);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
}

/* 4) Note giữ nhịp dọc tương đương khu vực variation/stock */
body.ttc-sales-product .ttc-contact-note-v3{
  width:100%;
  margin:0 0 10px;
  padding:9px 11px;
  border:1px solid #e0ebe5;
  border-radius:7px;
  background:#f5faf7;
  color:#506158;
  font-size:10.5px;
  font-weight:500;
  line-height:1.45;
}

/* 5) Hai CTA chính giữ đúng tỷ lệ Mua ngay / Thêm vào giỏ */
body.ttc-sales-product .ttc-contact-buy-row-v3{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);
  gap:10px;
  width:100%;
  margin:4px 0 10px;
}

body.ttc-sales-product .ttc-contact-buy-row-v3 > a{
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:52px;
  margin:0!important;
  padding:7px 12px!important;
  border-radius:7px!important;
  line-height:1.15!important;
  text-align:center;
  text-decoration:none!important;
  text-transform:none!important;
  box-shadow:none!important;
}

body.ttc-sales-product .ttc-contact-buy-row-v3 strong{
  display:block;
  font-size:14px;
  font-weight:800;
  line-height:1.15;
  text-transform:uppercase;
}

body.ttc-sales-product .ttc-contact-buy-row-v3 span{
  display:block;
  margin-top:3px;
  font-size:9.5px;
  font-weight:500;
  line-height:1.15;
  text-transform:none;
}

body.ttc-sales-product .ttc-contact-main-v3{
  border:1px solid var(--ttc-green)!important;
  background:linear-gradient(180deg,#15905c 0%,#087647 100%)!important;
  color:#fff!important;
}

body.ttc-sales-product .ttc-contact-main-v3 strong,
body.ttc-sales-product .ttc-contact-main-v3 span{
  color:#fff!important;
}

body.ttc-sales-product .ttc-contact-secondary-v3{
  border:1px solid #9dcdb6!important;
  background:#fff!important;
  color:var(--ttc-green)!important;
}

body.ttc-sales-product .ttc-contact-secondary-v3 strong{
  color:var(--ttc-green)!important;
}

body.ttc-sales-product .ttc-contact-secondary-v3 span{
  color:#5d7468!important;
}

/* 6) Không cho một rule cũ làm Contact Mode collapse */
body.ttc-sales-product.ttc-product-no-price-v3 .ttc-contact-purchase-v3,
body.ttc-sales-product.ttc-product-no-price-v3 .ttc-contact-purchase-v3 .ttc-pdp-actions-v3{
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* 7) Desktop: giữ vùng Summary có cảm giác cân với Gallery */
@media (min-width:850px){
  body.ttc-sales-product.ttc-product-no-price-v3 .product-main .row.content-row{
    align-items:stretch;
  }

  body.ttc-sales-product.ttc-product-no-price-v3 .product-summary{
    align-self:stretch;
  }
}

/* 8) Mobile */
@media (max-width:849px){
  body.ttc-sales-product .ttc-contact-price-inline-v3{
    font-size:27px;
  }

  body.ttc-sales-product .ttc-contact-buy-row-v3{
    grid-template-columns:1.5fr 1fr;
    gap:7px;
  }

  body.ttc-sales-product .ttc-contact-buy-row-v3 > a{
    min-height:50px;
    padding:7px 8px!important;
  }

  body.ttc-sales-product .ttc-contact-buy-row-v3 strong{
    font-size:12px;
  }

  body.ttc-sales-product .ttc-contact-buy-row-v3 span{
    font-size:8.5px;
  }
}

/* =========================================================

/* =========================================================
   THETEKCOFFEE — SALES PRODUCT ONLY / FINAL TEST V10
   Target: body.ttc-sales-product
   URL: /galaxy-tab-s10-ultra-5g-256gb/

   Mục tiêu:
   - KHÔNG tác động Product Thu Mua (.ttc-buy).
   - Desktop luôn 2 cột Gallery / Summary.
   - Có giá và không giá giữ cùng geometry.
   - Không còn hàng Grid thứ 2 do #product-sidebar.
   - BaoKim luôn nằm sau khu vực mua hàng.
   - Contact Mode không collapse.
   ========================================================= */

/* Isolation cho Summary của đúng Product bán hàng */
body.ttc-sales-product .product-summary{
  position:relative;
  isolation:isolate;
}

/* Contact Mode nằm đúng vị trí của form.cart */
body.ttc-sales-product .product-summary > .ttc-contact-purchase-v3{
  order:7!important;
  position:relative;
  z-index:5;
  display:flex;
  flex-direction:column;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:0;
  background:#fff;
}

body.ttc-sales-product .product-summary > .ttc-contact-purchase-v3 > *{
  position:relative;
  z-index:6;
}

/* BaoKim: do Summary là flex-column nên phải có order rõ ràng */
body.ttc-sales-product .product-summary > .bk-btn{
  order:8!important;
  position:relative!important;
  inset:auto!important;
  float:none!important;
  clear:both!important;
  display:block;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:12px 0 0!important;
  padding-left:0!important;
  padding-right:0!important;
  align-self:stretch!important;
  z-index:1;
}

body.ttc-sales-product .product-summary > .bk-btn > .bk-btn-box,
body.ttc-sales-product .product-summary > .bk-btn > *{
  max-width:100%!important;
}

body.ttc-sales-product.ttc-product-no-price-v3 .product-summary > .bk-btn{
  display:none!important;
}

/* ---------- DESKTOP SALES PRODUCT ONLY ---------- */
@media (min-width:850px){

  /* Chỉ Product bán hàng này bỏ Sidebar Flatsome */
  body.ttc-sales-product .product-main #product-sidebar,
  body.ttc-sales-product .product-main .product-sidebar{
    display:none!important;
    width:0!important;
    max-width:0!important;
    min-width:0!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }

  /* Một hàng duy nhất: Gallery + Summary */
  body.ttc-sales-product .product-main .row.content-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    grid-auto-rows:auto!important;
    column-gap:20px!important;
    row-gap:0!important;
    align-items:start!important;
    align-content:start!important;
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Gallery khóa cột trái */
  body.ttc-sales-product .product-main .row.content-row > .product-gallery{
    grid-column:1!important;
    grid-row:1!important;
    float:none!important;
    flex:none!important;
    flex-basis:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding-right:10px!important;
    align-self:start!important;
  }

  /* Summary khóa cột phải */
  body.ttc-sales-product .product-main .row.content-row > .product-summary{
    grid-column:2!important;
    grid-row:1!important;
    float:none!important;
    flex:none!important;
    flex-basis:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding-left:10px!important;
    align-self:start!important;
  }

  /* Gallery không giữ height do các patch cũ */
  body.ttc-sales-product .product-gallery-inner{
    height:auto!important;
    min-height:0!important;
  }

  /* Có giá: tuyệt đối không dùng min-height đồng bộ */
  body.ttc-sales-product:not(.ttc-product-no-price-v3)
  .product-main .row.content-row > .product-summary{
    min-height:0!important;
  }

  /* Không giá:
     PHP V5/JS có thể đặt inline min-height bằng chiều cao Gallery.
     Không override min-height ở đây để giữ layout không bị co. */
  body.ttc-sales-product.ttc-product-no-price-v3
  .product-main .row.content-row > .product-summary{
    width:100%!important;
    max-width:none!important;
  }

  /* Không để Contact Mode tự co bề ngang */
  body.ttc-sales-product.ttc-product-no-price-v3 .ttc-contact-purchase-v3{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 0 auto!important;
  }

  /* Product footer bắt đầu ngay sau Product Main, không tạo khoảng trắng giả */
  body.ttc-sales-product .product-main + .product-footer,
  body.ttc-sales-product .product-footer{
    clear:both!important;
    height:auto!important;
    min-height:0!important;
  }
}

/* ---------- TABLET / MOBILE: trả flow về Flatsome ---------- */
@media (max-width:849px){
  body.ttc-sales-product .product-main .row.content-row{
    display:flex!important;
    flex-wrap:wrap!important;
  }

  body.ttc-sales-product .product-main .row.content-row > .product-gallery,
  body.ttc-sales-product .product-main .row.content-row > .product-summary{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
  }

  body.ttc-sales-product .product-summary > .bk-btn{
    order:8!important;
    width:100%!important;
    margin-top:10px!important;
  }
}

/* ---------- SAFETY: BUYBACK KHÔNG BỊ ĐỤNG ----------
   Không khai báo bất kỳ selector global nào như:
   .single-product .product-summary
   .single-product .product-gallery
   #product-sidebar
   Mọi rule của file này đều được scope bằng body.ttc-sales-product.
   --------------------------------------------------------- */

/* ============================================================
   V13 — SHORT DESCRIPTION AUTO WRAP + JUSTIFY FIX
   Scope: Product bán hàng có body.ttc-sales-product
   Fixes forced line breaks / ragged text in .ttc-pdp-lead-v3
   ============================================================ */

body.ttc-sales-product .ttc-pdp-short-v3 .ttc-pdp-lead-v3{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:0 0 10px!important;
  padding:0!important;

  color:#4d5b69!important;
  font-size:12px!important;
  line-height:1.65!important;
  font-weight:400!important;

  /* Auto line wrapping */
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;

  /* Balanced desktop text alignment */
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word!important;

  letter-spacing:0!important;
}

/* WordPress/wpautop can convert a manual source newline into <br>.
   Do not allow that BR to force a line break inside the lead paragraph. */
body.ttc-sales-product .ttc-pdp-short-v3 .ttc-pdp-lead-v3 br{
  display:none!important;
}

/* Any inline spans inside the lead must remain normal inline text */
body.ttc-sales-product .ttc-pdp-short-v3 .ttc-pdp-lead-v3 span,
body.ttc-sales-product .ttc-pdp-short-v3 .ttc-pdp-lead-v3 strong{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Mobile: left alignment is easier to read and avoids large justified gaps */
@media (max-width:549px){
  body.ttc-sales-product .ttc-pdp-short-v3 .ttc-pdp-lead-v3{
    text-align:left!important;
    text-align-last:left!important;
    line-height:1.6!important;
  }
}

/* ============================================================
   END V13 SHORT DESCRIPTION FIX
   ============================================================ */


/* ============================================================
   V14 — SECONDARY CTA CLICK / HOVER HITBOX FIX
   Scope: Product bán hàng có body.ttc-sales-product

   Fix:
   - Trả góp 0% / Duyệt nhanh
   - Thu cũ đổi mới / Định giá nhanh
   - Tư vấn qua Zalo
   luôn nhận hover/click.
   - Đưa CTA lên trên lớp BaoKim/PayLater nếu plugin tạo overlay.
   ============================================================ */

/* Entire secondary CTA row must stay above payment-plugin layers */
body.ttc-sales-product .ttc-pdp-actions-v3{
  position:relative!important;
  z-index:30!important;
  isolation:isolate!important;
  pointer-events:auto!important;
}

/* Each CTA is a full clickable hit area */
body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3{
  position:relative!important;
  z-index:31!important;

  display:flex!important;
  pointer-events:auto!important;
  cursor:pointer!important;

  width:100%!important;
  min-width:0!important;

  text-decoration:none!important;

  /* Helps guarantee the anchor itself owns the entire visual box */
  overflow:hidden!important;
  -webkit-tap-highlight-color:transparent;
}

/* Text inside card must never steal/disable the parent anchor hitbox */
body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3 > strong,
body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3 > span{
  pointer-events:none!important;
}

/* Clear visual feedback on desktop hover */
@media (hover:hover) and (pointer:fine){
  body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3:hover{
    border-color:#18794e!important;
    background:#f2faf6!important;
    color:#0e5537!important;
    transform:translateY(-1px);
  }

  body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3:hover strong{
    color:#0e5537!important;
  }

  body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3:hover span{
    color:#49665a!important;
  }
}

/* Keyboard accessibility */
body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3:focus-visible{
  outline:2px solid #18794e!important;
  outline-offset:2px!important;
  border-color:#18794e!important;
}

/* Active/tap feedback */
body.ttc-sales-product .ttc-pdp-actions-v3 > a.ttc-action-card-v3:active{
  transform:translateY(0)!important;
  background:#eaf6ef!important;
}

/*
 * BaoKim / Kredivo stays below the sales CTA hit layer.
 * Important: do NOT disable pointer events on the payment widget itself;
 * just keep its stacking layer below the CTA row.
 */
body.ttc-sales-product .product-summary > .bk-btn{
  position:relative!important;
  z-index:1!important;
  isolation:isolate!important;
}

body.ttc-sales-product .product-summary > .bk-btn > *,
body.ttc-sales-product .product-summary > .bk-btn .bk-btn-box{
  position:relative;
  z-index:1;
  max-width:100%!important;
}

/* Keep primary buy row above payment plugin as well */
body.ttc-sales-product .ttc-buy-row-v3{
  position:relative!important;
  z-index:30!important;
  isolation:isolate!important;
}

/* ============================================================
   END V14 SECONDARY CTA HITBOX FIX
   ============================================================ */


/* ============================================================
   V15 — SECONDARY CTA OUTSIDE VARIATION FORM
   Scope: Product bán hàng có body.ttc-sales-product

   PHP V15 outputs .ttc-pdp-actions-v3 after form.cart, so this
   block becomes a direct child of .product-summary.
   Keep it exactly between the native cart form and BaoKim block.
   ============================================================ */

body.ttc-sales-product .product-summary > .ttc-pdp-actions-v3{
  order:7!important;

  position:relative!important;
  z-index:40!important;
  isolation:isolate!important;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:12px 0 0!important;

  pointer-events:auto!important;
  align-self:stretch!important;
}

/* Native variation disabled state must affect ONLY the native cart area,
   never the independent custom links rendered after form.cart. */
body.ttc-sales-product
.product-summary > .ttc-pdp-actions-v3 > a.ttc-action-card-v3{
  position:relative!important;
  z-index:41!important;

  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation;

  text-decoration:none!important;
  user-select:none;
}

/* Child text does not become a separate hit target */
body.ttc-sales-product
.product-summary > .ttc-pdp-actions-v3 > a.ttc-action-card-v3 > strong,
body.ttc-sales-product
.product-summary > .ttc-pdp-actions-v3 > a.ttc-action-card-v3 > span{
  pointer-events:none!important;
}

/* Visible desktop feedback */
@media (hover:hover) and (pointer:fine){
  body.ttc-sales-product
  .product-summary > .ttc-pdp-actions-v3 > a.ttc-action-card-v3:hover{
    border-color:#18794e!important;
    background:#f2faf6!important;
    color:#0e5537!important;
    box-shadow:0 0 0 1px rgba(24,121,78,.08)!important;
    transform:translateY(-1px);
  }
}

body.ttc-sales-product
.product-summary > .ttc-pdp-actions-v3 > a.ttc-action-card-v3:focus-visible{
  outline:2px solid #18794e!important;
  outline-offset:2px!important;
  border-color:#18794e!important;
}

body.ttc-sales-product
.product-summary > .ttc-pdp-actions-v3 > a.ttc-action-card-v3:active{
  transform:none!important;
  background:#eaf6ef!important;
}

/* BaoKim remains after secondary CTA */
body.ttc-sales-product .product-summary > .bk-btn{
  order:8!important;
  z-index:1!important;
}

/* ============================================================
   END V15
   ============================================================ */


/* ============================================================
   V16 — STATIC INSTALLMENT / TRADE-IN CARDS
   Product bán hàng Retail Premium
   Hai ô Trả góp 0% và Thu cũ đổi mới KHÔNG CÒN LÀ LINK.
   ============================================================ */

/* Base styling for static cards */
body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3{
  position:relative!important;
  z-index:41!important;

  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;

  width:100%!important;
  min-width:0!important;
  min-height:52px!important;

  padding:7px 7px!important;

  border:1px solid #dce3e0!important;
  border-radius:7px!important;
  background:#fff!important;

  color:#20332a!important;
  text-align:center!important;

  /* QUAN TRỌNG: không tạo cảm giác đây là link */
  cursor:default!important;
  pointer-events:auto!important;
  text-decoration:none!important;

  user-select:none;
}

/* Child text */
body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3 > strong{
  display:block!important;
  margin:0!important;
  color:#20332a!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  pointer-events:none!important;
}

body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3 > span{
  display:block!important;
  margin-top:2px!important;
  color:#708078!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:500!important;
  pointer-events:none!important;
}

/* Không hover kiểu link / không đổi màu / không nhấc card */
@media (hover:hover) and (pointer:fine){
  body.ttc-sales-product
  .ttc-pdp-actions-v3 > .ttc-action-card-static-v3:hover{
    border-color:#dce3e0!important;
    background:#fff!important;
    color:#20332a!important;
    transform:none!important;
    box-shadow:none!important;
  }

  body.ttc-sales-product
  .ttc-pdp-actions-v3 > .ttc-action-card-static-v3:hover strong{
    color:#20332a!important;
  }

  body.ttc-sales-product
  .ttc-pdp-actions-v3 > .ttc-action-card-static-v3:hover span{
    color:#708078!important;
  }
}

/* Không active/focus như link */
body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3:active{
  transform:none!important;
  background:#fff!important;
}

body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3:focus{
  outline:none!important;
}

/* ============================================================
   END V16
   ============================================================ */


/* ============================================================
   V17 — STATIC INFO CARDS WITH POINTER + HOVER
   Product bán hàng Retail Premium
   Yêu cầu:
   - hiện bàn tay
   - đổi màu khi hover
   - không nhảy
   - không hiện URL
   - không click đi đâu cả
   ============================================================ */

body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3{
  cursor:pointer!important;
  pointer-events:auto!important;

  transition:
    background-color .16s ease,
    border-color .16s ease,
    color .16s ease!important;

  transform:none!important;
  box-shadow:none!important;
}

/* Hover desktop: đổi màu nhưng tuyệt đối không dịch chuyển */
@media (hover:hover) and (pointer:fine){

  body.ttc-sales-product
  .ttc-pdp-actions-v3 > .ttc-action-card-static-v3:hover{
    cursor:pointer!important;

    background:#f2faf6!important;
    border-color:#18794e!important;
    color:#0e5537!important;

    transform:none!important;
    box-shadow:none!important;
  }

  body.ttc-sales-product
  .ttc-pdp-actions-v3 > .ttc-action-card-static-v3:hover > strong{
    color:#0e5537!important;
  }

  body.ttc-sales-product
  .ttc-pdp-actions-v3 > .ttc-action-card-static-v3:hover > span{
    color:#4f6f60!important;
  }
}

/* Nhấn chuột/tap: vẫn không điều hướng, không nhảy */
body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3:active{
  cursor:pointer!important;

  background:#eaf6ef!important;
  border-color:#18794e!important;

  transform:none!important;
  box-shadow:none!important;
}

/* Không tạo focus kiểu link */
body.ttc-sales-product
.ttc-pdp-actions-v3 > .ttc-action-card-static-v3:focus{
  outline:none!important;
}

/* ============================================================
   END V17
   ============================================================ */


/* ============================================================
   V18 — PRODUCT DETAIL SECTION MATCH TARGET DESIGN
   Scope: Product bán hàng có body.ttc-sales-product

   Mục tiêu:
   - Nav + Description thành 1 khối Retail Premium liền mạch.
   - Loại bỏ layout flex mặc định của .tabbed-content.
   - Điều hướng 7 mục phân bổ đều trên desktop.
   - Nội dung 2 cột: Main + "Vì sao nên mua tại TheTekCoffee?"
   - Tối ưu tablet/mobile.
   ============================================================ */


/* ------------------------------------------------------------
   1. PRODUCT FOOTER / WOO TABS WRAPPER
   ------------------------------------------------------------ */

body.ttc-sales-product .product-footer{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 38px!important;
  background:#fff!important;
}

/* Flatsome .tabbed-content có thể ép flex — reset về block */
body.ttc-sales-product
.product-footer
.woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
  display:block!important;

  width:min(calc(100% - 30px),1180px)!important;
  max-width:1180px!important;

  margin:0 auto 36px!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;

  overflow:visible!important;
}


/* ------------------------------------------------------------
   2. SECTION NAV — giống mẫu thiết kế
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-section-nav-wrap-v3{
  width:min(calc(100% - 30px),1180px)!important;
  max-width:1180px!important;

  margin:22px auto 0!important;

  border:1px solid #e5ebe8!important;
  border-bottom:0!important;
  border-radius:12px 12px 0 0!important;

  background:#fff!important;

  box-shadow:0 8px 24px rgba(20,45,32,.035)!important;

  overflow:hidden!important;
}

body.ttc-sales-product .ttc-section-nav-v3{
  display:grid!important;
  grid-template-columns:
    repeat(7,minmax(0,1fr))!important;

  align-items:stretch!important;

  width:100%!important;

  margin:0!important;
  padding:0 10px!important;

  overflow:visible!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a{
  position:relative!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;

  width:100%!important;
  min-width:0!important;
  min-height:54px!important;

  margin:0!important;
  padding:0 8px!important;

  color:#334456!important;

  font-size:11px!important;
  line-height:1.25!important;
  font-weight:650!important;

  text-align:center!important;
  text-decoration:none!important;

  white-space:nowrap!important;

  border:0!important;
  background:transparent!important;

  transition:
    color .16s ease,
    background-color .16s ease!important;
}

/* Icon dạng line tối giản — không cần sửa HTML */
body.ttc-sales-product .ttc-section-nav-v3 a::before{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  flex:0 0 auto!important;

  width:16px!important;
  height:16px!important;

  color:#647482!important;

  font-size:13px!important;
  line-height:1!important;
  font-weight:700!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(1)::before{content:"▣"}
body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(2)::before{content:"◇"}
body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(3)::before{content:"◆"}
body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(4)::before{content:"▢"}
body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(5)::before{content:"✓"}
body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(6)::before{content:"↻"}
body.ttc-sales-product .ttc-section-nav-v3 a:nth-child(7)::before{content:"?"}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child{
  color:var(--ttc-green)!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child::before{
  color:var(--ttc-green)!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child::after{
  content:""!important;

  position:absolute!important;
  left:10px!important;
  right:10px!important;
  bottom:0!important;

  height:2px!important;

  border-radius:999px 999px 0 0!important;

  background:var(--ttc-green)!important;
}

@media (hover:hover) and (pointer:fine){

  body.ttc-sales-product .ttc-section-nav-v3 a:hover{
    color:var(--ttc-green)!important;
    background:#f8fbf9!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a:hover::before{
    color:var(--ttc-green)!important;
  }
}


/* ------------------------------------------------------------
   3. WOOCOMMERCE TABS — chỉ giữ Description
   ------------------------------------------------------------ */

body.ttc-sales-product .woocommerce-tabs .tabs{
  display:none!important;
}

body.ttc-sales-product .woocommerce-tabs .panel{
  display:none!important;
}

body.ttc-sales-product .woocommerce-tabs #tab-description,
body.ttc-sales-product
.woocommerce-tabs .woocommerce-Tabs-panel--description{
  display:block!important;
}


/* ------------------------------------------------------------
   4. DESCRIPTION PANEL — cùng width với nav, cùng card
   ------------------------------------------------------------ */

body.ttc-sales-product #tab-description,
body.ttc-sales-product .woocommerce-Tabs-panel--description{
  display:block!important;

  width:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:24px 26px 28px!important;

  border:1px solid #e5ebe8!important;
  border-top:0!important;
  border-radius:0 0 12px 12px!important;

  background:#fff!important;

  box-shadow:0 10px 28px rgba(20,45,32,.035)!important;

  color:#465665!important;

  font-size:13px!important;
  line-height:1.72!important;

  overflow:visible!important;
}


/* ------------------------------------------------------------
   5. DETAIL LAYOUT — Main + Why Buy
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-detail-layout-v3{
  display:grid!important;

  grid-template-columns:
    minmax(0,1fr)
    255px!important;

  gap:34px!important;

  align-items:start!important;
}

body.ttc-sales-product .ttc-detail-main-v3{
  min-width:0!important;
}

body.ttc-sales-product .ttc-detail-section-v3{
  scroll-margin-top:120px!important;
}

body.ttc-sales-product
.ttc-detail-section-v3 + .ttc-detail-section-v3{
  margin-top:30px!important;
}


/* ------------------------------------------------------------
   6. INTRO / TYPOGRAPHY — gần mẫu
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-eyebrow-v3{
  margin:0 0 6px!important;

  color:#2f8a61!important;

  font-size:9.5px!important;
  line-height:1.3!important;
  font-weight:800!important;

  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

body.ttc-sales-product .ttc-product-detail-v3 h2{
  margin:0 0 10px!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;

  color:#14263a!important;

  font-size:20px!important;
  line-height:1.32!important;
  font-weight:800!important;

  letter-spacing:-.25px!important;
  text-transform:none!important;
}

body.ttc-sales-product .ttc-product-detail-v3 h3{
  color:#193b2c!important;
}

body.ttc-sales-product .ttc-product-detail-v3 p{
  margin:0 0 11px!important;

  color:#4c5b68!important;

  font-size:12.5px!important;
  line-height:1.72!important;

  text-align:left!important;
}


/* ------------------------------------------------------------
   7. SPEC TABLE — nhẹ, sạch như target
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-spec-wrap-v3{
  margin-top:14px!important;

  overflow-x:auto!important;

  border:1px solid #e8eeeb!important;
  border-radius:9px!important;

  background:#fff!important;
}

body.ttc-sales-product .ttc-spec-table-v3{
  width:100%!important;

  margin:0!important;

  border:0!important;
  border-collapse:collapse!important;

  font-size:11.5px!important;
}

body.ttc-sales-product .ttc-spec-table-v3 th,
body.ttc-sales-product .ttc-spec-table-v3 td{
  padding:9px 12px!important;

  border:0!important;
  border-bottom:1px solid #edf2ef!important;

  text-align:left!important;
  vertical-align:top!important;
}

body.ttc-sales-product .ttc-spec-table-v3 th{
  width:31%!important;

  background:#f7faf8!important;

  color:#315443!important;

  font-size:10.5px!important;
  font-weight:750!important;
}

body.ttc-sales-product .ttc-spec-table-v3 td{
  color:#61707c!important;
}


/* ------------------------------------------------------------
   8. INFO CARDS / PACKAGE
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-info-cards-v3,
body.ttc-sales-product .ttc-package-grid-v3{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

body.ttc-sales-product .ttc-info-cards-v3 article,
body.ttc-sales-product .ttc-package-grid-v3 > div{
  padding:12px 13px!important;

  border:1px solid #e6ece9!important;
  border-radius:8px!important;

  background:#fbfcfb!important;
}

body.ttc-sales-product .ttc-info-cards-v3 strong,
body.ttc-sales-product .ttc-package-grid-v3 strong{
  color:#253746!important;
  font-size:11px!important;
  font-weight:750!important;
}

body.ttc-sales-product .ttc-info-cards-v3 span,
body.ttc-sales-product .ttc-package-grid-v3 span{
  margin-top:3px!important;

  color:#73808a!important;

  font-size:10px!important;
  line-height:1.45!important;
}


/* ------------------------------------------------------------
   9. WHY BUY CARD — giống mockup bên phải
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-detail-aside-v3{
  position:sticky!important;
  top:92px!important;
}

body.ttc-sales-product .ttc-why-card-v3{
  padding:14px 14px 15px!important;

  border:0!important;
  border-radius:10px!important;

  background:#f6faf8!important;

  box-shadow:none!important;
}

body.ttc-sales-product .ttc-why-card-v3 h3{
  margin:0 0 10px!important;

  color:#16603f!important;

  font-size:13px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

body.ttc-sales-product .ttc-why-card-v3 ul{
  margin:0!important;
  padding:0!important;

  list-style:none!important;
}

body.ttc-sales-product .ttc-why-card-v3 li{
  position:relative!important;

  margin:0 0 7px!important;
  padding:0 0 0 19px!important;

  color:#50605b!important;

  font-size:10.5px!important;
  line-height:1.4!important;
}

body.ttc-sales-product .ttc-why-card-v3 li::before{
  content:"✓"!important;

  position:absolute!important;
  left:0!important;
  top:1px!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:12px!important;
  height:12px!important;

  border-radius:50%!important;

  background:#15925a!important;

  color:#fff!important;

  font-size:7.5px!important;
  line-height:1!important;
  font-weight:900!important;
}


/* ------------------------------------------------------------
   10. FAQ
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-product-detail-v3 details{
  margin:7px 0!important;
  padding:11px 12px!important;

  border:1px solid #e6ece9!important;
  border-radius:8px!important;

  background:#fbfcfb!important;
}

body.ttc-sales-product .ttc-product-detail-v3 summary{
  color:#293b4a!important;

  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:750!important;

  cursor:pointer!important;
}


/* ------------------------------------------------------------
   11. TABLET
   ------------------------------------------------------------ */

@media (min-width:850px) and (max-width:1100px){

  body.ttc-sales-product .ttc-section-nav-v3{
    display:flex!important;

    overflow-x:auto!important;
    scrollbar-width:none!important;

    padding:0 8px!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3::-webkit-scrollbar{
    display:none!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a{
    flex:0 0 auto!important;

    min-width:max-content!important;
    min-height:50px!important;

    padding:0 12px!important;

    font-size:10.5px!important;
  }

  body.ttc-sales-product .ttc-detail-layout-v3{
    grid-template-columns:
      minmax(0,1fr)
      225px!important;

    gap:22px!important;
  }
}


/* ------------------------------------------------------------
   12. MOBILE
   ------------------------------------------------------------ */

@media (max-width:849px){

  body.ttc-sales-product .ttc-section-nav-wrap-v3{
    width:calc(100% - 20px)!important;

    margin-top:14px!important;

    border-radius:10px 10px 0 0!important;
  }

  body.ttc-sales-product
  .product-footer
  .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
    width:calc(100% - 20px)!important;
    max-width:none!important;

    margin-bottom:28px!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3{
    display:flex!important;

    overflow-x:auto!important;
    scrollbar-width:none!important;

    padding:0 6px!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3::-webkit-scrollbar{
    display:none!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a{
    flex:0 0 auto!important;

    min-width:max-content!important;
    min-height:44px!important;

    padding:0 10px!important;

    font-size:10px!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a::before{
    width:14px!important;
    height:14px!important;
    font-size:11px!important;
  }

  body.ttc-sales-product #tab-description,
  body.ttc-sales-product
  .woocommerce-Tabs-panel--description{
    padding:17px 15px 20px!important;

    border-radius:0 0 10px 10px!important;
  }

  body.ttc-sales-product .ttc-detail-layout-v3{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  body.ttc-sales-product .ttc-detail-aside-v3{
    position:static!important;
    order:-1!important;
  }

  body.ttc-sales-product .ttc-why-card-v3{
    padding:13px 14px!important;
  }

  body.ttc-sales-product .ttc-product-detail-v3 h2{
    font-size:18px!important;
  }

  body.ttc-sales-product .ttc-product-detail-v3 p{
    font-size:12px!important;
    line-height:1.65!important;
  }

  body.ttc-sales-product .ttc-info-cards-v3,
  body.ttc-sales-product .ttc-package-grid-v3{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================
   END V18 — PRODUCT DETAIL SECTION MATCH TARGET DESIGN
   ============================================================ */


/* ============================================================
   V19 — DETAIL AREA FINAL MATCH
   Scope: Product bán hàng có body.ttc-sales-product

   Tinh chỉnh trực tiếp theo mẫu thiết kế:
   - Nav + Description thành 1 card liền mạch
   - Khoảng cách và typography gần mẫu hơn
   - Main / Why card cân đối hơn trên desktop
   - Giữ 2 cột ở iPad/desktop, mobile xếp dọc
   ============================================================ */


/* ------------------------------------------------------------
   1. OUTER SECTION
   ------------------------------------------------------------ */

body.ttc-sales-product .product-footer{
  padding-top:0!important;
  background:#fff!important;
}

body.ttc-sales-product .ttc-section-nav-wrap-v3,
body.ttc-sales-product
.product-footer
.woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
  width:min(calc(100% - 32px),1180px)!important;
  max-width:1180px!important;
}


/* ------------------------------------------------------------
   2. CONNECT NAV + CONTENT INTO ONE RETAIL CARD
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-section-nav-wrap-v3{
  margin:24px auto 0!important;

  border:1px solid #e6ece9!important;
  border-bottom:0!important;
  border-radius:12px 12px 0 0!important;

  background:#fff!important;

  box-shadow:0 5px 18px rgba(18,48,34,.035)!important;
}

body.ttc-sales-product
.product-footer
.woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
  margin:0 auto 34px!important;

  border:0!important;
  border-radius:0!important;

  background:transparent!important;
  box-shadow:none!important;
}

body.ttc-sales-product #tab-description,
body.ttc-sales-product .woocommerce-Tabs-panel--description{
  margin:0!important;

  padding:24px 24px 30px!important;

  border:1px solid #e6ece9!important;
  border-top:0!important;
  border-radius:0 0 12px 12px!important;

  background:#fff!important;

  box-shadow:0 8px 22px rgba(18,48,34,.035)!important;
}


/* ------------------------------------------------------------
   3. NAV — giống target: sáng, thoáng, underline xanh
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-section-nav-v3{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;

  min-height:54px!important;

  padding:0 12px!important;

  background:#fff!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a{
  min-height:54px!important;

  padding:0 7px!important;

  color:#3f4f5e!important;

  font-size:11px!important;
  line-height:1.25!important;
  font-weight:650!important;

  letter-spacing:0!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child{
  color:#16764c!important;
  font-weight:750!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child::after{
  left:8px!important;
  right:8px!important;
  height:2px!important;

  background:#15935b!important;
}


/* ------------------------------------------------------------
   4. CONTENT GRID — proportions close to mockup
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-detail-layout-v3{
  grid-template-columns:minmax(0,1fr) 265px!important;
  gap:30px!important;
}

body.ttc-sales-product .ttc-detail-main-v3{
  padding-right:2px!important;
}


/* ------------------------------------------------------------
   5. INTRO BLOCK
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-eyebrow-v3{
  margin-bottom:5px!important;

  color:#3d8c67!important;

  font-size:9px!important;
  line-height:1.25!important;
  font-weight:800!important;
}

body.ttc-sales-product .ttc-product-detail-v3 h2{
  margin:0 0 9px!important;

  color:#14253a!important;

  font-size:21px!important;
  line-height:1.28!important;
  font-weight:800!important;

  letter-spacing:-.28px!important;
}

body.ttc-sales-product .ttc-product-detail-v3 p{
  margin:0 0 10px!important;

  color:#4c5c69!important;

  font-size:12.5px!important;
  line-height:1.68!important;
}


/* First product intro should feel slightly stronger */
body.ttc-sales-product
.ttc-detail-main-v3
> .ttc-detail-section-v3:first-child
> p{
  max-width:97%!important;
}


/* ------------------------------------------------------------
   6. SECTION SPACING
   ------------------------------------------------------------ */

body.ttc-sales-product
.ttc-detail-section-v3 + .ttc-detail-section-v3{
  margin-top:27px!important;
}

body.ttc-sales-product .ttc-detail-section-v3{
  scroll-margin-top:110px!important;
}


/* ------------------------------------------------------------
   7. SPEC TABLE — target-like
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-spec-wrap-v3{
  margin-top:12px!important;

  border:1px solid #e7eeea!important;
  border-radius:8px!important;

  box-shadow:none!important;
}

body.ttc-sales-product .ttc-spec-table-v3 th,
body.ttc-sales-product .ttc-spec-table-v3 td{
  padding:8px 11px!important;

  border-bottom:1px solid #edf2ef!important;

  font-size:11px!important;
  line-height:1.48!important;
}

body.ttc-sales-product .ttc-spec-table-v3 th{
  width:30%!important;

  background:#f8faf9!important;

  color:#365445!important;

  font-size:10px!important;
  font-weight:750!important;
  text-transform:uppercase!important;
  letter-spacing:.02em!important;
}

body.ttc-sales-product .ttc-spec-table-v3 td{
  color:#61717d!important;
  background:#fff!important;
}

body.ttc-sales-product .ttc-spec-table-v3 tr:last-child th,
body.ttc-sales-product .ttc-spec-table-v3 tr:last-child td{
  border-bottom:0!important;
}


/* ------------------------------------------------------------
   8. VARIANT / PACKAGE CARDS
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-info-cards-v3,
body.ttc-sales-product .ttc-package-grid-v3{
  gap:9px!important;
}

body.ttc-sales-product .ttc-info-cards-v3 article,
body.ttc-sales-product .ttc-package-grid-v3 > div{
  padding:11px 12px!important;

  border:1px solid #e6ece9!important;
  border-radius:8px!important;

  background:#fbfcfb!important;

  box-shadow:none!important;
}


/* ------------------------------------------------------------
   9. WHY BUY CARD — align top with first heading
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-detail-aside-v3{
  position:sticky!important;
  top:90px!important;

  align-self:start!important;
}

body.ttc-sales-product .ttc-why-card-v3{
  margin-top:0!important;
  padding:14px 13px 14px!important;

  border:0!important;
  border-radius:9px!important;

  background:#f7faf8!important;
}

body.ttc-sales-product .ttc-why-card-v3 h3{
  margin:0 0 10px!important;

  color:#176040!important;

  font-size:13px!important;
  line-height:1.3!important;
  font-weight:800!important;
}

body.ttc-sales-product .ttc-why-card-v3 li{
  margin-bottom:6px!important;

  padding-left:18px!important;

  color:#56645f!important;

  font-size:10.5px!important;
  line-height:1.38!important;
}


/* ------------------------------------------------------------
   10. FAQ STYLE
   ------------------------------------------------------------ */

body.ttc-sales-product .ttc-product-detail-v3 details{
  margin:6px 0!important;
  padding:10px 12px!important;

  border:1px solid #e6ece9!important;
  border-radius:8px!important;

  background:#fbfcfb!important;
}

body.ttc-sales-product .ttc-product-detail-v3 summary{
  font-size:11.5px!important;
  line-height:1.4!important;
  font-weight:750!important;
}


/* ------------------------------------------------------------
   11. DESKTOP / IPAD LANDSCAPE
   ------------------------------------------------------------ */

@media (min-width:850px) and (max-width:1100px){

  body.ttc-sales-product .ttc-section-nav-wrap-v3,
  body.ttc-sales-product
  .product-footer
  .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
    width:calc(100% - 24px)!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3{
    display:flex!important;

    min-height:50px!important;

    padding:0 8px!important;

    overflow-x:auto!important;
    scrollbar-width:none!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a{
    flex:0 0 auto!important;

    min-width:max-content!important;
    min-height:50px!important;

    padding:0 11px!important;

    font-size:10.5px!important;
  }

  body.ttc-sales-product .ttc-detail-layout-v3{
    grid-template-columns:minmax(0,1fr) 235px!important;
    gap:24px!important;
  }

  body.ttc-sales-product #tab-description,
  body.ttc-sales-product .woocommerce-Tabs-panel--description{
    padding:22px 20px 27px!important;
  }

  body.ttc-sales-product .ttc-product-detail-v3 h2{
    font-size:19px!important;
  }
}


/* ------------------------------------------------------------
   12. MOBILE
   ------------------------------------------------------------ */

@media (max-width:849px){

  body.ttc-sales-product .ttc-section-nav-wrap-v3,
  body.ttc-sales-product
  .product-footer
  .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content{
    width:calc(100% - 16px)!important;
  }

  body.ttc-sales-product .ttc-section-nav-wrap-v3{
    margin-top:14px!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3{
    display:flex!important;

    min-height:44px!important;

    padding:0 5px!important;

    overflow-x:auto!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a{
    flex:0 0 auto!important;

    min-width:max-content!important;
    min-height:44px!important;

    padding:0 9px!important;

    font-size:10px!important;
  }

  body.ttc-sales-product #tab-description,
  body.ttc-sales-product .woocommerce-Tabs-panel--description{
    padding:17px 14px 20px!important;
  }

  body.ttc-sales-product .ttc-detail-layout-v3{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  body.ttc-sales-product .ttc-detail-aside-v3{
    position:static!important;
    order:-1!important;
  }

  body.ttc-sales-product .ttc-product-detail-v3 h2{
    font-size:18px!important;
  }

  body.ttc-sales-product .ttc-product-detail-v3 p{
    font-size:12px!important;
    line-height:1.62!important;
  }
}


/* ============================================================
   END V19 — DETAIL AREA FINAL MATCH
   ============================================================ */


/* ============================================================
   V20 — DETAIL PARAGRAPH AUTO WRAP + JUSTIFY
   Scope: Product bán hàng có body.ttc-sales-product

   Fix:
   - Paragraph tự xuống dòng theo chiều rộng thực tế.
   - Desktop căn đều hai bên.
   - Loại bỏ <br> cưỡng bức do editor/wpautop chèn.
   - Mobile căn trái để dễ đọc.
   ============================================================ */

/* Toàn bộ paragraph trong phần Product Detail */
body.ttc-sales-product
.ttc-product-detail-v3
.ttc-detail-main-v3
.ttc-detail-section-v3 > p{
  display:block!important;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:0 0 11px!important;
  padding:0!important;

  color:#4c5c69!important;

  font-size:12.5px!important;
  line-height:1.72!important;
  font-weight:400!important;

  /* Tự wrap theo chiều rộng container */
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;

  /* Căn đều desktop */
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word!important;

  letter-spacing:0!important;
}

/* Nếu WordPress/UX Builder đã chèn <br> trong paragraph,
   không cho <br> ép xuống dòng */
body.ttc-sales-product
.ttc-product-detail-v3
.ttc-detail-main-v3
.ttc-detail-section-v3 > p br{
  display:none!important;
}

/* Inline text không được giữ nowrap */
body.ttc-sales-product
.ttc-product-detail-v3
.ttc-detail-main-v3
.ttc-detail-section-v3 > p span,

body.ttc-sales-product
.ttc-product-detail-v3
.ttc-detail-main-v3
.ttc-detail-section-v3 > p strong,

body.ttc-sales-product
.ttc-product-detail-v3
.ttc-detail-main-v3
.ttc-detail-section-v3 > p a{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Hai paragraph mở đầu — giữ cùng chuẩn căn chữ */
body.ttc-sales-product
.ttc-detail-main-v3
> .ttc-detail-section-v3:first-child
> p{
  width:100%!important;
  max-width:100%!important;

  text-align:justify!important;
  text-align-last:left!important;
}

/* Mobile: căn trái tự nhiên, vẫn tự wrap */
@media (max-width:849px){

  body.ttc-sales-product
  .ttc-product-detail-v3
  .ttc-detail-main-v3
  .ttc-detail-section-v3 > p,

  body.ttc-sales-product
  .ttc-detail-main-v3
  > .ttc-detail-section-v3:first-child
  > p{
    text-align:left!important;
    text-align-last:left!important;

    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
}

/* ============================================================
   END V20
   ============================================================ */


/* ============================================================
   V21 — WHY BUY CARD STICKY SCROLL FIX
   Scope: Product bán hàng có body.ttc-sales-product

   Mục tiêu:
   - Khối "Vì sao nên mua tại TheTekCoffee?"
     tự bám theo khi cuộn xuống trong vùng mô tả.
   - Không vượt ra ngoài vùng Product Detail.
   - Mobile/tablet nhỏ trở lại position:static.
   ============================================================ */

@media (min-width:850px){

  /* Sticky chỉ hoạt động nếu các ancestor không khóa overflow */
  body.ttc-sales-product .product-footer,
  body.ttc-sales-product
  .product-footer
  .woocommerce-tabs.wc-tabs-wrapper.container.tabbed-content,
  body.ttc-sales-product #tab-description,
  body.ttc-sales-product .woocommerce-Tabs-panel--description,
  body.ttc-sales-product .ttc-product-detail-v3,
  body.ttc-sales-product .ttc-detail-layout-v3{
    overflow:visible!important;
  }

  /* Grid phải stretch theo chiều cao vùng nội dung để aside có "đường chạy" */
  body.ttc-sales-product .ttc-detail-layout-v3{
    align-items:start!important;
    position:relative!important;
  }

  /* Sticky aside */
  body.ttc-sales-product .ttc-detail-aside-v3{
    position:sticky!important;
    position:-webkit-sticky!important;

    top:92px!important;

    align-self:start!important;

    width:100%!important;
    min-width:0!important;
    height:max-content!important;

    z-index:20!important;
  }

  /* Chính card không dùng position khác làm hỏng sticky */
  body.ttc-sales-product .ttc-why-card-v3{
    position:relative!important;
    top:auto!important;
    bottom:auto!important;

    width:100%!important;
    max-width:100%!important;

    margin:0!important;
  }
}

/* Tablet nhỏ / Mobile: không sticky */
@media (max-width:849px){

  body.ttc-sales-product .ttc-detail-aside-v3{
    position:static!important;
    top:auto!important;
    height:auto!important;
    z-index:auto!important;
  }
}

/* ============================================================
   END V21 — WHY BUY CARD STICKY SCROLL FIX
   ============================================================ */


/* ============================================================
   V22 — STICKY WHY-BUY AUTO HEADER OFFSET
   Scope: Product bán hàng có body.ttc-sales-product

   Fix:
   - Card không bị header Flatsome che phía trên.
   - Offset sticky tự cập nhật theo chiều cao header thật.
   - Khi header thay đổi chiều cao lúc scroll, card tự căn lại.
   ============================================================ */

body.ttc-sales-product{
  /* fallback nếu JS chưa chạy */
  --ttc-detail-sticky-top:132px;
}

@media (min-width:850px){

  body.ttc-sales-product .ttc-detail-layout-v3{
    position:relative!important;
    align-items:start!important;
    overflow:visible!important;
  }

  body.ttc-sales-product .ttc-detail-aside-v3{
    position:-webkit-sticky!important;
    position:sticky!important;

    top:var(--ttc-detail-sticky-top)!important;

    align-self:start!important;
    justify-self:stretch!important;

    width:100%!important;
    min-width:0!important;
    height:fit-content!important;

    margin:0!important;
    padding:0!important;

    z-index:20!important;
  }

  body.ttc-sales-product .ttc-why-card-v3{
    position:relative!important;
    inset:auto!important;

    width:100%!important;
    max-width:100%!important;

    margin:0!important;

    /* card không bị cắt bởi chính nó */
    overflow:visible!important;
  }

  /* Các ancestor cần overflow visible để sticky hoạt động đúng */
  body.ttc-sales-product .product-footer,
  body.ttc-sales-product .woocommerce-tabs,
  body.ttc-sales-product .woocommerce-tabs .panel,
  body.ttc-sales-product #tab-description,
  body.ttc-sales-product .woocommerce-Tabs-panel--description,
  body.ttc-sales-product .ttc-product-detail-v3{
    overflow:visible!important;
  }
}

@media (max-width:849px){
  body.ttc-sales-product .ttc-detail-aside-v3{
    position:static!important;
    top:auto!important;
    height:auto!important;
    z-index:auto!important;
  }
}

/* ============================================================
   END V22
   ============================================================ */


/* ============================================================
   V23 — ACCESSORY NOTE TYPOGRAPHY + COLOR FIX
   Scope: Product bán hàng có body.ttc-sales-product

   Áp dụng cho:
   "Củ sạc, bao da, bàn phím hoặc quà tặng bổ sung..."
   Class hiện tại: .ttc-note-v3

   Mục tiêu:
   - Tự xuống dòng tự nhiên theo chiều rộng.
   - Khoảng cách dòng dễ đọc hơn.
   - Bỏ nền vàng cũ, chuyển sang nền xanh rất nhạt theo brand.
   - Viền nhẹ, không nặng màu.
   ============================================================ */

body.ttc-sales-product .ttc-note-v3{
  display:block!important;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:12px 0 0!important;
  padding:11px 13px!important;

  border:1px solid #dce9e1!important;
  border-radius:8px!important;

  background:#f5faf7!important;

  color:#4f6258!important;

  font-size:11.5px!important;
  line-height:1.68!important;
  font-weight:500!important;

  /* tự căn và xuống dòng */
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;

  text-align:left!important;
  text-align-last:left!important;

  letter-spacing:0!important;

  box-shadow:none!important;
}

/* Nếu editor chèn <br> thủ công thì không ép xuống dòng */
body.ttc-sales-product .ttc-note-v3 br{
  display:none!important;
}

/* Inline text bên trong không giữ nowrap */
body.ttc-sales-product .ttc-note-v3 span,
body.ttc-sales-product .ttc-note-v3 strong,
body.ttc-sales-product .ttc-note-v3 a{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Desktop: giữ note gọn, không quá nổi */
@media (min-width:850px){
  body.ttc-sales-product .ttc-note-v3{
    margin-top:11px!important;
    padding:10px 12px!important;
    font-size:11.25px!important;
    line-height:1.65!important;
  }
}

/* Mobile: tăng nhẹ khoảng thở */
@media (max-width:849px){
  body.ttc-sales-product .ttc-note-v3{
    margin-top:10px!important;
    padding:11px 12px!important;
    font-size:11.5px!important;
    line-height:1.62!important;
  }
}

/* ============================================================
   END V23
   ============================================================ */


/* ============================================================
   V24 — ACCESSORY NOTE FINAL UI
   Scope: Product bán hàng có body.ttc-sales-product

   Fix riêng dòng:
   "Củ sạc, bao da, bàn phím hoặc quà tặng bổ sung..."

   Mục tiêu:
   - Không còn thanh màu vàng dài, mỏng.
   - Nền trung tính xanh rất nhạt, hợp Retail Premium.
   - Chiều cao/padding cân đối.
   - Text tự xuống dòng tự nhiên, không bị ép.
   - Desktop căn gọn; mobile dễ đọc.
   ============================================================ */

body.ttc-sales-product
#ttc-phu-kien-di-kem
.ttc-note-v3{
  display:block!important;

  width:100%!important;
  max-width:100%!important;
  min-width:0!important;

  margin:14px 0 0!important;
  padding:12px 14px!important;

  border:1px solid #dfe9e3!important;
  border-left:3px solid #18794e!important;
  border-radius:8px!important;

  background:#f7faf8!important;
  background-image:none!important;

  color:#53645b!important;

  font-size:11.5px!important;
  line-height:1.62!important;
  font-weight:500!important;

  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;

  text-align:left!important;
  text-align-last:left!important;

  letter-spacing:0!important;

  box-shadow:none!important;
}

/* Loại bỏ <br> cưỡng bức nếu editor có chèn */
body.ttc-sales-product
#ttc-phu-kien-di-kem
.ttc-note-v3 br{
  display:none!important;
}

/* Đảm bảo text con không giữ nowrap */
body.ttc-sales-product
#ttc-phu-kien-di-kem
.ttc-note-v3 span,
body.ttc-sales-product
#ttc-phu-kien-di-kem
.ttc-note-v3 strong,
body.ttc-sales-product
#ttc-phu-kien-di-kem
.ttc-note-v3 a{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Desktop: note gọn hơn, không kéo cảm giác dài quá */
@media (min-width:850px){
  body.ttc-sales-product
  #ttc-phu-kien-di-kem
  .ttc-note-v3{
    max-width:760px!important;
    padding:11px 13px!important;
    font-size:11.25px!important;
    line-height:1.58!important;
  }
}

/* Tablet / Mobile */
@media (max-width:849px){
  body.ttc-sales-product
  #ttc-phu-kien-di-kem
  .ttc-note-v3{
    width:100%!important;
    max-width:100%!important;

    margin-top:12px!important;
    padding:11px 12px!important;

    font-size:11.5px!important;
    line-height:1.6!important;

    border-left-width:3px!important;
  }
}

/* ============================================================
   END V24 — ACCESSORY NOTE FINAL UI
   ============================================================ */


/* ============================================================
   V25 — ACCESSORY NOTE WITHOUT GREEN LEFT BORDER
   Scope: Product bán hàng có body.ttc-sales-product
   ============================================================ */

body.ttc-sales-product
#ttc-phu-kien-di-kem
.ttc-note-v3{
  border:1px solid #e3ebe6!important;
  border-left:1px solid #e3ebe6!important;

  background:#f8faf9!important;

  color:#53645b!important;

  box-shadow:none!important;
}

/* ============================================================
   END V25
   ============================================================ */


/* ============================================================
   V26 — RELATED PRODUCTS RETAIL PREMIUM
   Scope: Product bán hàng có body.ttc-sales-product

   Mục tiêu:
   - Làm lại khu "Sản phẩm tương tự" theo phong cách Retail Premium.
   - Card gọn, đồng đều, ảnh sạch, title 2 dòng.
   - Giá bình thường dễ đọc.
   - "Liên hệ giá" nhỏ lại, không lấn át tên sản phẩm.
   ============================================================ */


/* ------------------------------------------------------------
   1. SECTION WRAPPER
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper.product-section{
  width:min(calc(100% - 32px),1180px)!important;
  max-width:1180px!important;

  margin:30px auto 36px!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;
}


/* ------------------------------------------------------------
   2. SECTION TITLE
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.product-section-title{
  display:flex!important;
  align-items:center!important;

  width:100%!important;

  margin:0 0 14px!important;
  padding:0!important;

  border:0!important;

  color:#1c2c3d!important;

  font-size:18px!important;
  line-height:1.35!important;
  font-weight:800!important;

  letter-spacing:-.18px!important;
  text-transform:none!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.product-section-title::before{
  content:""!important;

  display:block!important;

  width:4px!important;
  height:18px!important;

  margin-right:9px!important;

  border-radius:999px!important;

  background:#18794e!important;
}


/* ------------------------------------------------------------
   3. GRID / SLIDER SPACING
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.row{
  margin-left:-6px!important;
  margin-right:-6px!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.row > .col{
  padding-left:6px!important;
  padding-right:6px!important;
  padding-bottom:0!important;
}


/* ------------------------------------------------------------
   4. PRODUCT CARD
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.product-small .col-inner,

body.ttc-sales-product
.related.related-products-wrapper
.product-small .box{
  height:100%!important;

  border:1px solid #e5ece8!important;
  border-radius:12px!important;

  background:#fff!important;

  box-shadow:none!important;

  overflow:hidden!important;

  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease!important;
}

@media (hover:hover) and (pointer:fine){
  body.ttc-sales-product
  .related.related-products-wrapper
  .product-small:hover .col-inner,

  body.ttc-sales-product
  .related.related-products-wrapper
  .product-small:hover .box{
    border-color:#cdded4!important;

    box-shadow:0 8px 22px rgba(20,45,32,.06)!important;

    transform:translateY(-2px)!important;
  }
}


/* ------------------------------------------------------------
   5. PRODUCT IMAGE
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.box-image{
  width:100%!important;

  margin:0!important;
  padding:12px 12px 5px!important;

  background:#fff!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.box-image .image-fade_in_back,

body.ttc-sales-product
.related.related-products-wrapper
.box-image .image-zoom{
  border-radius:9px!important;
  overflow:hidden!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.box-image img{
  width:100%!important;
  height:auto!important;

  max-height:180px!important;

  object-fit:contain!important;

  background:#fff!important;
}


/* ------------------------------------------------------------
   6. SALE BADGE
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.badge-container{
  top:8px!important;
  left:8px!important;

  margin:0!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.badge{
  width:auto!important;
  height:auto!important;
  min-width:0!important;

  margin:0!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.badge-inner{
  min-width:0!important;
  min-height:0!important;

  padding:4px 7px!important;

  border-radius:6px!important;

  background:#fff!important;
  border:1px solid #dfe7e3!important;

  color:#596a61!important;

  font-size:10px!important;
  line-height:1.2!important;
  font-weight:700!important;

  box-shadow:0 2px 6px rgba(0,0,0,.04)!important;
}


/* ------------------------------------------------------------
   7. PRODUCT TEXT AREA
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.box-text{
  padding:9px 12px 14px!important;

  text-align:left!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.category{
  margin:0 0 4px!important;

  color:#8a9891!important;

  font-size:9.5px!important;
  line-height:1.3!important;
  font-weight:600!important;

  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.product-title{
  margin:0 0 7px!important;

  min-height:36px!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.product-title > a{
  display:-webkit-box!important;

  overflow:hidden!important;

  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;

  color:#243544!important;

  font-size:12px!important;
  line-height:1.45!important;
  font-weight:650!important;

  text-decoration:none!important;

  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

@media (hover:hover) and (pointer:fine){
  body.ttc-sales-product
  .related.related-products-wrapper
  .product-title > a:hover{
    color:#18794e!important;
  }
}


/* ------------------------------------------------------------
   8. PRICE — NORMAL PRODUCTS
   ------------------------------------------------------------ */

body.ttc-sales-product
.related.related-products-wrapper
.price-wrapper{
  min-height:22px!important;

  margin-top:3px!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.price{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  gap:4px 6px!important;

  margin:0!important;

  color:#18794e!important;

  font-size:14px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.price .amount,

body.ttc-sales-product
.related.related-products-wrapper
.price ins .amount{
  color:#18794e!important;

  font-size:14px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.price del,

body.ttc-sales-product
.related.related-products-wrapper
.price del .amount{
  color:#9aa5a0!important;

  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:500!important;
}

body.ttc-sales-product
.related.related-products-wrapper
.price ins{
  text-decoration:none!important;
}


/* ------------------------------------------------------------
   9. "LIÊN HỆ GIÁ" — SMALL / SECONDARY
   ------------------------------------------------------------ */

/*
 * Một số Product không có giá trả text trực tiếp trong .price.
 * Thu nhỏ toàn bộ .price trước, rồi riêng amount ở trên sẽ được nâng
 * lại đúng kích thước cho Product có giá.
 */
body.ttc-sales-product
.related.related-products-wrapper
.price-wrapper .price:not(:has(.amount)){
  color:#18794e!important;

  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
}

/* Fallback cho browser/plugin markup khác */
body.ttc-sales-product
.related.related-products-wrapper
.price-wrapper > .price{
  max-width:100%!important;

  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}


/* ------------------------------------------------------------
   10. MOBILE / TABLET
   ------------------------------------------------------------ */

@media (max-width:849px){

  body.ttc-sales-product
  .related.related-products-wrapper.product-section{
    width:calc(100% - 16px)!important;

    margin-top:24px!important;
    margin-bottom:28px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .product-section-title{
    margin-bottom:11px!important;

    font-size:16px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .row{
    margin-left:-4px!important;
    margin-right:-4px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .row > .col{
    padding-left:4px!important;
    padding-right:4px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .box-image{
    padding:9px 8px 3px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .box-image img{
    max-height:150px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .box-text{
    padding:8px 9px 11px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .product-title{
    min-height:34px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .product-title > a{
    font-size:11px!important;
    line-height:1.42!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .price,
  body.ttc-sales-product
  .related.related-products-wrapper
  .price .amount,
  body.ttc-sales-product
  .related.related-products-wrapper
  .price ins .amount{
    font-size:12.5px!important;
  }

  body.ttc-sales-product
  .related.related-products-wrapper
  .price-wrapper .price:not(:has(.amount)){
    font-size:11.5px!important;
  }
}

/* ============================================================
   END V26 — RELATED PRODUCTS RETAIL PREMIUM
   ============================================================ */

/* ============================================================
   V27 — SECTION NAV HOVER / FOCUS / ACTIVE FEEDBACK
   Scope: Product bán hàng có body.ttc-sales-product
   ============================================================ */

body.ttc-sales-product .ttc-section-nav-v3 a{
  position:relative!important;
  cursor:pointer!important;
  color:#3f4f5e!important;
  background:transparent!important;
  border-radius:8px!important;
  transition:
    color .16s ease,
    background-color .16s ease,
    box-shadow .16s ease!important;
  transform:none!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a::before{
  color:#697985!important;
  transition:
    color .16s ease,
    background-color .16s ease!important;
}

/* Bỏ trạng thái mục đầu tiên luôn xanh để tránh gây nhầm */
body.ttc-sales-product .ttc-section-nav-v3 a:first-child{
  color:#3f4f5e!important;
  font-weight:650!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child::before{
  color:#697985!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:first-child::after{
  display:none!important;
}

@media (hover:hover) and (pointer:fine){

  body.ttc-sales-product .ttc-section-nav-v3 a:hover{
    color:#0e6842!important;
    background:#eef8f2!important;
    box-shadow:inset 0 0 0 1px #d8eadf!important;
    transform:none!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a:hover::before{
    color:#168653!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a:hover::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:10px!important;
    right:10px!important;
    bottom:0!important;
    height:2px!important;
    border-radius:999px 999px 0 0!important;
    background:#18794e!important;
  }
}

body.ttc-sales-product .ttc-section-nav-v3 a:focus-visible{
  color:#0e6842!important;
  background:#eef8f2!important;
  outline:2px solid #18794e!important;
  outline-offset:-2px!important;
  box-shadow:none!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:focus-visible::before{
  color:#168653!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a:active{
  color:#0b5a39!important;
  background:#e3f3e9!important;
  transform:none!important;
}

/* Nếu sau này có JS thêm .is-active thì giao diện đã sẵn sàng */
body.ttc-sales-product .ttc-section-nav-v3 a.is-active{
  color:#0e6842!important;
  background:#eef8f2!important;
  font-weight:750!important;
  box-shadow:inset 0 0 0 1px #d8eadf!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a.is-active::before{
  color:#168653!important;
}

body.ttc-sales-product .ttc-section-nav-v3 a.is-active::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:10px!important;
  right:10px!important;
  bottom:0!important;
  height:2px!important;
  border-radius:999px 999px 0 0!important;
  background:#18794e!important;
}

@media (max-width:849px){
  body.ttc-sales-product .ttc-section-nav-v3 a{
    border-radius:7px!important;
  }

  body.ttc-sales-product .ttc-section-nav-v3 a:active,
  body.ttc-sales-product .ttc-section-nav-v3 a.is-active{
    background:#eef8f2!important;
    color:#0e6842!important;
  }
}

/* ============================================================
   END V27
   ============================================================ */


/* ============================================================
   GLOBAL COMPATIBILITY — EXISTING PRODUCTS
   Chỉ bổ sung cho Product cũ chưa dùng HTML template TTC.
   Không thay đổi UI của Product đã có .ttc-pdp-short-v3 /
   .ttc-product-detail-v3 theo template chuẩn.
   ============================================================ */

body.ttc-sales-product .ttc-pdp-short-legacy-v3{
  padding:14px 14px 13px!important;
  background:#fff!important;
  border:1px solid var(--ttc-border)!important;
  border-radius:10px!important;
  box-shadow:0 7px 22px rgba(24,55,39,.04)!important;
}

body.ttc-sales-product .ttc-pdp-short-legacy-v3 > p{
  margin:0 0 10px!important;
  color:#4d5b69!important;
  font-size:12px!important;
  line-height:1.65!important;
  font-weight:400!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

body.ttc-sales-product .ttc-pdp-short-legacy-v3 > p:last-child{
  margin-bottom:0!important;
}

body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ul,
body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ol{
  margin:9px 0 0!important;
  padding:0!important;
  list-style:none!important;
  border:1px solid #e8edea!important;
  border-radius:8px!important;
  overflow:hidden!important;
}

body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ul > li,
body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ol > li{
  position:relative!important;
  margin:0!important;
  padding:9px 10px 9px 34px!important;
  color:#344457!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  background:#fff!important;
  border-bottom:1px solid #eef2ef!important;
}

body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ul > li:last-child,
body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ol > li:last-child{
  border-bottom:0!important;
}

body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ul > li::before,
body.ttc-sales-product .ttc-pdp-short-legacy-v3 > ol > li::before{
  content:"✓"!important;
  position:absolute!important;
  left:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:17px!important;
  height:17px!important;
  border-radius:50%!important;
  background:#1c9a61!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
}

body.ttc-sales-product .ttc-legacy-description-v3{
  min-width:0!important;
}

body.ttc-sales-product .ttc-legacy-description-v3 img{
  max-width:100%!important;
  height:auto!important;
}

body.ttc-sales-product .ttc-legacy-description-v3 table{
  width:100%!important;
  max-width:100%!important;
  border-collapse:collapse!important;
}

body.ttc-sales-product .ttc-legacy-description-v3 table th,
body.ttc-sales-product .ttc-legacy-description-v3 table td{
  padding:9px 11px!important;
  border:1px solid #e7eeea!important;
  font-size:11.5px!important;
  line-height:1.5!important;
  text-align:left!important;
  vertical-align:top!important;
}

body.ttc-sales-product .ttc-legacy-description-v3 table th{
  background:#f8faf9!important;
  color:#365445!important;
  font-weight:750!important;
}

/* Legacy content có ít hơn 7 mục nav */
body.ttc-sales-product .ttc-section-nav-v3.ttc-nav-count-1{
  grid-template-columns:1fr!important;
}
body.ttc-sales-product .ttc-section-nav-v3.ttc-nav-count-2{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
body.ttc-sales-product .ttc-section-nav-v3.ttc-nav-count-3{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body.ttc-sales-product .ttc-section-nav-v3.ttc-nav-count-4{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body.ttc-sales-product .ttc-section-nav-v3.ttc-nav-count-5{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}
body.ttc-sales-product .ttc-section-nav-v3.ttc-nav-count-6{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}

@media (max-width:849px){
  body.ttc-sales-product .ttc-pdp-short-legacy-v3 > p,
  body.ttc-sales-product .ttc-legacy-description-v3 p{
    text-align:left!important;
    text-align-last:left!important;
  }
}

/* ============================================================
   END GLOBAL COMPATIBILITY
   ============================================================ */


/* ============================================================
   V27.1 GLOBAL — PRODUCT DETAIL GRID HARD LOCK
   Fix triển khai toàn site:
   - Khóa main content vào cột 1.
   - Khóa Why Buy aside vào cột 2.
   - Reset width/margin/float từ theme/Flatsome.
   - Tránh hiện tượng cột trái trống, nội dung bị dồn sang phải.
   ============================================================ */

body.ttc-sales-product #tab-description > p:empty,
body.ttc-sales-product .woocommerce-Tabs-panel--description > p:empty{
  display:none!important;
  margin:0!important;
  padding:0!important;
}

body.ttc-sales-product .ttc-product-detail-v3{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
  box-sizing:border-box!important;
}

@media (min-width:1025px){

  body.ttc-sales-product .ttc-detail-layout-v3{
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;

    grid-template-columns:minmax(0,1fr) 265px!important;
    grid-template-areas:"ttc-detail-main ttc-detail-aside"!important;
    grid-template-rows:auto!important;
    grid-auto-flow:row!important;

    gap:30px!important;

    margin:0!important;
    padding:0!important;

    align-items:start!important;
    justify-items:stretch!important;

    position:relative!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  body.ttc-sales-product .ttc-detail-main-v3{
    grid-area:ttc-detail-main!important;
    grid-column:1!important;
    grid-row:1!important;

    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;

    margin:0!important;
    padding-left:0!important;
    padding-right:2px!important;

    float:none!important;
    clear:none!important;

    align-self:start!important;
    justify-self:stretch!important;

    position:relative!important;
    box-sizing:border-box!important;
  }

  body.ttc-sales-product .ttc-detail-aside-v3{
    grid-area:ttc-detail-aside!important;
    grid-column:2!important;
    grid-row:1!important;

    width:100%!important;
    max-width:265px!important;
    min-width:0!important;

    margin:0!important;
    padding:0!important;

    float:none!important;
    clear:none!important;

    align-self:start!important;
    justify-self:stretch!important;

    position:-webkit-sticky!important;
    position:sticky!important;
    top:var(--ttc-detail-sticky-top,132px)!important;

    box-sizing:border-box!important;
  }
}

@media (min-width:850px) and (max-width:1024px){

  body.ttc-sales-product .ttc-detail-layout-v3{
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;

    grid-template-columns:minmax(0,1fr) 225px!important;
    grid-template-areas:"ttc-detail-main ttc-detail-aside"!important;
    grid-template-rows:auto!important;
    grid-auto-flow:row!important;

    gap:22px!important;

    margin:0!important;
    padding:0!important;

    align-items:start!important;
    justify-items:stretch!important;

    position:relative!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  body.ttc-sales-product .ttc-detail-main-v3{
    grid-area:ttc-detail-main!important;
    grid-column:1!important;
    grid-row:1!important;

    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;

    margin:0!important;
    padding:0!important;

    float:none!important;
    clear:none!important;

    align-self:start!important;
    justify-self:stretch!important;

    position:relative!important;
    box-sizing:border-box!important;
  }

  body.ttc-sales-product .ttc-detail-aside-v3{
    grid-area:ttc-detail-aside!important;
    grid-column:2!important;
    grid-row:1!important;

    width:100%!important;
    max-width:225px!important;
    min-width:0!important;

    margin:0!important;
    padding:0!important;

    float:none!important;
    clear:none!important;

    align-self:start!important;
    justify-self:stretch!important;

    position:-webkit-sticky!important;
    position:sticky!important;
    top:var(--ttc-detail-sticky-top,132px)!important;

    box-sizing:border-box!important;
  }
}

@media (max-width:849px){

  body.ttc-sales-product .ttc-detail-layout-v3{
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;

    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:
      "ttc-detail-aside"
      "ttc-detail-main"!important;

    gap:18px!important;

    margin:0!important;
    padding:0!important;

    box-sizing:border-box!important;
  }

  body.ttc-sales-product .ttc-detail-main-v3{
    grid-area:ttc-detail-main!important;
    grid-column:1!important;
    grid-row:2!important;

    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;

    margin:0!important;
    padding:0!important;

    float:none!important;
    clear:both!important;

    box-sizing:border-box!important;
  }

  body.ttc-sales-product .ttc-detail-aside-v3{
    grid-area:ttc-detail-aside!important;
    grid-column:1!important;
    grid-row:1!important;

    width:100%!important;
    max-width:100%!important;
    min-width:0!important;

    margin:0!important;
    padding:0!important;

    float:none!important;
    clear:both!important;

    position:static!important;
    top:auto!important;

    box-sizing:border-box!important;
  }
}

/* ============================================================
   END V27.1 GLOBAL — PRODUCT DETAIL GRID HARD LOCK
   ============================================================ */


/* ============================================================
   V27.2 GLOBAL — DETAIL DOM FALLBACK / WRAPPER REPAIR SUPPORT

   Trường hợp editor/Flatsome/HTML sanitizer bỏ thẻ <main>/<aside>
   nhưng vẫn giữ:
   - .ttc-detail-layout-v3
   - section.ttc-detail-section-v3
   - .ttc-why-card-v3

   CSS fallback này ngăn các section bị auto-flow sang cột phải trước
   khi JS normalize DOM chạy.
   ============================================================ */

body.ttc-sales-product .ttc-detail-layout-v3 > p:empty,
body.ttc-sales-product .ttc-detail-layout-v3 > p:has(> br:only-child){
  display:none!important;
  margin:0!important;
  padding:0!important;
}

@media (min-width:850px){

  body.ttc-sales-product
  .ttc-detail-layout-v3
  > .ttc-detail-section-v3{
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    float:none!important;
    clear:none!important;
  }

  body.ttc-sales-product
  .ttc-detail-layout-v3
  > .ttc-why-card-v3{
    grid-column:2!important;
    grid-row:1 / span 99!important;
    align-self:start!important;
    justify-self:stretch!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
}

@media (max-width:849px){

  body.ttc-sales-product
  .ttc-detail-layout-v3
  > .ttc-detail-section-v3,
  body.ttc-sales-product
  .ttc-detail-layout-v3
  > .ttc-why-card-v3{
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* ============================================================
   END V27.2 GLOBAL
   ============================================================ */


/* ============================================================
   V27.3 GLOBAL — VARIATION PRICE / PAYMENT SYNC
   ============================================================ */

/* Giá phía trên là giá variation đã chọn, không còn là range parent. */
body.ttc-sales-product.ttc-variation-price-selected-v3
.product-summary .price-wrapper .price{
  position:relative!important;
}

/* Native variation price vẫn ẩn để không hiển thị trùng:
   JS V1.0.3 mirror đúng variation price lên price chính phía trên. */
body.ttc-sales-product
.single_variation
.woocommerce-variation-price{
  display:none!important;
}

/* ============================================================
   END V27.3
   ============================================================ */


/* ============================================================
   V27.5 GLOBAL — BAOKIM VARIATION ARMING
   ============================================================ */

body.ttc-sales-product.ttc-baokim-arming-v3{
  cursor:progress!important;
}

body.ttc-sales-product #ttc-baokim-arming-message{
  position:fixed!important;
  left:50%!important;
  bottom:24px!important;
  transform:translateX(-50%)!important;
  z-index:999999!important;

  width:min(92vw,520px)!important;
  padding:12px 16px!important;

  border:1px solid #cfe3d8!important;
  border-radius:12px!important;

  background:rgba(255,255,255,.97)!important;
  color:#183c2b!important;

  box-shadow:0 12px 34px rgba(20,54,38,.16)!important;

  font-size:13px!important;
  font-weight:700!important;
  line-height:1.45!important;
  text-align:center!important;
}

/* QA helper: armed page has a correct server-selected variation. */
body.ttc-sales-product.ttc-baokim-variation-armed
.bk-btn{
  --ttc-bk-armed:1;
}

/* ============================================================
   END V27.5
   ============================================================ */


/* ============================================================
   V27.7 GLOBAL — SALE PRICE SAFE BADGE
   Không tạo/xóa DOM node khi variation sale thay đổi.
   ============================================================ */

body.ttc-sales-product
.product-summary
.price[data-ttc-discount]{
  position:relative!important;
}

body.ttc-sales-product
.product-summary
.price[data-ttc-discount]::after{
  content:attr(data-ttc-discount)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  min-height:20px!important;
  margin-left:7px!important;
  padding:2px 7px!important;

  border:1px solid #d9e8df!important;
  border-radius:999px!important;

  background:#f2f8f4!important;
  color:#18794e!important;

  font-size:10px!important;
  font-weight:800!important;
  line-height:1.2!important;
  vertical-align:middle!important;
}

/* Legacy JS badge cũ không còn dùng từ V1.0.7. */
body.ttc-sales-product
.ttc-discount-badge-v3{
  display:none!important;
}

/* ============================================================
   END V27.7
   ============================================================ */
