:root{
  --blue:#0057B8;
  --blue-dark:#003f86;
  --yellow:#FFD84D;
  --text:#152033;
  --muted:#667085;
  --bg:#f5f7fb;
  --card:#ffffff;
  --line:#e6ebf2;
  --green:#00a878;
  --red:#e65151;
  --shadow:0 18px 40px rgba(21,32,51,.10);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.5}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1160px,92vw);margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;color:var(--blue)}
.brand img{width:84px;height:auto;border-radius:8px}.brand span{font-size:1.04rem;letter-spacing:.2px}
.menu{display:flex;align-items:center;gap:24px;font-size:.96rem;color:#344054;font-weight:650}.menu a:hover{color:var(--blue)}
.menu-btn{display:none;border:0;background:var(--blue);color:white;border-radius:12px;padding:10px 12px;font-size:20px}
.hero{background:linear-gradient(135deg,var(--blue) 0%,#006fe6 55%,#f4f8ff 55%);padding:72px 0 82px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}
.hero-text{color:white}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,216,77,.18);color:var(--yellow);border:1px solid rgba(255,216,77,.45);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;border-radius:999px;padding:8px 14px}.eyebrow.dark{background:#edf5ff;color:var(--blue);border-color:#d8e9ff}
h1{font-size:clamp(2.4rem,5vw,4.8rem);line-height:.96;margin:20px 0 20px;letter-spacing:-.05em}h2{font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.05;margin:8px 0 14px;letter-spacing:-.04em}h3{line-height:1.16;margin:0 0 9px}.hero-text p{font-size:1.13rem;max-width:650px;color:rgba(255,255,255,.88)}
.hero-actions,.center-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;padding:14px 20px;font-weight:900;border:1px solid transparent;transition:.2s ease;cursor:pointer}.btn.primary{background:var(--yellow);color:#101828}.btn.primary:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,.16)}.btn.secondary{background:white;color:var(--blue);border-color:#d6e6ff}.btn.light{background:white;color:var(--blue)}
.trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.trust-row span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:9px 12px;font-size:.9rem;color:white}
.hero-card{background:white;border-radius:32px;box-shadow:var(--shadow);padding:16px;transform:rotate(2deg);max-width:460px;margin:auto}.hero-card img{border-radius:24px;aspect-ratio:1/1;object-fit:cover}.hero-card-caption{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:16px 4px 2px}.hero-card-caption span{color:var(--muted);font-size:.92rem}
.section{padding:78px 0}.section.alt{background:var(--bg)}.section-title{text-align:center;max-width:760px;margin:0 auto 36px}.section-title span{color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.section-title p{color:var(--muted);font-size:1.04rem;margin:0}
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.category-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 24px rgba(21,32,51,.06);transition:.2s}.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.category-card img{width:100%;height:205px;object-fit:cover;background:#fff}.category-card div{padding:18px}.category-card strong{display:block;color:var(--blue);font-size:1.18rem}.category-card small{color:var(--muted)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{background:white;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 12px 26px rgba(21,32,51,.08)}.product-img{height:220px;background:#fff;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line)}.product-img img{width:100%;height:100%;object-fit:cover}.product-body{padding:20px}.product-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.sku{background:#fff7d1;border:1px solid #ffe88c;color:#7a5d00;border-radius:8px;padding:5px 8px;font-size:.78rem;font-weight:900}.tag{background:#e9fff8;color:#007a59;border-radius:8px;padding:5px 8px;font-size:.72rem;font-weight:900;text-transform:uppercase}.product-card h3{font-size:1.15rem}.product-card p{min-height:48px;color:var(--muted);font-size:.94rem}.prices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 6px}.prices div{border:1px solid var(--line);border-radius:16px;padding:12px;background:#fafcff}.prices div.blue{background:var(--blue);border-color:var(--blue);color:white}.prices small{display:block;font-size:.76rem;color:inherit;opacity:.8}.prices strong{font-size:1.36rem}.minimo{display:block;color:var(--muted);margin:8px 0 14px}.card-btn{display:block;text-align:center;background:#eef5ff;color:var(--blue);border-radius:14px;padding:12px;font-weight:900}.card-btn:hover{background:var(--blue);color:white}.center-actions{justify-content:center;margin-top:34px}
.combo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.combo-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 10px 24px rgba(21,32,51,.06)}.combo-emoji{font-size:2rem}.combo-card p{color:var(--muted);font-size:.94rem;min-height:72px}.combo-card strong{display:block;font-size:1.25rem;color:var(--blue);margin:12px 0}.combo-card a{display:inline-flex;font-weight:900;color:var(--blue)}
.combo-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:-8px 0 28px}.combo-rules article{background:#fff7d1;border:1px solid #ffe88c;border-radius:20px;padding:18px;box-shadow:0 8px 20px rgba(21,32,51,.05)}.combo-rules strong{display:block;color:#7a5d00;margin-bottom:6px}.combo-rules span{color:#6b5d25;font-size:.94rem}.combo-grid-pro{align-items:stretch}.combo-card-pro{display:flex;flex-direction:column;min-height:390px}.combo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.combo-head span{background:#e9fff8;color:#007a59;border-radius:999px;padding:6px 10px;font-weight:900;font-size:.72rem;text-transform:uppercase}.combo-card-pro small{display:block;color:#596579;margin-top:auto;min-height:44px}.combo-price-row{display:flex;align-items:end;justify-content:space-between;gap:12px;background:#eef5ff;border:1px solid #d6e6ff;border-radius:18px;padding:13px 14px;margin:16px 0}.combo-price-row em{font-style:normal;color:var(--muted);font-weight:800}.combo-price-row strong{font-size:1.6rem;color:var(--blue);margin:0}.combo-btn{display:flex!important;align-items:center;justify-content:center;background:var(--blue);color:#fff!important;border-radius:14px;padding:12px;margin-top:4px}.combo-btn:hover{background:var(--blue-dark)}.combo-note{margin-top:28px;background:linear-gradient(135deg,var(--blue),var(--blue-dark));border-radius:28px;color:#fff;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.combo-note p{margin:6px 0 0;color:rgba(255,255,255,.84)}
.steps{background:#fff}.steps-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center}.steps-grid p{color:var(--muted)}.steps-list{display:grid;gap:14px}.steps-list article{display:flex;gap:16px;background:var(--bg);border:1px solid var(--line);border-radius:22px;padding:18px}.steps-list strong{min-width:42px;height:42px;background:var(--yellow);border-radius:50%;display:grid;place-items:center}.steps-list h3{margin-bottom:4px}.steps-list p{margin:0;color:var(--muted)}
.mayorista{padding:48px 0;background:linear-gradient(135deg,var(--blue),var(--blue-dark))}.mayorista-box{display:flex;align-items:center;justify-content:space-between;gap:24px;color:white}.mayorista-box p{color:rgba(255,255,255,.84);max-width:700px}
.contact-grid{display:grid;grid-template-columns:1fr .72fr;gap:36px;align-items:center}.contact-list{display:grid;gap:12px;margin-top:22px}.contact-list a,.contact-list span{padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff}.catalog-box{background:var(--bg);border:1px solid var(--line);border-radius:30px;padding:22px;box-shadow:var(--shadow)}.catalog-box img{border-radius:22px;aspect-ratio:1/1;object-fit:cover}.catalog-box h3{margin-top:18px}.catalog-box p{color:var(--muted)}
.footer{background:#111827;color:#d1d5db;padding:28px 0;font-size:.92rem}.footer-grid{display:flex;justify-content:space-between;gap:16px}.footer p{margin:0}.floating-whatsapp{position:fixed;right:18px;bottom:18px;z-index:60;background:#25d366;color:white;border-radius:999px;padding:14px 18px;font-weight:900;box-shadow:0 16px 30px rgba(37,211,102,.30)}
@media(max-width:980px){.hero-grid,.steps-grid,.contact-grid{grid-template-columns:1fr}.hero{background:linear-gradient(180deg,var(--blue) 0%,#006fe6 58%,#f4f8ff 58%)}.category-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.combo-grid,.combo-rules{grid-template-columns:repeat(2,1fr)}.combo-note{flex-direction:column;align-items:flex-start}.menu{display:none;position:absolute;top:82px;left:0;right:0;background:white;padding:18px 4vw;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.menu.open{display:flex}.menu-btn{display:block}.hero-card{transform:none}.footer-grid{flex-direction:column}}
@media(max-width:640px){.nav{height:72px}.brand img{width:64px}.brand span{display:none}.hero{padding:46px 0 58px}.hero-actions .btn{width:100%}.category-grid,.product-grid,.combo-grid,.combo-rules{grid-template-columns:1fr}.section{padding:54px 0}.product-img{height:210px}.mayorista-box{flex-direction:column;align-items:flex-start}.floating-whatsapp{left:18px;right:18px;text-align:center}.footer{padding-bottom:78px}}

/* Mejora visual hero: evita que textos blancos se pierdan con fondo claro */
.hero{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 86% 16%, rgba(255,216,77,.36) 0 9rem, transparent 9.2rem),
    linear-gradient(135deg,#004eaa 0%, #006fe6 55%, #0057b8 100%);
  padding:76px 0 86px;
}
.hero::after{
  content:"";
  position:absolute;
  right:-10%;
  top:8%;
  width:52%;
  height:84%;
  background:rgba(255,255,255,.12);
  border-radius:48px;
  transform:rotate(5deg);
  z-index:-1;
}
.hero-text{
  color:#fff;
  background:linear-gradient(135deg, rgba(0,43,97,.76), rgba(0,87,184,.36));
  border:1px solid rgba(255,255,255,.20);
  border-radius:32px;
  padding:30px;
  box-shadow:0 24px 50px rgba(0,34,84,.24);
  backdrop-filter:blur(6px);
}
.hero-text h1{
  max-width:760px;
  text-shadow:0 4px 16px rgba(0,25,70,.30);
}
.hero-text p{
  color:rgba(255,255,255,.95);
  text-shadow:0 2px 10px rgba(0,25,70,.18);
}
.hero-card{
  transform:none;
  border:1px solid rgba(255,255,255,.38);
}
.trust-row span{
  background:rgba(0,36,89,.32);
  border-color:rgba(255,255,255,.28);
}

@media(max-width:980px){
  .hero{
    background:linear-gradient(180deg,#004eaa 0%, #006fe6 100%);
  }
  .hero::after{display:none}
  .hero-text{padding:24px}
}
@media(max-width:640px){
  .hero-text{padding:20px;border-radius:24px}
  .hero-text h1{font-size:clamp(2.05rem,12vw,3.2rem);line-height:1.02}
}


/* Subpantallas de navegación: las pestañas abren contenido sin desplazar la página */
body.panel-open{overflow:hidden}
.subscreen{position:fixed;inset:0;z-index:120;visibility:hidden;opacity:0;transition:opacity .22s ease,visibility .22s ease}
.subscreen.is-open{visibility:visible;opacity:1}
.subscreen-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(8px)}
.subscreen-panel{position:relative;width:min(1180px,calc(100% - 34px));height:min(88vh,880px);margin:6vh auto;background:#fff;border-radius:30px;box-shadow:0 36px 90px rgba(8,20,52,.34);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.45)}
.subscreen-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 26px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#ffffff 0%,#f4f8ff 100%)}
.subscreen-header h2{margin:4px 0 0;font-size:clamp(1.65rem,3vw,2.45rem);color:var(--dark)}
.subscreen-close{border:0;background:var(--blue);color:#fff;border-radius:999px;padding:12px 16px;font-weight:900;cursor:pointer;box-shadow:0 10px 20px rgba(0,87,184,.18)}
.subscreen-close:hover{background:var(--blue-dark)}
.subscreen-body{overflow:auto;padding:26px;background:#fff;scrollbar-gutter:stable}
.subscreen-body .section{padding:14px 0 24px;background:transparent}
.subscreen-body .section.alt{background:transparent}
.subscreen-body .container{width:100%;max-width:100%;padding:0}
.subscreen-body .section-title{margin-bottom:24px}
.subscreen-body .category-grid,.subscreen-body .product-grid,.subscreen-body .combo-grid{grid-template-columns:repeat(3,1fr)}
.subscreen-body .steps-grid,.subscreen-body .contact-grid{grid-template-columns:1fr 1.15fr;gap:30px}
.subscreen-body .mayorista{background:linear-gradient(135deg,var(--blue),var(--blue-dark));border-radius:26px;padding:34px 26px;margin:0;color:#fff}
.subscreen-body .mayorista .container{padding:0}
.subscreen-body .mayorista-box{color:#fff}
.subscreen-body .mayorista-box p{color:rgba(255,255,255,.85)}
.subscreen-body .combo-note{margin-top:22px}
.subscreen-body .category-card[href^="#"],.subscreen-body a[href^="#"]{cursor:pointer}

@media(max-width:980px){
  .subscreen-panel{height:92vh;margin:4vh auto;border-radius:24px;width:calc(100% - 22px)}
  .subscreen-body .category-grid,.subscreen-body .product-grid,.subscreen-body .combo-grid,.subscreen-body .combo-rules{grid-template-columns:repeat(2,1fr)}
  .subscreen-body .steps-grid,.subscreen-body .contact-grid{grid-template-columns:1fr}
  .subscreen-header{padding:18px}
}
@media(max-width:640px){
  .subscreen-panel{height:96vh;margin:2vh auto;width:calc(100% - 14px);border-radius:20px}
  .subscreen-header{align-items:flex-start;flex-direction:column}
  .subscreen-close{width:100%}
  .subscreen-body{padding:18px}
  .subscreen-body .category-grid,.subscreen-body .product-grid,.subscreen-body .combo-grid,.subscreen-body .combo-rules{grid-template-columns:1fr}
}


/* Sección de captación y cotización */
.btn.ghost{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.32)}
.btn.ghost:hover{background:rgba(255,255,255,.24)}
.quote-section{background:linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%)}
.quote-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}
.quote-copy p{color:var(--muted);max-width:620px}
.quote-benefits{display:grid;gap:12px;margin-top:22px}
.quote-benefits article{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;box-shadow:0 8px 18px rgba(21,32,51,.05)}
.quote-benefits strong{color:var(--blue)}
.quote-benefits span{color:var(--muted)}
.quote-form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow);display:grid;gap:16px}
.quote-form label{display:grid;gap:7px;font-weight:900;color:var(--dark)}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #dbe4f0;border-radius:14px;padding:13px 14px;font:inherit;color:var(--dark);background:#fbfdff;outline:none}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,87,184,.12);background:#fff}
.form-row.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:2px}
.form-actions .btn{border:0;cursor:pointer}
.form-note{margin:0;color:var(--muted);font-size:.9rem}
.hidden-field{display:none!important}
.subscreen-body .quote-grid{grid-template-columns:.85fr 1.15fr;gap:28px}
@media(max-width:980px){.quote-grid,.subscreen-body .quote-grid{grid-template-columns:1fr}.form-row.two{grid-template-columns:1fr}}
@media(max-width:640px){.quote-form{padding:18px;border-radius:22px}.form-actions .btn{width:100%}}
