
:root{--azul:#005398;--azulD:#003E72;--celeste:#42B7C0;--azul2:#3F8CB6;--bg:#F5F7FA;--txt:#2E3540;--mut:#667085;--line:#E4EAF1;--white:#fff;--shadow:0 18px 46px rgba(0,83,152,.12);--r:24px}*{box-sizing:border-box}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--txt);background:#fff}a{text-decoration:none;color:inherit}.topbar{height:34px;background:var(--azulD);color:#d9f7fb;font-size:13px;display:flex;align-items:center;justify-content:center;gap:22px}.topbar b{color:#fff}header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);z-index:50}.nav{max-width:1240px;margin:auto;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.logo img{height:52px;display:block}.menu{display:flex;gap:28px;font-weight:850;font-size:14px;color:#344054}.menu a{cursor:pointer}.actions{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 20px;font-size:14px;font-weight:900;border:1px solid transparent;cursor:pointer;transition:.22s;position:relative;overflow:hidden}.btn.primary{background:var(--azul);color:#fff;box-shadow:0 9px 20px rgba(0,83,152,.2)}.btn.secondary{background:#fff;color:var(--azul);border-color:rgba(0,83,152,.22)}.btn.primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(0,83,152,.28);background:#00477f}.ctaCatalog{width:90%;height:58px;margin-top:22px;background:white!important;color:var(--azul)!important;letter-spacing:.10em;font-size:15px}.ctaCatalog:before{content:"";position:absolute;inset:0;transform:translateX(-105%);background:linear-gradient(90deg,transparent,rgba(66,183,192,.28),transparent);transition:.55s}.ctaCatalog:hover:before{transform:translateX(105%)}.ctaCatalog:hover{transform:translateY(-3px) scale(1.015);box-shadow:0 16px 34px rgba(0,0,0,.18)}.page{display:none}.page.active{display:block}.wrap{max-width:1240px;margin:auto;padding:0 24px}.section{padding:64px 0}.section.tight{padding:48px 0}.bandWhite{background:#fff}.bandSoft{background:linear-gradient(180deg,#F5F7FA 0%,#fff 100%)}.bandBlueSoft{background:linear-gradient(135deg,#EEF8FB 0%,#fff 70%)}.bandWarm{background:linear-gradient(135deg,#fff 0%,#F7FAFC 55%,#EAF8FA 100%)}.head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 30px}.head h2{font-size:36px;line-height:1.08;letter-spacing:-.03em;color:var(--azul);margin:0}.head p{margin:0;color:var(--mut);max-width:430px;line-height:1.55}.hero{background:radial-gradient(circle at 85% 20%,rgba(66,183,192,.28),transparent 24%),linear-gradient(135deg,#005398 0%,#216ca4 56%,#42B7C0 125%);color:#fff;min-height:405px;display:flex;align-items:center;overflow:hidden}.heroGrid{display:grid;grid-template-columns:1fr .78fr;gap:50px;align-items:center}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:#b9eef2;margin-bottom:12px}.hero h1{font-size:clamp(38px,4.9vw,58px);line-height:1;letter-spacing:-.05em;margin:0}.heroText{max-width:590px}.heroVisual{height:290px;position:relative}.heroScene{position:absolute;inset:0;border-radius:34px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);box-shadow:0 26px 70px rgba(0,0,0,.16);overflow:hidden}.heroScene:before{content:"";position:absolute;inset:24px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.74));border-radius:26px}.heroLogoMini{position:absolute;left:44px;top:44px;color:var(--azul);font-weight:950;font-size:30px;letter-spacing:-.04em}.heroPacks{position:absolute;right:52px;bottom:42px;display:flex;align-items:end;gap:14px}.pack{width:76px;border-radius:16px 16px 8px 8px;background:var(--azul);box-shadow:0 14px 30px rgba(0,83,152,.22)}.pack:nth-child(1){height:138px;background:var(--azul)}.pack:nth-child(2){height:188px;background:var(--celeste)}.pack:nth-child(3){height:158px;background:var(--azul2)}.heroLabel{position:absolute;left:46px;bottom:48px;background:#fff;color:var(--azul);border-radius:999px;padding:11px 17px;font-size:13px;font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.12)}.proof{background:#fff;border-bottom:1px solid var(--line)}.proofGrid{display:grid;grid-template-columns:repeat(4,1fr)}.proofItem{padding:20px 24px;border-right:1px solid var(--line)}.proofItem:last-child{border-right:0}.proofItem b{display:block;color:var(--azul);font-size:15px}.proofItem span{font-size:13px;color:var(--mut)}.brandStrip{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.brandCard{border:1px solid var(--line);border-radius:22px;background:#fff;padding:18px;min-height:128px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s}.brandCard:hover{box-shadow:var(--shadow);transform:translateY(-3px);border-color:#bfeaf0}.brandCard img{max-width:145px;max-height:58px}.productRail{display:flex;gap:16px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}.product{flex:0 0 255px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px;min-height:360px;display:flex;flex-direction:column;scroll-snap-align:start}.pimg{height:144px;border-radius:18px;background:linear-gradient(135deg,#eef4f8,#fff);display:grid;place-items:center;margin-bottom:14px}.fake{width:74px;height:105px;border-radius:16px 16px 8px 8px;background:var(--azul)}.fake.c{background:var(--celeste)}.fake.b{background:var(--azul2)}.chip{align-self:flex-start;background:#EAF8FA;color:var(--azul);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.product h3{font-size:16px;line-height:1.25;color:var(--azul);margin:10px 0 8px;min-height:42px}.product p{font-size:13px;color:var(--mut);margin:0 0 14px;line-height:1.45;min-height:38px}.product .btn{margin-top:auto;width:100%}
.product.clickable{cursor:pointer;transition:.18s}.product.clickable:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#bfeaf0}.product.clickable h3{text-decoration:none}.product.clickable:hover h3{color:var(--azul2)}.empresaHero{background:linear-gradient(135deg,#005398,#3F8CB6);color:white;padding:82px 0}.empresaHero h1{font-size:52px;line-height:1;margin:0;letter-spacing:-.04em}.empresaHero p{max-width:680px;line-height:1.65;color:rgba(255,255,255,.84);font-size:18px}.empresaGrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.empresaCard{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 10px 28px rgba(18,38,63,.05)}.empresaCard h3{color:var(--azul);margin:0 0 10px}.empresaCard p{color:var(--mut);line-height:1.65;margin:0}
.blueBlock{background:var(--azulD);color:#fff;border-radius:34px;padding:38px;overflow:hidden}.clientCarousel{display:flex;gap:14px;overflow:hidden;margin-top:24px}.clientLogo{flex:0 0 205px;height:88px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:20px;display:grid;place-items:center;padding:14px;animation:slideLogos 38s linear infinite}.clientLogo:nth-child(even){background:rgba(255,255,255,.12)}.clientLogo img{max-width:172px;max-height:58px;object-fit:contain;display:block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}@keyframes slideLogos{0%{transform:translateX(0)}100%{transform:translateX(-1800px)}}.channels{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.channel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px 14px;min-height:136px;text-align:center;box-shadow:0 8px 22px rgba(18,38,63,.04);transition:.18s}.channel:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,83,152,.10);border-color:#bcecf0}.svgIcon{height:46px;margin-bottom:12px;color:var(--azul)}.channel h3{font-size:14px;line-height:1.2;margin:0;color:var(--azul)}.channel p{font-size:12px;color:var(--mut);margin:6px 0 0}.allianceGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.ally{height:92px;background:#fff;border:1px solid var(--line);border-radius:20px;display:grid;place-items:center;color:var(--azul);font-weight:950;text-align:center;padding:12px}.supplier{background:linear-gradient(135deg,#F4FAFC,#fff)}.supplierBox{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}.supplierPanel{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:26px;padding:24px}.input,.select{height:48px;border:1px solid var(--line);border-radius:14px;padding:0 13px;font-family:inherit;width:100%;background:#fff}.textarea{min-height:150px;border:1px solid var(--line);border-radius:14px;padding:13px;font-family:inherit;width:100%;background:#fff;resize:vertical}.fileInput{height:auto;padding:13px;background:#fff}.supplierPanel label,.filterPanel label{font-size:12px;font-weight:900;color:var(--azul);display:block;margin:12px 0 6px}.note{font-size:12px;color:var(--mut)}.catalogPage{background:var(--bg)}.catalogLayout{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:start}.filterPanel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;position:sticky;top:106px}.filterPanel .btn{width:100%;margin-top:14px}.filterBlock{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.filterBlock:first-child{border-top:0;padding-top:0;margin-top:0}.filterTitle{font-size:12px;font-weight:950;color:var(--azul);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.filterOption{width:100%;border:1px solid var(--line);background:#fff;color:#344054;border-radius:13px;padding:10px 12px;margin:6px 0;text-align:left;font-family:inherit;font-size:13px;font-weight:800;cursor:pointer;transition:.18s}.filterOption:hover{border-color:#bcecf0;background:#F2FAFC;color:var(--azul)}.filterOption.active{background:var(--azul);border-color:var(--azul);color:#fff}.gridProducts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.brandHero{height:330px;background:linear-gradient(135deg,#eaf5f8,#fff);display:flex;align-items:center;justify-content:center;overflow:hidden}.brandHero.saif{background-image:url('assets/images/asset_001.jpg');background-size:cover;background-position:center;height:390px}.brandMock{width:min(900px,88%);height:230px;border-radius:34px;background:#fff;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center}.brandMock img{max-width:330px;max-height:120px}.prodTitle{text-align:center;color:var(--azul);font-size:38px;margin:48px 0 28px}.detail{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:start}.contactCards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cat{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 8px 22px rgba(18,38,63,.04)}.cat b{color:var(--azul);font-size:18px}.cat p{color:var(--mut);line-height:1.5}.jobs{display:grid;grid-template-columns:1fr .9fr;gap:24px}.rrhhHead{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.jobDetailBox{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow)}.jobCard{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;margin-bottom:14px}.footer{background:var(--azulD);color:#fff;padding:44px 0}.footerGrid{display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr;gap:28px}.footer img{height:46px;filter:brightness(0) invert(1)}.footer p,.footer li{color:rgba(255,255,255,.78);font-size:14px;line-height:1.7}.footer ul{list-style:none;padding:0;margin:8px 0 0}.partnerHub{background:linear-gradient(135deg,#003E72 0%,#005398 58%,#42B7C0 145%);color:#fff;border-radius:34px;padding:40px;display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch;box-shadow:0 22px 54px rgba(0,83,152,.18);overflow:hidden;position:relative}.partnerHub:before{content:"";position:absolute;right:-110px;top:-120px;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.10)}.partnerSide,.manufacturerSide{position:relative;z-index:1}.partnerSide h2,.manufacturerSide h2{margin:0;color:#fff;font-size:32px;line-height:1.1;letter-spacing:-.03em}.partnerSide p,.manufacturerSide p{color:rgba(255,255,255,.78);line-height:1.55;margin:12px 0 0}.industryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.industryLogo{height:84px;border-radius:18px;background:#fff;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;font-size:16px;font-weight:950;color:var(--azul);padding:12px;box-shadow:0 10px 24px rgba(0,0,0,.08)}.industryLogo img{max-width:100%;max-height:58px;object-fit:contain;display:block}.industryLogo.yours{background:rgba(255,255,255,.14);border:1px dashed rgba(255,255,255,.42);color:#fff;box-shadow:none}.manufacturerCard{height:100%;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:26px;display:flex;flex-direction:column;justify-content:space-between}.manufacturerCard .btn{margin-top:22px;background:#fff;color:var(--azul);width:100%;letter-spacing:.06em}.manufacturerCard .btn:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(0,0,0,.18)}@media(max-width:980px){.partnerHub{grid-template-columns:1fr}.industryGrid{grid-template-columns:repeat(2,1fr)}.menu{display:none}.heroGrid,.supplierBox,.detail,.jobs,.catalogLayout{grid-template-columns:1fr}.proofGrid,.channels,.brandStrip,.allianceGrid,.gridProducts,.contactCards{grid-template-columns:repeat(2,1fr)}.filterPanel{position:relative;top:auto}.footerGrid{grid-template-columns:1fr 1fr}.hero{min-height:auto;padding:44px 0}.heroVisual{display:none}}@media(max-width:620px){.proofGrid,.channels,.brandStrip,.allianceGrid,.gridProducts,.contactCards,.footerGrid{grid-template-columns:1fr}.actions .secondary{display:none}.logo img{height:46px}.head{display:block}.head p{margin-top:10px}.ctaCatalog{width:100%}}

/* v19 ajustes solicitados */
.section{padding:70px 0;}
.section.tight{padding:56px 0;}
.head{align-items:center;margin-bottom:34px;}
.head h2{margin:0;}
.blueBlock{padding:44px 38px 46px;}
.blueBlock h2{margin:0 0 28px!important;line-height:1.12;}
.clientCarousel{margin-top:0;gap:18px;}
.clientLogo{background:#ffffff!important;border:1px solid rgba(0,83,152,.12)!important;box-shadow:0 12px 28px rgba(0,0,0,.08);opacity:1;}
.clientLogo:nth-child(even){background:#ffffff!important;}
.clientLogo img{filter:none!important;opacity:1;max-width:158px;max-height:56px;}
.industryLogo{background:#ffffff!important;color:var(--azul)!important;border:1px solid rgba(255,255,255,.32)!important;box-shadow:0 10px 26px rgba(0,0,0,.10);}
.industryLogo.yours{background:rgba(255,255,255,.16)!important;color:#fff!important;border:1px dashed rgba(255,255,255,.52)!important;display:flex;flex-direction:column;gap:4px;}
.plusIcon{width:28px;height:28px;border-radius:50%;background:#fff;color:var(--azul);display:grid;place-items:center;font-weight:950;font-size:22px;line-height:1;}
.partnerSide h2,.manufacturerSide h2{margin:0 0 12px;}
.manufacturerCard .btn{text-align:center;}

.industryTextGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px}.industryText{min-height:64px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--azul);display:flex;align-items:center;justify-content:center;font-weight:950;letter-spacing:.08em;font-size:16px;box-shadow:0 8px 22px rgba(18,38,63,.045);text-align:center;padding:12px}.industryText.yours{background:linear-gradient(135deg,#005398,#42B7C0);color:#fff;gap:10px}.plusIcon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.18);font-size:22px;line-height:1}.supplierBoxWide{grid-template-columns:1.05fr .95fr!important;align-items:start}.supplierIntro p{font-size:17px;line-height:1.75;color:#4A5665;margin:0;max-width:650px}.supplierForm{background:#fff}.supplierForm label{font-weight:850;color:var(--azul);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.bigText{min-height:190px!important}.manufacturerCard .btn{background:#fff;color:var(--azul);border:0}.manufacturerCard .btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(0,0,0,.18)}@media(max-width:860px){.industryTextGrid{grid-template-columns:1fr}.supplierBoxWide{grid-template-columns:1fr!important}}

/* Empresa page v22 */
.companyHero{padding:0;background:#fff;}
.companyHeroImage{min-height:430px;background-size:cover;background-position:center;border-radius:0;display:flex;align-items:flex-end;background-color:#0b3558;}
.companyHeroContent{max-width:1220px;margin:0 auto;width:100%;padding:70px 24px;color:white;}
.companyHeroContent .eyebrow{color:#bff0f5;}
.companyHeroContent h1{font-size:clamp(42px,6vw,72px);line-height:1.02;margin:0 0 14px;color:white;letter-spacing:-.04em;max-width:720px;}
.companyHeroContent p{font-size:18px;line-height:1.65;max-width:680px;margin:0;color:rgba(255,255,255,.9);}
.companyIntro{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:start;}
.companyIntroText h2{color:var(--azul);font-size:42px;line-height:1.12;margin:0 0 18px;}
.companyIntroText p{font-size:17px;line-height:1.75;color:var(--mut);margin:0 0 18px;}
.companyCards{display:grid;gap:18px;}
.companyCard{background:#fff;border:1px solid #e1e8ef;border-radius:24px;padding:28px;box-shadow:0 12px 34px rgba(0,83,152,.07);position:relative;overflow:hidden;}
.companyCard:after{content:"ASSON";position:absolute;right:-20px;bottom:-32px;font-size:92px;font-weight:900;letter-spacing:-.08em;color:rgba(0,83,152,.035);}
.companyCardHeader{display:flex;gap:18px;align-items:center;margin-bottom:16px;}
.companyIcon{width:72px;height:72px;display:grid;place-items:center;border-radius:18px;background:#eef8fb;color:#005398;flex:0 0 auto;}
.companyIcon svg{width:52px;height:52px;stroke:#111;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.companyCard h3{margin:0;color:var(--azul2);font-size:23px;text-transform:uppercase;letter-spacing:.02em;}
.companyCard p{font-size:16px;line-height:1.7;color:#2e3540;margin:0;position:relative;z-index:1;}
.facilityBlock{background:linear-gradient(135deg,#f5f9fc,#ffffff);}
.facilityGrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px;}
.facilityImg{height:360px;border-radius:28px;overflow:hidden;box-shadow:0 18px 44px rgba(0,83,152,.13);border:1px solid rgba(0,83,152,.08);}
.facilityImg img{width:100%;height:100%;object-fit:cover;display:block;}
.facilityLead{max-width:860px;color:var(--mut);font-size:17px;line-height:1.75;margin:0;}
@media(max-width:900px){.companyIntro,.facilityGrid{grid-template-columns:1fr}.companyHeroImage{min-height:360px}.facilityImg{height:280px}}


/* v23 responsive system */
html{scroll-behavior:smooth}img{max-width:100%;height:auto}.mobileToggle{display:none;width:46px;height:46px;border:1px solid var(--line);background:#fff;border-radius:14px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.mobileToggle span{width:21px;height:2px;background:var(--azul);display:block;border-radius:99px;transition:.2s}.mobileToggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobileToggle.open span:nth-child(2){opacity:0}.mobileToggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobileMenu{display:none;background:#fff;border-top:1px solid var(--line);box-shadow:0 20px 40px rgba(0,83,152,.10);padding:12px 24px 22px}.mobileMenu.open{display:block}.mobileMenu a{display:block;padding:15px 4px;border-bottom:1px solid var(--line);font-weight:900;color:var(--azul);cursor:pointer}.mobileMenuActions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.mobileMenuActions a{border-bottom:0;padding:12px 14px;text-align:center}.scrollRail,.clientCarousel{scrollbar-width:none}.scrollRail::-webkit-scrollbar,.clientCarousel::-webkit-scrollbar{display:none}.product,.brandCard,.channel,.ally,.industryText{min-width:0}.product h3,.channel h3,.head h2{overflow-wrap:anywhere}.pimg,.brandHero,.companyHeroImage,.facilityImg{background-size:cover;background-position:center}.catalogGridWrap{min-width:0}

@media (min-width:1500px){.wrap,.nav,.companyHeroContent{max-width:1440px}.hero{min-height:460px}.hero h1{font-size:64px}.heroVisual{height:340px}.brandHero{height:390px}.gridProducts{grid-template-columns:repeat(4,1fr)}}

@media (max-width:1180px){.nav{height:76px}.logo img{height:46px}.menu{gap:18px}.actions .btn{padding:12px 16px}.heroGrid{grid-template-columns:1fr .72fr;gap:28px}.proofGrid{grid-template-columns:repeat(2,1fr)}.proofItem:nth-child(2){border-right:0}.gridProducts{grid-template-columns:repeat(2,1fr)}.brandStrip{grid-template-columns:repeat(3,1fr)}.allianceGrid{grid-template-columns:repeat(3,1fr)}.channels{grid-template-columns:repeat(3,1fr)}}

@media (max-width:980px){.topbar{height:auto;min-height:34px;padding:7px 14px;flex-wrap:wrap;gap:8px 16px;font-size:12px;text-align:center}.menu,.actions{display:none}.mobileToggle{display:flex}.nav{height:72px;padding:0 18px}.hero{min-height:auto;padding:38px 0 26px}.heroGrid{grid-template-columns:1fr;gap:26px}.hero h1{font-size:clamp(34px,8vw,54px)}.heroVisual{display:block!important;height:230px;max-width:560px;width:100%;margin:0 auto}.heroScene{border-radius:26px}.heroScene:before{inset:16px;border-radius:22px}.heroLogoMini{left:32px;top:34px;font-size:24px}.heroPacks{right:34px;bottom:30px}.pack{width:56px}.pack:nth-child(1){height:104px}.pack:nth-child(2){height:142px}.pack:nth-child(3){height:120px}.heroLabel{left:30px;bottom:30px}.ctaCatalog{width:100%;height:56px}.section{padding:48px 0}.section.tight{padding:38px 0}.head{align-items:flex-start}.head h2{font-size:32px}.scrollRail{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.scrollRail .product{flex:0 0 280px;scroll-snap-align:start}.clientCarousel{overflow-x:auto;scroll-snap-type:x mandatory}.clientLogo{animation:none;flex:0 0 185px;scroll-snap-align:start}.catalogLayout{grid-template-columns:1fr}.filterPanel{position:relative;top:auto}.filterPanel{display:block}.filterBlock{margin-top:12px;padding-top:12px}.filterOption{display:inline-flex;width:auto;margin:4px 5px 4px 0}.gridProducts{grid-template-columns:repeat(2,1fr)}.brandHero{height:260px}.detail{grid-template-columns:1fr!important}.supplierBox,.supplierBoxWide,.companyIntro,.facilityGrid,.partnerHub{grid-template-columns:1fr!important}.companyHeroImage{min-height:360px}.companyHeroContent{padding:54px 24px}.companyHeroContent h1{font-size:clamp(36px,8vw,56px)}.companyIntroText h2{font-size:34px}.facilityImg{height:280px}.footerGrid{grid-template-columns:1fr 1fr}.industryTextGrid{grid-template-columns:repeat(2,1fr)}}

@media (max-width:680px){.wrap{padding:0 16px}.nav{padding:0 14px}.logo img{height:40px}.mobileToggle{width:42px;height:42px;border-radius:12px}.mobileMenu{padding:8px 18px 18px}.mobileMenuActions{grid-template-columns:1fr}.hero{padding:30px 0 22px}.hero h1{font-size:36px}.eyebrow{font-size:11px;letter-spacing:.10em}.heroVisual{height:190px}.heroLogoMini{font-size:20px;left:26px;top:28px}.heroLabel{font-size:11px;left:22px;bottom:24px;padding:9px 12px}.heroPacks{right:24px;bottom:24px;gap:9px}.pack{width:42px}.pack:nth-child(1){height:78px}.pack:nth-child(2){height:108px}.pack:nth-child(3){height:90px}.proofGrid,.channels,.brandStrip,.allianceGrid,.contactCards,.gridProducts,.footerGrid,.industryGrid,.industryTextGrid{grid-template-columns:1fr}.proofItem{border-right:0;border-bottom:1px solid var(--line)}.proofItem:last-child{border-bottom:0}.head{display:block;margin-bottom:22px}.head p{margin-top:10px}.head h2{font-size:30px;line-height:1.15}.brandCard{min-height:112px}.brandCard img{max-height:58px}.channel{min-height:116px}.pimg{height:145px}.product h3{font-size:17px}.scrollRail .product{flex-basis:250px}.clientLogo{height:76px;flex-basis:165px}.blueBlock,.partnerHub{border-radius:24px;padding:28px 18px}.brandHero{height:210px}.brandMock img{max-width:190px}.companyHeroImage{min-height:330px}.companyHeroContent{padding:44px 18px}.companyHeroContent p{font-size:15px}.companyCard{padding:22px}.companyCardHeader{align-items:flex-start}.companyIcon{width:58px;height:58px}.companyIcon svg{width:42px;height:42px}.companyCard h3{font-size:19px}.companyCard p,.companyIntroText p,.facilityLead{font-size:15px;line-height:1.65}.companyIntroText h2{font-size:30px}.facilityImg{height:220px;border-radius:22px}.supplierPanel,.jobDetailBox,.jobCard{padding:20px;border-radius:22px}.textarea,.bigText{min-height:160px!important}.input,.select{height:46px}.btn{width:100%;padding:13px 16px}.catalogLayout{gap:18px}.filterPanel{padding:16px;border-radius:20px}.filterOption{font-size:12px;padding:9px 10px}.topbar span{display:block;width:100%}}

@media (max-width:420px){.hero h1{font-size:32px}.heroVisual{height:170px}.brandHero{height:190px}.companyHeroImage{min-height:300px}.facilityImg{height:190px}.logo img{height:36px}.pimg{height:130px}.product{padding:16px}.product h3{font-size:16px}.product p{font-size:12px}.chip{font-size:11px}.head h2{font-size:27px}}


/* FIX v28: clientes legibles sobre fondo azul */
.blueBlock{padding:44px 38px 46px;}
.blueBlock h2{margin:0 0 28px!important;line-height:1.12;}
.blueBlock .clientCarousel{gap:18px;}
.blueBlock .clientLogo{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:none!important;opacity:1!important;}
.blueBlock .clientLogo:nth-child(even){background:rgba(255,255,255,.15)!important;}
.blueBlock .clientLogo img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))!important;opacity:1!important;max-width:168px;max-height:58px;}

/* v29 Distribuidores */
.distributorHero{min-height:420px;background:radial-gradient(circle at 84% 18%,rgba(66,183,192,.35),transparent 27%),linear-gradient(135deg,#003E72 0%,#005398 54%,#42B7C0 130%);color:#fff;overflow:hidden;position:relative;display:flex;align-items:center}.distributorHero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,62,114,.85),rgba(0,83,152,.58),rgba(66,183,192,.15));}.distributorHeroOverlay{position:relative;width:100%;}.distributorHeroGrid{display:grid;grid-template-columns:1fr .9fr;gap:44px;align-items:center}.distributorHero h1{font-size:clamp(42px,5.4vw,70px);line-height:.98;letter-spacing:-.055em;margin:0 0 18px;max-width:680px}.distributorHero p{font-size:18px;line-height:1.65;color:rgba(255,255,255,.86);max-width:620px;margin:0}.distributorHeroVisual{min-height:300px;position:relative}.routeMap{position:absolute;inset:0;border-radius:36px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);box-shadow:0 24px 70px rgba(0,0,0,.18);overflow:hidden}.routeMap:before{content:"";position:absolute;inset:26px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.72));border-radius:28px}.routeDot{position:absolute;width:18px;height:18px;background:var(--azul);border:4px solid #fff;border-radius:50%;z-index:3;box-shadow:0 8px 20px rgba(0,83,152,.24)}.d1{left:75px;top:82px}.d2{right:86px;top:105px}.d3{left:48%;bottom:70px}.routeLine{position:absolute;height:4px;background:linear-gradient(90deg,var(--azul),var(--celeste));border-radius:999px;z-index:2;transform-origin:left center;opacity:.72}.l1{left:92px;top:92px;width:295px;transform:rotate(6deg)}.l2{left:45%;bottom:86px;width:245px;transform:rotate(-24deg)}.routeTruck{position:absolute;left:43%;top:42%;width:82px;height:58px;border-radius:18px;background:var(--azul);color:#fff;display:grid;place-items:center;font-size:28px;z-index:4;box-shadow:0 14px 32px rgba(0,83,152,.25)}.routeTruck:before{content:"";position:absolute;right:-22px;bottom:9px;width:28px;height:30px;background:var(--celeste);border-radius:8px 12px 12px 4px}.routeTruck:after{content:"";position:absolute;left:15px;right:-15px;bottom:-8px;height:12px;background:radial-gradient(circle at 18px 6px,#1f3f61 0 5px,transparent 6px),radial-gradient(circle at 92px 6px,#1f3f61 0 5px,transparent 6px)}.routeCard{position:absolute;z-index:5;background:#fff;color:var(--azul);font-weight:950;border-radius:999px;padding:11px 16px;box-shadow:0 14px 30px rgba(0,83,152,.14);font-size:13px}.rc1{left:54px;bottom:45px}.rc2{right:52px;bottom:52px}.rc3{right:60px;top:42px}.distributorSection{background:linear-gradient(135deg,#F5F7FA 0%,#fff 66%,#EAF8FA 100%)}.distributorLayout{display:grid;grid-template-columns:1fr .95fr;gap:30px;align-items:start}.distributorInfo{display:grid;gap:18px}.distributorBlock{background:#fff;border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:0 12px 34px rgba(0,83,152,.07);display:grid;grid-template-columns:62px 1fr;gap:18px;align-items:start}.distributorIcon{width:62px;height:62px;border-radius:20px;background:#EAF8FA;color:var(--azul);display:grid;place-items:center;font-size:30px;font-weight:950}.distributorBlock h3{color:var(--azul);font-size:24px;line-height:1.15;margin:0 0 10px;letter-spacing:-.02em}.distributorBlock p{font-size:16px;line-height:1.7;color:var(--mut);margin:0}.distributorContact h2{color:var(--azul);font-size:38px;line-height:1.05;margin:0 0 12px;letter-spacing:-.03em}.distributorContact p{color:var(--mut);line-height:1.65;margin:0 0 18px}.distributorContact{position:sticky;top:106px}@media(max-width:980px){.distributorHeroGrid,.distributorLayout{grid-template-columns:1fr}.distributorHero{min-height:auto;padding:54px 0}.distributorHeroVisual{min-height:260px;max-width:620px;width:100%;margin:auto}.distributorContact{position:relative;top:auto}.distributorBlock{grid-template-columns:54px 1fr}.distributorIcon{width:54px;height:54px;border-radius:17px;font-size:26px}}@media(max-width:620px){.distributorHero{padding:42px 0}.distributorHero h1{font-size:36px}.distributorHero p{font-size:15px}.distributorHeroVisual{min-height:210px}.routeMap{border-radius:24px}.routeMap:before{inset:14px;border-radius:20px}.routeCard{font-size:11px;padding:8px 10px}.routeTruck{width:60px;height:44px;font-size:20px}.routeTruck:before{right:-15px;width:20px;height:22px}.routeDot{width:14px;height:14px;border-width:3px}.d1{left:42px;top:60px}.d2{right:48px;top:78px}.d3{left:45%;bottom:50px}.l1{left:56px;top:68px;width:190px}.l2{left:42%;bottom:62px;width:150px}.rc1{left:24px;bottom:24px}.rc2{right:22px;bottom:28px}.rc3{right:24px;top:24px}.distributorBlock{grid-template-columns:1fr;padding:22px}.distributorContact h2{font-size:30px}}

/* v30 ajustes de pulido */
.topbar{
  justify-content:center;
  gap:34px;
  font-weight:800;
}
.topbar span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.topIcon{
  width:17px;
  height:17px;
  stroke:currentColor;
  fill:none;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.95;
}

/* Heroes secundarios con el mismo comportamiento de Empresa */
.rrhhHero .companyHeroImage,
.distributorHeroCompany .companyHeroImage{
  min-height:440px;
  background-size:cover;
  background-position:center;
}
.rrhhHero .companyHeroContent,
.distributorHeroCompany .companyHeroContent{
  max-width:860px;
}

/* Contacto */
.contactHero{
  background:linear-gradient(135deg,#003E72 0%,#005398 58%,#42B7C0 125%);
  color:#fff;
  padding:70px 0;
  position:relative;
  overflow:hidden;
}
.contactHero:after{
  content:"";
  position:absolute;
  width:440px;
  height:440px;
  border:70px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-120px;
  top:-150px;
}
.contactHeroGrid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:34px;
  align-items:center;
  position:relative;
  z-index:1;
}
.contactHero h1{
  font-size:clamp(42px,5vw,68px);
  line-height:.98;
  letter-spacing:-.055em;
  margin:0 0 18px;
  max-width:760px;
}
.contactHero p{
  font-size:18px;
  line-height:1.65;
  color:rgba(255,255,255,.84);
  max-width:680px;
  margin:0;
}
.contactInfoCard{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
  border-radius:28px;
  padding:28px;
  backdrop-filter:blur(8px);
  box-shadow:0 24px 70px rgba(0,0,0,.16);
  display:grid;
  gap:18px;
}
.contactInfoCard div{
  display:grid;
  gap:4px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.16);
}
.contactInfoCard div:last-child{border-bottom:0;padding-bottom:0}
.contactInfoCard b{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#bff4f6}
.contactInfoCard span{font-size:20px;font-weight:900;color:#fff}
.contactMain{background:linear-gradient(135deg,#F5F7FA 0%,#fff 70%)}
.contactLayout{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:30px;
  align-items:start;
}
.contactOptions h2,
.contactFormPanel h2{
  color:var(--azul);
  font-size:38px;
  line-height:1.08;
  letter-spacing:-.03em;
  margin:0 0 20px;
}
.contactCardsVertical{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.contactCardsVertical .cat{
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.contactCardsVertical .cat:hover{
  transform:translateY(-3px);
  border-color:rgba(66,183,192,.55);
  box-shadow:0 16px 38px rgba(0,83,152,.10);
}
.contactFormPanel{
  position:sticky;
  top:104px;
}

/* Footer mejorado */
.footerGridEnhanced{
  grid-template-columns:1.35fr .75fr .9fr .75fr;
  gap:34px;
  align-items:start;
}
.footerBrand img{height:42px;width:auto;margin-bottom:16px}
.footerBrand p{max-width:410px}
.footerContactLine{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}
.footerContactLine span{
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:8px 12px;
  color:#fff;
  font-weight:800;
  font-size:13px;
}
.footer li{
  cursor:pointer;
  transition:color .2s ease, transform .2s ease;
}
.footer li:hover{
  color:#fff;
  transform:translateX(3px);
}

/* home: clientes antes de productos */
.blueBlock{margin-top:0;margin-bottom:0;}

@media(max-width:980px){
  .topbar{gap:12px 20px;justify-content:center;}
  .contactHeroGrid,.contactLayout{grid-template-columns:1fr;}
  .contactFormPanel{position:relative;top:auto;}
  .footerGridEnhanced{grid-template-columns:1fr 1fr;}
  .rrhhHero .companyHeroImage,.distributorHeroCompany .companyHeroImage{min-height:360px;}
}
@media(max-width:680px){
  .topbar span{width:auto!important;}
  .topbar{font-size:11px;gap:8px 14px;}
  .topIcon{width:15px;height:15px;}
  .contactHero{padding:48px 0;}
  .contactHero h1{font-size:38px;}
  .contactHero p{font-size:15px;}
  .contactInfoCard{padding:22px;border-radius:22px;}
  .contactInfoCard span{font-size:17px;}
  .contactOptions h2,.contactFormPanel h2{font-size:30px;}
  .footerGridEnhanced{grid-template-columns:1fr;}
}


/* Ajustes v31 */
.topbar{font-weight:400;}
.topbar b{font-weight:400;color:inherit;}
.catalogHead{justify-content:center;text-align:center;margin:4px 0 38px;min-height:76px;align-items:center;}
.catalogHead h2{font-size:42px;}
.brandCard:hover{box-shadow:none!important;transform:none!important;border-color:var(--celeste)!important;background:#F2FAFC;}
.rrhhHero .companyHeroContent,
.distributorHeroCompany .companyHeroContent{max-width:1220px!important;margin:0 auto!important;text-align:left!important;}
.contactInfoCard b{font-weight:500!important;}
.contactInfoCard span{font-weight:500!important;}
.contactCardsVertical .cat{cursor:pointer;transition:.18s;}
.contactCardsVertical .cat.active{background:var(--azul);border-color:var(--azul);color:#fff;box-shadow:0 18px 44px rgba(0,83,152,.18);}
.contactCardsVertical .cat.active b,.contactCardsVertical .cat.active p{color:#fff!important;}
.contactCardsVertical .cat.external{position:relative;}
.contactCardsVertical .cat.external:after{content:'→';position:absolute;right:20px;top:22px;color:var(--azul);font-weight:950;}
.contactCardsVertical .cat.external:hover{background:#F2FAFC;border-color:var(--celeste);}
.contactCardsVertical .cat.external.active:after{color:#fff;}
.contactFormPanel h2{transition:.18s;}
.homeCtaBand{margin-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.homeCtaBand .cat{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;cursor:pointer;transition:.18s;}
.homeCtaBand .cat:hover{background:#F2FAFC;border-color:var(--celeste);}
.homeCtaBand .cat b{display:block;color:var(--azul);font-size:18px;margin-bottom:6px;}
.homeCtaBand .cat p{margin:0;color:var(--mut);line-height:1.5;font-size:14px;}
.heroImageConcept{display:none;}
@media(max-width:680px){.catalogHead h2{font-size:32px}.homeCtaBand{grid-template-columns:1fr}}

/* v32 refinements */
.brandHero.saif{background-image:url('../assets/images/asset_001.jpg')!important;background-size:cover!important;background-position:center!important;}
.homeCtaBand{gap:20px!important;}
.homeCtaBand .cat{padding:30px 32px!important;border-radius:28px!important;border:1px solid rgba(0,83,152,.16)!important;background:linear-gradient(135deg,#ffffff 0%,#F2FAFC 100%)!important;box-shadow:0 14px 36px rgba(0,83,152,.10)!important;position:relative;overflow:hidden;}
.homeCtaBand .cat:after{content:"";position:absolute;right:-46px;top:-56px;width:160px;height:160px;border-radius:50%;background:rgba(66,183,192,.16);transition:.25s;}
.homeCtaBand .cat b{font-size:22px!important;line-height:1.12!important;font-weight:950!important;letter-spacing:.02em!important;position:relative;z-index:1;}
.homeCtaBand .cat p{font-size:15px!important;position:relative;z-index:1;}
.homeCtaBand .cat:hover{background:linear-gradient(135deg,#003E72,#005398)!important;border-color:#003E72!important;transform:translateY(-3px);box-shadow:0 22px 48px rgba(0,62,114,.24)!important;}
.homeCtaBand .cat:hover b,.homeCtaBand .cat:hover p{color:#fff!important;}
.homeCtaBand .cat:hover:after{background:rgba(255,255,255,.12);transform:scale(1.2);}
.rrhhHero .companyHeroImage{justify-content:flex-end;background-position:center!important;}
.rrhhHero .companyHeroContent.rrhhHeroText{margin:0 0 0 auto!important;text-align:right!important;max-width:760px!important;}
.rrhhHero .companyHeroContent.rrhhHeroText h1,.rrhhHero .companyHeroContent.rrhhHeroText p{margin-left:auto!important;}
.distributorHeroCompany .companyHeroImage{background-position:center!important;}
.jobDescription{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 12px 34px rgba(0,83,152,.07);}
.jobDescription h4{color:var(--azul);font-size:18px;margin:22px 0 10px;}
.jobDescription ul{margin:0;padding-left:20px;color:var(--mut);line-height:1.75;}
.applicationPanel{position:sticky;top:106px;}
@media(max-width:980px){.rrhhHero .companyHeroContent.rrhhHeroText{text-align:left!important;margin:0 auto!important}.rrhhHero .companyHeroContent.rrhhHeroText h1,.rrhhHero .companyHeroContent.rrhhHeroText p{margin-left:0!important}.applicationPanel{position:relative;top:auto}}

/* v33 refinamientos home / rrhh / distribuidores */
#brand > section.wrap{padding-bottom:72px;}
.section{padding-top:68px;padding-bottom:68px;}
.section.tight{padding-top:52px;padding-bottom:52px;}
.homeCtaBand{margin-top:0!important;display:grid;grid-template-columns:1fr 1fr;gap:22px!important;}
.ctaDistributorSection{padding-top:44px!important;padding-bottom:44px!important;background:linear-gradient(180deg,#fff 0%,#F5F7FA 100%);}
.homeCtaBand .cat{display:grid!important;grid-template-columns:76px 1fr;gap:18px;align-items:center;padding:30px 34px!important;border-radius:30px!important;border:1px solid rgba(0,83,152,.16)!important;background:linear-gradient(135deg,#ffffff 0%,#F2FAFC 100%)!important;box-shadow:0 14px 36px rgba(0,83,152,.10)!important;position:relative;overflow:hidden;cursor:pointer;}
.homeCtaBand .cat:after{content:"";position:absolute;right:-46px;top:-56px;width:170px;height:170px;border-radius:50%;background:rgba(66,183,192,.16);transition:.25s;}
.homeCtaBand .cat:hover{background:linear-gradient(135deg,#003E72,#005398)!important;border-color:#003E72!important;transform:translateY(-3px);box-shadow:0 22px 48px rgba(0,62,114,.24)!important;}
.homeCtaBand .cat:hover b,.homeCtaBand .cat:hover p{color:#fff!important;}
.homeCtaBand .cat:hover:after{background:rgba(255,255,255,.12);transform:scale(1.18);}
.ctaIcon{width:76px;height:76px;border-radius:24px;background:#EAF8FA;color:var(--azul);display:grid;place-items:center;position:relative;z-index:2;transition:.22s;}
.ctaIcon svg{width:46px;height:46px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;}
.homeCtaBand .cat:hover .ctaIcon{background:rgba(255,255,255,.16);color:#fff;}
.homeCtaBand .cat b{display:block;color:var(--azul);font-size:23px!important;line-height:1.08!important;font-weight:950!important;letter-spacing:.02em!important;position:relative;z-index:2;margin-bottom:8px;}
.homeCtaBand .cat p{margin:0;color:var(--mut);line-height:1.5;font-size:15px!important;position:relative;z-index:2;}
.channels .channel p{display:none!important;}
.channel{min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.featuredHead{align-items:center!important;margin-bottom:18px!important;}
.railControls{display:flex;gap:10px;align-items:center;}
.railControls button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(0,83,152,.20);background:#fff;color:var(--azul);font-size:32px;line-height:1;display:grid;place-items:center;cursor:pointer;transition:.18s;box-shadow:0 8px 22px rgba(0,83,152,.08);}
.railControls button:hover{background:var(--azul);color:#fff;transform:translateY(-2px);}
.featuredTabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px;}
.featuredTab{border:1px solid var(--line);background:#fff;color:var(--azul);border-radius:999px;padding:10px 16px;font-family:inherit;font-weight:900;font-size:13px;cursor:pointer;transition:.18s;}
.featuredTab:hover{border-color:var(--celeste);background:#F2FAFC;}
.featuredTab.active{background:var(--azul);border-color:var(--azul);color:#fff;}
.featuredRail{scroll-behavior:smooth;position:relative;}
.featuredRail .product{transition:.18s;}
.featuredRail .product:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(0,83,152,.12);border-color:#bcecf0;}
.rrhhHero .companyHeroContent.rrhhHeroText{max-width:1220px!important;margin:0 auto!important;text-align:right!important;width:100%!important;padding-left:24px!important;padding-right:24px!important;}
.rrhhHero .companyHeroContent.rrhhHeroText .eyebrow,
.rrhhHero .companyHeroContent.rrhhHeroText h1,
.rrhhHero .companyHeroContent.rrhhHeroText p{max-width:760px!important;margin-left:auto!important;}
.rrhhHero .companyHeroContent.rrhhHeroText h1{margin-bottom:14px!important;}
.distributorHeroCompany .companyHeroImage{background-position:center right!important;}
.distributorHeroCompany .companyHeroImage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,62,114,.98) 0%,rgba(0,62,114,.86) 31%,rgba(0,83,152,.42) 58%,rgba(0,0,0,.06) 100%);pointer-events:none;}
.companyHeroImage{position:relative;overflow:hidden;}
.companyHeroContent{position:relative;z-index:2;}
.industryTextGrid{grid-template-columns:repeat(3,1fr);}
@media(max-width:980px){
  .homeCtaBand{grid-template-columns:1fr;}
  .rrhhHero .companyHeroContent.rrhhHeroText{text-align:left!important;}
  .rrhhHero .companyHeroContent.rrhhHeroText .eyebrow,
  .rrhhHero .companyHeroContent.rrhhHeroText h1,
  .rrhhHero .companyHeroContent.rrhhHeroText p{margin-left:0!important;margin-right:auto!important;}
  .distributorHeroCompany .companyHeroImage:before{background:linear-gradient(90deg,rgba(0,62,114,.92),rgba(0,83,152,.55));}
}
@media(max-width:680px){
  .homeCtaBand .cat{grid-template-columns:58px 1fr;padding:22px!important;border-radius:24px!important;}
  .ctaIcon{width:58px;height:58px;border-radius:18px;}
  .ctaIcon svg{width:36px;height:36px;}
  .homeCtaBand .cat b{font-size:18px!important;}
  .featuredTabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;}
  .featuredTab{white-space:nowrap;}
  #brand > section.wrap{padding-bottom:52px;}
}

/* v34 · HERO HOME fotográfico con carrusel automático */
.heroCarousel{
  position:relative;
  min-height:520px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#003E72;
  isolation:isolate;
}
.heroSlides{
  position:absolute;
  inset:0;
  z-index:0;
}
.heroSlide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.035);
  transition:opacity 900ms ease, transform 6500ms ease;
  will-change:opacity, transform;
}
.heroSlide.active{
  opacity:1;
  transform:scale(1);
}
.heroOverlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg, rgba(0,62,114,.94) 0%, rgba(0,83,152,.78) 36%, rgba(0,83,152,.42) 66%, rgba(0,83,152,.15) 100%),
    linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.04) 48%, rgba(0,0,0,.18) 100%);
}
.heroCarouselContent{
  position:relative;
  z-index:2;
  width:100%;
}
.heroCarousel .heroText{
  max-width:720px;
  padding:86px 0 82px;
}
.heroCarousel h1{
  max-width:720px;
  text-shadow:0 18px 45px rgba(0,0,0,.28);
}
.heroCarousel .ctaCatalog{
  width:min(560px,90%);
  margin-top:28px;
}
.heroDots{
  display:flex;
  gap:10px;
  margin-top:24px;
  align-items:center;
}
.heroDot{
  width:11px;
  height:11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.70);
  background:rgba(255,255,255,.24);
  cursor:pointer;
  padding:0;
  transition:.22s;
}
.heroDot.active{
  width:34px;
  background:#fff;
  border-color:#fff;
}
@media(max-width:980px){
  .heroCarousel{min-height:460px;}
  .heroCarousel .heroText{padding:70px 0 66px;max-width:650px;}
  .heroOverlay{background:linear-gradient(90deg, rgba(0,62,114,.94) 0%, rgba(0,83,152,.78) 48%, rgba(0,83,152,.36) 100%);}
}
@media(max-width:620px){
  .heroCarousel{min-height:430px;}
  .heroCarousel .heroText{padding:58px 0 54px;}
  .heroCarousel h1{font-size:36px;line-height:1.04;}
  .heroCarousel .ctaCatalog{width:100%;}
  .heroOverlay{background:linear-gradient(90deg, rgba(0,62,114,.96) 0%, rgba(0,83,152,.86) 58%, rgba(0,83,152,.50) 100%);}
}


/* v36 · Prueba de oportunidades comerciales */
.catalogDiscovery{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:-16px auto 32px}
.catalogDiscovery button{border:1px solid rgba(0,83,152,.18);background:#fff;color:var(--azul);border-radius:999px;padding:12px 20px;font-weight:800;cursor:pointer;transition:.22s ease}
.catalogDiscovery button:hover{background:var(--azul);color:#fff;transform:translateY(-1px)}
.filterPulse{animation:filterPulse 1.2s ease;background:#eef9fb;border-radius:18px;padding:12px;margin:-12px}
@keyframes filterPulse{0%{box-shadow:0 0 0 0 rgba(66,183,192,.0)}35%{box-shadow:0 0 0 8px rgba(66,183,192,.14)}100%{box-shadow:0 0 0 0 rgba(66,183,192,.0)}}
.channelClickable{cursor:pointer;transition:.2s ease}
.channelClickable:hover{background:#fff;border-color:rgba(0,83,152,.22);transform:translateY(-2px)}
.channelLandingHero{background:linear-gradient(135deg,#003e72,#005398 62%,#42b7c0);color:#fff;padding:92px 24px 78px;position:relative;overflow:hidden}
.channelLandingHero:after{content:"";position:absolute;right:-120px;top:-150px;width:460px;height:460px;border-radius:50%;background:rgba(255,255,255,.10)}
.channelLandingHero .wrap{position:relative;z-index:2}.channelLandingHero h1{font-size:56px;line-height:1.02;margin:10px 0 16px;max-width:780px}.channelLandingHero p{max-width:760px;color:rgba(255,255,255,.82);line-height:1.75;font-size:18px}.channelCtas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.product .chip+ h3{margin-top:10px}.product p{min-height:54px}
.supplierForm .fileInput{background:#fff}

/* v39 refinements */
.menu a{position:relative;transition:color .18s ease;}
.menu a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--celeste);transform:scaleX(0);transform-origin:center;transition:transform .2s ease;}
.menu a:hover{color:var(--azul);}
.menu a:hover:after{transform:scaleX(1);}
.whatsappBtn{gap:8px;}
.waIcon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.productPlaceholder{background:linear-gradient(135deg,#F6F8FA,#FFFFFF);border:1px solid #E6ECF2;}
.productPlaceholder svg{width:88px;height:88px;fill:none;stroke:#7B8A9C;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;opacity:.62;}
.productDetailImage .productPlaceholder svg{width:130px;height:130px;}
.filterOption{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.filterOption.active .filterX{order:2;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.18);font-size:16px;line-height:1;}
.filterOption.active:hover .filterX{background:rgba(255,255,255,.28)}
.brandSubfilters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px;}
.brandSub{border:1px solid var(--line);background:#fff;color:var(--azul);border-radius:999px;padding:10px 14px;font-family:inherit;font-weight:900;font-size:13px;cursor:pointer;transition:.18s;}
.brandSub:hover{border-color:#bcecf0;background:#F2FAFC;}
.brandSub.active{background:var(--azul);color:#fff;border-color:var(--azul)}
#brandProducts{display:block;}
.brandProductGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:64px;}
.brandCard:hover{box-shadow:none;transform:none;background:#F2FAFC;border-color:#bfeaf0;}
@media(max-width:900px){.brandProductGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.brandProductGrid{grid-template-columns:1fr}.menu a:after{display:none}}

/* v41 fix: catalog filters should scroll with page, not stay anchored/sticky */
.catalogLayout{align-items:start;}
.filterPanel{position:relative!important;top:auto!important;max-height:none!important;overflow:visible!important;align-self:start;}
@media (min-width:981px){
  .catalogPage .filterPanel{position:relative!important;top:auto!important;}
}


/* v43 · microinteracciones profesionales sin cambiar claims */
.menu a{
  position:relative;
  transition:color .2s ease;
}
.menu a::after{
  content:"";
  position:absolute;
  left:0;
  right:auto;
  bottom:-10px;
  width:0;
  height:2px;
  border-radius:2px;
  background:var(--celeste);
  transition:width .22s ease;
}
.menu a:hover{
  color:var(--azul);
}
.menu a:hover::after{
  width:100%;
}
.logo{
  transition:opacity .2s ease, transform .2s ease;
}
.logo:hover{
  opacity:.92;
  transform:scale(1.015);
}
.btn{
  transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.btn.primary::after,
.btn.secondary::after{
  content:" →";
  display:inline-block;
  margin-left:8px;
  transition:transform .2s ease;
}
.btn.back::before{
  content:"← ";
  display:inline-block;
  margin-right:8px;
  transition:transform .2s ease;
}
.btn.back::after{
  content:"" !important;
  margin-left:0;
}
.btn.primary:hover::after,
.btn.secondary:hover::after{
  transform:translateX(4px);
}
.btn.back:hover::before{
  transform:translateX(-4px);
}
.btn.secondary:hover{
  border-color:var(--celeste);
  background:#F2FAFC;
  color:var(--azulD);
  transform:translateY(-1px);
}
.whatsappBtn::after,
.mobileMenu .whatsappBtn::after{
  content:""!important;
  margin-left:0!important;
}
.brandCard{
  transition:background .18s ease, border-color .18s ease, transform .18s ease;
}
.brandCard:hover{
  box-shadow:none!important;
  transform:none!important;
  border-color:var(--celeste)!important;
  background:#F2FAFC!important;
}
.brandCard img{
  transition:filter .18s ease, opacity .18s ease, transform .18s ease;
}
.brandCard:hover img{
  transform:scale(1.015);
  opacity:.98;
}
.product.clickable{
  position:relative;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.product.clickable:hover{
  transform:translateY(-3px);
  border-color:rgba(66,183,192,.72);
  box-shadow:0 18px 40px rgba(0,83,152,.12);
  background:#fff;
}
.product.clickable .pimg{
  transition:background .2s ease, transform .2s ease;
}
.product.clickable:hover .pimg{
  background:linear-gradient(135deg,#EAF8FA,#ffffff);
}
.product.clickable h3{
  transition:color .2s ease;
}
.product.clickable:hover h3{
  color:var(--azulD);
}
.product.clickable::after{
  content:"Ver ficha →";
  display:block;
  margin-top:auto;
  padding-top:10px;
  color:var(--azul);
  font-size:13px;
  font-weight:900;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .2s ease, transform .2s ease;
}
.product.clickable:hover::after{
  opacity:1;
  transform:translateY(0);
}
.input:focus,.select:focus,.textarea:focus{
  outline:none;
  border-color:var(--celeste);
  box-shadow:0 0 0 4px rgba(66,183,192,.16);
}
.contactCardsVertical .cat{
  transition:background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.contactCardsVertical .cat:hover{
  transform:translateY(-2px);
}
.filterOption{
  transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.filterOption:hover{
  transform:translateX(2px);
}
.filterPanel{
  position:relative!important;
  top:auto!important;
}
/* Selector inteligente de WhatsApp */
.waOverlay{
  position:fixed;
  inset:0;
  background:rgba(0,30,56,.42);
  backdrop-filter:blur(4px);
  z-index:1000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.waOverlay.active{display:flex;}
.waPanel{
  width:min(520px,100%);
  background:#fff;
  border-radius:28px;
  box-shadow:0 28px 80px rgba(0,30,56,.28);
  border:1px solid var(--line);
  padding:26px;
  position:relative;
}
.waClose{
  position:absolute;
  right:18px;
  top:16px;
  width:36px;
  height:36px;
  border-radius:50%;
  border:1px solid var(--line);
  background:#fff;
  color:var(--azul);
  font-size:20px;
  cursor:pointer;
  transition:.18s;
}
.waClose:hover{background:#F2FAFC;border-color:var(--celeste);}
.waPanel h3{
  margin:0 44px 8px 0;
  color:var(--azul);
  font-size:26px;
  letter-spacing:-.02em;
}
.waPanel p{
  margin:0 0 18px;
  color:var(--mut);
  line-height:1.55;
}
.waOptions{
  display:grid;
  gap:10px;
}
.waOption{
  width:100%;
  border:1px solid var(--line);
  background:#fff;
  border-radius:18px;
  padding:15px 16px;
  text-align:left;
  font-family:inherit;
  cursor:pointer;
  color:var(--txt);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  transition:.18s;
}
.waOption b{color:var(--azul);display:block;font-size:15px;}
.waOption span{display:block;color:var(--mut);font-size:13px;margin-top:2px;}
.waOption::after{content:"→";color:var(--azul);font-weight:950;transition:.18s;}
.waOption:hover{
  border-color:var(--celeste);
  background:#F2FAFC;
  transform:translateY(-1px);
}
.waOption:hover::after{transform:translateX(4px);}
@media(max-width:680px){
  .waPanel{padding:22px;border-radius:24px;}
  .product.clickable::after{opacity:1;transform:none;}
}


/* v45 · UX improvements: active menu, catalog chips/search, refined product detail */
.menu a,.mobileMenu a{position:relative;transition:color .18s ease, opacity .18s ease;}
.menu a.active{color:var(--azul);}
.menu a.active::after{width:100%;}
.mobileMenu a.active{background:#F2FAFC;color:var(--azulD);padding-left:12px;border-radius:12px;}

.catalogResults{min-width:0;}
.catalogToolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;}
.catalogSearch{position:relative;flex:1;min-width:220px;}
.catalogSearch input{width:100%;height:52px;border:1px solid var(--line);border-radius:18px;padding:0 52px 0 18px;font-family:inherit;font-weight:700;color:var(--txt);background:#fff;transition:border-color .18s ease, box-shadow .18s ease;}
.catalogSearch input:focus{outline:none;border-color:var(--celeste);box-shadow:0 0 0 4px rgba(66,183,192,.16);}
.catalogSearch span{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--azul);font-weight:900;}
.catalogCount{flex:0 0 auto;background:#EAF8FA;color:var(--azul);border:1px solid rgba(66,183,192,.45);border-radius:999px;padding:12px 16px;font-weight:900;font-size:14px;}
.activeFilterChips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;min-height:0;}
.filterChip,.clearChips{border:1px solid rgba(0,83,152,.18);background:#fff;color:var(--azul);border-radius:999px;padding:8px 10px 8px 12px;font-family:inherit;font-size:13px;font-weight:900;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:.18s;}
.filterChip b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#EAF8FA;color:var(--azul);line-height:1;}
.filterChip:hover,.clearChips:hover{background:#F2FAFC;border-color:var(--celeste);transform:translateY(-1px);}
.clearChips{background:var(--azul);color:#fff;border-color:var(--azul);}
.clearChips:hover{background:var(--azulD);color:#fff;}
.emptyState{grid-column:1/-1;background:#fff;border:1px dashed #C9D6E2;border-radius:24px;padding:34px;text-align:center;color:var(--mut);}
.emptyState b{display:block;color:var(--azul);font-size:20px;margin-bottom:6px;}

.brandCard{position:relative;overflow:hidden;}
.brandHoverMeta{position:absolute;left:14px;right:14px;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:8px;opacity:0;transform:translateY(6px);transition:.18s;pointer-events:none;}
.brandHoverMeta span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 8px;color:var(--azul);font-size:11px;font-weight:900;white-space:nowrap;max-width:55%;overflow:hidden;text-overflow:ellipsis;}
.brandHoverMeta b{color:var(--azul);font-size:12px;white-space:nowrap;}
.brandCard:hover .brandHoverMeta{opacity:1;transform:translateY(0);}

.productDetailEnhanced{align-items:start;}
.productImagePanel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:0 12px 34px rgba(0,83,152,.06);}
.detailPlaceholder{height:330px!important;border-radius:24px!important;margin:0 0 16px!important;}
.productInfoPanel h2{color:var(--azul);font-size:40px;line-height:1.08;margin:18px 0 18px;letter-spacing:-.03em;}
.productFacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.productFacts div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:13px 14px;}
.productFacts span{display:block;color:var(--mut);font-size:12px;font-weight:800;margin-bottom:4px;}
.productFacts b{display:block;color:var(--txt);font-size:14px;line-height:1.35;}

/* subtle block reveal */
.section,.proof,.companyHero,.contactHero{animation:softReveal .42s ease both;}
@keyframes softReveal{from{opacity:.01;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.section,.proof,.companyHero,.contactHero{animation:none}.heroSlide{transition:none!important}}
@media(max-width:780px){.catalogToolbar{display:block}.catalogCount{display:inline-flex;margin-top:10px}.productFacts{grid-template-columns:1fr}.brandHoverMeta{opacity:1;transform:none}.brandHoverMeta span{display:none}.catalogSearch input{height:48px}}

/* v46 · clickable logo + home scroll continuity */
.logo,
.logo img{
  cursor:pointer;
}
.logo{
  display:inline-flex;
  align-items:center;
  transition:opacity .18s ease, transform .18s ease;
}
.logo img{
  transition:opacity .18s ease, transform .18s ease, filter .18s ease;
}
.logo:hover img,
.logo:focus-visible img{
  opacity:.92;
  transform:translateY(-1px) scale(1.015);
}
.logo:focus-visible{
  outline:3px solid rgba(66,183,192,.35);
  outline-offset:6px;
  border-radius:12px;
}

/* Home: continuous visual flow between blocks without changing the approved layout */
#home{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 16%, rgba(66,183,192,.16), transparent 28%),
    radial-gradient(circle at 88% 42%, rgba(0,83,152,.10), transparent 30%),
    radial-gradient(circle at 18% 78%, rgba(63,140,182,.11), transparent 32%),
    linear-gradient(180deg,#ffffff 0%,#F5FBFD 24%,#ffffff 47%,#F4F8FB 70%,#ffffff 100%);
}
#home::before{
  content:"";
  position:absolute;
  inset:410px -120px 0 -120px;
  pointer-events:none;
  background:
    linear-gradient(115deg, transparent 0 16%, rgba(66,183,192,.08) 16% 17%, transparent 17% 48%, rgba(0,83,152,.055) 48% 49%, transparent 49% 100%);
  opacity:.85;
  z-index:0;
}
#home > section{
  position:relative;
  z-index:1;
}
#home .bandWhite,
#home .bandSoft,
#home .bandBlueSoft,
#home .ctaDistributorSection,
#home .supplier{
  background:transparent;
}
#home .section{
  padding-top:76px;
  padding-bottom:76px;
}
#home .section.tight{
  padding-top:64px;
  padding-bottom:70px;
}
#home .proof{
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(228,234,241,.9);
}
#home .brandStrip,
#home .channels,
#home .productRail,
#home .partnerHub,
#home .homeCtaBand{
  position:relative;
}
#home .brandStrip::before,
#home .channels::before,
#home .productRail::before{
  content:"";
  position:absolute;
  inset:-22px;
  border-radius:34px;
  background:rgba(255,255,255,.35);
  z-index:-1;
  pointer-events:none;
}
#home .blueBlock{
  box-shadow:0 24px 70px rgba(0,62,114,.18);
}
#home .head{
  margin-bottom:34px;
}
#home .head h2{
  text-wrap:balance;
}
@media(max-width:980px){
  #home .section{padding-top:56px;padding-bottom:56px;}
  #home .section.tight{padding-top:48px;padding-bottom:52px;}
  #home::before{inset:330px -90px 0 -90px;}
}
@media(max-width:680px){
  #home .section{padding-top:46px;padding-bottom:46px;}
  #home .brandStrip::before,
  #home .channels::before,
  #home .productRail::before{display:none;}
}

/* v47 redes sociales */
.socialLinks{display:grid;gap:10px;margin-top:12px}
.socialLinks a{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.82);text-decoration:none;font-size:14px;transition:color .18s ease,transform .18s ease}
.socialLinks a:hover{color:#fff;transform:translateX(3px)}
.igIcon{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid currentColor;border-radius:7px;font-size:15px;line-height:1;font-weight:800}
.brandSocialBtn{display:inline-flex;align-items:center;gap:8px;margin-left:14px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(0,83,152,.15);color:var(--azul);font-size:14px;text-decoration:none;vertical-align:middle;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.brandSocialBtn:hover{background:#eef8fa;border-color:rgba(66,183,192,.55);transform:translateY(-1px)}
@media(max-width:760px){.brandSocialBtn{margin-left:0;margin-top:12px;display:inline-flex}.footerGridEnhanced{grid-template-columns:1fr!important}}

/* v48 footer redes compactas: 4 columnas sin aumentar altura */
.footerGridEnhanced{grid-template-columns:1.35fr .85fr 1fr .75fr;gap:30px;}
.compactSocial{gap:8px;margin-top:10px;}
.compactSocial a{font-size:13px;line-height:1.2;}
.compactSocial .igIcon{width:20px;height:20px;border-radius:6px;font-size:13px;}


/* v49 ajustes: hover marcas y carrusel productos destacados */
.brandHoverMeta{justify-content:center!important;bottom:14px!important;}
.brandHoverMeta span{max-width:92%!important;}
.brandHoverMeta b{display:none!important;}
#home .productRail.featuredRail{
  overflow-x:auto;
  overflow-y:hidden;
  padding:8px 2px 18px;
  margin-bottom:0;
  align-items:stretch;
  min-height:392px;
}
#home .productRail.featuredRail .product{
  height:374px;
  min-height:374px;
}
#home .productRail.featuredRail .pimg{height:132px;flex:0 0 auto;}
#home .productRail.featuredRail h3{min-height:62px;}
#home .productRail.featuredRail p{min-height:54px;}
.railControls{display:flex!important;}
@media(max-width:680px){
  .railControls{margin-top:14px;}
  .featuredHead{display:flex!important;align-items:center!important;}
  .featuredHead h2{font-size:28px;}
  .railControls button{width:40px;height:40px;font-size:28px;}
  #home .productRail.featuredRail{min-height:384px;}
  #home .productRail.featuredRail .product{height:364px;min-height:364px;}
}


/* v50 · Ajustes finales: slide proveedores integrado y flechas centradas */
.railControls button{
  font-size:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  text-align:center!important;
  padding:0!important;
}
.railControls button::before{
  display:block;
  font-size:31px;
  line-height:1;
  font-weight:500;
  transform:translateY(-2px);
}
.railControls button:first-child::before{content:'‹';}
.railControls button:last-child::before{content:'›';}
@media(max-width:680px){
  .railControls button::before{font-size:28px;transform:translateY(-1px);}
}

/* =========================================================
   v51 · Mobile-first polish sin sacrificar diseño desktop
   Capa final de adaptación responsive, manteniendo la línea visual v50.
   ========================================================= */
:root{
  --safe-x: clamp(16px, 4vw, 24px);
}
html,body{max-width:100%;overflow-x:hidden;}
.logo,.logo img{cursor:pointer;}
.logo{transition:opacity .18s ease, transform .18s ease;}
.logo:hover{opacity:.88;transform:translateY(-1px);}
.mobileMenu a{cursor:pointer;}

/* Desktop: mantener el diseño aprobado */
@media (min-width:981px){
  .mobileToggle,.mobileMenu{display:none!important;}
  .menu,.actions{display:flex;}
  .heroCarousel{min-height:520px;}
  .heroCarousel .heroText{padding:86px 0 82px;}
  .heroCarousel h1{max-width:680px;}
  .proofGrid{grid-template-columns:repeat(4,1fr);}
  .brandStrip{grid-template-columns:repeat(5,1fr);}
  .channels{grid-template-columns:repeat(5,1fr);}
  .gridProducts{grid-template-columns:repeat(3,1fr);}
  .catalogLayout{grid-template-columns:280px minmax(0,1fr);}
  .footerGridEnhanced{grid-template-columns:1.35fr .85fr 1fr .75fr;}
}

/* Tablet horizontal / pantallas medianas */
@media (max-width:1180px) and (min-width:981px){
  .wrap,.nav,.companyHeroContent{max-width:1080px;}
  .menu{gap:18px;font-size:13px;}
  .actions .btn{padding:12px 15px;font-size:13px;}
  .heroCarousel{min-height:480px;}
  .heroCarousel h1{font-size:52px;}
  .brandStrip{grid-template-columns:repeat(4,1fr);}
  .channels{grid-template-columns:repeat(4,1fr);}
  .gridProducts{grid-template-columns:repeat(2,1fr);}
}

/* Tablet y mobile: adaptar sin cambiar identidad */
@media (max-width:980px){
  body{background:#fff;}
  .topbar{height:auto;min-height:38px;padding:8px var(--safe-x);gap:8px 16px;justify-content:center;flex-wrap:wrap;font-size:12px;line-height:1.35;}
  .topbar span{width:auto;display:inline-flex;align-items:center;justify-content:center;}
  header{position:sticky;top:0;}
  .nav{height:74px;padding:0 var(--safe-x);}
  .logo img{height:44px;}
  .menu,.actions{display:none!important;}
  .mobileToggle{display:flex!important;flex:0 0 auto;}
  .mobileMenu{padding:10px var(--safe-x) 20px;}
  .mobileMenu.open{display:block;}
  .mobileMenu a{font-size:15px;}
  .mobileMenuActions{display:grid;grid-template-columns:1fr 1fr;gap:10px;}

  .wrap{padding-left:var(--safe-x);padding-right:var(--safe-x);}
  .section{padding:56px 0;}
  .section.tight{padding:48px 0;}
  .head{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px;}
  .head h2{font-size:clamp(30px,5vw,38px);}

  /* Hero Home fotográfico */
  .heroCarousel{min-height:500px;padding:0;display:block;}
  .heroSlides,.heroSlide,.heroOverlay{position:absolute;inset:0;}
  .heroCarouselContent{min-height:500px;display:flex;align-items:flex-end;}
  .heroCarousel .heroText{padding:0 0 52px;max-width:640px;width:100%;}
  .heroCarousel h1{font-size:clamp(36px,7vw,56px);line-height:1.02;max-width:680px;}
  .heroCarousel .ctaCatalog{width:min(520px,100%);height:56px;}
  .heroDots{margin-top:18px;}

  .proofGrid{grid-template-columns:repeat(2,1fr);}
  .proofItem{border-bottom:1px solid var(--line);}
  .proofItem:nth-child(2n){border-right:0;}
  .proofItem:nth-last-child(-n+2){border-bottom:0;}

  .brandStrip{grid-template-columns:repeat(3,1fr);}
  .channels{grid-template-columns:repeat(3,1fr);}
  .homeCtaBand{grid-template-columns:1fr 1fr;}
  .blueBlock{border-radius:30px;padding:34px 24px;}
  .clientCarousel{overflow-x:auto;scroll-snap-type:x mandatory;}
  .clientLogo{animation:none!important;flex:0 0 190px;scroll-snap-align:start;}

  .featuredHead{display:flex!important;align-items:center!important;justify-content:space-between!important;}
  .featuredTabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px;scrollbar-width:none;}
  .featuredTabs::-webkit-scrollbar{display:none;}
  .featuredTab{white-space:nowrap;}
  #home .productRail.featuredRail{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;min-height:390px;}
  #home .productRail.featuredRail .product{flex:0 0 280px;scroll-snap-align:start;}

  .partnerHub{grid-template-columns:1fr!important;border-radius:30px;padding:34px 24px;}
  .industryTextGrid{grid-template-columns:repeat(3,1fr);}

  /* Catálogo */
  .catalogLayout{display:grid;grid-template-columns:1fr;gap:20px;}
  .filterPanel{position:relative!important;top:auto!important;border-radius:22px;padding:18px;}
  .filterBlock{margin-top:14px;padding-top:14px;}
  .filterOption{display:inline-flex;width:auto;margin:4px 6px 4px 0;align-items:center;}
  .catalogTopBar{gap:12px;}
  .gridProducts{grid-template-columns:repeat(2,minmax(0,1fr));}

  .detail,.productDetailEnhanced,.supplierBox,.supplierBoxWide,.jobs,.jobDetailLayout,.companyIntro,.facilityGrid,.partnerHub,.distributorGrid{grid-template-columns:1fr!important;}
  .productImagePanel,.productInfoPanel{min-width:0;}
  .productInfoPanel h2{font-size:clamp(30px,6vw,42px);}

  /* Heroes interiores */
  .companyHeroImage{min-height:410px;display:flex;align-items:center;}
  .companyHeroContent{padding:56px var(--safe-x);max-width:100%;}
  .companyHeroContent h1{font-size:clamp(38px,7vw,58px);line-height:1.03;}
  .companyHeroContent p{font-size:16px;max-width:760px;}
  .rrhhHero .companyHeroContent.rrhhHeroText{text-align:left!important;margin:0 auto!important;}
  .rrhhHero .companyHeroContent.rrhhHeroText .eyebrow,
  .rrhhHero .companyHeroContent.rrhhHeroText h1,
  .rrhhHero .companyHeroContent.rrhhHeroText p{margin-left:0!important;margin-right:auto!important;}
  .distributorHeroCompany .companyHeroImage:before{background:linear-gradient(90deg,rgba(0,62,114,.94),rgba(0,83,152,.58));}

  .brandHero{height:260px;}
  .brandHero.saif{height:300px;}
  .brandMock{height:190px;}
  .brandMock img{max-width:260px;max-height:100px;}
  .prodTitle{font-size:34px;margin:40px 0 24px;}

  .footerGrid,.footerGridEnhanced{grid-template-columns:1fr 1fr!important;gap:26px;}
}

/* Mobile */
@media (max-width:680px){
  :root{--safe-x:16px;}
  .topbar{display:grid;grid-template-columns:1fr;justify-items:center;padding:8px 12px;font-size:12px;}
  .topbar span{width:100%;}
  .nav{height:70px;}
  .logo img{height:38px;}
  .mobileToggle{width:42px;height:42px;border-radius:12px;}
  .mobileMenuActions{grid-template-columns:1fr;}

  .section{padding:46px 0;}
  .section.tight{padding:42px 0;}
  .head{display:block;margin-bottom:22px;}
  .head h2{font-size:29px;line-height:1.12;}
  .head p{margin-top:10px;}

  .heroCarousel{min-height:520px;}
  .heroCarouselContent{min-height:520px;align-items:flex-end;}
  .heroCarousel .heroText{padding-bottom:42px;}
  .heroCarousel h1{font-size:38px;letter-spacing:-.045em;}
  .eyebrow{font-size:11px;letter-spacing:.10em;}
  .heroCarousel .ctaCatalog{width:100%;height:54px;font-size:13px;letter-spacing:.08em;}
  .heroDots{justify-content:flex-start;}

  .proofGrid,.brandStrip,.channels,.homeCtaBand,.gridProducts,.contactCards,.footerGrid,.footerGridEnhanced,.industryTextGrid,.industryGrid,.allianceGrid{grid-template-columns:1fr!important;}
  .proofItem{border-right:0;border-bottom:1px solid var(--line)!important;padding:18px 4px;}
  .proofItem:last-child{border-bottom:0!important;}
  .brandCard{min-height:116px;}
  .brandCard img{max-width:155px;max-height:62px;}
  .channel{min-height:108px;padding:18px 12px;}
  .svgIcon{height:42px;}

  .homeCtaBand .cat{display:grid;grid-template-columns:54px 1fr;gap:14px;text-align:left;align-items:center;}
  .ctaIcon{width:54px;height:54px;}
  .blueBlock{border-radius:24px;padding:28px 18px;}
  .blueBlock h2{font-size:28px!important;}
  .clientLogo{height:78px;flex-basis:165px;}
  .clientLogo img{max-width:138px;max-height:48px;}

  .railControls button{width:40px!important;height:40px!important;}
  #home .productRail.featuredRail{min-height:382px;padding-bottom:14px;}
  #home .productRail.featuredRail .product{flex-basis:252px;height:360px;min-height:360px;}
  .featuredTabs{margin-bottom:16px;}

  .partnerHub{border-radius:24px;padding:28px 18px;}
  .industryText{min-height:64px;font-size:15px;}
  .manufacturerCard{padding:22px;}

  .catalogPage{padding-top:44px;}
  .catalogHead h2{text-align:left;font-size:32px;}
  .catalogControls{display:grid;grid-template-columns:1fr;gap:10px;}
  .activeFilters{gap:8px;}
  .filterPanel{padding:16px;border-radius:20px;}
  .filterOption{font-size:12px;padding:9px 10px;}
  .gridProducts{grid-template-columns:1fr!important;}
  .product{min-height:0;height:auto;}
  .product h3{font-size:17px;min-height:0;}
  .product p{min-height:0;}
  .pimg{height:142px;}
  .chip{font-size:11px;}

  .brandHero{height:210px;}
  .brandHero.saif{height:230px;}
  .brandMock{height:150px;border-radius:24px;}
  .brandMock img{max-width:200px;max-height:82px;}
  .prodTitle{text-align:left;font-size:30px;margin:34px 0 20px;}

  .companyHeroImage{min-height:360px;}
  .companyHeroContent{padding:42px var(--safe-x);}
  .companyHeroContent h1{font-size:38px;}
  .companyHeroContent p{font-size:15px;line-height:1.65;}
  .companyIntroText h2{font-size:30px;}
  .companyCard,.supplierPanel,.jobCard,.jobDetailBox{padding:20px;border-radius:22px;}
  .companyCardHeader{align-items:flex-start;}
  .companyIcon{width:58px;height:58px;}
  .facilityImg{height:220px;border-radius:22px;}

  .input,.select{height:46px;}
  .textarea,.bigText{min-height:160px!important;}
  .btn{width:100%;padding:13px 16px;}
  .footer{padding:38px 0;}
  .socialLinks{gap:9px;}
}

/* Mobile muy chico */
@media (max-width:420px){
  .heroCarousel h1{font-size:33px;}
  .heroCarousel{min-height:500px;}
  .heroCarouselContent{min-height:500px;}
  .logo img{height:35px;}
  .mobileToggle{width:40px;height:40px;}
  .head h2{font-size:27px;}
  .companyHeroContent h1{font-size:34px;}
  #home .productRail.featuredRail .product{flex-basis:235px;}
}

/* v52: marcas - mantener fondo blanco en hover para evitar imperfecciones en imágenes */
.brandCard:hover,
#home .brandCard:hover,
#marcas .brandCard:hover{
  background:#fff!important;
  box-shadow:none!important;
  transform:none!important;
  border-color:var(--celeste)!important;
}
.brandCard:hover img,
#home .brandCard:hover img,
#marcas .brandCard:hover img{
  transform:none!important;
  opacity:1!important;
}

/* v54 · product image routing by SKU PNG */
.productPhoto{
  background:#fff;
  border:1px solid #E6ECF2;
  overflow:hidden;
  position:relative;
}
.productPhoto img{
  max-width:88%;
  max-height:88%;
  object-fit:contain;
  display:block;
}
.productImgFallback{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
}
.productPhoto .productImgFallback{
  display:none;
}
.productPhoto.missing{
  background:linear-gradient(135deg,#F6F8FA,#FFFFFF);
}
.productPhoto.missing .productImgFallback{
  display:grid;
}
.productImgFallback svg{
  width:88px;
  height:88px;
  fill:none;
  stroke:#7B8A9C;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.62;
}
.detailPlaceholder.productPhoto img{
  max-width:92%;
  max-height:92%;
}
.detailPlaceholder .productImgFallback svg{
  width:130px;
  height:130px;
}

/* v55 · Product image fit fix
   Fuerza que las imágenes PNG se muestren completas dentro del marco,
   sin recortarse por tamaño natural ni por proporción vertical. */
.productPhoto,
.productPlaceholder{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:#fff!important;
}
.productPhoto img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:12px!important;
  box-sizing:border-box!important;
}
#home .productRail.featuredRail .productPhoto img,
.gridProducts .productPhoto img,
.productRail .productPhoto img{
  padding:14px!important;
}
.detailPlaceholder.productPhoto{
  min-height:330px!important;
  height:330px!important;
}
.detailPlaceholder.productPhoto img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:22px!important;
}
@media(max-width:680px){
  .productPhoto img{padding:10px!important;}
  .detailPlaceholder.productPhoto{min-height:270px!important;height:270px!important;}
  .detailPlaceholder.productPhoto img{padding:18px!important;}
}

/* v56 · Uso más activo del verde agua como color de acento */
:root{--aqua:#42B7C0;--aquaSoft:#EAF8FA;--aquaSoft2:#F2FAFC;}

/* Acentos generales */
.eyebrow{color:#b9eef2;}
.head h2::after{
  content:"";
  display:block;
  width:56px;
  height:4px;
  border-radius:999px;
  background:var(--aqua);
  margin-top:14px;
}
.section .head:not(.noAccent) p strong{color:var(--azul);}

/* Menú y navegación */
.menu a:after{background:var(--aqua)!important;height:3px;border-radius:999px;}
.menu a:hover,.menu a.active{color:var(--azulD)!important;}
.logo-link,.logo-link img,.logo{cursor:pointer;}
.logo-link:hover,.logo:hover{opacity:.9;transform:translateY(-1px);}

/* Botones: el azul sigue mandando, el aqua da vida */
.btn.primary:hover{background:linear-gradient(135deg,var(--azulD),var(--azul));box-shadow:0 16px 34px rgba(0,83,152,.24),0 0 0 4px rgba(66,183,192,.13);}
.btn.secondary:hover{border-color:var(--aqua);background:var(--aquaSoft2);color:var(--azulD);}
.ctaCatalog:before{background:linear-gradient(90deg,transparent,rgba(66,183,192,.42),transparent)!important;}

/* Fondos de continuidad con más presencia aqua, sin invadir */
.bandBlueSoft{background:linear-gradient(135deg,#EAF8FA 0%,#fff 62%,#F7FCFD 100%)!important;}
.bandWarm{background:linear-gradient(135deg,#fff 0%,#F7FAFC 48%,#EAF8FA 100%)!important;}
.homeFlow,.homeContinuous{background:linear-gradient(180deg,#fff 0%,#F7FAFC 28%,#EAF8FA 62%,#fff 100%);}

/* Marcas: hover blanco, pero con borde/acento aqua */
.brandCard:hover{background:#fff!important;border-color:var(--aqua)!important;box-shadow:0 0 0 4px rgba(66,183,192,.10)!important;}
.brandHoverMeta span{background:var(--aquaSoft)!important;border-color:rgba(66,183,192,.35)!important;}

/* Canales */
.channel:hover{border-color:var(--aqua)!important;box-shadow:0 14px 34px rgba(66,183,192,.14)!important;background:linear-gradient(180deg,#fff 0%,#F8FEFF 100%);}
.channel:hover .svgIcon{color:var(--aqua);}

/* Productos destacados y tarjetas de producto */
.product.clickable:hover,.product:hover{border-color:var(--aqua)!important;box-shadow:0 16px 36px rgba(66,183,192,.14)!important;}
.product.clickable:hover h3,.product:hover h3{color:var(--azulD)!important;}
.product .chip,.chip{background:var(--aquaSoft)!important;color:var(--azulD)!important;border:1px solid rgba(66,183,192,.24);}
.featuredTab:hover{border-color:var(--aqua)!important;background:var(--aquaSoft2)!important;}
.featuredTab.active{background:var(--aqua)!important;border-color:var(--aqua)!important;color:#fff!important;}
.railControls button{border-color:rgba(66,183,192,.42)!important;color:var(--azulD)!important;}
.railControls button:hover{background:var(--aqua)!important;border-color:var(--aqua)!important;color:#fff!important;}

/* Catálogo */
.catalogCount{background:var(--aquaSoft)!important;border-color:rgba(66,183,192,.55)!important;color:var(--azulD)!important;}
.filterOption:hover{border-color:var(--aqua)!important;background:var(--aquaSoft2)!important;}
.filterOption.active{background:var(--aqua)!important;border-color:var(--aqua)!important;color:#fff!important;box-shadow:0 8px 22px rgba(66,183,192,.18);}
.filterChip{border-color:rgba(66,183,192,.46)!important;background:var(--aquaSoft)!important;color:var(--azulD)!important;}
.filterChip b{background:#fff!important;color:var(--azulD)!important;}
.clearChips{background:var(--azulD)!important;border-color:var(--azulD)!important;color:#fff!important;}
.catalogSearch input:focus{border-color:var(--aqua)!important;box-shadow:0 0 0 4px rgba(66,183,192,.17)!important;}

/* Formularios */
.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--aqua)!important;box-shadow:0 0 0 4px rgba(66,183,192,.16);}
.supplierPanel label,.filterPanel label{color:var(--azulD);}

/* Bloques CTA */
.homeCtaBand .cat{border-color:rgba(66,183,192,.20);}
.homeCtaBand .cat:hover{background:linear-gradient(135deg,var(--azulD),var(--azul))!important;border-color:var(--azulD)!important;box-shadow:0 24px 50px rgba(0,62,114,.22),0 0 0 4px rgba(66,183,192,.10)!important;}
.homeCtaBand .cat:hover .ctaIcon{background:rgba(66,183,192,.18);color:#fff;}
.ctaIcon{background:var(--aquaSoft)!important;}

/* Footer y redes */
footer a:hover{color:var(--aqua)!important;}
.socialLink:hover{border-color:var(--aqua)!important;background:rgba(66,183,192,.10)!important;}

/* WhatsApp selector */
.waOption:hover{border-color:var(--aqua)!important;background:var(--aquaSoft2)!important;}
.waOption:hover::after{color:var(--aqua)!important;transform:translateX(3px);}

/* Página producto */
.productImagePanel:hover{border-color:var(--aqua);box-shadow:0 16px 38px rgba(66,183,192,.12);}


/* v57 · Asistente comercial + Wiki ASSON */
.assistantLauncher{position:fixed;right:22px;bottom:22px;z-index:95;border:0;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--blueDark));color:#fff;display:inline-flex;align-items:center;gap:10px;padding:14px 18px;font-weight:900;letter-spacing:.01em;box-shadow:0 18px 40px rgba(0,83,152,.28);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.assistantLauncher:hover{transform:translateY(-2px);box-shadow:0 24px 48px rgba(0,83,152,.34)}.assistantLauncherIcon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--aqua);color:var(--blueDark)}
.assistantOverlay{position:fixed;inset:0;background:rgba(0,35,70,.58);z-index:120;display:none;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(8px)}.assistantOverlay.active{display:flex}.assistantPanel{width:min(1120px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:30px;box-shadow:0 28px 80px rgba(0,30,70,.30);position:relative;border:1px solid rgba(255,255,255,.6)}.assistantClose{position:absolute;right:18px;top:18px;width:42px;height:42px;border:0;border-radius:50%;background:var(--soft);color:var(--blue);font-size:24px;font-weight:800;cursor:pointer}.assistantHeader{padding:34px 38px 20px;background:linear-gradient(135deg,#f6fbfd,#ffffff);border-radius:30px 30px 0 0}.assistantBadge{display:inline-flex;background:var(--aquaSoft);color:var(--blue);border:1px solid rgba(66,183,192,.32);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.assistantHeader h3{font-size:34px;line-height:1.1;margin:14px 0 8px;color:var(--blue)}.assistantHeader p{max-width:760px;margin:0;color:#647286;line-height:1.6}.assistantTabs{display:flex;gap:10px;padding:0 38px 20px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}.assistantTab{border:1px solid var(--line);background:#fff;color:var(--blue);padding:12px 16px;border-radius:999px;font-weight:900;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.assistantTab:hover{border-color:var(--aqua)}.assistantTab.active{background:var(--blue);color:#fff;border-color:var(--blue)}.assistantBody{padding:28px 38px 38px}.assistantMode{display:none}.assistantMode.active{display:block}.assistantGrid{display:grid;grid-template-columns:minmax(0,1.2fr) 360px;gap:24px}.assistantConversation,.assistantOutput,.wikiAnswerBox{border:1px solid var(--line);border-radius:24px;background:#fff;padding:22px;box-shadow:0 10px 28px rgba(0,83,152,.06)}.assistantStepHead{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.assistantStepHead h4,.assistantOutput h4,.wikiAnswerBox h4,.logsHeader h4{font-size:22px;margin:0 0 8px;color:var(--blue)}.assistantStepHead p,.assistantOutput p,.logsHeader p{margin:0;color:#657386;line-height:1.55}.stepPill{background:var(--aquaSoft);color:var(--blue);border-radius:999px;padding:8px 12px;font-weight:900;font-size:12px;white-space:nowrap}.choiceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choiceBtn{border:1px solid var(--line);background:#fff;border-radius:18px;padding:15px 16px;text-align:left;color:var(--text);font-weight:800;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.choiceBtn:hover,.choiceBtn.active{border-color:var(--aqua);background:var(--aquaSoft);transform:translateY(-1px)}.assistantFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.assistantField{display:flex;flex-direction:column;gap:7px}.assistantLabel{font-weight:900;color:var(--blue);font-size:13px}.assistantInput,.assistantTextarea,.assistantSelect{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 14px;font-family:inherit;font-size:15px;color:var(--text);outline:0;transition:border-color .18s ease,box-shadow .18s ease}.assistantInput:focus,.assistantTextarea:focus,.assistantSelect:focus{border-color:var(--aqua);box-shadow:0 0 0 4px rgba(66,183,192,.16)}.assistantActions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.leadPreview{margin-top:16px;border-radius:18px;background:var(--soft);padding:16px;color:#4f5d70;line-height:1.55}.leadPreview b{color:var(--blue)}.recommendationList{display:grid;gap:10px;margin:12px 0}.recommendationItem{background:var(--aquaSoft);border:1px solid rgba(66,183,192,.24);border-radius:16px;padding:12px 14px}.wikiGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.assistantSubmit{margin-top:14px}.wikiAnswer{line-height:1.65;color:#4f5d70}.mutedText{color:#728094}.logsHeader{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.logsList{display:grid;gap:12px}.logCard{border:1px solid var(--line);border-radius:18px;background:#fff;padding:16px}.logCardTop{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.logType{background:var(--aquaSoft);color:var(--blue);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.logDate{font-size:12px;color:#7a8798}.logCard p{margin:4px 0;color:#596779;line-height:1.55}.logCard strong{color:var(--blue)}
@media(max-width:900px){.assistantGrid,.wikiGrid{grid-template-columns:1fr}.assistantPanel{width:96vw}.assistantBody,.assistantHeader{padding-left:22px;padding-right:22px}.assistantTabs{padding-left:22px;padding-right:22px}.assistantLauncher span:last-child{display:none}.assistantLauncher{padding:14px}.choiceGrid,.assistantFormGrid{grid-template-columns:1fr}}
.assistantSuccess{background:#fff;border:1px solid rgba(66,183,192,.38);border-radius:22px;padding:22px;box-shadow:0 10px 28px rgba(18,38,63,.06)}
.assistantSuccess h4{margin:0 0 8px;color:var(--azul);font-size:24px}.assistantSuccess p{margin:0 0 16px;color:var(--mut);line-height:1.55}.filterChip.personalized{border-color:var(--celeste)!important;background:#eaf8fa!important;color:var(--azulD)!important}

/* v59 · Asistente ASSON más simple y orientado a producción */
.assistantLauncher{
  right:26px;
  bottom:26px;
  padding:13px 18px 13px 14px;
  min-width:208px;
  border:1px solid rgba(255,255,255,.35);
  background:linear-gradient(135deg,#005398 0%,#003E72 56%,#42B7C0 140%);
  color:#fff;
  box-shadow:0 22px 52px rgba(0,62,114,.36),0 0 0 6px rgba(66,183,192,.10);
}
.assistantLauncher:hover{transform:translateY(-3px);box-shadow:0 28px 68px rgba(0,62,114,.42),0 0 0 8px rgba(66,183,192,.16)}
.assistantLauncherIcon{width:42px;height:42px;background:#42B7C0;color:#fff;border-radius:16px;flex:0 0 auto}
.assistantLauncherIcon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.assistantLauncherText{display:flex;flex-direction:column;line-height:1.05;text-align:left;color:#fff}
.assistantLauncherText b{font-size:15px;color:#fff;letter-spacing:.01em}
.assistantLauncherText small{font-size:11px;font-weight:700;opacity:.86;margin-top:3px;color:#fff}
.assistantPanelSimple{width:min(760px,94vw);border-radius:32px;overflow:hidden}
.assistantSingleFlow{padding:38px;background:linear-gradient(135deg,#ffffff 0%,#f7fbfd 100%)}
.assistantWelcome{text-align:left;display:grid;gap:14px}.assistantWelcomeIcon{width:54px;height:54px;border-radius:20px;background:#EAF8FA;color:#005398;display:grid;place-items:center;font-size:25px;font-weight:900;border:1px solid rgba(66,183,192,.25)}
.assistantWelcome h3{font-size:34px;line-height:1.08;margin:0;color:#005398;letter-spacing:-.03em}.assistantWelcome p{margin:0 0 8px;color:#5c6b7e;line-height:1.55;font-size:17px}.assistantPathGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}.assistantPathCard{border:1px solid var(--line);background:#fff;border-radius:22px;padding:20px;text-align:left;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.assistantPathCard:hover{border-color:#42B7C0;transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,83,152,.10)}.assistantPathCard span{display:block;font-size:18px;font-weight:900;color:#005398;margin-bottom:8px}.assistantPathCard small{display:block;color:#657386;line-height:1.5;font-size:14px}.assistantStepHead h4{font-size:28px;letter-spacing:-.025em}.assistantStepHead p{font-size:16px}.choiceBtn{min-height:72px}.assistantActions .btn.primary{white-space:normal}.wikiAnswer{margin-top:16px;border:1px solid rgba(66,183,192,.28);background:#fff;border-radius:18px;padding:16px;min-height:72px}.assistantSuccess{padding:30px}.assistantSuccess h4{font-size:30px;color:#005398}.assistantSuccess p{font-size:16px;color:#5d6b7d}.assistantTabs,.assistantHeader,.assistantOutput{display:none!important}.assistantGrid,.wikiGrid{display:block!important}.assistantConversation,.wikiAnswerBox{box-shadow:none;border:0;padding:0;background:transparent}.assistantBody{padding:0}.assistantMode{display:block}.assistantMode:not(.active){display:block}
@media(max-width:700px){.assistantLauncher{right:18px;bottom:18px;min-width:auto;padding:12px}.assistantLauncherText{display:none}.assistantPanelSimple{width:94vw;max-height:88vh}.assistantSingleFlow{padding:26px 20px}.assistantPathGrid,.choiceGrid,.assistantFormGrid{grid-template-columns:1fr}.assistantWelcome h3{font-size:28px}.assistantStepHead{display:block}.stepPill{display:inline-flex;margin-top:12px}.assistantActions{flex-direction:column}.assistantActions .btn{width:100%;justify-content:center}}
/* v60 · Asistente ASSON pulido */
.quickQuestions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.quickQuestions button{border:1px solid rgba(66,183,192,.36);background:#fff;color:#005398;border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.quickQuestions button:hover{background:#EAF8FA;border-color:#42B7C0;transform:translateY(-1px)}
.assistantInfoNote{margin:14px 0 0;border-left:4px solid #42B7C0;background:#fff;border-radius:14px;padding:14px 16px;color:#526174;line-height:1.55;box-shadow:0 8px 22px rgba(0,83,152,.05)}
.choiceBtn span{display:block;line-height:1.35}
.assistantPathCard span,.choiceBtn span{pointer-events:none}
.assistantSingleFlow{min-height:420px}
.recommendationItem{font-weight:800;color:#005398;background:#fff;border:1px solid rgba(66,183,192,.35);box-shadow:0 6px 18px rgba(0,83,152,.045)}
.wikiAnswer{white-space:pre-wrap}

/* v61 · Asistente optimizado: pantalla inicial tipo link-tree, menos texto y más acción */
.assistantWelcomeCompact{
  gap:16px!important;
  max-width:860px;
}
.assistantWelcomeCompact .assistantWelcomeIcon{
  width:46px!important;
  height:46px!important;
  border-radius:16px!important;
  font-size:22px!important;
}
.assistantWelcomeCompact h3{
  font-size:32px!important;
  letter-spacing:-.035em!important;
  margin-top:4px!important;
}
.assistantWelcomeCompact p{
  font-size:18px!important;
  margin:0 0 10px!important;
  color:#5D6B7D!important;
}
.assistantLinkTree{
  display:grid;
  gap:10px;
  width:100%;
  margin-top:6px;
}
.assistantLinkBtn{
  width:100%;
  min-height:64px;
  border:1px solid #DDE7F0;
  background:#fff;
  border-radius:18px;
  padding:0 20px;
  display:grid;
  grid-template-columns:44px 1fr 28px;
  align-items:center;
  gap:12px;
  cursor:pointer;
  text-align:left;
  font-family:inherit;
  font-size:18px;
  font-weight:900;
  color:#005398;
  transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.assistantLinkBtn .linkIcon{
  width:38px;
  height:38px;
  border-radius:14px;
  background:#EAF8FA;
  color:#005398;
  display:grid;
  place-items:center;
  font-size:18px;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.assistantLinkBtn b{
  font-size:22px;
  justify-self:end;
  color:#42B7C0;
  transition:transform .2s ease,color .2s ease;
}
.assistantLinkBtn:hover,
.assistantLinkBtn:focus-visible{
  border-color:#42B7C0;
  background:linear-gradient(90deg,#F4FCFD 0%,#fff 74%);
  box-shadow:0 14px 34px rgba(0,83,152,.10);
  transform:translateY(-1px);
  outline:none;
}
.assistantLinkBtn:hover .linkIcon,
.assistantLinkBtn:focus-visible .linkIcon{
  background:#42B7C0;
  color:#fff;
  transform:scale(1.03);
}
.assistantLinkBtn:hover b,
.assistantLinkBtn:focus-visible b{
  color:#005398;
  transform:translateX(4px);
}
.assistantStepHead{
  margin-bottom:18px;
}
.assistantStepHead h4{
  font-size:26px!important;
}
.assistantStepHead p:empty{display:none;}
.assistantPathGrid{display:none!important;}
@media(max-width:700px){
  .assistantWelcomeCompact h3{font-size:27px!important;}
  .assistantWelcomeCompact p{font-size:16px!important;}
  .assistantLinkBtn{min-height:58px;font-size:16px;border-radius:16px;padding:0 14px;grid-template-columns:38px 1fr 24px;}
  .assistantLinkBtn .linkIcon{width:34px;height:34px;border-radius:12px;font-size:16px;}
}
/* v62 assistant refinements */
.assistantFormGrid .assistantField.full{grid-column:1 / -1;}
.assistantMiniSummary{display:flex;gap:10px;flex-wrap:wrap;margin:-2px 0 18px;}
.assistantMiniSummary span{display:inline-flex;align-items:center;border:1px solid rgba(66,183,192,.34);background:#EAF8FA;color:#005398;border-radius:999px;padding:8px 12px;font-weight:900;font-size:13px;}
.assistantWikiInput{height:52px;font-size:16px;}
.assistantWikiAnswer{min-height:190px;font-size:16px;line-height:1.72;display:block;}
.quickQuestions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;}
.quickQuestions button{border:1px solid var(--line);background:#fff;color:#005398;border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease;}
.quickQuestions button:hover{border-color:#42B7C0;background:#EAF8FA;transform:translateY(-1px);}
@media(max-width:700px){.assistantMiniSummary span{font-size:12px}.assistantWikiAnswer{min-height:160px}.quickQuestions{gap:6px}.quickQuestions button{font-size:13px;padding:8px 10px}}

/* v64 · Wiki pública profesional */
.wikiSearchPanel{border:1px solid rgba(66,183,192,.24);background:linear-gradient(135deg,#f7fcfd,#fff);border-radius:22px;padding:18px;margin-bottom:16px}
.wikiSearchRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.wikiSearchBtn{height:52px;align-self:end}
.assistantWikiAnswer{min-height:240px;background:#fff;border:1px solid rgba(66,183,192,.28);border-radius:22px;padding:20px;box-shadow:0 10px 26px rgba(0,83,152,.06)}
.wikiEmpty{color:#6a7788;line-height:1.6}
.wikiResult{display:block;color:#425064;line-height:1.65}
.wikiResultBadge{display:inline-flex;align-items:center;background:#EAF8FA;color:#005398;border:1px solid rgba(66,183,192,.32);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}
.wikiResult h5{font-size:24px;line-height:1.15;color:#005398;margin:0 0 12px;letter-spacing:-.02em}
.wikiResult p{margin:0 0 10px;color:#4d5b6d}
.wikiResultActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.wikiActionBtn{border:1px solid rgba(66,183,192,.42);background:#fff;color:#005398;border-radius:999px;padding:11px 14px;font-weight:900;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease,color .18s ease}
.wikiActionBtn:hover{background:#EAF8FA;border-color:#42B7C0;transform:translateY(-1px)}
.wikiActionBtn span{display:inline-block;transition:transform .18s ease}.wikiActionBtn:hover span{transform:translateX(3px)}
@media(max-width:720px){.wikiSearchRow{grid-template-columns:1fr}.wikiSearchBtn{width:100%;justify-content:center}.assistantWikiAnswer{min-height:210px}.wikiResult h5{font-size:21px}}

/* v66 assistant fixes */
.btn .arrow{display:none!important;}
.assistantActions .btn.back{gap:0;}
.assistantActions .btn.back::before{content:"←";font-weight:900;margin-right:10px;}
.assistantActions .btn.back::after{content:""!important;margin-left:0!important;}

/* v69 · Iconografía profesional monocromática para linktree del asistente */
.assistantWelcomeIcon svg,
.assistantLinkBtn .linkIcon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.85;
  stroke-linecap:round;
  stroke-linejoin:round;
  display:block;
}
.assistantWelcomeCompact .assistantWelcomeIcon{
  color:#005398!important;
  background:#EAF8FA!important;
}
.assistantLinkBtn .linkIcon{
  font-size:0!important;
  background:#F3FAFC!important;
  color:#005398!important;
  border:1px solid rgba(66,183,192,.22);
}
.assistantLinkBtn:hover .linkIcon,
.assistantLinkBtn:focus-visible .linkIcon{
  background:#42B7C0!important;
  color:#fff!important;
  border-color:#42B7C0!important;
}
.assistantLinkBtn b{
  font-family:Arial, sans-serif;
  line-height:1;
}


/* ============================================================
   v71 · Módulo de modernización estética
   - Scroll reveal + stagger
   - Métricas con contador
   - CTAs de color (distribuidor / vendedor)
   - Hero minimalista de catálogo + quick chips
   - Header glassmorphism mejorado
   - Hover expresivo en cards de producto
   - WhatsApp pulse
   - Diferenciación visual de canales prioritarios
   ============================================================ */

/* === Respetar reduced motion === */
@media (prefers-reduced-motion: reduce){
  .reveal,
  .reveal > .stagger > *,
  .stagger > *,
  .ctaBlock,
  .product.clickable,
  .whatsappBtn .waIcon,
  .quickChip{
    transition:none !important;
    animation:none !important;
    transform:none !important;
    opacity:1 !important;
  }
}

/* === Scroll reveal === */
.reveal{
  opacity:0;
  transform:translateY(28px);
  transition:opacity 700ms cubic-bezier(.16,.84,.44,1), transform 700ms cubic-bezier(.16,.84,.44,1);
  will-change:opacity, transform;
}
.reveal.isVisible{
  opacity:1;
  transform:translateY(0);
}
/* Stagger: cuando un container .stagger tiene padre revealed, sus hijos arrancan ocultos */
.stagger > *{
  opacity:0;
  transform:translateY(20px);
  transition:opacity 620ms cubic-bezier(.16,.84,.44,1), transform 620ms cubic-bezier(.16,.84,.44,1);
}
.stagger > *.isStaggered{
  opacity:1;
  transform:translateY(0);
}

/* === Header con scroll === */
header{
  background:rgba(255,255,255,.82) !important;
  transition:background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
header.isScrolled{
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 8px 30px rgba(0,83,152,.10);
  border-bottom-color:transparent;
}

/* === Métricas (reemplazo del bloque proof) === */
.metricsBand{
  background:linear-gradient(135deg, #003E72 0%, #005398 55%, #0a6aab 100%);
  color:#fff;
  padding:48px 0;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.metricsBand:before{
  content:"";
  position:absolute;
  right:-180px; top:-180px;
  width:480px; height:480px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(66,183,192,.22) 0%, transparent 70%);
  pointer-events:none;
}
.metricsBand:after{
  content:"";
  position:absolute;
  left:-120px; bottom:-180px;
  width:380px; height:380px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(66,183,192,.12) 0%, transparent 70%);
  pointer-events:none;
}
.metricsGrid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:24px;
  position:relative;
  z-index:1;
}
.metricItem{
  text-align:left;
  padding:8px 4px;
  border-left:3px solid rgba(66,183,192,.45);
  padding-left:18px;
}
.metricItem:first-child{ border-left-color:rgba(66,183,192,.85); }
.metricNumber{
  font-size:clamp(38px, 4.5vw, 56px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.04em;
  color:#fff;
  margin-bottom:6px;
  font-variant-numeric:tabular-nums;
}
.metricNumber.metricText{
  font-size:clamp(30px, 3.5vw, 44px);
  letter-spacing:-.03em;
}
.metricLabel{
  font-size:13px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
@media(max-width:980px){
  .metricsGrid{ grid-template-columns:repeat(2, 1fr); gap:28px 18px; }
}
@media(max-width:520px){
  .metricsGrid{ grid-template-columns:1fr 1fr; gap:22px 14px; }
  .metricItem{ padding-left:14px; }
}

/* === CTAs Distribuidor / Vendedor con color === */
.homeCtaBand{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.ctaBlock{
  position:relative;
  display:grid;
  grid-template-columns:88px 1fr;
  gap:24px;
  align-items:center;
  padding:34px 32px;
  border-radius:28px;
  color:#fff;
  cursor:pointer;
  overflow:hidden;
  transition:transform .28s cubic-bezier(.16,.84,.44,1), box-shadow .28s ease;
  isolation:isolate;
}
.ctaBlock:before{
  content:"";
  position:absolute;
  inset:0;
  background:inherit;
  z-index:-2;
}
.ctaBlock:after{
  content:"";
  position:absolute;
  right:-80px; top:-80px;
  width:280px; height:280px;
  border-radius:50%;
  background:rgba(255,255,255,.10);
  z-index:-1;
  transition:transform .5s ease;
}
.ctaBlock:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 50px rgba(0,62,114,.28);
}
.ctaBlock:hover:after{
  transform:scale(1.18);
}
.ctaBlockDistributor{
  background:linear-gradient(135deg, #003E72 0%, #005398 100%);
}
.ctaBlockSeller{
  background:linear-gradient(135deg, #005398 0%, #42B7C0 100%);
}
.ctaBlockIcon{
  width:88px;
  height:88px;
  border-radius:24px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
  display:grid;
  place-items:center;
  color:#fff;
}
.ctaBlockIcon svg{ width:48px; height:48px; }
.ctaBlockContent{ min-width:0; }
.ctaBlockEyebrow{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
  margin-bottom:8px;
}
.ctaBlockContent h3{
  margin:0 0 8px;
  font-size:26px;
  line-height:1.1;
  font-weight:900;
  letter-spacing:-.02em;
  color:#fff;
}
.ctaBlockContent p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.55;
  color:rgba(255,255,255,.84);
  max-width:430px;
}
.ctaBlockArrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#fff;
  border-bottom:2px solid rgba(255,255,255,.4);
  padding-bottom:3px;
  transition:border-color .25s ease, gap .25s ease;
}
.ctaBlockArrow svg{
  width:18px; height:18px;
  transition:transform .25s ease;
}
.ctaBlock:hover .ctaBlockArrow{
  border-bottom-color:#fff;
  gap:12px;
}
.ctaBlock:hover .ctaBlockArrow svg{ transform:translateX(4px); }
@media(max-width:980px){
  .homeCtaBand{ grid-template-columns:1fr; gap:16px; }
  .ctaBlock{ padding:28px 24px; gap:18px; grid-template-columns:72px 1fr; }
  .ctaBlockIcon{ width:72px; height:72px; border-radius:20px; }
  .ctaBlockIcon svg{ width:40px; height:40px; }
  .ctaBlockContent h3{ font-size:22px; }
}
@media(max-width:520px){
  .ctaBlock{ grid-template-columns:1fr; text-align:left; padding:24px 22px; }
  .ctaBlockIcon{ width:60px; height:60px; border-radius:18px; margin-bottom:4px; }
  .ctaBlockIcon svg{ width:34px; height:34px; }
  .ctaBlockContent h3{ font-size:20px; }
}

/* === Hero minimalista de catálogo === */
.catalogIntro{
  background:linear-gradient(135deg, #003E72 0%, #005398 60%, #1a76b8 100%);
  color:#fff;
  padding:54px 0 40px;
  position:relative;
  overflow:hidden;
}
.catalogIntro:before{
  content:"";
  position:absolute;
  right:-150px; top:-150px;
  width:420px; height:420px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(66,183,192,.25) 0%, transparent 70%);
  pointer-events:none;
}
.catalogIntroWrap{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:38px;
  align-items:end;
  position:relative;
  z-index:1;
}
.catalogIntroLeft .eyebrow{
  color:#bff4f6;
  margin-bottom:10px;
}
.catalogIntroLeft h1{
  font-size:clamp(34px, 4vw, 46px);
  line-height:1.05;
  letter-spacing:-.03em;
  margin:0 0 12px;
  max-width:540px;
}
.catalogIntroLeft p{
  font-size:16px;
  line-height:1.6;
  color:rgba(255,255,255,.82);
  margin:0;
  max-width:520px;
}
.catalogQuickChips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
  align-items:flex-end;
}
.quickChip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  border-radius:999px;
  padding:11px 18px;
  font-family:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  backdrop-filter:blur(6px);
  transition:background .22s ease, border-color .22s ease, transform .22s ease;
}
.quickChip:hover{
  background:#fff;
  color:var(--azul);
  border-color:#fff;
  transform:translateY(-2px);
}
.quickChipIcon{
  font-size:16px;
  line-height:1;
}
@media(max-width:980px){
  .catalogIntroWrap{ grid-template-columns:1fr; gap:24px; align-items:start; }
  .catalogQuickChips{ justify-content:flex-start; }
  .catalogIntro{ padding:44px 0 32px; }
}
@media(max-width:520px){
  .catalogIntro{ padding:36px 0 26px; }
  .catalogIntroLeft h1{ font-size:28px; }
  .catalogIntroLeft p{ font-size:14px; }
  .quickChip{ padding:9px 14px; font-size:13px; }
}

/* === Hover expresivo en cards de producto === */
.product.clickable{
  position:relative;
  transition:transform .28s cubic-bezier(.16,.84,.44,1), box-shadow .28s ease, border-color .28s ease;
}
.product.clickable:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 50px rgba(0,83,152,.18);
  border-color:#42B7C0;
}
.product.clickable:after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:3px;
  background:linear-gradient(90deg, var(--azul) 0%, var(--celeste) 100%);
  border-radius:0 0 22px 22px;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .35s cubic-bezier(.16,.84,.44,1);
}
.product.clickable:hover:after{ transform:scaleX(1); }
.product.clickable:hover .chip{
  background:var(--azul);
  color:#fff;
  transition:background .25s ease, color .25s ease;
}
.product .chip{ transition:background .25s ease, color .25s ease; }

/* === WhatsApp pulse === */
.whatsappBtn{
  position:relative;
}
.whatsappBtn .waIcon{
  position:relative;
  z-index:1;
}
.whatsappBtn:before{
  content:"";
  position:absolute;
  left:14px; top:50%;
  width:20px; height:20px;
  transform:translateY(-50%);
  border-radius:50%;
  background:rgba(37,211,102,.55);
  animation:waPulse 2.2s ease-out infinite;
  pointer-events:none;
  z-index:0;
}
@keyframes waPulse{
  0%   { transform:translateY(-50%) scale(.6); opacity:.85; }
  70%  { transform:translateY(-50%) scale(2.2); opacity:0; }
  100% { transform:translateY(-50%) scale(2.2); opacity:0; }
}
@media(max-width:980px){
  .whatsappBtn:before{ display:none; }
}

/* === Diferenciación visual de canales prioritarios === */
/* JS marca con .channelPriority los canales clave */
.channel.channelPriority{
  background:linear-gradient(135deg, #fff 0%, #EAF8FA 100%);
  border-color:#bcecf0;
}
.channel.channelPriority:before{
  content:"PRIORITARIO";
  position:absolute;
  top:8px; right:8px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  color:var(--azul);
  background:rgba(66,183,192,.20);
  padding:3px 7px;
  border-radius:999px;
}
.channel{ position:relative; }


/* === Bloque de propuesta de valor por marca (v71) === */
.brandValueProp{
  background:linear-gradient(135deg, #F5F9FC 0%, #EEF8FB 100%);
  padding:48px 0 38px;
  margin:34px 0 0;
  border-radius:28px;
  border:1px solid rgba(0,83,152,.07);
  position:relative;
  overflow:hidden;
}
.brandValueProp:before{
  content:"";
  position:absolute;
  right:-100px; top:-100px;
  width:280px; height:280px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(66,183,192,.10) 0%, transparent 70%);
}
.brandValuePropWrap{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:38px;
  align-items:start;
  position:relative;
  z-index:1;
  padding:0 32px;
}
.brandVpLeft .eyebrow{
  color:var(--azul2);
  margin-bottom:10px;
}
.brandVpLeft h2{
  color:var(--azul);
  font-size:clamp(26px, 3vw, 34px);
  line-height:1.12;
  letter-spacing:-.03em;
  margin:0 0 14px;
}
.brandVpDesc{
  font-size:16px;
  line-height:1.7;
  color:#3e4a5a;
  margin:0 0 20px;
}
.brandVpMeta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:999px;
  padding:8px 16px;
  box-shadow:0 6px 16px rgba(0,83,152,.06);
}
.brandVpLabel{
  font-size:11px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:var(--mut);
}
.brandVpValue{
  font-size:14px;
  font-weight:900;
  color:var(--azul);
}
.brandVpRight{
  display:grid;
  gap:14px;
}
.brandVpAttr{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:14px;
  align-items:start;
  padding:16px 18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 6px 18px rgba(0,83,152,.05);
}
.brandVpAttrIcon{
  width:48px; height:48px;
  display:grid; place-items:center;
  background:#EAF8FA;
  border-radius:14px;
  font-size:22px;
}
.brandVpAttr b{
  display:block;
  color:var(--azul);
  font-size:15px;
  margin-bottom:4px;
}
.brandVpAttr p{
  margin:0;
  font-size:14px;
  color:var(--mut);
  line-height:1.5;
}
@media(max-width:900px){
  .brandValuePropWrap{ grid-template-columns:1fr; gap:24px; padding:0 22px; }
  .brandValueProp{ padding:36px 0 28px; }
}

/* === Footer mejorado: cierre de marca con slogan === */
.footer{
  position:relative;
}
.footer:before{
  content:"";
  display:block;
  height:4px;
  background:linear-gradient(90deg, var(--azul) 0%, var(--celeste) 50%, var(--azul) 100%);
}
.footerSlogan{
  background:var(--azulD);
  padding:34px 0 18px;
  border-bottom:1px solid rgba(255,255,255,.08);
  margin-bottom:30px;
}
.footerSloganInner{
  max-width:1240px;
  margin:auto;
  padding:0 24px;
  display:flex;
  align-items:baseline;
  gap:18px;
  flex-wrap:wrap;
  justify-content:space-between;
}
.footerSloganText{
  font-size:clamp(22px, 2.4vw, 30px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.15;
  color:#fff;
  margin:0;
  max-width:780px;
}
.footerSloganText em{
  font-style:normal;
  background:linear-gradient(90deg, #bff4f6, #42B7C0);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.footerSloganWeb{
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
  color:rgba(255,255,255,.74);
  text-transform:uppercase;
}
@media(max-width:680px){
  .footerSlogan{ padding:26px 0 14px; margin-bottom:22px; }
  .footerSloganInner{ flex-direction:column; align-items:flex-start; gap:10px; }
}

/* V73 · Cómo comprar en ASSON */
.catalogIntroActions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.catalogBuyCta{box-shadow:0 14px 30px rgba(0,83,152,.18)}
.buyHero{background:linear-gradient(135deg,#003E72 0%,#005398 58%,#42B7C0 135%);color:white;padding:72px 0;position:relative;overflow:hidden}.buyHero:after{content:"";position:absolute;right:-120px;top:-160px;width:520px;height:520px;border-radius:50%;background:rgba(255,255,255,.08)}.buyHeroGrid{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center}.buyHero h1{font-size:58px;line-height:1.02;margin:10px 0 18px;letter-spacing:-1.8px}.buyHero p{font-size:20px;line-height:1.65;max-width:760px;color:#e7f5fa}.buyHeroActions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.buyHeroCard{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);border-radius:30px;padding:28px;backdrop-filter:blur(10px);box-shadow:0 24px 60px rgba(0,0,0,.16)}.buyHeroCard b{font-size:22px}.buyHeroCard ul{margin:18px 0 0;padding-left:20px;line-height:1.9;color:#edfaff}.buyProcessSection{background:linear-gradient(180deg,#ffffff,#f0fbfc)}.buyHead{align-items:flex-start}.buyHead p{max-width:720px;color:var(--mut);line-height:1.65;margin-top:10px}.buySteps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.buyStep{background:white;border:1px solid #dfeaf1;border-radius:24px;padding:26px;box-shadow:0 16px 34px rgba(0,83,152,.06)}.buyStep span{width:42px;height:42px;border-radius:14px;background:var(--aquaSoft);color:var(--azul);display:flex;align-items:center;justify-content:center;font-weight:900;margin-bottom:18px}.buyStep h3{margin:0 0 10px;color:var(--azul);font-size:20px}.buyStep p{margin:0;color:var(--mut);line-height:1.55}.buyAudienceSection{background:white}.buyAudienceGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.buyAudience{border:1px solid #dfeaf1;border-radius:24px;padding:24px;background:#fff}.buyAudience b{color:var(--azul);font-size:18px}.buyAudience p{color:var(--mut);line-height:1.55}.buyFormSection{background:linear-gradient(180deg,#f5f7fa,#ffffff)}.buyFormLayout{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}.buyFormIntro h2{color:var(--azul);font-size:42px;margin:10px 0 16px}.buyFormIntro p{color:var(--mut);line-height:1.75;font-size:18px}.buyNote{margin-top:22px;padding:18px 20px;border-left:4px solid var(--aqua);background:#effbfc;border-radius:16px;color:#415066;line-height:1.55}.buyFormPanel{border-top:5px solid var(--aqua)}.buyCategoryChecks{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:8px 0 14px}.buyCategoryChecks label{display:flex;gap:9px;align-items:center;background:#f5f7fa;border:1px solid #dfeaf1;border-radius:14px;padding:11px 12px;color:#425166;font-weight:700}.buyCategoryChecks input{accent-color:var(--aqua)}
@media(max-width:900px){.buyHeroGrid,.buyFormLayout{grid-template-columns:1fr}.buySteps,.buyAudienceGrid{grid-template-columns:repeat(2,1fr)}.buyHero h1{font-size:42px}}
@media(max-width:620px){.catalogIntroActions,.buyHeroActions{flex-direction:column}.catalogIntroActions .btn,.buyHeroActions .btn{width:100%;justify-content:center}.buySteps,.buyAudienceGrid,.buyCategoryChecks{grid-template-columns:1fr}.buyHero{padding:52px 0}.buyHero h1{font-size:36px}}

/* V74 · Cómo comprar simplificado */
.buyHeroCompact{padding:58px 0;background:linear-gradient(135deg,#003E72 0%,#005398 62%,#42B7C0 140%)}
.buyHeroSimple{max-width:1180px;position:relative;z-index:1}.buyHeroSimple h1{font-size:56px;line-height:1.03;margin:10px 0 16px;letter-spacing:-1.7px}.buyHeroSimple p{font-size:20px;line-height:1.55;max-width:690px;color:#e7f5fa;margin:0}.buyHeroSimple .buyHeroActions{margin-top:24px}.buyFastSection{padding:34px 0;background:linear-gradient(180deg,#ffffff,#f0fbfc)}.buyFastSteps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.buyFastStep{display:flex;align-items:center;gap:14px;background:white;border:1px solid #dfeaf1;border-radius:22px;padding:18px 20px;box-shadow:0 12px 28px rgba(0,83,152,.055)}.buyFastStep span{flex:0 0 auto;width:38px;height:38px;border-radius:13px;background:var(--aquaSoft);color:var(--azul);display:flex;align-items:center;justify-content:center;font-weight:900}.buyFastStep b{display:block;color:var(--azul);font-size:18px}.buyFastStep small{display:block;color:var(--mut);font-weight:700;margin-top:2px}.buyFormSectionSlim{padding:52px 0;background:linear-gradient(180deg,#f5f7fa,#ffffff)}.buyFormLayoutSlim{grid-template-columns:.72fr 1.28fr;gap:30px}.buyFormIntroSlim h2{font-size:38px;margin:8px 0 12px;color:var(--azul)}.buyFormIntroSlim p{font-size:17px;line-height:1.55;max-width:420px}.buyMiniBullets{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.buyMiniBullets span{background:#fff;border:1px solid #dbe8ef;border-radius:999px;padding:8px 12px;color:var(--azul);font-weight:800;font-size:13px}.buyFormPanelSlim{padding:28px;border-top:5px solid var(--aqua)}.formTwoCols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.compactChecks{grid-template-columns:repeat(3,1fr);gap:8px}.compactChecks label{padding:10px 11px}.compactTextarea{min-height:92px!important}.buySubmitBtn{width:100%;margin-top:18px}.buyFormFineprint{margin:14px 0 0;color:var(--mut);font-size:13px;line-height:1.45;text-align:center}
@media(max-width:900px){.buyFormLayoutSlim{grid-template-columns:1fr}.buyFastSteps{grid-template-columns:1fr}.buyHeroSimple h1{font-size:42px}.compactChecks{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.formTwoCols,.compactChecks{grid-template-columns:1fr}.buyHeroCompact{padding:46px 0}.buyHeroSimple h1{font-size:34px}.buyHeroSimple p{font-size:17px}.buyFastSection{padding:24px 0}.buyFormPanelSlim{padding:22px}}

/* V75 · Catálogo y compra simplificados */
.catalogIntroWrapClean{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.catalogIntroCta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:260px;
}
.catalogIntroCta .btn{
  min-width:230px;
  justify-content:center;
  padding:16px 26px;
}
.buyHeroCentered{
  max-width:980px;
}
.buyMinimalSection{
  background:linear-gradient(180deg,#ffffff,#f0fbfc);
  padding:54px 0;
}
.buyMinimalGrid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.buyMinimalCard{
  background:white;
  border:1px solid #dfeaf1;
  border-radius:24px;
  padding:24px;
  box-shadow:0 14px 34px rgba(0,83,152,.06);
}
.buyMinimalCard span{
  width:40px;
  height:40px;
  border-radius:14px;
  background:var(--aquaSoft);
  color:var(--azul);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  margin-bottom:16px;
}
.buyMinimalCard b{
  display:block;
  color:var(--azul);
  font-size:20px;
  margin-bottom:8px;
}
.buyMinimalCard p{
  margin:0;
  color:var(--mut);
  line-height:1.55;
}
@media(max-width:900px){
  .catalogIntroWrapClean{grid-template-columns:1fr;align-items:start;}
  .catalogIntroCta{justify-content:flex-start;min-width:0;}
  .buyMinimalGrid{grid-template-columns:1fr;}
}
@media(max-width:620px){
  .catalogIntroCta .btn{width:100%;}
}


/* v76 fixes: assistant overlay scroll + brand value spacing */
.assistantPanel.assistantPanelSimple{
  overflow:auto!important;
  max-height:92vh!important;
}
.assistantSingleFlow{
  min-height:auto!important;
}
.brandValueProp + .brandSubfilters{
  margin-top:34px!important;
}
.brandSubfilters{
  margin-bottom:28px!important;
}
@media(max-width:700px){
  .assistantPanel.assistantPanelSimple{max-height:90vh!important;}
  .brandValueProp + .brandSubfilters{margin-top:26px!important;}
}


/* V76 desarrollo completo · Ajustes finales producto/marca */
.productImagePanel.noHover,
.productImagePanel.noHover:hover{
  border-color:var(--line)!important;
  box-shadow:0 10px 28px rgba(0,83,152,.06)!important;
  transform:none!important;
  cursor:default!important;
}
.productImagePanel.noHover img{cursor:default!important;}
.productActions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 18px;}
.hiResDownload.hidden{display:none!important;}
.brandVpAttrIcon{
  display:grid!important;place-items:center!important;
  width:42px!important;height:42px!important;min-width:42px!important;
  border-radius:14px!important;background:#EAF8FA!important;color:#005398!important;
  border:1px solid rgba(66,183,192,.26)!important;
  font-size:0!important;
}
.brandVpAttrIcon svg{width:23px;height:23px;display:block;}
.brandSubfilters{margin-top:28px!important;margin-bottom:28px!important;}
.brandValueProp{margin-bottom:30px!important;}


/* V77 publicable sin formularios: se ocultan formularios no conectados a backend */
.publicNoForms .assistantLauncher{display:none!important;}
.publicNoForms .supplierForm,
.publicNoForms .distributorContact,
.publicNoForms .contactFormPanel,
.publicNoForms #rrhh .supplierPanel,
.publicNoForms .applicationPanel{display:none!important;}
.publicNoticePanel{border:1px solid rgba(66,183,192,.28);border-radius:24px;background:linear-gradient(180deg,#fff,#F4FCFD);padding:24px;box-shadow:0 14px 36px rgba(0,83,152,.08);color:#4f5d70;line-height:1.6;align-self:start;}
.publicNoticePanel h3{margin:0 0 10px;color:#005398;font-size:24px;}
.publicNoticePanel .publicActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
.publicNoticePanel a{text-decoration:none;}


/* v78 publicable: acciones reales sin formularios muertos */
.publicActionCard{margin-top:18px;border:1px solid rgba(66,183,192,.34);background:linear-gradient(135deg,#fff,#f0fbfc);border-radius:22px;padding:20px;display:grid;gap:12px}
.publicActionCard b{color:var(--azul);font-size:20px}.publicActionCard span{color:var(--mut);line-height:1.55}.publicActionCard .btn{width:100%}
.verticalActions{display:grid;gap:12px}.publicEmailPanel .btn{margin-top:10px}.publicNoForms .supplierForm input,.publicNoForms .supplierForm textarea,.publicNoForms .supplierForm select,.publicNoForms .supplierForm label,.publicNoForms .distributorContact input,.publicNoForms .distributorContact textarea,.publicNoForms .distributorContact label,.publicNoForms .contactFormPanel input,.publicNoForms .contactFormPanel textarea,.publicNoForms .contactFormPanel select,.publicNoForms .contactFormPanel label{display:none!important}
.publicNoForms .distributorContact,.publicNoForms .contactFormPanel,.publicNoForms .supplierForm{display:block!important}
.brandSubfilters{margin-top:30px!important;margin-bottom:28px!important}

/* === v79 PUBLICABLE FINAL · Canales informativos + validación visual === */
#home .channel,
#home .channel.channelClickable,
#home .channel.channelPriority{
  cursor:default!important;
  transform:none!important;
  box-shadow:0 10px 24px rgba(0,83,152,.06)!important;
  background:#fff!important;
  border-color:rgba(0,83,152,.08)!important;
}
#home .channel:hover,
#home .channel.channelClickable:hover,
#home .channel.channelPriority:hover{
  cursor:default!important;
  transform:none!important;
  box-shadow:0 10px 24px rgba(0,83,152,.06)!important;
  background:#fff!important;
  border-color:rgba(0,83,152,.08)!important;
}
#home .channel.channelPriority:before{display:none!important;content:none!important;}
#home .channel .svgIcon,
#home .channel:hover .svgIcon{
  color:var(--aqua)!important;
  stroke:var(--aqua)!important;
}
#home .channel h3{
  color:var(--azul)!important;
}
#home .channel p{display:none!important;}
.assistantRequired .assistantLabel:after{
  content:" *";
  color:#d64545;
  font-weight:900;
}
.assistantErrorMsg{
  display:block;
  margin-top:8px;
  color:#b42318;
  font-size:13px;
  font-weight:800;
}
.assistantField.hasError .assistantInput,
.assistantField.hasError .assistantTextarea,
.assistantField.hasError input,
.assistantField.hasError textarea{
  border-color:#d64545!important;
  box-shadow:0 0 0 4px rgba(214,69,69,.08)!important;
}
.assistantStepError{
  margin:12px 0 0;
  padding:12px 14px;
  border-radius:14px;
  background:#fff4f4;
  border:1px solid rgba(214,69,69,.22);
  color:#a32121;
  font-size:14px;
  font-weight:800;
}
