:root{--bronze:#9b5a2e;--bronze-dark:#6d3d1d;--bronze-light:#c88a55;--ink:#251a14;--muted:#74675f;--cream:#f8f3ee;--line:#e6ddd5;--white:#fff;--wa:#25d366}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Montserrat,Arial,sans-serif;background:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(1180px,calc(100% - 32px));margin:auto}.topbar{padding:9px 16px;text-align:center;background:var(--bronze-dark);color:#fff;font-size:12px;letter-spacing:.04em}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-family:"Josefin Sans",Arial,sans-serif;font-size:25px;font-weight:700;letter-spacing:.12em}.brand img{width:52px;height:52px;object-fit:contain}.brand small{display:block;font:600 9px Montserrat,sans-serif;letter-spacing:.28em;color:var(--bronze)}.main-nav{display:flex;align-items:center;gap:30px;font-size:14px}.main-nav a:hover{color:var(--bronze)}.nav-wa{padding:11px 18px;border-radius:999px;background:var(--wa);color:#fff!important;font-weight:700}.menu-toggle{display:none;border:0;background:transparent;font-size:25px}.hero{min-height:650px;position:relative;display:grid;align-items:center;background-image:var(--hero-image);background-position:center;background-size:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,12,8,.74),rgba(20,12,8,.34) 52%,rgba(20,12,8,.08))}.hero-copy{position:relative;color:#fff;max-width:650px;margin-left:max(16px,calc((100vw - 1180px)/2));margin-right:16px}.eyebrow,.section-title span,.cta span,.category-hero span{font-size:12px;letter-spacing:.25em;font-weight:700}.hero h1,.section-title h2,.cta h2,.category-hero h1,.product-summary h1,.not-found h1{font-family:"Josefin Sans",Arial,sans-serif}.hero h1{font-size:clamp(48px,7vw,84px);line-height:.94;margin:17px 0}.hero p{font-size:17px;line-height:1.8;max-width:600px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid transparent;border-radius:4px;font-weight:700;font-size:13px;letter-spacing:.03em}.btn-bronze{background:var(--bronze);color:#fff}.btn-bronze:hover{background:var(--bronze-dark)}.btn-outline-light{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}.btn-whatsapp{background:var(--wa);color:#fff;width:100%}.btn-large{min-height:56px;font-size:15px}.trust{border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}.trust-grid div{padding:25px;text-align:center;border-right:1px solid var(--line)}.trust-grid div:last-child{border-right:0}.trust strong,.trust span{display:block}.trust span{font-size:12px;color:var(--muted);margin-top:6px}.section{padding-top:90px;padding-bottom:90px}.section-soft{background:var(--cream)}.section-title{text-align:center;margin-bottom:38px}.section-title span{color:var(--bronze)}.section-title h2{font-size:46px;margin:8px 0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category-card{position:relative;overflow:hidden;min-height:460px;background:#eee}.category-image,.category-image img{width:100%;height:100%}.category-image img{object-fit:cover;transition:.5s}.category-card:hover img{transform:scale(1.035)}.category-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}.category-caption{position:absolute;z-index:2;bottom:28px;left:28px;color:#fff}.category-caption h3{font:600 35px "Josefin Sans",Arial,sans-serif;margin:0 0 7px}.category-caption span{font-size:12px;text-transform:uppercase;letter-spacing:.16em}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.product-card{background:#fff;border:1px solid var(--line)}.product-image{display:block;position:relative;aspect-ratio:4/5;background:#eee;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:.4s}.product-card:hover .product-image img{transform:scale(1.025)}.sale-badge{position:absolute;top:12px;left:12px;background:var(--bronze);color:#fff;padding:7px 10px;font-size:10px;font-weight:700;text-transform:uppercase}.product-body{padding:18px}.product-body small{color:var(--muted);font-size:10px;letter-spacing:.1em}.product-body h3{font:600 24px "Josefin Sans",Arial,sans-serif;margin:7px 0 12px}.price-row{display:flex;align-items:center;gap:9px;margin-bottom:17px}.price-row del{color:#998d86;font-size:12px}.price-row strong{font-size:18px;color:var(--bronze-dark)}.cta{margin-top:90px;margin-bottom:90px;padding:55px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--cream);border:1px solid var(--line)}.cta h2{font-size:44px;margin:8px 0}.cta p{color:var(--muted)}.site-footer{background:#211711;color:#fff;padding-top:70px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;padding-bottom:55px}.footer-grid p{color:#c9beb6;line-height:1.8}.footer-grid h3{font:600 25px "Josefin Sans",Arial,sans-serif;margin-top:0}.footer-grid a,.footer-grid span{display:block;color:#d7cbc3;margin:12px 0;font-size:13px}.footer-brand img{background:#fff;border-radius:50%}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;color:#aa9c93;font-size:12px}.floating-wa{position:fixed;z-index:60;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--wa);color:#fff;font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,.2)}.category-hero{min-height:390px;position:relative;display:grid;align-items:end;background:var(--cream) var(--category-banner) center/cover no-repeat;color:#fff}.category-shade{position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.75))}.category-hero .container{position:relative;padding-bottom:60px}.category-hero h1{font-size:70px;margin:7px 0}.category-hero p{max-width:650px}.catalog-toolbar{display:flex;justify-content:space-between;margin-bottom:30px}.catalog-toolbar a{color:var(--bronze)}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:25px}.product-detail{display:grid;grid-template-columns:1.15fr .85fr;gap:60px}.gallery-main{aspect-ratio:4/5;background:var(--cream)}.gallery-main img{width:100%;height:100%;object-fit:cover}.thumbs{display:flex;gap:10px;margin-top:12px}.thumbs button{width:80px;height:100px;padding:0;border:1px solid var(--line);background:#fff}.thumbs img{width:100%;height:100%;object-fit:cover}.product-summary{padding-top:25px}.product-summary h1{font-size:55px;line-height:1;margin:12px 0 18px}.detail-price{display:flex;gap:14px;align-items:center;margin-bottom:25px}.detail-price strong{font-size:28px;color:var(--bronze-dark)}.detail-price del{color:var(--muted)}.product-summary p{line-height:1.85;color:var(--muted)}.product-meta{display:grid;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:28px 0}.image-placeholder,.empty-state{display:grid;place-items:center;min-height:220px;background:#eee;color:#8c817a}.not-found{text-align:center;padding-top:130px;padding-bottom:130px}.not-found>span{font-size:80px;color:var(--bronze);font-family:"Josefin Sans",Arial,sans-serif}.not-found h1{font-size:50px;margin:0}.not-found p{color:var(--muted);margin-bottom:30px}@media(max-width:900px){.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:22px;flex-direction:column;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.menu-toggle{display:block}.hero{min-height:590px}.trust-grid{grid-template-columns:1fr}.trust-grid div{border-right:0;border-bottom:1px solid var(--line)}.category-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.product-detail{grid-template-columns:1fr}.cta{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.container{width:min(100% - 24px,1180px)}.header-inner{height:70px}.brand img{width:44px;height:44px}.brand{font-size:21px}.main-nav{top:70px}.hero{min-height:580px;background-position:62% center}.hero-copy{margin-left:20px}.hero h1{font-size:48px}.hero p{font-size:14px}.hero-buttons .btn{width:100%}.section{padding-top:60px;padding-bottom:60px}.section-title h2{font-size:37px}.category-grid{grid-template-columns:1fr}.category-card{min-height:390px}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-body{padding:12px}.product-body h3{font-size:19px}.product-body .btn{font-size:10px;padding:9px 7px;min-height:42px}.cta{margin-top:60px;margin-bottom:60px;padding:30px 22px}.cta h2{font-size:37px}.footer-grid{grid-template-columns:1fr;gap:25px}.category-hero h1{font-size:52px}.product-summary h1{font-size:43px}}

/* Tipografía premium inspirada en Elizabeth Lozano */
body,button,input,select,textarea{font-family:'Montserrat',Arial,sans-serif}
h1,h2,h3,h4,h5,h6,.brand,.hero h1,.section-title h2,.cta h2,.category-hero h1,.product-summary h1,.not-found h1,.product-body h3,.category-caption h3,.footer-grid h3{font-family:'Josefin Sans',Arial,sans-serif;letter-spacing:.035em}
.main-nav,.btn,.eyebrow,.section-title span,.cta span,.category-hero span{letter-spacing:.06em}

/* Hero responsive: evita recortes de rostros y mantiene visibles las dos modelos */
.hero{
  min-height:clamp(540px,42vw,680px);
  background-image:var(--hero-image);
  background-size:cover;
  background-position:center 18%;
  background-repeat:no-repeat;
  overflow:hidden;
}
.hero-shade{
  background:linear-gradient(90deg,rgba(24,14,9,.78) 0%,rgba(24,14,9,.56) 38%,rgba(24,14,9,.12) 67%,rgba(24,14,9,0) 100%);
}
.hero-copy{max-width:610px;padding-top:34px;padding-bottom:34px}
.hero h1{font-size:clamp(46px,5.8vw,78px);line-height:1.02}

@media (max-width:900px){
  .hero{
    min-height:760px;
    align-items:end;
    background-image:var(--hero-mobile-image);
    background-size:cover;
    background-position:center top;
  }
  .hero-shade{
    background:linear-gradient(180deg,rgba(20,12,8,.02) 0%,rgba(20,12,8,.10) 42%,rgba(20,12,8,.82) 72%,rgba(20,12,8,.94) 100%);
  }
  .hero-copy{
    width:min(100% - 32px,680px);
    max-width:none;
    margin:0 auto;
    padding:420px 0 42px;
    text-align:center;
  }
  .hero p{margin-left:auto;margin-right:auto}
  .hero-buttons{justify-content:center}
}

@media (max-width:560px){
  .hero{
    min-height:720px;
    background-size:cover;
    background-position:center top;
  }
  .hero-copy{
    margin:0 auto;
    padding:390px 18px 30px;
  }
  .hero h1{font-size:42px;line-height:1.02;margin:12px 0}
  .hero p{font-size:14px;line-height:1.55;margin:0 auto}
  .hero-buttons{margin-top:20px}
  .hero-buttons .btn{width:100%}
}


/* Logo dinámico configurado desde el backend */
.brand-logo{flex:0 1 auto;min-width:0;max-width:min(300px,42vw)}
.brand-logo img{display:block;width:auto!important;height:auto!important;max-width:235px;max-height:62px;object-fit:contain;object-position:left center;background:transparent!important;border-radius:0!important}
.footer-brand.brand-logo{max-width:300px}
.footer-brand.brand-logo img{max-width:260px;max-height:84px;object-position:left center}
@media(max-width:900px){.brand-logo img{max-width:205px;max-height:54px}}
@media(max-width:560px){.brand-logo{max-width:calc(100vw - 86px)}.brand-logo img{max-width:185px;max-height:48px}.footer-brand.brand-logo img{max-width:220px;max-height:72px}}


/* Tarjeta de producto configurable desde backend */
.product-card{border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(69,45,30,.07);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(69,45,30,.12)}
.product-image{aspect-ratio:4/5}.product-code-badge{position:absolute;top:12px;right:12px;z-index:3;padding:7px 10px;border-radius:999px;background:rgba(31,25,21,.88);color:#fff;font-size:10px;font-weight:800;letter-spacing:.06em}.sale-badge{left:12px;border-radius:999px}.product-body h3{margin:0 0 13px;text-transform:uppercase;line-height:1.12}.product-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px}.product-spec{min-width:0;display:flex;align-items:center;gap:7px;padding:9px 8px;border-radius:11px;background:#f8f4f0;color:#5f4a3e}.product-spec>span:last-child{min-width:0;display:flex;flex-direction:column;font-size:12px;line-height:1.15}.product-spec b{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#704b32;margin-bottom:3px}.spec-icon,.price-icon{flex:0 0 auto;width:18px;height:18px;color:var(--bronze)}.spec-icon svg,.price-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.product-price-row{justify-content:flex-start;gap:10px;margin:0 0 15px}.product-price-row>div{display:flex;align-items:baseline;gap:8px}.product-price-row strong{font-size:24px}.btn-whatsapp{gap:9px;border-radius:11px}.wa-icon{width:20px;height:20px;fill:currentColor;flex:0 0 auto}.btn-whatsapp span{display:inline-block}
@media(max-width:560px){.product-card{border-radius:16px}.product-code-badge{top:9px;right:9px;padding:6px 8px;font-size:9px}.product-body h3{font-size:18px}.product-specs{gap:6px}.product-spec{padding:8px 6px;gap:5px}.product-spec>span:last-child{font-size:11px}.product-spec b{font-size:8px}.spec-icon{width:15px;height:15px}.product-price-row strong{font-size:22px}.btn-whatsapp{font-size:11px!important}.wa-icon{width:18px;height:18px}}

/* Galería de producto y fotos completas */
.product-image{background:#fff}
.product-image img{object-fit:contain;object-position:center;background:#fff}
.product-card:hover .product-image img{transform:none}
.product-detail{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start}
.gallery{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start;min-width:0}
.gallery-main{aspect-ratio:4/5;background:#fff;border:1px solid var(--line);overflow:hidden}
.gallery-main img{width:100%;height:100%;object-fit:contain;object-position:center;background:#fff}
.thumbs{display:flex;flex-direction:column;gap:14px;margin:0;order:-1}
.thumbs button{width:96px;height:122px;padding:4px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.thumbs button.active,.thumbs button:hover{border-color:var(--bronze);box-shadow:0 0 0 2px rgba(155,90,46,.12)}
.thumbs img{width:100%;height:100%;object-fit:contain;object-position:center;background:#fff}
@media(max-width:900px){
 .product-detail{grid-template-columns:1fr;gap:34px}
 .gallery{grid-template-columns:1fr;gap:12px}
 .gallery-main{order:1}
 .thumbs{order:2;flex-direction:row;overflow-x:auto;gap:10px;padding-bottom:4px}
 .thumbs button{flex:0 0 78px;width:78px;height:98px}
}
@media(max-width:560px){
 .gallery-main{aspect-ratio:3/4}
 .product-image{aspect-ratio:3/4}
}


/* ===== SOLUCIÓN PROFESIONAL: catálogo, galería e iconos aislados ===== */
svg.wa-icon{display:block;width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;flex:0 0 20px!important;fill:currentColor!important;overflow:visible!important}
svg.wa-icon *{fill:currentColor!important;stroke:none!important}
.spec-icon,.price-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:18px;overflow:hidden;color:var(--bronze)}
.spec-icon svg,.price-icon svg{display:block;width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Catálogo: solo afecta las tarjetas */
.product-card .product-image{background:#fff;aspect-ratio:4/5}
.product-card .product-image>img{width:100%;height:100%;object-fit:contain;object-position:center;background:#fff;transform:none!important}
.product-card .btn-whatsapp{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;padding:12px 14px;overflow:hidden}
.product-card .btn-whatsapp span{display:block;min-width:0;white-space:normal;text-align:center;line-height:1.15}

/* Detalle: la galería ya no comparte medidas con las tarjetas */
.product-detail .gallery{min-width:0}
.product-detail .gallery.has-thumbs{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start}
.product-detail .gallery.single-image{display:block}
.product-detail .gallery .gallery-main{width:100%;aspect-ratio:4/5;background:#fff;border:1px solid var(--line);overflow:hidden}
.product-detail .gallery .gallery-main>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff}
.product-detail .gallery.has-thumbs .gallery-main{grid-column:2;grid-row:1}
.product-detail .gallery .thumbs{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:12px;margin:0}
.product-detail .gallery .thumbs button{display:block;width:96px;height:122px;padding:4px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;cursor:pointer}
.product-detail .gallery .thumbs button.active,.product-detail .gallery .thumbs button:hover{border-color:var(--bronze);box-shadow:0 0 0 2px rgba(155,90,46,.12)}
.product-detail .gallery .thumbs img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff}
.product-summary .btn-whatsapp{display:flex;align-items:center;justify-content:center;gap:10px;overflow:hidden}

@media(max-width:900px){
  .product-detail .gallery.has-thumbs{display:flex;flex-direction:column;gap:12px}
  .product-detail .gallery .gallery-main{order:1}
  .product-detail .gallery .thumbs{order:2;display:flex;flex-direction:row;gap:10px;width:100%;overflow-x:auto;padding:2px 0 8px}
  .product-detail .gallery .thumbs button{flex:0 0 78px;width:78px;height:98px}
}

@media(max-width:560px){
  body{overflow-x:hidden}
  .container{width:calc(100% - 24px)}
  .header-inner{height:72px}
  .brand-logo{max-width:calc(100vw - 86px)}
  .brand-logo img{max-width:155px!important;max-height:46px!important}
  .menu-toggle{font-size:30px;line-height:1;padding:7px}
  .section{padding-top:42px;padding-bottom:50px}
  .catalog-toolbar{align-items:center;gap:10px;margin-bottom:20px}
  .catalog-toolbar strong{font-size:16px}
  .catalog-toolbar a{font-size:14px;text-align:right}

  /* Dos columnas limpias en celulares normales; una sola en pantallas muy pequeñas */
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .product-card{min-width:0;width:100%;border-radius:14px;overflow:hidden}
  .product-card .product-image{aspect-ratio:3/4}
  .product-card .product-body{padding:11px}
  .product-card .product-body h3{font-size:17px;line-height:1.08;margin:0 0 10px;overflow-wrap:anywhere}
  .product-card .product-specs{grid-template-columns:1fr;gap:6px;margin-bottom:10px}
  .product-card .product-spec{min-height:40px;padding:7px 7px;gap:6px;border-radius:9px}
  .product-card .product-spec>span:last-child{font-size:10px;line-height:1.15;overflow-wrap:anywhere}
  .product-card .product-spec b{font-size:7px;margin-bottom:1px}
  .product-card .spec-icon{flex-basis:14px;width:14px;height:14px}
  .product-card .spec-icon svg{width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important}
  .product-card .product-price-row{display:flex;align-items:flex-start;gap:5px;margin:0 0 10px}
  .product-card .product-price-row>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px}
  .product-card .product-price-row del{font-size:9px}
  .product-card .product-price-row strong{font-size:18px;white-space:nowrap}
  .product-card .price-icon{flex-basis:14px;width:14px;height:14px;margin-top:3px}
  .product-card .price-icon svg{width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important}
  .product-card .btn-whatsapp{min-height:42px;padding:9px 7px;font-size:10px!important;gap:6px;border-radius:9px}
  .product-card svg.wa-icon{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;flex-basis:16px!important}
  .sale-badge{top:9px;left:9px;padding:6px 8px;font-size:8px}
  .product-code-badge{top:9px;right:9px;padding:6px 8px;font-size:8px}

  .product-detail{display:block}
  .product-detail .gallery .gallery-main{aspect-ratio:3/4;border-radius:10px}
  .product-detail .gallery .thumbs button{flex-basis:70px;width:70px;height:88px;border-radius:8px}
  .product-summary{padding-top:20px}
  .product-summary h1{font-size:36px;line-height:1.03;margin:8px 0 14px}
  .product-meta{font-size:14px;gap:8px;padding:17px 0;margin:20px 0}
  .product-summary .btn-whatsapp{min-height:50px;padding:12px 14px;font-size:13px}
  .product-summary svg.wa-icon{width:19px!important;height:19px!important;min-width:19px!important;max-width:19px!important;flex-basis:19px!important}

  .floating-wa{width:54px;height:54px;right:14px;bottom:14px;font-size:0}
  .floating-wa:before{content:"";width:25px;height:25px;background:#fff;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 3.5A11.8 11.8 0 0 0 12.1 0C5.5 0 .2 5.3.2 11.9c0 2.1.5 4.1 1.6 5.9L0 24l6.4-1.7a12 12 0 0 0 5.7 1.5h.1c6.5 0 11.8-5.3 11.8-11.9 0-3.2-1.2-6.2-3.5-8.4Z'/%3E%3C/svg%3E") center/contain no-repeat}
}

@media(max-width:350px){
  .product-grid{grid-template-columns:1fr!important}
  .product-card{max-width:330px;margin:0 auto}
}

/* ===== CAROLIS: IMÁGENES COMPLETAS SIN ESPACIOS VACÍOS ===== */
.product-card{display:flex;flex-direction:column;height:100%}
.product-card .product-image{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#f2ece7;
}
.product-card .product-image::before{
  content:"";
  position:absolute;
  inset:-14px;
  z-index:-2;
  background-image:var(--product-image-bg);
  background-size:cover;
  background-position:center;
  filter:blur(16px) saturate(.9);
  transform:scale(1.08);
  opacity:.34;
}
.product-card .product-image::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:rgba(255,255,255,.48);
}
.product-card .product-image>img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center center;
  background:transparent!important;
}
.product-card .sale-badge,.product-card .product-code-badge{z-index:4}
.product-card .product-body{display:flex;flex-direction:column;flex:1}
.product-card .product-specs{align-content:start}
.product-card .product-price-row{margin-top:auto}
.product-card .btn-whatsapp{margin-top:0}

/* Catálogo equilibrado: todas las tarjetas conservan la misma altura */
.product-grid{align-items:stretch}
.product-grid>.product-card{min-height:100%}

/* Detalle: imagen completa y área visual profesional */
.gallery-main{
  position:relative;
  overflow:hidden;
  background:#f5f0eb;
}
.gallery-main::before{
  content:"";
  position:absolute;
  inset:-18px;
  background-image:var(--detail-image-bg);
  background-size:cover;
  background-position:center;
  filter:blur(18px);
  opacity:.28;
  transform:scale(1.1);
}
.gallery-main::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.52);
}
.gallery-main img{
  position:relative;
  z-index:2;
  object-fit:contain!important;
  background:transparent!important;
}

@media(min-width:901px){
  .product-card .product-image{aspect-ratio:3/4}
}
@media(max-width:560px){
  .product-grid{align-items:stretch}
  .product-card .product-image{aspect-ratio:3/4}
  .product-card .product-body{min-height:245px}
}

/* Etiquetas configurables de producto */
.sale-badge.badge-new{background:#1f6f50;}
.sale-badge.badge-exclusive{background:#241811;}
.sale-badge.badge-custom{background:#8a5b38;}

/* Carolis: ajustes responsive SOLO para celulares y dispositivos pequeños.
   El header y la versión de escritorio permanecen intactos. */
@media (max-width:768px){
  /* Texto de categorías exactamente en el centro de la imagen */
  .category-card .category-caption{
    position:absolute;
    inset:0;
    z-index:3;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:20px;
    color:#fff;
  }
  .category-card .category-caption h3{
    margin:0 0 10px;
    text-align:center;
    line-height:1.05;
  }
  .category-card .category-caption span{
    display:inline-block;
    text-align:center;
    font-weight:700;
    letter-spacing:.16em;
  }
  .category-card:after{
    inset:0;
    background:linear-gradient(rgba(0,0,0,.16),rgba(0,0,0,.52));
  }

  /* Footer centrado únicamente en pantallas pequeñas */
  .site-footer .footer-grid{
    text-align:center;
  }
  .site-footer .footer-grid>div:first-child{
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .site-footer .footer-brand.brand-logo{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    width:auto;
    max-width:min(280px,100%);
    margin:0 auto 18px;
    padding:10px 14px;
    border-radius:14px;
    background:#fff;
  }
  .site-footer .footer-brand.brand-logo img{
    display:block;
    width:auto;
    max-width:min(220px,100%);
    max-height:72px;
    object-fit:contain;
    object-position:center;
  }
  .site-footer .footer-grid p{
    max-width:320px;
    margin:0 auto;
    text-align:center;
  }
  .site-footer .footer-bottom,
  .site-footer .footer-bottom .container{
    text-align:center;
  }
}

@media (max-width:390px){
  .category-card .category-caption{
    padding:16px;
  }
  .category-card .category-caption h3{
    font-size:30px;
  }
  .site-footer .footer-brand.brand-logo{
    max-width:240px;
  }
  .site-footer .footer-brand.brand-logo img{
    max-width:190px;
  }
}

/* ===== CORRECCIÓN DEFINITIVA: SOLO CELULARES Y DISPOSITIVOS PEQUEÑOS ===== */
@media screen and (max-width: 768px) {
  #categorias .category-card {
    position: relative !important;
    overflow: hidden !important;
  }

  #categorias .category-card::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: rgba(0,0,0,.34) !important;
    pointer-events: none !important;
  }

  #categorias .category-card .category-caption {
    position: absolute !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    width: calc(100% - 32px) !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate(-50%, -50%) !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    color: #fff !important;
    pointer-events: none !important;
  }

  #categorias .category-card .category-caption h3 {
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1 !important;
    text-align: center !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.55) !important;
  }

  #categorias .category-card .category-caption span {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: .18em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.55) !important;
  }

  .site-footer .footer-grid > div:first-child {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  .site-footer .footer-brand.brand-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    max-width: calc(100% - 24px) !important;
    margin: 0 auto 18px !important;
    padding: 12px 18px !important;
    background: #fff !important;
    border-radius: 14px !important;
  }

  .site-footer .footer-brand.brand-logo img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 210px !important;
    max-height: 72px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  .site-footer .footer-grid > div:first-child p,
  .site-footer .footer-bottom,
  .site-footer .footer-bottom .container {
    text-align: center !important;
  }
}

/* ===== AJUSTES PARA PC: SOLO CATEGORÍAS Y LOGO DEL FOOTER ===== */
@media screen and (min-width: 769px) {
  /* Texto de las categorías exactamente en el centro de la imagen */
  #categorias .category-card::after {
    inset: 0 !important;
    background: rgba(0,0,0,.30) !important;
  }

  #categorias .category-card .category-caption {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: calc(100% - 48px) !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate(-50%, -50%) !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    color: #fff !important;
  }

  #categorias .category-card .category-caption h3 {
    width: 100% !important;
    margin: 0 0 10px !important;
    color: #fff !important;
    font-size: 38px !important;
    line-height: 1.05 !important;
    text-align: center !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.55) !important;
  }

  #categorias .category-card .category-caption span {
    width: 100% !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .18em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.55) !important;
  }

  /* Solo el logo del footer con fondo claro; no cambia el resto del footer */
  .site-footer .footer-brand.brand-logo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    max-width: 310px !important;
    margin: 0 0 18px !important;
    padding: 12px 18px !important;
    background: #fff !important;
    border-radius: 14px !important;
  }

  .site-footer .footer-brand.brand-logo img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 260px !important;
    max-height: 84px !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}


