*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;width:100%;}

:root{
  --y:#ffe401;--b:#2164a5;--bl:#008ad0;--r:#ca0119;
  --b-lt:#5aa3e8;--r-lt:#ff6b7a;
  --dk:#0d1b2a;--dk2:#152840;--w:#fff;--off:#f8fafc;--lt:#f1f5f9;
  --gray:#64748b;--border:#e2e8f0;
  --f-head:'Fraunces',serif;--f-body:'Plus Jakarta Sans',sans-serif;
}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--f-body);background:var(--w);color:var(--dk);overflow-x:hidden;cursor:none;}

/* CURSOR */
#cur{position:fixed;width:10px;height:10px;background:var(--b);border-radius:50%;z-index:9999;pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:difference;}
#ring{position:fixed;width:40px;height:40px;border:1.5px solid rgba(33,100,165,.4);border-radius:50%;z-index:9998;pointer-events:none;transform:translate(-50%,-50%);transition:left .1s ease,top .1s ease;}

/* PROGRESS */
#prog{position:fixed;top:0;left:0;height:3px;background:var(--y);z-index:1000;width:0%;}

/* TOP BAR */
.topbar{position:fixed;top:0;left:0;right:0;z-index:501;height:38px;background:var(--r);color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--f-body);font-weight:700;font-size:.78rem;letter-spacing:.02em;text-align:center;padding:0 16px;white-space:nowrap;overflow:hidden;}
.topbar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.topbar a{color:#fff;text-decoration:underline;text-underline-offset:2px;font-weight:800;white-space:nowrap;flex-shrink:0;}
.topbar a:hover{opacity:.85;}
@media(max-width:560px){.topbar{font-size:.66rem;padding:0 10px;}}

/* NAV */
nav{
  position:fixed;top:38px;left:0;right:0;z-index:500;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:0 5%;height:68px;transition:all .3s;
  background:rgba(255,255,255,.97);backdrop-filter:blur(20px);box-shadow:0 2px 24px rgba(0,0,0,.06);border-bottom:3px solid var(--y);
}
nav.solid{box-shadow:0 2px 24px rgba(0,0,0,.1);}
.nav-left{display:flex;align-items:center;justify-self:start;min-width:0;}
.nav-right{display:flex;align-items:center;gap:26px;justify-self:end;flex-shrink:0;}
.nlogo{justify-self:center;}
.nlogo img{height:44px;object-fit:contain;filter:none;transition:filter .3s;}
.nlinks{display:flex;align-items:center;gap:34px;list-style:none;}
.nlinks li{display:flex;align-items:center;}
.nlinks a{text-decoration:none;color:var(--dk);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;transition:color .2s;}
.nlinks a:hover{color:var(--b);}

/* NAV DROPDOWN (Productos) — mega menu estilo Hippeas */
.nav-drop{position:relative;display:flex;align-items:center;}
.nav-drop-trigger{display:flex;align-items:center;gap:5px;}
.nav-drop-arrow{flex-shrink:0;transition:transform .25s;color:var(--dk);}
.nav-drop:hover .nav-drop-arrow,.nav-drop.open .nav-drop-arrow{transform:rotate(180deg);color:var(--b);}
.nav-mega{position:fixed;top:68px;left:0;right:0;background:var(--w);border-bottom:3px solid var(--y);box-shadow:0 28px 50px rgba(13,27,42,.16);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .22s ease,transform .22s ease,visibility .22s;z-index:600;}
.nav-drop:hover .nav-mega,.nav-drop.open .nav-mega{opacity:1;visibility:visible;transform:translateY(0);}
.nav-mega-inner{max-width:1400px;padding:44px 5% 52px;display:grid;grid-template-columns:240px 1fr;gap:60px;}
.nav-mega-eyebrow{display:block;font-weight:800;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gray);margin-bottom:18px;}
.nav-mega-cats{display:flex;flex-direction:column;gap:2px;}
.nav-mega-cats a{font-family:var(--f-body);font-weight:800;font-size:1.5rem;letter-spacing:-.01em;color:var(--dk);text-decoration:none;text-transform:uppercase;padding:7px 0;transition:color .2s,transform .2s;}
.nav-mega-cats a:hover{color:var(--b);transform:translateX(4px);}
.nav-mega-all{margin-top:14px!important;font-size:.82rem!important;font-weight:800!important;text-transform:none!important;color:var(--b)!important;text-decoration:underline;text-underline-offset:3px;padding:0!important;}
.nav-mega-best{min-width:0;display:flex;flex-direction:column;}
.nav-mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;flex:1;}
.nmb-card{position:relative;display:block;border-radius:20px;overflow:hidden;text-decoration:none;transition:transform .25s,box-shadow .25s;height:100%;min-height:220px;background:var(--off);}
.nmb-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(0,0,0,.18);}
.nmb-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.nmb-card:hover img{transform:scale(1.06);}
.nmb-card::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,27,42,0) 45%,rgba(13,27,42,.78) 100%);pointer-events:none;}
.nmb-lbl{position:absolute;left:14px;right:14px;bottom:12px;z-index:1;font-weight:800;font-size:.78rem;line-height:1.3;color:#fff;text-transform:uppercase;letter-spacing:.01em;}
@media(max-width:900px){.nav-mega-inner{grid-template-columns:1fr;gap:30px;}.nmb-card{height:auto;aspect-ratio:4/3;min-height:0;}.nav-mega-grid{flex:none;}}
.ncontact{text-decoration:none;color:var(--dk);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;transition:color .2s;}
.ncontact:hover{color:var(--b);}
.ncta{background:var(--y);color:#000;padding:10px 22px;border-radius:999px;font-weight:900;font-size:.82rem;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;transition:transform .2s,box-shadow .2s;}
.ncta:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,228,1,.4);}

