.variant-picker-values input[type='radio']{
	display:none;
}

.pay-title{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

.home-mini-links{
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  line-height: 1.5;
  opacity: .85;
}

.home-mini-links span{
  color: inherit;
}

.home-mini-links .dot{
  opacity: .5;
}

.home-mini-links a{
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

/* Desktop: align to left if your banner text is left aligned */
@media (min-width: 992px){
  .home-mini-links{
    justify-content: flex-start;
  }
}

.shipping-box .shipping-item {
  border-radius: 8px;
  overflow: hidden;
  border: 2px solid var(--line);
}
.shipping-box .shipping-item .shipping-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.shipping-box .shipping-item .shipping-header span {
  flex-grow: 1;
}
.shipping-box .shipping-item .shipping-header input:checked {
  border-color: var(--primary);
}
.shipping-box .shipping-item .shipping-header input:checked::before {
  background-color: var(--primary);
}
.shipping-box .shipping-item .shipping-body {
  padding: 15px;
  display: grid;
  gap: 15px;
}
.shipping-box .shipping-item .shipping-body .check-save {
  display: flex;
  gap: 8px;
  align-items: center;
}
.shipping-box .shipping-item .shipping-body .input-shipping-box {
  display: grid;
  gap: 15px;
}
.shipping-box .shipping-item .shipping-body .grid-2 {
  gap: 16px;
}
.shipping-box .shipping-item .shipping-body .ip-card {
  position: relative;
}
.shipping-box .shipping-item .shipping-body .ip-card .list-card {
  display: flex;
  gap: 12px;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.shipping-box .shipping-item:not(:last-child) {
  margin-bottom: 15px;
}
.shipping-box .shipping-item .apple-pay-title {
  display: flex;
  gap: 8px;
  align-items: center;
}
.shipping-box .shipping-item .apple-pay-title img {
  width: 13px;
  height: 16px;
}
.shipping-box .shipping-item .paypal-title {
  display: flex;
}
.shipping-box .shipping-item .paypal-title img {
  width: 60px;
  height: 16px;
}
.shipping-box .shipping-choose-card.active {
  border-color: transparent;
  background-color: var(--surface);
}
.shipping-box .shipping-choose-card.active .shipping-header {
  padding-top: 15px;
  padding-bottom: 15px;
}
.shipping-box .paypal-item .shipping-header {
  padding: 16px 20px;
}

.form-payment .tf-btn {
  margin-top: 30px;
  padding: 10px 32px;
  width: 100%;
}

.shipping-box .shipping-item:has(input[type='radio']:checked){
  border: 1.5px solid var(--primary);
}

.caption-shipping {
  font-size: 12px;
  font-weight: 300;
  letter-spacing: initial;
  line-height: initial;
  opacity: .9;
  margin-top: 5px;
}

.bundle-check{
  margin-left: 10px;
}
.tf-product-fbt{
  border: 1px solid #eee;
  padding: 20px;
}
.tf-bundle-product-item:has(input[type='checkbox']:checked){
  border: 1.5px solid var(--primary);
  border-radius: 16px;
}

.bundle-label {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  cursor: pointer;
}

.bundle-label input[type="checkbox"] {
  pointer-events: none; /* prevents double toggle */
}

.tf-cart-countdown {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.tf-cart-countdown p {
  font-size: 18px;
  line-height: 25.6px;
  color: var(--primary);
}
.tf-cart-countdown svg {
  margin-top: -3px;
  animation: tf-ani-flash 2s infinite;
}
.tf-cart-countdown .timer-count {
  color: var(--white);
  background-color: var(--primary);
  padding: 2px 10px;
  font-weight: 600;
  display: inline-block;
  text-align: center;
  min-width: 110px;
  border-radius: 9999px;
  font-size: 16px;
  line-height: 25.6px;
}
.tf-cart-countdown .title-left {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

@keyframes tf-ani-flash {
  50%, from, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

span.jomwangi {
  background: linear-gradient(
    90deg,
    #8c6a1f,
    #d4af37,
    #a6781e
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
  text-shadow: 0 1px 1px rgba(0,0,0,0.15);
}

.author-signature img {
    max-width: 100%;
    width: 100%;
    min-width: 220px;
}

.cart-waiting-text { /* add this class to your waiting message wrapper */
  margin: 14px 0 16px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(197, 154, 86, 0.10); /* gold tint */
  border: 1px solid rgba(197, 154, 86, 0.20);
  color: #3a2a16;
  font-weight: 500;
  line-height: 1.35;
}
.cart-waiting-text .emoji { margin-right: 6px; }

.cart-remove-btn{
  background: transparent;
  border: 0;
  padding: 0;
  margin-top: 6px;
  font-size: 13px;
  font-weight: 600;
  color: rgba(0,0,0,0.55);
  text-decoration: underline;
  cursor: pointer;
}
.cart-remove-btn:hover{
  color: rgba(0,0,0,0.85);
}

.box-delivery{
  margin-right: 25px;
}

.progress-cart {
    height: 10px;
    background: #ececec;
    overflow: visible;
    margin-top: 12px;
    position: relative;
}

.progress-cart .value {
    height: 100%;
    width: 0%;
    background: #b58b45; /* FoAé gold */
    position: relative;
    transition: width 1.2s cubic-bezier(.22,.61,.36,1),
                background 0.4s ease;
}

.progress-cart .progress-icon {
    position: absolute;
    right: -16px;
    top: -12px;
    background: #b58b45;
    color: #fff;
    padding: 7px;
    border-radius: 50%;
    transition: all 0.4s ease;
}

/* When completed */
.progress-cart .value.completed {
    background: #2e7d32;
}

.progress-cart .value.completed .progress-icon {
    background: #2e7d32;
}

/* Icon pop animation */
@keyframes popIcon {
    0% { transform: scale(0.6); opacity: 0; }
    60% { transform: scale(1.2); }
    100% { transform: scale(1); opacity: 1; }
}

.progress-cart .progress-icon.pop {
    animation: popIcon 0.4s ease forwards;
}

.free-ship-text {
    font-weight: 600;
    letter-spacing: .5px;
    transition: all .3s ease;
}

.unlocked-animate {
    animation: glowOnce 1.5s ease-out;
}

@keyframes glowOnce {
    0% { text-shadow: 0 0 0px rgba(46,125,50,0); }
    30% { text-shadow: 0 0 12px rgba(46,125,50,0.6); }
    100% { text-shadow: 0 0 0px rgba(46,125,50,0); }
}

/* ==============================
   CART PROMO (Premium + Obvious)
   ============================== */

.cart-promo{
}

.cart-promo-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}

.cart-promo-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background: rgba(181,139,69,.12);
  color:#9b7436;
  font-size:12px;
  line-height:1;
  letter-spacing:.35px;
  font-weight:700;
  text-transform:uppercase;
}

.cart-promo-icon{
  display:inline-flex;
  width:20px;
  height:20px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background: rgba(181,139,69,.18);
  font-size:12px;
}

.cart-promo-title{
  white-space:nowrap;
}

.cart-promo-save{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  color:#1b5e20;
  background: rgba(46,125,50,.10);
  border: 1px solid rgba(46,125,50,.18);
}

.cart-promo-save::before{
  content:"✓";
  font-weight:900;
  margin-right:6px;
  opacity:.9;
}

/* Breakdown line */
.cart-promo-breakdown{
  margin-top: 8px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  color:#555;
  font-size:12px;
}

.cart-promo-breakdown .chip{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background: rgba(255,255,255,.85);
  border: 1px dashed rgba(181,139,69,.28);
  color:#333;
  font-weight:700;
}

.cart-promo-breakdown .plus{
  opacity:.6;
  font-weight:700;
}

.cart-promo-breakdown .hint{
  opacity:.75;
  font-size:11px;
  margin-left:2px;
}

/* Make promo area align nicely in desktop table layout */
.table-shop-cart .order_product .infor .cart-promo{
  max-width: 520px; /* keeps it premium and not too stretched */
}

/* Optional: subtle “exciting” animation ONLY when promo exists (not annoying) */
.cart-promo{
  animation: promoPop .55s ease-out 1;
}
@keyframes promoPop{
  0%{ transform: translateY(6px); opacity:0; }
  100%{ transform: translateY(0); opacity:1; }
}

.saved-line{
    margin-top:8px;
    font-size:16px;
    color:#2e7d32;
    font-weight:500;
}

.saved-line .amt{
    font-weight:700;
}

.total-wrap{
    display:flex;
    align-items:baseline;
    gap:10px;
}

.old-total{
    font-size:16px;
    color:#999;
    text-decoration: line-through;
    font-weight:400;
}

.cart-total-price{
    font-size:26px;
    font-weight:600;
    color:#111;
}

.toastify{
  max-width: 100% !important;
}
.toastify.bg-success{
  --bs-bg-opacity: 1;
  background: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}
.toastify.bg-danger{
  --bs-bg-opacity: 1;
  background: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

small.old-total{
  font-size: 12px;
}

.checkout-price-item .total-wrap{
    display:grid;
    align-items:baseline;
    gap: 0;
}

/* ===== Checkout Right Panel - Voucher ===== */
.voucher-box{
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(0,0,0,.08);
}

.voucher-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.voucher-title{
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color:#222;
  opacity:.85;
}

.voucher-toggle{
  border:0;
  background:transparent;
  padding:0;
  font-size: 13px;
  color:#b58b45; /* FoAé gold vibe */
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
}

.voucher-toggle .icon{
  width:18px;height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(181,139,69,.35);
  border-radius: 999px;
  line-height: 1;
}

.voucher-body{
  margin-top: 12px;
}

.voucher-row{
  display:flex;
  gap:10px;
  align-items:center;
}

.voucher-input{
  flex:1;
  height: 42px;
  border-radius: 12px;
  border:1px solid rgba(0,0,0,.12);
  padding: 0 14px;
  outline: none;
  transition: .2s;
}

.voucher-input:focus{
  border-color: rgba(181,139,69,.55);
  box-shadow: 0 0 0 4px rgba(181,139,69,.10);
}

.voucher-apply-btn{
  height:42px;
  padding: 0 14px;
  border-radius: 12px;
  border:1px solid rgba(0,0,0,.12);
  background:#111;
  color:#fff;
  font-weight:600;
  cursor:pointer;
  transition:.2s;
  align-items: center;
}

.voucher-apply-btn:hover{ opacity:.92; }

.voucher-hint{
  margin-top: 8px;
  font-size: 12px;
  color:#777;
}

.voucher-error{
  margin-top: 10px;
  font-size: 14px;
  color: #b3261e;
  background: rgba(179,38,30,.08);
  border: 1px solid rgba(179,38,30,.18);
  padding: 10px 12px;
  border-radius: 10px;
}

.voucher-applied{
  margin-top: 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.voucher-applied .pill{
  background: rgba(46,125,50,.10);
  color:#2e7d32;
  padding: 8px 10px;
  border-radius: 999px;
  font-size: 13px;
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.voucher-remove{
  border:0;
  background:transparent;
  color:#666;
  font-size: 13px;
  text-decoration: underline;
  cursor:pointer;
}

/* Optional: make totals look more premium */
.order-summary-row{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.order-summary-row .label{
  font-size: 13px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color:#666;
}

.order-summary-row .value{
  font-weight: 600;
  color:#111;
}

.order-summary-total{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-top: 16px;
}

.order-summary-total .label{
  font-size: 14px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color:#111;
}

.order-summary-total .value{
  font-size: 26px;
  font-weight: 800;
  letter-spacing: .02em;
  color:#111;
}

.voucher-input-row{
    display:flex;
    gap:10px;
}

.voucher-input{
    flex:1;
    height:44px;
    border:1px solid #ddd;
    padding:0 14px;
    border-radius:8px;
    font-size:14px;
}

.voucher-apply-btn{
    height:44px;
    padding:0 18px;
    background:#111;
    color:#fff;
    border-radius:8px;
    font-weight:600;
    border:none;
}

.voucher-applied-box{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:12px 14px;
    border:1px solid rgba(46,125,50,.2);
    background:rgba(46,125,50,.05);
    border-radius:10px;
}

.voucher-pill{
    background:#2e7d32;
    color:#fff;
    padding:6px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:600;
    display:inline-flex;
    align-items:center;
    gap:6px;
}

.voucher-success-text{
    font-size:13px;
    margin-left:10px;
    color:#2e7d32;
    font-weight:500;
}

.voucher-remove-btn{
    background:none;
    border:none;
    font-size:13px;
    color:#999;
    cursor:pointer;
}

.voucher-remove-btn:hover{
    color:#c62828;
}

.checkout-saved{
    margin: 14px 0 14px;
    padding: 8px 12px;
    border-left: 3px solid #b58b45;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.checkout-saved .amt{
    font-weight: 700;
    color: #b58b45;
}