/* ===== HERO DE CATEGORÍA + WHATSAPP PRO ===== */
.category-hero{
  min-height:clamp(480px,42vw,680px)!important;
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background-color:#201a17!important;
  background-image:var(--category-banner)!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:contain!important;
  color:#fff!important;
}
.category-hero::before{
  content:"";
  position:absolute;
  inset:-28px;
  z-index:-2;
  background-image:var(--category-banner);
  background-position:center;
  background-size:cover;
  filter:blur(18px) brightness(.55);
  transform:scale(1.08);
}
.category-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(15,10,8,.38),rgba(15,10,8,.20),rgba(15,10,8,.38));
}
.category-hero .category-shade{display:none!important}
.category-hero .category-hero-content{
  position:relative!important;
  inset:auto!important;
  width:min(100% - 32px,1180px)!important;
  min-height:inherit!important;
  padding:48px 16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  z-index:2!important;
}
.category-hero .category-hero-content span{
  font-size:clamp(12px,1.2vw,16px)!important;
  font-weight:700!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
  text-shadow:0 2px 14px rgba(0,0,0,.65)!important;
}
.category-hero .category-hero-content h1{
  margin:10px 0 12px!important;
  font-size:clamp(48px,6.5vw,88px)!important;
  line-height:.96!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:0 4px 24px rgba(0,0,0,.7)!important;
}
.category-hero .category-hero-content p{
  max-width:680px!important;
  margin:0 auto!important;
  font-size:clamp(14px,1.4vw,18px)!important;
  line-height:1.65!important;
  color:rgba(255,255,255,.92)!important;
  text-align:center!important;
  text-shadow:0 2px 12px rgba(0,0,0,.62)!important;
}

