/* ════════════════════════════════════════════════════════════
   INTEHA — "Boutique" Cart (Phase 1)
   Enqueued on is_cart()/is_checkout() only. Boutique design tokens are
   mapped to the theme's existing CSS variables (with a few locals).
   ════════════════════════════════════════════════════════════ */

.inteha-boutique{
  /* exact "Boutique" reference tokens (warm cream + true espresso) */
  --bq-bg:#EBE0CF;
  --bq-surface:#FBF6EE;
  --bq-card:#FFFDF8;
  --bq-ink:#2A2017;
  --bq-ink-soft:#5B4F41;
  --bq-muted:#9A8A74;
  --bq-gold:#A9824B;
  --bq-gold-soft:#C3A878;
  --bq-espresso:#1E160E;
  --bq-line:rgba(120,95,60,0.22);
  --bq-line-soft:rgba(120,95,60,0.13);
  --bq-ok:#5E7C53;
  --bq-error:#B5562F;
  --bq-card-shadow:0 1px 2px rgba(30,22,14,0.04), 0 18px 40px -28px rgba(30,22,14,0.4);
}

/* Page canvas + container */
.inteha-cart-page{background:var(--bq-bg);}
.inteha-cart-page .inteha-boutique-wrap{max-width:1120px;margin:0 auto;padding:clamp(30px,5vw,52px) clamp(18px,4vw,40px) 80px;}

/* Title row */
.inteha-cart-page .bq-titlerow{display:flex;align-items:baseline;gap:14px;margin-bottom:26px;}
.inteha-cart-page .bq-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:clamp(38px,5vw,52px);letter-spacing:-0.01em;color:var(--bq-ink);margin:0;}
.inteha-cart-page .bq-count{font-family:var(--font-jost),sans-serif;font-size:13px;letter-spacing:.04em;color:var(--bq-muted);}

/* Two-column grid */
.bq-cart-grid{display:grid;grid-template-columns:1.5fr 0.95fr;gap:40px;align-items:start;}

/* ── Line-item cards ── */
.bq-items{margin:0;}
.bq-item{display:flex;gap:18px;background:var(--bq-card);border:1px solid var(--bq-line-soft);border-radius:8px;padding:20px;margin-bottom:12px;}
.bq-item-media{flex:0 0 92px;}
.bq-item-media img{width:92px;height:112px;object-fit:cover;border-radius:5px;display:block;margin:0;}
.bq-item-body{flex:1;min-width:0;display:flex;flex-direction:column;}
.bq-item-top{display:flex;justify-content:space-between;gap:16px;}
.bq-item-name{font-family:var(--font-cormorant),serif;font-size:22px;line-height:1.15;color:var(--bq-ink);}
.bq-item-name a{color:inherit;text-decoration:none;}
.bq-item-each{font-family:var(--font-jost),sans-serif;font-size:12px;letter-spacing:.04em;color:var(--bq-gold);margin-top:3px;}
.bq-item-each span{color:var(--bq-muted);}
.bq-item-total{font-family:var(--font-cormorant),serif;font-size:22px;color:var(--bq-ink);white-space:nowrap;}
.bq-item-meta{font-family:var(--font-jost),sans-serif;font-size:12px;color:var(--bq-ink-soft);margin-top:6px;}
.bq-item-meta p{margin:0;}

.bq-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.bq-chip{font-family:var(--font-jost),sans-serif;font-size:10.5px;letter-spacing:.06em;color:var(--bq-muted);border:1px solid var(--bq-line);border-radius:999px;padding:3px 10px;}

.bq-item-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:14px;}

/* Qty stepper (built around WooCommerce's .quantity input) */
.bq-qty .quantity{display:inline-flex;align-items:center;background:var(--bq-card);border:1px solid var(--bq-line);border-radius:999px;overflow:hidden;}
.bq-qty .quantity .qty{width:42px;min-height:auto;height:36px;border:none;background:transparent;text-align:center;font-family:var(--font-jost),sans-serif;font-size:13px;color:var(--bq-ink);-moz-appearance:textfield;}
.bq-qty .quantity .qty::-webkit-outer-spin-button,.bq-qty .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.bq-qty .bq-step{width:34px;height:36px;border:none;background:transparent;color:var(--bq-ink-soft);font-size:16px;line-height:1;cursor:pointer;transition:color .15s;}
.bq-qty .bq-step:hover{color:var(--bq-ink);}

.bq-remove{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--bq-muted);text-decoration:none;transition:color .15s;}
.bq-remove:hover{color:var(--bq-error);}
.bq-remove svg{display:block;}

.bq-cart-actions{margin-top:4px;}
.bq-cart-actions .bq-update{display:none;}