/* HERO (stays dark for contrast) */
.hero{height:100vh;background:linear-gradient(135deg,#0d1b2a 0%,#1a4a82 55%,#2164a5 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;text-align:center;}
.hero-slider{position:absolute;inset:0;z-index:0;}
.heroImg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 5%;opacity:0;transition:opacity 1s ease;}
.heroImg.active{opacity:1;}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:52px;height:52px;border-radius:50%;background:rgba(13,27,42,.45);backdrop-filter:blur(6px);border:1.5px solid rgba(255,255,255,.35);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s;padding:0;}
.hero-arrow:hover{background:var(--y);border-color:var(--y);transform:translateY(-50%) scale(1.08);}
.hero-arrow:hover svg path{stroke:#0d1b2a;}
.hero-arrow-prev{left:24px;}
.hero-arrow-next{right:24px;}
@media(max-width:700px){.hero-arrow{width:44px;height:44px;}.hero-arrow-prev{left:12px;}.hero-arrow-next{right:12px;}}
.hero-content{position:relative;z-index:2;}
.hero-content-top{position:absolute;top:calc(10% + 60px);left:7%;max-width:480px;text-align:left;z-index:2;}
.hero-copy{opacity:0;visibility:hidden;transition:opacity .5s ease;}
.hero-copy.active{opacity:1;visibility:visible;}
.hero-eyebrow{display:block;width:fit-content;font-family:var(--f-body);font-weight:800;font-size:clamp(.76rem,1.2vw,.86rem);letter-spacing:.14em;text-transform:uppercase;color:var(--dk);background:rgba(255,255,255,.6);backdrop-filter:blur(3px);padding:7px 16px;border-radius:999px;box-shadow:0 4px 14px rgba(13,27,42,.08);margin-bottom:14px;animation:fadeup .7s .05s ease both;}
.hero-tilt{display:block;width:fit-content;font-family:var(--f-body);font-weight:800;font-size:clamp(1rem,2vw,1.3rem);letter-spacing:.02em;color:var(--b);background:var(--y);padding:4px 14px;border-radius:999px;transform:rotate(-3deg);margin-bottom:14px;animation:fadeup .7s .15s ease both;}
.hero-title{font-family:var(--f-head);font-size:clamp(2.4rem,5.4vw,4.4rem);font-weight:700;line-height:.94;letter-spacing:-.02em;color:var(--dk);margin-bottom:18px;animation:fadeup .7s .25s ease both;}
.hero-title em{display:block;font-style:normal;color:var(--b);}
.hero-content-top .btn-y{animation:fadeup .7s .5s ease both,pulse-y 2.5s ease 2s infinite;}
.hero-sub{display:block;font-family:var(--f-body);font-size:clamp(.92rem,1.4vw,1.05rem);color:var(--dk);opacity:.7;text-transform:none;letter-spacing:0;margin-top:0;margin-bottom:28px;font-weight:600;animation:fadeup .7s .35s ease both;}
.hero-btns{display:flex;gap:16px;justify-content:center;margin-top:38px;animation:fadeup .7s .45s ease both;}
@media(max-width:700px){.hero-content-top{left:6%;right:6%;max-width:none;top:calc(9% + 65px);}}
@media(max-width:700px){.hero{height:auto;aspect-ratio:2/3;min-height:680px;max-height:860px;}.heroImg{object-position:center 25%;}.heroImg-1{object-position:75% 25%;}}
.btn-y{background:var(--y);color:#000;padding:15px 36px;border-radius:999px;font-weight:900;font-size:.9rem;text-decoration:none;letter-spacing:.04em;text-transform:uppercase;transition:transform .2s,box-shadow .2s;display:inline-block;animation:pulse-y 2.5s ease 2s infinite;}
.btn-y:hover{transform:scale(1.05);}
@keyframes pulse-y{0%,100%{box-shadow:0 0 0 0 rgba(255,228,1,.5)}50%{box-shadow:0 0 0 18px rgba(255,228,1,0)}}
.btn-wh{background:transparent;color:rgba(255,255,255,.7);padding:15px 36px;border-radius:999px;font-weight:700;font-size:.9rem;text-decoration:none;letter-spacing:.04em;text-transform:uppercase;border:1.5px solid rgba(255,255,255,.3);transition:all .2s;display:inline-block;}
.btn-wh:hover{border-color:var(--b);color:var(--b);}
.scroll-hint{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.3);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;animation:fadeup 1s 1s ease both;}
.scroll-line{width:1px;height:50px;background:linear-gradient(to bottom,rgba(255,228,1,.6),transparent);animation:spulse 2s ease-in-out infinite;}
@keyframes spulse{0%,100%{opacity:.6;transform:scaleY(1)}50%{opacity:.2;transform:scaleY(.5)}}
@keyframes fadeup{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

/* MARQUEE */
.mqwrap{background:var(--y);overflow:hidden;padding:13px 0;}
.mq{display:flex;white-space:nowrap;animation:mq 28s linear infinite;}
.mq span{font-family:var(--f-body);font-weight:700;font-size:1.3rem;color:#000;letter-spacing:.08em;padding:0 24px;}
.mq span::after{content:' ·';opacity:.4;}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* STATS */
.stats{background:var(--dk);display:flex;justify-content:center;flex-wrap:wrap;padding:0;}
.stat{text-align:center;padding:48px 56px;border-right:1px solid rgba(255,255,255,.08);flex:1;}
.stat:last-child{border-right:none;}
.stat .n{font-family:var(--f-body);font-weight:800;font-size:5rem;color:var(--y);line-height:1;}
.stat .l{font-size:.68rem;font-weight:800;color:rgba(255,255,255,.35);letter-spacing:.12em;text-transform:uppercase;margin-top:4px;}

/* REVEAL */
.rv{opacity:0;transform:translateY(16px);transition:opacity .35s ease,transform .35s ease;}
.rv.in{opacity:1;transform:translateY(0);}
.rv-l{opacity:0;transform:translateX(-16px);transition:opacity .35s ease,transform .35s ease;}
.rv-l.in{opacity:1;transform:translateX(0);}
.rv-r{opacity:0;transform:translateX(16px);transition:opacity .35s ease,transform .35s ease;}
.rv-r.in{opacity:1;transform:translateX(0);}
@media(max-width:768px){.rv,.rv-l,.rv-r{opacity:1!important;transform:none!important;transition:none!important;}}

/* SECTION BASE */
section{padding:80px 5%;}
.inner{max-width:1200px;margin:0 auto;}
.chip{display:inline-block;font-weight:800;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 14px;border-radius:999px;margin-bottom:12px;}
.chip-y{background:rgba(255,228,1,.2);color:#7a6500;border:1px solid rgba(255,228,1,.4);}
.chip-b{background:rgba(33,100,165,.1);color:var(--b);border:1px solid rgba(33,100,165,.15);}
.chip-r{background:rgba(202,1,25,.08);color:var(--r);border:1px solid rgba(202,1,25,.15);}
.sh{font-family:var(--f-head);font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1.1;margin-bottom:10px;color:var(--dk);}
.ssub{color:var(--gray);font-size:.95rem;line-height:1.75;max-width:560px;margin-bottom:48px;}

/* NOSOTROS */
#nosotros{background:var(--off);}
.nos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.nos-card{background:var(--w);border-radius:20px;padding:34px 28px;box-shadow:0 2px 16px rgba(0,0,0,.05);border:2px solid var(--border);transition:border-color .3s,transform .3s,box-shadow .3s;}
.nos-card:hover{border-color:var(--y);transform:translateY(-5px);box-shadow:0 16px 48px rgba(0,0,0,.08);}
.nos-ico{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:20px;}
.nos-card h3{font-size:1.15rem;font-weight:900;color:var(--dk);margin-bottom:10px;}
.nos-card p{color:var(--gray);font-size:.88rem;line-height:1.75;}

/* MARCAS */
#marcas{background:var(--w);text-align:center;padding:64px 5%;}
.marcas-row{display:flex;justify-content:center;gap:36px;flex-wrap:wrap;margin-top:32px;}
.mcard{background:var(--off);border:2px solid var(--border);border-radius:20px;padding:36px 56px;transition:border-color .25s,transform .25s,box-shadow .25s;display:block;text-decoration:none;}
.mcard:hover{border-color:var(--y);transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.07);}
.mcard img{height:90px;object-fit:contain;display:block;margin:0 auto 14px;}
.mcard p{font-weight:700;font-size:.85rem;color:var(--gray);}

/* PRODUCTOS */
#productos{background:var(--w);padding:56px 0 80px;}
.prod-section-head{padding:0 5%;margin-bottom:40px;}
.prod-section-head .sh{color:var(--dk);}

/* CATALOG LAYOUT (toolbar arriba + grilla a lo ancho, estilo "Shop All") */
.cat-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:0 5%;margin-bottom:40px;}
.cat-toolbar-head h2{font-family:var(--f-body);font-weight:800;font-size:clamp(1.7rem,3.6vw,2.6rem);color:var(--dk);line-height:1;letter-spacing:-.01em;text-transform:uppercase;}
.cat-count{display:block;font-size:.82rem;color:var(--gray);font-weight:600;margin-top:10px;}
.cat-toolbar-tools{display:flex;align-items:center;gap:14px;flex-wrap:nowrap;}
.cat-search{position:relative;margin-bottom:0;width:220px;flex-shrink:1;min-width:130px;}
.cat-filter-list{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;flex-shrink:0;}
.cat-filter{
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  background:var(--off);border:1.5px solid var(--border);border-radius:999px;padding:11px 22px;
  font-family:var(--f-body);font-weight:800;font-size:.82rem;color:var(--dk);
  cursor:pointer;transition:all .2s;
}
.cat-filter:hover{border-color:var(--y);background:rgba(255,228,1,.14);}
.cat-filter.active{background:var(--dk);border-color:var(--dk);color:#fff;}
.cat-filter span{font-size:.76rem;font-weight:700;color:inherit;opacity:.65;}
.cat-subfilter{max-height:0;overflow:hidden;opacity:0;margin-left:14px;border-left:2px solid var(--border);padding-left:10px;transition:max-height .25s ease,opacity .2s ease;}
.cat-subfilter.open{max-height:200px;opacity:1;margin-top:2px;margin-bottom:8px;}
.cat-subfilter-btn{font-size:.84rem;padding:9px 12px;}
.cat-main{width:100%;padding:0 5%;}
@media(max-width:820px){
  .cat-toolbar{flex-direction:column;align-items:flex-start;gap:18px;}
  .cat-toolbar-tools{width:100%;flex-direction:column;align-items:stretch;gap:10px;}
  .cat-search{width:100%;}
  .cat-filter-list{width:100%;overflow-x:auto;padding-bottom:4px;}
  .cat-filter{white-space:nowrap;}
}

/* CATEGORY BLOCK (legacy, kept for compatibility) */
.cat-block{margin-bottom:64px;}
.cat-block-head{padding:0 5%;margin-bottom:28px;display:flex;align-items:center;gap:20px;}
.cat-block-head h3{font-family:var(--f-head);font-weight:600;font-size:clamp(2rem,4vw,3.5rem);color:var(--dk);line-height:1;}
.cat-block-head h3 em{color:var(--b);font-style:normal;}
.cat-line{flex:1;height:2px;background:linear-gradient(90deg,var(--border),transparent);}

/* SUBGRUPO */
.subcat{margin-bottom:40px;}
.subcat-head{padding:0 5%;margin-bottom:18px;display:flex;align-items:center;gap:14px;}
.subcat-head span{font-weight:900;font-size:.9rem;color:var(--dk);letter-spacing:.02em;}
.subcat-head::after{content:'';flex:1;height:1.5px;background:var(--border);}
.subcat-desc{font-size:.78rem;color:var(--gray);}

/* PRODUCT STRIP */
.pstrip-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.pstrip-wrap::-webkit-scrollbar{display:none;}
.pstrip{display:flex;gap:14px;padding:4px 5% 16px;width:max-content;}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:22px;padding:4px 0 16px;}
.pcard-badge{display:inline-block;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--b);background:rgba(33,100,165,.08);border:1px solid rgba(33,100,165,.15);border-radius:999px;padding:3px 10px;margin-bottom:12px;}
.pcard-best{position:absolute;top:8px;left:8px;width:74px;height:74px;z-index:2;transform:rotate(-10deg);transition:transform .3s;filter:drop-shadow(0 6px 12px rgba(163,0,15,.35));}
.pcard-best-shape{position:absolute;inset:0;background:linear-gradient(150deg,#ff3b3b,#c40015 60%,#8f0010);clip-path:polygon(50.00% 0.00%, 61.00% 10.70%, 75.00% 6.70%, 79.30% 21.00%, 93.30% 25.00%, 89.30% 39.00%, 100.00% 50.00%, 89.30% 61.00%, 93.30% 75.00%, 79.30% 79.30%, 75.00% 93.30%, 61.00% 89.30%, 50.00% 100.00%, 39.00% 89.30%, 25.00% 93.30%, 20.70% 79.30%, 6.70% 75.00%, 10.70% 61.00%, 0.00% 50.00%, 10.70% 39.00%, 6.70% 25.00%, 20.70% 21.00%, 25.00% 6.70%, 39.00% 10.70%);}
.pcard-best-shape::after{content:'';position:absolute;inset:5px;border-radius:50%;border:1px dashed rgba(255,255,255,.4);}
.pcard-best-text{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;font-family:var(--f-body);letter-spacing:.02em;line-height:1.05;}
.pcard-best-text b{font-size:.68rem;font-weight:900;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.2);}
.pcard-best-text i{font-style:normal;font-size:.44rem;font-weight:700;text-transform:uppercase;opacity:.9;margin-top:1px;}
.pcard:hover .pcard-best{transform:rotate(-4deg) scale(1.1);}
.pcard{
  background:var(--w);border:1.5px solid var(--border);
  border-radius:16px;padding:26px 18px 20px;
  width:162px;flex-shrink:0;text-align:center;cursor:none;
  transition:transform .25s,border-color .25s,box-shadow .25s;
  position:relative;overflow:hidden;
}
.pgrid .pcard{width:auto;}
.pcard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--y);opacity:0;transition:opacity .3s;}
.pcard:hover{transform:translateY(-8px);border-color:var(--y);box-shadow:0 16px 40px rgba(0,0,0,.08),0 0 0 1px rgba(255,228,1,.2);}
.pcard:hover::before{opacity:1;}
.pcard img{width:100%;height:110px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.12));transition:transform .3s;margin-bottom:10px;}
.pgrid .pcard img{height:160px;margin-bottom:16px;}
.pcard:hover img{transform:translateY(-4px) scale(1.05);}
.pcard h4{font-size:.78rem;font-weight:800;color:var(--dk);line-height:1.3;margin-bottom:3px;}
.pgrid .pcard h4{font-size:.92rem;margin-bottom:6px;}
.pcard span{font-size:.68rem;color:var(--gray);font-weight:600;}
.pgrid .pcard span{font-size:.76rem;}
.pcard .ph{height:110px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;opacity:.25;margin-bottom:10px;}
.drag-hint{padding:0 5%;margin-top:8px;font-size:.7rem;color:rgba(0,0,0,.2);letter-spacing:.08em;text-transform:uppercase;}
@media(max-width:480px){.pgrid{grid-template-columns:repeat(2,1fr);gap:14px;}.pgrid .pcard{padding:16px 10px 14px;}.pgrid .pcard img{height:110px;}}

