:root{
  --tccb-primary:#119b55;
  --tccb-primary-2:#19b968;
  --tccb-primary-dark:#075f38;
  --tccb-forest:#123d2c;
  --tccb-ink:#173f30;
  --tccb-muted:#70847a;
  --tccb-line:#dcebe3;
  --tccb-soft:#ecfaf2;
  --tccb-bg:#f4fbf7;
  --tccb-card:#fff;
  --tccb-gold:#ffb703;
  --tccb-danger:#d94b4b;
  --tccb-shadow:0 18px 50px rgba(25,89,59,.10);
  --tccb-radius:22px;
}

body.woocommerce-cart,
body.woocommerce-checkout{
  background:
    radial-gradient(circle at 12% 8%,rgba(25,185,104,.10),transparent 28%),
    radial-gradient(circle at 90% 18%,rgba(255,183,3,.07),transparent 24%),
    var(--tccb-bg)!important;
}

.woocommerce-cart .page-wrapper,
.woocommerce-checkout .page-wrapper,
.woocommerce-cart .container,
.woocommerce-checkout .container{max-width:1400px!important;}

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce{font-family:inherit;color:var(--tccb-ink);}

/* Hero + progress */
.tccb-intro{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  margin:8px 0 28px;
  padding:28px 34px;
  color:#fff;
  border-radius:26px;
  background:linear-gradient(125deg,#075f38 0%,#119b55 55%,#21bd75 100%);
  box-shadow:0 20px 45px rgba(10,112,61,.20);
  position:relative;
  overflow:hidden;
}
.tccb-intro:before,.tccb-intro:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;}
.tccb-intro:before{width:260px;height:260px;right:-80px;top:-150px;}
.tccb-intro:after{width:170px;height:170px;right:70px;bottom:-130px;}
.tccb-intro-copy{position:relative;z-index:1;max-width:650px;}
.tccb-eyebrow{display:block;font-size:11px;font-weight:900;letter-spacing:.18em;color:#bbf3d3;margin-bottom:7px;}
.tccb-intro h1{font-size:31px!important;line-height:1.15!important;color:#fff!important;margin:0 0 7px!important;}
.tccb-intro p{margin:0;color:rgba(255,255,255,.82);font-size:15px;}
.tccb-progress{position:relative;z-index:1;display:flex;align-items:center;min-width:440px;}
.tccb-progress i{height:2px;flex:1;background:rgba(255,255,255,.28);}
.tccb-step{display:flex;align-items:center;gap:9px;opacity:.62;white-space:nowrap;}
.tccb-step span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);font-weight:900;}
.tccb-step b{font-size:12px;color:#fff;}
.tccb-step.is-active,.tccb-step.is-complete{opacity:1;}
.tccb-step.is-active span{background:#fff;color:var(--tccb-primary-dark);box-shadow:0 7px 20px rgba(0,0,0,.15);}
.tccb-step.is-complete span{background:#a9efc8;color:var(--tccb-primary-dark);}

/* Main cards */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading{
  background:rgba(255,255,255,.96);
  border:1px solid rgba(206,230,217,.92);
  border-radius:var(--tccb-radius);
  box-shadow:var(--tccb-shadow);
}
.woocommerce-cart .woocommerce-cart-form{padding:22px;overflow:hidden;}
.woocommerce-cart .cart-collaterals{padding:28px;}
.woocommerce-checkout #customer_details{padding:30px;margin-bottom:24px;}
.woocommerce-checkout #order_review{padding:26px;}
.woocommerce-checkout #order_review_heading{padding:21px 26px;margin:0 0 14px!important;}

/* Cart table */
.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table{border:0!important;border-collapse:separate!important;border-spacing:0 13px!important;}
.woocommerce-cart table.shop_table thead th{
  background:linear-gradient(135deg,var(--tccb-primary-dark),var(--tccb-primary));
  color:#fff!important;border:0!important;padding:17px 15px!important;
  font-size:12px!important;letter-spacing:.07em;text-transform:uppercase;
}
.woocommerce-cart table.shop_table thead th:first-child{border-radius:14px 0 0 14px;}
.woocommerce-cart table.shop_table thead th:last-child{border-radius:0 14px 14px 0;}
.woocommerce-cart table.shop_table tbody tr.cart_item{background:#fff;box-shadow:0 7px 25px rgba(23,83,57,.07);transition:.2s ease;}
.woocommerce-cart table.shop_table tbody tr.cart_item:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(23,83,57,.10);}
.woocommerce-cart table.shop_table tbody td{border-top:1px solid var(--tccb-line)!important;border-bottom:1px solid var(--tccb-line)!important;padding:17px 12px!important;vertical-align:middle!important;}
.woocommerce-cart table.shop_table tbody td:first-child{border-left:1px solid var(--tccb-line)!important;border-radius:15px 0 0 15px;}
.woocommerce-cart table.shop_table tbody td:last-child{border-right:1px solid var(--tccb-line)!important;border-radius:0 15px 15px 0;}
.woocommerce-cart .product-thumbnail img{width:112px!important;height:78px!important;object-fit:cover;border-radius:13px;box-shadow:0 7px 18px rgba(0,0,0,.09);}
.woocommerce-cart .product-name a{font-size:17px;font-weight:900;color:var(--tccb-ink)!important;line-height:1.35;}
.tccb-product-title{display:block;}
.tccb-tour-badge{display:flex;align-items:center;gap:5px;width:max-content;margin-bottom:7px;padding:5px 9px;border-radius:999px;background:var(--tccb-soft);color:var(--tccb-primary-dark);font-size:9px;font-weight:900;letter-spacing:.08em;}
.tccb-tour-category{display:block;margin-top:5px;font-size:12px;color:var(--tccb-muted);}
.tccb-tour-category a{font-size:12px!important;font-weight:600!important;color:var(--tccb-muted)!important;}
.woocommerce-cart .product-price,.woocommerce-cart .product-subtotal,.woocommerce-checkout .product-total{font-weight:900;color:var(--tccb-ink);}
.woocommerce-cart .product-subtotal .amount{color:var(--tccb-primary);font-size:16px;}

/* Quantity */
.tccb-quantity-wrap{display:inline-flex;align-items:center;}
.woocommerce-cart .quantity,.woocommerce-checkout .quantity{display:inline-flex!important;align-items:center;border:1px solid var(--tccb-line);border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 5px 15px rgba(25,89,59,.05);}
.woocommerce-cart .quantity input.qty,.woocommerce-checkout .quantity input.qty{min-width:58px!important;width:58px!important;height:46px!important;border:0!important;box-shadow:none!important;background:#fff!important;font-weight:900;color:var(--tccb-ink)!important;}
.woocommerce-cart .quantity .button,.woocommerce-checkout .quantity .button{height:46px!important;min-width:46px!important;border:0!important;background:linear-gradient(180deg,#effbf4,#e4f6ec)!important;color:var(--tccb-primary-dark)!important;font-weight:900!important;}
.woocommerce-cart .quantity .button:hover,.woocommerce-checkout .quantity .button:hover{background:var(--tccb-primary)!important;color:#fff!important;}
.woocommerce a.remove{width:31px!important;height:31px!important;line-height:28px!important;border-radius:50%!important;border:1px solid #ffd6d6!important;color:var(--tccb-danger)!important;background:#fff!important;transition:.2s;}
.woocommerce a.remove:hover{background:var(--tccb-danger)!important;color:#fff!important;transform:rotate(90deg);}

/* Inputs/buttons */
.woocommerce-cart .coupon{display:flex;gap:10px;flex-wrap:wrap;}
.woocommerce-cart .coupon input,.woocommerce-checkout input.input-text,.woocommerce-checkout select,.woocommerce-checkout textarea{min-height:52px!important;border:1px solid #d9e9df!important;border-radius:12px!important;background:#fbfefc!important;box-shadow:none!important;padding:0 15px!important;color:var(--tccb-ink)!important;}
.woocommerce-checkout textarea{padding:14px!important;min-height:110px!important;}
.woocommerce-checkout input:focus,.woocommerce-checkout select:focus,.woocommerce-checkout textarea:focus{border-color:var(--tccb-primary)!important;box-shadow:0 0 0 4px rgba(17,155,85,.10)!important;background:#fff!important;}
.woocommerce .button,.woocommerce button.button,.woocommerce input.button,.woocommerce-cart .checkout-button,.woocommerce-checkout #place_order{border-radius:13px!important;min-height:52px!important;padding:0 23px!important;font-weight:900!important;letter-spacing:.02em!important;transition:.2s ease!important;}
.woocommerce-cart .checkout-button,.woocommerce-checkout #place_order{width:100%;background:linear-gradient(135deg,var(--tccb-primary),var(--tccb-primary-2))!important;color:#fff!important;box-shadow:0 11px 26px rgba(17,155,85,.26)!important;}
.woocommerce-cart .checkout-button:hover,.woocommerce-checkout #place_order:hover{transform:translateY(-2px);filter:brightness(.98);box-shadow:0 15px 32px rgba(17,155,85,.32)!important;}
.woocommerce-cart .actions .button:not([name="apply_coupon"]){background:#fff!important;color:var(--tccb-primary-dark)!important;border:1px solid var(--tccb-line)!important;}

/* Totals */
.woocommerce-cart .cart_totals h2,.woocommerce-checkout #order_review_heading,.woocommerce-checkout h3{font-size:22px!important;color:var(--tccb-ink)!important;margin-bottom:16px!important;}
.woocommerce-cart .cart_totals h2:before,.woocommerce-checkout #order_review_heading:before{content:"✦";display:inline-grid;place-items:center;width:30px;height:30px;margin-right:9px;border-radius:9px;background:var(--tccb-soft);color:var(--tccb-primary);font-size:14px;vertical-align:middle;}
.woocommerce-cart .cart_totals table th,.woocommerce-cart .cart_totals table td,.woocommerce-checkout .woocommerce-checkout-review-order-table th,.woocommerce-checkout .woocommerce-checkout-review-order-table td{padding:15px 10px!important;border-color:var(--tccb-line)!important;}
.woocommerce-cart .order-total .amount,.woocommerce-checkout .order-total .amount{font-size:24px;color:var(--tccb-primary);font-weight:900;}
.woocommerce-cart .shipping-calculator-button{color:var(--tccb-primary)!important;font-weight:800;}

/* Trust */
.tccb-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;}
.tccb-trust-grid>div{display:flex;align-items:center;gap:9px;padding:11px 9px;border:1px solid var(--tccb-line);border-radius:12px;background:#fbfefc;}
.tccb-trust-icon{display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:9px;background:var(--tccb-soft);color:var(--tccb-primary);font-weight:900;}
.tccb-trust-grid p{margin:0;line-height:1.15;color:var(--tccb-ink);font-size:11px;}
.tccb-trust-grid small{display:block;color:var(--tccb-muted);font-size:9px;margin-top:3px;}

/* Checkout form */
.woocommerce-checkout .woocommerce-billing-fields>h3,.woocommerce-checkout .woocommerce-additional-fields>h3{display:flex;align-items:center;gap:9px;padding-bottom:13px;border-bottom:1px solid var(--tccb-line);}
.woocommerce-checkout .form-row label{font-size:12px;font-weight:800;color:var(--tccb-ink);margin-bottom:7px;}
.woocommerce-checkout .required{color:var(--tccb-primary)!important;}
.woocommerce-checkout #payment{background:#f7fcf9!important;border:1px solid var(--tccb-line)!important;border-radius:17px!important;overflow:hidden;}
.woocommerce-checkout #payment ul.payment_methods{padding:17px!important;border-bottom:1px solid var(--tccb-line)!important;}
.woocommerce-checkout #payment li.wc_payment_method{margin:9px 0!important;padding:15px!important;background:#fff;border:1px solid var(--tccb-line);border-radius:13px;transition:.2s;}
.woocommerce-checkout #payment li.wc_payment_method:hover,.woocommerce-checkout #payment li.wc_payment_method.is-selected{border-color:var(--tccb-primary);box-shadow:0 0 0 3px rgba(17,155,85,.08);background:#fbfffc;}
.woocommerce-checkout #payment li.wc_payment_method label{font-weight:800;color:var(--tccb-ink);cursor:pointer;}
.woocommerce-checkout #payment div.payment_box{background:var(--tccb-soft)!important;color:var(--tccb-ink)!important;border-radius:11px!important;}
.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:var(--tccb-soft)!important;}
.tccb-checkout-note{display:flex;gap:10px;align-items:flex-start;margin:14px 0 0;padding:13px;border-radius:12px;background:#eef9f3;color:var(--tccb-ink);}
.tccb-checkout-note span{font-size:19px;}
.tccb-checkout-note p{margin:0;font-size:12px;line-height:1.45;}
.tccb-checkout-note small{color:var(--tccb-muted);}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border:0!important;border-radius:15px!important;padding:17px 18px 17px 55px!important;box-shadow:0 9px 27px rgba(0,0,0,.07);}
.woocommerce-message{background:#e9f9f0!important;color:#116b39!important;}
.woocommerce-info{background:#eef6ff!important;color:#244b71!important;}
.woocommerce-error{background:#fff1f1!important;color:#9d3333!important;}

@media(min-width:850px){
  .woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(360px,.85fr);gap:30px;align-items:start;}
  .woocommerce-cart .woocommerce-notices-wrapper,.woocommerce-cart .woocommerce-form-coupon-toggle{grid-column:1/-1;}
  .woocommerce-cart .cart-collaterals{width:100%!important;position:sticky;top:110px;}
  .woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;}
  .woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(380px,.85fr);gap:30px;align-items:start;}
  .woocommerce-checkout #customer_details{grid-column:1;}
  .woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:2;}
  .woocommerce-checkout #order_review{position:sticky;top:110px;}
}

@media(max-width:1050px){
  .tccb-intro{align-items:flex-start;flex-direction:column;}
  .tccb-progress{width:100%;min-width:0;}
}

@media(max-width:849px){
  .tccb-intro{margin:0 0 18px;padding:22px 19px;border-radius:19px;}
  .tccb-intro h1{font-size:26px!important;}
  .tccb-progress b{display:none;}
  .tccb-progress i{margin:0 5px;}
  .woocommerce-cart .woocommerce-cart-form,.woocommerce-cart .cart-collaterals,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{padding:16px;}
  .woocommerce-cart table.shop_table thead{display:none;}
  .woocommerce-cart table.shop_table tbody tr.cart_item{display:grid;grid-template-columns:38px 104px 1fr;border:1px solid var(--tccb-line);border-radius:17px;padding:12px;margin-bottom:14px;box-shadow:0 8px 25px rgba(23,83,57,.07);}
  .woocommerce-cart table.shop_table tbody td{display:block!important;border:0!important;padding:6px!important;}
  .woocommerce-cart table.shop_table tbody td.product-remove{grid-column:1;grid-row:1;}
  .woocommerce-cart table.shop_table tbody td.product-thumbnail{grid-column:2;grid-row:1/3;}
  .woocommerce-cart table.shop_table tbody td.product-name{grid-column:3;grid-row:1;}
  .woocommerce-cart table.shop_table tbody td.product-price,.woocommerce-cart table.shop_table tbody td.product-quantity,.woocommerce-cart table.shop_table tbody td.product-subtotal{grid-column:3;display:flex!important;align-items:center;justify-content:space-between;gap:10px;}
  .woocommerce-cart table.shop_table tbody td[data-title]:before{font-size:10px;color:var(--tccb-muted);font-weight:800;}
  .woocommerce-cart .product-thumbnail img{width:96px!important;height:88px!important;}
  .woocommerce-cart .product-name a{font-size:15px;}
  .tccb-trust-grid{grid-template-columns:1fr;}
}

@media(max-width:520px){
  .woocommerce-cart table.shop_table tbody tr.cart_item{grid-template-columns:34px 84px 1fr;}
  .woocommerce-cart .product-thumbnail img{width:78px!important;height:74px!important;}
  .tccb-intro p{font-size:13px;}
}

/* =========================================================
 * v1.2.0 — Flatsome compatibility and cart layout repair
 * Reset theme floats/column widths that squeezed both panels.
 * ========================================================= */
body.woocommerce-cart .page-wrapper,
body.woocommerce-checkout .page-wrapper{
  overflow:visible!important;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce{
  width:100%!important;
  max-width:1160px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

body.woocommerce-cart .woocommerce > *,
body.woocommerce-checkout .woocommerce > *{
  min-width:0;
  box-sizing:border-box!important;
}

body.woocommerce-cart form.woocommerce-cart-form,
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart-collaterals .cart_totals{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

body.woocommerce-cart form.woocommerce-cart-form{
  display:block!important;
}

body.woocommerce-cart table.shop_table{
  width:100%!important;
  table-layout:auto!important;
  margin:0!important;
}
body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere;
}
body.woocommerce-cart table.shop_table .product-remove{width:46px!important;text-align:center!important;}
body.woocommerce-cart table.shop_table .product-thumbnail{width:130px!important;}
body.woocommerce-cart table.shop_table .product-name{min-width:220px!important;}
body.woocommerce-cart table.shop_table .product-price{width:125px!important;white-space:nowrap!important;}
body.woocommerce-cart table.shop_table .product-quantity{width:170px!important;text-align:center!important;}
body.woocommerce-cart table.shop_table .product-subtotal{width:145px!important;white-space:nowrap!important;text-align:right!important;}

body.woocommerce-cart .woocommerce-cart-form .cart_item .product-name,
body.woocommerce-cart .woocommerce-cart-form .cart_item .product-name *{
  max-width:100%;
}
body.woocommerce-cart .woocommerce-cart-form .product-name a{
  display:inline!important;
  white-space:normal!important;
}

body.woocommerce-cart .woocommerce-cart-form table.cart td.actions{
  padding:16px 0 0!important;
  border:0!important;
}
body.woocommerce-cart .woocommerce-cart-form table.cart td.actions:before,
body.woocommerce-cart .woocommerce-cart-form table.cart td.actions:after{
  content:"";
  display:table;
  clear:both;
}
body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon{
  float:left!important;
  max-width:520px;
}
body.woocommerce-cart .woocommerce-cart-form table.cart td.actions > button,
body.woocommerce-cart .woocommerce-cart-form table.cart td.actions > .button{
  float:right!important;
}

body.woocommerce-cart .cart-collaterals{
  align-self:start!important;
}
body.woocommerce-cart .cart-collaterals .cart_totals table{
  width:100%!important;
  table-layout:fixed!important;
  border-spacing:0!important;
}
body.woocommerce-cart .cart-collaterals .cart_totals th{
  width:42%!important;
  min-width:0!important;
  background:transparent!important;
  color:var(--tccb-ink)!important;
  white-space:normal!important;
}
body.woocommerce-cart .cart-collaterals .cart_totals td{
  width:58%!important;
  text-align:right!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
body.woocommerce-cart .cart-collaterals .shipping ul#shipping_method{
  margin:0!important;
  text-align:right!important;
}
body.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout{
  padding:18px 0 0!important;
}
body.woocommerce-cart .cart-collaterals .checkout-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  white-space:normal!important;
  text-align:center!important;
}

@media(min-width:850px){
  body.woocommerce-cart .woocommerce{
    display:grid!important;
    grid-template-columns:minmax(0, 1.85fr) minmax(350px, .9fr)!important;
    gap:28px!important;
    align-items:start!important;
  }
  body.woocommerce-cart .tccb-intro,
  body.woocommerce-cart .woocommerce-notices-wrapper,
  body.woocommerce-cart .woocommerce-form-coupon-toggle,
  body.woocommerce-cart .woocommerce-info{
    grid-column:1 / -1!important;
  }
  body.woocommerce-cart form.woocommerce-cart-form{
    grid-column:1!important;
  }
  body.woocommerce-cart .cart-collaterals{
    grid-column:2!important;
    position:sticky!important;
    top:110px!important;
  }
}

@media(max-width:1100px) and (min-width:850px){
  body.woocommerce-cart .woocommerce{
    grid-template-columns:minmax(0,1.55fr) minmax(320px,.9fr)!important;
    gap:20px!important;
  }
  body.woocommerce-cart .woocommerce-cart-form{padding:16px!important;}
  body.woocommerce-cart .cart-collaterals{padding:20px!important;}
  body.woocommerce-cart table.shop_table .product-thumbnail{width:100px!important;}
  body.woocommerce-cart .product-thumbnail img{width:88px!important;height:68px!important;}
  body.woocommerce-cart table.shop_table .product-name{min-width:150px!important;}
  body.woocommerce-cart table.shop_table .product-price{width:105px!important;}
  body.woocommerce-cart table.shop_table .product-quantity{width:145px!important;}
  body.woocommerce-cart table.shop_table .product-subtotal{width:115px!important;}
}

@media(max-width:849px){
  body.woocommerce-cart .woocommerce{
    display:block!important;
    max-width:720px!important;
  }
  body.woocommerce-cart .woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals{
    width:100%!important;
    margin:0 0 18px!important;
  }
  body.woocommerce-cart .cart-collaterals{
    position:static!important;
  }
  body.woocommerce-cart table.shop_table{
    display:block!important;
  }
  body.woocommerce-cart table.shop_table tbody,
  body.woocommerce-cart table.shop_table tfoot{
    display:block!important;
  }
  body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon,
  body.woocommerce-cart .woocommerce-cart-form table.cart td.actions > button,
  body.woocommerce-cart .woocommerce-cart-form table.cart td.actions > .button{
    float:none!important;
    width:100%!important;
    max-width:none!important;
  }
  body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon input,
  body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon .button{
    flex:1 1 160px!important;
  }
}

@media(max-width:520px){
  body.woocommerce-cart .container,
  body.woocommerce-cart .page-wrapper{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.woocommerce-cart .woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals{
    border-radius:16px!important;
  }
}

/* =========================================================
 * v1.3.0 — Stable wrapper layout for Flatsome.
 * JavaScript moves the cart form and totals into one isolated
 * grid, preventing Flatsome row/column rules from squeezing them.
 * ========================================================= */
body.woocommerce-cart .woocommerce{
  display:block!important;
  max-width:1220px!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
body.woocommerce-cart .tccb-intro{
  width:100%!important;
  margin-top:28px!important;
  margin-bottom:34px!important;
}
body.woocommerce-cart .tccb-cart-layout{
  display:grid!important;
  grid-template-columns:minmax(0, 1.75fr) minmax(360px, .85fr)!important;
  gap:30px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  align-items:start!important;
  box-sizing:border-box!important;
}
body.woocommerce-cart .tccb-cart-layout > form.woocommerce-cart-form,
body.woocommerce-cart .tccb-cart-layout > .woocommerce-cart-form,
body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{
  display:block!important;
  position:relative!important;
  float:none!important;
  clear:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  box-sizing:border-box!important;
}
body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{
  position:sticky!important;
  top:110px!important;
}
body.woocommerce-cart .tccb-cart-layout .cart_totals{
  width:100%!important;
  max-width:none!important;
  float:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-cart .tccb-cart-layout .woocommerce-cart-form{
  overflow:visible!important;
}
body.woocommerce-cart .tccb-cart-layout table.shop_table{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
body.woocommerce-cart .tccb-cart-layout table.shop_table td,
body.woocommerce-cart .tccb-cart-layout table.shop_table th{
  box-sizing:border-box!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals table{
  display:table!important;
  width:100%!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals tbody{
  display:table-row-group!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals tr{
  display:table-row!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals th,
body.woocommerce-cart .tccb-cart-layout .cart-collaterals td{
  display:table-cell!important;
  vertical-align:middle!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .order-total th,
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .order-total td{
  padding-top:18px!important;
  padding-bottom:18px!important;
}
body.woocommerce-cart .tccb-cart-layout .wc-proceed-to-checkout .checkout-button{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:1100px) and (min-width:850px){
  body.woocommerce-cart .tccb-cart-layout{
    grid-template-columns:minmax(0, 1.45fr) minmax(330px, .9fr)!important;
    gap:22px!important;
  }
}
@media(max-width:849px){
  body.woocommerce-cart .woocommerce{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.woocommerce-cart .tccb-cart-layout{
    display:block!important;
  }
  body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{
    position:static!important;
    margin-top:20px!important;
  }
  body.woocommerce-cart .tccb-intro{
    margin-top:16px!important;
  }
}

/* =========================================================
 * v1.4.0 — hard layout isolation for Flatsome + Woo updates
 * ========================================================= */
body.woocommerce-cart .woocommerce{
  width:min(1280px, calc(100% - 32px))!important;
  max-width:1280px!important;
  margin:0 auto!important;
  padding:0!important;
  display:block!important;
}
body.woocommerce-cart .tccb-cart-layout{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0, 2fr) minmax(340px, .82fr)!important;
  gap:28px!important;
  align-items:start!important;
  margin:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-cart .tccb-cart-layout > form.woocommerce-cart-form{
  grid-column:1!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{
  grid-column:2!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  position:sticky!important;
  top:105px!important;
}
body.woocommerce-cart .tccb-cart-layout > form.woocommerce-cart-form,
body.woocommerce-cart .tccb-cart-layout > .cart-collaterals,
body.woocommerce-cart .tccb-cart-layout > .cart-collaterals .cart_totals{
  float:none!important;
  clear:none!important;
  flex:none!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:none!important;
}
body.woocommerce-cart .tccb-cart-layout .woocommerce-cart-form__contents{
  width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
}
body.woocommerce-cart .tccb-cart-layout table.cart th,
body.woocommerce-cart .tccb-cart-layout table.cart td{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis;
}
body.woocommerce-cart .tccb-cart-layout table.cart .product-remove{width:44px!important;}
body.woocommerce-cart .tccb-cart-layout table.cart .product-thumbnail{width:110px!important;}
body.woocommerce-cart .tccb-cart-layout table.cart .product-name{width:auto!important;min-width:0!important;}
body.woocommerce-cart .tccb-cart-layout table.cart .product-price{width:115px!important;}
body.woocommerce-cart .tccb-cart-layout table.cart .product-quantity{width:150px!important;}
body.woocommerce-cart .tccb-cart-layout table.cart .product-subtotal{width:125px!important;}
body.woocommerce-cart .tccb-cart-layout .product-name,
body.woocommerce-cart .tccb-cart-layout .product-name *{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
body.woocommerce-cart .tccb-cart-layout .tccb-quantity-wrap,
body.woocommerce-cart .tccb-cart-layout .quantity{
  max-width:138px!important;
  min-width:120px!important;
  margin:0 auto!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .cart_totals{
  width:100%!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals table.shop_table{
  width:100%!important;
  table-layout:fixed!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals table.shop_table th{
  width:40%!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals table.shop_table td{
  width:60%!important;
  text-align:right!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .woocommerce-shipping-methods,
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .woocommerce-shipping-destination{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}

@media(max-width:1180px) and (min-width:850px){
  body.woocommerce-cart .woocommerce{width:min(1060px, calc(100% - 24px))!important;}
  body.woocommerce-cart .tccb-cart-layout{
    grid-template-columns:minmax(0, 1.7fr) minmax(310px, .9fr)!important;
    gap:20px!important;
  }
  body.woocommerce-cart .tccb-cart-layout table.cart .product-thumbnail{width:88px!important;}
  body.woocommerce-cart .tccb-cart-layout .product-thumbnail img{width:76px!important;height:62px!important;}
  body.woocommerce-cart .tccb-cart-layout table.cart .product-price{width:100px!important;}
  body.woocommerce-cart .tccb-cart-layout table.cart .product-quantity{width:132px!important;}
  body.woocommerce-cart .tccb-cart-layout table.cart .product-subtotal{width:108px!important;}
}

@media(max-width:849px){
  body.woocommerce-cart .woocommerce{width:calc(100% - 20px)!important;}
  body.woocommerce-cart .tccb-cart-layout{display:block!important;}
  body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{
    position:static!important;
    margin-top:18px!important;
  }
  body.woocommerce-cart .tccb-cart-layout .woocommerce-cart-form__contents{table-layout:auto!important;}
}

/* =========================================================
 * v1.5.0 — visual polish for totals, coupon and trust cards
 * ========================================================= */
body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{
  min-width:380px!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals{
  padding:26px!important;
  background:
    radial-gradient(circle at 100% 0, rgba(25,185,104,.10), transparent 34%),
    #fff!important;
}
body.woocommerce-cart .tccb-cart-layout .cart_totals h2{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  font-size:19px!important;
  line-height:1.25!important;
}
body.woocommerce-cart .tccb-cart-layout .cart_totals h2:before{
  content:"🧾"!important;
  width:36px!important;
  height:36px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#e8f9ef,#d8f4e4)!important;
  box-shadow:inset 0 0 0 1px #caead8!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .checkout-button{
  background:linear-gradient(135deg,#0c8f4d,#1bb867)!important;
  border:0!important;
  color:#fff!important;
  min-height:56px!important;
  box-shadow:0 14px 28px rgba(17,155,85,.25)!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .checkout-button:hover{
  background:linear-gradient(135deg,#087a42,#15a85c)!important;
}

/* Coupon block — fully green, no yellow accent */
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .coupon,
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .woocommerce-form-coupon{
  margin-top:20px!important;
  padding-top:18px!important;
  border-top:1px dashed #cfe4d7!important;
}
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .coupon:before,
body.woocommerce-cart .tccb-cart-layout .cart-collaterals .woocommerce-form-coupon:before{
  content:"🏷️  Mã ưu đãi";
  display:block;
  width:100%;
  margin-bottom:10px;
  color:var(--tccb-ink);
  font-size:13px;
  font-weight:900;
}
body.woocommerce-cart button[name="apply_coupon"],
body.woocommerce-cart .coupon .button,
body.woocommerce-cart .woocommerce-form-coupon .button{
  background:linear-gradient(135deg,#0c8f4d,#19b968)!important;
  border:0!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(17,155,85,.20)!important;
}
body.woocommerce-cart button[name="apply_coupon"]:hover,
body.woocommerce-cart .coupon .button:hover,
body.woocommerce-cart .woocommerce-form-coupon .button:hover{
  background:linear-gradient(135deg,#087a42,#13a65a)!important;
  transform:translateY(-1px)!important;
}

/* Trust benefits — readable, balanced and more decorative */
body.woocommerce-cart .tccb-trust-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin-top:18px!important;
}
body.woocommerce-cart .tccb-trust-grid>div{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  min-height:66px!important;
  padding:12px 14px!important;
  border:1px solid #d8ebe0!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#fbfffd,#f1fbf5)!important;
  box-shadow:0 7px 18px rgba(21,94,57,.05)!important;
}
body.woocommerce-cart .tccb-trust-grid>div:nth-child(1){border-left:4px solid #15a55b!important;}
body.woocommerce-cart .tccb-trust-grid>div:nth-child(2){border-left:4px solid #078b79!important;}
body.woocommerce-cart .tccb-trust-grid>div:nth-child(3){border-left:4px solid #3d8fd1!important;}
body.woocommerce-cart .tccb-trust-icon{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
  border-radius:13px!important;
  font-size:19px!important;
  background:linear-gradient(145deg,#e7f9ef,#d9f3e4)!important;
  color:#0c8f4d!important;
  box-shadow:inset 0 0 0 1px #cae9d7!important;
}
body.woocommerce-cart .tccb-trust-grid p{
  min-width:0!important;
  margin:0!important;
  line-height:1.25!important;
  color:var(--tccb-ink)!important;
  font-size:13px!important;
  text-align:left!important;
}
body.woocommerce-cart .tccb-trust-grid b{
  display:block!important;
  margin-bottom:3px!important;
  font-size:13px!important;
  line-height:1.25!important;
  white-space:normal!important;
}
body.woocommerce-cart .tccb-trust-grid small{
  display:block!important;
  margin:0!important;
  color:var(--tccb-muted)!important;
  font-size:11px!important;
  line-height:1.35!important;
  white-space:normal!important;
}

@media(min-width:1200px){
  body.woocommerce-cart .tccb-cart-layout{
    grid-template-columns:minmax(0,2fr) minmax(390px,.9fr)!important;
  }
}
@media(max-width:849px){
  body.woocommerce-cart .tccb-cart-layout > .cart-collaterals{min-width:0!important;}
}


/* =========================================================
 * v1.6.0 — Checkout layout repair for Flatsome.
 * Isolates billing and order summary from theme row/column rules.
 * ========================================================= */
body.woocommerce-checkout .page-wrapper,
body.woocommerce-checkout .container,
body.woocommerce-checkout .woocommerce,
body.woocommerce-checkout form.checkout{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout .woocommerce{
  max-width:1220px!important;
  margin:0 auto!important;
  padding:28px 18px 56px!important;
  display:block!important;
}
body.woocommerce-checkout .tccb-intro{
  width:100%!important;
  margin:0 0 28px!important;
}
body.woocommerce-checkout form.checkout{
  display:block!important;
  float:none!important;
  clear:both!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .tccb-checkout-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.3fr) minmax(390px,.8fr)!important;
  gap:28px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.woocommerce-checkout .tccb-checkout-main,
body.woocommerce-checkout .tccb-checkout-side{
  display:block!important;
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout .tccb-checkout-side{
  position:sticky!important;
  top:110px!important;
}
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout #customer_details{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  padding:28px!important;
  margin:0!important;
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  flex:0 0 100%!important;
  padding:0!important;
  margin:0!important;
}
body.woocommerce-checkout #customer_details .col-2{
  margin-top:22px!important;
  padding-top:22px!important;
  border-top:1px solid var(--tccb-line)!important;
}
body.woocommerce-checkout #order_review_heading{
  padding:20px 24px!important;
  margin:0 0 12px!important;
}
body.woocommerce-checkout #order_review{
  padding:24px!important;
  margin:0!important;
  position:static!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  width:100%!important;
  table-layout:fixed!important;
  border-spacing:0!important;
  margin:0 0 18px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  vertical-align:top!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{width:68%!important;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{width:32%!important;text-align:right!important;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
  display:grid!important;
  grid-template-columns:max-content 1fr!important;
  gap:3px 7px!important;
  margin:8px 0 0!important;
  font-size:12px!important;
  line-height:1.35!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
  float:none!important;
  clear:none!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation p{margin:0!important;}
body.woocommerce-checkout .form-row{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last{
  width:calc(50% - 8px)!important;
}
body.woocommerce-checkout .form-row-first{float:left!important;}
body.woocommerce-checkout .form-row-last{float:right!important;}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper:after,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper:after{
  content:"";
  display:block;
  clear:both;
}
body.woocommerce-checkout .select2-container{width:100%!important;max-width:100%!important;}
body.woocommerce-checkout .select2-selection{min-height:52px!important;border:1px solid #d9e9df!important;border-radius:12px!important;background:#fbfefc!important;}
body.woocommerce-checkout .select2-selection__rendered{line-height:50px!important;padding-left:15px!important;color:var(--tccb-ink)!important;}
body.woocommerce-checkout .select2-selection__arrow{height:50px!important;right:8px!important;}
body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment .form-row.place-order{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout #place_order{display:flex!important;align-items:center!important;justify-content:center!important;white-space:normal!important;text-align:center!important;}

@media(max-width:1050px) and (min-width:850px){
  body.woocommerce-checkout .tccb-checkout-layout{
    grid-template-columns:minmax(0,1fr) minmax(350px,.78fr)!important;
    gap:20px!important;
  }
  body.woocommerce-checkout #customer_details{padding:22px!important;}
  body.woocommerce-checkout #order_review{padding:20px!important;}
}
@media(max-width:849px){
  body.woocommerce-checkout .woocommerce{padding:16px 12px 40px!important;}
  body.woocommerce-checkout .tccb-checkout-layout{display:block!important;}
  body.woocommerce-checkout .tccb-checkout-side{position:static!important;margin-top:20px!important;}
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review{padding:17px!important;}
}
@media(max-width:560px){
  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last{
    float:none!important;
    width:100%!important;
  }
  body.woocommerce-checkout .tccb-progress{min-width:0!important;}
  body.woocommerce-checkout #order_review_heading{font-size:18px!important;}
}

/* =========================================================
 * v1.7.0 — Premium checkout and bank transfer presentation
 * Visual-only enhancement: keeps WooCommerce payment logic intact.
 * ========================================================= */
body.woocommerce-checkout{
  --tccb-checkout-width:1180px;
  --tccb-bank-dark:#073d2b;
  --tccb-bank-green:#0b9d57;
  --tccb-bank-mint:#eaf8f0;
  --tccb-bank-gold:#f5b91f;
}
body.woocommerce-checkout .woocommerce{
  max-width:var(--tccb-checkout-width)!important;
  padding-bottom:72px!important;
}
body.woocommerce-checkout .tccb-checkout-layout{
  grid-template-columns:minmax(0,1.12fr) minmax(430px,.88fr)!important;
  gap:28px!important;
}
body.woocommerce-checkout .tccb-checkout-main,
body.woocommerce-checkout .tccb-checkout-side{min-width:0!important;}
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  border:1px solid rgba(12,126,72,.15)!important;
  box-shadow:0 18px 55px rgba(20,72,48,.09)!important;
}
body.woocommerce-checkout #customer_details{padding:26px!important;}
body.woocommerce-checkout #order_review_heading{
  display:flex!important;align-items:center!important;
  min-height:66px!important;padding:18px 22px!important;
  background:linear-gradient(135deg,#fff 0%,#f1fbf5 100%)!important;
  border-radius:20px!important;font-weight:900!important;letter-spacing:.01em!important;
}
body.woocommerce-checkout #order_review_heading:before{
  content:"🧾"!important;width:38px!important;height:38px!important;border-radius:12px!important;
  background:linear-gradient(135deg,#e8f8ef,#d7f3e3)!important;box-shadow:0 8px 18px rgba(17,155,85,.12)!important;
}
body.woocommerce-checkout #order_review{
  padding:20px!important;border-radius:22px!important;background:#fff!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  margin:0 0 18px!important;border-spacing:0!important;table-layout:fixed!important;
  border:1px solid var(--tccb-line)!important;border-radius:16px!important;overflow:hidden!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{
  background:linear-gradient(135deg,#083e2c,#0c5d3c)!important;color:#fff!important;
  padding:13px 14px!important;font-size:11px!important;letter-spacing:.065em!important;text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td{
  padding:15px 14px!important;background:#fff!important;vertical-align:top!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{
  font-weight:800!important;line-height:1.45!important;color:#173f30!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{
  display:inline-flex!important;margin-left:4px!important;padding:2px 7px!important;border-radius:999px!important;
  background:#edf8f2!important;color:#087a43!important;font-size:10px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
  display:grid!important;grid-template-columns:minmax(82px,.42fr) minmax(0,.58fr)!important;
  gap:5px 8px!important;margin:10px 0 0!important;padding:10px 11px!important;
  border:1px dashed #cfe7da!important;border-radius:11px!important;background:#f8fcfa!important;
  font-size:11px!important;line-height:1.35!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt{
  color:#71867a!important;font-weight:700!important;white-space:normal!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
  color:#173f30!important;font-weight:800!important;min-width:0!important;overflow-wrap:anywhere!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr td{
  padding:13px 14px!important;background:#fbfefc!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td{
  background:linear-gradient(135deg,#eaf9f1,#f7fcf9)!important;border-top:2px solid #bfe7d1!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount{
  display:inline-block!important;font-size:24px!important;color:#0a9c55!important;white-space:nowrap!important;
}

/* Payment area */
body.woocommerce-checkout #payment{
  border:0!important;border-radius:20px!important;background:transparent!important;overflow:visible!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  margin:0!important;padding:0!important;border:0!important;
}
body.woocommerce-checkout #payment li.wc_payment_method{
  position:relative!important;margin:0 0 14px!important;padding:0!important;border:1px solid #d7e9df!important;
  border-radius:18px!important;background:#fff!important;overflow:hidden!important;
  box-shadow:0 10px 28px rgba(20,72,48,.06)!important;
}
body.woocommerce-checkout #payment li.wc_payment_method > input[type="radio"]{
  position:absolute!important;top:20px!important;left:18px!important;z-index:3!important;
  width:18px!important;height:18px!important;accent-color:var(--tccb-bank-green)!important;
}
body.woocommerce-checkout #payment li.wc_payment_method > label{
  display:flex!important;align-items:center!important;min-height:60px!important;margin:0!important;
  padding:17px 18px 17px 50px!important;background:linear-gradient(135deg,#f8fdf9,#eef9f3)!important;
  font-size:15px!important;font-weight:900!important;color:#123d2c!important;border-bottom:1px solid #e2eee7!important;
}
body.woocommerce-checkout #payment li.wc_payment_method > label:after{
  content:"AN TOÀN";margin-left:auto;padding:5px 8px;border-radius:999px;background:#dff5e8;color:#087a43;
  font-size:9px;letter-spacing:.08em;font-weight:900;
}
body.woocommerce-checkout #payment li.wc_payment_method.is-selected{
  border-color:#82d4a8!important;box-shadow:0 0 0 4px rgba(17,155,85,.08),0 15px 35px rgba(20,72,48,.10)!important;
}
body.woocommerce-checkout #payment div.payment_box{
  margin:0!important;padding:18px!important;border-radius:0!important;background:#fff!important;color:#294b3c!important;
}
body.woocommerce-checkout #payment div.payment_box:before{display:none!important;}
body.woocommerce-checkout #payment div.payment_box p{
  margin:0 0 12px!important;font-size:12px!important;line-height:1.65!important;color:#587064!important;
}
body.woocommerce-checkout #payment div.payment_box img{
  display:block!important;width:min(210px,72%)!important;height:auto!important;margin:16px auto!important;padding:12px!important;
  border:1px solid #d7e9df!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 14px 36px rgba(18,61,44,.13)!important;
}
body.woocommerce-checkout #payment .wc-bacs-bank-details,
body.woocommerce-checkout #payment .woocommerce-bacs-bank-details{
  margin:15px 0 0!important;padding:15px!important;border:1px solid #d8ebdf!important;border-radius:14px!important;
  background:linear-gradient(135deg,#f5fcf8,#eaf8f0)!important;
}
body.woocommerce-checkout #payment .wc-bacs-bank-details-heading,
body.woocommerce-checkout #payment h2,
body.woocommerce-checkout #payment h3,
body.woocommerce-checkout #payment h4{
  margin:0 0 12px!important;color:#123d2c!important;font-size:15px!important;font-weight:900!important;
}
body.woocommerce-checkout #payment ul.order_details,
body.woocommerce-checkout #payment ul.wc-bacs-bank-details{
  margin:0!important;padding:0!important;list-style:none!important;
}
body.woocommerce-checkout #payment ul.wc-bacs-bank-details li,
body.woocommerce-checkout #payment .wc-bacs-bank-details li{
  display:flex!important;justify-content:space-between!important;gap:12px!important;
  margin:0!important;padding:9px 0!important;border-bottom:1px dashed #cbe4d6!important;
  font-size:12px!important;line-height:1.45!important;
}
body.woocommerce-checkout #payment .wc-bacs-bank-details li:last-child{border-bottom:0!important;}
body.woocommerce-checkout #payment .wc-bacs-bank-details strong{color:#0a7f47!important;overflow-wrap:anywhere!important;text-align:right!important;}
body.woocommerce-checkout #payment .tccb-copy-row{
  display:grid!important;grid-template-columns:1fr auto!important;gap:9px!important;align-items:center!important;
  margin-top:10px!important;padding:10px 11px!important;border:1px solid #d5e9de!important;border-radius:12px!important;background:#f9fdfb!important;
}
body.woocommerce-checkout #payment .tccb-copy-value{min-width:0!important;font-weight:800!important;color:#123d2c!important;overflow-wrap:anywhere!important;}
body.woocommerce-checkout #payment .tccb-copy-button{
  min-height:34px!important;padding:0 11px!important;border:0!important;border-radius:9px!important;
  background:#e1f5e9!important;color:#087a43!important;font-size:10px!important;font-weight:900!important;cursor:pointer!important;
}
body.woocommerce-checkout #payment .tccb-copy-button:hover{background:#0d9c56!important;color:#fff!important;}
body.woocommerce-checkout #payment .tccb-copy-button.is-copied{background:#123d2c!important;color:#fff!important;}
body.woocommerce-checkout #payment .form-row.place-order{
  margin:14px 0 0!important;padding:16px!important;border:1px solid #d7e9df!important;border-radius:18px!important;
  background:linear-gradient(160deg,#f7fcf9,#ecf9f2)!important;
}
body.woocommerce-checkout #place_order{
  min-height:58px!important;border-radius:15px!important;font-size:14px!important;letter-spacing:.055em!important;
  background:linear-gradient(135deg,#087944 0%,#13a65c 55%,#18b96a 100%)!important;
  box-shadow:0 14px 30px rgba(11,157,87,.25)!important;
}
body.woocommerce-checkout #place_order:before{content:"✓";display:inline-grid;place-items:center;margin-right:9px;width:25px;height:25px;border-radius:50%;background:rgba(255,255,255,.18);}
body.woocommerce-checkout .tccb-checkout-note{
  margin-top:12px!important;border:1px solid #d9eadf!important;background:#fff!important;border-radius:13px!important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text{
  padding:10px 12px!important;border-left:3px solid #9ddbb9!important;background:#f8fcfa!important;border-radius:8px!important;
}

/* Billing card polish */
body.woocommerce-checkout .woocommerce-billing-fields>h3,
body.woocommerce-checkout .woocommerce-additional-fields>h3{
  min-height:48px!important;margin-bottom:18px!important;font-size:19px!important;
}
body.woocommerce-checkout .woocommerce-billing-fields>h3:before{content:"👤";}
body.woocommerce-checkout .woocommerce-additional-fields>h3:before{content:"📝";}
body.woocommerce-checkout .woocommerce-billing-fields>h3:before,
body.woocommerce-checkout .woocommerce-additional-fields>h3:before{
  display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#eaf8f0;font-size:15px;
}
body.woocommerce-checkout .form-row{margin-bottom:15px!important;}
body.woocommerce-checkout .form-row label{font-size:11px!important;letter-spacing:.015em!important;}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea{
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}

@media(min-width:1100px){
  body.woocommerce-checkout .tccb-checkout-side{position:sticky!important;top:92px!important;}
  body.woocommerce-checkout #order_review{max-height:calc(100vh - 190px)!important;overflow:auto!important;scrollbar-width:thin;scrollbar-color:#87cfa8 #eef8f2;}
  body.woocommerce-checkout #order_review::-webkit-scrollbar{width:8px;}
  body.woocommerce-checkout #order_review::-webkit-scrollbar-track{background:#eef8f2;border-radius:99px;}
  body.woocommerce-checkout #order_review::-webkit-scrollbar-thumb{background:#87cfa8;border-radius:99px;}
}
@media(max-width:1099px){
  body.woocommerce-checkout .tccb-checkout-layout{grid-template-columns:1fr!important;}
  body.woocommerce-checkout .tccb-checkout-side{position:static!important;}
}
@media(max-width:600px){
  body.woocommerce-checkout #customer_details,body.woocommerce-checkout #order_review{padding:14px!important;}
  body.woocommerce-checkout #payment div.payment_box{padding:14px!important;}
  body.woocommerce-checkout #payment li.wc_payment_method > label{font-size:13px!important;padding-right:12px!important;}
  body.woocommerce-checkout #payment li.wc_payment_method > label:after{display:none!important;}
  body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{grid-template-columns:1fr!important;}
  body.woocommerce-checkout #payment div.payment_box img{width:min(230px,90%)!important;}
}

/* =========================================================
 * v1.8.0 — Vietnamese-only checkout, larger readable order text
 * and stable Vietnamese font weights.
 * ========================================================= */
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-cart .woocommerce *,
body.woocommerce-checkout .woocommerce *{
  font-family:inherit!important;
  font-synthesis:none!important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Avoid unsupported synthetic weights that make some Vietnamese glyphs look randomly bold. */
body.woocommerce-cart .woocommerce b,
body.woocommerce-cart .woocommerce strong,
body.woocommerce-checkout .woocommerce b,
body.woocommerce-checkout .woocommerce strong,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd,
body.woocommerce-checkout #payment li.wc_payment_method > label,
body.woocommerce-checkout #payment h2,
body.woocommerce-checkout #payment h3,
body.woocommerce-checkout #payment h4{
  font-weight:700!important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{
  width:72%!important;
  font-size:15px!important;
  line-height:1.5!important;
  letter-spacing:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{
  width:28%!important;
  font-size:14px!important;
  font-weight:700!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td{
  padding:18px 15px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
  grid-template-columns:minmax(105px,.42fr) minmax(0,.58fr)!important;
  gap:7px 12px!important;
  margin-top:12px!important;
  padding:14px 15px!important;
  font-size:13.5px!important;
  line-height:1.55!important;
  width:100%!important;
  max-width:none!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt{
  font-size:13px!important;
  font-weight:500!important;
  color:#6b7f74!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
  font-size:13.5px!important;
  color:#173f30!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd p,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt p{
  font-size:inherit!important;
  line-height:inherit!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  font-size:13px!important;
  font-weight:700!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{
  font-size:11px!important;
  font-weight:700!important;
}
body.woocommerce-checkout #payment div.payment_box p,
body.woocommerce-checkout #payment .wc-bacs-bank-details li,
body.woocommerce-checkout #payment .woocommerce-bacs-bank-details li{
  font-size:13.5px!important;
  line-height:1.6!important;
}
body.woocommerce-checkout .form-row label{
  font-size:12.5px!important;
  font-weight:600!important;
}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-selection__rendered{
  font-size:14px!important;
  font-weight:400!important;
}

@media(max-width:600px){
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{width:auto!important;}
  body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
    grid-template-columns:minmax(96px,.42fr) minmax(0,.58fr)!important;
    font-size:13px!important;
  }
}

/* =========================================================
 * v1.9.0 — Final checkout width, price visibility and polish
 * ========================================================= */
body.woocommerce-checkout .woocommerce{
  max-width:1360px!important;
  padding-left:24px!important;
  padding-right:24px!important;
}
body.woocommerce-checkout .tccb-checkout-layout{
  grid-template-columns:minmax(520px,1fr) minmax(520px,1fr)!important;
  gap:32px!important;
}
body.woocommerce-checkout .tccb-checkout-side{
  min-width:0!important;
}
body.woocommerce-checkout #order_review{
  max-height:none!important;
  overflow:visible!important;
  padding:26px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  table-layout:auto!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{
  width:74%!important;
  min-width:0!important;
  padding-right:18px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{
  width:26%!important;
  min-width:145px!important;
  white-space:nowrap!important;
  text-align:right!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
  grid-template-columns:minmax(130px,40%) minmax(190px,60%)!important;
  column-gap:18px!important;
  row-gap:8px!important;
  width:100%!important;
  margin-top:14px!important;
  padding:16px 18px!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#f7fcf9,#eef9f3)!important;
  border:1px dashed #c8e6d4!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
  font-weight:600!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{
  width:auto!important;
  color:#395e4d!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  min-width:170px!important;
  white-space:nowrap!important;
  text-align:right!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount{
  display:inline-block!important;
  max-width:100%!important;
  white-space:nowrap!important;
  font-size:25px!important;
  line-height:1.2!important;
  letter-spacing:-.02em!important;
}
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #payment li.wc_payment_method{
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
body.woocommerce-checkout #customer_details:hover,
body.woocommerce-checkout #order_review:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 22px 58px rgba(25,89,59,.13)!important;
}
body.woocommerce-checkout #payment li.wc_payment_method:hover{
  border-color:#a9dec0!important;
}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus{
  transform:translateY(-1px);
}

@media(max-width:1180px){
  body.woocommerce-checkout .tccb-checkout-layout{
    grid-template-columns:minmax(0,1fr) minmax(430px,.9fr)!important;
    gap:24px!important;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
    grid-template-columns:minmax(115px,42%) minmax(0,58%)!important;
  }
}
@media(max-width:960px){
  body.woocommerce-checkout .tccb-checkout-layout{grid-template-columns:1fr!important;}
  body.woocommerce-checkout .tccb-checkout-side{position:static!important;}
  body.woocommerce-checkout #order_review{max-height:none!important;overflow:visible!important;}
}
@media(max-width:600px){
  body.woocommerce-checkout .woocommerce{padding-left:12px!important;padding-right:12px!important;}
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{width:auto!important;min-width:0!important;}
  body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
    grid-template-columns:minmax(108px,42%) minmax(0,58%)!important;
    padding:13px!important;
    column-gap:10px!important;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{min-width:120px!important;}
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount{font-size:21px!important;}
}

/* =========================================================
 * v2.0.0 — Checkout final alignment + polished thank-you page
 * ========================================================= */
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-privacy-policy-text,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-privacy-policy-link{
  display:none!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .form-row.place-order{
  margin:0!important;
  padding:18px!important;
  border:0!important;
  background:transparent!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .tccb-checkout-side,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) #payment{
  margin-top:18px!important;
}

/* Order received / thank-you */
body.woocommerce-order-received .page-wrapper,
body.woocommerce-order-received .container{
  max-width:1240px!important;
}
body.woocommerce-order-received .woocommerce{
  max-width:1120px!important;
  margin:0 auto!important;
  padding:28px 20px 70px!important;
  font-family:inherit!important;
  color:var(--tccb-ink)!important;
}
body.woocommerce-order-received .tccb-thankyou-hero{
  display:flex;
  align-items:center;
  gap:20px;
  margin:0 0 26px;
  padding:28px 32px;
  border-radius:24px;
  color:#fff;
  background:linear-gradient(135deg,#075f38,#119b55 58%,#22bd75);
  box-shadow:0 20px 50px rgba(11,109,62,.20);
  position:relative;
  overflow:hidden;
}
body.woocommerce-order-received .tccb-thankyou-hero:after{
  content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-70px;top:-110px;border:1px solid rgba(255,255,255,.16);
}
body.woocommerce-order-received .tccb-thankyou-check{
  flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:#fff;color:#109854;font-size:30px;font-weight:700;box-shadow:0 12px 28px rgba(0,0,0,.16);
}
body.woocommerce-order-received .tccb-thankyou-hero h1{margin:2px 0 7px!important;color:#fff!important;font-size:30px!important;line-height:1.2!important;font-weight:700!important;}
body.woocommerce-order-received .tccb-thankyou-hero p{margin:0!important;color:rgba(255,255,255,.86)!important;font-size:14px!important;}
body.woocommerce-order-received .woocommerce-order{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr)!important;
  gap:24px!important;
  align-items:start!important;
}
body.woocommerce-order-received .woocommerce-notice,
body.woocommerce-order-received .woocommerce-thankyou-order-received{
  grid-column:1/-1!important;
  margin:0!important;
  padding:16px 20px!important;
  border:1px solid #cce8d7!important;
  border-radius:14px!important;
  background:#edf9f2!important;
  color:#0d7c45!important;
  font-weight:700!important;
}
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-bacs-bank-details,
body.woocommerce-order-received .woocommerce-customer-details,
body.woocommerce-order-received .woocommerce-order-overview{
  background:#fff!important;
  border:1px solid #d7eadf!important;
  border-radius:20px!important;
  box-shadow:0 16px 42px rgba(25,89,59,.09)!important;
  padding:24px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce-order-details{grid-column:1!important;grid-row:2 / span 3!important;}
body.woocommerce-order-received .woocommerce-order-overview{grid-column:2!important;grid-row:2!important;list-style:none!important;display:grid!important;gap:10px!important;}
body.woocommerce-order-received .woocommerce-bacs-bank-details{grid-column:2!important;grid-row:3!important;}
body.woocommerce-order-received .woocommerce-customer-details{grid-column:2!important;grid-row:4!important;}
body.woocommerce-order-received h2,
body.woocommerce-order-received h3{
  margin:0 0 16px!important;color:var(--tccb-ink)!important;font-size:21px!important;font-weight:700!important;
}
body.woocommerce-order-received .woocommerce-order-details table{
  width:100%!important;table-layout:auto!important;border-collapse:separate!important;border-spacing:0!important;border:1px solid #dcebe3!important;border-radius:15px!important;overflow:hidden!important;
}
body.woocommerce-order-received .woocommerce-order-details th,
body.woocommerce-order-received .woocommerce-order-details td{
  padding:14px 16px!important;border-color:#e3efe8!important;font-size:13.5px!important;line-height:1.55!important;vertical-align:top!important;
}
body.woocommerce-order-received .woocommerce-order-details thead th{
  background:#075f38!important;color:#fff!important;font-weight:700!important;
}
body.woocommerce-order-received .woocommerce-order-details .product-name{width:72%!important;}
body.woocommerce-order-received .woocommerce-order-details .product-total{width:28%!important;text-align:right!important;white-space:nowrap!important;font-weight:700!important;}
body.woocommerce-order-received .woocommerce-order-details dl.variation{
  display:grid!important;grid-template-columns:120px minmax(0,1fr)!important;gap:5px 12px!important;margin:12px 0 0!important;padding:14px!important;border-radius:12px!important;background:#f4fbf7!important;border:1px dashed #cce5d6!important;
}
body.woocommerce-order-received .woocommerce-order-details dl.variation dt,
body.woocommerce-order-received .woocommerce-order-details dl.variation dd{margin:0!important;font-size:12.5px!important;line-height:1.45!important;}
body.woocommerce-order-received .woocommerce-order-details dl.variation dt{color:#72877c!important;font-weight:500!important;}
body.woocommerce-order-received .woocommerce-order-details dl.variation dd{color:#173f30!important;font-weight:600!important;}
body.woocommerce-order-received .woocommerce-order-overview li{
  display:block!important;width:100%!important;margin:0!important;padding:10px 12px!important;border:0!important;border-radius:11px!important;background:#f4fbf7!important;color:#61776c!important;font-size:12px!important;
}
body.woocommerce-order-received .woocommerce-order-overview li strong{display:block!important;margin-top:4px!important;color:#173f30!important;font-size:14px!important;font-weight:700!important;}
body.woocommerce-order-received .woocommerce-bacs-bank-details ul,
body.woocommerce-order-received .woocommerce-bacs-bank-details ol{margin:0!important;padding-left:18px!important;}
body.woocommerce-order-received .woocommerce-bacs-bank-details li{margin:8px 0!important;font-size:13px!important;}
body.woocommerce-order-received address{font-style:normal!important;line-height:1.7!important;color:#3d5d4d!important;}
body.woocommerce-order-received .woocommerce-privacy-policy-text{display:none!important;}

@media(max-width:900px){
  body.woocommerce-order-received .woocommerce-order{grid-template-columns:1fr!important;}
  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-order-overview,
  body.woocommerce-order-received .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-customer-details{grid-column:1!important;grid-row:auto!important;}
}
@media(max-width:600px){
  body.woocommerce-order-received .woocommerce{padding:16px 12px 50px!important;}
  body.woocommerce-order-received .tccb-thankyou-hero{padding:22px 18px!important;align-items:flex-start!important;}
  body.woocommerce-order-received .tccb-thankyou-hero h1{font-size:24px!important;}
  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-customer-details,
  body.woocommerce-order-received .woocommerce-order-overview{padding:16px!important;border-radius:16px!important;}
  body.woocommerce-order-received .woocommerce-order-details .product-name,
  body.woocommerce-order-received .woocommerce-order-details .product-total{width:auto!important;}
  body.woocommerce-order-received .woocommerce-order-details dl.variation{grid-template-columns:105px minmax(0,1fr)!important;padding:12px!important;}
}

/* =========================================================
 * v2.0.1 — final containment + polished order-received layout
 * ========================================================= */
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tbody,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table td,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table dl.variation{
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table{
  table-layout:fixed!important;
  overflow:hidden!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .product-name{
  width:70%!important;
  overflow:hidden!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .product-total{
  width:30%!important;
  white-space:nowrap!important;
  text-align:right!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table dl.variation{
  width:100%!important;
  grid-template-columns:minmax(100px, 38%) minmax(0, 1fr)!important;
  overflow:hidden!important;
}
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table dl.variation dt,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table dl.variation dd{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}

body.woocommerce-order-received .page-wrapper,
body.woocommerce-order-received .container,
body.woocommerce-order-received .woocommerce,
body.woocommerce-order-received .woocommerce-order{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  clear:both!important;
  box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce{
  width:min(1180px, calc(100% - 32px))!important;
  margin:0 auto!important;
  padding:32px 0 72px!important;
}
body.woocommerce-order-received .woocommerce-order{
  display:block!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-order-received .tccb-thankyou-hero{
  width:100%!important;
  margin:0 0 26px!important;
  box-sizing:border-box!important;
}
body.woocommerce-order-received .tccb-thankyou-layout{
  display:grid!important;
  grid-template-columns:minmax(0, 1.45fr) minmax(330px, .75fr)!important;
  gap:26px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.woocommerce-order-received .tccb-thankyou-main,
body.woocommerce-order-received .tccb-thankyou-side{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-order-received .tccb-thankyou-side{
  position:sticky!important;
  top:105px!important;
}
body.woocommerce-order-received .tccb-thankyou-instructions,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-bacs-bank-details,
body.woocommerce-order-received .woocommerce-customer-details{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-column:auto!important;
  grid-row:auto!important;
  float:none!important;
  clear:both!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:24px!important;
  border:1px solid #d7eadf!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(25,89,59,.09)!important;
}
body.woocommerce-order-received .tccb-thankyou-instructions{
  background:linear-gradient(135deg,#f8fffb,#eefaf3)!important;
  border-left:5px solid var(--tccb-primary)!important;
  color:#365d49!important;
  font-size:14px!important;
  line-height:1.75!important;
}
body.woocommerce-order-received .tccb-thankyou-instructions > *:first-child{margin-top:0!important;}
body.woocommerce-order-received .tccb-thankyou-instructions > *:last-child{margin-bottom:0!important;}
body.woocommerce-order-received .woocommerce-order-overview{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  list-style:none!important;
}
body.woocommerce-order-received .woocommerce-order-details table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
  box-sizing:border-box!important;
}
body.woocommerce-order-received .woocommerce-order-details .product-name{
  width:72%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.woocommerce-order-received .woocommerce-order-details .product-total{
  width:28%!important;
  white-space:nowrap!important;
  text-align:right!important;
}
body.woocommerce-order-received .woocommerce-order-details dl.variation{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-template-columns:minmax(115px, 34%) minmax(0, 1fr)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.woocommerce-order-received .woocommerce-order-details dl.variation dt,
body.woocommerce-order-received .woocommerce-order-details dl.variation dd{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
body.woocommerce-order-received .woocommerce-order-details tfoot th{
  width:auto!important;
  color:var(--tccb-ink)!important;
  background:#f5fbf7!important;
}
body.woocommerce-order-received .woocommerce-order-details tfoot td{
  text-align:right!important;
  white-space:nowrap!important;
  font-weight:700!important;
}
body.woocommerce-order-received .woocommerce-order-details tfoot tr:last-child th,
body.woocommerce-order-received .woocommerce-order-details tfoot tr:last-child td{
  background:#eaf8f0!important;
  color:#078b4c!important;
  font-size:17px!important;
  font-weight:800!important;
}

@media(max-width:920px){
  body.woocommerce-order-received .tccb-thankyou-layout{grid-template-columns:1fr!important;}
  body.woocommerce-order-received .tccb-thankyou-side{position:static!important;}
}
@media(max-width:600px){
  body.woocommerce-order-received .woocommerce{width:calc(100% - 20px)!important;padding:18px 0 48px!important;}
  body.woocommerce-order-received .tccb-thankyou-layout{gap:16px!important;}
  body.woocommerce-order-received .tccb-thankyou-instructions,
  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-order-overview,
  body.woocommerce-order-received .woocommerce-bacs-bank-details,
  body.woocommerce-order-received .woocommerce-customer-details{padding:17px!important;border-radius:16px!important;}
  body.woocommerce-order-received .woocommerce-order-details th,
  body.woocommerce-order-received .woocommerce-order-details td{padding:11px 9px!important;font-size:12px!important;}
  body.woocommerce-order-received .woocommerce-order-details dl.variation{grid-template-columns:100px minmax(0,1fr)!important;padding:10px!important;}
}

/* ===== v1.3.4 typography hardening ===== */
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-cart .woocommerce button,
body.woocommerce-cart .woocommerce input,
body.woocommerce-cart .woocommerce select,
body.woocommerce-cart .woocommerce textarea,
body.woocommerce-checkout .woocommerce button,
body.woocommerce-checkout .woocommerce input,
body.woocommerce-checkout .woocommerce select,
body.woocommerce-checkout .woocommerce textarea{
  font-family:inherit!important;
  font-synthesis:none;
  font-variant-ligatures:normal;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
