/* MSP IMPORT EC 3.0 · Minimalismo accesible para móvil y escritorio.
   Mantiene el carrito y los formularios originales. */
:root{
  --navy:#17345d;--navy-2:#254c7b;--blue:#2265ab;--blue-hover:#194e89;
  --sky:#f0f7fb;--bg:#ffffff;--surface:#fff;--fg:#192d45;
  --muted:#607287;--line:#e5ecf1;--accent:#c8e7f5;--on-accent:#17345d;
  --ok:#24764b;--ok-bg:#edf8f1;--warn:#88633d;--warn-bg:#fff7e8;
  --off:#7c8797;--off-bg:#f0f2f5;
  --shadow:0 1px 5px rgba(18,40,65,.045);
  --shadow-lg:0 9px 25px rgba(18,40,65,.08);
  --font-display:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
html{scroll-padding-top:5.6rem}
body{background:#fff;color:var(--fg);line-height:1.5}
.wrap{max-width:1180px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.top{background:rgba(255,255,255,.98);border-bottom:1px solid #e9eff3;box-shadow:0 1px 5px rgba(18,40,65,.02)}
.top-in{min-height:72px;gap:1.1rem}
.brand-logo{width:42px;height:42px!important;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:none}
.brand-name{font:750 1.08rem/1.15 var(--font-body);letter-spacing:-.025em}
.brand-name b{color:var(--blue)}
.nav{gap:1.45rem}
.nav a{font-size:.88rem;color:#4f647c}
.nav a::after{background:var(--blue);height:1px}
.nav-mobile summary{font-weight:700;background:#fff;border-color:#e8edf2}
.nav-mobile nav a{font-weight:600;color:var(--fg)}
.cart-btn{background:var(--navy);font-weight:650;border-radius:16px;padding:.55rem .9rem;min-height:44px}
.cart-btn:hover{background:var(--blue)}
.badge{background:#e6f4fc;color:var(--navy);font-weight:750;padding:.1rem .48rem}
.btn{border-radius:12px;box-shadow:none;font-weight:700;min-height:44px}
.btn-primary{background:var(--navy);color:#fff;box-shadow:none}
.btn-primary:hover{background:var(--blue-hover);box-shadow:none}
.btn-accent{background:var(--blue);color:#fff;box-shadow:none}
.btn-ghost{border-color:#dbe5ed}
.btn-light{background:#fff;color:var(--blue);border-color:#d8e3ef}
.btn-light:hover{background:#f2f8fd;color:var(--blue)}
/* Portada COMPACTA: deja ver las novedades y la primera fila de productos al desplazarse poco. */
.hero.hero-min{background:linear-gradient(115deg,#f3faff 0%,#fff 62%,#f7fbfe 100%);color:var(--fg);border-bottom:1px solid #e6eff4}
.hero.hero-min::after{display:none}
.hero-compact{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:20px;align-items:center;padding-block:26px 28px;min-height:180px}
.hero-identity{width:68px;height:68px;background:#fff;border:1px solid #deebf4;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:6px}
.hero-identity img{width:100%;height:100%;object-fit:contain}
.hero-compact .eyebrow{background:none;border:0;border-radius:0;padding:0;font-weight:700;font-size:.7rem;letter-spacing:.14em;color:#507aa1;margin:0 0 .48rem}
.hero-compact h1{font:750 clamp(1.5rem,3vw,2.18rem)/1.13 var(--font-body);margin:0 0 .42rem;letter-spacing:-.045em;color:var(--navy)}
.hero-compact .lead{color:#4d6177;margin:0;max-width:36rem;font-size:.96rem;line-height:1.5}
.hero-conditions{margin:.55rem 0 0;color:#617a91;font-size:.79rem;line-height:1.4}
.hero-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem}
.hero-actions .btn{min-height:46px;padding:.65rem 1.15rem;white-space:nowrap}
.hero-secondary{font-size:.77rem;font-weight:600;color:var(--blue);text-decoration:none}
.hero-secondary:hover{text-decoration:underline}
/* Protagonismo de producto en lugar de banners grandes */
.section{padding-block:31px 34px}
#novedades{padding-top:31px;padding-bottom:22px}
#catalogo{padding-top:23px}
.sec-head{align-items:center;gap:.55rem 1rem;margin-bottom:16px}
.kicker{font-size:.64rem;letter-spacing:.115em;color:#61809c;margin-bottom:.32rem}
.kicker::before{display:none}
.title{font:750 clamp(1.42rem,2.7vw,1.84rem)/1.25 var(--font-body);letter-spacing:-.045em;color:var(--navy)}
.section-desc{font-size:.86rem;color:#667b8e;margin:.3rem 0 0}
.more{font-size:.78rem;color:var(--blue)}
.new-grid,.grid{gap:16px}
.new-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:790px}
.new-grid .card{display:grid;grid-template-columns:minmax(0,160px) minmax(0,1fr);min-height:155px}
.new-grid .card-media{height:100%;aspect-ratio:auto}
.new-grid .card-body{padding:.85rem .95rem}
.new-grid .desc{display:none}
.new-grid .card-title{font-size:.92rem;line-height:1.3}
.new-grid .card-foot{padding-top:.2rem}
.new-grid .fav-btn{width:32px;height:32px;right:7px;top:7px}
#catalogo .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.card,.fcard{border:1px solid #e7edf2;border-radius:15px;box-shadow:0 1px 6px rgba(14,37,59,.045);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.card:hover,.fcard:hover{transform:translateY(-2px);box-shadow:0 9px 28px rgba(27,70,104,.09);border-color:#d9e5f0}
.card-media,.fcard .card-media{background:#f5f8fa;aspect-ratio:1/1;overflow:hidden}
.card-media img,.fcard .card-media img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
.card:hover .card-media img,.fcard:hover .card-media img{transform:scale(1.016)}
.card-body,.fcard .card-body{padding:.82rem;gap:.31rem}
.code{font-size:.64rem;letter-spacing:.06em;color:#76899a}
.card-title{font:700 .91rem/1.35 var(--font-body);min-height:2.55em;letter-spacing:-.018em;color:#193657}
.card-title .linkbtn:hover{color:var(--blue)}
.desc{font-size:.76rem;color:#7b8b9a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.42;min-height:2.7em}
.product-rating{color:#85642f;font-size:.73rem;line-height:1.35;text-decoration:none;font-weight:700;display:inline-block;white-space:normal}
.product-rating span{color:#708293;font-weight:500}
.product-rating-empty{color:#91a0ac;font-weight:550}
.product-rating:hover{text-decoration:underline}
.card-foot{padding-top:.35rem;gap:.5rem;align-items:center}
.price-box{gap:.3rem}
.price{font:750 1.24rem/1.12 var(--font-body);color:var(--navy);letter-spacing:-.035em}
.pill{font-size:.61rem;font-weight:700;line-height:1.3;padding:.18rem .5rem}
.pill::before{width:.38rem;height:.38rem}
.card-foot .btn{font-size:.74rem;padding:.43rem .75rem;min-height:37px;border-radius:10px}
.fav-btn{height:34px;width:34px;font-size:1.2rem;border:1px solid #e5edf2;box-shadow:0 2px 10px #15385d13}
.promo-tag{font-size:.65rem}
/* filtros simplificados */
.tools{gap:.77rem;margin-bottom:18px}
.search{max-width:100%}
.search input{width:100%;min-height:46px;background:#fbfdff;border:1px solid #dce6ee;border-radius:12px;box-shadow:none;font-size:1rem}
.search input:focus{box-shadow:0 0 0 3px #ddeefb}
.cats{gap:.45rem;padding-bottom:5px}
.cat{border-radius:10px;padding:.45rem .9rem;font-size:.8rem;font-weight:650;min-height:42px}
.cat[aria-pressed="true"]{background:var(--navy);border-color:var(--navy)}
.filter-row{gap:.6rem}
.filter-select{font-size:.7rem;font-weight:650;gap:.3rem}
.filter-select .input{min-height:42px;border-radius:11px;background:#fff;font-size:.83rem;color:var(--navy);font-weight:500}
.filter-check,.filter-favs{min-height:42px;border-radius:10px;font-size:.77rem;font-weight:600}
.filter-help{font-size:.75rem;color:#71879a}
.count{font-size:.81rem}
/* navegación 1-2-3 */
.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:24px 0 8px}
.pagination button{font:700 .87rem var(--font-body);border:1px solid #dfe8ef;background:#fff;border-radius:10px;min-width:42px;min-height:43px;padding:6px 11px;cursor:pointer;color:var(--navy);transition:background .15s,border-color .15s}
.pagination button:hover:not([disabled]){background:#edf7fd;border-color:#b9d6ec}
.pagination button[aria-current="page"]{color:#fff;background:var(--navy);border-color:var(--navy)}
.pagination button:disabled{color:#a8b4c0;background:#f7f9fa;cursor:not-allowed}
.pagination-ellipsis{padding:0 3px;color:#899bab}
.pagination-info{text-align:center;color:#718597;font-size:.79rem;margin:.4rem 0 0}
/* módulos de confianza y reseñas */
.band{background:#f6faff;border-top:1px solid #eaf0f5;border-bottom:1px solid #eaf0f5}
.info-card{background:#fff;box-shadow:none;border-color:#e2eaf1;border-radius:15px}
.info-card h3{font-family:var(--font-body);font-weight:750}
.about-panel{background:#f7fbfe;border:1px solid #e4edf4;border-radius:20px;box-shadow:none;padding:1.65rem;grid-template-columns:7rem 1fr}
.about-icon{border-color:#e8eff4;border-radius:18px}
.reviews-section{background:#f7fbfe;border-color:#e4edf4}
.review-layout{gap:16px}
.reviews-list-wrap,.review-form-wrap{border-radius:18px;box-shadow:none;border-color:#e5edf4;padding:1.25rem}
.reviews-list-wrap h3,.review-form-wrap h3{font:750 1.05rem var(--font-body)}
.review-empty{border-color:#dceaf4;background:#fbfdff}
.review-card{background:#fff;border-color:#e7edf2}
.review-product{font-size:.74rem!important;color:#6684a0!important;font-weight:600!important;margin:0!important}
.faq-list{max-width:100%}
.faq-list details{box-shadow:none;border-color:#e6edf2;border-radius:12px}
.faq-list summary{font-weight:700}
.foot{background:#163354}
/* IMPORTANTE: consultas en esquina IZQUIERDA, separadas del carrito Netlify y del botón de compra */
.consulta-float{left:max(16px,env(safe-area-inset-left,0px));right:auto;bottom:calc(18px + env(safe-area-inset-bottom,0px));background:#237a55;color:#fff;border:1px solid #fff;box-shadow:0 4px 18px rgba(16,54,38,.18);padding:.42rem .75rem .42rem .42rem}
.consulta-float:hover{background:#166243}
.consulta-icon{background:#fff;color:#247b56;font-size:1.25rem}
.consulta-label{font-size:.76rem}
.consulta-label b{font-size:.82rem}
.referencial-tag{font-size:.63rem}
/* evita animaciones que oculten tarjetas a las personas mayores o en navegadores antiguos */
.card.reveal-pending,.fcard.reveal-pending{opacity:1;transform:none}
/* escritorio mediano */
@media (max-width:1070px){
  #catalogo .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nav{gap:.85rem}
  .nav a{font-size:.79rem}
}
@media (max-width:780px){
  .top-in{min-height:63px;gap:.7rem}
  .brand-name{font-size:1rem}
  .hero-compact{grid-template-columns:54px minmax(0,1fr);gap:12px;min-height:unset;padding-block:23px}
  .hero-identity{height:54px;width:54px;border-radius:14px}
  .hero-compact h1{font-size:1.55rem;margin-bottom:.35rem}
  .hero-compact .lead{font-size:.89rem}
  .hero-conditions{font-size:.73rem}
  .hero-actions{grid-column:2;flex-direction:row;align-items:center;justify-content:flex-start;gap:.8rem}
  .hero-actions .btn{min-height:42px;font-size:.79rem}
  .new-grid .card{grid-template-columns:minmax(0,42%) minmax(0,1fr)}
  .new-grid .card-body{padding:.65rem}
  .new-grid .card-foot{flex-direction:column;align-items:stretch}
  .new-grid .card-foot .btn{width:100%}
  .about-panel{grid-template-columns:5.5rem 1fr}
}
@media (max-width:640px){
  .wrap{padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
  .top-in{min-height:58px}
  .brand-logo{width:36px;height:36px!important;border-radius:11px}
  .brand-name{font-size:.9rem}
  .nav-mobile summary{padding:.35rem .47rem}
  .cart-btn{padding:.48rem .55rem;min-height:42px;gap:.35rem}
  .cart-label{font-size:.75rem}
  .badge{font-size:.74rem}
  .hero-compact{padding-block:18px 17px;gap:10px;grid-template-columns:43px minmax(0,1fr)}
  .hero-identity{height:43px;width:43px;padding:4px;border-radius:13px}
  .hero-compact .eyebrow{font-size:.6rem;letter-spacing:.08em;margin-bottom:.35rem}
  .hero-compact h1{font-size:clamp(1.23rem,5vw,1.5rem);line-height:1.17}
  .hero-compact .lead{font-size:.77rem;line-height:1.45}
  .hero-conditions{font-size:.66rem;line-height:1.3}
  .hero-actions .btn{min-height:38px;font-size:.74rem;padding:.45rem .7rem}
  .hero-secondary{font-size:.65rem}
  .section{padding-block:24px}
  #novedades{padding-top:23px;padding-bottom:18px}
  #catalogo{padding-top:18px}
  .sec-head{margin-bottom:12px}
  .title{font-size:1.4rem}
  .section-desc{font-size:.76rem}
  .more{font-size:.72rem}
  .new-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:none}
  .new-grid .card{display:flex;flex-direction:column;min-height:unset}
  .new-grid .card-media{aspect-ratio:1}
  .new-grid .card-body{padding:.58rem .58rem .65rem}
  .new-grid .card-title{font-size:.78rem}
  .new-grid .card-foot{margin-top:auto}
  .new-grid .price{font-size:1.1rem}
  #catalogo .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .card{border-radius:12px}
  .card-body{padding:.63rem;gap:.25rem}
  .code{font-size:.59rem}
  .card-title{font-size:.81rem;min-height:2.65em}
  .desc{display:none}
  .product-rating{font-size:.66rem}
  .card-foot{flex-direction:column;align-items:stretch;gap:.35rem}
  .price-box{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.25rem}
  .price{font-size:1.15rem}
  .pill{font-size:.55rem}
  .card-foot .btn{width:100%;font-size:.76rem;min-height:39px}
  .fav-btn{width:32px;height:32px;right:6px;top:6px}
  .cat{font-size:.75rem;padding:.42rem .75rem;min-height:39px}
  .filter-row{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:.58rem}
  .filter-select .input{width:100%;min-width:0}
  .filter-check,.filter-favs{font-size:.72rem}
  .filter-help{font-size:.7rem}
  .pagination{gap:4px;margin:18px 0 4px}
  .pagination button{min-width:35px;min-height:39px;font-size:.75rem;padding:4px 8px}
  .pagination button span{display:none}
  .pagination-info{font-size:.72rem}
  .about-panel{grid-template-columns:1fr;gap:.8rem;padding:1.15rem}
  .about-icon{width:72px;height:72px;padding:5px}
  .consulta-float{left:10px;right:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:.36rem}
  .consulta-label{display:none}
  .consulta-icon{height:40px;width:40px;font-size:1.4rem}
  .has-cart .consulta-float{bottom:calc(5.85rem + env(safe-area-inset-bottom,0px))}
}
@media (max-width:365px){
 .brand-name{font-size:.76rem}
 .hero-compact{grid-template-columns:38px minmax(0,1fr)}
 .hero-identity{width:38px;height:38px}
 .hero-actions .btn{font-size:.69rem}
 .hero-secondary{font-size:.6rem}
 .price{font-size:1.02rem}
 .card-title{font-size:.74rem}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.card *,.btn{transition:none!important;animation:none!important}}

/* Aclaraciones de color y compra confirmada, con legibilidad en móvil. */
.color-rosa-tag{position:absolute;left:.6rem;bottom:.6rem;z-index:3;background:#a82464;color:#fff;border-radius:999px;padding:.34rem .58rem;font-size:.72rem;font-weight:800;letter-spacing:.015em;pointer-events:none;box-shadow:0 2px 9px #411b3640}
.color-rosa-note{background:#fff3f8;border:1px solid #e9b7cd;border-radius:.7rem;padding:.65rem .8rem;color:#6d2146;font-weight:750;font-size:.9rem;line-height:1.5;margin:.65rem 0}
.review-verified{display:inline-block;margin-left:.5rem;padding:.14rem .42rem;border-radius:999px;background:#e3f4ed;color:#13573b;font-size:.72rem;font-weight:700;line-height:1.6;vertical-align:middle}
@media(max-width:640px){.color-rosa-tag{font-size:.65rem;padding:.28rem .46rem}.review-verified{margin:.35rem 0 0 0}}