/* VENTAJAS */
#ventajas{background:var(--off);padding:52px 5% 58px;}
.v-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:26px;flex-wrap:wrap;gap:20px;}
.v-head h2{font-family:var(--f-head);font-weight:600;font-size:clamp(1.9rem,3.6vw,3.2rem);color:var(--dk);line-height:.95;}
.v-head h2 em{color:var(--b);font-style:normal;}
.v-head p{color:var(--gray);font-size:.85rem;max-width:280px;line-height:1.6;}
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.vcard{background:var(--w);padding:20px 20px;border-radius:16px;border:1px solid var(--border);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;position:relative;overflow:hidden;}
.vcard:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(0,0,0,.08);}
.vcard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--b),var(--bl));opacity:0;transition:opacity .25s ease;}
.vcard:hover::before{opacity:1;}
.vcard::after{content:attr(data-n);position:absolute;top:16px;right:18px;font-family:var(--f-body);font-weight:800;font-size:.68rem;color:rgba(0,0,0,.2);letter-spacing:.05em;}
.v-ico{font-size:1.8rem;margin-bottom:10px;display:block;}
.vcard h3{font-size:.94rem;font-weight:900;color:var(--dk);margin-bottom:4px;}
.vcard p{font-size:.8rem;color:var(--gray);line-height:1.5;}

