:root {
  --ronin-site-red: #e31842;
  --ronin-site-red-dark: #a70d2c;
  --ronin-site-green: #25d366;
  --ronin-site-ink: #090b0f;
  --ronin-site-panel: #12161d;
  --ronin-site-text: #f5f7fa;
  --ronin-site-muted: #b9c1cc;
  --ronin-site-line: rgba(255,255,255,.13);
  --ronin-site-radius: 20px;
  --ronin-site-shell: min(1240px, calc(100% - 40px));
}

body.ronin-site-design { overflow-x: hidden; }
body.ronin-site-design .site-header {
  border-bottom: 1px solid var(--ronin-site-line);
  color: var(--ronin-site-text);
  background: rgba(6,8,12,.98);
}
body.ronin-site-design .site-header :is(.site-title a,.site-description,.menu-toggle,.main-navigation a) { color: var(--ronin-site-text); }
body.ronin-site-design .site-header .site-search input[type="search"] {
  min-height: 46px;
  border: 1px solid var(--ronin-site-line);
  border-radius: 999px;
  color: var(--ronin-site-text);
  background: #151922;
}
body.ronin-site-design .main-navigation ul.menu > li > a,
body.ronin-site-design .main-navigation ul.nav-menu > li > a {
  padding-inline: .9rem;
  font-weight: 750;
}
body.ronin-site-design .main-navigation ul.menu > li > a:hover,
body.ronin-site-design .main-navigation ul.nav-menu > li > a:hover { color: #ff4d6f; }
.ronin-submenu-toggle { display: none; }
.ronin-mobile-menu,
.ronin-mobile-menu__close,
.ronin-mobile-actions { display:none; }

.ronin-quicknav {
  position: relative;
  z-index: 50;
  border-bottom: 1px solid rgba(255,255,255,.1);
  color: #fff;
  background: linear-gradient(90deg,#11151c,#090b0f 55%,#190812);
}
.ronin-quicknav__close { display: none; }
.ronin-quicknav__inner {
  width: var(--ronin-site-shell);
  min-height: 50px;
  margin-inline: auto;
  display: flex;
  gap: .3rem;
  align-items: center;
  overflow-x: auto;
  scrollbar-width: thin;
}
.ronin-quicknav a {
  flex: 0 0 auto;
  padding: .58rem .78rem;
  border-radius: 999px;
  color: #eef1f5 !important;
  font-size: .82rem;
  font-weight: 750;
  line-height: 1;
  text-decoration: none !important;
}
.ronin-quicknav a:is(:hover,:focus-visible) { background: rgba(255,255,255,.1); }
.ronin-quicknav .ronin-quicknav__whatsapp { margin-left: auto; color: #07150c !important; background: var(--ronin-site-green); }

body.ronin-category-design .site-content {
  min-height: 70vh;
  color: var(--ronin-site-text);
  background: radial-gradient(circle at 85% 0,rgba(227,24,66,.17),transparent 28rem),linear-gradient(145deg,#050608,#10141b);
}
body.ronin-category-design .site-content > .col-full { width: var(--ronin-site-shell); max-width: none; padding-block: clamp(1.2rem,4vw,3rem); }
body.ronin-category-design .content-area { width: 100%; margin: 0; }
body.ronin-category-design .widget-area { display: none; }
.ronin-category-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: .7rem 1.5rem;
  align-items: end;
  margin: 0 0 1.5rem;
  padding: clamp(1.25rem,4vw,3rem);
  border: 1px solid var(--ronin-site-line);
  border-radius: clamp(20px,3vw,32px);
  background: linear-gradient(135deg,rgba(28,33,43,.96),rgba(10,12,17,.96));
  box-shadow: 0 24px 70px rgba(0,0,0,.3);
}
.ronin-category-hero::after { content:""; position:absolute; width:240px; height:240px; right:-90px; top:-120px; border-radius:50%; background:rgba(227,24,66,.2); filter:blur(2px); }
.ronin-category-hero__eyebrow { grid-column: 1/-1; margin: 0; color: #ff5575; font-size: .78rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.ronin-category-hero h1 { position: relative; z-index: 1; margin: 0; color: #fff; font-size: clamp(2.3rem,6vw,5rem); font-weight: 900; line-height: .95; letter-spacing: -.04em; }
.ronin-category-hero > p:not(.ronin-category-hero__eyebrow) { grid-column: 1; margin: .25rem 0 0; color: var(--ronin-site-muted); }
.ronin-category-hero > a { position:relative; z-index:1; grid-column:2; grid-row:2/4; align-self:center; padding:.85rem 1.1rem; border-radius:999px; color:#fff; background:var(--ronin-site-red); font-weight:850; text-decoration:none; }
body.ronin-category-design .term-description { max-width: 75ch; color: var(--ronin-site-muted); }
body.ronin-category-design .woocommerce-result-count { color: var(--ronin-site-muted); }
body.ronin-category-design .woocommerce-ordering select { min-height: 44px; border: 1px solid var(--ronin-site-line); border-radius: 12px; color: #fff; background: #171b22; }
body.ronin-category-design .woocommerce ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(.8rem,2vw,1.35rem); }
body.ronin-category-design .woocommerce ul.products::before,
body.ronin-category-design .woocommerce ul.products::after { display:none; }
body.ronin-category-design .woocommerce ul.products li.product {
  width:auto !important;
  margin:0 !important;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding: .85rem;
  border:1px solid var(--ronin-site-line);
  border-radius:var(--ronin-site-radius);
  color:#e8ebf0;
  background:linear-gradient(160deg,#191e27,#101319);
  box-shadow:0 15px 35px rgba(0,0,0,.2);
}
body.ronin-category-design .woocommerce ul.products li.product .product-outer {
  width:100% !important;
  height:100%;
  display:flex !important;
  flex-direction:column !important;
  gap:.7rem !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
body.ronin-category-design .woocommerce ul.products li.product .product-image,
body.ronin-category-design .woocommerce ul.products li.product .product-summary {
  width:100% !important;
  max-width:none !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  background:transparent !important;
}
body.ronin-category-design .woocommerce ul.products li.product .product-summary {
  height:100%;
  display:flex;
  flex-direction:column;
}
body.ronin-category-design .woocommerce ul.products li.product > a,
body.ronin-category-design .woocommerce ul.products li.product .woocommerce-LoopProduct-link {
  width: 100% !important;
  display: flex !important;
  flex: 1 1 auto;
  flex-direction: column !important;
  color: #fff !important;
  background: transparent !important;
  text-decoration: none !important;
}
body.ronin-category-design .woocommerce ul.products li.product img { aspect-ratio:1; object-fit:contain; border-radius:14px; background:#fff; }
body.ronin-category-design .woocommerce-loop-product__title { width:100% !important; min-height:2.7em; margin:.8rem 0 .45rem !important; padding:0 !important; color:#fff !important; background:transparent !important; font-size:1rem; line-height:1.35; overflow-wrap:anywhere; }
body.ronin-category-design .woocommerce ul.products li.product .price { margin-top:auto; color:#ff4365; font-size:1.05rem; font-weight:900; }
body.ronin-category-design .woocommerce ul.products li.product .button { width:100% !important; min-height:44px; display:flex !important; align-items:center; justify-content:center; margin-top:.65rem !important; border-radius:999px !important; color:#fff !important; background:var(--ronin-site-red) !important; text-align:center; }
body.ronin-category-design .woocommerce nav.woocommerce-pagination ul,
body.ronin-category-design .woocommerce nav.woocommerce-pagination ul li { border-color:var(--ronin-site-line); }
body.ronin-category-design .woocommerce nav.woocommerce-pagination ul li :is(a,span) { color:#fff !important; background:#151922 !important; }
body.ronin-category-design .woocommerce nav.woocommerce-pagination ul li span.current { color:#071015 !important; background:#fff !important; }

body.ronin-page-design .site-content {
  min-height: 70vh;
  padding-block: clamp(1.2rem,4vw,3.5rem);
  color: var(--ronin-site-text);
  background: radial-gradient(circle at 80% 0,rgba(227,24,66,.15),transparent 26rem),linear-gradient(145deg,#06080b,#11151c);
}
body.ronin-page-design .site-content > .col-full { width:min(1040px,calc(100% - 40px)); max-width:none; }
body.ronin-page-design .content-area { width:100%; margin:0; }
body.ronin-page-design .widget-area { display:none; }
body.ronin-page-design article.page { padding:clamp(1.1rem,4vw,3rem); border:1px solid var(--ronin-site-line); border-radius:clamp(20px,3vw,30px); background:rgba(17,21,28,.96); box-shadow:0 24px 70px rgba(0,0,0,.3); }
body.ronin-page-design :is(.entry-title,.entry-content h1,.entry-content h2,.entry-content h3) { color:#fff; text-wrap:balance; }
body.ronin-page-design .entry-title { font-size:clamp(2.3rem,6vw,4.8rem); line-height:.98; letter-spacing:-.04em; }
body.ronin-page-design .entry-content { color:#d5dae1; font-size:clamp(1rem,1.5vw,1.1rem); line-height:1.75; }
body.ronin-page-design .entry-content a { color:#ff5b79; }
body.ronin-page-design .entry-content :is(blockquote,.wp-block-group,.wp-block-columns) { border-color:var(--ronin-site-line); }

body.ronin-site-design .site-footer { border-top:1px solid var(--ronin-site-line); color:#e8edf4 !important; background:#07090d; }
body.ronin-site-design .site-footer :is(h1,h2,h3,h4,h5,h6,.widget-title,.widgettitle,strong,b,address,dt,dd,p,li,span,label) { color:#e8edf4 !important; }
body.ronin-site-design .site-footer :is(a,a:visited) { color:#fff !important; text-decoration-color:rgba(255,255,255,.55) !important; }
body.ronin-site-design .site-footer a:is(:hover,:focus-visible) { color:#ff5575; }
.ronin-menu-backdrop { display:none; }

@media (max-width: 980px) {
  body.ronin-category-design .woocommerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 767px) {
  :root { --ronin-site-shell: calc(100% - 20px); }
  body.ronin-site-design .site-header { padding-block:.65rem; }
  body.ronin-site-design .storefront-primary-navigation .col-full { padding-inline:10px !important; }
  body.ronin-site-design .main-navigation { position:static; }
  body.ronin-site-design .menu-toggle {
    position:relative;
    z-index:10003;
    width:48px;
    min-height:48px;
    padding:0 !important;
    border:1px solid var(--ronin-site-line);
    border-radius:14px;
    color:#ff5575 !important;
    background:
      linear-gradient(#ff5575,#ff5575) center calc(50% - 7px)/22px 2px no-repeat,
      linear-gradient(#ff5575,#ff5575) center/22px 2px no-repeat,
      linear-gradient(#ff5575,#ff5575) center calc(50% + 7px)/22px 2px no-repeat,
      #11151c !important;
    font-size:0 !important;
    line-height:1;
  }
  body.ronin-site-design .menu-toggle::before,
  body.ronin-site-design .menu-toggle::after,
  body.ronin-site-design .menu-toggle span::before { content:none !important; display:none !important; box-shadow:none !important; }
  body.ronin-site-design .main-navigation .primary-navigation,
  body.ronin-site-design .main-navigation > .menu,
  body.ronin-site-design .main-navigation .handheld-navigation { display:none !important; }
  .ronin-mobile-menu {
    position:fixed;
    z-index:10002;
    top:0;
    right:0;
    bottom:0;
    width:min(86vw,360px);
    display:block !important;
    overflow-y:auto;
    margin:0;
    padding:0;
    border:0;
    transform:translateX(105%);
    transition:transform .25s ease;
    color:#fff;
    background:linear-gradient(160deg,#121720,#080a0e);
    box-shadow:-24px 0 60px rgba(0,0,0,.45);
  }
  body.ronin-menu-open { overflow:hidden; }
  body.ronin-menu-open .ronin-mobile-menu { transform:translateX(0); }
  .ronin-mobile-menu__header {
    position:sticky;
    z-index:5;
    top:0;
    min-height:68px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:.75rem 1rem;
    border-bottom:1px solid rgba(255,255,255,.12);
    color:#fff;
    background:#0d1117;
  }
  .ronin-mobile-menu__header strong { color:#fff; font-size:1.05rem; }
  .ronin-mobile-menu > ul.ronin-mobile-menu__list {
    width:100%;
    display:block !important;
    margin:0;
    padding:.6rem 1rem 1rem;
    list-style:none;
  }
  .ronin-mobile-categories {
    margin:.2rem 1rem 1rem;
    padding:1rem;
    border:1px solid rgba(255,255,255,.12);
    border-radius:16px;
    background:#11161e;
  }
  .ronin-mobile-categories h2 {
    margin:0 0 .7rem !important;
    color:#fff !important;
    font-size:.98rem !important;
    font-weight:850 !important;
    line-height:1.25 !important;
  }
  .ronin-mobile-categories ul {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.5rem;
    margin:0;
    padding:0;
    list-style:none;
  }
  .ronin-mobile-categories li {
    min-width:0;
    margin:0;
    border:0;
  }
  .ronin-mobile-categories li > a {
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.4rem;
    padding:.65rem .7rem !important;
    border:1px solid rgba(255,255,255,.12);
    border-radius:11px;
    color:#fff !important;
    background:#191f28;
    font-size:.82rem;
    font-weight:750;
    line-height:1.2;
  }
  .ronin-mobile-categories li > a span { min-width:0; overflow-wrap:anywhere; }
  .ronin-mobile-categories li > a small {
    flex:0 0 auto;
    min-width:24px;
    padding:.18rem .35rem;
    border-radius:999px;
    color:#07150c;
    background:var(--ronin-site-green);
    font-size:.68rem;
    font-weight:900;
    text-align:center;
  }
  .ronin-mobile-menu li {
    position:relative;
    width:100%;
    display:block;
    float:none;
    margin:0;
    border-bottom:1px solid rgba(255,255,255,.1);
    list-style:none;
  }
  .ronin-mobile-menu li > a {
    width:100%;
    display:block;
    padding:.9rem 3.25rem .9rem .5rem !important;
    color:#fff !important;
    font-size:.96rem;
    line-height:1.3;
    text-decoration:none !important;
  }
  .ronin-mobile-menu .sub-menu {
    position:static;
    width:100%;
    display:none !important;
    float:none;
    margin:0 0 .65rem;
    padding:0 0 0 .75rem;
    border-left:2px solid var(--ronin-site-red);
    background:transparent;
    box-shadow:none;
    list-style:none;
  }
  .ronin-mobile-menu .ronin-submenu-open > .sub-menu { display:block !important; }
  .ronin-mobile-menu .sub-menu a { color:#dce2ea !important; font-size:.9rem; }
  .ronin-mobile-menu .ronin-submenu-toggle {
    position:absolute;
    z-index:3;
    top:.4rem;
    right:.15rem;
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid var(--ronin-site-line);
    border-radius:10px;
    color:#fff;
    background:#1b2029;
  }
  .ronin-mobile-menu__close {
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid var(--ronin-site-line);
    border-radius:12px;
    color:#fff;
    background:#1b2029;
    font-size:1.65rem;
    line-height:1;
  }
  .ronin-mobile-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.55rem;
    margin:0 1rem 2rem;
  }
  .ronin-mobile-actions a {
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:.65rem .7rem;
    border:1px solid var(--ronin-site-line);
    border-radius:12px;
    color:#fff !important;
    background:#171b22;
    font-size:.88rem;
    font-weight:750;
    line-height:1.25;
    text-align:center;
    text-decoration:none;
  }
  .ronin-mobile-actions a:last-child { color:#07150c !important; background:var(--ronin-site-green); }
  .ronin-quicknav { display:none !important; }
  .ronin-menu-backdrop { position:fixed; z-index:10001; inset:0; width:100%; height:100%; border:0; opacity:0; pointer-events:none; display:block; background:rgba(0,0,0,.65); transition:opacity .2s ease; }
  body.ronin-menu-open .ronin-menu-backdrop { opacity:1; pointer-events:auto; }
  .ronin-category-hero { display:block; }
  .ronin-category-hero h1 { margin-bottom:.65rem; }
  .ronin-category-hero > a { display:inline-flex; margin-top:.8rem; }
  body.ronin-category-design .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.ronin-category-design .woocommerce ul.products li.product { padding:.65rem; border-radius:15px; }
  body.ronin-category-design .woocommerce ul.products li.product .product-outer { flex-direction:column !important; }
  body.ronin-category-design .woocommerce ul.products li.product .product-image,
  body.ronin-category-design .woocommerce ul.products li.product .product-summary { flex:0 0 auto !important; width:100% !important; }
  body.ronin-category-design .woocommerce-loop-product__title { font-size:.86rem; }
}

@media (max-width: 430px) {
  body.ronin-category-design .woocommerce ul.products { grid-template-columns:1fr; }
  body.ronin-category-design .woocommerce ul.products li.product { display:flex !important; width:100% !important; min-height:0 !important; }
  body.ronin-category-design .woocommerce ul.products li.product img { width:100% !important; height:auto !important; max-height:none !important; margin:0 0 .7rem !important; object-fit:contain !important; }
  body.ronin-category-design .woocommerce-loop-product__title { min-height:0; font-size:1rem; }
}

/* Catálogo 3.7.8: neutraliza el diseño 48/52 de content-product.php. */
body.ronin-category-design .ronin-category-hero {
  width:100%;
  max-width:980px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0 auto 2rem;
  text-align:center;
}
body.ronin-category-design .ronin-category-hero > * { max-width:760px; }
body.ronin-category-design .ronin-category-hero > a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:.55rem;
  color:#06150b !important;
  background:#25d366 !important;
}
body.ronin-category-design .storefront-sorting {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:.65rem 1rem !important;
  align-items:center !important;
  margin:0 0 .75rem !important;
  padding:0 !important;
}
body.ronin-category-design :is(.woocommerce-result-count,.woocommerce-ordering) {
  float:none !important;
  margin:0 !important;
}
body.ronin-category-design .storefront-sorting .woocommerce-pagination {
  grid-column:1/-1;
  float:none !important;
  margin:.25rem 0 0 !important;
  padding:0 !important;
}
body.ronin-category-design ul.products {
  clear:both;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1.25rem !important;
  margin:.5rem 0 0 !important;
  padding:0 !important;
}
body.ronin-category-design ul.products::before,
body.ronin-category-design ul.products::after { display:none !important; }
body.ronin-category-design ul.products li.product {
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  overflow:hidden !important;
  display:flex !important;
  float:none !important;
  flex-direction:column !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:18px !important;
  color:#fff !important;
  background:#11161e !important;
  box-shadow:0 16px 38px rgba(0,0,0,.28) !important;
}
body.ronin-category-design ul.products li.product .product-outer {
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  gap:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
body.ronin-category-design ul.products li.product .product-image {
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:.8rem !important;
  line-height:normal !important;
  background:#fff !important;
}
body.ronin-category-design ul.products li.product .product-image a {
  width:100% !important;
  display:block !important;
  color:inherit !important;
}
body.ronin-category-design ul.products li.product .product-image img {
  width:100% !important;
  height:auto !important;
  aspect-ratio:4/3 !important;
  display:block !important;
  margin:0 !important;
  object-fit:contain !important;
  background:#fff !important;
}
body.ronin-category-design ul.products li.product .product-summary {
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:100% !important;
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  align-items:stretch !important;
  margin:0 !important;
  padding:1rem !important;
  color:#fff !important;
  background:linear-gradient(160deg,#171c25,#0e1218) !important;
  text-align:left !important;
}
body.ronin-category-design ul.products li.product :is(.woocommerce-loop-product__title,h2.woocommerce-loop-product__title) {
  width:100% !important;
  min-height:2.7em !important;
  display:block !important;
  margin:0 0 .75rem !important;
  padding:0 !important;
  color:#fff !important;
  background:transparent !important;
  font-size:1.03rem !important;
  font-weight:800 !important;
  line-height:1.35 !important;
  text-align:left !important;
  overflow-wrap:anywhere !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.ronin-category-design ul.products li.product .price {
  width:100% !important;
  display:block !important;
  margin:auto 0 .75rem !important;
  color:#ff4969 !important;
  background:transparent !important;
  font-size:1.15rem !important;
  font-weight:900 !important;
  text-align:left !important;
}
body.ronin-category-design ul.products li.product .price del { color:#aeb6c2 !important; opacity:.85; }
body.ronin-category-design ul.products li.product .price ins { color:#ff4969 !important; text-decoration:none !important; }
body.ronin-category-design ul.products li.product .view-details-button.ronin-product-whatsapp {
  width:100% !important;
  min-height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:.75rem 1rem !important;
  border:0 !important;
  border-radius:999px !important;
  color:#06150b !important;
  background:#25d366 !important;
  box-shadow:none !important;
  font-size:.9rem !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  text-align:center !important;
  text-decoration:none !important;
}
body.ronin-category-design ul.products li.product .view-details-button.ronin-product-whatsapp::before {
  content:none !important;
  display:none !important;
  animation:none !important;
}
body.ronin-category-design ul.products li.product .onsale {
  z-index:3;
  border:0 !important;
  border-radius:999px !important;
  color:#fff !important;
  background:#e31842 !important;
}
.ronin-scroll-cue { display:none; }
.ronin-mobile-product-title { display:none; }

/* Paginación de categorías sobre fondos oscuros. */
body.ronin-category-design nav.woocommerce-pagination {
  width:100%;
  float:none !important;
  margin:.35rem 0 !important;
  text-align:left !important;
}
body.ronin-category-design nav.woocommerce-pagination ul.page-numbers {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:.4rem !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
body.ronin-category-design nav.woocommerce-pagination ul.page-numbers li {
  margin:0 !important;
  border:0 !important;
}
body.ronin-category-design nav.woocommerce-pagination ul.page-numbers li :is(a,span) {
  min-width:40px;
  min-height:40px;
  display:grid !important;
  place-items:center;
  padding:.45rem !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:10px !important;
  color:#fff !important;
  background:#171c25 !important;
  font-size:.88rem !important;
  font-weight:850 !important;
  line-height:1 !important;
  text-decoration:none !important;
}
body.ronin-category-design nav.woocommerce-pagination ul.page-numbers li span.current {
  color:#071015 !important;
  background:#fff !important;
}

/* Producto individual: contraste y contenido inferior coherentes. */
body.single-product.ronin-site-design .site-main :is(h1,h2,h3,h4,h5,h6) { color:#fff !important; }
body.single-product.ronin-site-design .site-main :is(.entry-content,.woocommerce-Tabs-panel) { color:#d7dde5 !important; }
body.single-product.ronin-site-design .site-main details {
  margin:.65rem 0;
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  color:#d7dde5;
  background:#151a22;
}
body.single-product.ronin-site-design .site-main details > summary {
  padding:.8rem .9rem;
  color:#fff !important;
  background:#151a22 !important;
  font-weight:850;
  cursor:pointer;
}
body.single-product.ronin-site-design .site-main details > :not(summary) { padding-inline:.9rem; }

/* Relacionados: no heredar la división 48/52 del tema hijo. */
body.single-product.ronin-site-design :is(.related.products,.upsells.products) { margin-top:2rem !important; }
body.single-product.ronin-site-design :is(.related.products,.upsells.products) > h2 {
  margin:0 0 1rem !important;
  color:#fff !important;
  font-size:clamp(1.75rem,5vw,2.7rem) !important;
  line-height:1.05 !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) ul.products li.product {
  overflow:hidden !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.13) !important;
  color:#fff !important;
  background:#11161e !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .product-outer {
  width:100% !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .product-image,
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .product-summary {
  width:100% !important;
  max-width:none !important;
  flex:0 0 auto !important;
  margin:0 !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .product-image {
  padding:.5rem !important;
  background:#fff !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .product-image img {
  width:100% !important;
  height:auto !important;
  aspect-ratio:1 !important;
  margin:0 !important;
  object-fit:contain !important;
  background:#fff !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .product-summary {
  height:100% !important;
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  padding:.75rem !important;
  color:#fff !important;
  background:#151a22 !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .woocommerce-loop-product__title {
  min-height:3.6em !important;
  margin:0 0 .5rem !important;
  color:#fff !important;
  background:transparent !important;
  font-size:.82rem !important;
  line-height:1.2 !important;
  text-align:left !important;
  overflow-wrap:anywhere !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .price {
  margin:auto 0 .5rem !important;
  color:#ff4969 !important;
  background:transparent !important;
  font-size:.95rem !important;
  text-align:left !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .price del { color:#aeb6c2 !important; }
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .price ins { color:#ff4969 !important; }
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .view-details-button.ronin-product-whatsapp {
  width:100% !important;
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:.55rem .45rem !important;
  border:0 !important;
  border-radius:11px !important;
  color:#06150b !important;
  background:#25d366 !important;
  font-size:.68rem !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  text-align:center !important;
  text-decoration:none !important;
}
body.single-product.ronin-site-design :is(.related.products,.upsells.products) .view-details-button.ronin-product-whatsapp::before {
  content:none !important;
  display:none !important;
  animation:none !important;
}

@media (max-width: 980px) {
  body.ronin-category-design ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}

@media (max-width: 560px) {
  body.ronin-category-design .site-content > .col-full { width:calc(100% - 20px) !important; }
  body.ronin-category-design .ronin-category-hero {
    margin-bottom:.85rem !important;
    padding:1rem .75rem !important;
    border-radius:18px !important;
  }
  body.ronin-category-design .ronin-category-hero__eyebrow {
    font-size:.68rem !important;
    letter-spacing:.1em !important;
  }
  body.ronin-category-design .ronin-category-hero h1 {
    width:100%;
    margin:.2rem 0 .45rem !important;
    font-size:clamp(1.65rem,8vw,2.35rem) !important;
    line-height:1.05 !important;
    text-align:center !important;
    overflow-wrap:anywhere;
  }
  body.ronin-category-design .ronin-category-hero > a {
    width:min(100%,250px);
    min-height:42px;
    margin-top:.25rem;
    padding:.65rem .8rem;
    font-size:.88rem;
  }
  body.ronin-category-design .storefront-sorting {
    grid-template-columns:1fr !important;
    gap:.6rem !important;
    margin-bottom:.45rem !important;
  }
  body.ronin-category-design .storefront-sorting .woocommerce-pagination { margin:0 !important; }
  body.ronin-category-design .woocommerce-result-count { font-size:.88rem !important; }
  body.ronin-category-design .woocommerce-ordering select { width:100%; font-size:.9rem; }
  body.ronin-category-design .site-main ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:.55rem !important;
    margin:.25rem 0 0 !important;
  }
  body.ronin-category-design ul.products li.product { border-radius:13px !important; }
  body.ronin-category-design ul.products li.product .product-image { padding:.35rem !important; }
  body.ronin-category-design ul.products li.product .product-image img { aspect-ratio:1/1 !important; }
  body.ronin-category-design ul.products li.product .product-summary { padding:.65rem !important; }
  body.ronin-category-design ul.products li.product :is(.woocommerce-loop-product__title,h2.woocommerce-loop-product__title) {
    min-height:3.6em !important;
    display:-webkit-box !important;
    margin-bottom:.45rem !important;
    overflow:hidden !important;
    font-size:.79rem !important;
    line-height:1.2 !important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
  }
  body.ronin-category-design ul.products li.product .price {
    margin:auto 0 .45rem !important;
    font-size:.92rem !important;
    line-height:1.2 !important;
  }
  body.ronin-category-design ul.products li.product .price ins { font-size:1rem !important; }
  body.ronin-category-design ul.products li.product .view-details-button.ronin-product-whatsapp {
    min-height:40px !important;
    padding:.55rem .35rem !important;
    border-radius:11px !important;
    font-size:.68rem !important;
    line-height:1.15 !important;
  }
  .ronin-scroll-cue {
    position:fixed;
    z-index:9998;
    right:12px;
    bottom:88px;
    min-height:42px;
    display:flex;
    align-items:center;
    gap:.35rem;
    padding:.55rem .7rem;
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    opacity:.92;
    color:#07150c;
    background:#25d366;
    box-shadow:0 10px 28px rgba(0,0,0,.35);
    font-size:.68rem;
    font-weight:900;
    line-height:1;
    transition:opacity .2s ease,transform .2s ease;
  }
  .ronin-scroll-cue span:last-child {
    font-size:1.15rem;
    animation:ronin-scroll-cue 1.2s ease-in-out infinite;
  }
  .ronin-scroll-cue--hidden { opacity:0; pointer-events:none; transform:translateY(8px); }
  @keyframes ronin-scroll-cue {
    0%,100% { transform:translateY(-2px); }
    50% { transform:translateY(3px); }
  }
}

@media (max-width: 700px) {
  body.single-product.ronin-site-design { overflow-x:hidden !important; }
  body.single-product.ronin-site-design .site-content > .col-full {
    width:100% !important;
    max-width:540px !important;
    margin-inline:auto !important;
    padding-inline:12px !important;
    padding-block:.8rem 3rem !important;
  }
  body.single-product.ronin-site-design :is(.content-area,.site-main) {
    width:100% !important;
    max-width:516px !important;
    float:none !important;
    margin-inline:auto !important;
    padding-inline:0 !important;
  }
  body.single-product.ronin-site-design .ronin-mobile-product-title {
    display:block;
    width:100% !important;
    max-width:500px !important;
    margin:0 auto .8rem !important;
    padding-inline:2px !important;
    color:#fff !important;
    font-size:clamp(1.55rem,7.5vw,2.3rem) !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    overflow-wrap:anywhere;
  }
  body.single-product.ronin-site-design .custom-mobile-layout,
  body.single-product.ronin-site-design .custom-mobile-layout > div {
    width:100% !important;
    max-width:500px !important;
    min-width:0 !important;
    margin-inline:auto !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout {
    display:flex !important;
    flex-direction:column !important;
    gap:.85rem !important;
    align-items:center !important;
    overflow:hidden !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout * { box-sizing:border-box; }
  body.single-product.ronin-site-design .custom-mobile-layout .product-title-area:empty { display:none !important; }
  body.single-product.ronin-site-design .custom-mobile-layout .product-image-area {
    display:flex !important;
    flex-direction:column !important;
    gap:.75rem !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery {
    width:min(100%,500px) !important;
    max-width:500px !important;
    overflow:hidden !important;
    margin-inline:auto !important;
    padding:.55rem !important;
    border-radius:16px !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery :is(.flex-viewport,figure,.woocommerce-product-gallery__wrapper,.woocommerce-product-gallery__image) {
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    margin:0 !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery__wrapper {
    display:flex !important;
    align-items:center !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery__image {
    flex:0 0 100% !important;
    float:none !important;
    place-items:center !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery__image > a {
    width:100% !important;
    min-height:0 !important;
    aspect-ratio:1 !important;
    display:grid !important;
    place-items:center !important;
    overflow:hidden !important;
    background:#fff !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery__image img:not(.zoomImg) {
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:340px !important;
    aspect-ratio:1 !important;
    display:block !important;
    margin:0 auto !important;
    object-fit:contain !important;
    object-position:center !important;
    background:#fff !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .woocommerce-product-gallery img.zoomImg { display:none !important; }
  body.single-product.ronin-site-design .custom-mobile-layout .flex-control-thumbs {
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:.35rem !important;
    margin-top:.5rem !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout .product-price-area,
  body.single-product.ronin-site-design .custom-mobile-layout .product-summary-area {
    color:#fff !important;
    background:transparent !important;
  }
  body.single-product.ronin-site-design .custom-mobile-layout :is(a,button,.button) { max-width:100% !important; }
  body.single-product.ronin-site-design .site-main > :is(h2,h3),
  body.single-product.ronin-site-design .site-main .entry-content > :is(h2,h3) {
    color:#fff !important;
    font-size:clamp(1.6rem,7vw,2.15rem) !important;
    line-height:1.08 !important;
  }
  body.single-product.ronin-site-design :is(.related.products,.upsells.products) > h2 {
    font-size:clamp(1.7rem,8vw,2.25rem) !important;
  }
  body.single-product.ronin-site-design :is(.related.products,.upsells.products) ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:.55rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; }
}

