/*
Theme Name: Johnny Caps
Theme URI: https://johnycaps.com.mx
Author: Johnny Caps
Description: Tema propio de Johnny Caps sobre WooCommerce, independiente de Blocksy.
Version: 0.1.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: johnnycaps
*/

:root{
  --cream:#FFFFFF;
  --cream-deep:#F7F7F5;
  --paper:#FBFBFA;
  --ink:#161412;
  --ink-soft:#4A4744;
  --ink-mute:#6B6862;
  --gold:#8A6B3D;
  --gold-bright:#D9B87A;
  --gold-deep:#5C4322;
  --gold-line:#D9C79A;
  --line:#E8E6E2;
  --white:#FFFFFF;
  --gold-hover:#C7A468;
  --ink-hover:#000000;
  --gold-action:#E0C088;
}
*{box-sizing:border-box;}
body{
  background:var(--cream);
  color:var(--ink);
  font-family:'Inter',sans-serif;
  margin:0;
  padding-bottom:68px;
}

.jc-ticker{
  background:var(--ink);
  color:var(--white);
  font-family:'Space Mono',monospace;
  font-size:10px;
  letter-spacing:.06em;
  display:flex;
  align-items:center;
  gap:18px;
  padding:8px 16px;
  white-space:nowrap;
  overflow-x:auto;
}
.jc-nav-icons{display:flex;align-items:center;gap:14px;justify-self:end;}
.jc-header{
  background:var(--cream);
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:14px 18px 10px;
  border-bottom:1px solid var(--line);
}
.jc-wordmark{display:flex;align-items:center;}
.jc-wordmark img{height:51px;width:auto;display:block;}

.jc-hero-frame{
  position:relative;
  background:var(--white);
  border:1.5px solid var(--line);
  border-radius:18px;
  height:360px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
.jc-tag-badge{
  position:absolute;left:14px;font-family:'Space Mono',monospace;font-size:10px;font-weight:700;
  letter-spacing:.04em;color:var(--ink);background:var(--gold-bright);
  padding:6px 12px 6px 10px;border-radius:3px 10px 10px 3px;
}
.jc-thumbs{display:flex;gap:9px;margin-top:10px;overflow-x:auto;padding-bottom:2px;}
.jc-thumb{
  flex:none;width:58px;height:58px;border-radius:10px;background:#12100C;
  border:1.5px solid transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;
}
.jc-thumb.active{border-color:var(--gold);}

.jc-price-card{
  margin:16px 0 0;background:var(--ink);border-radius:16px;padding:16px 16px 14px;color:var(--cream);
}
.jc-price-eyebrow{font-family:'Space Mono',monospace;font-size:14px;letter-spacing:.1em;color:var(--gold-bright);text-transform:uppercase;}
@media (max-width: 1023px) {
  .variations select{font-size:17px;}
  .variations label{font-size:13px;}
}

.jc-size-cards{display:flex;flex-wrap:nowrap;gap:6px;margin-top:6px;}
.jc-size-card{
  flex:1 1 0;min-width:0;min-height:44px;padding:8px 6px;
  display:flex;align-items:center;justify-content:center;
  background:var(--cream);border:1.5px solid var(--gold-line);border-radius:10px;
  font-family:'Inter',sans-serif;font-weight:700;font-size:12px;color:var(--ink);
  cursor:pointer;user-select:none;position:relative;white-space:nowrap;
  transition:background .2s ease,border-color .2s ease,color .2s ease,transform .15s ease;
}
.jc-size-card.selected{
  background:var(--gold-bright);border-color:var(--gold-bright);color:var(--ink);
}
.reset_variations{display:none !important;}
.jc-size-card.unavailable{
  background:rgba(0,0,0,.03);border-color:var(--line);color:var(--ink-mute);opacity:.55;
  cursor:not-allowed;
}

@media (min-width: 1024px) {
  .jc-size-card:not(.unavailable):hover{border-color:var(--gold-bright);transform:translateY(-1px);}
}
.jc-price-main{display:flex;align-items:baseline;gap:8px;margin-top:4px;}
.jc-price-main .amount{font-family:'Inter',sans-serif;font-weight:900;font-size:38px;color:var(--white);}
.jc-price-main .unit{font-size:13px;color:#C9C2AC;}
.jc-save-badge{
  display:inline-flex;align-items:center;gap:5px;margin-top:8px;background:rgba(227,185,78,.14);
  color:var(--gold-bright);font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:20px;
}
.jc-seg{
  display:flex;background:var(--cream-deep);border-radius:12px;padding:4px;position:relative;margin-top:14px;
}
.jc-seg button{
  flex:1;border:none;background:none;padding:10px 6px;font-family:'Space Mono',monospace;
  font-size:15.5px;font-weight:700;color:var(--ink-mute);border-radius:9px;cursor:pointer;
}
.jc-seg button small{font-size:13px;}
.jc-seg button.active{color:var(--ink);background:var(--white);}

.jc-ticket{
  margin:14px 0 0;background:var(--paper);border-radius:14px;border:1px dashed var(--gold-line);overflow:hidden;
}
.jc-ticket-head{
  display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:var(--cream-deep);
}
.jc-ticket-head span{font-family:'Space Mono',monospace;font-size:14.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);}
.jc-ticket-row{
  display:flex;align-items:center;justify-content:space-between;padding:11px 14px;
  border-top:1px dashed var(--gold-line);font-size:16px;
}
.jc-ticket-row.hot{background:rgba(185,134,47,.09);}
.jc-tier-count{font-family:'Space Mono',monospace;font-weight:700;color:var(--ink-soft);font-size:16.5px;}
.jc-reco{
  background:var(--gold-deep);color:var(--white);font-size:13px;font-weight:700;letter-spacing:.05em;
  padding:2px 6px;border-radius:4px;text-transform:uppercase;margin-left:8px;
}
.jc-tier-price{font-family:'Space Mono',monospace;font-weight:700;font-size:18px;}

.jc-section{padding:22px 18px 0;}
.jc-section-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.jc-section-head h2{font-family:'Inter',sans-serif;font-weight:900;font-size:15.5px;margin:0;}
body.home .jc-section-head h2{font-size:24px;}
.jc-steps{display:flex;flex-direction:column;gap:10px;}
.jc-step{display:flex;gap:10px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:11px 12px;}
.jc-step-num{
  font-family:'Space Mono',monospace;font-weight:700;font-size:14px;color:var(--gold-deep);
  background:rgba(185,134,47,.12);width:22px;height:22px;border-radius:6px;display:flex;
  align-items:center;justify-content:center;flex:none;
}
.jc-step p{margin:0;font-size:16px;line-height:1.5;color:var(--ink-soft);}
.jc-mix-card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px;margin-top:12px;}
.jc-mix-item{display:flex;align-items:center;gap:10px;padding:8px 2px;}
.jc-mix-item + .jc-mix-item{border-top:1px solid var(--line);}
.jc-mix-swatch{width:36px;height:36px;border-radius:9px;background:var(--ink);flex:none;}
.jc-mix-name{font-size:12px;font-weight:600;flex:1;}
.jc-stepper{display:flex;align-items:center;gap:9px;}
.jc-stepper button{width:24px;height:24px;border-radius:50%;border:1px solid var(--ink);background:var(--cream);cursor:pointer;}
.jc-stepper span{font-family:'Space Mono',monospace;font-weight:700;font-size:13px;min-width:14px;text-align:center;display:inline-block;}
.jc-mix-total{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px dashed var(--gold-line);}
.jc-mix-total .val{font-family:'Space Mono',monospace;font-weight:700;font-size:15px;}
.jc-mix-flag{margin-top:9px;font-size:11px;font-weight:600;padding:8px 10px;border-radius:9px;text-align:center;background:rgba(185,134,47,.12);color:var(--gold-deep);}
.jc-mix-flag.off{background:var(--cream-deep);color:var(--ink-mute);}
.jc-mix-note{font-size:11px;color:var(--ink-mute);margin-top:8px;line-height:1.5;}

.jc-buy-card{padding:0;margin-top:20px;}
.jc-qty-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
.jc-qty-row .lbl{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);}
.jc-qty-ctrl{display:flex;align-items:center;gap:14px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:6px 8px;}
.jc-qty-ctrl button{width:26px;height:26px;border:none;background:var(--cream-deep);border-radius:8px;cursor:pointer;}
.jc-qty-ctrl span{font-family:'Space Mono',monospace;font-weight:700;min-width:18px;text-align:center;display:inline-block;}
.jc-cta{
  width:100%;border:none;border-radius:13px;padding:14px;font-weight:700;font-size:13.5px;
  display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;letter-spacing:.02em;
}
.jc-cta.primary{background:var(--gold-action);color:var(--ink);margin-bottom:10px;}
.jc-cta.wa{background:var(--ink);color:var(--cream);text-decoration:none;}