/* MARQUEE 2 */
.mq2wrap{background:var(--r);overflow:hidden;padding:13px 0;}
.mq2{display:flex;white-space:nowrap;animation:mq2 22s linear infinite;}
.mq2 span{font-family:var(--f-body);font-weight:700;font-size:1.3rem;color:#fff;letter-spacing:.08em;padding:0 24px;}
.mq2 span::after{content:' ·';opacity:.4;}
@keyframes mq2{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ABOUT NUMBERS */
.about{background:var(--w);padding-left:0;padding-right:0;}
.about-row{display:grid;grid-template-columns:1fr 1fr;min-height:45vh;border-bottom:1px solid var(--border);}
.about-row:last-child{border-bottom:none;}
.about-num{display:flex;align-items:center;justify-content:center;font-family:var(--f-body);font-weight:800;font-size:clamp(7rem,13vw,14rem);color:var(--y);line-height:1;border-right:1px solid var(--border);background:var(--off);-webkit-text-stroke:2px var(--b);paint-order:stroke fill;}
.about-txt{display:flex;flex-direction:column;justify-content:center;padding:60px;}
.about-txt h3{font-size:clamp(1.5rem,2.5vw,2.2rem);font-weight:900;color:var(--dk);margin-bottom:12px;line-height:1.2;}
.about-txt p{color:var(--gray);font-size:.93rem;line-height:1.8;max-width:400px;}
.about-row.rev .about-num{border-right:none;border-left:1px solid var(--border);order:2;}
.about-row.rev .about-txt{order:1;}

/* DISTRIBUCIÓN */
#distribucion{padding:0;}
.dist{display:grid;grid-template-columns:1fr 1fr;}
.dist-left{background:linear-gradient(135deg,#a30014,var(--r));padding:56px 60px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;}
.dist-left::before{content:'';position:absolute;width:400px;height:400px;background:rgba(255,255,255,.05);border-radius:50%;top:-100px;right:-100px;}
.dist-left h2{font-family:var(--f-head);font-weight:600;font-size:clamp(1.7rem,2.6vw,2.6rem);color:#fff;line-height:1;}
.dist-left h2 em{color:var(--y);font-style:normal;}
.dist-left p{color:rgba(255,255,255,.75);line-height:1.75;font-size:.93rem;}
.dlist{list-style:none;display:flex;flex-direction:column;gap:12px;}
.dlist li{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.85);font-size:.9rem;font-weight:700;}
.dlist li::before{content:'→';color:var(--y);font-weight:900;}
.dist-right{background:var(--off);padding:56px 60px;display:flex;flex-direction:column;justify-content:center;}
.zonas-t{font-weight:900;font-size:.78rem;color:var(--dk);margin-bottom:18px;letter-spacing:.06em;text-transform:uppercase;}
.zonas-wrap{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;}
.zchip{background:rgba(33,100,165,.08);color:var(--b);padding:6px 14px;border-radius:999px;font-weight:700;font-size:.78rem;border:1px solid rgba(33,100,165,.15);transition:all .2s;}
.zchip:hover{background:var(--y);color:#000;border-color:var(--y);}
.steps{display:flex;flex-direction:column;gap:20px;}
.steps-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px;}
.step{display:flex;flex-direction:column;}
.st-top{display:flex;align-items:center;gap:14px;margin-bottom:6px;}
.sn{width:34px;height:34px;border-radius:50%;background:var(--y);color:#000;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.85rem;flex-shrink:0;font-family:var(--f-body);}
.st h4{font-weight:900;font-size:.88rem;color:var(--dk);}
.st p{font-size:.8rem;color:var(--gray);line-height:1.5;margin-left:48px;}
@media(max-width:600px){.steps-grid{grid-template-columns:1fr;}}

/* ECOSAN EN CADA MOMENTO (placeholder de fotos) */
.momentos-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:8px;}
.momento-ph{position:relative;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--w);border:1.5px solid var(--border);transition:transform .25s,box-shadow .25s;}
.momento-ph:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(0,0,0,.14);}
.momento-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.momento-ph:hover img{transform:scale(1.06);}
.momento-ph::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,27,42,0) 55%,rgba(13,27,42,.65) 100%);pointer-events:none;}
.momento-ico{font-size:1.8rem;opacity:.35;}
.momento-lbl{position:absolute;left:14px;bottom:12px;z-index:1;font-size:.76rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.04em;}
@media(max-width:980px){.momentos-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.momentos-grid{grid-template-columns:repeat(2,1fr);}}