.nav-wa,.btn-whatsapp{
  background:linear-gradient(135deg,#25d366,#17b957)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 10px 26px rgba(37,211,102,.24)!important;
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;
}
.nav-wa:hover,.btn-whatsapp:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 15px 32px rgba(37,211,102,.34)!important;
  filter:saturate(1.08)!important;
}
.btn-whatsapp:active,.nav-wa:active{transform:translateY(0) scale(.985)!important}
.nav-wa{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:12px 21px!important;border-radius:999px!important;font-weight:700!important}

.floating-wa{
  width:auto!important;
  min-width:62px!important;
  height:62px!important;
  right:22px!important;
  bottom:22px!important;
  padding:0 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#25d366,#15b954)!important;
  color:#fff!important;
  border:2px solid rgba(255,255,255,.9)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.24),0 0 0 0 rgba(37,211,102,.42)!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  animation:waPulse 3s ease-out infinite!important;
}
.floating-wa svg{width:28px!important;height:28px!important;fill:currentColor!important;flex:0 0 28px!important}
.floating-wa span{white-space:nowrap!important}
.floating-wa:hover{transform:translateY(-3px) scale(1.02)!important;box-shadow:0 20px 44px rgba(0,0,0,.28)!important}
@keyframes waPulse{0%,70%,100%{box-shadow:0 16px 38px rgba(0,0,0,.24),0 0 0 0 rgba(37,211,102,.38)}85%{box-shadow:0 16px 38px rgba(0,0,0,.24),0 0 0 13px rgba(37,211,102,0)}}

