/* Inventiva Integral — UI-UX B1, encabezado y footer globales. */
:root{--inv-forest:#00461c;--inv-deep:#0b2f1b;--inv-lime:#c6f806;--inv-border:rgba(255,255,255,.2)}
.inv-sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.inv-header,.inv-footer{font-family:"Plus Jakarta Sans",Arial,sans-serif;box-sizing:border-box}
.inv-header *,.inv-footer *{box-sizing:border-box}
.inv-header{position:sticky!important;top:0;left:0;width:100%;z-index:9999;background:var(--inv-forest)!important;color:#fff;box-shadow:0 6px 24px rgba(0,40,19,.14)}
.inv-header__inner{max-width:1440px;min-height:84px;margin:auto;padding:10px clamp(18px,3vw,56px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.inv-brand{display:inline-flex;align-items:center;flex-shrink:0}
.inv-brand img{display:block;width:clamp(142px,13vw,171px);height:auto;max-height:55px;object-fit:contain}
.inv-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(4px,.7vw,13px);margin:0;min-width:0}
.inv-nav__link,.inv-nav__group>.inv-submenu-trigger{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 7px;white-space:nowrap;text-align:center;background:transparent;border:0;border-radius:8px;color:#fff!important;font-size:clamp(11px,.92vw,13px);font-weight:700;line-height:1.45;text-decoration:none;cursor:pointer}
.inv-nav__link:hover,.inv-nav__link:focus-visible,.inv-nav__group>.inv-submenu-trigger:hover{background:rgba(255,255,255,.13);color:var(--inv-lime)!important}
.inv-nav__product{background:var(--inv-lime)!important;color:var(--inv-deep)!important;padding:12px 13px;border-radius:28px}
.inv-nav__product:hover,.inv-nav__product:focus-visible{background:#e2ff76!important;color:var(--inv-deep)!important}
.inv-nav__contact{border:1px solid var(--inv-border);padding:11px 14px}
.inv-nav__group{position:relative;display:flex;align-items:center}
.inv-submenu-trigger{appearance:none}
.inv-nav__submenu{display:none;position:absolute;top:calc(100% - 3px);right:0;width:max-content;min-width:258px;max-width:min(92vw,350px);margin:0;padding:9px!important;list-style:none;border:1px solid #daebd5;border-radius:14px;background:#fff;box-shadow:0 12px 30px #002e1b2b;z-index:10000}
.inv-nav__submenu li{display:block!important;margin:0!important;padding:0!important;list-style:none!important}
.inv-nav__submenu a{display:block!important;padding:12px 14px!important;border-radius:8px;color:var(--inv-deep)!important;font:600 13px/1.4 "Plus Jakarta Sans",Arial,sans-serif!important;text-decoration:none!important;white-space:normal}
.inv-nav__submenu a:hover,.inv-nav__submenu a:focus-visible{background:#eaf6e6;color:var(--inv-forest)!important}
.inv-nav__group.is-open .inv-nav__submenu{display:block}
@media(min-width:1200px){.inv-nav__group:hover .inv-nav__submenu,.inv-nav__group:focus-within .inv-nav__submenu{display:block}}
.inv-menu-toggle{display:none;flex:0 0 46px;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:46px;height:46px;padding:8px;border:1px solid var(--inv-border);border-radius:9px;background:transparent;color:#fff;cursor:pointer}
.inv-menu-toggle>span:not(.inv-sr-only){display:block;width:23px;height:2px;border-radius:5px;background:#fff}
.inv-header :where(a,button):focus-visible,.inv-footer a:focus-visible{outline:3px solid var(--inv-lime);outline-offset:4px}
.inv-footer{background:linear-gradient(120deg,var(--inv-forest),var(--inv-deep));color:#fff;padding:0!important}
.inv-footer__inner{max-width:1250px;margin:auto;padding:55px 24px 40px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.75fr);gap:35px}
.inv-footer__brand img{display:block;width:170px;height:auto;object-fit:contain}
.inv-footer__brand p{margin:15px 0 0;color:#d4e6d5;font-size:14px;line-height:1.7}
.inv-footer__brand p span{display:block}
.inv-footer strong{display:block;color:var(--inv-lime);font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;margin-bottom:14px}
.inv-footer__contact,.inv-footer__social{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.inv-footer__contact a,.inv-footer__social a{color:#fff!important;line-height:1.6;font-size:14px;text-decoration:none}
.inv-footer a:hover{text-decoration:underline;color:var(--inv-lime)!important}
.inv-footer__contact span{font-size:12px;color:#c0d6c6}
.inv-footer__bottom{max-width:1250px;margin:auto;padding:18px 24px 25px;border-top:1px solid var(--inv-border);display:flex;align-items:center;gap:20px;flex-wrap:wrap;color:#d4e6d5;font-size:12px}
.inv-footer__bottom span{margin-right:auto}
.inv-footer__bottom a{color:#fff!important;text-decoration:none;font-size:12px}
@media(max-width:1199px){
.inv-header__inner{min-height:77px}
.inv-menu-toggle{display:flex}
.inv-nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100dvh - 77px);overflow-y:auto;overscroll-behavior:contain;background:var(--inv-forest);padding:12px clamp(18px,4vw,42px) 24px;box-shadow:0 16px 26px rgba(0,33,16,.25);flex-direction:column;align-items:stretch;gap:5px}
.inv-nav.is-open{display:flex}
.inv-nav__link,.inv-nav__group>.inv-submenu-trigger{font-size:15px;justify-content:flex-start;text-align:left;white-space:normal;width:100%;min-height:45px;padding:12px 15px}
.inv-nav__product{width:max-content;max-width:100%;min-height:45px}
.inv-nav__group{display:block;width:100%}
.inv-nav__group>.inv-submenu-trigger{justify-content:space-between}
.inv-nav__submenu{display:none;position:static;min-width:0;max-width:none;width:100%;margin:4px 0 10px;padding:7px!important;border:1px solid #438057;background:#f5fff2;box-shadow:none}
.inv-nav__group.is-open .inv-nav__submenu{display:block}
.inv-nav__submenu a{font-size:14px!important;min-height:44px;padding:12px 14px!important}
.inv-nav__contact{width:max-content;max-width:100%;padding:12px 15px}
}
@media(max-width:640px){.inv-footer__inner{grid-template-columns:1fr;gap:28px;padding:40px 20px 30px}.inv-footer__bottom{padding:18px 20px 28px;gap:10px 18px}.inv-footer__bottom span{width:100%}}
@media(prefers-reduced-motion:reduce){.inv-header *,.inv-footer *{transition:none!important;scroll-behavior:auto!important}}