/* ── "Complete your set" upsell ── */
.bq-upsell{margin-top:26px;}
.bq-upsell-head{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.bq-eyebrow{font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--bq-gold);}
.bq-hairline{flex:1;height:1px;background:rgba(169,130,75,0.38);}
.bq-upsell-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.bq-upsell-card{display:flex;align-items:center;gap:10px;background:var(--bq-card);border:1px solid var(--bq-line-soft);border-radius:8px;padding:12px;}
.bq-upsell-thumb{flex:0 0 46px;}
.bq-upsell-thumb img{width:46px;height:46px;object-fit:cover;border-radius:4px;display:block;margin:0;}
.bq-upsell-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.bq-upsell-name{font-family:var(--font-jost),sans-serif;font-weight:500;font-size:12.5px;color:var(--bq-ink);text-decoration:none;}
.bq-upsell-price{font-family:var(--font-jost),sans-serif;font-size:11px;color:var(--bq-muted);}
.bq-upsell-add{flex:0 0 30px;width:30px;height:30px;border-radius:999px;border:1px solid var(--bq-gold);color:var(--bq-gold);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .18s;}
.bq-upsell-add:hover{background:var(--bq-gold);color:#fff;}

/* ── Summary card ── */
.bq-summary{position:sticky;top:24px;background:var(--bq-surface);border:1px solid var(--bq-line-soft);border-radius:12px;padding:28px;box-shadow:var(--bq-card-shadow);}
.bq-sum-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:26px;color:var(--bq-ink);margin:0 0 18px;}

/* Free-shipping meter (helper markup) */
.bq-summary .inteha-ship-meter:not(:empty){margin:0 0 18px;}
.bq-summary .inteha-ship-meter .ship-note{font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.02em;color:var(--bq-ink-soft);margin-bottom:8px;}
.bq-summary .inteha-ship-meter .ship-bar{height:3px;background:var(--bq-line);overflow:hidden;border-radius:2px;}
.bq-summary .inteha-ship-meter .ship-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--bq-gold-soft),var(--bq-gold));transition:width .5s cubic-bezier(.2,.7,.3,1);}

/* Coupon */
.bq-coupon{border-top:1px solid var(--bq-line-soft);border-bottom:1px solid var(--bq-line-soft);padding:4px 0;margin-bottom:18px;}
.bq-coupon-toggle{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;cursor:pointer;padding:12px 0;font-family:var(--font-jost),sans-serif;font-size:12.5px;color:var(--bq-ink-soft);}
.bq-coupon-toggle svg{color:var(--bq-gold);}
.bq-coupon-toggle .bq-chev{margin-left:auto;transition:transform .2s;color:var(--bq-muted);}
.bq-coupon-toggle[aria-expanded="true"] .bq-chev{transform:rotate(90deg);}
.bq-coupon-form{display:flex;gap:8px;padding:0 0 12px;}
.bq-coupon-input{flex:1;height:44px;border:1px solid var(--bq-line);border-radius:4px;background:#fff;padding:0 12px;font-family:var(--font-jost),sans-serif;font-size:13px;color:var(--bq-ink);}
.bq-coupon-input:focus{outline:none;border-color:var(--bq-gold);box-shadow:0 0 0 3px rgba(169,130,75,0.12);}
.bq-coupon-apply{height:44px;padding:0 18px;background:transparent;border:1px solid var(--bq-gold);color:var(--bq-gold);border-radius:4px;cursor:pointer;font-family:var(--font-jost),sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;transition:all .18s;}
.bq-coupon-apply:hover{background:var(--bq-gold);color:#fff;}

/* Totals */
.bq-totals{display:flex;flex-direction:column;gap:11px;}
.bq-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-jost),sans-serif;font-size:13.5px;color:var(--bq-ink-soft);}
.bq-row .bq-free{color:var(--bq-gold);font-size:11.5px;letter-spacing:.08em;}
.bq-row .bq-muted{color:var(--bq-muted);font-size:12px;}
.bq-coupon-applied{color:var(--bq-gold);}
.bq-total-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;padding-top:16px;border-top:1px solid var(--bq-line);}
.bq-total-label{font-family:var(--font-jost),sans-serif;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--bq-ink);}
.bq-total-amt{font-family:var(--font-cormorant),serif;font-size:30px;color:var(--bq-ink);}
.bq-total-amt .amount{font-size:inherit;}

/* Proceed button */
.bq-proceed{margin-top:20px;}
.bq-proceed .checkout-button,.bq-proceed .button{display:flex!important;align-items:center;justify-content:center;width:100%;height:54px;min-height:54px;padding:0!important;margin:0!important;line-height:1!important;background:var(--bq-espresso)!important;color:#F3EBDF!important;border:none!important;border-radius:4px!important;font-family:var(--font-jost),sans-serif!important;font-size:12px!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-weight:500!important;box-sizing:border-box;transition:transform .12s,box-shadow .2s;}
.bq-proceed .checkout-button:hover,.bq-proceed .button:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(30,22,14,0.22);background:var(--bq-espresso)!important;color:#F3EBDF!important;}

.bq-secure{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:16px;font-family:var(--font-jost),sans-serif;font-size:11.5px;color:var(--bq-muted);}
.bq-secure svg{color:var(--bq-muted);}

/* ── Empty state ── */
.inteha-cart-page .wc-empty-cart-message{display:none;} /* hide the default notice; boutique empty state below */
.bq-empty{text-align:center;padding:60px 20px 80px;max-width:460px;margin:0 auto;}
.bq-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:78px;height:78px;border-radius:999px;border:1px solid var(--bq-gold);color:var(--bq-gold);margin-bottom:22px;}
.bq-empty-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:30px;color:var(--bq-ink);margin:0 0 10px;}
.bq-empty-sub{font-family:var(--font-jost),sans-serif;font-size:13px;line-height:1.7;color:var(--bq-ink-soft);margin:0 0 26px;}