.jc-trust-row{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 18px 0;flex-wrap:wrap;}
.jc-trust-chip{
  display:flex;align-items:center;gap:5px;font-family:'Space Mono',monospace;font-size:13.5px;color:var(--ink-mute);
  border:1px solid var(--line);padding:5px 9px;border-radius:7px;background:var(--white);
}
.jc-delivery-card{
  margin-top:12px;background:var(--ink);border-radius:16px;padding:16px;color:var(--cream);
}
.jc-delivery-top{display:flex;align-items:center;justify-content:space-between;}
.jc-delivery-top .lbl{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-bright);}
.jc-eta{font-family:'Inter',sans-serif;font-weight:900;font-size:19px;margin:3px 0 12px;}
.jc-track{display:flex;align-items:center;}
.jc-track-step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;position:relative;}
.jc-track-step .node{width:20px;height:20px;border-radius:50%;background:var(--gold-bright);display:flex;align-items:center;justify-content:center;z-index:2;}
.jc-track-step.pending .node{background:#37342A;}
.jc-track-step .lb{font-size:8.6px;color:#B9B39D;text-align:center;}
.jc-track-line{position:absolute;top:10px;left:-50%;width:100%;height:2px;background:#37342A;z-index:1;}
.jc-track-line.done{background:var(--gold-bright);}
.jc-track-step:first-child .jc-track-line{display:none;}

.jc-benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.jc-benefit{background:var(--cream-deep);border:1px solid var(--line);border-radius:14px;padding:16px 10px;text-align:center;}
.jc-benefit b{display:block;font-size:14.5px;font-weight:800;letter-spacing:.02em;margin-bottom:3px;color:var(--ink);}
.jc-benefit span{font-size:13px;color:var(--ink-mute);line-height:1.3;display:block;}

.jc-accordion{border-top:1px solid var(--line);}
.jc-acc-item{border-bottom:1px solid var(--line);}
.jc-acc-head{display:flex;align-items:center;justify-content:space-between;padding:14px 2px;cursor:pointer;}
.jc-acc-head span{font-size:16px;font-weight:600;}
.jc-acc-item.open .jc-acc-head svg{transform:rotate(180deg);}
.jc-acc-head svg{width:15px;height:15px;transition:transform .25s ease;}
.jc-acc-body{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.jc-acc-item.open .jc-acc-body{max-height:320px;}
.jc-acc-body-in{padding:0 2px 14px;font-size:15px;color:var(--ink-soft);line-height:1.65;}

.jc-review-summary{display:flex;gap:14px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:14px;}
.jc-review-score{font-family:'Inter',sans-serif;font-weight:900;font-size:30px;flex:none;}
.jc-review-sub{font-size:10.5px;color:var(--ink-mute);margin-top:3px;}
.jc-review-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:10px;}
.jc-review-card .who{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
.jc-review-card .who b{font-size:12px;}
.jc-review-card p{margin:0;font-size:12px;color:var(--ink-soft);line-height:1.55;}
.jc-verified{font-size:9.5px;color:var(--gold-deep);font-weight:600;margin-top:6px;}

#reviews #comments{list-style:none;margin:14px 0 0;padding:0;}
#reviews .commentlist{list-style:none;margin:0;padding:0;}
#reviews .comment{
  background:var(--white);border:1px solid var(--line);border-radius:12px;
  padding:12px;margin-top:10px;list-style:none;
}
#reviews .comment .avatar{display:none;}
#reviews .comment_container{display:flex;flex-direction:column;}
#reviews .comment-text{font-size:12px;color:var(--ink-soft);line-height:1.55;}
#reviews .comment-text p{margin:0;}
#reviews .star-rating{color:var(--gold);font-size:12px;order:-1;margin-bottom:6px;}
#reviews .meta{font-size:11px;color:var(--ink-mute);order:-2;}
#reviews #review_form_wrapper{
  background:var(--white);border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:14px;
}
#reviews #review_form input, #reviews #review_form textarea{
  border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-family:'Inter',sans-serif;
}
#reviews #reply-title{font-family:'Inter',sans-serif;font-weight:900;font-size:15px;}

.jc-related-scroll{display:flex;gap:12px;overflow-x:auto;padding:0 18px 4px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;}
.jc-rel-card{flex:0 0 46%;scroll-snap-align:start;text-decoration:none;}
.jc-rel-img{width:100%;aspect-ratio:1/1;height:auto;border-radius:12px;background:var(--white);border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.jc-rel-img img{width:100%;height:100%;object-fit:contain;padding:10px;box-sizing:border-box;}
.jc-rel-card .n{font-size:16px;font-weight:600;margin:10px 0 3px;color:var(--ink);text-decoration:none;display:block;}
.jc-rel-card .p{font-family:'Space Mono',monospace;font-size:16px;color:var(--gold-deep);font-weight:700;text-decoration:none;display:block;}

.jc-review-card .stars{color:var(--gold);font-size:11px;}
#reviews .comment-form{
  background:var(--white);border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:14px;
}
#reviews .comment-form input, #reviews .comment-form textarea{
  border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-family:'Inter',sans-serif;width:100%;box-sizing:border-box;
}
#reviews .comment-reply-title{font-family:'Inter',sans-serif;font-weight:900;font-size:15px;}

.jc-footer{padding:24px 18px 90px;text-align:center;}
.jc-footer p{font-size:10px;color:var(--ink-mute);}
.jc-trust-line{padding:0 18px;margin:20px 0 32px;text-align:center;font-size:15px;color:var(--ink-mute);}
body.woocommerce-cart .jc-footer p{font-size:12px;}
.jc-footer .cards{display:flex;justify-content:center;gap:8px;margin-top:10px;flex-wrap:wrap;}
.jc-footer .cards span{font-family:'Space Mono',monospace;font-size:9px;border:1px solid var(--line);border-radius:5px;padding:4px 7px;color:var(--ink-mute);}

.jc-sticky-bar{
  position:fixed;bottom:0;left:0;right:0;background:var(--cream);border-top:1px solid var(--line);
  padding:10px 16px calc(10px + env(safe-area-inset-bottom));display:flex;gap:10px;align-items:center;z-index:9999;
  box-shadow:0 -8px 20px -12px rgba(0,0,0,.15);
}
.jc-sticky-bar .sb-price .l{font-family:'Space Mono',monospace;font-size:8.5px;color:var(--ink-mute);letter-spacing:.06em;text-transform:uppercase;}
.jc-sticky-bar .sb-price .v{font-family:'Inter',sans-serif;font-weight:900;font-size:17px;line-height:1;}
.jc-sticky-bar .sb-cta{
  flex:1;border:none;background:var(--gold-action);color:var(--ink);border-radius:11px;padding:12px;
  font-weight:700;font-size:12.5px;cursor:pointer;
}
.jc-sticky-bar .sb-wa{
  width:44px;height:44px;border-radius:11px;background:var(--ink);color:var(--cream);display:flex;
  align-items:center;justify-content:center;flex:none;text-decoration:none;
}

.jc-catalog-head{padding:14px 18px 10px;}
.jc-catalog-head h1{font-family:'Inter',sans-serif;font-weight:900;font-size:20px;margin:0 0 3px;}
.jc-catalog-count{font-family:'Space Mono',monospace;font-size:11px;color:var(--ink-mute);}

.jc-filter-bar{display:flex;align-items:center;gap:8px;padding:0 18px 14px;}
.jc-cat-chips{display:flex;gap:8px;overflow-x:auto;flex:1;}
.jc-cat-chip{
  flex:none;font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;
  padding:7px 13px;border-radius:20px;border:1px solid var(--line);background:var(--white);
  color:var(--ink-soft);white-space:nowrap;cursor:pointer;text-decoration:none;
}
.jc-cat-chip.active{background:var(--ink);color:var(--gold-bright);border-color:var(--ink);}

.jc-sort-select{
  flex:none;font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;
  padding:7px 10px;border-radius:20px;border:1px solid var(--line);background:var(--white);
  color:var(--ink-soft);
}

