:root {
  --perfecto-bg: #0b0907;
  --perfecto-panel: rgba(28, 25, 21, .78);
  --perfecto-panel-2: rgba(20, 17, 14, .92);
  --perfecto-line: rgba(180, 121, 42, .20);
  --perfecto-line-strong: rgba(217, 151, 57, .42);
  --perfecto-gold: #d99739;
  --perfecto-gold-soft: #f7d99a;
  --perfecto-text: #f6eddc;
  --perfecto-muted: #a99c8d;
  --perfecto-stone: #1b1713;
  --perfecto-radius: 22px;
}

body.woocommerce,
body.post-type-archive-product,
body.single-product {
  background: radial-gradient(circle at top center, #22180f 0%, #0b0907 42%, #070605 100%) !important;
  color: var(--perfecto-text);
}

/* SHOP HERO */
.perfecto-shop-hero {
  position: relative;
  min-height: 300px;
  margin: -1px 0 42px;
  overflow: hidden;
  background-image: var(--perfecto-hero-image);
  background-size: cover;
  background-position: center;
  border-bottom: 1px solid var(--perfecto-line);
}
.perfecto-shop-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(9,8,7,.55), rgba(9,8,7,.86) 55%, #0b0907 100%),
    radial-gradient(circle at center, rgba(217,151,57,.10), transparent 54%);
}
.perfecto-shop-hero__inner {
  position: relative;
  z-index: 2;
  min-height: 300px;
  display: grid;
  place-content: center;
  text-align: center;
  padding: 70px 20px;
}
.perfecto-eyebrow,
.perfecto-detail-brand,
.perfecto-card-brand {
  color: #b97b2e;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 12px;
  font-weight: 700;
  margin: 0 0 8px;
}
.perfecto-shop-hero h1 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(42px, 6vw, 72px);
  line-height: .95;
  color: var(--perfecto-gold-soft);
  margin: 0;
  font-weight: 400;
}
.perfecto-shop-hero p:last-child {
  color: #d7c5ac;
  font-size: 17px;
  margin-top: 15px;
}

/* ARCHIVE GRID FORCE */
.woocommerce .shop-loop-head,
.woocommerce .basel-products-loader,
.woocommerce .products-footer { max-width: 1280px; margin-left: auto; margin-right: auto; }
.woocommerce ul.products,
.woocommerce-page ul.products,
.woocommerce ul.products.perfecto-base44-grid,
.woocommerce-page ul.products.perfecto-base44-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  max-width: 1280px;
  margin: 0 auto !important;
  padding: 0 20px !important;
  list-style: none !important;
  float: none !important;
  clear: both !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products li.perfecto-product-card-shell {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  position: relative;
}
.woocommerce .products.columns-1,
.woocommerce-page .products.columns-1 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }

/* PRODUCT CARD */
.perfecto-product-card {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: var(--perfecto-radius);
  border: 1px solid rgba(180, 121, 42, .14);
  background: linear-gradient(135deg, rgba(41, 35, 29, .88), rgba(16, 14, 12, .95));
  box-shadow: 0 20px 50px rgba(0,0,0,.34);
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.perfecto-product-card:hover {
  transform: translateY(-5px) scale(1.015);
  border-color: rgba(217,151,57,.40);
  box-shadow: 0 26px 68px rgba(92, 47, 7, .35);
}
.perfecto-card-media {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1;
  background: #fff;
  overflow: hidden;
}
.perfecto-card-media img,
.perfecto-card-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 18px !important;
  margin: 0 !important;
  transition: transform .7s ease !important;
}
.perfecto-product-card:hover .perfecto-card-image { transform: scale(1.08); }
.perfecto-media-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(8,7,6,.92) 0%, rgba(8,7,6,.20) 46%, transparent 78%);
  pointer-events: none;
}
.perfecto-featured-badge,
.perfecto-rating-badge,
.perfecto-card-actions span {
  position: absolute;
  z-index: 3;
  border-radius: 999px;
  backdrop-filter: blur(12px);
}
.perfecto-featured-badge {
  top: 13px; left: 13px;
  background: linear-gradient(135deg, #b8751e, #d99739);
  color: #fff;
  padding: 6px 10px;
  font-size: 10px;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-weight: 800;
}
.perfecto-rating-badge {
  top: 13px; right: 13px;
  background: rgba(0,0,0,.62);
  color: #ffe2a4;
  padding: 5px 9px;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
}
.perfecto-rating-badge svg { width: 13px; height: 13px; color: #f6c15b; }
.perfecto-card-actions { position:absolute; left:13px; top:53px; z-index:4; }
.perfecto-card-actions span {
  position: static;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: rgba(0,0,0,.62);
  color: #e9ddca;
  opacity: 0;
  transition: opacity .25s ease, color .25s ease;
}
.perfecto-product-card:hover .perfecto-card-actions span { opacity: 1; }
.perfecto-card-actions svg { width: 16px; height: 16px; }

.perfecto-card-body {
  display: flex;
  flex-direction: column;
  min-height: 190px;
  padding: 18px 18px 8px;
  color: inherit !important;
  text-decoration: none !important;
}
.perfecto-category-pill {
  align-self: flex-start;
  background: rgba(217,151,57,.16);
  border: 1px solid rgba(217,151,57,.26);
  color: #f3c06e;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 10px;
}
.perfecto-card-title {
  font-family: Georgia, 'Times New Roman', serif !important;
  color: #fee4ae !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
  min-height: 44px;
  margin: 0 0 10px !important;
  font-weight: 400 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.perfecto-product-card:hover .perfecto-card-title { color: #ffc96b !important; }
.perfecto-strength-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  color: #fff;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  background: linear-gradient(90deg, #d99739, #b66a20);
}
.perfecto-strength-pill svg { width: 12px; height: 12px; }
/* Burn type color map requested for Perfecto cards + single product pills.
   Base44 CigarDetail uses gradient strength pills; these values keep that pill style
   while applying the requested Perfecto color assignments. */
.strength-mild {
  background: linear-gradient(90deg, #ef4444, #b91c1c) !important;
  color: #fff !important;
}
.strength-mild-medium {
  background: linear-gradient(90deg, #fb923c, #ea580c) !important;
  color: #fff !important;
}
.strength-medium {
  background: linear-gradient(90deg, #fdba74, #f97316) !important;
  color: #25130a !important;
}
.strength-medium-full {
  background: linear-gradient(90deg, #3b82f6, #1d4ed8) !important;
  color: #fff !important;
}
.strength-full {
  background: linear-gradient(90deg, #22c55e, #15803d) !important;
  color: #fff !important;
}
.perfecto-pairing-block { margin-top: 12px; }
.perfecto-pairing-block > span {
  display: block;
  color: #746b60;
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.perfecto-pairing-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.perfecto-pairing-tags em {
  font-style: normal;
  color: #edc478;
  background: rgba(151, 91, 24, .18);
  border: 1px solid rgba(217,151,57,.14);
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 10px;
  line-height: 1;
}
.perfecto-card-footer {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  padding: 8px 18px 18px;
}
.perfecto-card-price .price,
.perfecto-card-price .amount,
.perfecto-card-price bdi {
  color: #f8b84d !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}
.perfecto-card-price small {
  display: block;
  color: #746b60;
  font-size: 11px;
  margin-top: 3px;
}
.perfecto-cart-icon-button,
.woocommerce a.button.perfecto-cart-icon-button,
.woocommerce ul.products li.product .button.perfecto-cart-icon-button {
  min-width: 44px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  background: linear-gradient(135deg, #d99739, #b36c22) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 10px 22px rgba(181, 99, 26, .30) !important;
  font-size: 0 !important;
}
.perfecto-cart-icon-button svg { width: 19px; height: 19px; display:block; }

/* SINGLE PRODUCT */
.perfecto-single-product {
  max-width: 1280px;
  margin: 0 auto;
  padding: 28px 20px 80px;
}
.perfecto-single-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: -1px 0 28px;
  padding: 12px 0;
  background: rgba(11, 9, 7, .78);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(180, 121, 42, .14);
}
.perfecto-back-button {
  color: #d99739 !important;
  border: 1px solid rgba(217,151,57,.25);
  border-radius: 12px;
  padding: 10px 15px;
  text-decoration: none !important;
  background: rgba(217,151,57,.06);
  font-weight: 700;
}
.perfecto-single-actions { display:flex; gap:10px; }
.perfecto-single-actions span {
  width: 40px; height:40px; border-radius: 999px;
  display:grid; place-items:center;
  color:#c8b99f;
  background:rgba(34,29,23,.75);
  border:1px solid rgba(217,151,57,.14);
}
.perfecto-single-actions svg { width:18px; height:18px; }
.perfecto-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(390px, 1fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.perfecto-main-image-card {
  position: relative;
  border-radius: 30px;
  background: #fff;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  box-shadow: 0 26px 75px rgba(0,0,0,.42);
}
.perfecto-main-product-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 28px !important;
  margin: 0 !important;
}
.perfecto-detail-rating {
  position: absolute; top: 18px; right: 18px;
  display:flex; align-items:center; gap:5px;
  padding: 7px 12px;
  border-radius:999px;
  background:rgba(0,0,0,.70);
  color:#ffe0a0;
  font-weight:800;
}
.perfecto-detail-rating svg { width:15px; height:15px; color:#f6c15b; }
.perfecto-thumb-row { display:flex; gap:10px; margin-top: 14px; flex-wrap:wrap; }
.perfecto-thumb {
  width:78px; height:78px; border-radius:14px;
  background:#fff; border:1px solid rgba(217,151,57,.20); padding:5px; overflow:hidden; cursor:pointer;
}
.perfecto-thumb img { width:100%; height:100%; object-fit:contain; }
.perfecto-detail-title {
  font-family: Georgia, 'Times New Roman', serif !important;
  color: #fee4ae !important;
  font-size: clamp(34px, 4vw, 56px) !important;
  line-height: 1.02 !important;
  font-weight: 400 !important;
  margin: 0 0 20px !important;
}
.perfecto-detail-meta-row { display:flex; flex-wrap:wrap; gap:11px; align-items:center; margin-bottom:24px; }
.perfecto-origin,
.perfecto-size-pill {
  display:inline-flex; align-items:center; gap:6px;
  color:#bfb1a2;
  background: rgba(37,32,27,.75);
  border:1px solid rgba(217,151,57,.12);
  border-radius:999px;
  padding:7px 11px;
  font-size:13px;
}
.perfecto-origin svg { width:14px; height:14px; color:#d99739; }
.perfecto-spec-grid {
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
  padding:17px;
  background: rgba(28,25,21,.56);
  border:1px solid rgba(217,151,57,.16);
  border-radius:22px;
  margin-bottom:22px;
}
.perfecto-spec-grid div { text-align:center; }
.perfecto-spec-grid span { display:block; color:#756d63; font-size:10px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:5px; }
.perfecto-spec-grid strong { color:#fee4ae; font-size:14px; font-weight:700; }
.perfecto-copy-block,
.perfecto-pairings-panel,
.perfecto-purchase-panel,
.perfecto-concierge-card,
.perfecto-detail-tabs {
  border-radius: 22px;
  border:1px solid rgba(217,151,57,.16);
  background: rgba(28,25,21,.48);
}
.perfecto-copy-block,
.perfecto-pairings-panel,
.perfecto-purchase-panel { padding:18px; margin-bottom:18px; }
.perfecto-copy-block h3,
.perfecto-pairings-panel h3 { color:#fedc9b; font-size:17px; margin:0 0 10px; }
.perfecto-copy-block p,
.perfecto-pairings-panel p { color:#c9bba8; line-height:1.7; margin: 0; }
.perfecto-detail-tags em { font-size:13px; padding:8px 11px; }
.perfecto-pairings-panel { background: rgba(88, 52, 14, .15); }
.perfecto-price-row span { display:block; color:#83796d; font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.perfecto-price-row .price,
.perfecto-price-row .amount,
.perfecto-price-row bdi,
.perfecto-price-row strong {
  color:#f8b84d !important;
  font-size:30px !important;
  font-weight:900 !important;
}
.perfecto-purchase-panel form.cart { display:block !important; margin-top:16px !important; }
.perfecto-purchase-panel .quantity { margin: 0 14px 14px 0 !important; }
.perfecto-purchase-panel .quantity input.qty {
  background:#16120f !important; color:#fee4ae !important; border:1px solid rgba(217,151,57,.22) !important;
  border-radius:10px !important; height:44px !important;
}
.perfecto-purchase-panel .single_add_to_cart_button,
.woocommerce div.product .perfecto-purchase-panel form.cart .button {
  min-height:46px !important;
  border-radius:12px !important;
  background: linear-gradient(90deg, #d99739, #b56f24) !important;
  color:#fff !important;
  border:0 !important;
  padding: 0 28px !important;
  font-weight:800 !important;
  box-shadow:0 16px 28px rgba(166,88,20,.24) !important;
}
.perfecto-concierge-card {
  display:flex; align-items:center; gap:14px;
  padding:16px;
  color:inherit !important;
  text-decoration:none !important;
  background: linear-gradient(90deg, rgba(97,58,14,.35), rgba(25,22,18,.42));
}
.perfecto-concierge-icon {
  width:50px; height:50px; border-radius:15px; display:grid; place-items:center;
  background:linear-gradient(135deg, #d99739, #9e5a18); color:white; font-family:Georgia,serif; font-size:26px;
}
.perfecto-concierge-card strong { color:#fee4ae; display:block; }
.perfecto-concierge-card small { color:#a79b8d; display:block; margin-top:3px; }
.perfecto-detail-tabs { margin-top:38px; padding: 20px; }
.perfecto-detail-tabs .woocommerce-tabs { margin:0 !important; }
.perfecto-detail-tabs ul.tabs { border-color: rgba(217,151,57,.16) !important; }
.perfecto-detail-tabs .panel,
.perfecto-detail-tabs .woocommerce-Tabs-panel { color:#d2c5b5; }
.perfecto-related-section { margin-top:52px; }
.perfecto-related-section h2 {
  color:#fee4ae; font-family:Georgia,serif; font-weight:400; font-size:30px; margin-bottom:22px;
}
.woocommerce ul.products.perfecto-related-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; padding:0 !important; }

/* Hide Basel duplicate product elements inside our cards if parent injects extras */
.perfecto-product-card .product-wrapper,
.perfecto-product-card .product-element-top,
.perfecto-product-card .product-information { display:none !important; }

@media (max-width: 1024px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .woocommerce ul.products.perfecto-base44-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .perfecto-detail-grid { grid-template-columns: 1fr; }
  .woocommerce ul.products.perfecto-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 640px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .woocommerce ul.products.perfecto-base44-grid { grid-template-columns: 1fr !important; padding: 0 14px !important; }
  .perfecto-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .perfecto-single-product { padding-left:14px; padding-right:14px; }
}

.perfecto-live-total { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 0 14px; padding:14px; border-radius:16px; background:rgba(12,10,8,.42); border:1px solid rgba(217,151,57,.12); }
.perfecto-live-total span { color:#83796d; font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.perfecto-live-total strong { color:#f8b84d; font-size:28px; line-height:1; }


/* Base44 CigarDetail single product polish pulled from the React layout language:
   sticky dark topbar, square white media panel, amber metadata, stone panels,
   compact purchase controls, pairing chips, and concierge CTA. */
body.single-product .site-content,
body.single-product .main-page-wrapper {
  background: #0c0a09 !important;
}
body.single-product .perfecto-single-topbar {
  top: var(--perfecto-wp-admin-offset, 0);
  background: rgba(12,10,9,.82) !important;
  border-bottom-color: rgba(41,37,36,.55) !important;
}
body.admin-bar.single-product .perfecto-single-topbar { --perfecto-wp-admin-offset: 32px; }
body.single-product .perfecto-back-button:hover {
  background: rgba(146,64,14,.16) !important;
  border-color: rgba(180,83,9,.55) !important;
  color: #fcd34d !important;
}
body.single-product .perfecto-detail-info {
  color: #d6d3d1;
}
body.single-product .perfecto-detail-brand {
  color: #d97706 !important;
  font-size: 14px;
  margin-bottom: 8px;
}
body.single-product .perfecto-detail-title {
  color: #fef3c7 !important;
}
body.single-product .perfecto-origin,
body.single-product .perfecto-size-pill {
  background: rgba(41,37,36,.78) !important;
  border-color: rgba(120,113,108,.34) !important;
  color: #d6d3d1 !important;
}
body.single-product .perfecto-spec-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  background: rgba(28,25,23,.52) !important;
  border-color: rgba(120,53,15,.24) !important;
}
body.single-product .perfecto-spec-grid span { color: #78716c !important; }
body.single-product .perfecto-spec-grid strong { color: #fef3c7 !important; }
body.single-product .perfecto-copy-block {
  background: transparent !important;
  border: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.single-product .perfecto-copy-block h3,
body.single-product .perfecto-pairings-panel h3 {
  color: #fde68a !important;
  font-weight: 500 !important;
}
body.single-product .perfecto-copy-block p { color: #d6d3d1 !important; }
body.single-product .perfecto-pairings-panel {
  background: rgba(120,53,15,.12) !important;
  border-color: rgba(120,53,15,.28) !important;
  border-radius: 12px !important;
}
body.single-product .perfecto-detail-tags em {
  background: rgba(120,53,15,.34) !important;
  border-color: rgba(180,83,9,.34) !important;
  color: #fde68a !important;
}
body.single-product .perfecto-purchase-panel {
  background: transparent !important;
  border-width: 1px 0 0 !important;
  border-color: rgba(41,37,36,.85) !important;
  border-radius: 0 !important;
  padding: 16px 0 0 !important;
}
body.single-product .perfecto-purchase-panel .single_add_to_cart_button,
.woocommerce div.product .perfecto-purchase-panel form.cart .button {
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 6px !important;
  background: linear-gradient(90deg, #d97706, #b45309) !important;
}
body.single-product .perfecto-purchase-panel .single_add_to_cart_button:hover,
.woocommerce div.product .perfecto-purchase-panel form.cart .button:hover {
  background: linear-gradient(90deg, #b45309, #92400e) !important;
}
body.single-product .perfecto-concierge-card {
  background: linear-gradient(90deg, rgba(120,53,15,.34), rgba(28,25,23,.34)) !important;
  border-color: rgba(180,83,9,.32) !important;
  border-radius: 16px !important;
}
body.single-product .perfecto-concierge-card:hover { border-color: rgba(217,119,6,.55) !important; }

/* v2.3 — tighter Base44 CigarDetail alignment without disturbing the working WooCommerce structure. */
body.single-product {
  background: #0c0a09 !important;
}
body.single-product .content-layout-wrapper,
body.single-product .site-content,
body.single-product .main-page-wrapper,
body.single-product .container {
  background: #0c0a09 !important;
}
body.single-product .perfecto-single-product {
  max-width: 1280px !important;
  padding-top: 32px !important;
}
body.single-product .perfecto-single-topbar {
  margin-bottom: 32px !important;
  padding: 12px 4px !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.22) !important;
}
body.single-product .perfecto-back-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 40px !important;
  border-radius: 8px !important;
  color: #f59e0b !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
body.single-product .perfecto-single-actions span {
  width: 38px !important;
  height: 38px !important;
  background: transparent !important;
  border-color: transparent !important;
  color: #a8a29e !important;
}
body.single-product .perfecto-single-actions span:hover {
  color: #f59e0b !important;
  background: rgba(41,37,36,.68) !important;
  border-color: rgba(120,113,108,.18) !important;
}
body.single-product .perfecto-detail-grid {
  grid-template-columns: minmax(0, 1fr) minmax(390px, 1fr) !important;
  gap: clamp(32px, 5vw, 64px) !important;
}
body.single-product .perfecto-detail-gallery {
  position: sticky !important;
  top: 104px !important;
}
body.admin-bar.single-product .perfecto-detail-gallery {
  top: 136px !important;
}
body.single-product .perfecto-main-image-card {
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 30px 80px rgba(0,0,0,.36) !important;
}
body.single-product .perfecto-main-product-image {
  object-fit: cover !important;
  padding: 0 !important;
  transform: scale(1.01) !important;
}
body.single-product .perfecto-detail-rating {
  top: 16px !important;
  right: 16px !important;
  background: rgba(0,0,0,.72) !important;
  backdrop-filter: blur(10px) !important;
  padding: 6px 12px !important;
  font-size: 14px !important;
}
body.single-product .perfecto-detail-info {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
body.single-product .perfecto-detail-brand {
  color: #d97706 !important;
  letter-spacing: .13em !important;
  font-weight: 600 !important;
}
body.single-product .perfecto-detail-title {
  max-width: 680px !important;
  margin-bottom: 18px !important;
  font-size: clamp(32px, 3.7vw, 48px) !important;
  line-height: 1.08 !important;
  color: #fef3c7 !important;
}
body.single-product .perfecto-detail-meta-row {
  gap: 12px !important;
  margin-bottom: 24px !important;
}
body.single-product .perfecto-strength-pill,
body.single-product .perfecto-origin,
body.single-product .perfecto-size-pill {
  min-height: 28px !important;
  padding: 6px 12px !important;
  font-size: 14px !important;
  line-height: 1 !important;
}
body.single-product .perfecto-origin {
  background: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  color: #a8a29e !important;
}
body.single-product .perfecto-origin svg {
  color: #a8a29e !important;
}
body.single-product .perfecto-size-pill {
  background: rgba(41,37,36,.88) !important;
  border-color: rgba(41,37,36,.88) !important;
  color: #d6d3d1 !important;
}
body.single-product .perfecto-spec-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  padding: 16px !important;
  border-radius: 16px !important;
  background: rgba(28,25,23,.52) !important;
  border-color: rgba(120,53,15,.22) !important;
  margin-bottom: 24px !important;
}
body.single-product .perfecto-spec-grid div {
  min-height: 52px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
body.single-product .perfecto-spec-grid span {
  font-size: 11px !important;
  letter-spacing: .10em !important;
  color: #78716c !important;
}
body.single-product .perfecto-spec-grid strong {
  color: #fef3c7 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
body.single-product .perfecto-copy-block {
  margin-bottom: 24px !important;
}
body.single-product .perfecto-copy-block h3,
body.single-product .perfecto-pairings-panel h3 {
  margin-bottom: 8px !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  color: #fde68a !important;
}
body.single-product .perfecto-copy-block p,
body.single-product .perfecto-pairings-panel p {
  font-size: 16px !important;
  line-height: 1.72 !important;
  color: #d6d3d1 !important;
}
body.single-product .perfecto-pairings-panel {
  padding: 16px !important;
  margin-bottom: 24px !important;
  border-radius: 12px !important;
  background: rgba(120,53,15,.12) !important;
  border-color: rgba(120,53,15,.28) !important;
}
body.single-product .perfecto-detail-tags {
  gap: 8px !important;
  margin-bottom: 10px !important;
}
body.single-product .perfecto-detail-tags em {
  padding: 7px 12px !important;
  font-size: 14px !important;
  color: #fde68a !important;
  background: rgba(120,53,15,.30) !important;
  border-color: rgba(180,83,9,.30) !important;
}
body.single-product .perfecto-purchase-panel {
  padding-top: 18px !important;
  margin-bottom: 22px !important;
  border-top: 1px solid rgba(41,37,36,.9) !important;
}
body.single-product .perfecto-price-row {
  margin-bottom: 14px !important;
}
body.single-product .perfecto-price-row span {
  color: #78716c !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: 14px !important;
}
body.single-product .perfecto-price-row .price,
body.single-product .perfecto-price-row .amount,
body.single-product .perfecto-price-row bdi,
body.single-product .perfecto-price-row strong,
body.single-product .perfecto-live-total strong {
  color: #fbbf24 !important;
  font-size: 30px !important;
  font-weight: 800 !important;
}
body.single-product .perfecto-purchase-panel form.cart {
  display: grid !important;
  grid-template-columns: minmax(160px, 1fr) auto minmax(220px, 1fr) !important;
  gap: 14px !important;
  align-items: end !important;
  margin-top: 0 !important;
}
body.single-product .perfecto-live-total {
  order: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  display: block !important;
}
body.single-product .perfecto-live-total span {
  display: block !important;
  color: #78716c !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin-bottom: 2px !important;
}
body.single-product .perfecto-purchase-panel .quantity {
  order: 2 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
}
body.single-product .perfecto-purchase-panel .quantity input.qty {
  width: 72px !important;
  height: 40px !important;
  border-radius: 8px !important;
  text-align: center !important;
  background: rgba(41,37,36,.9) !important;
  border-color: rgba(68,64,60,.9) !important;
  color: #fef3c7 !important;
}
body.single-product .perfecto-purchase-panel .single_add_to_cart_button,
.woocommerce div.product .perfecto-purchase-panel form.cart .button {
  order: 3 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
body.single-product .perfecto-concierge-card {
  padding: 16px !important;
  border-radius: 16px !important;
}
body.single-product .perfecto-concierge-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  font-size: 24px !important;
}
body.single-product .perfecto-detail-tabs {
  margin-top: 56px !important;
  border-radius: 16px !important;
  background: rgba(28,25,23,.42) !important;
  border-color: rgba(120,53,15,.18) !important;
}
body.single-product .perfecto-related-section {
  margin-top: 64px !important;
}
body.single-product .perfecto-related-section h2 {
  color: #fef3c7 !important;
  font-size: 28px !important;
}
@media (max-width: 1024px) {
  body.single-product .perfecto-detail-gallery {
    position: static !important;
  }
  body.single-product .perfecto-detail-grid {
    grid-template-columns: 1fr !important;
  }
  body.single-product .perfecto-purchase-panel form.cart {
    grid-template-columns: 1fr !important;
  }
  body.single-product .perfecto-purchase-panel .quantity,
  body.single-product .perfecto-purchase-panel .single_add_to_cart_button,
  .woocommerce div.product .perfecto-purchase-panel form.cart .button {
    width: 100% !important;
  }
}
@media (max-width: 640px) {
  body.single-product .perfecto-spec-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.single-product .perfecto-main-image-card {
    border-radius: 18px !important;
  }
}

/* v2.4 CIGAR-ONLY SPEC FEATURE UPDATE
   Adds the Base44-style cigar technical details without changing accessory product cards/pages. */
body.single-product .perfecto-single-product.product_cat-cigar .perfecto-spec-grid,
body.single-product .perfecto-single-product.product_cat-cigars .perfecto-spec-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
body.single-product .perfecto-single-product.product_cat-cigar .perfecto-spec-item,
body.single-product .perfecto-single-product.product_cat-cigars .perfecto-spec-item {
  border: 1px solid rgba(217,151,57,.14) !important;
  background: linear-gradient(180deg, rgba(41,37,36,.58), rgba(20,16,13,.72)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
}
body.single-product .perfecto-single-product.product_cat-cigar .perfecto-spec-item strong,
body.single-product .perfecto-single-product.product_cat-cigars .perfecto-spec-item strong {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
@media (max-width: 900px) {
  body.single-product .perfecto-single-product.product_cat-cigar .perfecto-spec-grid,
  body.single-product .perfecto-single-product.product_cat-cigars .perfecto-spec-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 420px) {
  body.single-product .perfecto-single-product.product_cat-cigar .perfecto-spec-grid,
  body.single-product .perfecto-single-product.product_cat-cigars .perfecto-spec-grid {
    grid-template-columns: 1fr !important;
  }
}

/* v2.5 SINGLE PRODUCT ONLY — closer Base44 CigarDetail match.
   Scoped to the custom cigar single template so the working shop/archive/accessory styles remain unchanged. */
body.single-product .perfecto-cigar-detail-v25 {
  max-width: 1140px !important;
  padding: 28px 24px 96px !important;
  color: #d6d3d1 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-single-topbar,
body.single-product .perfecto-cigar-detail-v25 .perfecto-detail-tabs { display: none !important; }
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-detail-grid {
  display: grid !important;
  grid-template-columns: minmax(420px, 520px) minmax(420px, 1fr) !important;
  gap: 48px !important;
  align-items: start !important;
  margin: 0 auto 86px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-gallery {
  position: sticky !important;
  top: 96px !important;
}
body.admin-bar.single-product .perfecto-cigar-detail-v25 .perfecto-base44-gallery { top: 128px !important; }
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-image-card {
  aspect-ratio: 1 / 1 !important;
  background: #fff !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  border: 0 !important;
  overflow: hidden !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-main-product-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 0 !important;
  transform: none !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-detail-brand {
  font-size: 11px !important;
  letter-spacing: .14em !important;
  color: #b45309 !important;
  margin: 0 0 4px !important;
  font-weight: 700 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-detail-title {
  font-size: clamp(30px, 3vw, 42px) !important;
  line-height: 1.05 !important;
  margin: 0 0 18px !important;
  color: #fef3c7 !important;
  max-width: 620px !important;
  letter-spacing: -.02em !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-detail-meta-row {
  margin: 0 0 24px !important;
  gap: 12px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-origin {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  color: #a8a29e !important;
  font-size: 15px !important;
  min-height: 28px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-origin svg { color: #a8a29e !important; }
body.single-product .perfecto-cigar-detail-v25 .perfecto-strength-pill {
  min-height: 30px !important;
  padding: 7px 13px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-size-pill {
  min-height: 30px !important;
  padding: 7px 13px !important;
  background: #292524 !important;
  border: 0 !important;
  color: #d6d3d1 !important;
  border-radius: 999px !important;
  font-size: 13px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-spec-grid,
body.single-product .perfecto-cigar-detail-v25.product_cat-cigar .perfecto-base44-spec-grid,
body.single-product .perfecto-cigar-detail-v25.product_cat-cigars .perfecto-base44-spec-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 16px 18px !important;
  border-radius: 14px !important;
  background: rgba(28, 25, 23, .54) !important;
  border: 1px solid rgba(120, 53, 15, .28) !important;
  margin: 0 0 25px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-spec-grid .perfecto-spec-item,
body.single-product .perfecto-cigar-detail-v25.product_cat-cigar .perfecto-spec-item,
body.single-product .perfecto-cigar-detail-v25.product_cat-cigars .perfecto-spec-item {
  min-height: 53px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 8px !important;
  text-align: center !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-spec-grid span {
  color: #78716c !important;
  font-size: 10px !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin-bottom: 7px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-spec-grid strong {
  color: #fef3c7 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-hidden-cigar-meta {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-copy-block {
  padding: 0 !important;
  margin: 0 0 24px !important;
  border: 0 !important;
  background: transparent !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-copy-block h3 {
  color: #fde68a !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  margin: 0 0 10px !important;
  font-weight: 700 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-copy-block p {
  color: #e7e5e4 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-pairing-panel {
  padding: 20px 22px 18px !important;
  margin: 0 0 24px !important;
  border-radius: 14px !important;
  background:
    radial-gradient(circle at top left, rgba(120, 53, 15, .25), transparent 42%),
    linear-gradient(135deg, rgba(67, 20, 7, .32), rgba(28, 25, 23, .62)) !important;
  border: 1px solid rgba(120, 53, 15, .42) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-pairing-panel > h3 {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  color: #f5d089 !important;
  font-size: 14px !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin: 0 0 16px !important;
  font-weight: 800 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-feature {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-icon {
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  background: rgba(120, 53, 15, .55) !important;
  color: #fef3c7 !important;
  font-size: 22px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-feature h4 {
  color: #fef3c7 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  margin: 0 0 7px !important;
  font-weight: 400 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-feature p {
  color: #c8c3bd !important;
  font-size: 15px !important;
  line-height: 1.66 !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-more {
  border-top: 1px solid rgba(120, 53, 15, .28) !important;
  margin-top: 18px !important;
  padding-top: 14px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-more > span {
  display: block !important;
  color: #78716c !important;
  font-size: 10px !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
  font-weight: 800 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pairing-more em {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #fef3c7 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-best-enjoyed {
  border-top: 1px solid rgba(120, 53, 15, .22) !important;
  margin-top: 14px !important;
  padding-top: 12px !important;
  color: #a8a29e !important;
  font-size: 12px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-best-enjoyed strong { color: #d97706 !important; font-weight: 600 !important; }
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-purchase-panel {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid rgba(41, 37, 36, .98) !important;
  border-radius: 0 !important;
  padding: 18px 0 0 !important;
  margin: 0 0 8px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector button {
  appearance: none !important;
  border-radius: 10px !important;
  border: 1px solid rgba(68, 64, 60, .88) !important;
  background: rgba(28, 25, 23, .7) !important;
  color: #d6d3d1 !important;
  min-height: 74px !important;
  padding: 12px !important;
  cursor: pointer !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector button.is-active {
  background: rgba(67, 20, 7, .78) !important;
  border-color: rgba(217, 119, 6, .78) !important;
  color: #fef3c7 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector span {
  display: block !important;
  color: inherit !important;
  font-weight: 700 !important;
  font-size: 16px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector strong,
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector .amount,
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector bdi {
  display: block !important;
  color: #fef3c7 !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-price-row { display: none !important; }
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 12px !important;
  align-items: end !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-live-total {
  grid-column: 1 / 2 !important;
  grid-row: 2 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-live-total span {
  color: #78716c !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin-bottom: 2px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-live-total strong {
  color: #d6a351 !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .quantity {
  grid-column: 2 / 3 !important;
  grid-row: 1 !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .quantity:before {
  content: 'Quantity' !important;
  color: #d6d3d1 !important;
  font-size: 14px !important;
  margin-right: 180px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .quantity input.qty {
  width: 74px !important;
  height: 40px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #292524 !important;
  color: #fef3c7 !important;
  text-align: center !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .single_add_to_cart_button,
.woocommerce div.product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .button {
  grid-column: 2 / 3 !important;
  grid-row: 2 !important;
  width: 300px !important;
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 6px !important;
  background: #a57b43 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 24px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-concierge {
  margin-top: 8px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(180, 83, 9, .38) !important;
  background: linear-gradient(90deg, rgba(120, 53, 15, .34), rgba(28, 25, 23, .38)) !important;
  padding: 13px 16px !important;
  text-decoration: none !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-concierge-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  background: #a57b43 !important;
  font-size: 24px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-concierge-card strong {
  color: #fef3c7 !important;
  font-size: 16px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-concierge-card small {
  color: #a8a29e !important;
  font-size: 13px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-related-section {
  max-width: 1060px !important;
  margin: 0 auto 86px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-related-section h2,
body.single-product .perfecto-cigar-detail-v25 .perfecto-same-region-section h2 {
  color: #fef3c7 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
  text-align: center !important;
  margin: 0 0 28px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-same-region-section h2 {
  text-align: left !important;
  font-size: 24px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-related-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  max-width: none !important;
  padding: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-same-region-section {
  max-width: 1060px !important;
  margin: 0 auto !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-card {
  background: #11100f !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-card a {
  display: block !important;
  color: inherit !important;
  text-decoration: none !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-image {
  display: block !important;
  aspect-ratio: 1 / 1 !important;
  background: #fff !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 16px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-brand {
  display: block !important;
  color: #a16207 !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  font-weight: 800 !important;
  padding: 12px 12px 3px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-card strong {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  color: #fef3c7 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
  padding: 0 12px 4px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-card em,
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-card .amount,
body.single-product .perfecto-cigar-detail-v25 .perfecto-region-card bdi {
  display: block !important;
  color: #fbbf24 !important;
  font-style: normal !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  padding: 0 12px 12px !important;
}
@media (max-width: 1100px) {
  body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-detail-grid {
    grid-template-columns: 1fr !important;
    max-width: 760px !important;
  }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-gallery { position: static !important; }
}
@media (max-width: 900px) {
  body.single-product .perfecto-cigar-detail-v25 .perfecto-related-grid,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-region-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 640px) {
  body.single-product .perfecto-cigar-detail-v25 { padding-left: 16px !important; padding-right: 16px !important; }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-base44-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart { grid-template-columns: 1fr !important; }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-live-total,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .quantity,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .single_add_to_cart_button,
  .woocommerce div.product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .button {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
  }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel .quantity:before { margin-right: auto !important; }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-related-grid,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-region-grid { grid-template-columns: 1fr !important; }
}


/* V2.8 product-level visual settings from the WooCommerce Perfecto Visual tab. */
body.single-product .perfecto-cigar-detail-v25 {
  font-family: var(--perfecto-product-font, inherit) !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-detail-title {
  font-family: var(--perfecto-product-font, inherit) !important;
  font-size: var(--perfecto-product-title-size, inherit) !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-strength-pill {
  background: var(--perfecto-body-pill-bg, var(--perfecto-strength-color, #f97316)) !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pill-symbol {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:13px;
  height:13px;
  font-size:12px;
  line-height:1;
  margin-right:2px;
}

/* V3.0 targeted refinements: editor fields, product-card price removal, pack dropdown only. */
.perfecto-product-card .perfecto-card-footer {
  justify-content: flex-end;
}
.perfecto-product-card .perfecto-card-price {
  display: none !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector-v30 select.perfecto-pack-dropdown {
  width: 100%;
  max-width: 118px;
  border: 0;
  outline: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 800;
  text-align: center;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  padding: 0 16px 0 0;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position: calc(100% - 9px) 50%, calc(100% - 4px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector-v30 select.perfecto-pack-dropdown option {
  color: #160e0a;
  background: #fff;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-dropdown-choice strong::after {
  content: attr(data-pack-total);
  display: block;
  margin-top: 5px;
  font-size: 15px;
  color: #d7b06a;
}

/* v3.1 requested-only refinements */
.perfecto-main-image-card,
.perfecto-card-media,
.perfecto-thumb,
.perfecto-region-image,
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce ul.products li.product a img {
  background: #fff !important;
}
.perfecto-main-image-card img,
.perfecto-card-media img,
.perfecto-region-image img,
.woocommerce div.product div.images img,
.woocommerce ul.products li.product a img {
  background-color: #fff !important;
}
.perfecto-image-description {
  margin-top: 20px;
  padding: 18px 2px 0;
  text-align: left;
  color: #d6d3d1;
}
.perfecto-image-description h3 {
  margin: 0 0 10px;
  color: #fde68a;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 20px;
  font-weight: 400;
}
.perfecto-image-description p {
  margin: 0 0 12px;
  color: #c9bba8;
  line-height: 1.7;
}
.perfecto-pack-selector-v31 .perfecto-pack-choice {
  cursor: pointer;
}
.perfecto-pack-selector-v31 .perfecto-pack-choice:not(.is-active) {
  opacity: .72;
}
.perfecto-pack-selector-v31 .perfecto-pack-dropdown {
  width: 100%;
  max-width: 145px;
  background: transparent !important;
  border: 0 !important;
  color: #fef3c7 !important;
  font-weight: 800;
  text-align: center;
  padding: 0 !important;
  margin: 0 auto !important;
  outline: none !important;
}
.perfecto-pack-selector-v31 .perfecto-pack-dropdown option {
  background: #1c1917;
  color: #fef3c7;
}
.perfecto-accessory-filter-bar {
  max-width: 1280px;
  margin: 0 auto 24px;
  padding: 0 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.perfecto-accessory-filter-bar a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 8px 15px;
  border-radius: 999px;
  border: 1px solid rgba(217,151,57,.22);
  background: rgba(28,25,21,.62);
  color: #f1d5a5 !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 700;
}
.perfecto-accessory-filter-bar a:hover,
.perfecto-accessory-filter-bar a.is-active {
  background: rgba(217,151,57,.18);
  border-color: rgba(217,151,57,.48);
  color: #fff1c8 !important;
}
.perfecto-is-accessory .perfecto-detail-meta-row .perfecto-size-pill {
  display: inline-flex;
}
.perfecto-product-card .price,
.perfecto-product-card .amount,
.perfecto-product-card bdi {
  display: none !important;
}

/* V3.2 targeted fixes only: 4-column loop, WP Dashicons pairing icons, accessory price/detail behavior. */
.products.perfecto-base44-grid.columns-4,
ul.products.perfecto-base44-grid.columns-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.perfecto-card-media,
.perfecto-main-image-card,
.perfecto-thumb {
  background: #fff !important;
}

.perfecto-card-media img,
.perfecto-main-image-card img,
.perfecto-thumb img {
  background: #fff !important;
}

.perfecto-pairing-dashicon {
  width: 1em;
  height: 1em;
  font-size: 1em;
  line-height: 1;
  vertical-align: -0.1em;
  margin-right: 4px;
}

.perfecto-accessory-card-price {
  margin-top: 14px;
  color: #f7d79b;
  font-weight: 800;
  font-size: 16px;
}

body.single-product .perfecto-accessory-simple-detail {
  display: grid;
  gap: 18px;
}

body.single-product .perfecto-accessory-full-description {
  color: #d8c8b3;
  line-height: 1.75;
}

body.single-product .perfecto-accessory-price {
  color: #f7d79b;
  font-weight: 900;
  font-size: 28px;
}

@media (max-width: 1024px) {
  .products.perfecto-base44-grid.columns-4,
  ul.products.perfecto-base44-grid.columns-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .products.perfecto-base44-grid.columns-4,
  ul.products.perfecto-base44-grid.columns-4 {
    grid-template-columns: 1fr !important;
  }
}

/* V3.3 targeted archive fixes only: load-more compatibility, full-bleed heroes, Base44 category tiles. */
body.woocommerce .site-content,
body.post-type-archive-product .site-content,
body.tax-product_cat .site-content {
  overflow-x: clip;
}

.perfecto-shop-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 0 !important;
  margin-bottom: 48px !important;
  padding: 0 !important;
  min-height: 320px;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  border-radius: 0 !important;
}

.perfecto-category-hero {
  min-height: 320px;
}

.perfecto-shop-hero__inner {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.perfecto-category-tile-section {
  max-width: 1280px;
  margin: 0 auto 42px;
  padding: 0 20px;
}

.perfecto-category-tile-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

.perfecto-category-tile {
  position: relative;
  min-height: 256px;
  border-radius: 22px;
  overflow: hidden;
  background: #17120e;
  border: 1px solid rgba(217,151,57,.20);
  display: grid;
  place-items: center;
  text-align: center;
  text-decoration: none !important;
  transform: translateZ(0);
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}

.perfecto-category-tile:hover {
  transform: translateY(-5px) scale(1.02);
  border-color: rgba(217,151,57,.42);
  box-shadow: 0 24px 58px rgba(0,0,0,.36);
}

.perfecto-category-tile__bg,
.perfecto-category-tile__shade {
  position: absolute;
  inset: 0;
}

.perfecto-category-tile__bg {
  background-image: var(--perfecto-cat-image);
  background-size: cover;
  background-position: center;
  opacity: .42;
  transition: opacity .35s ease, transform .35s ease;
}

.perfecto-category-tile:hover .perfecto-category-tile__bg {
  opacity: .62;
  transform: scale(1.06);
}

.perfecto-category-tile__shade {
  background: linear-gradient(0deg, rgba(7,6,5,.95), rgba(7,6,5,.76) 52%, rgba(7,6,5,.28));
}

.perfecto-category-tile strong {
  position: relative;
  z-index: 2;
  max-width: 88%;
  color: #fee4ae;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 22px;
  line-height: 1.15;
  font-weight: 400;
  text-shadow: 0 3px 16px rgba(0,0,0,.6);
}

.perfecto-loadmore-loading {
  pointer-events: none;
  opacity: .65;
}

.perfecto-loadmore-loading:after {
  content: '';
  width: 15px;
  height: 15px;
  border-radius: 999px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  display: inline-block;
  margin-left: 10px;
  vertical-align: -2px;
  animation: perfectoSpin .65s linear infinite;
}

@keyframes perfectoSpin { to { transform: rotate(360deg); } }

@media (max-width: 1024px) {
  .perfecto-category-tile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .perfecto-shop-hero,
  .perfecto-category-hero { min-height: 270px; }
  .perfecto-category-tile-section { padding: 0 14px; }
  .perfecto-category-tile-grid { grid-template-columns: 1fr; gap: 16px; }
  .perfecto-category-tile { min-height: 220px; }
}


/* V3.4 targeted-only fixes: cigar category layout, nav hover, product badge removal, and simplified cigar purchase fields. */
.perfecto-featured-badge { display: none !important; }

body.tax-product_cat.term-cigars .perfecto-category-tile-section,
body.tax-product_cat .perfecto-cigar-category-style {
  max-width: 1280px !important;
  margin-top: -10px !important;
  margin-bottom: 44px !important;
}

body.tax-product_cat.term-cigars .perfecto-category-tile-grid,
body.tax-product_cat .perfecto-cigar-category-style .perfecto-category-tile-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.tax-product_cat.term-cigars ul.products.perfecto-base44-grid,
body.tax-product_cat.term-cigars ul.products,
body.tax-product_cat ul.products.perfecto-base44-grid.columns-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

/* Give the main navigation the same refined lift/glow interaction as product cards. */
.main-nav .menu > li > a,
.whb-navigation .menu > li > a,
.site-navigation .menu > li > a,
.basel-navigation .menu > li > a {
  border-radius: 999px !important;
  transition: transform .28s ease, color .28s ease, background-color .28s ease, box-shadow .28s ease !important;
}
.main-nav .menu > li:hover > a,
.whb-navigation .menu > li:hover > a,
.site-navigation .menu > li:hover > a,
.basel-navigation .menu > li:hover > a {
  transform: translateY(-2px) !important;
  color: #f6c66d !important;
  background: rgba(217,151,57,.09) !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.22), inset 0 0 0 1px rgba(217,151,57,.18) !important;
}

body.single-product .perfecto-cigar-detail-v25 .perfecto-spec-size,
body.single-product .perfecto-cigar-detail-v25 .perfecto-spec-flavor,
body.single-product .perfecto-cigar-detail-v25 .perfecto-size-pill,
body.single-product .perfecto-cigar-detail-v25 .perfecto-pack-selector {
  display: none !important;
}

body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-no-pack form.cart {
  margin-top: 0 !important;
}

@media (max-width: 1024px) {
  body.tax-product_cat.term-cigars .perfecto-category-tile-grid,
  body.tax-product_cat .perfecto-cigar-category-style .perfecto-category-tile-grid,
  body.tax-product_cat.term-cigars ul.products.perfecto-base44-grid,
  body.tax-product_cat.term-cigars ul.products,
  body.tax-product_cat ul.products.perfecto-base44-grid.columns-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  body.tax-product_cat.term-cigars .perfecto-category-tile-grid,
  body.tax-product_cat .perfecto-cigar-category-style .perfecto-category-tile-grid,
  body.tax-product_cat.term-cigars ul.products.perfecto-base44-grid,
  body.tax-product_cat.term-cigars ul.products,
  body.tax-product_cat ul.products.perfecto-base44-grid.columns-4 {
    grid-template-columns: 1fr !important;
  }
}


/* V3.5 targeted-only requests: single-product cleanup, cart row order, subtle nav hover, category blocks only, max 3 columns, sub-category hero text clamp, reactive product gallery. */
body.single-product .perfecto-cigar-detail-v25 .perfecto-same-region-section {
  display: none !important;
}

/* Purchase form layout: row 1 options, row 2 quantity + price, row 3 add to cart. */
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart {
  display: grid !important;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: stretch !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart table.variations,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-pack-selector,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-pack-selector-v30,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-pack-selector-v31,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-box-picker,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .variations {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .quantity {
  grid-column: 1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-live-total,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .single_variation,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .woocommerce-variation-price {
  grid-column: 2 !important;
  grid-row: 2 !important;
  width: 100% !important;
  margin: 0 !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .single_variation_wrap {
  display: contents !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .woocommerce-variation-add-to-cart {
  display: contents !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .single_add_to_cart_button,
.woocommerce div.product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .button.single_add_to_cart_button {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Subtle navigation: remove heavier card-like hover and replace with a soft underline highlight. */
.main-nav .menu > li > a,
.whb-navigation .menu > li > a,
.site-navigation .menu > li > a,
.basel-navigation .menu > li > a {
  position: relative !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  transition: color .24s ease, text-shadow .24s ease !important;
}
.main-nav .menu > li > a::after,
.whb-navigation .menu > li > a::after,
.site-navigation .menu > li > a::after,
.basel-navigation .menu > li > a::after {
  content: "";
  position: absolute;
  left: 18%;
  right: 18%;
  bottom: 8px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(246,198,109,.9), transparent);
  opacity: 0;
  transform: scaleX(.35);
  transition: opacity .24s ease, transform .24s ease;
  pointer-events: none;
}
.main-nav .menu > li:hover > a,
.whb-navigation .menu > li:hover > a,
.site-navigation .menu > li:hover > a,
.basel-navigation .menu > li:hover > a {
  transform: none !important;
  color: #f6c66d !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: 0 0 14px rgba(217,151,57,.28) !important;
}
.main-nav .menu > li:hover > a::after,
.whb-navigation .menu > li:hover > a::after,
.site-navigation .menu > li:hover > a::after,
.basel-navigation .menu > li:hover > a::after {
  opacity: 1;
  transform: scaleX(1);
}

/* Category/sub-category archive pages: category blocks only, max 3 columns. */
body.tax-product_cat ul.products,
body.tax-product_cat .products-footer,
body.tax-product_cat .woocommerce-pagination,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_cat .woocommerce-ordering,
body.tax-product_cat .basel-products-per-page,
body.tax-product_cat .basel-products-shop-view,
body.tax-product_cat .basel-products-load-more {
  display: none !important;
}
body.tax-product_cat .perfecto-category-tile-grid,
body.tax-product_cat.term-cigars .perfecto-category-tile-grid,
body.tax-product_cat .perfecto-cigar-category-style .perfecto-category-tile-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.tax-product_cat .perfecto-category-tile-section,
body.tax-product_cat.term-cigars .perfecto-category-tile-section,
body.tax-product_cat .perfecto-cigar-category-style {
  max-width: 1180px !important;
}
body.tax-product_cat .perfecto-shop-hero p:last-child {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  max-width: 720px !important;
}

/* Reactive gallery behavior on single product page. */
body.single-product .perfecto-main-image-card {
  cursor: zoom-in;
}
body.single-product .perfecto-main-product-image {
  transition: transform .42s ease, filter .42s ease !important;
  transform-origin: center center !important;
}
body.single-product .perfecto-main-image-card:hover .perfecto-main-product-image {
  transform: scale(1.08) !important;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.16));
}
body.single-product .perfecto-thumb {
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease, opacity .24s ease !important;
}
body.single-product .perfecto-thumb:hover,
body.single-product .perfecto-thumb.is-active {
  transform: translateY(-4px) scale(1.04) !important;
  border-color: rgba(217,151,57,.62) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.22), 0 0 0 1px rgba(217,151,57,.22) inset !important;
  opacity: 1 !important;
}

@media (max-width: 1024px) {
  body.tax-product_cat .perfecto-category-tile-grid,
  body.tax-product_cat.term-cigars .perfecto-category-tile-grid,
  body.tax-product_cat .perfecto-cigar-category-style .perfecto-category-tile-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  body.tax-product_cat .perfecto-category-tile-grid,
  body.tax-product_cat.term-cigars .perfecto-category-tile-grid,
  body.tax-product_cat .perfecto-cigar-category-style .perfecto-category-tile-grid {
    grid-template-columns: 1fr !important;
  }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart {
    grid-template-columns: 1fr !important;
  }
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .quantity,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-live-total,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .single_variation,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .woocommerce-variation-price,
  body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .single_add_to_cart_button {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}


/* V3.6 targeted-only requests: sub-category product loops restored, tighter nav underline, footer price beside cart. */
body.tax-product_cat:not(.perfecto-has-category-blocks) ul.products,
body.tax-product_cat:not(.perfecto-has-category-blocks) .products-footer,
body.tax-product_cat:not(.perfecto-has-category-blocks) .woocommerce-pagination,
body.tax-product_cat:not(.perfecto-has-category-blocks) .woocommerce-result-count,
body.tax-product_cat:not(.perfecto-has-category-blocks) .woocommerce-ordering,
body.tax-product_cat:not(.perfecto-has-category-blocks) .basel-products-per-page,
body.tax-product_cat:not(.perfecto-has-category-blocks) .basel-products-shop-view,
body.tax-product_cat:not(.perfecto-has-category-blocks) .basel-products-load-more {
  display: revert !important;
}
body.tax-product_cat:not(.perfecto-has-category-blocks) .perfecto-category-tile-section,
body.tax-product_cat:not(.perfecto-has-category-blocks) .perfecto-cigar-category-style {
  display: none !important;
}
body.perfecto-has-category-blocks ul.products,
body.perfecto-has-category-blocks .products-footer,
body.perfecto-has-category-blocks .woocommerce-pagination,
body.perfecto-has-category-blocks .woocommerce-result-count,
body.perfecto-has-category-blocks .woocommerce-ordering,
body.perfecto-has-category-blocks .basel-products-per-page,
body.perfecto-has-category-blocks .basel-products-shop-view,
body.perfecto-has-category-blocks .basel-products-load-more {
  display: none !important;
}
.main-nav .menu > li > a::after,
.whb-navigation .menu > li > a::after,
.site-navigation .menu > li > a::after,
.basel-navigation .menu > li > a::after {
  bottom: 3px !important;
  left: 24% !important;
  right: 24% !important;
  height: 1px !important;
}
.perfecto-product-card .perfecto-card-footer {
  align-items: center !important;
}
.perfecto-footer-price,
.perfecto-footer-price .price,
.perfecto-footer-price .amount,
.perfecto-footer-price bdi {
  font-family: Georgia, 'Times New Roman', serif !important;
  color: #fee4ae !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
  font-weight: 400 !important;
}
.perfecto-product-card:hover .perfecto-footer-price,
.perfecto-product-card:hover .perfecto-footer-price .amount,
.perfecto-product-card:hover .perfecto-footer-price bdi {
  color: #ffc96b !important;
}


/* V3.7 verified targeted patch only:
   1) sub-category archives show product loops and never category blocks;
   2) nav underline sits closer to menu text;
   3) footer price shows beside cart and matches card title sizing. */
body.perfecto-is-subcategory .perfecto-category-tile-section,
body.perfecto-is-subcategory .perfecto-cigar-category-style {
  display: none !important;
}
body.perfecto-is-subcategory ul.products,
body.perfecto-is-subcategory ul.products.perfecto-base44-grid,
body.perfecto-is-subcategory .products.perfecto-base44-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body.perfecto-is-subcategory .products-footer,
body.perfecto-is-subcategory .woocommerce-pagination,
body.perfecto-is-subcategory .woocommerce-result-count,
body.perfecto-is-subcategory .woocommerce-ordering,
body.perfecto-is-subcategory .basel-products-per-page,
body.perfecto-is-subcategory .basel-products-shop-view,
body.perfecto-is-subcategory .basel-products-load-more {
  display: block !important;
}
body.perfecto-is-parent-category .perfecto-category-tile-grid,
body.perfecto-has-category-blocks .perfecto-category-tile-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.perfecto-is-parent-category ul.products,
body.perfecto-has-category-blocks ul.products,
body.perfecto-is-parent-category .products-footer,
body.perfecto-has-category-blocks .products-footer,
body.perfecto-is-parent-category .woocommerce-pagination,
body.perfecto-has-category-blocks .woocommerce-pagination,
body.perfecto-is-parent-category .woocommerce-result-count,
body.perfecto-has-category-blocks .woocommerce-result-count,
body.perfecto-is-parent-category .woocommerce-ordering,
body.perfecto-has-category-blocks .woocommerce-ordering,
body.perfecto-is-parent-category .basel-products-per-page,
body.perfecto-has-category-blocks .basel-products-per-page,
body.perfecto-is-parent-category .basel-products-shop-view,
body.perfecto-has-category-blocks .basel-products-shop-view,
body.perfecto-is-parent-category .basel-products-load-more,
body.perfecto-has-category-blocks .basel-products-load-more {
  display: none !important;
}
.main-nav .menu > li > a::after,
.whb-navigation .menu > li > a::after,
.site-navigation .menu > li > a::after,
.basel-navigation .menu > li > a::after {
  top: calc(50% + 12px) !important;
  bottom: auto !important;
  left: 20% !important;
  right: 20% !important;
  height: 1px !important;
}
.perfecto-product-card .perfecto-card-footer {
  justify-content: space-between !important;
  align-items: center !important;
  gap: 14px !important;
}
.perfecto-product-card .perfecto-footer-price {
  display: inline-flex !important;
  align-items: center !important;
  margin-right: auto !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  color: #fee4ae !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
  font-weight: 400 !important;
}
.perfecto-product-card .perfecto-footer-price .price,
.perfecto-product-card .perfecto-footer-price .amount,
.perfecto-product-card .perfecto-footer-price bdi {
  display: inline !important;
  font-family: inherit !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
}
.perfecto-product-card .perfecto-cart-icon-button {
  flex: 0 0 auto !important;
}
@media (max-width: 1024px) {
  body.perfecto-is-subcategory ul.products,
  body.perfecto-is-subcategory ul.products.perfecto-base44-grid,
  body.perfecto-is-subcategory .products.perfecto-base44-grid,
  body.perfecto-is-parent-category .perfecto-category-tile-grid,
  body.perfecto-has-category-blocks .perfecto-category-tile-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  body.perfecto-is-subcategory ul.products,
  body.perfecto-is-subcategory ul.products.perfecto-base44-grid,
  body.perfecto-is-subcategory .products.perfecto-base44-grid,
  body.perfecto-is-parent-category .perfecto-category-tile-grid,
  body.perfecto-has-category-blocks .perfecto-category-tile-grid {
    grid-template-columns: 1fr !important;
  }
}


/* V3.8 targeted patch: remove the product grid from parent product-category pages only.
   Sub-category pages keep their product listings. */
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) ul.products.perfecto-base44-grid,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .products.perfecto-base44-grid,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .woocommerce-pagination,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .basel-products-load-more,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .products-footer,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .woocommerce-result-count,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .woocommerce-ordering,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .basel-products-per-page,
body.tax-product_cat.perfecto-hide-category-product-loop:not(.perfecto-is-subcategory) .basel-products-shop-view {
  display: none !important;
}


/* V4.1 targeted-only patch: requested category, purchase-option, and sold-out fixes. */
body.tax-product_cat .perfecto-shop-hero { border-bottom: 0 !important; }
body.tax-product_cat .perfecto-category-tile__shade { background: transparent !important; }
body.tax-product_cat .perfecto-cigar-category-style { margin-top: 60px !important; background: transparent !important; }
body.tax-product_cat.perfecto-hide-category-product-loop ul.products.perfecto-base44-grid,
body.tax-product_cat.perfecto-hide-category-product-loop ul.products.products,
body.tax-product_cat.perfecto-hide-category-product-loop .products.perfecto-base44-grid.columns-4 { display: none !important; }

.perfecto-card-sold-out,
.perfecto-sold-out-label {
  position:absolute;
  top:14px;
  left:14px;
  z-index:4;
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(20,8,4,.88);
  color:#f7e4c4;
  border:1px solid rgba(247,228,196,.28);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:800;
}
.perfecto-sold-out-label { position:relative; top:auto; left:auto; margin-bottom:8px; }

body.single-product .perfecto-purchase-options {
  grid-column: 1 / -1;
  display:block;
  margin: 0 0 14px;
}
body.single-product .perfecto-purchase-options__label {
  display:block;
  margin-bottom:8px;
  font-weight:800;
  color:#f3e4cc;
  letter-spacing:.03em;
}
body.single-product .perfecto-purchase-options__choices {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
body.single-product .perfecto-purchase-option {
  position:relative;
  cursor:pointer;
  border:1px solid rgba(190,145,83,.28);
  border-radius:16px;
  padding:12px 14px;
  background:rgba(255,255,255,.035);
  color:#f2e5d1;
  transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
body.single-product .perfecto-purchase-option:hover,
body.single-product .perfecto-purchase-option.is-active {
  transform:translateY(-1px);
  border-color:rgba(214,167,97,.75);
  background:rgba(214,167,97,.10);
}
body.single-product .perfecto-purchase-option input { position:absolute; opacity:0; pointer-events:none; }
body.single-product .perfecto-purchase-option span { display:flex; align-items:center; justify-content:space-between; gap:10px; }
body.single-product .perfecto-purchase-option strong { font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
body.single-product .perfecto-purchase-option em { font-style:normal; color:#d7ad70; font-weight:800; }
body.single-product .perfecto-purchase-option small {
  position:absolute; right:10px; top:8px; width:18px; height:18px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.08); color:#e6cfaa;
}
body.single-product .perfecto-selected-options {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:10px;
  padding:9px 11px;
  border-radius:12px;
  background:rgba(0,0,0,.22);
  color:#c9b99e;
}
body.single-product .perfecto-selected-options strong { color:#f4dfbd; }
body.single-product .perfecto-size-inline {
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(214,167,97,.28);
  background:rgba(214,167,97,.08);
  color:#f2dfc0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
}
@media (max-width: 640px) {
  body.single-product .perfecto-purchase-options__choices { grid-template-columns:1fr; }
}


/* V4.3 targeted-only patch: requested category tile hover/title, hero border reset, and stock/checkout reset guards. */
body.tax-product_cat .perfecto-shop-hero,
body.product-category .perfecto-shop-hero {
  border-bottom: 0 !important;
  box-shadow: none !important;
}

body.tax-product_cat .perfecto-category-tile,
body.product-category .perfecto-category-tile {
  place-items: end stretch !important;
}

body.tax-product_cat .perfecto-category-tile__bg,
body.product-category .perfecto-category-tile__bg {
  opacity: .78 !important;
}

body.tax-product_cat .perfecto-category-tile:hover .perfecto-category-tile__bg,
body.product-category .perfecto-category-tile:hover .perfecto-category-tile__bg {
  opacity: .92 !important;
}

body.tax-product_cat .perfecto-category-tile__shade,
body.product-category .perfecto-category-tile__shade {
  background: transparent !important;
}

body.tax-product_cat .perfecto-category-tile strong,
body.product-category .perfecto-category-tile strong {
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  bottom: 14px !important;
  max-width: none !important;
  width: auto !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  background: rgba(10, 7, 5, .82) !important;
  color: #fee4ae !important;
  opacity: 0 !important;
  transform: translateY(10px) !important;
  transition: opacity .22s ease, transform .22s ease !important;
  pointer-events: none !important;
}

body.tax-product_cat .perfecto-category-tile:hover strong,
body.product-category .perfecto-category-tile:hover strong {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

body.tax-product_cat .perfecto-cigar-category-style,
body.product-category .perfecto-cigar-category-style {
  margin-top: 60px !important;
  background: transparent !important;
}

.perfecto-card-sold-out,
.perfecto-sold-out-label {
  display: none !important;
}


/* V4.4 targeted-only patch: remove remaining brand/category hero border and keep checkout isolated from Perfecto visuals. */
body.tax-product_brand .perfecto-shop-hero,
body.tax-product_brand .perfecto-shop-hero.perfecto-category-hero,
body.tax-product_cat .perfecto-shop-hero.perfecto-category-hero,
body.product-category .perfecto-shop-hero.perfecto-category-hero {
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* V4.5 targeted-only patch: cart page two-column layout only. */
body.woocommerce-cart .perfecto-cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
  gap: 32px;
  align-items: start;
}

body.woocommerce-cart .perfecto-cart-layout__products,
body.woocommerce-cart .perfecto-cart-layout__totals {
  min-width: 0;
}

body.woocommerce-cart .perfecto-cart-layout__totals .cart-collaterals,
body.woocommerce-cart .perfecto-cart-layout__totals .cart_totals {
  width: 100%;
  float: none;
}

body.woocommerce-cart .perfecto-cart-layout__totals .cart_totals {
  position: sticky;
  top: 24px;
}

@media (max-width: 991px) {
  body.woocommerce-cart .perfecto-cart-layout {
    grid-template-columns: 1fr;
  }

  body.woocommerce-cart .perfecto-cart-layout__totals .cart_totals {
    position: static;
  }
}


/* V5.0 targeted-only patch: show sold-out badge on product cards based on WooCommerce stock status. */
.woocommerce ul.products li.product .perfecto-product-card .perfecto-card-sold-out,
ul.products li.product .perfecto-product-card .perfecto-card-sold-out,
.perfecto-product-card .perfecto-card-media .perfecto-card-sold-out {
  display: inline-flex !important;
}
.perfecto-product-card.outofstock .perfecto-card-footer .add_to_cart_button,
.outofstock .perfecto-product-card .perfecto-card-footer .add_to_cart_button {
  opacity: .5;
  pointer-events: none;
}


/* V5.1 targeted patch: purchase option alignment, selected option total, and archive strength pill color inheritance. */
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-purchase-options,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart .perfecto-purchase-options {
  grid-column:1 / -1 !important;
  grid-row:1 !important;
  width:100% !important;
  margin:0 0 2px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .perfecto-live-total,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart .perfecto-live-total {
  grid-column:2 !important;
  grid-row:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  min-height:52px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .quantity,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart .quantity {
  grid-column:1 !important;
  grid-row:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:52px !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .quantity input.qty,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart .quantity input.qty {
  height:52px !important;
  line-height:52px !important;
  text-align:center !important;
}
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .single_add_to_cart_button,
.woocommerce div.product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.cart .button.single_add_to_cart_button,
body.single-product .perfecto-cigar-detail-v25 .perfecto-purchase-panel form.variations_form.cart .single_add_to_cart_button {
  grid-column:1 / -1 !important;
  grid-row:3 !important;
}
.perfecto-product-card .perfecto-strength-pill {
  background:var(--perfecto-body-pill-bg, var(--perfecto-strength-color, #f97316)) !important;
}


/* v52 archive-only patch: honor shop/archive custom Strength Pill Color from product editor.
   Scoped to product-loop/card contexts only so single product/admin/cart/checkout styles are untouched. */
.woocommerce ul.products li.product .perfecto-product-card .perfecto-strength-pill[style*="perfecto-body-pill-bg"],
.perfecto-base44-grid .perfecto-product-card .perfecto-strength-pill[style*="perfecto-body-pill-bg"],
.perfecto-product-card .perfecto-strength-pill[style*="perfecto-body-pill-bg"] {
  background: var(--perfecto-body-pill-bg) !important;
  border-color: color-mix(in srgb, var(--perfecto-body-pill-bg) 68%, transparent) !important;
}

.woocommerce ul.products li.product .perfecto-product-card.outofstock .perfecto-card-sold-out,
.perfecto-product-card-shell.outofstock .perfecto-card-sold-out,
.perfecto-product-card .perfecto-card-sold-out {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* V5.3 targeted patch: global Strength Library SVG/icon rendering only. */
.perfecto-strength-pill .perfecto-pill-svg-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1em;
  height:1em;
  margin-right:6px;
  flex:0 0 auto;
}
.perfecto-strength-pill .perfecto-pill-svg-icon img {
  display:block;
  width:1em;
  height:1em;
  object-fit:contain;
  filter:brightness(0) invert(1);
}

/* V5.4.1 deliberately connected patch: global cigar size selector only. */
body.single-product .perfecto-cigar-size-selector {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 14px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(12,10,8,.42);
  border: 1px solid rgba(217,151,57,.12);
}
body.single-product .perfecto-cigar-size-selector label {
  color: #83796d;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 800;
  margin: 0;
}
body.single-product .perfecto-cigar-size-selector select {
  width: 100%;
  min-height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(217,151,57,.22);
  background: rgba(255,255,255,.96);
}