/* ── Responsive ── */
@media(max-width:820px){
  .bq-cart-grid{grid-template-columns:1fr;gap:26px;}
  .bq-summary{position:static;}
  .bq-upsell-grid{grid-template-columns:1fr;}
}
@media(max-width:520px){
  .inteha-cart-page .bq-item{flex-direction:row;gap:14px;padding:16px;}
  .inteha-cart-page .bq-item-media{flex-basis:72px;}
  .inteha-cart-page .bq-item-media img{width:72px;height:88px;}
  .inteha-cart-page .bq-item-name,.inteha-cart-page .bq-item-total{font-size:19px;}
}

/* ════════════════════════════════════════════════════════════
   INTEHA — "Boutique" Checkout (Phase 2)
   ════════════════════════════════════════════════════════════ */
.inteha-checkout-page{background:var(--bq-bg);}
.inteha-checkout-page .inteha-boutique-wrap{max-width:1120px;margin:0 auto;padding:clamp(28px,5vw,50px) clamp(18px,4vw,40px) 84px;}
.inteha-checkout-page .bq-eyebrow{display:block;margin-bottom:8px;}
.inteha-checkout-page .bq-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:clamp(40px,5vw,54px);letter-spacing:-0.01em;color:var(--bq-ink);margin:0;}
.bq-checkout-titlerow{margin-bottom:28px;}

.bq-checkout-grid{display:grid;grid-template-columns:1.5fr 0.95fr;gap:40px;align-items:start;}

/* Form card */
.bq-form-card{background:var(--bq-surface);border:1px solid var(--bq-line-soft);border-radius:12px;padding:clamp(22px,3vw,32px);box-shadow:var(--bq-card-shadow);}

/* Stepper */
.bq-stepper{display:flex;align-items:center;gap:0;list-style:none;margin:0 0 30px;padding:0;}
.bq-node{display:flex;align-items:center;gap:9px;}
.bq-node-dot{width:28px;height:28px;border-radius:999px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--bq-line);background:transparent;color:var(--bq-muted);font-family:var(--font-cormorant),serif;font-size:14px;transition:all .2s;}
.bq-node-label{font-family:var(--font-jost),sans-serif;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bq-muted);}
.bq-node.is-current .bq-node-dot{border-color:var(--bq-gold);background:rgba(169,130,75,0.10);color:var(--bq-gold);}
.bq-node.is-current .bq-node-label{color:var(--bq-ink);font-weight:600;}
.bq-node.is-done .bq-node-dot{background:var(--bq-gold);border-color:var(--bq-gold);color:#fff;}
.bq-node.is-done .bq-node-label{color:var(--bq-ink);}
.bq-node.is-done{cursor:pointer;}
.bq-node-line{flex:1;height:1px;margin:0 12px;background:var(--bq-line);transition:background .2s;}
.bq-node-line.is-done{background:var(--bq-gold);}

/* Steps + field styling */
.bq-step-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:25px;color:var(--bq-ink);margin:0 0 14px;}
.bq-checkout h3,.bq-checkout #order_review_heading{font-family:var(--font-cormorant),serif;font-weight:400;font-size:25px;color:var(--bq-ink);}
.bq-checkout .form-row{margin:0 0 14px;padding:0;}
.bq-checkout .form-row label{font-family:var(--font-jost),sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bq-muted);margin-bottom:6px;display:block;}
.bq-checkout .form-row .required{color:var(--bq-gold);border:0;}
/* Force the boutique input box (the theme's older WooCommerce field style —
   transparent bg + bottom border — was out-specifying these). */
.bq-checkout input.input-text,.bq-checkout textarea,.bq-checkout select{width:100%!important;min-height:50px;height:50px;border:1px solid var(--bq-line)!important;border-radius:4px!important;background:#fff!important;padding:0 14px!important;font-family:var(--font-jost),sans-serif!important;font-size:14.5px!important;color:var(--bq-ink)!important;}
.bq-checkout textarea{height:auto!important;min-height:90px;padding:12px 14px!important;}
.bq-checkout input.input-text:focus,.bq-checkout textarea:focus,.bq-checkout select:focus{outline:none;border-color:var(--bq-gold)!important;box-shadow:0 0 0 3px rgba(169,130,75,0.12);}
.bq-checkout .select2-container .select2-selection--single{height:50px;display:flex;align-items:center;border:1px solid var(--bq-line);border-radius:4px;}
.bq-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:48px;}
.bq-checkout .woocommerce-input-wrapper{width:100%;}

/* Continue / back buttons */
.bq-continue{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;margin-top:8px;border:none;border-radius:4px;cursor:pointer;background:var(--bq-espresso);color:#F3EBDF;font-family:var(--font-jost),sans-serif;font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;transition:transform .12s,box-shadow .2s;}
.bq-continue:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(30,22,14,0.22);}
.bq-back{display:flex;align-items:center;gap:7px;background:none;border:none;cursor:pointer;margin:16px auto 0;font-family:var(--font-jost),sans-serif;font-size:12.5px;letter-spacing:.04em;color:var(--bq-ink-soft);}
.bq-field-error input.input-text,.bq-field-error select{border-color:var(--bq-error)!important;}
.bq-inline-error{color:var(--bq-error);font-family:var(--font-jost),sans-serif;font-size:11.5px;margin-top:5px;}