.jc-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 18px;}
.jc-product-card{
  background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden;
  position:relative;
}
.jc-product-card .stretched-link{position:absolute;inset:0;z-index:1;}
.jc-product-card .img-wrap{
  position:relative;aspect-ratio:1/1;background:var(--white);
  display:flex;align-items:center;justify-content:center;
}
.jc-product-card .img-wrap img{width:100%;height:100%;object-fit:contain;padding:10px;box-sizing:border-box;}
.jc-product-card .body{padding:10px 11px 12px;position:relative;}
.jc-product-card .name{font-size:13px;font-weight:600;margin:0 0 6px;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.jc-price-action-row{display:flex;align-items:center;gap:3px;margin-bottom:4px;}
.jc-price-wholesale{
  display:flex;flex-direction:column;justify-content:center;background:var(--ink);color:var(--white);
  border-radius:8px;padding:5px 9px;flex:1;min-width:0;
}
.jc-price-wholesale .amt{font-family:'Inter',sans-serif;font-weight:900;font-size:17px;line-height:1;}
.jc-price-wholesale .tag{font-family:'Space Mono',monospace;font-size:9.5px;color:var(--gold-bright);letter-spacing:.05em;text-transform:uppercase;margin-top:2px;}
.jc-price-retail{font-family:'Space Mono',monospace;font-size:14px;color:var(--ink-mute);display:block;}
.jc-ship-badge{font-family:'Space Mono',monospace;font-size:13px;color:var(--gold-deep);font-weight:700;margin-top:4px;display:block;}
.wishlist_table .jc-quick-add::before,
.wishlist_table .jc-quick-add::after {
  content: none !important;
}
.jc-buy-card .stock.in-stock{font-size:13px;color:var(--ink-mute);margin:0 0 10px;}
.jc-buy-card .stock.jc-stock-low{color:#b91c1c;font-weight:700;background:rgba(185,28,28,.08);display:inline-block;padding:3px 9px;border-radius:6px;}
.jc-buy-card input.qty.jc-qty-blocked{border-color:#b91c1c !important;box-shadow:0 0 0 2px rgba(185,28,28,.15);}

/* Boton cuadrado de anadir rapido, junto a la caja de precio */
.jc-product-card a.button.jc-quick-add{
  position:static!important;flex:none;width:44px;height:44px;border-radius:8px;
  background:var(--gold-action);color:var(--white)!important;border:none;display:flex!important;align-items:center;justify-content:center;
  z-index:2;text-decoration:none;padding:0;
}
.jc-product-card a.button.jc-quick-add.loading{opacity:.6;}
.jc-product-card a.button.jc-quick-add.added::after{display:none;}

.jc-pagination{display:flex;justify-content:center;gap:6px;padding:22px 18px;}
.jc-pagination a, .jc-pagination span{
  min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;
  border-radius:8px;border:1px solid var(--line);font-family:'Space Mono',monospace;font-size:12px;
  color:var(--ink-soft);text-decoration:none;
}
.jc-pagination .current{background:var(--ink);color:var(--gold-bright);border-color:var(--ink);}

.jc-product-card a.added_to_cart{
  position:relative;z-index:2;display:inline-block;margin-top:6px;
  font-family:'Space Mono',monospace;font-size:10px;color:var(--gold-deep);text-decoration:underline;
}

/* Barra de progreso hacia el mayoreo */
.jc-cart-progress{
  margin:14px 18px 0;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:14px 16px;color:var(--ink);
}
.jc-cart-progress .msg{
  font-family:'Space Mono',monospace;font-size:11.5px;font-weight:700;color:var(--ink);
  display:flex;align-items:center;gap:6px;margin-bottom:9px;
}
.jc-cart-progress .track{height:8px;background:var(--cream-deep);border-radius:5px;overflow:hidden;}
.jc-cart-progress .fill{
  height:100%;background:linear-gradient(90deg,var(--gold-deep),var(--gold-bright));border-radius:5px;
  transition:width .3s ease;
}
.jc-cart-progress .sub{font-size:13px;color:var(--ink-mute);margin-top:7px;}
.jc-cart-progress.complete{background:rgba(224,192,136,.12);border-color:var(--gold-action);}
.jc-cart-progress.complete .msg{color:var(--ink);}
.jc-cart-progress.complete .sub{color:var(--ink-mute);}

.jc-cart-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.jc-cart-count-inline{font-family:'Space Mono',monospace;font-size:16px;font-weight:400;color:var(--ink-mute);}
.jc-cart-continue{font-family:'Space Mono',monospace;font-size:14px;color:var(--gold-deep);text-decoration:underline;}

/* Tarjetas de línea de producto */
.jc-cart-list{padding:14px 18px 0;display:flex;flex-direction:column;gap:10px;}
.jc-cart-item{
  display:flex;gap:11px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:10px;
  align-items:center;position:relative;
}
.jc-cart-item .thumb{
  width:84px;height:84px;border-radius:13px;flex:none;background:var(--white);
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.jc-cart-item .thumb img{width:100%;height:100%;object-fit:contain;padding:4px;box-sizing:border-box;}
.jc-cart-item .info{flex:1;min-width:0;}
.jc-cart-item .name{font-size:18.5px;font-weight:600;margin:0 0 3px;line-height:1.3;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.jc-cart-item .unit-price{font-family:'Space Mono',monospace;font-size:16.5px;color:var(--ink-mute);}
.jc-cart-item .unit-price.mayoreo{color:var(--gold-deep);font-weight:700;}
.jc-cart-item .stepper{display:flex;align-items:center;gap:8px;margin-top:6px;}
.jc-cart-item .stepper button{
  width:22px;height:22px;border-radius:50%;border:1px solid var(--ink);background:var(--cream);
  display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;
}
.jc-cart-item .stepper input{
  width:26px;text-align:center;border:none;background:none;font-family:'Space Mono',monospace;
  font-weight:700;font-size:18.5px;-moz-appearance:textfield;
}
.jc-cart-item .stepper input::-webkit-outer-spin-button,
.jc-cart-item .stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.jc-cart-item .remove{
  position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--ink-mute);text-decoration:none;font-size:17px;
}
.jc-cart-item .line-subtotal{
  font-family:'Space Mono',monospace;font-weight:700;font-size:18.5px;flex:none;align-self:flex-end;
}

/* Carrito: reducir margenes laterales para acercarlo al ancho completo de la pantalla */
body.woocommerce-cart .jc-catalog-head{padding-left:10px;padding-right:10px;}
body.woocommerce-cart .jc-cart-progress{margin-left:10px;margin-right:10px;}
body.woocommerce-cart .jc-cart-list{padding-left:10px;padding-right:10px;}
body.woocommerce-cart .jc-cart-totals{margin-left:10px;margin-right:10px;}
body.woocommerce-cart .jc-cart-cta-wrap{padding-left:10px;padding-right:10px;}

/* Tarjeta de totales */
.jc-cart-totals{margin:16px 18px 0;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:16px;color:var(--ink);}
.jc-cart-totals .row{display:flex;justify-content:space-between;font-size:18.5px;padding:7px 0;color:var(--ink-mute);}
.jc-cart-totals .row.total{
  border-top:1px dashed var(--gold-line);margin-top:6px;padding-top:12px;
  font-family:'Inter',sans-serif;font-weight:900;font-size:25px;color:var(--ink);align-items:baseline;
}
.jc-cart-totals .row.total span:first-child{font-family:'Space Mono',monospace;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-deep);}

.jc-cart-coupon-inline{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);}
.jc-cart-coupon-inline form{display:flex;gap:8px;}
.jc-cart-coupon-inline input[type="text"]{
  flex:1;box-sizing:border-box;padding:9px 11px;border-radius:9px;border:1px solid var(--line);
  font-family:'Inter',sans-serif;font-size:15px;background:var(--cream);color:var(--ink);
}
.jc-cart-coupon-inline button{
  flex:none;border:none;border-radius:9px;padding:9px 16px;font-weight:700;font-size:14px;
  background:var(--gold-action);color:var(--ink);cursor:pointer;
}

.jc-cart-pay-logos{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:12px;flex-wrap:wrap;}
.jc-cart-pay-logos img{height:20px;width:auto;}

/* CTA final */
.jc-cart-cta-wrap{padding:14px 18px 24px;}
.jc-cart-cta{
  width:100%;border:none;border-radius:13px;padding:14px;font-weight:700;font-size:16.5px;
  background:var(--gold-action);color:var(--ink);cursor:pointer;letter-spacing:.02em;
}

/* Secciones del formulario (envuelven el markup nativo de Woo) */
.jc-checkout-section{
  margin:14px 18px 0;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:14px;
}
.jc-checkout-section h3, .jc-checkout-section .woocommerce-billing-fields > h3{
  font-family:'Inter',sans-serif;font-weight:900;font-size:18px;margin:0 0 14px;
}
.jc-checkout-section .form-row{margin-bottom:10px;}
.jc-checkout-section .form-row label{
  display:block;font-family:'Space Mono',monospace;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-mute);margin-bottom:6px;
}
.jc-checkout-section .form-row .required{color:var(--gold-deep);}
.jc-checkout-section input.input-text,
.jc-checkout-section select,
.jc-checkout-section textarea{
  width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid var(--line);border-radius:9px;
  font-family:'Inter',sans-serif;font-size:16px;background:var(--cream);color:var(--ink);
}
.jc-checkout-section .form-row-first,.jc-checkout-section .form-row-last{width:48%;}
.jc-checkout-section .form-row-first{float:left;}
.jc-checkout-section .form-row-last{float:right;}
.jc-checkout-section:after{content:"";display:table;clear:both;}

/* Resumen del pedido (tabla nativa) */
.jc-checkout-summary h2{font-family:'Inter',sans-serif;font-weight:900;font-size:19px;margin:0 0 14px;}
.jc-checkout-summary{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:22px;}
.jc-checkout-summary table.shop_table{width:100%;border-collapse:collapse;font-size:16px;}
.jc-checkout-summary table.shop_table thead{display:none;}
.jc-checkout-summary table.shop_table tbody tr.cart_item{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line);}
.jc-checkout-summary table.shop_table tbody tr.cart_item td{border:none;padding:0;}
.jc-checkout-summary table.shop_table tbody tr.cart_item td.product-name{flex:1;font-weight:600;color:var(--ink);}
.jc-checkout-summary table.shop_table tbody tr.cart_item td.product-name img{
  width:52px;height:52px;object-fit:contain;border-radius:10px;border:1px solid var(--line);
  background:var(--white);padding:3px;box-sizing:border-box;float:left;margin-right:10px;
}
.jc-checkout-summary table.shop_table tbody tr.cart_item .product-quantity{
  font-family:'Space Mono',monospace;font-weight:400;color:var(--ink-mute);font-size:15px;
}
.jc-checkout-summary table.shop_table td.product-total,
.jc-checkout-summary table.shop_table .amount{font-family:'Space Mono',monospace;font-weight:700;color:var(--ink);}
.jc-checkout-summary table.shop_table tfoot tr{display:flex;justify-content:space-between;padding:12px 4px;border-bottom:1px solid var(--line);}
.jc-checkout-summary table.shop_table tfoot tr th{text-align:left;font-weight:400;color:var(--ink-mute);border:none;padding:0;}
.jc-checkout-summary table.shop_table tfoot tr td{border:none;padding:0;}
.jc-checkout-summary table.shop_table tfoot tr:last-child{
  font-family:'Inter',sans-serif;font-weight:900;font-size:22px;color:var(--ink);
  border-bottom:none;border-top:1px dashed var(--gold-line);margin-top:4px;padding-top:14px;
}
.jc-checkout-summary table.shop_table tfoot tr:last-child th{color:var(--ink);}

/* Métodos de pago (markup nativo de Woo) */
ul.wc_payment_methods{list-style:none;margin:14px 0 0;padding:0;}
ul.wc_payment_methods li.wc_payment_method{
  background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:8px;
}
ul.wc_payment_methods li.wc_payment_method label{font-size:12.5px;font-weight:600;cursor:pointer;}
ul.wc_payment_methods li.wc_payment_method .payment_box{
  margin-top:10px;padding-top:10px;border-top:1px dashed var(--gold-line);font-size:11.5px;color:var(--ink-soft);
}

/* Botón final */
#place_order{
  width:100%;border:none;border-radius:13px;padding:15px;font-weight:700;font-size:14px;
  background:var(--gold-action)!important;color:var(--ink)!important;cursor:pointer;letter-spacing:.02em;
}
.jc-checkout-item{display:flex;align-items:center;gap:8px;}
.jc-checkout-thumb{width:52px;height:52px;object-fit:cover;border-radius:8px;flex:none;}
.jc-checkout-item-name{flex:1;}

.jc-account-nav{display:flex;gap:8px;overflow-x:auto;padding:0 18px 14px;}
.jc-account-nav a{
  flex:none;font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;
  padding:8px 14px;border-radius:20px;border:1px solid var(--line);background:var(--white);
  color:var(--ink-soft);white-space:nowrap;text-decoration:none;
}
.jc-account-nav a.is-active{background:var(--ink);color:var(--gold-bright);border-color:var(--ink);}
.jc-account-nav a.woocommerce-MyAccount-navigation-link--customer-logout{color:var(--gold-deep);}