@media(max-width:768px){
  .category-hero{
    min-height:clamp(440px,112vw,590px)!important;
    background-position:center center!important;
    background-size:cover!important;
  }
  .category-hero::before{filter:blur(16px) brightness(.58)!important}
  .category-hero::after{background:rgba(12,8,6,.36)!important}
  .category-hero .category-hero-content{padding:34px 18px!important}
  .category-hero .category-hero-content h1{font-size:clamp(44px,13vw,66px)!important}
  .category-hero .category-hero-content p{font-size:14px!important;max-width:92%!important}
  .floating-wa{
    width:58px!important;
    min-width:58px!important;
    height:58px!important;
    right:14px!important;
    bottom:14px!important;
    padding:0!important;
    border-radius:50%!important;
  }
  .floating-wa span{display:none!important}
  .floating-wa svg{width:27px!important;height:27px!important;flex-basis:27px!important}
}
@media(max-width:430px){
  .category-hero{min-height:470px!important;background-position:center center!important}
  .category-hero .category-hero-content h1{font-size:46px!important}
}

/* ===== CORRECCIÓN FINAL: HERO NÍTIDO SIN DESENFOQUE ===== */
.category-hero{
  min-height:clamp(420px,34vw,560px)!important;
  background-color:#211a16!important;
  background-image:var(--category-banner)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center 30%!important;
}
.category-hero::before{
  content:none!important;
  display:none!important;
  filter:none!important;
  background:none!important;
  transform:none!important;
}
.category-hero::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:rgba(12,8,6,.28)!important;
  filter:none!important;
  transform:none!important;
}
.category-hero .category-shade{display:none!important}
.category-hero .category-hero-content{
  position:relative!important;
  z-index:2!important;
  min-height:inherit!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
@media(max-width:768px){
  .category-hero{
    min-height:430px!important;
    background-size:cover!important;
    background-position:center top!important;
  }
  .category-hero::after{background:rgba(12,8,6,.30)!important}
}
@media(max-width:430px){
  .category-hero{min-height:420px!important;background-position:center top!important}
}

/* ===== DETALLE DE PRODUCTO PRO + HEADER APP MÓVIL ===== */
/* WhatsApp eliminado del header en todas las resoluciones */
.site-header .nav-wa{display:none!important}

/* Detalle en PC: foto proporcionada, completa y sin ocupar media pantalla */
.product-detail{
  grid-template-columns:minmax(360px,520px) minmax(340px,1fr)!important;
  gap:clamp(38px,5vw,76px)!important;
  max-width:1040px;
  margin-inline:auto;
  align-items:start;
}
.product-detail .gallery{width:100%;max-width:520px;margin-inline:auto}
.product-detail .gallery .gallery-main{
  width:100%;
  max-height:640px;
  aspect-ratio:4/5!important;
  border:1px solid #eadfd8;
  border-radius:18px;
  background:#faf7f4;
  box-shadow:0 16px 45px rgba(59,39,28,.08);
}
.product-detail .gallery .gallery-main>img{
  object-fit:contain!important;
  padding:10px;
}
.product-summary{
  padding:24px 0 0!important;
  position:sticky;
  top:118px;
}
.product-summary h1{font-size:clamp(38px,4vw,54px)!important;letter-spacing:.04em}
.product-summary .btn-whatsapp{
  min-height:58px;
  border-radius:14px;
  box-shadow:0 12px 26px rgba(37,211,102,.22);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.product-summary .btn-whatsapp:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(37,211,102,.3);filter:saturate(1.08)}

/* Menú hamburguesa profesional */
.menu-toggle{width:44px;height:44px;border:1px solid #eadfd8;border-radius:14px;background:#fff;display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0;box-shadow:0 7px 18px rgba(68,42,25,.08)}
.menu-toggle span{display:block;width:20px;height:2px;border-radius:99px;background:#6f3d20;transition:.25s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:900px){
  .product-detail{display:grid!important;grid-template-columns:1fr!important;max-width:680px;gap:28px!important}
  .product-summary{position:static;padding-top:0!important}
  .menu-toggle{display:flex!important}
}

@media(max-width:560px){
  /* Header estilo aplicación */
  .top-strip{font-size:10px;min-height:28px;display:flex;align-items:center;justify-content:center;text-align:center;padding:5px 12px}
  .site-header{
    position:sticky;
    top:0;
    z-index:80;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(16px) saturate(1.25);
    -webkit-backdrop-filter:blur(16px) saturate(1.25);
    border-bottom:1px solid rgba(112,65,35,.12);
    box-shadow:0 8px 28px rgba(51,31,19,.08);
  }
  .header-inner{height:66px!important;padding:0 2px;justify-content:space-between}
  .brand-logo{max-width:190px!important}
  .brand-logo img{max-width:165px!important;max-height:44px!important}
  .menu-toggle{width:42px;height:42px;border-radius:13px;flex:0 0 42px}
  .main-nav{
    top:66px!important;
    left:12px!important;
    right:12px!important;
    padding:10px!important;
    gap:4px!important;
    border:1px solid #eadfd8!important;
    border-radius:18px!important;
    box-shadow:0 18px 45px rgba(48,29,18,.16)!important;
    background:rgba(255,255,255,.98)!important;
  }
  .main-nav a{padding:13px 14px;border-radius:12px;font-weight:700}
  .main-nav a:hover{background:#f8f1ec;color:#9b5a2e}

  /* Página de producto optimizada para comprar */
  main.section.container{padding-top:22px!important;padding-bottom:96px!important}
  .breadcrumbs{margin-bottom:14px;font-size:11px}
  .product-detail{max-width:none!important;gap:20px!important}
  .product-detail .gallery{max-width:100%!important}
  .product-detail .gallery .gallery-main{
    aspect-ratio:1/1.18!important;
    max-height:520px!important;
    border-radius:16px!important;
    box-shadow:0 10px 28px rgba(59,39,28,.08);
  }
  .product-detail .gallery .gallery-main>img{padding:6px!important}
  .product-summary{background:#fff;border:1px solid #eee2da;border-radius:18px;padding:20px!important;box-shadow:0 12px 34px rgba(68,42,25,.07)}
  .product-summary h1{font-size:31px!important;line-height:1.08!important;margin:6px 0 12px!important}
  .detail-price{margin-bottom:16px!important}
  .detail-price strong{font-size:25px!important}
  .product-summary p{font-size:14px;line-height:1.65}
  .product-meta{margin:18px 0!important;padding:16px 0!important;gap:9px!important;font-size:13px!important}
  .product-summary .btn-whatsapp{min-height:54px!important;border-radius:14px!important;font-size:14px!important;position:relative;z-index:2}
  .floating-wa{display:none!important}
}

@media(max-width:380px){
  .brand-logo img{max-width:148px!important}
  .product-detail .gallery .gallery-main{aspect-ratio:1/1.22!important;max-height:450px!important}
  .product-summary{padding:17px!important}
  .product-summary h1{font-size:28px!important}
}

/* ===== FICHA DE PRODUCTO PRO + RELACIONADOS ===== */
.product-main-section{padding-top:64px;padding-bottom:78px}
.product-detail{gap:68px}
.product-detail .gallery{max-width:500px!important}
.product-detail .gallery .gallery-main{background:#fff!important;border:1px solid rgba(80,56,42,.12)!important;border-radius:18px!important;padding:10px!important;box-shadow:0 18px 50px rgba(61,39,27,.08)!important;overflow:hidden!important}
.product-detail .gallery .gallery-main::before,.product-detail .gallery .gallery-main::after{display:none!important}
.product-detail .gallery .gallery-main>img{padding:0!important;border-radius:10px!important;background:#fff!important;object-fit:contain!important}
.product-summary{padding-top:12px}
.product-detail-code{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f6efe9;color:var(--bronze-dark);font-weight:800;letter-spacing:.09em;margin-bottom:12px}
.product-description{color:var(--muted);line-height:1.75;margin:20px 0}
.product-meta-pro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:25px 0 22px}
.meta-item{display:flex;align-items:center;gap:11px;min-height:64px;padding:12px 13px;border:1px solid rgba(84,56,40,.09);border-radius:13px;background:#fbf8f5}
.meta-item>span:last-child{display:flex;flex-direction:column;min-width:0;line-height:1.2}
.meta-item b{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#80685a;margin-bottom:4px}
.meta-item strong{font-size:14px;color:var(--ink);overflow-wrap:anywhere}
.meta-icon{width:23px;height:23px;flex:0 0 23px;color:var(--bronze)}
.meta-icon svg,.benefit-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.stock-item .meta-icon{color:#16a85b}
.product-wa-cta{border-radius:14px!important;min-height:62px!important;gap:12px!important}
.product-wa-cta>span{display:flex;flex-direction:column;text-align:left;line-height:1.12}
.product-wa-cta>span b{font-size:14px}
.product-wa-cta>span small{font-size:10px;font-weight:500;opacity:.88;margin-top:4px}
.related-products-section{padding:82px 0;background:#fbf8f5;border-top:1px solid rgba(80,56,42,.07);border-bottom:1px solid rgba(80,56,42,.07)}
.related-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}
.related-heading>div>span{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--bronze)}
.related-heading h2{font:600 clamp(34px,4vw,48px) "Josefin Sans",Arial,sans-serif;margin:7px 0 0}
.related-heading>a{font-size:13px;font-weight:700;color:var(--bronze-dark);white-space:nowrap}
.related-products-section .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.related-products-section .product-card{background:#fff}
.shopping-benefits-section{padding:42px 0 54px}
.shopping-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid rgba(80,56,42,.09);border-radius:18px;background:#fff;box-shadow:0 10px 35px rgba(61,39,27,.05);overflow:hidden}
.shopping-benefits>div{display:flex;align-items:center;gap:12px;padding:24px;border-right:1px solid rgba(80,56,42,.09)}
.shopping-benefits>div:last-child{border-right:0}
.shopping-benefits>div>span:last-child{display:flex;flex-direction:column;line-height:1.2}
.shopping-benefits b{font-size:13px;margin-bottom:5px}
.shopping-benefits small{font-size:11px;color:var(--muted)}
.benefit-icon{width:30px;height:30px;flex:0 0 30px;color:var(--bronze)}
@media(max-width:980px){
 .product-detail{gap:38px}
 .related-products-section .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .shopping-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
 .shopping-benefits>div:nth-child(2){border-right:0}
 .shopping-benefits>div:nth-child(-n+2){border-bottom:1px solid rgba(80,56,42,.09)}
}
@media(max-width:768px){
 .product-main-section{padding-top:34px;padding-bottom:52px}
 .product-detail .gallery{max-width:620px!important}
 .product-detail .gallery .gallery-main{border-radius:15px!important;padding:7px!important;box-shadow:0 12px 34px rgba(61,39,27,.07)!important}
 .product-summary{padding-top:0}
 .product-meta-pro{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .meta-item{min-height:59px;padding:10px}
 .related-products-section{padding:58px 0}
 .related-heading{align-items:flex-start}
 .related-products-section .product-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px!important;padding:2px 2px 14px;scrollbar-width:none}
 .related-products-section .product-grid::-webkit-scrollbar{display:none}
 .related-products-section .product-card{flex:0 0 min(72vw,280px);max-width:none!important;margin:0!important;scroll-snap-align:start}
}
@media(max-width:560px){
 .product-detail .gallery .gallery-main{aspect-ratio:4/5!important;max-height:none!important}
 .product-meta-pro{grid-template-columns:1fr 1fr}
 .meta-item{min-height:56px;padding:9px;gap:8px}
 .meta-icon{width:20px;height:20px;flex-basis:20px}
 .meta-item b{font-size:8px}
 .meta-item strong{font-size:12px}
 .related-heading{display:block;margin-bottom:22px}
 .related-heading h2{font-size:34px}
 .related-heading>a{display:inline-block;margin-top:13px}
 .shopping-benefits{grid-template-columns:1fr;border-radius:15px}
 .shopping-benefits>div{border-right:0!important;border-bottom:1px solid rgba(80,56,42,.09)!important;padding:18px}
 .shopping-benefits>div:last-child{border-bottom:0!important}
}

/* ===== AJUSTE FINAL: IMAGEN ADAPTABLE DENTRO DEL CUADRO ===== */
/* La foto completa siempre se adapta al área, sin recortes ni marco grueso. */
.product-detail .gallery{
  width:100%!important;
  max-width:560px!important;
  margin-inline:auto!important;
}
.product-detail .gallery .gallery-main{
  width:100%!important;
  aspect-ratio:1 / 1!important;
  max-height:none!important;
  padding:0!important;
  background:#f5f7f6!important;
  border:1px solid rgba(63,45,34,.10)!important;
  border-radius:8px!important;
  box-shadow:0 12px 34px rgba(49,34,25,.055)!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.product-detail .gallery .gallery-main>img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  object-fit:contain!important;
  object-position:center center!important;
}

@media(max-width:900px){
  .product-detail .gallery{max-width:640px!important}
  .product-detail .gallery .gallery-main{aspect-ratio:1 / 1!important}
}

@media(max-width:560px){
  .product-detail .gallery{max-width:100%!important}
  .product-detail .gallery .gallery-main{
    aspect-ratio:1 / 1.08!important;
    border-radius:7px!important;
    box-shadow:0 8px 24px rgba(49,34,25,.05)!important;
  }
}

/* ===== CORRECCIÓN DEFINITIVA: SOLO LA FOTO, SIN CAJA EXTERIOR ===== */
.product-detail .gallery{
  width:100%!important;
  max-width:500px!important;
  margin-inline:auto!important;
}
.product-detail .gallery .gallery-main{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  display:block!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:11px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.product-detail .gallery .gallery-main>img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:initial!important;
  object-position:initial!important;
  background:transparent!important;
  border:1px solid rgba(54,38,28,.10)!important;
  border-radius:11px!important;
  box-shadow:0 7px 22px rgba(45,29,20,.055)!important;
}
.product-detail .gallery .image-placeholder{
  min-height:460px;
  border:1px solid rgba(54,38,28,.10);
  border-radius:11px;
}

@media(max-width:900px){
  .product-detail .gallery{max-width:560px!important}
}
@media(max-width:560px){
  .product-detail .gallery{max-width:100%!important}
  .product-detail .gallery .gallery-main{
    height:auto!important;
    aspect-ratio:auto!important;
    border-radius:9px!important;
  }
  .product-detail .gallery .gallery-main>img{
    height:auto!important;
    border-radius:9px!important;
    box-shadow:0 5px 16px rgba(45,29,20,.05)!important;
  }
}


/* ===== CORRECCIÓN DEFINITIVA: MENÚ MÓVIL CON X VISIBLE ===== */
.menu-toggle{position:relative;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}
.menu-toggle span{position:absolute;left:50%;width:21px;height:2px;margin-left:-10.5px;transform-origin:center;background:#6f3d20;opacity:1}
.menu-toggle span:nth-child(1){top:14px}
.menu-toggle span:nth-child(2){top:21px}
.menu-toggle span:nth-child(3){top:28px}
.menu-toggle[aria-expanded="true"] span:nth-child(1),.menu-toggle.is-open span:nth-child(1){top:21px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2),.menu-toggle.is-open span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle[aria-expanded="true"] span:nth-child(3),.menu-toggle.is-open span:nth-child(3){top:21px;transform:rotate(-45deg)}
@media(max-width:900px){
  .main-nav{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);display:flex!important;transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
  .main-nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  body.mobile-menu-open{overflow:hidden}
}

/* ===== MEJORAS DE CARGA Y RENDERIZADO ===== */
.category-card,.product-card{content-visibility:auto;contain-intrinsic-size:1px 460px}
.section-soft,.cta,.site-footer{content-visibility:auto;contain-intrinsic-size:1px 600px}
img[loading="lazy"]{content-visibility:auto}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Integración de las páginas Dora y Diana en el menú público Carolis */
.carolis-profile-page{padding:42px 16px 70px;background:#f7eee8;min-height:70vh}
.carolis-profile-page .profile-footer{background:transparent;color:inherit;padding-bottom:0}
@media(max-width:900px){
  .main-nav{gap:18px}
}

/* ===== DISTRIBUCIÓN FINAL DEL CATÁLOGO =====
   PC: 4 columnas | Tablet: 2 columnas | Celular: 1 columna */
.product-grid,
.related-products-section .product-grid,
.related-products-scroll.product-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
  overflow: visible !important;
}

.product-grid > .product-card,
.related-products-section .product-grid > .product-card,
.related-products-scroll.product-grid > .product-card {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-width: 0 !important;
}

@media (max-width: 900px) {
  .product-grid,
  .related-products-section .product-grid,
  .related-products-scroll.product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

@media (max-width: 600px) {
  .product-grid,
  .related-products-section .product-grid,
  .related-products-scroll.product-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  .product-grid > .product-card,
  .related-products-section .product-grid > .product-card,
  .related-products-scroll.product-grid > .product-card {
    width: 100% !important;
    max-width: 100% !important;
  }

  .product-card .product-image {
    width: 100% !important;
  }

  .product-card .product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }
}


/* Categorías públicas limpias: solo hero y productos */
body.category-clean-page{background:#fff}
.category-clean-page .category-hero{min-height:clamp(360px,48vw,720px);width:100%;background-position:center;background-size:cover}
.category-clean-page .category-hero .container{padding-bottom:clamp(28px,5vw,72px)}
.category-clean-page .category-products-section{padding-top:34px;padding-bottom:70px}
.category-clean-page .category-product-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;width:100%}
.category-clean-page .category-product-grid>.product-card{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}

@media (max-width:900px){
 .category-clean-page .category-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
}
@media (max-width:600px){
 .category-clean-page .container{width:calc(100% - 24px)!important}
 .category-clean-page .category-hero{min-height:clamp(300px,115vw,560px);background-position:center top}
 .category-clean-page .category-hero h1{font-size:clamp(38px,12vw,54px)}
 .category-clean-page .category-products-section{padding-top:20px;padding-bottom:44px}
 .category-clean-page .category-product-grid{grid-template-columns:minmax(0,1fr)!important;gap:22px!important}
 .category-clean-page .category-product-grid>.product-card{grid-column:1/-1!important;width:100%!important;max-width:100%!important}
 .category-clean-page .product-image{aspect-ratio:auto!important;min-height:0!important;background:#f7f3ef}
 .category-clean-page .product-image img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
 .category-clean-page .product-body{padding:18px!important}
 .category-clean-page .product-body h3{font-size:25px!important}
 .category-clean-page .product-body .btn{font-size:13px!important;min-height:50px!important;padding:12px 14px!important}
}

/* =========================================================
   CATÁLOGO RESPONSIVE EN DOS VERSIONES REALES
   Escritorio/tablet grande: 4 columnas
   Celular/dispositivo pequeño: 1 columna
   ========================================================= */
.category-responsive-page{display:block;width:100%;overflow-x:hidden;background:#fff}
.category-desktop-version{display:block}
.category-mobile-version{display:none}

.category-hero-desktop{
  position:relative!important;
  width:100%!important;
  min-height:clamp(390px,43vw,690px)!important;
  margin:0!important;
  top:auto!important;
  transform:none!important;
  background-image:var(--category-banner)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center!important;
}
.category-products-desktop{
  position:relative!important;
  display:block!important;
  clear:both!important;
  margin-top:0!important;
  padding-top:42px!important;
  padding-bottom:72px!important;
  transform:none!important;
  top:auto!important;
}
.category-desktop-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:22px!important;
  width:100%!important;
}
.category-desktop-grid>.product-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}

@media (min-width:768px) and (max-width:1023px){
  .category-desktop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
}

@media (max-width:767px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .category-desktop-version{display:none!important}
  .category-mobile-version{display:block!important;width:100%!important}

  .category-hero-mobile{
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-height:0!important;
    aspect-ratio:4/5;
    margin:0!important;
    padding:0!important;
    top:auto!important;
    transform:none!important;
    overflow:hidden!important;
    background-image:var(--category-banner)!important;
    background-repeat:no-repeat!important;
    background-size:cover!important;
    background-position:center top!important;
  }
  .category-mobile-shade{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.02) 45%,rgba(0,0,0,.72) 100%);
  }
  .category-mobile-copy{
    position:absolute!important;
    z-index:2;
    left:18px!important;
    right:18px!important;
    bottom:22px!important;
    margin:0!important;
    padding:0!important;
    color:#fff;
  }
  .category-mobile-copy span{font-size:10px;letter-spacing:.22em;font-weight:700;text-transform:uppercase}
  .category-mobile-copy h1{font:600 clamp(34px,11vw,50px)/.98 "Josefin Sans",Arial,sans-serif;margin:8px 0 5px}
  .category-mobile-copy p{font-size:13px;line-height:1.5;margin:0;max-width:92%}

  .category-products-mobile{
    position:relative!important;
    display:block!important;
    clear:both!important;
    width:100%!important;
    margin:0!important;
    padding:20px 12px 48px!important;
    top:auto!important;
    transform:none!important;
    background:#fff!important;
  }
  .category-mobile-grid{
    display:grid!important;
    grid-template-columns:100%!important;
    gap:22px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .category-mobile-grid>.product-card{
    display:block!important;
    grid-column:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    flex:0 0 100%!important;
    transform:none!important;
  }
  .category-mobile-grid .product-image{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    background:#f7f3ef!important;
  }
  .category-mobile-grid .product-image img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
  }
  .category-mobile-grid .product-body{padding:18px!important}
  .category-mobile-grid .product-body h3{font-size:25px!important}
  .category-mobile-grid .product-body .btn{font-size:13px!important;min-height:50px!important;padding:12px 14px!important}
}

/* =========================================================
   FICHA DE PRODUCTO MÓVIL: DATOS GRANDES Y COMPACTOS
   Solo aplica a la versión móvil de categorías.
   ========================================================= */
@media (max-width:767px){
  .category-mobile-grid .product-body{
    padding:20px 18px 18px!important;
  }

  .category-mobile-grid .product-body h3{
    margin:0 0 15px!important;
    font-size:clamp(27px,8vw,34px)!important;
    line-height:1.05!important;
    letter-spacing:.01em!important;
  }

  .category-mobile-grid .product-specs{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px 12px!important;
    margin:0 0 18px!important;
  }

  .category-mobile-grid .product-spec{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    min-height:58px!important;
    padding:10px 11px!important;
    gap:9px!important;
    border-radius:12px!important;
    background:#f7f2ec!important;
  }

  /* Color ocupa toda la primera línea */
  .category-mobile-grid .product-spec:first-child{
    grid-column:1/-1!important;
  }

  .category-mobile-grid .spec-icon{
    display:grid!important;
    place-items:center!important;
    flex:0 0 24px!important;
    width:24px!important;
    height:24px!important;
    color:#9b5a2e!important;
  }

  .category-mobile-grid .spec-icon svg{
    display:block!important;
    width:23px!important;
    height:23px!important;
    max-width:23px!important;
    max-height:23px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  .category-mobile-grid .product-spec>span:last-child{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    min-width:0!important;
    gap:4px!important;
    font-size:16px!important;
    line-height:1.2!important;
    color:#30231c!important;
    overflow-wrap:anywhere!important;
  }

  .category-mobile-grid .product-spec b{
    display:inline!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1!important;
    letter-spacing:.045em!important;
    color:#6d3d1d!important;
  }

  .category-mobile-grid .product-spec b::after{
    content:":";
  }

  .category-mobile-grid .product-price-row{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin:4px 0 17px!important;
    padding:13px 14px!important;
    border-radius:13px!important;
    background:#fff7ef!important;
    border:1px solid #ead8c7!important;
  }

  .category-mobile-grid .price-icon{
    display:grid!important;
    place-items:center!important;
    flex:0 0 25px!important;
    width:25px!important;
    height:25px!important;
    color:#9b5a2e!important;
  }

  .category-mobile-grid .price-icon svg{
    width:24px!important;
    height:24px!important;
    max-width:24px!important;
    max-height:24px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  .category-mobile-grid .product-price-row>div{
    display:flex!important;
    align-items:baseline!important;
    flex-wrap:wrap!important;
    gap:7px!important;
  }

  .category-mobile-grid .product-price-row>div::before{
    content:"PRECIO";
    font-size:13px!important;
    font-weight:800!important;
    letter-spacing:.055em!important;
    color:#6d3d1d!important;
  }

  .category-mobile-grid .product-price-row del{
    order:3!important;
    width:100%!important;
    margin-left:0!important;
    font-size:12px!important;
    color:#a6988e!important;
  }

  .category-mobile-grid .product-price-row strong{
    font-size:clamp(28px,8.5vw,36px)!important;
    line-height:1!important;
    color:#6d3d1d!important;
    white-space:nowrap!important;
  }

  .category-mobile-grid .btn-whatsapp{
    min-height:58px!important;
    padding:14px 16px!important;
    border-radius:13px!important;
    font-size:16px!important;
    font-weight:800!important;
    letter-spacing:.025em!important;
  }

  .category-mobile-grid svg.wa-icon{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    max-width:26px!important;
    flex-basis:26px!important;
  }
}

@media (max-width:390px){
  .category-mobile-grid .product-specs{
    gap:8px!important;
  }
  .category-mobile-grid .product-spec{
    padding:9px 8px!important;
    gap:7px!important;
  }
  .category-mobile-grid .product-spec>span:last-child{
    font-size:14px!important;
  }
  .category-mobile-grid .product-spec b{
    font-size:11px!important;
  }
}

/* =========================================================
   CAROLIS - DISEÑO MÓVIL DEFINITIVO (REFERENCIA 2026-08-05)
   Una tarjeta por fila. Dentro de la tarjeta, datos en 2 columnas.
   ========================================================= */
@media screen and (max-width: 767px) {
  html, body { width:100%!important; max-width:100%!important; overflow-x:hidden!important; }
  .category-responsive-page,
  .category-mobile-version,
  .category-products-mobile,
  .category-mobile-grid { width:100%!important; max-width:100%!important; }

  .category-desktop-version { display:none!important; }
  .category-mobile-version { display:block!important; }

  .category-products-mobile { padding:12px 8px 24px!important; margin:0!important; }
  .category-mobile-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
    padding:0!important;
    margin:0!important;
  }

  .category-mobile-grid > .product-card {
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background:#fff!important;
    border:1px solid #eaded5!important;
    box-shadow:0 12px 30px rgba(76,46,27,.08)!important;
  }

  .category-mobile-grid .product-image {
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:3/4!important;
    background:#f8f4f1!important;
    overflow:hidden!important;
  }
  .category-mobile-grid .product-image::before,
  .category-mobile-grid .product-image::after { display:none!important; content:none!important; }
  .category-mobile-grid .product-image > img {
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#f8f4f1!important;
  }

  .category-mobile-grid .product-body {
    display:flex!important;
    flex-direction:column!important;
    padding:17px 18px 16px!important;
    min-height:0!important;
  }
  .category-mobile-grid .product-body h3 {
    margin:0 0 14px!important;
    font-size:25px!important;
    line-height:1.08!important;
    letter-spacing:.055em!important;
    font-weight:700!important;
    color:#1d1713!important;
  }
  .category-mobile-grid .product-body h3 a { color:inherit!important; }

  .category-mobile-grid .product-specs {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 10px!important;
    margin:0 0 13px!important;
  }
  .category-mobile-grid .product-spec {
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    min-height:49px!important;
    padding:8px 9px!important;
    gap:8px!important;
    border:0!important;
    border-radius:11px!important;
    background:#f7f2ee!important;
  }
  .category-mobile-grid .product-spec:first-child { grid-column:auto!important; }
  .category-mobile-grid .spec-icon {
    display:grid!important;
    place-items:center!important;
    flex:0 0 19px!important;
    width:19px!important;
    height:19px!important;
    color:#a76234!important;
  }
  .category-mobile-grid .spec-icon svg {
    width:19px!important;
    height:19px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .category-mobile-grid .product-spec > span:last-child {
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:2px!important;
    min-width:0!important;
    font-size:13px!important;
    line-height:1.05!important;
    color:#6a5b51!important;
  }
  .category-mobile-grid .product-spec b {
    display:block!important;
    margin:0!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.07em!important;
    font-weight:800!important;
    text-transform:uppercase!important;
    color:#6d3f24!important;
  }
  .category-mobile-grid .product-spec b::after { content:""!important; }

  .category-mobile-grid .product-price-row {
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin:2px 0 12px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }
  .category-mobile-grid .price-icon {
    display:grid!important;
    place-items:center!important;
    flex:0 0 19px!important;
    width:19px!important;
    height:19px!important;
    color:#a76234!important;
  }
  .category-mobile-grid .price-icon svg {
    width:19px!important;
    height:19px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
  }
  .category-mobile-grid .product-price-row > div {
    display:flex!important;
    align-items:baseline!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
  }
  .category-mobile-grid .product-price-row > div::before { display:none!important; content:none!important; }
  .category-mobile-grid .product-price-row del {
    order:0!important;
    width:auto!important;
    margin:0!important;
    font-size:12px!important;
    color:#a99f98!important;
    white-space:nowrap!important;
  }
  .category-mobile-grid .product-price-row strong {
    font-size:28px!important;
    line-height:1!important;
    font-weight:800!important;
    color:#6c3518!important;
    white-space:nowrap!important;
  }

  .category-mobile-grid .btn-whatsapp {
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
    min-height:48px!important;
    padding:11px 12px!important;
    margin:0!important;
    border-radius:11px!important;
    font-size:14px!important;
    font-weight:800!important;
    letter-spacing:.015em!important;
  }
  .category-mobile-grid svg.wa-icon {
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    max-width:22px!important;
    flex-basis:22px!important;
  }
}

@media screen and (max-width: 360px) {
  .category-products-mobile { padding-inline:7px!important; }
  .category-mobile-grid .product-body { padding:15px 16px!important; }
  .category-mobile-grid .product-body h3 { font-size:23px!important; }
  .category-mobile-grid .product-specs { gap:7px!important; }
  .category-mobile-grid .product-spec { padding:8px 7px!important; }
  .category-mobile-grid .product-price-row strong { font-size:26px!important; }
}

/* =========================================================
   CAROLIS - IMÁGENES PROPORCIÓN REAL + TARJETA COMPACTA
   PC, tablet y móvil. Sin alturas reservadas ni espacios vacíos.
   ========================================================= */
.category-responsive-page .product-card{
  height:auto!important;
  min-height:0!important;
  align-self:start!important;
}
.category-responsive-page .product-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  line-height:0!important;
  overflow:hidden!important;
  background:#f8f4f1!important;
}
.category-responsive-page .product-image>img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
}
.category-responsive-page .product-body{
  height:auto!important;
  min-height:0!important;
  padding:14px 14px 15px!important;
  justify-content:flex-start!important;
  gap:0!important;
}
.category-responsive-page .product-body h3{
  margin:0 0 10px!important;
  line-height:1.08!important;
}
.category-responsive-page .product-specs{
  margin:0 0 10px!important;
  gap:7px!important;
}
.category-responsive-page .product-spec{
  min-height:0!important;
  height:auto!important;
  padding:8px 9px!important;
}
.category-responsive-page .product-price-row{
  margin:2px 0 10px!important;
}
.category-responsive-page .btn-whatsapp{
  margin:0!important;
}

@media screen and (min-width:768px){
  .category-desktop-grid{
    align-items:start!important;
  }
  .category-desktop-grid>.product-card{
    height:auto!important;
    min-height:0!important;
  }
  .category-desktop-grid .product-body{
    padding:13px 13px 14px!important;
  }
  .category-desktop-grid .product-body h3{
    margin-bottom:9px!important;
  }
  .category-desktop-grid .product-specs{
    margin-bottom:9px!important;
  }
}

@media screen and (max-width:767px){
  .category-mobile-grid>.product-card{
    height:auto!important;
    min-height:0!important;
  }
  .category-mobile-grid .product-image{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
  }
  .category-mobile-grid .product-image>img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
  }
  .category-mobile-grid .product-body{
    padding:13px 14px 14px!important;
    min-height:0!important;
  }
  .category-mobile-grid .product-body h3{
    margin-bottom:10px!important;
  }
  .category-mobile-grid .product-specs{
    margin-bottom:10px!important;
  }
  .category-mobile-grid .product-price-row{
    margin:1px 0 10px!important;
  }
}

/* CAROLIS: botón WhatsApp siempre clicable */
.category-responsive-page .product-card .btn-whatsapp,
.product-card .btn-whatsapp,
.product-summary .btn-whatsapp{
  position:relative!important;
  z-index:20!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
.category-responsive-page .product-card .product-body{
  position:relative!important;
  z-index:10!important;
}