/* BOTONES DE ACCIÓN (hover sobre cada foto de "en cada momento") */
.momento-btns{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.92);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;transition:opacity .25s,transform .25s;}
.momento-ph:hover .momento-btns{opacity:1;transform:translate(-50%,-50%) scale(1);}
.momento-btn{border:none;padding:11px 22px;border-radius:999px;font-weight:800;font-size:.78rem;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s,transform .2s;box-shadow:0 8px 24px rgba(0,0,0,.3);}
.momento-btn-recipe{background:var(--y);color:var(--dk);}
.momento-btn-recipe:hover{background:var(--dk);color:#fff;}
.momento-btn-prod{background:#fff;color:var(--dk);}
.momento-btn-prod:hover{background:var(--b);color:#fff;}
@media(max-width:820px){.momento-btns{opacity:1;transform:translate(-50%,-50%) scale(.88);}}

/* CONTENIDO DE RECETA (modal) */
.r-block{text-align:left;margin-top:6px;}
.r-block h4{font-size:.8rem;font-weight:900;color:var(--dk);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;}
.r-block ul,.r-block ol{padding-left:20px;color:var(--gray);font-size:.9rem;line-height:1.7;margin:0;}
.r-block+.r-block{margin-top:16px;}

/* CATÁLOGO (modal) */
.catmodal{position:fixed;inset:0;z-index:3000;background:rgba(13,27,42,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s;}
.catmodal.open{opacity:1;visibility:visible;}
.catmodal-box{position:relative;max-width:440px;width:100%;transform:translateY(16px);transition:transform .3s ease;box-shadow:0 30px 70px rgba(0,0,0,.45);}
.catmodal.open .catmodal-box{transform:translateY(0);}
.catmodal-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;border:none;background:rgba(255,255,255,.08);color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.catmodal-close:hover{background:rgba(255,255,255,.18);}
.cat-form{background:var(--dk);border-radius:20px;padding:40px;}
.cat-form h3{color:#fff;font-size:1.2rem;font-weight:900;margin-bottom:4px;}
.cat-form .sub{color:rgba(255,255,255,.4);font-size:.82rem;margin-bottom:22px;}
.cat-form label{display:block;font-size:.76rem;font-weight:700;color:rgba(255,255,255,.55);margin-bottom:4px;letter-spacing:.04em;text-transform:uppercase;}
.cat-form input{width:100%;padding:12px 14px;border:1.5px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.06);color:#fff;font-size:.88rem;font-family:inherit;outline:none;transition:border-color .2s;margin-bottom:14px;}
.cat-form input::placeholder{color:rgba(255,255,255,.2);}
.cat-form input:focus{border-color:var(--y);}
.btn-dl{width:100%;padding:16px;background:var(--y);color:#000;border:none;border-radius:999px;font-size:.9rem;font-weight:900;cursor:none;font-family:var(--f-body);letter-spacing:.04em;text-transform:uppercase;transition:transform .2s;}
.btn-dl:hover{transform:scale(1.02);}
.cat-ok{display:none;text-align:center;padding:18px;background:rgba(255,228,1,.1);border-radius:12px;color:#fff;border:1px solid rgba(255,228,1,.2);}

/* INSTAGRAM */
#instagram{background:var(--off);}
.ig-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:36px;flex-wrap:wrap;gap:16px;}
.ig-head h2{font-family:var(--f-head);font-weight:800;font-size:clamp(2.6rem,5vw,5rem);color:var(--dk);line-height:.88;letter-spacing:-.01em;text-transform:uppercase;}
.ig-handle{display:inline-flex;align-items:center;gap:6px;text-decoration:none;background:var(--y);color:var(--dk);font-weight:800;font-size:.82rem;letter-spacing:.02em;padding:13px 24px;border-radius:999px;transition:transform .2s,box-shadow .2s;flex-shrink:0;}
.ig-handle:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(255,228,1,.3);}
.ig-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.ig-card{position:relative;display:block;aspect-ratio:1/1;border-radius:18px;overflow:hidden;text-decoration:none;background:var(--off);}
.ig-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease;}
.ig-card:hover img{transform:scale(1.07);}
.ig-card::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(13,27,42,.55) 100%);opacity:0;transition:opacity .25s;}
.ig-card:hover::after{opacity:1;}
.ig-play{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:rgba(13,27,42,.55);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;color:#fff;z-index:1;}
.ig-cta{position:absolute;left:14px;bottom:12px;color:#fff;font-size:.76rem;font-weight:800;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;z-index:1;}
.ig-card:hover .ig-cta{opacity:1;transform:translateY(0);}
@media(max-width:900px){.ig-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.ig-grid{grid-template-columns:repeat(2,1fr);}}

/* RESEÑAS GOOGLE */
#resenas{background:var(--w);}
.grev-head{text-align:center;max-width:640px;margin:0 auto 28px;}
.grev-head .ssub{margin-bottom:0;}
.grev-summary{display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap;margin-bottom:36px;padding:22px 36px;background:var(--off);border:1.5px solid var(--border);border-radius:20px;max-width:760px;margin-left:auto;margin-right:auto;}
.grev-score{display:flex;align-items:center;gap:16px;}
.grev-score-n{font-family:var(--f-body);font-weight:800;font-size:3rem;color:var(--dk);line-height:1;}
.grev-stars-row{display:flex;flex-direction:column;gap:2px;}
.grev-stars{color:#fbbc04;font-size:1.15rem;letter-spacing:2px;}
.grev-count{font-size:.78rem;font-weight:700;color:var(--gray);}
.grev-link{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
.grev-carousel{position:relative;}
.grev-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:50%;background:var(--w);border:1.5px solid var(--border);box-shadow:0 8px 22px rgba(0,0,0,.13);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s,border-color .2s;padding:0;}
.grev-arrow:hover{background:var(--y);border-color:var(--y);transform:translateY(-50%) scale(1.08);}
.grev-arrow-prev{left:-8px;}
.grev-arrow-next{right:-8px;}
@media(max-width:900px){.grev-arrow{display:none;}}
.grev-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -5%;padding:4px 5% 10px;scroll-snap-type:x proximity;}
.grev-wrap::-webkit-scrollbar{display:none;}
.grev-grid{display:flex;gap:24px;width:max-content;}
.grev-card{background:var(--w);border:1.5px solid var(--border);border-radius:18px;padding:26px 28px;transition:border-color .25s,transform .25s,box-shadow .25s;width:340px;flex-shrink:0;scroll-snap-align:start;display:flex;flex-direction:column;}
.grev-card:hover{border-color:var(--y);transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,0,0,.07);}
.grev-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.grev-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1rem;font-family:var(--f-body);flex-shrink:0;overflow:hidden;}
.grev-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.grev-name{font-weight:800;font-size:.92rem;color:var(--dk);}
.grev-meta{font-size:.74rem;color:var(--gray);}
.grev-stars-sm{color:#fbbc04;font-size:.95rem;letter-spacing:1px;margin-bottom:10px;}
.grev-text{font-size:.86rem;color:var(--gray);line-height:1.65;margin-bottom:14px;flex:1;}
.grev-time{font-size:.72rem;color:var(--gray);opacity:.7;padding-top:8px;border-top:1px solid var(--border);}
@media(max-width:560px){.grev-card{width:280px;}.grev-summary{flex-direction:column;text-align:center;}}

/* CONTACTO */
#contacto{background:var(--w);}
.con-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;}
.con-info h2{font-family:var(--f-head);font-weight:600;font-size:clamp(2.5rem,4vw,4.5rem);color:var(--dk);line-height:.9;margin-bottom:24px;}
.con-info h2 em{color:var(--r);font-style:normal;}
.con-info p{color:var(--gray);line-height:1.75;margin-bottom:32px;}
.citems{display:flex;flex-direction:column;gap:10px;}
.ci{display:flex;align-items:center;gap:14px;background:var(--off);border:1.5px solid var(--border);border-radius:12px;padding:14px 18px;transition:border-color .2s;}
.ci-click{cursor:pointer;}
.ci-click:hover{border-color:var(--b);}
.ci-arrow{margin-left:auto;flex-shrink:0;transition:transform .25s;color:var(--gray);}
.ci-click.open .ci-arrow{transform:rotate(180deg);}
.loc-map-wrap{max-height:0;overflow:hidden;border-radius:14px;transition:max-height .4s ease,margin-top .4s ease;margin-top:0;}
.loc-map-wrap.open{max-height:280px;margin-top:14px;}
.loc-map-wrap iframe{width:100%;height:280px;border:0;display:block;}
.ci:hover{border-color:var(--y);}
.ci-ico{width:40px;height:40px;background:rgba(33,100,165,.1);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;}
.ci-l{font-size:.65rem;font-weight:700;color:var(--b);text-transform:uppercase;letter-spacing:.06em;}
.ci-v{font-size:.88rem;font-weight:700;color:var(--w);}
.con-form{background:var(--off);border:1.5px solid var(--border);border-radius:20px;padding:40px;}
.con-form h3{font-size:1.3rem;font-weight:900;color:var(--w);margin-bottom:4px;}
.con-form .sub{font-size:.84rem;color:var(--gray);margin-bottom:26px;}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.fg{margin-bottom:14px;}
.fg label{display:block;font-size:.75rem;font-weight:700;margin-bottom:4px;color:var(--dk);letter-spacing:.03em;}
.fg input,.fg select,.fg textarea{width:100%;padding:11px 14px;border:1.5px solid var(--border);border-radius:10px;background:var(--w);color:var(--dk);font-size:.88rem;font-family:inherit;outline:none;transition:border-color .2s;}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--y);}
.fg textarea{min-height:84px;resize:vertical;}
.btn-sub{width:100%;padding:15px;background:var(--y);color:#000;border:none;border-radius:999px;font-size:.9rem;font-weight:900;cursor:none;font-family:var(--f-body);letter-spacing:.04em;text-transform:uppercase;transition:all .2s;margin-top:8px;}
.btn-sub:hover{filter:brightness(.94);box-shadow:0 8px 24px rgba(255,180,0,.35);}

/* FOOTER */
footer{background:var(--dk);padding:60px 5% 28px;}
.ft{max-width:1200px;margin:0 auto;}
.ftop{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:28px;}
.flogos{display:flex;gap:20px;align-items:center;margin-bottom:16px;}
.flogos img{height:36px;object-fit:contain;}
.fbrand p{font-size:.82rem;color:rgba(255,255,255,.35);line-height:1.75;max-width:260px;}
.fcol h4{font-family:var(--f-body);font-weight:800;font-size:1rem;color:rgba(255,255,255,.3);letter-spacing:.08em;margin-bottom:14px;}
.fcol ul{list-style:none;display:flex;flex-direction:column;gap:9px;}
.fcol ul a{color:rgba(255,255,255,.3);text-decoration:none;font-size:.82rem;transition:color .2s;}
.fcol ul a:hover{color:var(--y);}
.fbot{display:flex;justify-content:space-between;align-items:center;}
.fbot p{font-size:.76rem;color:rgba(255,255,255,.2);}
.socs{display:flex;gap:10px;}
.sb{width:36px;height:36px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:rgba(255,255,255,.4);transition:all .2s;font-size:.9rem;}
.sb:hover{background:var(--y);color:#000;border-color:var(--y);transform:translateY(-2px);}

/* MODAL */
.mov{display:none;position:fixed;inset:0;z-index:1000;background:rgba(13,27,42,.72);backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:24px;}
.mov.open{display:flex;}
@keyframes mop{from{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.mbox{background:var(--w);border-radius:20px;max-width:1040px;width:100%;display:grid;grid-template-columns:1fr 1.05fr;overflow:hidden;box-shadow:0 50px 120px rgba(0,0,0,.25);animation:mop .25s ease;position:relative;max-height:88vh;}
.m-img{background:var(--off);display:flex;align-items:stretch;justify-content:center;padding:0;overflow:hidden;}
.m-img img{width:100%;height:100%;object-fit:cover;}
.mov[data-cat="leg"] .m-img{padding:44px;}
.mov[data-cat="leg"] .m-img img{object-fit:contain;}
.m-info{padding:56px 64px 56px 44px;overflow-y:auto;display:flex;flex-direction:column;gap:16px;justify-content:center;}
.m-close{position:absolute;top:20px;right:20px;background:var(--w);border:1px solid var(--border);color:var(--gray);width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:none;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:2;}
.m-close:hover{background:var(--r);color:#fff;border-color:var(--r);}
.m-marca{font-size:.78rem;font-weight:800;color:var(--b);text-transform:uppercase;letter-spacing:.1em;}
.m-name{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;color:var(--dk);line-height:1.08;letter-spacing:-.01em;}
.m-desc{font-size:1rem;color:var(--gray);line-height:1.7;max-width:44ch;}
.m-pres{display:inline-block;width:fit-content;background:rgba(33,100,165,.08);color:var(--b);font-weight:800;font-size:.82rem;padding:7px 16px;border-radius:999px;border:1px solid rgba(33,100,165,.15);margin-top:4px;}
.m-nutri{margin-top:2px;}
.m-nutri-link{cursor:pointer;text-decoration:none;background:var(--dk);color:#fff;border-color:var(--dk);transition:transform .2s,box-shadow .2s;}
.m-nutri-link:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(13,27,42,.25);}
.m-nutri-soon{background:var(--off);color:var(--gray);border-color:var(--border);cursor:default;}
.m-nutri-soon:hover{transform:none;box-shadow:none;}
@media(max-width:760px){.mbox{grid-template-columns:1fr;max-height:92vh;}.m-img{padding:0;height:260px;}.m-img img{height:100%;}.m-info{padding:32px 28px;justify-content:flex-start;}.mov[data-cat="leg"] .m-img{padding:20px;height:260px;}}
#recipeMov .mbox{height:88vh;max-height:88vh;}
#recipeMov .m-info{height:100%;justify-content:flex-start;padding-top:44px;padding-bottom:44px;}
@media(max-width:760px){#recipeMov .mbox{height:92vh;max-height:92vh;}}

/* WA */
.wa{position:fixed;bottom:28px;right:28px;z-index:999;width:58px;height:58px;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:1.6rem;box-shadow:0 4px 24px rgba(37,211,102,.4);transition:transform .2s;}
.wa:hover{transform:scale(1.12);}
.wa-tip{position:fixed;bottom:41px;right:96px;z-index:999;background:#fff;color:var(--dk);font-weight:800;font-size:.86rem;padding:10px 16px;border-radius:12px;box-shadow:0 8px 22px rgba(13,27,42,.16);white-space:nowrap;text-decoration:none;animation:wa-tip-in .4s ease .8s both;}
.wa-tip::after{content:'';position:absolute;top:50%;right:-5px;width:10px;height:10px;background:#fff;transform:translateY(-50%) rotate(45deg);box-shadow:2px -2px 3px rgba(13,27,42,.05);}
@keyframes wa-tip-in{from{opacity:0;transform:translateX(10px);}to{opacity:1;transform:translateX(0);}}
@media(max-width:560px){.wa-tip{display:none;}}

/* RESPONSIVE */
@media(max-width:900px){
  .about-row{grid-template-columns:1fr;}
  .about-num{border-right:none;border-bottom:1px solid var(--border);height:180px;font-size:9rem;}
  .about-row.rev .about-num{border-left:none;order:0;}
  .dist{grid-template-columns:1fr;}
  .dist-left,.dist-right{padding:60px 40px;}
  .cat-inner,.con-inner{grid-template-columns:1fr;}
  .ftop{grid-template-columns:1fr;gap:28px;}
  .nos-grid,.vgrid{grid-template-columns:1fr 1fr;}
  .marcas-row{flex-direction:column;align-items:center;}
}
.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;background:none;border:none;cursor:pointer;padding:0;flex-shrink:0;}
.menu-toggle span{display:block;width:100%;height:2px;background:var(--dk);border-radius:2px;transition:transform .25s ease,opacity .2s ease;}
.menu-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-toggle.active span:nth-child(2){opacity:0;}
.menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nlinks li.nlinks-extra{display:none;}
@media(max-width:600px){
  .menu-toggle{display:flex;}
  .ncontact{display:none;}
  .nav-right .ncta{display:none;}
  .nav-right{gap:14px;}
  .nlinks li.nlinks-extra{display:flex;}
  .nlinks{
    flex-direction:column;gap:0;
    position:fixed;top:109px;left:0;right:0;
    background:var(--w);padding:8px 5% 18px;
    box-shadow:0 16px 32px rgba(0,0,0,.12);border-bottom:3px solid var(--y);
    max-height:0;overflow:hidden;opacity:0;pointer-events:none;
    transition:max-height .3s ease,opacity .25s ease;
    display:flex;
  }
  .nlinks.open{max-height:85vh;opacity:1;pointer-events:auto;overflow-y:auto;}
  .nlinks li{width:100%;}
  .nlinks a{display:block;padding:14px 0;border-bottom:1px solid var(--border);width:100%;}
  .nav-drop{border-bottom:1px solid var(--border);flex-wrap:wrap;}
  .nav-drop-trigger{border-bottom:none!important;justify-content:space-between;width:100%;}
  .nav-drop-trigger .nav-drop-arrow{width:16px;height:11px;padding:16px;box-sizing:content-box;margin:-16px -16px -16px -8px;cursor:pointer;}
  .nav-mega{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;max-height:0;overflow:hidden;transition:max-height .3s ease;width:100%;flex:0 0 100%;min-width:0;}
  .nav-drop.open .nav-mega{max-height:700px;}
  .nav-mega-inner{padding:6px 0 18px;grid-template-columns:1fr;gap:18px;}
  .nav-mega-eyebrow{margin-bottom:8px;}
  .nav-mega-cats{gap:0;padding-left:14px;}
  .nav-mega-cats a{font-size:1.05rem;padding:9px 0;}
  .nav-mega-all{margin-top:8px!important;}
  .nav-mega-best{padding-left:14px;}
  .nav-mega-grid{grid-template-columns:repeat(3,1fr);gap:8px;flex:none;}
  .nmb-card{border-radius:12px;height:auto;aspect-ratio:4/3;min-height:0;}
  .nmb-lbl{font-size:.56rem;left:8px;right:8px;bottom:6px;}
  .nos-grid,.vgrid{grid-template-columns:1fr;}
  .frow{grid-template-columns:1fr;}
}

/* ===== LOGO FIX ===== */
.nlogo img {
  height: 52px !important;
  filter: none !important;
  object-fit: contain !important;
}
nav.solid .nlogo img {
  filter: none !important;
}
/* Footer logos */
.flogos img:first-child {
  height: 42px !important;
  filter: none !important;
}
.flogos img:last-child {
  height: 42px !important;
  filter: none !important;
}

/* ===== TONO OSCURO DESDE NOSOTROS EN ADELANTE ===== */
#nosotros{background:var(--dk);}
#nosotros .sh{color:#fff;}
#nosotros .ssub{color:rgba(255,255,255,.55);}
#nosotros .chip-b{background:rgba(255,255,255,.08);color:var(--b-lt);border-color:rgba(255,255,255,.16);}
.nos-card{background:var(--dk2);border-color:rgba(255,255,255,.08);box-shadow:none;position:relative;overflow:hidden;}
.nos-card:hover{border-color:var(--y);}
.nos-card h3{color:#fff;}
.nos-card p{color:rgba(255,255,255,.55);}
.nos-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;}
.nos-card.nc-b::before{background:linear-gradient(90deg,var(--b),var(--bl));}
.nos-card.nc-r::before{background:linear-gradient(90deg,var(--r),#8f0010);}
.nos-card.nc-y::before{background:linear-gradient(90deg,#ffd400,var(--y));}
.nos-tag{position:absolute;top:22px;right:24px;font-family:var(--f-body);font-weight:800;font-size:.72rem;color:rgba(255,255,255,.22);letter-spacing:.06em;}
.nos-ico{transition:transform .35s;}
.nos-card:hover .nos-ico{transform:rotate(-6deg) scale(1.06);}

#marcas{background:var(--dk);}
#marcas .sh{color:#fff;}
#marcas .chip-b{background:rgba(255,255,255,.08);color:var(--b-lt);border-color:rgba(255,255,255,.16);}
#marcas .mcard{background:var(--dk2);border-color:rgba(255,255,255,.08);}
#marcas .mcard:hover{border-color:var(--y);}
#marcas .mcard p{color:rgba(255,255,255,.55);}

#ventajas{background:var(--dk);}
.v-head h2{color:#fff;}
.v-head p{color:rgba(255,255,255,.5);}
.vcard{background:rgba(22,40,63,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:rgba(255,255,255,.14);}
.vcard:hover{background:rgba(22,40,63,.78);box-shadow:0 16px 36px rgba(0,0,0,.45);border-color:rgba(255,255,255,.28);}
.vcard::after{color:rgba(255,255,255,.35);}
.vcard h3{color:#fff;}
.vcard p{color:rgba(255,255,255,.55);}

.about{background:var(--dk);}
.about .chip-b{background:rgba(255,255,255,.08);color:var(--b-lt);border-color:rgba(255,255,255,.16);}
.about-row{border-bottom-color:rgba(255,255,255,.08);}
.about-num{background:var(--dk2);border-right-color:rgba(255,255,255,.08);}
.about-row.rev .about-num{border-left-color:rgba(255,255,255,.08);}
.about-txt h3{color:#fff;}
.about-txt p{color:rgba(255,255,255,.55);}

.dist-right{background:var(--dk2);}
.zonas-t{color:#fff;}
.zchip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:var(--b-lt);}
.zchip:hover{background:var(--y);color:#000;border-color:var(--y);}
.st h4{color:#fff;}
.st p{color:rgba(255,255,255,.5);}

#instagram{background:var(--dk);}
.ig-head h2{color:#fff;}

#contacto{background:var(--y);}
.con-info h2{color:var(--dk);}
.con-info p{color:rgba(13,27,42,.65);}
.ci{background:var(--dk2);border-color:rgba(255,255,255,.08);}
.ci:hover{border-color:var(--y);}
.ci-l{color:var(--b-lt);}
.con-form{background:var(--dk2);border-color:rgba(255,255,255,.08);}
.con-form .sub{color:rgba(255,255,255,.45);}
#contacto .fg label{color:rgba(255,255,255,.6);}
#contacto .fg input,#contacto .fg select,#contacto .fg textarea{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#fff;}
#contacto .fg select option{color:#111;background:#fff;}
#contacto .fg input::placeholder,#contacto .fg textarea::placeholder{color:rgba(255,255,255,.3);}
#contacto .fg input:focus,#contacto .fg select:focus,#contacto .fg textarea:focus{border-color:var(--y);}

/* ===== MÁS COLOR / LLAMATIVO ===== */

/* Botones: gradientes con más punch */
.btn-y,.ncta,.btn-dl,.btn-sub{background:linear-gradient(135deg,#fff05c,var(--y) 45%,#ffb800);box-shadow:0 6px 20px rgba(255,180,0,.35);}
.btn-y:hover{box-shadow:0 12px 32px rgba(255,180,0,.55);}
.ncta:hover{box-shadow:0 10px 28px rgba(255,180,0,.5);}
.btn-dl:hover,.btn-sub:hover{box-shadow:0 12px 30px rgba(255,180,0,.5);}

/* Chips: de tenues a sólidos y vibrantes */
.chip-y{background:var(--y);color:var(--dk);border:none;box-shadow:0 4px 14px rgba(255,228,1,.4);}
.chip-b{background:var(--b);color:#fff;border:none;box-shadow:0 4px 14px rgba(33,100,165,.3);}
.chip-r{background:var(--r);color:#fff;border:none;box-shadow:0 4px 14px rgba(202,1,25,.3);}

/* Badges de producto: neutros, sin color */
.pcard-badge{background:var(--off);color:var(--gray);border:1px solid var(--border);box-shadow:none;}
.pcard-badge-granel{background:var(--off);color:var(--gray);border:1px solid var(--border);box-shadow:none;}

/* Cards de producto: barra superior degradada + glow en hover */
.pcard::before{background:linear-gradient(90deg,var(--y),var(--bl));}
.pcard:hover{box-shadow:0 18px 44px rgba(33,100,165,.18),0 0 0 1px rgba(255,228,1,.35);}

/* Filtro de categorías: estado activo sólido */
.cat-filter.active{background:var(--dk);color:#fff;box-shadow:0 4px 14px rgba(13,27,42,.25);}

/* Íconos "Ventajas": círculos de color rotando por marca */
.v-ico{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:10px;}
.v-ico svg{width:18px;height:18px;}
.vcard[data-n="01"] .v-ico,.vcard[data-n="04"] .v-ico{background:linear-gradient(135deg,var(--b),var(--bl));box-shadow:0 8px 20px rgba(33,100,165,.35);}
.vcard[data-n="02"] .v-ico,.vcard[data-n="05"] .v-ico{background:linear-gradient(135deg,#fff05c,var(--y) 55%,#ffb800);box-shadow:0 8px 20px rgba(255,180,0,.3);}
.vcard[data-n="03"] .v-ico,.vcard[data-n="06"] .v-ico{background:linear-gradient(135deg,var(--r),#8f0010);box-shadow:0 8px 20px rgba(202,1,25,.3);}
.vcard[data-n="01"]::before,.vcard[data-n="04"]::before{background:linear-gradient(90deg,var(--b),var(--bl));}
.vcard[data-n="02"]::before,.vcard[data-n="05"]::before{background:linear-gradient(90deg,#fff05c,var(--y) 60%,#ffb800);}
.vcard[data-n="03"]::before,.vcard[data-n="06"]::before{background:linear-gradient(90deg,var(--r),#8f0010);}

/* Íconos de contacto: color sólido rotando */
.ci-ico{background:linear-gradient(135deg,var(--b),var(--bl));box-shadow:0 4px 14px rgba(33,100,165,.3);}
.ci:nth-child(2) .ci-ico{background:linear-gradient(135deg,#fff05c,var(--y) 55%,#ffb800);box-shadow:0 4px 14px rgba(255,180,0,.3);}
.ci:nth-child(3) .ci-ico{background:linear-gradient(135deg,var(--r),#8f0010);box-shadow:0 4px 14px rgba(202,1,25,.3);}
.ci:nth-child(4) .ci-ico{background:linear-gradient(135deg,var(--b),var(--bl));box-shadow:0 4px 14px rgba(33,100,165,.3);}

/* Chips de zona / presentación: más saturados */
.zchip{background:rgba(90,163,232,.16);border-color:rgba(90,163,232,.32);}
.m-pres{background:var(--b);color:#fff;border:none;}

/* Stats: glow en los números grandes */
.stat .n{text-shadow:0 0 40px rgba(255,228,1,.35);}

/* Botón de WhatsApp flotante: pulso para llamar la atención */
.wa{animation:pulse-wa 2.5s ease infinite;}
@keyframes pulse-wa{0%,100%{box-shadow:0 4px 24px rgba(37,211,102,.4)}50%{box-shadow:0 4px 24px rgba(37,211,102,.4),0 0 0 14px rgba(37,211,102,0)}}

/* Blobs decorativos de color detrás del catálogo */
#productos{position:relative;overflow:hidden;}
#productos::before{content:'';position:absolute;top:-120px;right:-120px;width:400px;height:400px;background:radial-gradient(circle,rgba(255,228,1,.25),transparent 70%);border-radius:50%;pointer-events:none;z-index:0;}
#productos::after{content:'';position:absolute;bottom:-100px;left:-100px;width:360px;height:360px;background:radial-gradient(circle,rgba(33,100,165,.16),transparent 70%);border-radius:50%;pointer-events:none;z-index:0;}
.cat-toolbar,.cat-main{position:relative;z-index:1;}

/* ===== #marcas VUELVE A BLANCO: separa visualmente de las secciones oscuras ===== */
#marcas{background:var(--w);}
#marcas .sh{color:var(--dk);}
#marcas .chip-b{background:var(--b);color:#fff;border:none;box-shadow:0 4px 14px rgba(33,100,165,.3);}
#marcas .mcard{background:var(--off);border-color:var(--border);}
#marcas .mcard:hover{border-color:var(--y);box-shadow:0 16px 40px rgba(0,0,0,.07);}
#marcas .mcard p{color:var(--gray);}

/* ===== BANNER GRANEL (Inicio) ===== */
#granel-banner{padding:100px 5%;position:relative;overflow:hidden;}
.gb-split{display:grid;grid-template-columns:1fr;text-align:center;}
.gb-split-right{grid-template-columns:1fr 1fr;align-items:center;text-align:right;}
.gb-copy{max-width:720px;margin:0 auto;}
.gb-split-right .gb-copy{margin:0;}
.gb-split-right .gb-copy .ssub{margin-left:auto;margin-right:0;}
.gb-split-right .gb-btns{justify-content:flex-end;}
.gb-sub{color:var(--dk);opacity:.72;}
@media(max-width:860px){.gb-split-right{grid-template-columns:1fr;text-align:center;}.gb-split-right .gb-copy{margin:0 auto;}.gb-split-right .gb-copy .ssub{margin-left:auto;margin-right:auto;}.gb-split-right .gb-btns{justify-content:center;}}
.gb-copy .gb-title{margin-bottom:18px;}
.gb-copy .ssub{margin:0 auto 32px;max-width:46ch;}
.gb-btns{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;}
.gb-cta-outline{border:1.5px solid rgba(13,27,42,.3);color:var(--dk);padding:16px 34px;border-radius:999px;font-weight:800;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;transition:all .2s;display:inline-block;}
.gb-cta-outline:hover{border-color:var(--b);color:var(--b);transform:translateY(-2px);}
.gb-chip{font-size:.85rem;padding:9px 22px;letter-spacing:.06em;animation:gbchipglow 2.2s ease infinite;}
@keyframes gbchipglow{0%,100%{box-shadow:0 4px 14px rgba(255,228,1,.4);}50%{box-shadow:0 4px 26px rgba(255,228,1,.85);}}
.gb-title{font-size:clamp(2.4rem,5vw,4.2rem);letter-spacing:-.01em;}
.gb-accent{color:var(--b);font-style:normal;white-space:nowrap;}
@media(max-width:600px){.gb-accent{white-space:normal;}#granel-banner{padding:56px 5%;}}
.accent-y{color:var(--y);font-style:normal;text-shadow:0 1px 0 rgba(13,27,42,.18);-webkit-text-stroke:.6px rgba(13,27,42,.22);}
.gb-cta{font-size:1rem;padding:18px 42px;box-shadow:0 10px 30px rgba(255,180,0,.5);}

/* ===== BENEFICIOS DISTRIBUIDOR (grilla) ===== */
.dben-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.dben{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:14px 16px;font-size:.85rem;font-weight:700;color:rgba(255,255,255,.9);transition:border-color .2s,transform .2s;}
.dben:hover{border-color:var(--y);transform:translateY(-2px);}
.dben-ico{font-size:1.3rem;flex-shrink:0;}
@media(max-width:500px){.dben-grid{grid-template-columns:1fr;}}


/* ===== PROCESO: DEL CAMPO A TU GÓNDOLA ===== */
#proceso{background:var(--w);padding:80px 5%;}
.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 0;margin-top:48px;position:relative;}
.proc-grid::before{content:'';position:absolute;top:16px;left:12%;right:12%;height:2px;background:var(--border);z-index:0;}
.proc{position:relative;z-index:1;padding:0 18px;text-align:center;}
.proc-n{width:32px;height:32px;border-radius:50%;background:var(--dk);color:var(--y);font-weight:900;font-size:.85rem;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}
.proc-ico{font-size:2rem;margin-bottom:10px;}
.proc h4{font-size:.95rem;font-weight:900;color:var(--dk);margin-bottom:6px;}
.proc p{font-size:.8rem;color:var(--gray);line-height:1.6;}
@media(max-width:820px){.proc-grid{grid-template-columns:1fr 1fr;}.proc-grid::before{display:none;}}
@media(max-width:480px){.proc-grid{grid-template-columns:1fr;}}