.jc-account-content{padding:0 18px 24px;}

.jc-account-content h3{font-family:'Inter',sans-serif;font-weight:900;font-size:16px;margin:0 0 12px;}
.jc-account-content .woocommerce-MyAccount-content > p:first-child{
  background:var(--white);border:1px solid var(--line);border-radius:12px;padding:14px;font-size:13px;
}

.jc-order-card{background:var(--white);border:1px solid var(--line);color:var(--ink);border-radius:16px;padding:16px;margin-bottom:12px;}
.jc-order-card .top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;}
.jc-order-card .num{font-family:'Inter',sans-serif;font-weight:900;font-size:19px;color:var(--ink);}
.jc-order-card .date{font-family:'Space Mono',monospace;font-size:12px;color:var(--ink-mute);}
.jc-order-card .status{
  display:inline-block;font-family:'Space Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;
  padding:6px 14px;border-radius:20px;background:var(--gold-action);color:var(--ink);margin-bottom:12px;
}
.jc-order-card .total{display:block;font-family:'Inter',sans-serif;font-weight:900;font-size:22px;color:var(--ink);margin-bottom:14px;}
.jc-order-card .view-link{
  display:flex;align-items:center;justify-content:center;gap:6px;width:100%;box-sizing:border-box;
  padding:11px;border-radius:30px;border:1.5px solid var(--gold-deep);
  font-family:'Space Mono',monospace;font-weight:700;font-size:12px;letter-spacing:.03em;
  color:var(--gold-deep);text-decoration:none;text-transform:uppercase;
}

.jc-address-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:10px;}
.jc-address-card h4{font-family:'Space Mono',monospace;font-size:10.5px;text-transform:uppercase;color:var(--ink-mute);margin:0 0 8px;}
.jc-address-card address{font-style:normal;font-size:13px;line-height:1.6;}
.jc-address-card .edit-link{
  display:inline-block;margin-top:8px;font-family:'Space Mono',monospace;font-size:10px;
  color:var(--gold-deep);text-decoration:underline;
}

.jc-account-content .woocommerce-form-row{margin-bottom:10px;}
.jc-account-content .woocommerce-form-row label{
  display:block;font-family:'Space Mono',monospace;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-mute);margin-bottom:5px;
}
.jc-account-content input.woocommerce-Input,
.jc-account-content input[type="text"],
.jc-account-content input[type="email"],
.jc-account-content input[type="password"]{
  width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid var(--line);border-radius:9px;
  font-family:'Inter',sans-serif;font-size:13px;background:var(--cream);color:var(--ink);
}
.jc-account-content button[type="submit"]{
  width:100%;border:none;border-radius:13px;padding:14px;font-weight:700;font-size:13.5px;
  background:var(--gold-action);color:var(--ink);cursor:pointer;margin-top:6px;
}

/* Direcciones (plantilla nativa de WooCommerce, sin archivo propio) */
.jc-account-content .woocommerce-Addresses{display:flex;flex-direction:column;gap:14px;margin-top:12px;}
.jc-account-content .woocommerce-Address{
  background:var(--white);border:1px solid var(--line);border-radius:16px;padding:16px;
}
.jc-account-content .woocommerce-Address-title{
  display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;
}
.jc-account-content .woocommerce-Address-title h2{
  font-family:'Inter',sans-serif;font-weight:900;font-size:15px;margin:0;
}
.jc-account-content .woocommerce-Address-title a{
  flex:none;font-family:'Space Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;
  padding:6px 12px;border-radius:20px;border:1.5px solid var(--gold-deep);
  color:var(--gold-deep);text-decoration:none;white-space:nowrap;
}
.jc-account-content .woocommerce-Address address{
  font-style:normal;font-size:13.5px;color:var(--ink-mute);line-height:1.6;
}
.jc-account-content .woocommerce-MyAccount-content p{font-size:13.5px;color:var(--ink-mute);line-height:1.6;}
.jc-account-content .woocommerce-MyAccount-content p a{color:var(--gold-deep);font-weight:600;text-decoration:underline;}
.jc-account-content .woocommerce-MyAccount-content p strong{color:var(--ink);}

/* Boton "Ver catalogo" debajo del Hero (Home) */
.jc-hero-catalog-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  margin:0 12px;box-sizing:border-box;padding:16px;
  background:var(--gold-action);color:var(--ink);text-decoration:none;
  font-family:'Inter',sans-serif;font-weight:900;font-size:14px;letter-spacing:.03em;
}