/* Recap rows */
.bq-recaps{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.bq-recap{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid var(--bq-line-soft);border-radius:6px;background:var(--bq-card);}
.bq-recap-label{font-family:var(--font-jost),sans-serif;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--bq-muted);margin-bottom:3px;}
.bq-recap-val{font-family:var(--font-jost),sans-serif;font-size:13px;color:var(--bq-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bq-recap-edit{display:flex;align-items:center;gap:5px;background:none;border:none;cursor:pointer;color:var(--bq-gold);font-family:var(--font-jost),sans-serif;font-size:11.5px;flex-shrink:0;}

/* Shipping method cards (Delivery step) */
.bq-shipping-table{width:100%;border:0;margin:0;}
.bq-shipping-table td,.bq-shipping-table th{border:0;padding:0;background:transparent;}
.bq-shipping-table ul#shipping_method{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.bq-shipping-table ul#shipping_method li{display:flex;align-items:center;gap:10px;border:1px solid var(--bq-line);border-radius:6px;padding:14px 16px;font-family:var(--font-jost),sans-serif;font-size:13px;color:var(--bq-ink);}
.bq-shipping-table ul#shipping_method li label{margin:0;font-size:13px;letter-spacing:.02em;text-transform:none;color:var(--bq-ink);}
.bq-shipping-table .amount{color:var(--bq-gold);}

/* Payment (real gateways) */
.bq-checkout #payment,.bq-checkout .woocommerce-checkout-payment{background:transparent;border-radius:0;}
.bq-checkout #payment ul.payment_methods{list-style:none;margin:0 0 18px;padding:0;border:0;display:flex;flex-direction:column;gap:10px;}
.bq-checkout #payment ul.payment_methods li{background:var(--bq-card);border:1px solid var(--bq-line);border-radius:6px;padding:14px 16px;}
.bq-checkout #payment label{font-family:var(--font-jost),sans-serif;font-size:13.5px;letter-spacing:.02em;text-transform:none;color:var(--bq-ink);margin:0;}
.bq-checkout #payment .payment_box{background:#fff;border:1px solid var(--bq-line-soft);border-radius:4px;margin-top:10px;font-family:var(--font-jost),sans-serif;font-size:12.5px;color:var(--bq-ink-soft);}
.bq-checkout #payment .payment_box::before{display:none;}
.bq-checkout #payment .place-order{padding:0;margin-top:6px;}
.bq-checkout #place_order{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;background:var(--bq-espresso)!important;color:#F3EBDF!important;border:none!important;border-radius:4px!important;font-family:var(--font-jost),sans-serif!important;font-size:12px!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-weight:500;float:none;transition:transform .12s,box-shadow .2s;}
.bq-checkout #place_order:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(30,22,14,0.22);}
.bq-checkout .woocommerce-terms-and-conditions-wrapper{font-family:var(--font-jost),sans-serif;font-size:11.5px;color:var(--bq-muted);margin-bottom:14px;}

/* ── Espresso order summary (right) ── */
.bq-osum-panel{position:sticky;top:24px;}
.bq-osum.bq-osum-dark{background:var(--bq-espresso);color:#F8F2E8;border-radius:12px;padding:28px;}
.bq-osum-dark .bq-osum-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:26px;color:#F8F2E8;margin:0 0 18px;}
.bq-osum-items{display:flex;flex-direction:column;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid rgba(169,130,75,0.30);}
.bq-osum-item{display:flex;align-items:center;gap:12px;}
.bq-osum-thumb{position:relative;flex:0 0 56px;}
.bq-osum-thumb img{width:56px;height:66px;object-fit:cover;border-radius:4px;display:block;margin:0;}
.bq-osum-qty{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;border-radius:999px;background:var(--bq-gold);color:#fff;font-family:var(--font-jost),sans-serif;font-size:11px;display:flex;align-items:center;justify-content:center;padding:0 5px;}
.bq-osum-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.bq-osum-name{font-family:var(--font-cormorant),serif;font-size:17px;color:#F8F2E8;}
.bq-osum-scents{font-family:var(--font-jost),sans-serif;font-size:11px;color:rgba(243,235,223,0.6);}
.bq-osum-line{font-family:var(--font-cormorant),serif;font-size:17px;color:#F8F2E8;white-space:nowrap;}
.bq-osum-totals{display:flex;flex-direction:column;gap:10px;}
.bq-osum-dark .bq-row{display:flex;justify-content:space-between;font-family:var(--font-jost),sans-serif;font-size:13px;color:rgba(243,235,223,0.82);}
.bq-osum-dark .bq-row .bq-free{color:var(--bq-gold-soft);font-size:11.5px;letter-spacing:.08em;}
.bq-osum-dark .bq-coupon-applied{color:var(--bq-gold-soft);}
.bq-osum-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;padding-top:16px;border-top:1px solid rgba(169,130,75,0.30);}
.bq-osum-total .bq-total-label{font-family:var(--font-jost),sans-serif;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#F8F2E8;}
.bq-osum-total-amt{font-family:var(--font-cormorant),serif;font-size:30px;color:var(--bq-gold-soft);}
.bq-osum-total-amt .amount{font-size:inherit;}
.bq-trust{margin-top:22px;display:flex;flex-direction:column;gap:12px;}
.bq-trust-row{display:flex;align-items:center;gap:10px;font-family:var(--font-jost),sans-serif;font-size:12px;color:rgba(243,235,223,0.78);}
.bq-trust-row svg{color:var(--bq-gold-soft);flex-shrink:0;}

/* Responsive */
@media(max-width:820px){
  .bq-checkout-grid{grid-template-columns:1fr;gap:24px;}
  .bq-osum-panel{position:static;order:-1;}
  .bq-node-label{display:none;}
}

/* ── Cart visual bug fixes ── */
/* WooCommerce's default a.remove (big red 1.5em ×) was overriding the boutique
   Remove link and overflowing the card — re-assert the boutique style. */
.inteha-cart-page .bq-remove{display:inline-flex;align-items:center;gap:6px;width:auto!important;height:auto!important;
  font-size:11.5px!important;line-height:1!important;font-weight:400!important;color:var(--bq-muted)!important;text-indent:0!important;background:none!important;}
.inteha-cart-page .bq-remove:hover{color:var(--bq-error)!important;background:none!important;}
/* The "Update cart" button is driven by the steppers — keep it hidden (the
   default .button styles were out-specifying display:none). */
.inteha-cart-page .bq-cart-actions{min-height:0;margin:0;}
.inteha-cart-page .bq-cart-actions .bq-update,.inteha-cart-page .bq-cart-actions input.button{display:none!important;}
.inteha-cart-page .bq-item-foot{flex-wrap:wrap;gap:10px 14px;}
.inteha-cart-page .bq-item-media img{background:var(--bq-card);}

/* Cart line-item size switcher */
.inteha-cart-page .bq-size-switch{display:flex;align-items:center;gap:8px;margin:8px 0 2px;flex-wrap:wrap;}
.inteha-cart-page .bq-size-label{font-family:var(--font-jost),sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--bq-muted);}
.inteha-cart-page .bq-size{padding:5px 11px;border:1px solid var(--bq-line);border-radius:3px;background:transparent;cursor:pointer;
  font-family:var(--font-jost),sans-serif;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--bq-ink);transition:all .15s;}
.inteha-cart-page .bq-size:hover{border-color:var(--bq-gold);}
.inteha-cart-page .bq-size.is-active{background:var(--bq-ink);color:#fff;border-color:var(--bq-ink);}
.inteha-cart-page .bq-size-switch.bq-loading{opacity:.5;pointer-events:none;}

/* Country (select2) field — match the other boutique inputs */
.bq-checkout .select2-container--default .select2-selection--single{height:50px!important;border:1px solid var(--bq-line)!important;border-radius:4px!important;background:#fff!important;display:flex;align-items:center;padding:0 14px;}
.bq-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:normal!important;padding:0!important;color:var(--bq-ink);font-family:var(--font-jost),sans-serif;font-size:14.5px;}
.bq-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:48px;right:10px;}
.bq-checkout .select2-dropdown{border-color:var(--bq-line);}

/* ════════════════════════════════════════════════════════════
   INTEHA — "Boutique" Account (Sidebar Dashboard)
   ════════════════════════════════════════════════════════════ */
.inteha-account-page{background:var(--bq-bg);}
.inteha-account-wrap{max-width:1120px;margin:0 auto;padding:clamp(28px,5vw,46px) clamp(18px,4vw,40px) 80px;}
.bq-acct-greet{margin-bottom:clamp(20px,4vw,32px);}
.bq-acct-greet .bq-eyebrow{display:block;margin-bottom:8px;}
.bq-acct-greet .bq-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:clamp(38px,5vw,52px);letter-spacing:-0.01em;color:var(--bq-ink);margin:0;}

/* Two-column shell: rail + content (override the theme's flex layout).
   Scoped to logged-in: when logged out, .woocommerce holds the login/register
   form (#customer_login), NOT the nav rail + content — applying this grid there
   produces an empty 248px column + squished forms. */
.logged-in .inteha-account-page .woocommerce{display:grid!important;grid-template-columns:248px 1fr;gap:36px;align-items:start;max-width:none;}
/* The shortcode wrapper contains more children than just the rail + content:
   WooCommerce's notices wrapper and anything plugins (YITH etc.) inject via
   woocommerce_before_account_navigation. Span every child full-width by
   default, then pin the rail and content to row 2 explicitly so stray
   (often invisible) siblings can never steal a grid cell. */
.inteha-account-page .woocommerce > *{grid-column:1/-1;}
.logged-in .inteha-account-page .woocommerce > .woocommerce-MyAccount-navigation{grid-column:1;grid-row:2;}
.logged-in .inteha-account-page .woocommerce > .woocommerce-MyAccount-content{grid-column:2;grid-row:2;}
/* Neutralise Woo core's float layout (nav 30% / content 70%) inside the grid. */
.inteha-account-page .woocommerce-MyAccount-navigation,
.inteha-account-page .woocommerce-MyAccount-content{width:auto!important;float:none!important;}
.inteha-account-page .woocommerce-MyAccount-content{background:var(--bq-surface);border:1px solid var(--bq-line-soft);border-radius:12px;padding:clamp(22px,3vw,32px);box-shadow:var(--bq-card-shadow);min-width:0;flex:none;}

/* Nav rail */
/* display/z-index resets guard against inteha.css's global `nav` header rules. */
.bq-acct-nav{position:sticky;top:100px;z-index:1;display:block;background:var(--bq-surface);border:1px solid var(--bq-line-soft);border-radius:12px;padding:12px;box-shadow:var(--bq-card-shadow);flex:none;}
.bq-acct-nav ul{list-style:none;margin:0;padding:0;border:0;}
.bq-acct-nav li{margin:0;padding:0;border:0;list-style:none;}
.bq-acct-nav li a{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:8px;font-family:var(--font-jost),sans-serif;font-size:13px;letter-spacing:.04em;color:var(--bq-ink-soft);text-decoration:none;transition:background .15s,color .15s;}
.bq-acct-nav li a:hover{background:rgba(120,95,60,0.07);}
.bq-acct-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--bq-gold);flex-shrink:0;}
.bq-acct-ico svg{width:18px;height:18px;}
.bq-acct-nav li.is-active a{background:var(--bq-espresso);color:#F3EBDF;}
.bq-acct-nav li.is-active .bq-acct-ico{color:var(--bq-gold-soft);}
.bq-acct-logout{border-top:1px solid var(--bq-line-soft);margin-top:8px!important;padding-top:8px!important;}
.bq-acct-logout a{color:var(--bq-muted);}

/* Generic account cards / buttons */
.bq-acct-card{background:var(--bq-card);border:1px solid var(--bq-line-soft);border-radius:10px;padding:20px;}
.bq-acct-title{font-family:var(--font-cormorant),serif;font-weight:400;font-size:30px;color:var(--bq-ink);margin:0 0 6px;}
.bq-acct-sub{font-family:var(--font-jost),sans-serif;font-size:13px;line-height:1.6;color:var(--bq-ink-soft);margin:0 0 14px;}
.bq-acct-btn{display:inline-block;font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:9px 18px;border-radius:999px;text-decoration:none;transition:all .15s;}
.bq-acct-btn.ghost{border:1px solid var(--bq-line);color:var(--bq-ink);}
.bq-acct-btn.ghost:hover{background:var(--bq-ink);color:#fff;border-color:var(--bq-ink);}
.bq-acct-save{margin-top:6px;border:none;border-radius:4px;height:48px;padding:0 26px;background:var(--bq-espresso);color:#F3EBDF;font-family:var(--font-jost),sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:transform .12s,box-shadow .2s;}
.bq-acct-save:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(30,22,14,0.22);}

/* Overview grid */
.bq-ov-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.bq-ov-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;}
.bq-ov-link{font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.04em;color:var(--bq-gold);text-decoration:none;white-space:nowrap;}
.bq-ov-orderrow{display:flex;justify-content:space-between;gap:14px;}
.bq-ov-oid{font-family:var(--font-jost),sans-serif;font-size:12px;letter-spacing:.1em;color:var(--bq-gold);}
.bq-ov-status{display:inline-block;margin-left:8px;font-family:var(--font-jost),sans-serif;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--bq-muted);}
.bq-status-completed{color:var(--bq-ok);}
.bq-ov-items{font-family:var(--font-cormorant),serif;font-size:18px;color:var(--bq-ink);margin:8px 0 4px;}
.bq-ov-date{font-family:var(--font-jost),sans-serif;font-size:11.5px;color:var(--bq-muted);margin:0;}
.bq-ov-orderright{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.bq-ov-total{font-family:var(--font-cormorant),serif;font-size:22px;color:var(--bq-ink);}
.bq-ov-addr{font-style:normal;font-family:var(--font-jost),sans-serif;font-size:13px;line-height:1.7;color:var(--bq-ink-soft);}

/* Rewards card (espresso) */
.bq-rewards{background:var(--bq-espresso);color:#F8F2E8;border-radius:10px;padding:24px;}
.bq-rewards-top{display:flex;justify-content:space-between;align-items:flex-start;}
.bq-eyebrow-soft{color:var(--bq-gold-soft);}
.bq-rewards-badge{color:var(--bq-gold-soft);border:1px solid rgba(195,168,120,0.5);border-radius:999px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;}
.bq-rewards-num{font-family:var(--font-cormorant),serif;font-size:40px;color:#F8F2E8;margin:10px 0 12px;line-height:1;}
.bq-rewards-num span{font-size:14px;color:rgba(243,235,223,0.7);}
.bq-rewards-bar{height:4px;border-radius:2px;background:rgba(243,235,223,0.14);overflow:hidden;margin-bottom:10px;}
.bq-rewards-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--bq-gold-soft),var(--bq-gold));transition:width .5s cubic-bezier(.2,.7,.3,1);}
.bq-rewards-help{font-family:var(--font-jost),sans-serif;font-size:12px;color:rgba(243,235,223,0.78);margin:0;}
.bq-rewards-redeem{background:var(--bq-gold);color:#fff;border:none;border-radius:4px;padding:11px 18px;font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;}
.bq-rewards-code{font-family:var(--font-jost),sans-serif;font-size:12px;color:var(--bq-gold-soft);margin:12px 0 0;}

/* Chips (scent profile) */
.bq-chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 18px;}
label.bq-chip{cursor:pointer;}
label.bq-chip input{position:absolute;opacity:0;width:0;height:0;pointer-events:none;}
.bq-acct-card .bq-chip,.bq-scent-form .bq-chip{display:inline-flex;align-items:center;font-family:var(--font-jost),sans-serif;font-size:11px;letter-spacing:.04em;color:var(--bq-ink-soft);border:1px solid var(--bq-line);border-radius:999px;padding:6px 13px;background:transparent;}
.bq-chip:has(input:checked),.bq-chip.is-on{background:var(--bq-gold);border-color:var(--bq-gold);color:#fff;}
.bq-scent-form .bq-eyebrow{display:block;margin:10px 0 4px;}

/* Style the default WooCommerce account tables/forms to match */
.inteha-account-page .woocommerce-orders-table,.inteha-account-page table.shop_table{border:1px solid var(--bq-line-soft);border-radius:10px;}
.inteha-account-page .woocommerce-orders-table th{font-family:var(--font-jost),sans-serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--bq-muted);}
.inteha-account-page .woocommerce-MyAccount-content a.button,.inteha-account-page .woocommerce-MyAccount-content button.button{background:var(--bq-espresso);color:#F3EBDF;border-radius:4px;border:none;font-family:var(--font-jost),sans-serif;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;}
.inteha-account-page .woocommerce-MyAccount-content h2,.inteha-account-page .woocommerce-MyAccount-content h3{font-family:var(--font-cormorant),serif;font-weight:400;color:var(--bq-ink);}
.inteha-account-page .woocommerce-MyAccount-content .woocommerce-Address,.inteha-account-page .addresses .col-1,.inteha-account-page .addresses .col-2{background:var(--bq-card);border:1px solid var(--bq-line-soft);border-radius:10px;padding:18px;}
/* Address book: two cards side by side (same clearfix-pseudo + float neutralising
   as the login page — Woo floats them 48% with a clearfix otherwise). */
.inteha-account-page .addresses{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.inteha-account-page .addresses::before,.inteha-account-page .addresses::after{content:none!important;}
.inteha-account-page .addresses .col-1,.inteha-account-page .addresses .col-2{float:none!important;width:auto!important;}
.inteha-account-page .addresses .col-1{grid-column:1;grid-row:1;}
.inteha-account-page .addresses .col-2{grid-column:2;grid-row:1;}
.inteha-account-page .woocommerce-MyAccount-content input.input-text,.inteha-account-page .woocommerce-MyAccount-content select,.inteha-account-page .woocommerce-MyAccount-content textarea{border:1px solid var(--bq-line)!important;background:#fff!important;border-radius:4px!important;padding:0 14px!important;min-height:48px;font-family:var(--font-jost),sans-serif;}

/* ── Logged-out: Login / Register / Lost-password ──
   /my-account/ renders #customer_login (two boutique cards) when signed out.
   Woo's clearfix pseudo-elements (::before/::after with content on .woocommerce
   and .col2-set) become anonymous grid ITEMS and steal the first cell, which
   staggers the layout — strip them and place both cards explicitly. */
.inteha-account-page .woocommerce::before,.inteha-account-page .woocommerce::after,
.inteha-account-page .col2-set::before,.inteha-account-page .col2-set::after{content:none!important;}
.inteha-account-page #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:880px;margin:0 auto;width:100%;}
.inteha-account-page #customer_login > .col-1{grid-column:1;grid-row:1;}
.inteha-account-page #customer_login > .col-2{grid-column:2;grid-row:1;}
/* Woo core draws its own bordered box around the login/register forms — the
   boutique card already is the box. */
.inteha-account-page .woocommerce form.login,.inteha-account-page .woocommerce form.register{border:0!important;padding:0!important;margin:0!important;border-radius:0!important;}
.inteha-account-page #customer_login>.u-column1,.inteha-account-page #customer_login>.u-column2,.inteha-account-page .col2-set .col-1,.inteha-account-page .col2-set .col-2{float:none;width:auto;background:var(--bq-surface);border:1px solid var(--bq-line-soft);border-radius:12px;padding:clamp(22px,3vw,30px);box-shadow:var(--bq-card-shadow);}
.inteha-account-page #customer_login h2,.inteha-account-page .woocommerce-ResetPassword~* h2,.inteha-account-page .woocommerce > h2{font-family:var(--font-cormorant),serif;font-weight:400;font-size:28px;color:var(--bq-ink);margin:0 0 16px;}
.inteha-account-page .woocommerce-form label,.inteha-account-page .woocommerce-ResetPassword label{display:block;font-family:var(--font-jost),sans-serif;font-size:12px;letter-spacing:.04em;color:var(--bq-ink-soft);margin-bottom:6px;}
.inteha-account-page .woocommerce-form__label-for-checkbox{display:flex;align-items:center;gap:8px;margin-top:4px;color:var(--bq-ink-soft);}
.inteha-account-page .woocommerce-form .input-text,.inteha-account-page .woocommerce-ResetPassword .input-text,.inteha-account-page .woocommerce-form input[type=text],.inteha-account-page .woocommerce-form input[type=email],.inteha-account-page .woocommerce-form input[type=password],.inteha-account-page .woocommerce-ResetPassword input[type=text]{width:100%;border:1px solid var(--bq-line)!important;background:#fff!important;border-radius:4px!important;padding:0 14px!important;min-height:48px;font-family:var(--font-jost),sans-serif;color:var(--bq-ink);box-sizing:border-box;}
.inteha-account-page #customer_login button.button,.inteha-account-page .woocommerce-form button.button,.inteha-account-page .woocommerce-ResetPassword button.button{background:var(--bq-espresso)!important;color:#F3EBDF!important;border:none!important;border-radius:4px;min-height:48px;padding:0 26px;font-family:var(--font-jost),sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:transform .12s,box-shadow .2s;}
.inteha-account-page #customer_login button.button:hover,.inteha-account-page .woocommerce-form button.button:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(30,22,14,0.22);}
.inteha-account-page #customer_login a,.inteha-account-page .woocommerce-LostPassword a{color:var(--bq-gold);}
/* WooCommerce's JS injects a show-password eye into password fields; its core
   styling (icon font + fixed em offset) breaks inside the 48px boutique inputs.
   Re-position it and draw the eye ourselves via an SVG mask. */
.inteha-account-page .password-input{position:relative;display:block;width:100%;}
.inteha-account-page .password-input .input-text{padding-right:44px!important;}
.inteha-account-page .show-password-input{position:absolute;right:13px;top:50%;transform:translateY(-50%);width:22px;height:22px;padding:0;margin:0;background:transparent;border:0;cursor:pointer;line-height:0;}
.inteha-account-page .show-password-input::after{content:''!important;position:absolute;inset:0;background:var(--bq-muted);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/20px 20px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/20px 20px no-repeat;}
.inteha-account-page .show-password-input.display-password::after{background:var(--bq-gold);}
.inteha-account-page .woocommerce-privacy-policy-text p,.inteha-account-page #customer_login form > p:not(.form-row){font-size:12px;color:var(--bq-muted);line-height:1.6;}

/* Responsive: rail → scrollable pill row */
@media(max-width:820px){
  .logged-in .inteha-account-page .woocommerce{grid-template-columns:1fr;gap:20px;}
  .logged-in .inteha-account-page .woocommerce > .woocommerce-MyAccount-navigation,
  .logged-in .inteha-account-page .woocommerce > .woocommerce-MyAccount-content{grid-column:1;grid-row:auto;}
  .inteha-account-page #customer_login{grid-template-columns:1fr;}
  .inteha-account-page #customer_login > .col-1,
  .inteha-account-page #customer_login > .col-2{grid-column:1;grid-row:auto;}
  .inteha-account-page .addresses{grid-template-columns:1fr;}
  .inteha-account-page .addresses .col-1,
  .inteha-account-page .addresses .col-2{grid-column:1;grid-row:auto;}
  .bq-acct-nav{position:static;}
  .bq-acct-nav ul{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .bq-acct-nav li a{white-space:nowrap;border:1px solid var(--bq-line-soft);}
  .bq-acct-logout{border-top:0!important;margin-top:0!important;padding-top:0!important;}
  .bq-ov-grid{grid-template-columns:1fr;}
}

/* ── Coupon merged into the espresso order-summary blob ── */
/* Square the summary's bottom corners so the coupon reads as one card. */
.bq-osum-panel.has-coupon #order_review .bq-osum-dark{border-bottom-left-radius:0;border-bottom-right-radius:0;}
.bq-osum-coupon{margin-top:0;background:var(--bq-espresso);border:0;border-top:1px solid rgba(195,168,120,0.28);border-radius:0 0 12px 12px;padding:4px 28px 20px;}
.bq-osum-coupon .woocommerce-form-coupon-toggle{margin:0;}
.bq-osum-coupon .woocommerce-info{background:none!important;border:0!important;padding:16px 0!important;margin:0!important;color:rgba(243,235,223,0.82)!important;font-family:var(--font-jost),sans-serif;font-size:12.5px;display:flex;align-items:center;gap:8px;}
.bq-osum-coupon .woocommerce-info::before{position:static!important;content:'\2728';color:var(--bq-gold-soft);font-size:13px;margin:0;}
.bq-osum-coupon .showcoupon{color:var(--bq-gold-soft);text-decoration:none;}
.bq-osum-coupon .showcoupon:hover{text-decoration:underline;}
.bq-osum-coupon form.checkout_coupon{margin:0 0 6px;padding:0;border:0;border-radius:0;background:none;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.bq-osum-coupon form.checkout_coupon > p:first-of-type{display:none;}
.bq-osum-coupon form.checkout_coupon .form-row{margin:0;padding:0;flex:1 1 60%;}
.bq-osum-coupon form.checkout_coupon .form-row-last{flex:0 0 auto;}
.bq-osum-coupon #coupon_code{width:100%;height:46px;border:1px solid rgba(195,168,120,0.34)!important;border-radius:4px!important;background:rgba(243,235,223,0.06)!important;padding:0 12px!important;font-family:var(--font-jost),sans-serif!important;font-size:13px!important;color:#F8F2E8!important;}
.bq-osum-coupon #coupon_code::placeholder{color:rgba(243,235,223,0.45);}
.bq-osum-coupon #coupon_code:focus{outline:none;border-color:var(--bq-gold-soft)!important;box-shadow:0 0 0 3px rgba(195,168,120,0.18);}
.bq-osum-coupon button[name="apply_coupon"]{height:46px;padding:0 18px;background:transparent!important;border:1px solid var(--bq-gold-soft)!important;color:var(--bq-gold-soft)!important;border-radius:4px!important;cursor:pointer;font-family:var(--font-jost),sans-serif!important;font-size:11px!important;letter-spacing:.12em!important;text-transform:uppercase!important;transition:all .18s;}
.bq-osum-coupon button[name="apply_coupon"]:hover{background:var(--bq-gold-soft)!important;color:var(--bq-espresso)!important;}
