:root{--ink:#24203a;--muted:#6f6a7d;--purple:#7347d8;--pink:#ff5ba5;--yellow:#ffc928;--cyan:#34c8da;--green:#20b486;--surface:#fff;--soft:#f7f4ff;--line:#ece6fa;--shadow:0 18px 50px rgba(63,41,112,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-rounded,"Segoe UI",Arial,sans-serif;background:#fbfaff;color:var(--ink)}button,input{font:inherit}button,a{transition:.2s ease}a{text-decoration:none;color:inherit}.topbar{background:linear-gradient(90deg,var(--purple),var(--pink));color:#fff;text-align:center;padding:9px 16px;font-size:13px;font-weight:700}.site-header{height:86px;padding:0 5%;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;box-shadow:0 2px 20px rgba(50,30,90,.08);backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:12px}.logo-badge{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-weight:1000;font-size:22px;color:#fff;letter-spacing:-1px;background:linear-gradient(135deg,var(--purple),var(--pink) 58%,var(--yellow));box-shadow:0 9px 20px rgba(115,71,216,.25);transform:rotate(-3deg)}.logo-badge.small{width:42px;height:42px;border-radius:14px;font-size:17px}.brand-copy h1{margin:0;font-size:25px;letter-spacing:-.6px}.brand-copy p{margin:3px 0 0;color:var(--muted);font-size:12px;font-weight:650}.header-actions{display:flex;gap:10px;align-items:center}.wholesale-btn,.cart-chip{border:0;border-radius:14px;padding:12px 16px;font-weight:800;cursor:pointer}.wholesale-btn{background:#f0eaff;color:var(--purple)}.wholesale-btn:hover{background:#e5d9ff;transform:translateY(-1px)}.cart-chip{background:var(--ink);color:#fff}.cart-chip span{background:var(--yellow);color:var(--ink);border-radius:99px;padding:2px 7px;margin-left:4px}.hero{margin:28px 5% 18px;min-height:420px;border-radius:34px;padding:58px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;overflow:hidden;background:linear-gradient(120deg,#ede4ff 0%,#fff0f7 48%,#fff6cc 100%);position:relative}.hero:before{content:"";position:absolute;width:270px;height:270px;border-radius:50%;background:#fff8;right:-60px;top:-80px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:900;color:var(--purple)}.hero h2,.catalog-heading h2,.about h2,.socials-section h2{font-size:clamp(34px,4vw,56px);line-height:1.02;letter-spacing:-1.8px;margin:10px 0 18px}.hero p{font-size:18px;line-height:1.55;color:#59536a;max-width:650px}.hero-actions{display:flex;gap:12px;margin-top:28px}.primary,.secondary{padding:14px 21px;border-radius:14px;font-weight:850;border:0;cursor:pointer}.primary{background:var(--ink);color:white}.primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #2c234433}.secondary{background:white;color:var(--purple);box-shadow:0 7px 20px #5e41751a}.hero-art{height:300px;position:relative}.hero-logo{width:215px;height:215px;border-radius:48px;background:#fff;box-shadow:var(--shadow);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(3deg);display:grid;place-items:center;text-align:center;padding:24px}.hero-logo span{font-size:58px;font-weight:1000;background:linear-gradient(135deg,var(--purple),var(--pink),var(--yellow));-webkit-background-clip:text;color:transparent;line-height:.9}.hero-logo b{font-size:25px;line-height:1}.bubble{position:absolute;width:70px;height:70px;border-radius:24px;background:white;display:grid;place-items:center;font-size:34px;box-shadow:0 12px 30px #5e417522}.b1{left:5%;top:2%;transform:rotate(-12deg)}.b2{right:4%;top:8%;transform:rotate(9deg)}.b3{left:1%;bottom:3%;transform:rotate(8deg)}.b4{right:5%;bottom:2%;transform:rotate(-8deg)}.benefits{margin:0 5% 50px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.benefits>div{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:1px 12px;box-shadow:0 8px 30px #5c49730a}.benefits>div>span{grid-row:1/3;font-size:25px}.benefits b{font-size:14px}.benefits small{color:var(--muted);font-size:12px}.catalog-section{padding:40px 5% 70px}.catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.catalog-heading h2{font-size:38px;margin:8px 0}.search-wrap{width:min(520px,48vw);border:2px solid var(--line);background:#fff;border-radius:17px;padding:0 15px;display:flex;align-items:center;gap:8px}.search-wrap:focus-within{border-color:#c5b2f7;box-shadow:0 0 0 4px #eee8ff}.search-wrap input{width:100%;padding:14px 0;border:0;outline:0;background:transparent;color:var(--ink)}.categories{display:flex;gap:9px;overflow:auto;padding:16px 0 25px}.categories button{border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:99px;color:#554f64;font-weight:750;white-space:nowrap;cursor:pointer}.categories button.active,.categories button:hover{background:var(--purple);border-color:var(--purple);color:white}.shop-layout{display:grid;grid-template-columns:1fr 330px;gap:24px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.card{background:#fff;border-radius:22px;padding:13px;box-shadow:0 10px 35px rgba(55,39,88,.08);border:1px solid #f2edf9;position:relative;display:flex;flex-direction:column}.card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(55,39,88,.14)}.ph{height:175px;border-radius:16px;background:linear-gradient(135deg,#f0eaff,#fff1f7 55%,#fff7cd);display:grid;place-items:center;color:#8d7eab;font-size:13px;font-weight:700;overflow:hidden}.ph:before{content:"🎁";font-size:50px;display:block;position:absolute;opacity:.85}.ph span{margin-top:80px;z-index:1}.code{font-size:11px;color:#948ca3;margin-top:13px;text-transform:uppercase;letter-spacing:.4px}.card h3{margin:7px 0 7px;font-size:17px;line-height:1.2}.card p{margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.45;min-height:56px}.price-box{margin-top:auto;padding-top:8px}.list{font-size:12px;color:#8e8798}.cash{font-size:22px;font-weight:900;margin:2px 0 8px;color:var(--ink)}.wh-price{background:#eaf9f4;color:#11805f;padding:8px 10px;border-radius:10px;font-size:13px;font-weight:800;margin-bottom:9px}.card button{width:100%;border:0;border-radius:12px;padding:11px;background:linear-gradient(90deg,var(--purple),#8c5ce7);color:#fff;font-weight:850;cursor:pointer}.card button:hover{filter:brightness(.96)}.tag{position:absolute;top:23px;left:23px;background:var(--yellow);font-size:10px;font-weight:900;padding:6px 8px;border-radius:99px;z-index:2}.cart-panel{background:#fff;border-radius:24px;padding:20px;box-shadow:var(--shadow);height:max-content;position:sticky;top:112px;border:1px solid #eee8f8}.cart-title{display:flex;align-items:center;justify-content:space-between}.cart-title span{font-size:11px;color:var(--purple);font-weight:850;text-transform:uppercase;letter-spacing:1px}.cart-title h2{margin:2px 0 12px;font-size:23px}.cart-icon{font-size:28px!important}.cart-empty{padding:20px 8px;color:#8c849a;text-align:center;font-size:13px}.cartrow{padding:11px 0;border-bottom:1px solid #f0ecf5;font-size:13px;display:grid;grid-template-columns:1fr auto;gap:10px}.cartrow small{color:var(--muted)}.qty-controls{display:flex;align-items:center;gap:5px}.qty-controls button{width:25px;height:25px;border-radius:8px;border:0;background:#f2edfa;color:var(--purple);font-weight:900;cursor:pointer}.total{padding:17px 0;display:flex;justify-content:space-between;align-items:center}.total b{font-size:22px}.send-btn{width:100%;border:0;border-radius:13px;padding:13px;background:#20b486;color:white;font-weight:900;cursor:pointer}.send-btn:hover{background:#179d74}.cart-panel>small{display:block;margin-top:9px;color:#898292;font-size:11px;line-height:1.4}.about{margin:20px 5% 70px;border-radius:30px;background:var(--ink);color:white;padding:48px;display:grid;grid-template-columns:1fr 360px;gap:35px;align-items:center}.about .eyebrow{color:#d7c5ff}.about h2{font-size:39px;margin:8px 0 14px}.about p{color:#d8d3e2;line-height:1.6;margin:0;max-width:780px}.about-card{background:#ffffff12;border:1px solid #ffffff1c;border-radius:20px;padding:25px;display:grid;gap:5px}.about-card b{margin-top:8px}.about-card span{font-size:13px;color:#ded9e8}.socials-section{text-align:center;padding:10px 5% 70px}.socials-section h2{font-size:36px;margin:8px 0 24px}.socials{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.social{min-width:170px;padding:14px 18px;border-radius:15px;color:#fff;font-weight:850}.instagram{background:linear-gradient(100deg,#7b3dc7,#db3d85,#ff8b30)}.facebook{background:#1877f2}.tiktok{background:#15131a}.social.disabled{opacity:.55;cursor:not-allowed}.social small{font-weight:600;opacity:.8;margin-left:3px}footer{background:#f1edf8;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#756e80;font-size:12px}.footer-brand{display:flex;gap:10px;align-items:center}.footer-brand div:last-child{display:grid}.footer-brand b{color:var(--ink);font-size:15px}.modal{position:fixed;inset:0;background:#241b3eaa;z-index:100;display:none;place-items:center;padding:20px;backdrop-filter:blur(5px)}.modal.open{display:grid}.modal-card{width:min(470px,100%);background:white;border-radius:28px;padding:34px;box-shadow:0 35px 90px #241b3e55;position:relative}.modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:28px;color:#837a91;cursor:pointer}.modal-icon{font-size:38px;margin-bottom:10px}.modal h2{font-size:29px;margin:7px 0 8px}.modal p{color:var(--muted);line-height:1.5}.modal label{display:grid;gap:6px;font-size:12px;font-weight:800;margin-top:14px}.modal input{border:2px solid var(--line);border-radius:12px;padding:12px;outline:0}.modal input:focus{border-color:#bca4f6}.login-btn,.logout-btn{width:100%;padding:13px;border-radius:12px;font-weight:900;cursor:pointer;margin-top:17px}.login-btn{border:0;background:var(--purple);color:white}.logout-btn{border:1px solid #ddd2ef;background:white;color:#6f5f86;margin-top:8px}.demo-note{display:block;margin-top:12px;color:#958da1;line-height:1.45}.login-error{color:#c63063;font-size:12px;font-weight:800;margin-top:9px}.hidden{display:none!important}.wholesale-mode .wholesale-btn{background:#e2fff5;color:#087050}.wholesale-mode .topbar{background:linear-gradient(90deg,#158463,#20b486)}
@media(max-width:980px){.hero{grid-template-columns:1fr;padding:38px}.hero-art{display:none}.benefits{grid-template-columns:repeat(2,1fr)}.shop-layout{grid-template-columns:1fr}.cart-panel{position:static}.about{grid-template-columns:1fr}.catalog-heading{align-items:stretch;flex-direction:column}.search-wrap{width:100%}}
@media(max-width:650px){.topbar{font-size:11px}.site-header{height:auto;padding:12px 4%;gap:10px}.logo-badge{width:45px;height:45px;border-radius:14px;font-size:18px}.brand-copy h1{font-size:18px}.brand-copy p{display:none}.header-actions{gap:5px}.wholesale-btn,.cart-chip{padding:9px 10px;font-size:11px}.hero{margin:15px 4%;padding:28px 22px;min-height:0;border-radius:24px}.hero h2{font-size:38px}.hero p{font-size:15px}.hero-actions{flex-direction:column}.benefits{margin:0 4% 25px;grid-template-columns:1fr}.catalog-section{padding:25px 4% 45px}.catalog-heading h2{font-size:31px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:9px;border-radius:17px}.ph{height:130px}.card h3{font-size:14px}.card p{font-size:11px;min-height:64px}.cash{font-size:18px}.about{margin:10px 4% 45px;padding:27px;border-radius:22px}.about h2{font-size:31px}.socials-section{padding:5px 4% 45px}footer{flex-direction:column;text-align:center}.footer-brand{text-align:left}.modal-card{padding:28px 22px}}

.brand-logo{width:260px;max-width:42vw;height:64px;object-fit:contain;object-position:left center;border-radius:14px;box-shadow:0 7px 18px rgba(87,46,165,.12)}.hero-logo{width:min(360px,86%);height:auto;min-height:190px;padding:12px;border-radius:30px}.hero-logo img{width:100%;height:auto;border-radius:22px;display:block}.footer-logo{width:180px;max-width:42vw;height:50px;object-fit:contain;object-position:left center;border-radius:10px}@media(max-width:650px){.brand-logo{width:170px;max-width:45vw;height:48px}.footer-logo{width:150px;height:42px}}
/* Mejoras: fotos reales, cantidades y accesos directos */
.site-header{min-height:108px;flex-wrap:wrap}.brand{flex:0 1 430px}.brand-logo{width:410px;max-width:48vw;height:92px;object-fit:cover;object-position:center;border-radius:16px}.quick-links{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;margin-left:auto}.quick{padding:8px 10px;border-radius:10px;font-size:11px;font-weight:850;color:#fff;box-shadow:0 5px 15px rgba(40,25,70,.10)}.whatsapp{background:#20b486}.instagram-q{background:linear-gradient(100deg,#7b3dc7,#db3d85,#ff8b30)}.facebook-q{background:#1877f2}.tiktok-q{background:#15131a}.ph{height:210px;background:#fff}.ph:before{display:none}.ph img{width:100%;height:100%;object-fit:contain;display:block;padding:8px}.buy-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.qty-label{font-size:12px;font-weight:850;color:#655d72}.product-qty{display:grid;grid-template-columns:34px 50px 34px;align-items:center;border:1px solid #e4dced;border-radius:11px;overflow:hidden;background:#fff}.product-qty button{width:34px;height:36px;padding:0;border-radius:0;background:#f1ebfa;color:var(--purple);font-size:18px}.product-qty input{width:50px;height:36px;border:0;text-align:center;font-weight:850;color:var(--ink);outline:0;-moz-appearance:textfield}.product-qty input::-webkit-outer-spin-button,.product-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.card .add-btn{margin-top:0}.floating-whatsapp{position:fixed;right:20px;bottom:20px;z-index:90;background:#20b486;color:#fff;padding:14px 18px;border-radius:999px;font-weight:900;box-shadow:0 12px 30px rgba(20,120,90,.3)}
@media(max-width:1120px){.quick-links{order:3;width:100%;justify-content:center}.site-header{padding-bottom:14px}.brand-logo{width:360px;max-width:55vw}}
@media(max-width:650px){.site-header{justify-content:center}.brand{flex:1 1 100%;display:flex;justify-content:center}.brand-logo{width:100%;max-width:94vw;height:74px}.header-actions{width:100%;justify-content:center}.quick-links{gap:5px}.quick{padding:7px 8px;font-size:10px}.ph{height:155px}.buy-row{align-items:flex-start;flex-direction:column}.product-qty{grid-template-columns:31px 44px 31px}.product-qty button{width:31px}.product-qty input{width:44px}.floating-whatsapp{right:12px;bottom:12px;padding:11px 14px;font-size:12px}}
/* Ajustes solicitados: logo superior grande, carrusel destacado y código en carrito */
.site-header{min-height:128px;padding-left:3%;padding-right:3%;position:sticky;overflow:visible}
.brand{flex:0 0 auto;min-width:min(560px,48vw)}
.brand-logo{width:540px;max-width:48vw;height:112px;object-fit:cover;object-position:center;border-radius:18px;box-shadow:0 9px 24px rgba(87,46,165,.16)}
.hero-art{height:340px;display:grid;place-items:center}
.featured-slider{width:min(430px,100%);height:330px;background:rgba(255,255,255,.9);border-radius:30px;box-shadow:var(--shadow);position:relative;padding:42px 20px 42px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.7)}
.featured-slider:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(115,71,216,.06),rgba(255,91,165,.06),rgba(255,201,40,.08));pointer-events:none}
.featured-slider img{width:100%;height:215px;object-fit:contain;display:block;opacity:0;transform:scale(.97);transition:opacity .35s ease,transform .35s ease;position:relative;z-index:1}
.featured-slider img.show{opacity:1;transform:scale(1)}
.featured-badge{position:absolute;top:14px;left:16px;background:var(--yellow);padding:7px 11px;border-radius:999px;font-size:10px;font-weight:950;letter-spacing:.5px;z-index:2}
.featured-caption{font-size:15px;font-weight:950;text-align:center;position:relative;z-index:2;margin-top:4px}
.slider-dots{position:absolute;bottom:13px;display:flex;gap:7px;z-index:3}
.slider-dot{width:8px;height:8px;border-radius:50%;border:0;background:#d9d1e8;padding:0;cursor:pointer}
.slider-dot.active{background:var(--purple);transform:scale(1.25)}
.cart-code{font-weight:800;color:var(--purple)!important}
@media(max-width:1120px){.brand{min-width:0}.brand-logo{width:470px;max-width:58vw;height:100px}.hero-art{height:320px}.featured-slider{height:305px}}
@media(max-width:980px){.hero-art{display:grid;height:300px;margin-top:20px}.featured-slider{width:min(460px,100%);height:290px}.featured-slider img{height:185px}}
@media(max-width:650px){.site-header{min-height:0}.brand{width:100%}.brand-logo{width:100%;max-width:96vw;height:auto;max-height:112px;object-fit:cover}.hero-art{display:grid;height:270px}.featured-slider{height:260px;padding-top:38px}.featured-slider img{height:160px}}

/* Ajuste encabezado: logo panorámico, más ancho y menos alto */
.site-header{min-height:82px;height:auto;padding-top:7px;padding-bottom:7px}
.brand{min-width:min(500px,46vw)}
.brand-logo{width:500px;max-width:46vw;height:70px;object-fit:cover;object-position:center;border-radius:14px}
@media(max-width:1120px){.site-header{min-height:78px}.brand-logo{width:430px;max-width:54vw;height:64px}}
@media(max-width:650px){.site-header{padding-top:6px;padding-bottom:8px}.brand-logo{width:100%;max-width:94vw;height:58px;object-fit:cover;border-radius:12px}}

.location-q{background:linear-gradient(90deg,#ea4335,#fbbc05);color:#fff}.map-btn{display:inline-block;margin:10px 0 5px;padding:11px 14px;border-radius:12px;background:#fff;color:#31264b;font-weight:900;font-size:13px}.brand{justify-content:center}.brand-logo{object-fit:contain!important;object-position:center!important;background:linear-gradient(90deg,#4637dd,#ed31bf);box-shadow:none!important}

/* Versión cabecera vidriera: logo centrado + productos laterales */
.site-header{
  min-height:132px;
  padding:10px 4% 12px;
  display:grid;
  grid-template-columns:minmax(520px,1.25fr) minmax(330px,.9fr) auto;
  gap:18px;
  align-items:center;
}
.brand-showcase{
  min-width:0;
  height:108px;
  border-radius:22px;
  display:grid;
  grid-template-columns:1fr minmax(310px,470px) 1fr;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  background:linear-gradient(110deg,#5b3ee2 0%,#953de4 35%,#ef3eb7 70%,#f24e94 100%);
  overflow:hidden;
  box-shadow:0 10px 28px rgba(84,49,177,.18);
}
.brand-showcase .brand{min-width:0;justify-content:center;position:relative;z-index:2}
.brand-showcase .brand-logo{
  width:100%;
  max-width:470px;
  height:92px;
  object-fit:contain!important;
  background:transparent;
  border-radius:12px;
}
.side-products{height:100%;display:flex;align-items:center;justify-content:center;position:relative;min-width:0}
.side-product{
  width:74px;height:74px;object-fit:contain;background:#fff;border-radius:18px;padding:5px;
  box-shadow:0 9px 22px rgba(28,18,70,.22);position:absolute;border:2px solid rgba(255,255,255,.8)
}
.left-side .sp1{left:2%;transform:rotate(-8deg)}
.left-side .sp2{right:0;transform:rotate(7deg) scale(.9)}
.right-side .sp3{left:0;transform:rotate(-5deg) scale(.92)}
.right-side .sp4{right:2%;transform:rotate(8deg)}
.quick-links{display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:center}
.quick-links .quick{padding:9px 11px;border-radius:12px;font-size:12px;font-weight:900;white-space:nowrap}
.header-actions{justify-content:flex-end;flex-wrap:wrap}
@media(max-width:1180px){
  .site-header{grid-template-columns:1fr auto;min-height:148px}
  .brand-showcase{grid-column:1/-1;height:96px;grid-template-columns:1fr minmax(280px,430px) 1fr}
  .brand-showcase .brand-logo{height:82px}
  .side-product{width:64px;height:64px}
  .quick-links{justify-content:flex-start}
}
@media(max-width:700px){
  .site-header{display:flex;flex-direction:column;gap:8px;padding:8px 3% 10px;position:relative}
  .brand-showcase{width:100%;height:90px;grid-template-columns:62px 1fr 62px;padding:4px 6px}
  .brand-showcase .brand-logo{height:76px;max-width:100%}
  .side-products .side-product{width:48px;height:48px;border-radius:12px}
  .left-side .sp2,.right-side .sp3{display:none}
  .quick-links{justify-content:center}
  .header-actions{justify-content:center}
}

/* Versión compacta: encabezado bajo, logo solo y promociones */
.site-header{
  min-height:64px!important;
  height:auto!important;
  padding:6px 4%!important;
  display:grid!important;
  grid-template-columns:minmax(245px,360px) 1fr auto!important;
  gap:12px!important;
  align-items:center!important;
}
.brand-showcase.compact-brand{
  height:58px!important;
  min-width:0;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 8px!important;
  border-radius:14px!important;
  background:linear-gradient(110deg,#5b3ee2,#ef3eb7)!important;
  overflow:hidden;
  box-shadow:0 7px 18px rgba(84,49,177,.16)!important;
}
.compact-brand .brand{width:100%;height:100%;display:flex;justify-content:center}
.compact-brand .brand-logo{width:100%!important;height:52px!important;max-width:350px!important;object-fit:contain!important;border-radius:8px!important;background:transparent!important}
.side-products{display:none!important}
.quick-links{justify-content:center!important;gap:5px!important}
.quick-links .quick{padding:7px 9px!important;font-size:11px!important}
.header-actions{gap:6px!important;flex-wrap:nowrap!important}
.wholesale-btn,.cart-chip{padding:9px 11px!important;font-size:12px!important}

.bank-promos{max-width:1240px;margin:18px auto 12px;padding:0 5%}
.promo-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}
.promo-heading h2{margin:4px 0 0;font-size:26px}
.promo-heading p{margin:0;max-width:520px;color:var(--muted);font-size:13px;line-height:1.45}
.promo-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.promo-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;box-shadow:0 8px 22px rgba(63,41,112,.07)}
.promo-card span{font-size:25px;grid-row:1/3}
.promo-card b{font-size:14px}
.promo-card small{color:var(--muted);font-size:11px}
.promo-note{display:block;margin-top:8px;color:var(--muted);font-size:11px}
.payment-label{display:block;margin:12px 0 10px;font-size:12px;font-weight:900}
.payment-label select{width:100%;margin-top:6px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;color:var(--ink)}
.wh-request{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}
.wh-request h3{margin:0 0 5px}.wh-request p{font-size:12px;color:var(--muted)}
.wh-request input{width:100%;margin:5px 0;padding:10px;border:1px solid var(--line);border-radius:10px}
.request-btn{width:100%;margin-top:7px;border:0;border-radius:12px;padding:11px;background:linear-gradient(90deg,var(--green),#38c58e);color:white;font-weight:900;cursor:pointer}

@media(max-width:980px){
 .site-header{grid-template-columns:1fr auto!important}
 .brand-showcase.compact-brand{grid-column:1/-1;width:100%;height:54px!important}
 .compact-brand .brand-logo{height:48px!important}
 .quick-links{justify-content:flex-start!important}
 .promo-cards{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
 .site-header{display:flex!important;flex-direction:column!important;gap:6px!important;position:relative!important;padding:5px 3%!important}
 .brand-showcase.compact-brand{height:50px!important}
 .compact-brand .brand-logo{height:44px!important}
 .quick-links{justify-content:center!important}
 .header-actions{justify-content:center!important}
 .promo-heading{display:block}.promo-heading p{margin-top:8px}.promo-cards{grid-template-columns:1fr 1fr}.promo-card{padding:10px}
}


/* NUEVA VERSION - banner ancho, bajo y visible */
.topbar{background:#0d164b!important;padding:7px 16px!important}
.site-header{
  position:relative!important; top:auto!important; min-height:0!important;
  padding:0!important; display:grid!important; grid-template-columns:1fr!important;
  gap:0!important; background:#fff!important; box-shadow:none!important;
}
.brand-showcase.compact-brand{
  width:100%!important; height:174px!important; max-width:none!important;
  border-radius:0!important; padding:0!important; margin:0!important;
  background:linear-gradient(90deg,#1e36c9,#ed278b)!important; box-shadow:none!important;
}
.compact-brand .brand{width:100%!important;height:100%!important;display:flex!important}
.compact-brand .brand-logo{
  width:100%!important; max-width:none!important; height:100%!important;
  object-fit:cover!important; object-position:center!important; border-radius:0!important;
}
.quick-links{
  position:absolute!important; inset:0!important; z-index:3!important; pointer-events:none!important;
  display:flex!important; align-items:center!important; justify-content:space-between!important;
  padding:0 4%!important;
}
.quick-links .quick{display:none!important}
.quick-links .whatsapp,.quick-links .location-q{
  display:inline-flex!important; pointer-events:auto!important; background:rgba(13,22,75,.72)!important;
  color:#fff!important; border:1px solid rgba(255,255,255,.55)!important; padding:10px 14px!important;
  border-radius:14px!important; font-size:13px!important; backdrop-filter:blur(4px)
}
.header-actions{
  position:absolute!important; right:4%!important; bottom:12px!important; z-index:4!important;
}
.header-actions .wholesale-btn{display:none!important}
.cart-chip{background:rgba(13,22,75,.82)!important;border:1px solid rgba(255,255,255,.45)!important}
.store-nav{
  min-height:48px; display:flex; align-items:stretch; overflow-x:auto; background:#071344; color:#fff;
  padding-left:4%; box-shadow:0 5px 18px rgba(7,19,68,.12); position:sticky; top:0; z-index:30
}
.store-nav a,.store-nav button{
  flex:0 0 auto; border:0; background:transparent; color:#fff; padding:0 16px; font-size:12px;
  font-weight:900; display:flex; align-items:center; cursor:pointer
}
.store-nav a.active{background:#f42582}.store-nav a:hover{background:#17255c}
.store-nav button{margin-left:auto;color:#ff4b9a;padding-right:4%}
.bank-promos{max-width:none!important;margin:14px 3% 10px!important;padding:14px 18px!important;background:#fff!important;border:1px solid #e8e8ef!important;border-radius:18px!important}
.promo-cards{grid-template-columns:repeat(4,1fr)!important}
.promo-card{min-height:112px!important;text-align:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.promo-card b{font-size:16px!important}.promo-card small{margin-top:6px!important}
.benefits{margin:12px 3% 18px!important}
.catalog-section{padding:18px 3% 55px!important}
@media(max-width:800px){
  .brand-showcase.compact-brand{height:120px!important}
  .quick-links{padding:0 2%!important}.quick-links .whatsapp,.quick-links .location-q{font-size:10px!important;padding:7px 9px!important}
  .header-actions{right:2%!important;bottom:7px!important}.cart-chip{font-size:10px!important;padding:7px 9px!important}
  .store-nav{padding-left:0}.store-nav a,.store-nav button{padding:0 11px;font-size:10px}.store-nav button{padding-right:12px}
  .promo-cards{grid-template-columns:1fr 1fr!important}
}

/* AJUSTES SOLICITADOS */
.brand-showcase.compact-brand{
  background:linear-gradient(90deg,#4d43c7 0%,#b33ca5 45%,#ef3d84 100%)!important;
  overflow:hidden!important;
}
.compact-brand .brand{
  justify-content:center!important;
  align-items:center!important;
}
.compact-brand .brand-logo{
  object-fit:contain!important;
  object-position:center center!important;
  margin:0 auto!important;
  display:block!important;
  background:transparent!important;
}

/* Reemplaza azules fuertes por tonos del logo */
:root{
  --soft-violet:#8e66c9;
  --soft-purple:#a56bd6;
  --soft-pink:#e75d9d;
  --soft-lilac:#efe5f7;
  --deep-purple:#5f3a8c;
}
.store-nav{
  background:#6d4ca3!important;
}
.store-nav a:hover{
  background:#815eb4!important;
}
.bank-promos{
  border-color:#eadcf3!important;
}
.promo-card{
  border-color:#caaee3!important;
}
.promo-card b,
.section-title,
.catalog-section h2{
  color:#6f4998!important;
}
.cart-chip{
  background:rgba(111,73,152,.88)!important;
}
.quick-links .whatsapp,
.quick-links .location-q{
  background:rgba(111,73,152,.74)!important;
}
.wholesale-btn,
.store-nav button{
  color:#ffd4ea!important;
}
.store-nav a.active{
  background:#e85b9d!important;
}

/* VERSION REAL 2 - integración visual del banner */
.brand-showcase.compact-brand{
  background:linear-gradient(90deg,#5b35a4 0%,#a82f9a 38%,#ea3d87 72%,#d92c83 100%)!important;
  overflow:hidden!important;
}
.compact-brand .brand{
  position:relative!important;
  justify-content:center!important;
  align-items:center!important;
  overflow:hidden!important;
}
.compact-brand .brand-logo{
  width:min(100%,1600px)!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
  /* Desvanece los bordes para fundirlos con el fondo */
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 7%,#000 93%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 7%,#000 93%,transparent 100%);
}

/* Tonos suaves inspirados en el logo */
.store-nav{background:#7d55a8!important}
.store-nav a:hover{background:#9369ba!important}
.store-nav a.active{background:#ed5b9f!important}
.store-nav button{color:#ffe0ef!important}
.categories button.active,.add-btn,.send-btn,.login-btn{background:linear-gradient(135deg,#b95ec8,#ec5d9e)!important}
.card,.cart-panel,.bank-promos,.about-card{border-color:#eadcf4!important}
.cart-code,.code{color:#8463a4!important}
.price-box .list{color:#6f528e!important}
.price-box .cash{color:#dd3c83!important}

.promo-cards{
  grid-template-columns:repeat(5,minmax(150px,1fr))!important;
}
.cash-promo{
  border:2px solid #ef74ad!important;
  background:linear-gradient(180deg,#fff 0%,#fff3f9 100%)!important;
}
.cash-promo span{font-size:24px}
.cash-promo b{color:#d92f80!important}
.cash-promo small{line-height:1.45}
.cash-promo strong{color:#d92f80}

.payment-price-note{
  margin:10px 0 0;
  padding:10px 12px;
  border-radius:12px;
  background:#f8effb;
  color:#684b83;
  font-size:12px;
  font-weight:700;
}
.cash-discount{
  display:inline-flex;
  margin:7px 0 3px;
  padding:5px 8px;
  border-radius:999px;
  background:#fff0f7;
  color:#d92f80;
  font-size:11px;
  font-weight:900;
}
.wholesale-mode .list,
.wholesale-mode .cash,
.wholesale-mode .cash-discount{
  display:none!important;
}
.wholesale-mode #paymentWrap{
  display:none!important;
}
.wholesale-mode #paymentHelp{
  display:block!important;
  padding:10px 12px;
  border-radius:12px;
  background:#f6eef9;
  color:#684b83;
  font-weight:800;
}
@media(max-width:1100px){
  .promo-cards{grid-template-columns:repeat(3,minmax(150px,1fr))!important}
}
@media(max-width:700px){
  .promo-cards{grid-template-columns:1fr 1fr!important}
  .brand-showcase.compact-brand{height:105px!important}
  .compact-brand .brand-logo{
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 3%,#000 97%,transparent 100%);
    mask-image:linear-gradient(to right,transparent 0%,#000 3%,#000 97%,transparent 100%);
  }
}


/* =========================================================
   CABECERA FINAL:
   - mantiene lugar y tamaño general
   - logo centrado
   - mismo diseño extendido a los costados
   - estrellas decorativas en los laterales
   - sin corte visible entre imagen y fondo
   ========================================================= */

.brand-showcase.compact-brand{
  position:relative!important;
  height:174px!important;
  width:100%!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 50% 35%, rgba(229,78,141,.55), transparent 34%),
    linear-gradient(100deg,#4f3a91 0%,#8b3c9e 27%,#c63796 55%,#e9357f 100%)!important;
}

/* estrellas y círculos a ambos costados para que el diseño continúe */
.brand-showcase.compact-brand::before,
.brand-showcase.compact-brand::after{
  content:"✦   ☆   ✦      ○      ★    ☆      ✦";
  position:absolute;
  top:0;
  bottom:0;
  width:32%;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:pre;
  color:rgba(255,255,255,.95);
  font-size:23px;
  letter-spacing:13px;
  text-shadow:
    0 -42px 0 rgba(255,255,255,.85),
    0 44px 0 rgba(255,255,255,.70),
    35px -20px 0 rgba(255,255,255,.75),
    -30px 25px 0 rgba(255,255,255,.65);
  z-index:0;
  pointer-events:none;
}
.brand-showcase.compact-brand::before{left:0}
.brand-showcase.compact-brand::after{
  right:0;
  transform:scaleX(-1);
}

/* el logo permanece centrado y con tamaño visual similar */
.compact-brand .brand{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:1!important;
  overflow:hidden!important;
}

.compact-brand .brand-logo{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(100%, 930px)!important;
  max-width:930px!important;
  height:174px!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-mask-image:linear-gradient(
    to right,
    transparent 0%,
    rgba(0,0,0,.20) 3%,
    #000 11%,
    #000 89%,
    rgba(0,0,0,.20) 97%,
    transparent 100%
  )!important;
  mask-image:linear-gradient(
    to right,
    transparent 0%,
    rgba(0,0,0,.20) 3%,
    #000 11%,
    #000 89%,
    rgba(0,0,0,.20) 97%,
    transparent 100%
  )!important;
}

/* oscurecimiento suave en los extremos, copia la sensación del arte */
.brand-showcase.compact-brand .brand::before,
.brand-showcase.compact-brand .brand::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:15%;
  z-index:2;
  pointer-events:none;
}
.brand-showcase.compact-brand .brand::before{
  left:0;
  background:linear-gradient(90deg,rgba(75,55,143,.70),transparent);
}
.brand-showcase.compact-brand .brand::after{
  right:0;
  background:linear-gradient(270deg,rgba(229,53,127,.55),transparent);
}

/* botones por encima del fondo sin alterar el resto de la página */
.quick-links,.header-actions{
  z-index:5!important;
}

@media(max-width:800px){
  .brand-showcase.compact-brand{height:120px!important}
  .compact-brand .brand-logo{
    width:min(100%,650px)!important;
    max-width:650px!important;
    height:120px!important;
  }
  .brand-showcase.compact-brand::before,
  .brand-showcase.compact-brand::after{
    width:20%;
    font-size:15px;
    letter-spacing:7px;
  }
}

/* CORRECCIÓN: centrado exacto del logo, sin mover ni cambiar el resto */
.brand-showcase.compact-brand .brand{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}
.brand-showcase.compact-brand .brand-logo{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  object-position:50% 50%!important;
}

/* AJUSTE CABECERA: logo más legible en altura, diseño de punta a punta */
.brand-showcase.compact-brand{
  height:205px!important;
  min-height:205px!important;
  width:100%!important;
  background:
    radial-gradient(circle at 50% 36%, rgba(229,78,141,.55), transparent 35%),
    linear-gradient(100deg,#4f3a91 0%,#8b3c9e 27%,#c63796 55%,#e9357f 100%)!important;
}
.compact-brand .brand{
  width:100%!important;
  height:205px!important;
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}
.compact-brand .brand-logo{
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(100%,1095px)!important;
  max-width:1095px!important;
  height:205px!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 91%,transparent 100%)!important;
  mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 91%,transparent 100%)!important;
}
.brand-showcase.compact-brand::before,
.brand-showcase.compact-brand::after{
  height:205px!important;
}
@media(max-width:800px){
  .brand-showcase.compact-brand{height:135px!important;min-height:135px!important}
  .compact-brand .brand{height:135px!important}
  .compact-brand .brand-logo{height:135px!important;width:min(100%,720px)!important;max-width:720px!important}
}

/* LOGO: frase completa y bien ubicada entre las líneas */
.brand-showcase.compact-brand{
  height:205px!important;
  min-height:205px!important;
  overflow:hidden!important;
  position:relative!important;
}
.compact-brand .brand{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:205px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.compact-brand .brand-logo{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(92%,1000px)!important;
  max-width:1000px!important;
  height:176px!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
  mask-image:linear-gradient(to right,transparent 0%,#000 7%,#000 93%,transparent 100%)!important;
}
@media(max-width:800px){
  .brand-showcase.compact-brand{height:140px!important;min-height:140px!important}
  .compact-brand .brand{height:140px!important}
  .compact-brand .brand-logo{
    width:94%!important;
    max-width:720px!important;
    height:120px!important;
    object-fit:contain!important;
  }
}

/* ================== ENVÍOS Y VENTA SIN BLOQUEO DE STOCK ================== */
.shipping-section{
  max-width:1280px;margin:28px auto;padding:30px 24px;border-radius:26px;
  background:linear-gradient(135deg,#fff 0%,#fff4fa 100%);border:1px solid #efd8ea;
}
.shipping-heading{text-align:center;max-width:760px;margin:0 auto 22px}.shipping-heading h2{margin:6px 0 8px}.shipping-heading p{margin:0;color:#62596d}
.shipping-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.shipping-card{background:#fff;border:1px solid #ead7e8;border-radius:20px;padding:22px;box-shadow:0 10px 30px rgba(66,35,85,.07)}
.shipping-card h3{margin:9px 0 8px}.shipping-card p{color:#5f5667;line-height:1.5;margin:0 0 12px}.shipping-card small{display:block;color:#7a647a;font-weight:700;line-height:1.45}
.shipping-icon{font-size:34px}.stock-card{background:linear-gradient(145deg,#fff,#f9f3ff)}
.delivery-label{display:block;font-weight:800;margin:14px 0 7px;color:#3b2850}.delivery-label select{width:100%;margin-top:7px;padding:11px 12px;border:1px solid #d9c7dc;border-radius:11px;background:#fff;font:inherit;color:#352840}
.delivery-note{font-size:12px;line-height:1.45;padding:10px 11px;border-radius:10px;background:#f7f0fa;color:#644e70;margin-bottom:10px}
.availability-note{display:inline-block;margin:2px 0 10px;padding:6px 9px;border-radius:999px;background:#f3eafb;color:#6f3b80;font-size:12px;font-weight:800}
@media(max-width:850px){.shipping-cards{grid-template-columns:1fr}.shipping-section{margin:18px 12px;padding:22px 16px}}

/* Banderín publicitario de envíos */
.shipping-promo-banner{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  width:100%;
  box-sizing:border-box;
  padding:12px 22px 16px;
  text-decoration:none;
  text-align:center;
  background:linear-gradient(90deg,#ff4fa0 0%,#a849d8 48%,#5a42c7 100%);
  color:#fff;
  box-shadow:0 5px 16px rgba(72,36,122,.18);
  overflow:hidden;
}
.shipping-promo-banner::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-13px;
  transform:translateX(-50%) rotate(45deg);
  width:26px;
  height:26px;
  background:#a849d8;
}
.shipping-promo-icon{font-size:30px;line-height:1}
.shipping-promo-copy{display:flex;flex-direction:column;gap:2px;position:relative;z-index:1}
.shipping-promo-copy strong{font-size:20px;letter-spacing:.5px}
.shipping-promo-copy small{font-size:13px;font-weight:700}
.shipping-promo-arrow{
  position:relative;
  z-index:1;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.8);
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
@media(max-width:700px){
  .shipping-promo-banner{gap:9px;padding:10px 10px 14px}
  .shipping-promo-icon{font-size:24px}
  .shipping-promo-copy strong{font-size:16px}
  .shipping-promo-copy small{font-size:11px}
  .shipping-promo-arrow{display:none}
}

/* Catálogo y fichas de producto */
body{font-size:16px}.site-header{position:relative;display:flex;flex-wrap:wrap;gap:16px;padding:18px 4%;height:auto;min-height:0}.brand-showcase.compact-brand{height:auto;flex:1;min-width:240px;display:block;background:none;box-shadow:none}.brand{min-width:0}.brand-logo{max-width:100%;width:370px;height:86px}.shipping-promo-banner{order:4;border-radius:12px}.quick-links{flex:1}.quick,.header-actions button,.cart-chip{font-size:14px}.store-nav{overflow-x:auto;justify-content:flex-start;white-space:nowrap}.store-nav a,.store-nav button{font-size:14px}.catalog-section{padding-top:35px}.catalog-heading h2{font-size:38px;letter-spacing:-1px}.catalog-heading{flex-wrap:wrap;gap:20px}.shop-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{padding:18px;border-radius:18px;border:1px solid #e3d9f3;box-shadow:0 5px 16px #33204e08;display:flex;flex-direction:column;min-width:0}.card h3{font-size:18px;line-height:1.3;min-height:0}.card p{font-size:16px;line-height:1.5;min-height:0}.card .ph{height:230px}.code,.list,.availability-note,.qty-label,.eyebrow,.promo-note{font-size:14px}.price-box{margin-top:auto}.cash{font-size:25px;color:#6036bb}.share-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #e4dded}.share-actions button,.detail-link{font-size:14px;border:1px solid #d8c7ed;border-radius:9px;background:#fff;color:#583394;padding:9px 10px;cursor:pointer}.card .share-actions button{width:auto;margin:0;font-weight:600}.share-actions button:hover{background:#f1eaff}.quantity{width:75px;padding:8px;border:1px solid #cab9df;border-radius:8px}.order-line{display:flex;justify-content:space-between;margin:12px 0;font-size:15px;gap:12px}.cart-panel{top:20px}.cart-panel input{width:100%;padding:12px;border:1px solid #d4c6e5;border-radius:8px;font:inherit}.payment-label,.delivery-label{font-size:15px}.delivery-note,#paymentHelp{font-size:14px;line-height:1.5}.detail-grid{grid-template-columns:1fr}.product-detail .ph{height:420px}.product-detail h3{font-size:28px}.back-link{width:100%;font-size:16px;color:#6036bb}.share-help{font-size:14px!important}.designer{font-weight:700;margin-left:auto}.shipping-promo-copy small{font-size:14px}.shipping-promo-copy strong{font-size:20px}.promo-card small,.benefits small{font-size:14px}.benefits{margin-top:25px}.modal label{font-size:15px}.modal-card{max-height:90vh;overflow-y:auto}#notice{position:fixed;bottom:85px;left:50%;transform:translateX(-50%);background:#24203a;color:white;padding:16px 22px;border-radius:12px;max-width:90vw;width:max-content;z-index:1000;display:none;font-size:16px}#notice.visible{display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bf6b0b;outline-offset:3px}.floating-whatsapp{font-size:14px}
@media(max-width:1200px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}}
@media(max-width:900px){.shop-layout{grid-template-columns:1fr}.cart-panel{position:static}.site-header{display:flex}.quick-links{flex-basis:100%;order:3}.brand-showcase.compact-brand{min-width:0;width:100%;flex-basis:100%}.brand-logo{width:350px;height:80px}.header-actions{margin:auto}.designer{margin:0}.shipping-promo-copy strong{font-size:18px}}
@media(max-width:540px){.grid{grid-template-columns:1fr}.card .ph{height:280px}.card h3{font-size:20px}.card p{font-size:16px}.catalog-heading h2{font-size:30px}.site-header{padding:12px 4%}.shipping-promo-banner{padding:16px}.shipping-promo-copy small{font-size:14px}.quick{font-size:14px}.product-detail .ph{height:320px}.topbar{font-size:13px}.search-wrap{min-width:0}.search-wrap input{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Acciones compactas; las opciones se abren a pedido. */
.card .share-actions{gap:6px;margin-top:10px;padding-top:8px;align-items:flex-start}
.card .share-actions .detail-link,.share-menu summary{display:inline-flex;align-items:center;min-height:32px;padding:5px 9px;font-size:14px;line-height:20px;border:1px solid #d8c7ed;border-radius:7px;color:#583394;background:white;cursor:pointer;font-weight:600}
.share-menu{position:relative}.share-menu summary{list-style:none}.share-menu summary::-webkit-details-marker{display:none}.share-menu summary::after{content:"⌄";margin-left:7px}.share-menu[open] summary::after{content:"⌃"}
.share-options{position:absolute;right:0;top:calc(100% + 5px);z-index:10;min-width:215px;max-width:calc(100vw - 40px);padding:6px;background:white;border:1px solid #d8c7ed;border-radius:10px;box-shadow:0 8px 24px #24203a26;display:grid;gap:2px}
.card .share-options button{display:block;width:100%;text-align:left;border:0;padding:9px 10px;font-size:14px;line-height:20px;min-height:38px}
.card:not(.product-detail){padding:14px}.card:not(.product-detail) .ph{height:190px}.card:not(.product-detail)>p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0;line-height:1.4}.card:not(.product-detail) h3{margin:8px 0;font-size:17px}.card:not(.product-detail) .share-help{display:block}.share-menu summary:focus-visible{outline:3px solid #bf6b0b;outline-offset:3px}
@media(pointer:coarse){.card .share-actions .detail-link,.share-menu summary{min-height:40px}.card .share-options button{min-height:44px}}

/* Firma centrada y separada del acceso flotante a WhatsApp. */
footer{flex-wrap:wrap;padding-bottom:100px!important}
footer .designer{flex:0 0 100%;width:100%;margin:18px 0 0!important;text-align:center;font-size:16px;line-height:1.7;position:relative}
footer .designer a{display:inline-block;text-decoration:underline;text-underline-offset:3px;padding:4px 8px}

.buyer-fields{border:0;border-top:1px solid #d8c7ed;padding:16px 0 0;margin:18px 0}.buyer-fields legend{font-weight:700;font-size:16px;padding:0 8px 0 0}.buyer-fields [hidden]{display:none!important}

.wholesale-mode .card .cash{display:block!important}.wholesale-mode #paymentWrap{display:grid!important}

.wholesale-shipping-copy{display:none}.wholesale-mode .shipping-promo-banner,.wholesale-mode .shipping-heading,.wholesale-mode .shipping-cards{display:none!important}.wholesale-mode .wholesale-shipping-copy{display:block}

#reserveLocal{margin-bottom:7px;background:#654299}.main-nav{overflow-x:auto}#employeeSaleDetail{overflow:auto}

#cartItems{max-height:32dvh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}#orderNotes{width:100%;box-sizing:border-box}.cart{max-height:calc(100dvh - 25px);overflow-y:auto;overscroll-behavior:contain}@media(max-width:850px){#cartItems{max-height:40dvh}.cart{max-height:none;position:static}}

#cart{max-height:32dvh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}.cart-panel{max-height:calc(100dvh - 25px);overflow-y:auto;overscroll-behavior:contain}@media(max-width:850px){#cart{max-height:40dvh}.cart-panel{max-height:none;position:static}}

.cart-quantity{width:54px;min-width:0;text-align:center}.qty-controls{flex-wrap:wrap}.qty-controls [data-cart-remove]{font-size:11px;width:auto;padding:4px}

.family-block{grid-column:span 2;min-width:0}.family-block h2{font-size:1.2rem}.family-models{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.family-models>.card{flex:0 0 calc((100% - 12px)/2);min-width:0;scroll-snap-align:start;box-sizing:border-box}.family-models .card h3{overflow-wrap:anywhere}@media(max-width:600px){.family-block{grid-column:1/-1}.family-models .card{padding:8px}.family-models .buy-row{flex-wrap:wrap}}

/* Ajuste puntual: grilla de escritorio y fotos completas, sin cambiar la ficha. */
#products:not(.detail-grid){grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#products:not(.detail-grid) .card{padding:12px}
#products:not(.detail-grid) .card .ph{height:200px}
#products .card>a{min-width:0}
#products .card .ph{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0}
#products .card .ph img{width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;flex:0 1 auto}
@media(max-width:1023px){#products:not(.detail-grid){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){#products:not(.detail-grid){grid-template-columns:minmax(0,1fr);gap:14px}#products:not(.detail-grid) .card .ph{height:240px}}
.category-subrubros[hidden]{display:none!important}