/* Banner de oferta "prueba desde 6 piezas" (Home) */
.jc-trial-offer{display:block;width:100%;margin:32px 0 0;}
.jc-trial-offer img{display:block;width:100%;height:auto;}
.jc-trial-buy-btn{
  display:block;text-align:center;margin:10px 12px 0;padding:16px;
  background:var(--ink);color:var(--white);text-decoration:none;
  font-family:'Inter',sans-serif;font-weight:900;font-size:17px;letter-spacing:.1em;
}
.jc-nav-icon.jc-has-favorites svg{fill:#C0392B;stroke:#C0392B;}
a.added_to_cart.wc-forward{display:none!important;}
.jc-bn-item.jc-bn-has-favorites:not(.active) .jc-bn-ico svg{stroke:#C0392B;fill:#C0392B;}

/* Barra de navegacion inferior fija (solo movil) */
.jc-bottom-nav{
  position:fixed;bottom:0;left:0;right:0;height:68px;background:var(--white);
  display:flex;justify-content:space-around;align-items:center;
  border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(0,0,0,.06);z-index:999;
  padding-bottom:env(safe-area-inset-bottom);
}
.jc-bn-item{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;text-decoration:none;color:var(--ink-mute);font-family:'Inter',sans-serif;
  font-size:10px;font-weight:600;padding:4px 0;
}
.jc-bn-ico{
  position:relative;width:44px;height:36px;display:flex;align-items:center;justify-content:center;
  border-radius:20px;transition:all .3s cubic-bezier(.4,0,.2,1);
}
.jc-bn-ico svg{width:20px;height:20px;stroke:var(--ink-mute);transition:stroke .3s ease;}
.jc-bn-item.active{color:var(--ink);font-weight:700;}
.jc-bn-item.active .jc-bn-ico{background:var(--ink);transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,.18);}
.jc-bn-item.active .jc-bn-ico svg{stroke:var(--white);}
.jc-bn-badge{
  position:absolute;top:0;right:2px;background:var(--white);color:var(--ink);
  font-size:9px;font-weight:700;border-radius:10px;padding:1px 5px;line-height:1.3;
  box-shadow:0 1px 4px rgba(0,0,0,.25);
}

/* Seccion "Calidad del producto" (Home) */
.jc-quality-home{padding:32px 0;background:var(--white);}
.jc-quality-home .jc-section-head{justify-content:center;}
.jc-quality-sub{text-align:center;padding:0 18px;margin:0 0 18px;font-size:13px;color:var(--ink-mute);}
.jc-quality-card{max-width:none;margin:0 auto;padding:0 13px;}
.jc-quality-video-wrap{
  position:relative;width:100%;aspect-ratio:9/14;border-radius:20px;overflow:hidden;
  box-shadow:0 12px 28px rgba(0,0,0,.1);background:var(--ink);border:1px solid var(--line);
}
.jc-quality-video-wrap video{width:100%;height:100%;object-fit:cover;display:block;}
.jc-quality-audio-btn{
  position:absolute;bottom:14px;right:14px;background:rgba(0,0,0,.65);backdrop-filter:blur(6px);
  border:none;color:var(--white);width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;
}
.jc-quality-tag{
  position:absolute;top:14px;left:14px;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);
  color:var(--white);padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;
  display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.15);
}
.jc-quality-specs{
  display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:12px 10px;
  background:var(--ink);border-radius:14px;color:var(--white);
}
.jc-quality-specs .spec{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;}
.jc-quality-specs .spec svg{width:16px;height:16px;stroke:var(--gold-action);flex-shrink:0;}
.jc-quality-specs .spec span{font-size:11px;font-weight:600;color:var(--white);white-space:nowrap;}
.jc-quality-specs .spec-divider{width:1px;height:16px;background:#333333;}

/* Seccion "Unete a nuestras redes sociales" (Home) */
.jc-follow-home{padding:32px 0;text-align:center;}
.jc-follow-home .jc-section-head{justify-content:center;}
.jc-follow-sub{padding:0 18px;margin:0 0 18px;font-size:13px;color:var(--ink-mute);}
.jc-follow-scroll{display:flex;gap:12px;overflow-x:auto;padding:0 18px 6px;scroll-snap-type:x mandatory;}
.jc-follow-card{
  min-width:140px;flex:0 0 auto;scroll-snap-align:start;text-decoration:none;
  background:var(--cream-deep);border:1px solid var(--line);border-radius:14px;
  padding:18px 14px;text-align:center;
}
.jc-follow-card .ico{
  display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0 auto 10px;
  border-radius:50%;background:var(--white);border:1px solid var(--line);
}
.jc-follow-card:nth-child(1) .ico{color:#E1306C;}
.jc-follow-card:nth-child(2) .ico{color:#1877F2;}
.jc-follow-card:nth-child(3) .ico{color:#000000;}
.jc-follow-card:nth-child(4) .ico{color:#25D366;}
.jc-follow-card .ico svg{width:18px;height:18px;}
.jc-follow-card strong{display:block;font-family:'Inter',sans-serif;font-size:14px;color:var(--ink);}
.jc-follow-card .handle{display:block;font-size:11px;color:var(--ink-mute);margin:4px 0 12px;}
.jc-follow-card .btn{
  display:inline-block;padding:7px 16px;border-radius:20px;
  background:var(--ink);color:var(--white);font-size:11px;font-weight:700;
}

/* ============================================
   ESCRITORIO — bloque aditivo, no modifica reglas móviles
   ============================================ */
/* Hero de la Home */
.jc-hero-home{position:relative;width:100%;overflow:hidden;margin-top:5px;}
.jc-hero-home .jc-hero-img{width:100%;height:auto;object-fit:initial;display:block;}
.jc-hero-logo{position:absolute;top:3%;left:3%;width:15%;height:auto;z-index:2;}
.jc-hero-cta-link{position:absolute;top:78%;left:6%;width:28%;height:8%;z-index:2;}

/* Categorías visuales (Home) */
.jc-cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:0 18px;}
.jc-cat-card{text-decoration:none;display:block;}
.jc-cat-img{
  aspect-ratio:1/1;border-radius:14px;background:var(--white);
  border:1.5px solid var(--line);
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.jc-cat-img img{width:100%;height:100%;object-fit:contain;padding:14px;box-sizing:border-box;}
.jc-cat-card .n{font-size:13px;font-weight:700;margin-top:8px;color:var(--ink);text-align:center;display:block;}

/* Sección de mayoreo (Home) */
.jc-mayoreo-home{background:var(--ink);color:var(--white);padding:32px 18px;margin-top:28px;text-align:center;}
.jc-mayoreo-home h2{font-family:'Inter',sans-serif;font-weight:900;font-size:26px;margin:0 0 8px;}
.jc-mayoreo-home p{font-size:13px;color:var(--cream-deep);opacity:.85;margin:0 0 22px;max-width:480px;margin-left:auto;margin-right:auto;}
.jc-mayoreo-tiers{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:520px;margin:0 auto 14px;}
.jc-mayoreo-tier{
  position:relative;text-align:left;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:14px;padding:20px 16px;
}
.jc-mayoreo-tier .num{font-family:'Space Mono',monospace;font-size:10px;color:var(--gold-bright);letter-spacing:.05em;display:block;margin-bottom:10px;}
.jc-mayoreo-tier .ic{width:22px;height:22px;color:var(--gold-bright);margin-bottom:10px;}
.jc-mayoreo-tier .ic svg{width:100%;height:100%;}
.jc-mayoreo-tier .t{font-family:'Inter',sans-serif;font-weight:800;font-size:13px;color:var(--white);display:block;}
.jc-mayoreo-tier .d{font-size:11px;color:var(--cream-deep);opacity:.75;margin-top:3px;display:block;}
.jc-mayoreo-tier .p{font-family:'Inter',sans-serif;font-weight:900;font-size:26px;color:var(--white);display:block;margin-top:12px;}
.jc-mayoreo-badge{
  position:absolute;top:14px;right:14px;
  background:var(--gold-action);color:var(--ink);
  font-family:'Space Mono',monospace;font-size:8px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;
  padding:3px 7px;border-radius:5px;
}
.jc-mayoreo-note{font-size:11px;color:var(--cream-deep);opacity:.7;max-width:420px;margin:0 auto 22px;}
.jc-mayoreo-home .jc-cta.primary{display:inline-block;padding:14px 32px;text-decoration:none;width:auto;}

/* Categorías editoriales (Home) */
.jc-catx-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:0 18px;}
.jc-catx-card{
  position:relative;display:block;text-decoration:none;
  background:var(--ink);border:1px solid var(--gold-line);border-radius:16px;
  padding:20px 16px;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;
}
.jc-catx-card:nth-child(4){display:none;}
.jc-catx-card:hover{border-color:var(--gold-bright);box-shadow:0 6px 18px rgba(0,0,0,.24);transform:translateY(-2px);}
.jc-catx-card .num{font-family:'Space Mono',monospace;font-size:11px;color:var(--gold-bright);letter-spacing:.05em;display:block;margin-bottom:10px;}
.jc-catx-card .ic{width:26px;height:26px;color:var(--gold-bright);margin-bottom:14px;}
.jc-catx-card .ic svg{width:100%;height:100%;}
.jc-catx-card .name{font-family:'Inter',sans-serif;font-weight:900;font-size:15px;letter-spacing:.01em;color:var(--white);margin:0 0 4px;}
.jc-catx-card .tag{font-size:11px;color:var(--cream-deep);opacity:.75;display:block;margin-bottom:16px;}
.jc-catx-card .explore{font-family:'Space Mono',monospace;font-size:10px;color:var(--white);letter-spacing:.04em;text-transform:uppercase;}

/* Beneficios/confianza (Home) — tarjetas rectangulares propias, sin tocar la versión grid de la PDP */
.jc-benefits-scroll{
  display:flex;gap:10px;overflow-x:auto;padding:0 18px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;-ms-overflow-style:none;
}
.jc-benefits-scroll::-webkit-scrollbar{display:none;}
.jc-benefits-home-section{background:var(--cream-deep);padding:28px 0;}
.jc-benefit-home{
  flex:0 0 46%;scroll-snap-align:start;
  background:var(--white);border:1px solid var(--line);border-top:1px solid var(--gold-line);
  border-radius:14px;padding:18px 16px;text-align:left;
}
.jc-benefit-home .ic{width:22px;height:22px;color:var(--gold-deep);margin-bottom:12px;}
.jc-benefit-home .ic svg{width:100%;height:100%;}
.jc-benefit-home b{display:block;font-size:12.5px;font-weight:800;letter-spacing:.02em;color:var(--ink);margin-bottom:5px;}
.jc-benefit-home span{font-size:10.5px;color:var(--ink-mute);line-height:1.5;display:block;}

/* ¿Cómo funciona? + CTA WhatsApp final (Home) */
.jc-how-home{padding:40px 18px;background:var(--white);text-align:center;}
.jc-how-home h2{font-family:'Inter',sans-serif;font-weight:900;font-size:24px;color:var(--ink);margin:0 0 28px;}
.jc-how-steps{display:flex;flex-direction:column;gap:24px;max-width:340px;margin:0 auto 36px;}
.jc-how-step{text-align:left;}
.jc-how-step .num{font-family:'Inter',sans-serif;font-weight:900;font-size:34px;color:var(--gold);line-height:1;display:block;margin-bottom:6px;}
.jc-how-step .stitle{font-family:'Inter',sans-serif;font-weight:800;font-size:14px;color:var(--ink);display:block;margin-bottom:4px;}
.jc-how-step .sdesc{font-size:12px;color:var(--ink-mute);line-height:1.5;display:block;}
.jc-whatsapp-cta-home{background:var(--ink);color:var(--white);border-radius:16px;padding:28px 22px;max-width:420px;margin:0 auto;}
.jc-whatsapp-cta-home p{font-size:14px;font-weight:700;margin:0 0 4px;}
.jc-whatsapp-cta-home p.small{color:var(--cream-deep);opacity:.75;font-size:12px;font-weight:400;margin:0 0 18px;}
.jc-whatsapp-cta-home a.wa-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:var(--gold-action);color:var(--ink);
  font-family:'Inter',sans-serif;font-weight:800;font-size:13px;letter-spacing:.02em;
  padding:15px 20px;border-radius:12px;text-decoration:none;
}

/* Prueba social / clientes reales (Home) */
.jc-social-home{padding:56px 0 40px;text-align:center;}
.jc-social-home h2{font-family:'Inter',sans-serif;font-weight:900;font-size:22px;color:var(--ink);margin:0 0 6px;padding:0 18px;}
.jc-social-home .sub{font-size:12.5px;color:var(--ink-mute);margin:0 0 24px;padding:0 18px;}
.jc-social-home .stars{font-size:13px;letter-spacing:2px;margin:-16px 0 24px;padding:0 18px;}
.jc-social-scroll{
  display:flex;gap:12px;overflow-x:auto;padding:0 18px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;-ms-overflow-style:none;
}
.jc-social-scroll::-webkit-scrollbar{display:none;}
.jc-social-card{
  flex:0 0 78%;scroll-snap-align:start;
  aspect-ratio:3/4;border-radius:16px;overflow:hidden;position:relative;
  background:var(--white);border:1px solid var(--line);
}
.jc-social-card img,.jc-social-card video{width:100%;height:100%;object-fit:cover;display:block;}
.jc-social-card .play{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:48px;height:48px;border-radius:50%;
  background:rgba(255,255,255,.9);color:var(--ink);
  display:flex;align-items:center;justify-content:center;pointer-events:none;
}
.jc-social-card .play svg{width:20px;height:20px;margin-left:2px;}

/* Preguntas frecuentes (Home) */
.jc-faq-home{padding:40px 18px;max-width:680px;margin:0 auto;}
.jc-faq-home h2{font-family:'Inter',sans-serif;font-weight:900;font-size:22px;color:var(--ink);text-align:center;margin:0 0 28px;}
.jc-faq-item{border-bottom:1px solid var(--line);}
.jc-faq-item summary{
  list-style:none;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:16px 0;font-family:'Inter',sans-serif;font-weight:700;font-size:15.5px;color:var(--ink);
}
.jc-faq-item summary::-webkit-details-marker{display:none;}
.jc-faq-item summary::after{
  content:'+';flex:none;color:var(--gold-deep);font-size:18px;font-weight:400;line-height:1;
}
.jc-faq-item[open] summary::after{content:'−';}
.jc-faq-item .a{padding:0 0 18px;font-size:14.5px;color:var(--ink-mute);line-height:1.6;}

/* Footer profesional (Home) */
.jc-footer-main{background:var(--white);border-top:1px solid var(--line);padding:40px 18px 24px;}
.jc-footer-columns{display:flex;flex-direction:column;gap:32px;max-width:1100px;margin:0 auto;}
.jc-footer-col .brand-logo{height:37px;width:auto;margin-bottom:10px;}
.jc-footer-col .brand-tag{font-size:13.5px;color:var(--ink-mute);line-height:1.5;margin:0 0 14px;max-width:240px;}
.jc-footer-col .wa-link{
  display:inline-flex;align-items:center;gap:6px;
  font-family:'Space Mono',monospace;font-size:12.5px;color:var(--gold-deep);text-decoration:none;font-weight:700;
}
.jc-footer-col h4{
  font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-mute);margin:0 0 14px;
}
.jc-footer-accordion summary{
  list-style:none;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;
  font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-mute);padding:12px 0;border-bottom:1px solid var(--line);
}
.jc-footer-accordion summary::-webkit-details-marker{display:none;}
.jc-footer-accordion summary::after{content:'+';color:var(--gold-deep);font-size:14px;text-transform:none;}
.jc-footer-accordion[open] summary::after{content:'−';}
.jc-footer-accordion ul{padding-top:12px;}
.jc-footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.jc-footer-col ul a{font-size:14px;color:var(--ink);text-decoration:none;}
.jc-footer-col ul a:hover{color:var(--gold-deep);}
.jc-footer-bottom{
  max-width:1100px;margin:32px auto 0;padding-top:20px;border-top:1px solid var(--line);
  display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;
}
.jc-footer-bottom .copy{font-family:'Space Mono',monospace;font-size:11.5px;color:var(--ink-mute);}
.jc-footer-bottom .cards{display:flex;align-items:center;gap:12px;}
.jc-footer-bottom .cards img{height:14px;width:auto;display:block;}

/* Navegación completa: dropdown, buscador, menú móvil */
.jc-menu-toggle{background:none;border:none;padding:0;width:24px;height:24px;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.jc-menu-toggle svg{width:100%;height:100%;}
.jc-nav-links{display:none;}
.jc-search-toggle{background:none;border:none;padding:0;width:22px;height:22px;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.jc-search-toggle svg{width:100%;height:100%;}
.jc-icon-hide-mobile{display:none!important;}

.jc-search-panel{
  position:fixed;top:0;left:0;right:0;background:var(--white);border-bottom:1px solid var(--line);
  padding:16px 18px;z-index:60;transform:translateY(-100%);transition:transform .25s ease;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}
.jc-search-panel.jc-open{transform:translateY(0);}
.jc-search-panel form{display:flex;gap:8px;max-width:600px;margin:0 auto;align-items:center;}
.jc-search-panel input[type=search]{
  flex:1;border:1px solid var(--line);border-radius:10px;padding:10px 14px;
  font-family:'Inter',sans-serif;font-size:13px;background:var(--white);color:var(--ink);
}
.jc-search-panel button[type=submit]{
  background:var(--gold-action);color:var(--ink);border:none;border-radius:10px;
  padding:10px 16px;font-weight:700;font-size:12px;cursor:pointer;
}
.jc-search-close{
  background:none;border:none;color:var(--ink-mute);font-size:22px;line-height:1;
  cursor:pointer;padding:4px 8px;flex:none;
}
.jc-search-close:hover{color:var(--ink);}

.jc-search-suggest{
  display:none;position:absolute;top:100%;left:0;right:0;margin-top:6px;
  background:var(--white);border:1px solid var(--line);border-radius:10px;
  box-shadow:0 8px 20px rgba(0,0,0,.1);overflow:hidden;z-index:65;
}
.jc-search-suggest.jc-open{display:block;}
.jc-search-suggest-item{
  display:flex;align-items:center;gap:10px;padding:8px 12px;text-decoration:none;
  border-bottom:1px solid var(--line);
}
.jc-search-suggest-item:last-child{border-bottom:none;}
.jc-search-suggest-item:hover{background:var(--cream-deep);}
.jc-search-suggest-item img,.jc-search-suggest-noimg{
  width:36px;height:36px;border-radius:6px;object-fit:cover;background:var(--cream-deep);flex:none;
}
.jc-search-suggest-name{
  flex:1;font-family:'Inter',sans-serif;font-size:12.5px;color:var(--ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.jc-search-suggest-price{font-family:'Space Mono',monospace;font-size:11px;color:var(--gold-deep);flex:none;}

.jc-mobile-menu-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:70;
  opacity:0;pointer-events:none;transition:opacity .25s ease;
}
.jc-mobile-menu-overlay.jc-open{opacity:1;pointer-events:auto;}
.jc-mobile-menu{
  position:fixed;top:0;left:0;bottom:0;width:82%;max-width:320px;background:var(--white);
  z-index:71;padding:24px 20px;overflow-y:auto;
  transform:translateX(-100%);transition:transform .25s ease;
}
.jc-mobile-menu.jc-open{transform:translateX(0);}
.jc-mobile-menu .close-btn{background:none;border:none;padding:0;width:22px;height:22px;color:var(--ink);cursor:pointer;margin-bottom:20px;}
.jc-mobile-menu .close-btn svg{width:100%;height:100%;}
.jc-mobile-menu form{display:flex;gap:6px;margin-bottom:20px;}
.jc-mobile-menu input[type=search]{flex:1;border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-family:'Inter',sans-serif;font-size:12.5px;}
.jc-mobile-menu button[type=submit]{background:var(--gold-action);color:var(--ink);border:none;border-radius:9px;padding:9px 12px;font-weight:700;font-size:11px;}
.jc-mobile-menu nav{display:flex;flex-direction:column;}
.jc-mobile-menu nav a{
  font-family:'Inter',sans-serif;font-weight:600;font-size:13.5px;color:var(--ink);
  text-decoration:none;padding:11px 0;border-bottom:1px solid var(--line);
}
.jc-mobile-menu nav a.sub{padding-left:14px;font-weight:400;font-size:12.5px;color:var(--ink-mute);}
.jc-mobile-menu nav .group-label{
  font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.05em;text-transform:uppercase;
  color:var(--gold-deep);padding:14px 0 4px;
}
.jc-featured-grid > *:nth-child(n+7){display:none;}

.jc-announce-bar{width:100%;overflow:hidden;background:var(--ink);height:38px;display:flex;align-items:center;}
.jc-announce-track{display:flex;width:max-content;animation:jc-announce-scroll 32s linear infinite;}
.jc-announce-group{display:flex;align-items:center;flex-shrink:0;}
.jc-announce-item{font-family:'Space Mono',monospace;font-size:18px;color:var(--white);letter-spacing:.03em;white-space:nowrap;padding:0 10px;}
.jc-announce-dot{color:var(--gold-bright);font-size:18px;flex-shrink:0;}
@keyframes jc-announce-scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

@media (min-width: 1024px) {

  .jc-featured-grid > *:nth-child(n+7){display:block;}

  .jc-announce-bar{height:43px;}
  .jc-announce-item{font-size:20px;padding:0 14px;}
  .jc-announce-dot{font-size:20px;}

  .jc-page{
    max-width:1200px;margin:0 auto;
  }

  /* Catálogo: 2 → 4 columnas */
  .jc-product-grid{grid-template-columns:repeat(4,1fr);gap:20px;}
  .jc-filter-bar{padding:0 0 18px;}
  .jc-catalog-head{padding:20px 0 12px;}
  .jc-product-card .name{font-size:14.5px;}
  .jc-price-wholesale .amt{font-size:18px;}
  .jc-price-wholesale .tag{font-size:10px;}
  .jc-price-retail{font-size:14.5px;}
  .jc-ship-badge{font-size:13.5px;}
  .jc-benefits-grid{grid-template-columns:repeat(4,1fr);gap:14px;}
  .jc-hero-home{height:auto;max-height:none;}
  .jc-hero-home .jc-hero-img{height:auto;object-fit:initial;}
  .jc-cat-grid{grid-template-columns:repeat(5,1fr);gap:18px;}
  .jc-catx-grid{grid-template-columns:repeat(5,1fr);gap:16px;}
  .jc-catx-card:nth-child(4){display:block;}
  .jc-benefits-scroll{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;overflow-x:visible;padding:0 18px;}
  .jc-benefit-home{flex:none;}
  .jc-mayoreo-home{padding:48px 18px;}
  .jc-mayoreo-tiers{max-width:600px;gap:20px;}
  .jc-mayoreo-tier{padding:26px 22px;}
  .jc-how-steps{flex-direction:row;max-width:900px;gap:32px;}
  .jc-how-step{flex:1;}
  .jc-social-scroll{overflow-x:visible;flex-wrap:nowrap;justify-content:center;max-width:1000px;margin:0 auto;padding:0 18px;}
  .jc-follow-scroll{overflow-x:visible;flex-wrap:wrap;justify-content:center;max-width:900px;margin:0 auto;padding:0 18px;}
  .jc-follow-card{min-width:170px;}
  .jc-social-card{flex:0 0 auto;width:220px;}
  .jc-footer-columns{flex-direction:row;justify-content:space-between;gap:40px;}
  .jc-footer-col{flex:1;}
  .jc-footer-col:first-child{flex:1.4;}
  .jc-footer-bottom{flex-direction:row;justify-content:space-between;text-align:left;}
  .jc-footer-accordion ul{display:block !important;}
  .jc-footer-accordion summary{
    cursor:default;pointer-events:none;border-bottom:none;padding:0 0 14px;
  }
  .jc-footer-accordion summary::after{display:none;}

  /* Navegación de escritorio */
  .jc-menu-toggle,.jc-mobile-menu,.jc-mobile-menu-overlay{display:none !important;}
  .jc-nav-links{
    display:flex;align-items:center;gap:26px;
    font-family:'Inter',sans-serif;font-weight:600;font-size:13px;
  }
  .jc-nav-links a{color:var(--ink);text-decoration:none;}
  .jc-nav-links a:hover{color:var(--gold-deep);}
  .jc-nav-dropdown{position:relative;}
  .jc-nav-dropdown > button{
    background:none;border:none;padding:0;font:inherit;color:var(--ink);cursor:pointer;
    display:flex;align-items:center;gap:4px;
  }
  .jc-nav-dropdown > button svg{width:12px;height:12px;}
  .jc-nav-dropdown-menu{
    position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);
    background:var(--white);border:1px solid var(--line);border-radius:12px;
    min-width:190px;padding:8px;box-shadow:0 8px 24px rgba(0,0,0,.1);
    opacity:0;visibility:hidden;transform:translateX(-50%) translateY(6px);
    transition:opacity .18s ease,transform .18s ease,visibility .18s;
    z-index:100;
  }
  .jc-nav-dropdown:hover .jc-nav-dropdown-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
  .jc-nav-dropdown-menu a{display:block;padding:9px 12px;border-radius:8px;font-size:12.5px;font-weight:500;}
  .jc-nav-dropdown-menu a:hover{background:var(--cream-deep);}
  .jc-header{justify-content:space-between;gap:24px;}
  .jc-icon-hide-mobile{display:flex!important;}
  .jc-quality-social-row{display:flex;align-items:stretch;gap:32px;max-width:1100px;margin:48px auto 0;padding:0 18px;}
  .jc-quality-home{flex:none;width:340px;padding:0;display:flex;flex-direction:column;}
  .jc-quality-home .jc-quality-card{padding:0;flex:1;display:flex;flex-direction:column;}
  .jc-quality-home .jc-quality-video-wrap{flex:1;aspect-ratio:unset;}
.jc-social-home{flex:1;min-width:0;padding:0;}
  .jc-quality-home{text-align:left;}
  .jc-quality-home .jc-section-head{justify-content:flex-start;}
  .jc-quality-sub{text-align:left;}
  .jc-quality-social-row .jc-social-scroll{flex-wrap:wrap;justify-content:flex-start;max-width:none;margin:0;padding:0;}
  .jc-quality-social-row .jc-social-card{width:calc(33.333% - 11px);flex:none;}
  .jc-bottom-nav{display:none;}
  body{padding-bottom:0;}
  .jc-hero-catalog-btn{max-width:420px;margin:0 auto;border-radius:10px;padding:16px 32px;}
  .jc-faq-item summary{font-size:13.5px;}
  .jc-faq-item .a{font-size:12.5px;}
  .jc-rel-card{flex:0 0 23%;}

}

/* Mi cuenta: chips horizontales → menú vertical fijo */
@media (min-width: 1024px) {
  .jc-account-layout{display:flex;gap:32px;align-items:flex-start;}
  .jc-account-layout .jc-account-nav{
    flex-direction:column;overflow-x:visible;width:220px;flex:none;
    position:sticky;top:20px;
  }
  .jc-account-layout .jc-account-content{flex:1;padding:0;}
}

/* PDP: una columna → dos columnas con sidebar de compra fijo */
@media (min-width: 1024px) {
  .jc-pdp-top{display:flex;gap:36px;align-items:flex-start;padding-top:18px;}
  .jc-pdp-gallery{flex:1;min-width:0;}
  .jc-pdp-gallery .jc-gallery{padding:0;}
  .jc-pdp-buy{width:400px;flex:none;position:sticky;top:20px;}
  .jc-sticky-bar{display:none;}
}

/* Carrito: una columna → dos columnas con totales fijos */
@media (min-width: 1024px) {
  .jc-cart-layout{padding:18px 18px 0;}
  .jc-cart-layout .woocommerce-cart-form{display:flex;gap:36px;align-items:flex-start;}
  .jc-cart-main{flex:1;min-width:0;}
  .jc-cart-main .jc-cart-progress,
  .jc-cart-main .jc-cart-list{margin-left:0;margin-right:0;padding-left:0;padding-right:0;}
  .jc-cart-side{width:360px;flex:none;position:sticky;top:20px;}
  .jc-cart-side .jc-cart-totals{margin-left:0;margin-right:0;}
  .jc-cart-side .jc-cart-cta-wrap{padding-left:0;padding-right:0;}
}

/* Checkout: una columna → dos columnas con resumen fijo */
@media (min-width: 1024px) {
  body.jc-is-checkout .jc-page{max-width:1440px;}
  .jc-checkout-layout{display:flex;gap:48px;align-items:flex-start;padding:0 18px;}
  .jc-checkout-main{flex:1;min-width:0;}
  .jc-checkout-side{width:420px;flex:none;position:sticky;top:20px;}
}

.jc-order-thumb{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;background:var(--white);border:1px solid var(--line);
  border-radius:8px;overflow:hidden;vertical-align:middle;margin-right:8px;
}
.jc-order-thumb img{width:100%;height:100%;object-fit:contain;padding:3px;box-sizing:border-box;}

.jc-pdp-added-confirm{
  display:none;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;
  background:rgba(185,134,47,.1);border-radius:10px;
  font-family:'Space Mono',monospace;font-size:11.5px;color:var(--gold-deep);
}
.jc-pdp-added-confirm.show{display:flex;}
.jc-pdp-added-confirm a{color:var(--gold-deep);text-decoration:underline;font-weight:700;margin-left:auto;}

.jc-nav-icon{
  position:relative;width:26px;height:26px;color:var(--ink);text-decoration:none;
  display:flex;align-items:center;justify-content:center;
}
.jc-nav-icon svg{width:22px;height:22px;}
.jc-nav-count{
  position:absolute;top:-6px;right:-8px;background:var(--gold-deep);color:var(--white);
  font-family:'Space Mono',monospace;font-size:9px;font-weight:700;
  min-width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  padding:0 3px;
}

.jc-wishlist-btn{
  position:absolute;top:8px;right:8px;z-index:2;
  width:30px;height:30px;border-radius:50%;background:var(--white);
  display:flex;align-items:center;justify-content:center;
}
.jc-wishlist-btn a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.jc-wishlist-btn-pdp{
  position:static;width:auto;height:auto;background:none;flex:none;
}

/* Favoritos en el catálogo: solo ícono, sin texto ni fondo del botón por defecto de YITH */
.jc-wishlist-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);box-shadow:0 1px 4px rgba(0,0,0,.12);}
.jc-wishlist-btn .yith-wcwl-add-to-wishlist-button__label{display:none;}
.jc-wishlist-btn .yith-wcwl-add-to-wishlist-button{
  background:none;border:none;padding:0;width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
}
.jc-wishlist-btn .yith-wcwl-icon-svg__wrapper{display:flex;}
.jc-wishlist-btn .yith-wcwl-icon{width:18px;height:18px;color:var(--ink);}

/* Forzar visible el botón de eliminar de Favoritos en móvil (YITH lo oculta por defecto ahí) */
.product-remove{display:block !important;}
.product-remove a.remove_from_wishlist{
  display:flex !important;align-items:center;justify-content:center;
  color:var(--gold-deep);
}

/* Productos agotados */
.jc-product-card.jc-out-of-stock .img-wrap img{opacity:.4;filter:grayscale(25%);}
.jc-oos-badge{
  position:absolute;top:8px;left:8px;z-index:2;
  background:var(--ink);color:var(--white);
  font-family:'Space Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  padding:4px 8px;border-radius:6px;
}

.jc-pdp-oos-notice{
  background:#7A2E2A;color:var(--white);
  font-family:'Space Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  padding:9px 12px;border-radius:9px;margin-bottom:12px;text-align:center;
}

/* Logo real en el footer */
.jc-footer-logo{display:block;margin:0 auto 10px;height:30px;width:auto;}

/* Logos de pago a color, pequeños y uniformes */
.jc-footer .cards{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;}
.jc-footer .cards img{height:26px;width:auto;display:block;}

/* Íconos discretos para beneficios */
.jc-benefit .ic{width:22px;height:22px;margin:0 auto 6px;color:var(--gold-deep);}
.jc-benefit .ic svg{width:100%;height:100%;}

.jc-mp-badge{
  display:inline-flex;align-items:center;justify-content:center;
  height:24px;padding:0 9px;border-radius:5px;
  background:#00B1EA;color:#FFFFFF;
  font-family:'Inter',sans-serif;font-weight:700;font-size:10px;letter-spacing:.01em;
  white-space:nowrap;
}

.jc-amex-badge{
  display:inline-flex;align-items:center;justify-content:center;
  height:24px;padding:0 9px;border-radius:5px;
  background:#006FCF;color:#FFFFFF;
  font-family:'Inter',sans-serif;font-weight:700;font-size:10px;letter-spacing:.01em;
  white-space:nowrap;
}

/* Añadir al carrito + cantidad, en una misma fila (PDP) */
.jc-buy-card form.cart{display:flex;gap:10px;align-items:stretch;margin:0 0 12px;}
.jc-buy-card form.cart .quantity{flex:0 0 68px;margin:0;}
.jc-buy-card form.cart .quantity .qty{
  width:100%;height:100%;min-height:48px;box-sizing:border-box;
  border:1px solid var(--line);border-radius:11px;
  text-align:center;background:var(--white);color:var(--ink);
  font-family:'Inter',sans-serif;font-weight:700;font-size:15px;
}
.jc-buy-card form.cart .single_add_to_cart_button{
  flex:1;min-height:48px;box-sizing:border-box;
  border:none;border-radius:11px;
  background:var(--gold-action);color:var(--ink);
  font-family:'Inter',sans-serif;font-weight:700;font-size:13px;letter-spacing:.02em;text-transform:uppercase;
  cursor:pointer;
}
.jc-buy-card form.cart .single_add_to_cart_button:hover{
  background:var(--gold-hover) !important;color:var(--ink) !important;
}

/* Páginas legales/genéricas */
.jc-legal-page{max-width:680px;margin:0 auto;padding:40px 18px 60px;}
body.jc-is-checkout .jc-legal-page{max-width:1440px;}
body.woocommerce-cart .jc-legal-page{max-width:1300px;}
body.page-id-32 .jc-legal-page{max-width:1300px;}
.jc-legal-page h1{font-family:'Inter',sans-serif;font-weight:900;font-size:24px;color:var(--ink);margin:0 0 24px;}
.jc-legal-content{font-size:13px;color:var(--ink-soft);line-height:1.7;}
.jc-legal-content h2{font-family:'Inter',sans-serif;font-weight:800;font-size:15px;color:var(--ink);margin:28px 0 10px;}
.jc-legal-content h2:first-child{margin-top:0;}
.jc-legal-content p{margin:0 0 14px;}
.jc-legal-content ul{margin:0 0 14px;padding-left:20px;}
.jc-legal-content li{margin-bottom:6px;}

.jc-cart-empty{text-align:center;padding:40px 18px 60px;}
.jc-cart-empty-icon{width:56px;height:56px;margin:0 auto 18px;color:var(--gold-deep);}
.jc-cart-empty-icon svg{width:100%;height:100%;}
.jc-cart-empty h2{font-family:'Inter',sans-serif;font-weight:900;font-size:20px;color:var(--ink);margin:0 0 8px;}
.jc-cart-empty p{font-size:13px;color:var(--ink-mute);margin:0 0 24px;max-width:340px;margin-left:auto;margin-right:auto;}


.woocommerce-error,.woocommerce-message,.woocommerce-info{
  list-style:none;margin:14px 18px;padding:12px 14px;border-radius:10px;
  font-family:'Inter',sans-serif;font-size:13px;line-height:1.5;
}
.woocommerce-error li,.woocommerce-message li,.woocommerce-info li{list-style:none;margin:0;padding-left:0!important;}
.woocommerce-error li::before,.woocommerce-message li::before,.woocommerce-info li::before{display:none!important;content:none!important;}
.woocommerce-error li + li,.woocommerce-message li + li,.woocommerce-info li + li{margin-top:8px;}
.woocommerce-error{background:rgba(122,46,42,.08);border:1px solid rgba(122,46,42,.25);color:#7A2E2A;}
.woocommerce-message{background:rgba(224,192,136,.15);border:1px solid var(--gold-line);color:var(--ink);}
.woocommerce-info{background:var(--cream-deep);border:1px solid var(--line);color:var(--ink-soft);}

/* Seccion comparativa "Por que elegir Johnny Caps" (Home) */
.jc-compare-home{padding:40px 0;background:var(--cream-deep);}
.jc-compare-intro{padding:0 18px;margin:0 0 20px;font-size:13px;color:var(--ink-mute);line-height:1.5;}
.jc-compare-table{position:relative;margin:0 18px;background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.jc-compare-cols{display:grid;grid-template-columns:1fr 68px 68px;align-items:end;padding:14px 12px 10px;}
.jc-compare-col-label{font-family:'Space Mono',monospace;font-size:9.5px;letter-spacing:.02em;text-align:center;line-height:1.3;color:var(--ink-mute);padding:6px 4px;border-radius:8px;}
.jc-compare-col-label.us{color:var(--gold-deep);font-weight:700;background:rgba(224,192,136,.18);}
.jc-compare-row{display:grid;grid-template-columns:1fr 68px 68px;align-items:center;padding:13px 12px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink);}
.jc-compare-check{text-align:center;font-size:16px;font-weight:900;padding:4px 0;}
.jc-compare-check.us{color:var(--gold-deep);background:rgba(224,192,136,.18);}
.jc-compare-check.them{color:var(--ink-mute);}

/* Pagina de Favoritos (plantilla nativa de YITH, solo CSS, sin sobrescribir su plantilla) */
.wishlist-title-container{padding:0 18px;margin-bottom:16px;}
.wishlist-title-with-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.wishlist-title h2{font-family:'Inter',sans-serif;font-weight:900;font-size:20px;color:var(--ink);margin:0;}
.wishlist-title .show-title-form{
  font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.05em;text-transform:uppercase;
  color:var(--gold-deep);text-decoration:none;display:inline-flex;align-items:center;gap:4px;
}
.wishlist-title .show-title-form svg{width:12px;height:12px;}
.hidden-title-form{padding:0 18px;margin-bottom:16px;}
.hidden-title-form input[type="text"]{
  padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-family:'Inter',sans-serif;
  font-size:13px;background:var(--cream);color:var(--ink);
}
.edit-title-buttons{display:inline-flex;gap:8px;margin-left:8px;}
.edit-title-buttons a{
  width:30px;height:30px;border-radius:50%;border:1px solid var(--line);
  display:inline-flex;align-items:center;justify-content:center;color:var(--ink-mute);
}
.edit-title-buttons a svg{width:14px;height:14px;}

ul.wishlist_table{list-style:none;margin:0;padding:0 18px;display:flex;flex-direction:column;gap:10px;}
ul.wishlist_table li{list-style:none;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px;}
.item-wrapper{display:flex;gap:11px;align-items:flex-start;}
.product-thumbnail img{width:84px;height:84px;border-radius:13px;object-fit:contain;background:var(--white);border:1px solid var(--line);padding:4px;box-sizing:border-box;}

/* Version "traditional" (tabla con columnas) de la lista de favoritos, que
   YITH a veces sirve en vez de la version de tarjetas moviles */
table.wishlist_table.traditional{width:100%;border-collapse:collapse;}
table.wishlist_table.traditional thead{display:none;}
table.wishlist_table.traditional tbody tr{
  display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:10px;
  background:var(--white);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;
}
table.wishlist_table.traditional td{border:none;padding:0;}
table.wishlist_table.traditional td.product-remove{order:99;}
table.wishlist_table.traditional td.product-remove a{
  width:30px;height:30px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--ink-mute);text-decoration:none;
}
table.wishlist_table.traditional td.product-thumbnail:empty{display:none;}
table.wishlist_table.traditional td.product-name{
  flex:1;min-width:120px;font-family:'Inter',sans-serif;font-size:18.5px;font-weight:600;
}
table.wishlist_table.traditional td.product-name a{color:var(--ink);text-decoration:none;}
table.wishlist_table.traditional td.product-price{
  font-family:'Space Mono',monospace;font-size:18.5px;font-weight:700;color:var(--gold-deep);
}
table.wishlist_table.traditional td.product-stock-status{font-size:16.5px;}
table.wishlist_table.traditional td.product-stock-status .wishlist-in-stock{color:var(--gold-deep);font-weight:600;}
table.wishlist_table.traditional td.product-add-to-cart a{
  width:32px;height:32px;border-radius:50%;background:var(--gold-action);color:var(--ink);
  display:flex;align-items:center;justify-content:center;text-decoration:none;
  text-indent:-9999px;overflow:hidden;position:relative;
}
table.wishlist_table.traditional td.product-add-to-cart a::after{
  content:'+';position:absolute;top:0;left:0;width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;text-indent:0;
  font-family:'Inter',sans-serif;font-weight:900;font-size:16px;
}
.item-details{flex:1;min-width:0;}
.product-name h3{margin:0 0 4px;font-size:18.5px;font-weight:600;}
.product-name h3 a{color:var(--ink);text-decoration:none;}
.item-details-table{border-collapse:collapse;}
.item-details-table .label{display:none;}
.item-details-table .value{font-family:'Space Mono',monospace;color:var(--gold-deep);font-weight:700;font-size:18.5px;}

.additional-info-wrapper{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.additional-info{border-collapse:collapse;}
.additional-info .label{color:var(--ink-mute);font-size:16.5px;margin-right:4px;}
.additional-info .value{font-size:16.5px;}
.additional-info .wishlist-in-stock{color:var(--gold-deep);font-weight:600;}
.product-add-to-cart a.jc-quick-add{
  position:static!important;width:32px;height:32px;border-radius:50%;
  background:var(--gold-action)!important;color:var(--ink)!important;
  display:flex!important;align-items:center;justify-content:center;
  font-family:'Inter',sans-serif;font-weight:900;font-size:16px;text-decoration:none;
  text-indent:-9999px;overflow:hidden;position:relative!important;
}
.product-add-to-cart a.jc-quick-add::after{
  content:'+';position:absolute;top:0;left:0;width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;text-indent:0;
}
.product-remove a.remove_from_wishlist{
  width:30px;height:30px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--ink-mute);text-decoration:none;
}
.product-remove a.remove_from_wishlist:hover{border-color:var(--gold-deep);color:var(--gold-deep);}

.yith_wcwl_wishlist_footer{padding:16px 18px 0;}
.yith-wcwl-share-title{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 10px;}
.yith-wcwl-share ul{list-style:none;display:flex;gap:10px;padding:0;margin:0;}
.yith-wcwl-share li{list-style:none;}
.yith-wcwl-share a{
  width:30px;height:30px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--ink-mute);text-decoration:none;
}
.yith-wcwl-share a:hover{border-color:var(--gold-deep);color:var(--gold-deep);}
.yith_wcwl_wishlist_footer{margin-bottom:40px;}

.jc-social-extra{
  width:30px;height:30px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--ink-mute);
  text-decoration:none;
}
.jc-social-extra:hover{border-color:var(--gold-deep);color:var(--gold-deep);}
.jc-social-extra svg{width:12px;height:12px;}

.jc-login-card{
  margin:0 18px 40px;max-width:420px;background:var(--white);border:1px solid var(--line);
  border-radius:16px;padding:24px 20px;
}
.jc-login-card h2{font-family:'Inter',sans-serif;font-weight:900;font-size:18px;color:var(--ink);margin:0 0 18px;}
@media (min-width:1024px){
  .jc-login-card{margin:40px auto;padding:36px 32px;}
}
.jc-login-row{margin-bottom:14px;}
.jc-login-row label{
  display:block;font-family:'Space Mono',monospace;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-mute);margin-bottom:5px;
}
.jc-login-row .required{color:var(--gold-deep);}
.jc-login-row input.input-text{
  width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid var(--line);border-radius:9px;
  font-family:'Inter',sans-serif;font-size:16px;background:var(--cream);color:var(--ink);
}
.jc-login-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px;flex-wrap:wrap;}
.jc-login-remember{display:flex;align-items:center;gap:6px;font-size:15px;color:var(--ink-mute);cursor:pointer;}
.jc-login-lost{margin:14px 0 0;font-size:15px;}
.jc-login-lost a{color:var(--gold-deep);}
.jc-login-divider{
  display:flex;align-items:center;gap:10px;max-width:420px;margin:24px 18px 16px;
  font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);
}
.jc-login-divider::before,.jc-login-divider::after{content:"";flex:1;height:1px;background:var(--line);}
.jc-login-note{font-size:11.5px;color:var(--ink-mute);margin:-4px 0 14px;}
.jc-login-switch{
  display:flex;align-items:center;justify-content:center;gap:6px;margin-top:20px;padding-top:16px;
  border-top:1px solid var(--line);font-size:13px;color:var(--ink-mute);
}
.jc-login-switch button{
  border:none;background:none;padding:0;font-family:'Inter',sans-serif;font-weight:700;font-size:13px;
  color:var(--gold-deep);text-decoration:underline;cursor:pointer;
}
