:root{
      --navy:#07152f;--navy2:#102b59;--blue:#1688ff;--blue2:#55b7ff;
      --ink:#0a1732;--muted:#66799b;--line:#d6e3f2;--ice:#edf4fd;--white:#fff;
      --gold:#e9c57e;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;font-synthesis:none}
    body.productsPage{margin:0;background:#fff;color:var(--ink);font-family:'Manrope',Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
    .wrap{width:min(calc(100% - 56px),1320px);margin-inline:auto}
    a{color:inherit}
    img{display:block;max-width:100%}
    .skip{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;color:#07152f;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:800}
    .skip:focus{top:12px}

    /* HEADER · mismo lenguaje de INDEX / EMPRESA / SERVICIOS */
    .header{position:fixed;inset:0 0 auto;z-index:100;padding-top:18px;background:transparent;pointer-events:none;transform:translate3d(0,0,0);opacity:1;transition:transform .42s cubic-bezier(.22,.61,.36,1),opacity .28s ease}
    .header .nav{pointer-events:auto;height:70px;padding:0 16px 0 20px;display:flex;align-items:center;gap:18px;border:1px solid rgba(255,255,255,.10);border-radius:26px;background:linear-gradient(135deg,rgba(13,28,39,.94),rgba(23,35,39,.90));box-shadow:0 18px 48px rgba(2,12,27,.20),inset 0 1px 0 rgba(255,255,255,.045);backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}
    .header.scrolled .nav{background:linear-gradient(135deg,rgba(8,23,42,.97),rgba(15,31,47,.96));border-color:rgba(255,255,255,.13);box-shadow:0 14px 42px rgba(1,10,24,.28),inset 0 1px 0 rgba(255,255,255,.05)}
    .header.header-hidden{transform:translate3d(0,calc(-100% - 28px),0)}
    .header.header-visible,.header.open{transform:translate3d(0,0,0)!important;opacity:1!important}
    .logo{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
    .logo img{width:102px;max-height:48px;object-fit:contain;background:#fff;border-radius:12px;padding:5px 8px}
    .links{margin-left:auto;display:flex;align-items:center;gap:24px}
    .links a{position:relative;color:rgba(255,255,255,.76);font-size:12px;font-weight:700;text-decoration:none;transition:color .22s ease}
    .links a:hover,.links a:focus-visible{color:#fff}
    .links a.active{color:#fff}
    .links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:1px;background:#63bdff}
    .menu{display:none;background:transparent;border:0;color:#fff;width:42px;height:42px;place-items:center;cursor:pointer}
    .menu span{display:block;width:25px;height:1px;background:#fff;margin:5px auto;transition:.25s ease}
    .lang{display:flex;gap:4px;padding:4px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.055)}
    .lang button{min-width:36px;height:34px;border:0;border-radius:999px;background:transparent;color:#b9c7d8;font:800 10px/1 'Manrope',sans-serif;cursor:pointer}
    .lang button.active{background:#fff;color:#0a1732}
    .navCta{min-height:44px;padding:0 20px;display:inline-flex;align-items:center;gap:14px;border-radius:999px;background:#fff;color:#0a1732;text-decoration:none;font-size:12px;font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.12)}
    .navCta:hover{background:linear-gradient(135deg,#1688ff,#55b7ff);color:#fff}

    /* HERO */
    .productsHero{position:relative;overflow:hidden;padding:168px 0 84px;background:
      radial-gradient(circle at 82% 20%,rgba(65,171,255,.20),transparent 26%),
      linear-gradient(135deg,#07152f 0%,#0b2247 56%,#102f61 100%);color:#fff}
    .productsHero::after{content:"";position:absolute;inset:0;opacity:.22;background-image:radial-gradient(circle,rgba(121,196,255,.34) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent,#000 40%,#000)}
    .productsHeroGrid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:64px;align-items:end}
    .eyebrow{display:block;color:#62beff;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
    .productsHero h1{max-width:11ch;margin:14px 0 18px;font-size:clamp(48px,5.3vw,78px);font-weight:800;line-height:.98;letter-spacing:-.05em}
    .productsHero h1 em{display:block;color:#55b7ff;font-style:normal}
    .productsHero p{max-width:620px;margin:0;color:#c9d8e9;font-size:16px;line-height:1.68}
    .heroCatalogPanel{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-self:end}
    .heroCatalogStat{min-height:132px;padding:22px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(255,255,255,.06);backdrop-filter:blur(12px);transition:.3s ease}
    .heroCatalogStat:hover{transform:translateY(-3px);border-color:rgba(99,189,255,.34);background:rgba(255,255,255,.09)}
    .heroCatalogStat small{display:block;color:#73c7ff;font-size:9px;font-weight:800;letter-spacing:.15em;margin-bottom:13px}
    .heroCatalogStat strong{display:block;font-size:26px;line-height:1.05;margin-bottom:7px}
    .heroCatalogStat span{display:block;color:#bbcee4;font-size:11px;line-height:1.45}

    /* TOOLBAR + CATÁLOGO */
    .catalogSection{padding:76px 0 100px;background:#f7faff}
    .catalogLead{display:grid;grid-template-columns:1fr .72fr;gap:54px;align-items:end;margin-bottom:30px}
    .catalogLead h2{margin:8px 0 0;font-size:clamp(38px,4.3vw,62px);font-weight:800;line-height:1.02;letter-spacing:-.045em}
    .catalogLead h2 em{color:#1688ff;font-style:normal}
    .catalogLead p{margin:0;color:#66799b;line-height:1.7;font-size:15px}
    .catalogToolbar{position:sticky;top:96px;z-index:20;display:flex;align-items:center;gap:14px;justify-content:space-between;margin-bottom:28px;padding:14px;border:1px solid #d8e4f2;border-radius:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);box-shadow:0 16px 42px rgba(24,68,120,.08)}
    .filters{display:flex;gap:8px;flex-wrap:wrap}
    .filter{min-height:40px;padding:0 15px;border:1px solid #d5e3f2;border-radius:999px;background:#f8fbff;color:#456383;font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;cursor:pointer;transition:.25s ease}
    .filter:hover,.filter.active{border-color:#1688ff;background:#1688ff;color:#fff;box-shadow:0 8px 18px rgba(22,136,255,.18)}
    .searchWrap{position:relative;flex:0 1 330px}
    .search{width:100%;height:44px;padding:0 44px 0 16px;border:1px solid #d5e3f2;border-radius:999px;background:#fff;color:#0a1732;font:600 12px/1 'Manrope',sans-serif;outline:none}
    .search:focus{border-color:#71bfff;box-shadow:0 0 0 4px rgba(22,136,255,.08)}
    .searchIcon{position:absolute;right:15px;top:50%;transform:translateY(-50%);width:18px;height:18px;stroke:#6b84a4;fill:none;stroke-width:2}

    .productGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
    .productCard{position:relative;overflow:hidden;border:1px solid #d7e4f3;border-radius:24px;background:#fff;box-shadow:0 14px 34px rgba(22,65,119,.06);outline:none;transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease}
    .productCard:hover,.productCard:focus-visible{transform:translateY(-6px);border-color:#b7d6f5;box-shadow:0 24px 54px rgba(19,79,151,.12)}
    .productCard[hidden]{display:none!important}
    .productMedia{position:relative;height:260px;overflow:hidden;background:#eaf2fb}
    .productMedia::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,18,38,.34) 100%);pointer-events:none}
    .productMedia img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .4s ease}
    .productCard:hover .productMedia img{transform:scale(1.045);filter:saturate(1.04)}
    .productNumber{position:absolute;z-index:2;top:14px;left:14px;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(6,20,47,.76);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:10px;font-weight:800;backdrop-filter:blur(10px)}
    .productCategory{position:absolute;z-index:2;left:14px;bottom:14px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:#0b6fe8;font-size:9px;font-weight:800;letter-spacing:.12em}
    .productBody{padding:20px}
    .productBody h3{min-height:2.2em;margin:0 0 14px;font-size:19px;font-weight:800;line-height:1.1;letter-spacing:-.025em}
    .productTags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}
    .productTags span{padding:7px 9px;border:1px solid #dbe7f5;border-radius:999px;background:#f8fbff;color:#4d6d92;font-size:9px;font-weight:700}
    .productLink{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#0a1732;text-decoration:none;font-size:11px;font-weight:800;padding-top:14px;border-top:1px solid #e2ebf5}
    .productLink b{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#edf6ff;color:#1688ff;transition:.25s ease}
    .productCard:hover .productLink b{background:#1688ff;color:#fff}
    .emptyState{display:none;margin-top:28px;padding:26px;text-align:center;border:1px dashed #bad3ee;border-radius:20px;color:#60799a;background:#fff}
    .emptyState.show{display:block}

    /* CTA */
    .productCta{position:relative;padding:88px 0;background:radial-gradient(circle at 84% 30%,rgba(50,151,255,.28),transparent 24%),linear-gradient(110deg,#103b73 0%,#0e2f5d 52%,#133d73 100%);color:#fff;overflow:hidden}
    .productCta::before{content:"";position:absolute;inset:0;opacity:.2;background-image:radial-gradient(circle,rgba(255,255,255,.24) 1px,transparent 1px);background-size:18px 18px;mask-image:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent)}
    .productCtaGrid{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
    .productCta h2{margin:8px 0 0;font-size:clamp(38px,4vw,60px);line-height:1.02;letter-spacing:-.045em}
    .productCta h2 em{color:#74c8ff;font-style:normal}
    .productCta .btn{min-height:56px;padding:0 26px;display:inline-flex;align-items:center;gap:12px;border-radius:999px;background:linear-gradient(180deg,#eecb86,#e1bd77);color:#0a1732;text-decoration:none;font-weight:800;font-size:12px;box-shadow:0 14px 34px rgba(2,16,40,.18)}

    /* FOOTER · igual a INDEX / EMPRESA / SERVICIOS */
    .footer{padding:64px 0 0;background:#06142f;color:#fff;border-top:1px solid rgba(255,255,255,.06)}
    .footerGrid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:48px;padding-bottom:36px}
    .footerLogo{width:145px;object-fit:contain;background:#fff;border-radius:10px;padding:5px 8px}
    .footerGrid p{max-width:340px;color:#9cb0d2;font-size:12px;line-height:1.65}
    .footerGrid h4{margin:0 0 14px;color:#fff;font-size:10px;letter-spacing:.13em;text-transform:uppercase}
    .footerGrid a{display:block;margin:10px 0;color:#9cb0d2;text-decoration:none;font-size:11px}
    .footerGrid a:hover{color:#fff}
    .footerClaimsRow{display:flex;justify-content:flex-start;padding:8px 0 24px}
    .footerClaimsCard{width:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 4px 0;color:#fff;text-decoration:none;transition:transform .22s ease,opacity .22s ease}
    .footerClaimsCard:hover{transform:translateY(-3px);opacity:.92}
    .footerClaimsCopy{order:1;text-align:center}
    .footerClaimsCopy strong{display:block;color:#59b7ff;font-size:14px;line-height:1.05}
    .footerClaimsCopy small{display:none}
    .footerClaimsIcon{order:2;width:112px;height:64px;display:grid;place-items:center;color:#dfe9f6;filter:drop-shadow(0 8px 10px rgba(0,0,0,.20))}
    .footerClaimsIcon svg{width:104px;height:60px;fill:rgba(255,255,255,.08);stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
    .footerBottom{display:flex;justify-content:space-between;gap:20px;padding:18px 0 24px;border-top:1px solid rgba(255,255,255,.09);color:#8399bc;font-size:9px}

    /* FLOATERS */
    .floaters{position:fixed;z-index:90;right:18px;bottom:18px;display:grid;gap:10px}
    .floater{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;box-shadow:0 12px 30px rgba(3,17,40,.20);transition:.22s ease}
    .floater svg{width:23px;height:23px;fill:#fff}
    .floater.fb{background:#1877f2}.floater.wa{background:#25d366}
    .floater:hover{transform:translateY(-3px) scale(1.04)}

    @media(max-width:1160px){
      .wrap{width:min(calc(100% - 32px),1320px)}
      .header{padding-top:14px}
      .header .nav{height:66px;border-radius:24px;padding:0 12px 0 14px}
      .menu{display:grid;order:2;margin-left:auto}
      .links{position:fixed;display:none;top:88px;left:16px;right:16px;margin:0;padding:22px;flex-direction:column;align-items:stretch;gap:4px;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:rgba(8,23,42,.98);box-shadow:0 18px 48px rgba(2,12,27,.28)}
      .header.open .links{display:flex}
      .links a{padding:13px 0}
      .navCta{display:none}
      .lang{order:3}
      .productsHeroGrid{grid-template-columns:1fr;gap:34px}
      .heroCatalogPanel{max-width:720px}
      .productGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
      .footerGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .footerGrid>div:first-child{grid-column:1/-1}
    }

    @media(max-width:760px){
      .wrap{width:min(calc(100% - 28px),1320px)}
      .header{padding-top:10px}
      .header .nav{height:62px;border-radius:21px;padding:0 9px 0 11px;gap:8px}
      .header .logo img{width:78px;max-height:42px;border-radius:10px;padding:4px 6px}
      .header.open .links{top:80px;left:10px;right:10px;border-radius:20px}
      .lang{transform:scale(.94);transform-origin:right center}
      .productsHero{padding:126px 0 58px}
      .productsHero h1{font-size:clamp(34px,9.8vw,46px);max-width:12ch}
      .productsHero p{font-size:14px;line-height:1.55}
      .heroCatalogPanel{grid-template-columns:1fr 1fr;gap:9px}
      .heroCatalogStat{min-height:112px;padding:16px}
      .heroCatalogStat strong{font-size:21px}
      .catalogSection{padding:58px 0 72px}
      .catalogLead{grid-template-columns:1fr;gap:14px;margin-bottom:22px}
      .catalogLead h2{font-size:clamp(31px,9vw,40px)}
      .catalogLead p{font-size:13px;line-height:1.55}
      .catalogToolbar{position:relative;top:auto;display:grid;gap:12px;margin-bottom:20px;padding:12px;border-radius:18px}
      .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
      .filter{width:100%;padding-inline:9px;font-size:10px}
      .searchWrap{width:100%;max-width:none}
      .productGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
      .productMedia{height:190px}
      .productBody{padding:15px}
      .productBody h3{font-size:16px;min-height:2.15em}
      .productTags{gap:5px;margin-bottom:14px}
      .productTags span{padding:6px 7px;font-size:8px}
      .productLink{font-size:9.5px}
      .productCta{padding:66px 0}
      .productCtaGrid{grid-template-columns:1fr;gap:24px}
      .productCta h2{font-size:clamp(30px,9vw,40px)}
      .productCta .btn{justify-self:start;min-height:50px;padding:0 21px;font-size:11px}
      .footer{padding-top:52px}
      .footerGrid{grid-template-columns:1fr;gap:28px}
      .footerGrid>div:first-child{grid-column:auto}
      .footerClaimsRow{justify-content:center;padding-top:10px;padding-bottom:22px}
      .footerClaimsCard{width:176px}
      .footerClaimsCopy strong{font-size:13px}
      .footerClaimsIcon{width:102px;height:58px}
      .footerClaimsIcon svg{width:94px;height:54px}
      .footerBottom{flex-direction:column;align-items:center;text-align:center}
      .floaters{right:12px;bottom:14px;gap:8px}
      .floater{width:48px;height:48px}
    }

    @media(max-width:430px){
      .header .nav{width:calc(100% - 14px);height:60px;border-radius:19px;padding-left:9px;padding-right:7px}
      .header .logo img{width:68px}
      .menu{width:38px;height:38px}
      .lang{transform:scale(.88)}
      .heroCatalogPanel{grid-template-columns:1fr 1fr}
      .heroCatalogStat{padding:14px;min-height:100px}
      .heroCatalogStat strong{font-size:18px}
      .heroCatalogStat span{font-size:10px}
      .productGrid{grid-template-columns:1fr}
      .productMedia{height:250px}
    }

    @media(prefers-reduced-motion:reduce){
      *,*::before,*::after{scroll-behavior:auto!important;transition:none!important}
    }

/* =========================================================
       HEADER PRODUCTOS · IDÉNTICO A INDEX / EMPRESA / SERVICIOS
       ========================================================= */
    .productsPage .header{
      inset:0 0 auto 0;
      padding-top:18px;
      background:transparent !important;
      border-bottom:0 !important;
      box-shadow:none !important;
      backdrop-filter:none !important;
      -webkit-backdrop-filter:none !important;
      pointer-events:none;
      transform:translate3d(0,0,0);
      opacity:1;
      transition:transform .42s cubic-bezier(.22,.61,.36,1),opacity .28s ease;
      will-change:transform;
    }

    .productsPage .header .nav{
      pointer-events:auto;
      width:min(calc(100% - 56px),1320px);
      height:70px;
      padding:0 16px 0 20px;
      border:1px solid rgba(255,255,255,.10);
      border-radius:26px;
      background:linear-gradient(135deg,rgba(13,28,39,.94),rgba(23,35,39,.90));
      box-shadow:0 18px 48px rgba(2,12,27,.20),inset 0 1px 0 rgba(255,255,255,.045);
      backdrop-filter:blur(18px) saturate(1.08);
      -webkit-backdrop-filter:blur(18px) saturate(1.08);
    }

    .productsPage .header.scrolled .nav{
      background:linear-gradient(135deg,rgba(8,23,42,.97),rgba(15,31,47,.96));
      border-color:rgba(255,255,255,.13);
      box-shadow:0 14px 42px rgba(1,10,24,.28),inset 0 1px 0 rgba(255,255,255,.05);
    }

    .productsPage .header .logo{
      flex:0 0 auto;
    }

    .productsPage .header .logo img{
      width:102px;
      max-height:48px;
      object-fit:contain;
      background:#fff;
      border-radius:12px;
      padding:5px 8px;
      box-shadow:none;
    }

    /* En INDEX / EMPRESA / SERVICIOS este texto existe pero NO se muestra. */
    .productsPage .header .logoText{
      display:none !important;
    }

    .productsPage .header .links{
      gap:24px;
    }

    .productsPage .header .links a{
      color:rgba(255,255,255,.76);
      font-size:12px;
      font-weight:700;
      transition:color .22s ease;
    }

    .productsPage .header .links a:hover,
    .productsPage .header .links a:focus-visible{
      color:#fff;
    }

    .productsPage .header .links a::after{
      bottom:-10px;
      height:1px;
      background:#63bdff;
    }

    .productsPage .header .lang{
      border-color:rgba(255,255,255,.16);
      background:rgba(255,255,255,.055);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
    }

    .productsPage .header .navCta{
      min-height:44px;
      padding:0 20px;
      border:0;
      border-radius:999px;
      background:#fff;
      color:#0a1732;
      box-shadow:0 8px 22px rgba(0,0,0,.12);
    }

    .productsPage .header .navCta:hover,
    .productsPage .header .navCta:focus-visible{
      background:linear-gradient(135deg,#1688ff,#55b7ff);
      color:#fff;
      transform:translateY(-1px);
    }

    .productsPage .header.header-hidden{
      transform:translate3d(0,calc(-100% - 26px),0);
      opacity:.98;
    }

    .productsPage .header.header-visible,
    .productsPage .header.open{
      transform:translate3d(0,0,0) !important;
      opacity:1 !important;
    }

    @media(max-width:1160px){
      .productsPage .header{padding-top:14px}

      .productsPage .header .nav{
        width:min(calc(100% - 32px),1320px);
        height:66px;
        border-radius:24px;
        padding:0 12px 0 14px;
      }

      .productsPage .header.open .links{
        top:88px !important;
        left:16px !important;
        right:16px !important;
        padding:22px !important;
        border:1px solid rgba(255,255,255,.10) !important;
        border-radius:22px !important;
        background:rgba(8,23,42,.98) !important;
        box-shadow:0 18px 48px rgba(2,12,27,.28);
        backdrop-filter:blur(18px);
        -webkit-backdrop-filter:blur(18px);
      }
    }

    @media(max-width:760px){
      .productsPage .header{padding-top:10px}

      .productsPage .header .nav{
        width:calc(100% - 20px);
        height:62px;
        border-radius:21px;
        padding:0 9px 0 11px;
        gap:8px;
      }

      .productsPage .header .logo img{
        width:78px;
        max-height:42px;
        border-radius:10px;
        padding:4px 6px;
      }

      .productsPage .header .menu{
        order:2;
        margin-left:auto;
      }

      .productsPage .header .lang{
        order:3;
        margin-left:0;
        transform:scale(.94);
        transform-origin:right center;
      }

      .productsPage .header.open .links{
        top:80px !important;
        left:10px !important;
        right:10px !important;
        border-radius:20px !important;
      }
    }

    @media(max-width:430px){
      .productsPage .header .nav{
        width:calc(100% - 14px);
        height:60px;
        border-radius:19px;
        padding-left:9px;
        padding-right:7px;
      }

      .productsPage .header .logo img{
        width:68px;
      }

      .productsPage .header .menu{
        width:38px;
        height:38px;
      }

      .productsPage .header .lang{
        transform:scale(.88);
      }
    }

/* LOGO · medidas y acabado copiados de SERVICIOS */
    .productsPage .logo img,
    .productsPage .footerLogo{
      object-fit:contain;
      background:#fff;
      border-radius:10px;
      padding:5px 8px;
      box-shadow:0 6px 20px rgba(7,19,43,.10);
    }

    .productsPage .logo img{width:118px}
    .productsPage .footerLogo{width:145px}

    .productsPage .header .logo{flex:0 0 auto}

    .productsPage .header .logo img{
      width:102px;
      max-height:48px;
      object-fit:contain;
      background:#fff;
      border-radius:10px;
      padding:5px 8px;
      box-shadow:none;
    }

    .productsPage .header .logoText{
      display:none !important;
    }

    @media(max-width:760px){
      .productsPage .header .logo img{
        width:78px;
        max-height:42px;
        border-radius:10px;
        padding:4px 6px;
      }
    }

    @media(max-width:430px){
      .productsPage .header .logo img{
        width:68px;
      }
    }

/* =========================================================
       PRODUCTOS · HERO VIDEO PREMIUM
       Vídeo protagonista + mensajes comerciales permanentes
       ========================================================= */

    .productsPage .productsHero{
      position:relative;
      min-height:760px;
      padding:0 !important;
      display:flex;
      align-items:center;
      overflow:hidden;
      isolation:isolate;
      background:#07152f !important;
      color:#fff;
    }

    .productsPage .productsHero::after{
      display:none !important;
    }

    .productsPage .productsHeroMedia{
      position:absolute;
      inset:0;
      z-index:0;
      overflow:hidden;
      background:#07152f;
    }

    .productsPage .productsHeroVideo{
      width:100%;
      height:100%;
      display:block;
      object-fit:cover;
      object-position:center 46%;
      filter:saturate(.98) contrast(1.03) brightness(.92);
      transform:scale(1.015);
      will-change:transform;
    }

    .productsPage .productsHeroShade{
      position:absolute;
      inset:0;
      z-index:1;
      pointer-events:none;
      background:
        linear-gradient(90deg,
          rgba(4,16,37,.91) 0%,
          rgba(5,21,45,.80) 31%,
          rgba(6,25,52,.46) 55%,
          rgba(5,20,43,.28) 73%,
          rgba(4,16,37,.48) 100%),
        linear-gradient(180deg,
          rgba(4,16,37,.16) 0%,
          rgba(4,16,37,.06) 42%,
          rgba(4,16,37,.52) 100%);
    }

    .productsPage .productsHeroGrid{
      position:relative;
      z-index:2;
      width:min(calc(100% - 56px),1320px);
      min-height:760px;
      display:grid;
      grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);
      gap:72px;
      align-items:center;
      padding-top:118px;
      padding-bottom:64px;
    }

    .productsPage .productsHeroCopy{
      max-width:720px;
    }

    .productsPage .productsHero .eyebrow{
      color:#6dc5ff;
      text-shadow:0 4px 18px rgba(0,0,0,.28);
    }

    .productsPage .productsHero h1{
      max-width:10.6ch;
      margin:14px 0 20px;
      font-size:clamp(48px,5.15vw,76px);
      font-family:'Manrope',Arial,sans-serif;
      font-weight:800;
      line-height:.98;
      letter-spacing:-.05em;
      text-shadow:0 14px 40px rgba(0,0,0,.26);
    }

    .productsPage .productsHero h1 em{
      display:block;
      color:#55b7ff;
      font-style:normal;
      font-weight:800;
    }

    .productsPage .productsHero p{
      max-width:610px;
      margin:0;
      color:rgba(255,255,255,.86);
      font-size:15.5px;
      line-height:1.65;
      text-shadow:0 4px 18px rgba(0,0,0,.24);
    }

    .productsPage .heroCatalogPanel{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
      align-self:center;
    }

    .productsPage .heroCatalogStat{
      position:relative;
      isolation:isolate;
      min-height:154px;
      padding:22px 22px 20px;
      overflow:hidden;
      border:1px solid rgba(255,255,255,.18);
      border-radius:22px;
      background:linear-gradient(145deg,rgba(10,35,67,.72),rgba(19,55,96,.48));
      box-shadow:0 20px 52px rgba(0,0,0,.14);
      backdrop-filter:blur(14px) saturate(1.06);
      -webkit-backdrop-filter:blur(14px) saturate(1.06);
      outline:none;
      transition:
        transform .32s ease,
        border-color .32s ease,
        background .32s ease,
        box-shadow .32s ease;
    }

    .productsPage .heroCatalogStat::before{
      content:"";
      position:absolute;
      inset:0;
      z-index:-1;
      opacity:0;
      background:
        radial-gradient(circle at 16% 10%,rgba(90,190,255,.24),transparent 47%),
        linear-gradient(145deg,rgba(28,111,194,.44),rgba(12,46,88,.40));
      transition:opacity .32s ease;
    }

    .productsPage .heroCatalogStat::after{
      content:"";
      position:absolute;
      left:0;
      top:0;
      bottom:0;
      width:3px;
      background:linear-gradient(180deg,#62c5ff,#1688ff);
      transform:scaleY(0);
      transform-origin:top;
      transition:transform .32s ease;
    }

    .productsPage .heroCatalogStat small{
      display:block;
      margin-bottom:13px;
      color:#78ceff;
      font-size:9px;
      font-weight:800;
      letter-spacing:.15em;
      text-transform:uppercase;
    }

    .productsPage .heroCatalogStat strong{
      display:block;
      margin-bottom:8px;
      color:#fff;
      font-size:21px;
      font-weight:800;
      line-height:1.13;
      letter-spacing:-.025em;
    }

    .productsPage .heroCatalogStat span{
      display:block;
      color:#c7d8e9;
      font-size:10.5px;
      line-height:1.52;
    }

    .productsPage .heroCatalogStat.is-active{
      transform:translateY(-5px);
      border-color:rgba(105,199,255,.58);
      background:linear-gradient(145deg,rgba(15,57,106,.80),rgba(16,55,99,.62));
      box-shadow:0 26px 58px rgba(0,0,0,.20),0 0 0 1px rgba(66,170,255,.08);
    }

    .productsPage .heroCatalogStat.is-active::before{opacity:1}
    .productsPage .heroCatalogStat.is-active::after{transform:scaleY(1)}

    .productsPage .heroCatalogStat:focus-visible{
      outline:2px solid rgba(112,199,255,.72);
      outline-offset:3px;
    }

    @media(max-width:1160px){
      .productsPage .productsHeroGrid{
        width:min(calc(100% - 32px),1320px);
        grid-template-columns:1fr;
        gap:30px;
        padding-top:120px;
        padding-bottom:58px;
      }

      .productsPage .heroCatalogPanel{
        max-width:760px;
      }

      .productsPage .productsHeroVideo{
        object-position:58% center;
      }

      .productsPage .productsHeroShade{
        background:
          linear-gradient(90deg,rgba(4,16,37,.90) 0%,rgba(4,16,37,.68) 45%,rgba(4,16,37,.28) 100%),
          linear-gradient(180deg,rgba(4,16,37,.08) 0%,rgba(4,16,37,.30) 55%,rgba(4,16,37,.82) 100%);
      }
    }

    @media(max-width:760px){
      .productsPage .productsHero{
        min-height:100svh;
      }

      .productsPage .productsHeroGrid{
        width:min(calc(100% - 28px),1320px);
        min-height:100svh;
        display:flex;
        flex-direction:column;
        justify-content:flex-end;
        align-items:stretch;
        gap:18px;
        padding-top:105px;
        padding-bottom:30px;
      }

      .productsPage .productsHeroCopy{
        max-width:100%;
      }

      .productsPage .productsHero h1{
        max-width:11.5ch;
        margin:10px 0 13px;
        font-size:clamp(34px,9.6vw,44px);
        line-height:.98;
      }

      .productsPage .productsHero p{
        max-width:31ch;
        font-size:13.5px;
        line-height:1.52;
      }

      .productsPage .heroCatalogPanel{
        max-width:none;
        grid-template-columns:1fr 1fr;
        gap:8px;
      }

      .productsPage .heroCatalogStat{
        min-height:118px;
        padding:14px 13px 13px;
        border-radius:17px;
        background:linear-gradient(145deg,rgba(7,28,58,.78),rgba(12,43,78,.68));
        backdrop-filter:blur(11px);
        -webkit-backdrop-filter:blur(11px);
      }

      .productsPage .heroCatalogStat small{
        margin-bottom:8px;
        font-size:7.7px;
        letter-spacing:.12em;
      }

      .productsPage .heroCatalogStat strong{
        margin-bottom:5px;
        font-size:14px;
        line-height:1.12;
      }

      .productsPage .heroCatalogStat span{
        font-size:8.5px;
        line-height:1.4;
      }

      .productsPage .productsHeroVideo{
        object-position:53% center;
        transform:scale(1.06);
        filter:saturate(.98) contrast(1.02) brightness(.96);
      }

      .productsPage .productsHeroShade{
        background:
          linear-gradient(180deg,
            rgba(4,16,37,.10) 0%,
            rgba(4,16,37,.10) 26%,
            rgba(4,16,37,.32) 48%,
            rgba(4,16,37,.82) 72%,
            rgba(4,16,37,.98) 100%),
          linear-gradient(90deg,
            rgba(4,16,37,.22) 0%,
            rgba(4,16,37,.06) 65%,
            rgba(4,16,37,.06) 100%);
      }
    }

    @media(max-width:430px){
      .productsPage .productsHeroGrid{
        width:calc(100% - 24px);
        padding-top:96px;
        padding-bottom:22px;
      }

      .productsPage .productsHero h1{
        font-size:clamp(31px,9.2vw,38px);
      }

      .productsPage .productsHero p{
        font-size:12.5px;
      }

      .productsPage .heroCatalogStat{
        min-height:110px;
        padding:12px;
      }

      .productsPage .heroCatalogStat strong{
        font-size:13px;
      }

      .productsPage .heroCatalogStat span{
        font-size:8px;
      }

      .productsPage .productsHeroVideo{
        object-position:51% center;
        transform:scale(1.08);
      }
    }

    @media(prefers-reduced-motion:reduce){
      .productsPage .heroCatalogStat,
      .productsPage .heroCatalogStat::before,
      .productsPage .heroCatalogStat::after{
        transition:none !important;
      }
    }

/* HERO PRODUCTOS · categorías más transparentes para mostrar mejor el video */
    .productsPage .heroCatalogStat{
      background:linear-gradient(
        145deg,
        rgba(7,28,58,.43),
        rgba(12,45,82,.30)
      ) !important;
      border-color:rgba(255,255,255,.20) !important;
      box-shadow:0 18px 46px rgba(0,0,0,.11) !important;
      backdrop-filter:blur(8px) saturate(1.04) !important;
      -webkit-backdrop-filter:blur(8px) saturate(1.04) !important;
    }

    .productsPage .heroCatalogStat::before{
      background:
        radial-gradient(circle at 16% 10%,rgba(90,190,255,.18),transparent 48%),
        linear-gradient(145deg,rgba(25,105,192,.25),rgba(10,45,88,.18)) !important;
    }

    .productsPage .heroCatalogStat.is-active{
      background:linear-gradient(
        145deg,
        rgba(16,73,132,.55),
        rgba(11,53,102,.42)
      ) !important;
      border-color:rgba(105,199,255,.70) !important;
      box-shadow:
        0 22px 52px rgba(0,0,0,.14),
        inset 0 1px 0 rgba(255,255,255,.05) !important;
    }

    .productsPage .heroCatalogStat small{
      color:#87d5ff !important;
    }

    .productsPage .heroCatalogStat span{
      color:rgba(235,244,252,.88) !important;
    }

    @media(max-width:760px){
      .productsPage .heroCatalogStat{
        background:linear-gradient(
          145deg,
          rgba(5,25,54,.50),
          rgba(10,42,78,.38)
        ) !important;
        backdrop-filter:blur(7px) !important;
        -webkit-backdrop-filter:blur(7px) !important;
      }

      .productsPage .heroCatalogStat.is-active{
        background:linear-gradient(
          145deg,
          rgba(13,66,124,.60),
          rgba(9,48,92,.48)
        ) !important;
      }
    }

/* =========================================================
       PRODUCTOS · HERO REFINADO
       Desktop: categorías glass más discretas
       Móvil: categorías ocultas + copy corto para lucir el video
       ========================================================= */

    .productsPage .heroCatalogPanel{
      gap:10px;
      align-self:center;
    }

    .productsPage .heroCatalogStat{
      min-height:142px !important;
      padding:19px 20px 18px !important;
      background:
        linear-gradient(145deg,
          rgba(7,28,58,.24),
          rgba(12,45,82,.15)
        ) !important;
      border-color:rgba(255,255,255,.13) !important;
      box-shadow:0 12px 30px rgba(0,0,0,.08) !important;
      backdrop-filter:blur(5px) saturate(1.02) !important;
      -webkit-backdrop-filter:blur(5px) saturate(1.02) !important;
    }

    .productsPage .heroCatalogStat::before{
      background:
        radial-gradient(circle at 16% 10%,rgba(90,190,255,.10),transparent 48%),
        linear-gradient(145deg,rgba(25,105,192,.12),rgba(10,45,88,.08)) !important;
    }

    .productsPage .heroCatalogStat.is-active{
      background:
        linear-gradient(145deg,
          rgba(16,73,132,.36),
          rgba(11,53,102,.24)
        ) !important;
      border-color:rgba(105,199,255,.54) !important;
      box-shadow:
        0 16px 38px rgba(0,0,0,.11),
        inset 0 1px 0 rgba(255,255,255,.04) !important;
      transform:translateY(-4px);
    }

    .productsPage .heroCatalogStat small{
      color:#95ddff !important;
    }

    .productsPage .heroCatalogStat strong{
      font-size:19px !important;
    }

    .productsPage .heroCatalogStat span{
      color:rgba(239,246,252,.84) !important;
      font-size:10px !important;
    }

    @media(max-width:980px) and (min-width:761px){
      .productsPage .heroCatalogPanel{
        max-width:700px;
      }

      .productsPage .heroCatalogStat{
        min-height:132px !important;
        padding:17px !important;
      }

      .productsPage .heroCatalogStat strong{
        font-size:17px !important;
      }
    }

    @media(max-width:760px){
      .productsPage .productsHero{
        min-height:100svh !important;
      }

      .productsPage .productsHeroGrid{
        width:min(calc(100% - 28px),1320px) !important;
        min-height:100svh !important;
        display:flex !important;
        flex-direction:column !important;
        justify-content:flex-end !important;
        align-items:stretch !important;
        gap:0 !important;
        padding-top:104px !important;
        padding-bottom:34px !important;
      }

      .productsPage .productsHeroCopy{
        max-width:92% !important;
      }

      .productsPage .productsHero h1{
        max-width:8.7ch !important;
        margin:9px 0 12px !important;
        font-size:clamp(34px,9.5vw,42px) !important;
        line-height:.96 !important;
        letter-spacing:-.045em !important;
      }

      .productsPage .productsHero p{
        max-width:26ch !important;
        margin:0 !important;
        font-size:13px !important;
        line-height:1.46 !important;
        color:rgba(255,255,255,.88) !important;
      }

      /* Igual que en Servicios: el panel se oculta para liberar el video. */
      .productsPage .heroCatalogPanel{
        display:none !important;
      }

      .productsPage .productsHeroVideo{
        object-position:center center !important;
        transform:scale(1.055) !important;
        filter:saturate(1) contrast(1.02) brightness(.98) !important;
      }

      .productsPage .productsHeroShade{
        background:
          linear-gradient(180deg,
            rgba(4,16,37,.06) 0%,
            rgba(4,16,37,.08) 32%,
            rgba(4,16,37,.28) 54%,
            rgba(4,16,37,.70) 76%,
            rgba(4,16,37,.93) 100%),
          linear-gradient(90deg,
            rgba(4,16,37,.36) 0%,
            rgba(4,16,37,.10) 48%,
            rgba(4,16,37,.04) 100%) !important;
      }
    }

    @media(max-width:430px){
      .productsPage .productsHeroGrid{
        width:calc(100% - 24px) !important;
        padding-top:96px !important;
        padding-bottom:25px !important;
      }

      .productsPage .productsHeroCopy{
        max-width:96% !important;
      }

      .productsPage .productsHero h1{
        max-width:8.2ch !important;
        font-size:clamp(30px,9vw,37px) !important;
      }

      .productsPage .productsHero p{
        max-width:23ch !important;
        font-size:12px !important;
        line-height:1.42 !important;
      }

      .productsPage .productsHeroVideo{
        object-position:center center !important;
        transform:scale(1.075) !important;
      }
    }

/* =========================================================
       PRODUCTOS · FILTROS MÓVIL COMPACTOS
       Ocupa todo el ancho sin dejar espacio blanco innecesario
       ========================================================= */
    @media(max-width:760px){
      .productsPage .catalogToolbar{
        position:relative !important;
        top:auto !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        width:100% !important;
        gap:10px !important;
        margin:0 0 20px !important;
        padding:10px !important;
        border-radius:18px !important;
      }

      .productsPage .filters{
        display:grid !important;
        grid-template-columns:repeat(6,minmax(0,1fr)) !important;
        width:100% !important;
        max-width:none !important;
        gap:7px !important;
        margin:0 !important;
      }

      .productsPage .filter{
        width:100% !important;
        min-width:0 !important;
        min-height:42px !important;
        padding:0 8px !important;
        font-size:9.5px !important;
        white-space:nowrap;
      }

      /* 3 botones en la primera fila */
      .productsPage #filterAll,
      .productsPage #filterBasic,
      .productsPage #filterSport{
        grid-column:span 2;
      }

      /* 2 botones iguales en la segunda fila */
      .productsPage #filterCorp,
      .productsPage #filterSpecial{
        grid-column:span 3;
      }

      .productsPage .searchWrap{
        display:block !important;
        width:100% !important;
        max-width:none !important;
        flex:none !important;
        margin:0 !important;
      }

      .productsPage .search{
        display:block !important;
        width:100% !important;
        max-width:none !important;
        height:46px !important;
        border-radius:999px !important;
      }
    }

    @media(max-width:430px){
      .productsPage .catalogToolbar{
        padding:9px !important;
        gap:9px !important;
        border-radius:16px !important;
      }

      .productsPage .filters{
        gap:6px !important;
      }

      .productsPage .filter{
        min-height:40px !important;
        padding:0 5px !important;
        font-size:9px !important;
      }

      .productsPage .search{
        height:44px !important;
        font-size:11px !important;
      }
    }

/* =========================================================
       PRODUCTOS · CARRUSEL DE 4 VIDEOS
       Cada video permanece 3 segundos y cambia en el orden definido
       ========================================================= */
    .productsPage .productsHeroMedia{
      position:absolute;
      inset:0;
      overflow:hidden;
      background:#07152f;
    }

    .productsPage .heroVideoSlide{
      position:absolute !important;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      opacity:0;
      visibility:hidden;
      pointer-events:none;
      transition:opacity .7s ease, visibility .7s ease;
      will-change:opacity,transform;
    }

    .productsPage .heroVideoSlide.is-active{
      opacity:1;
      visibility:visible;
      z-index:1;
    }

    /* Ajustes de encuadre por clip */
    .productsPage .heroVideoSlide:nth-child(1){object-position:center 42%}
    .productsPage .heroVideoSlide:nth-child(2){object-position:center 40%}
    .productsPage .heroVideoSlide:nth-child(3){object-position:center 44%}
    .productsPage .heroVideoSlide:nth-child(4){object-position:center 42%}

    @media(max-width:760px){
      .productsPage .heroVideoSlide:nth-child(1){object-position:center center !important}
      .productsPage .heroVideoSlide:nth-child(2){object-position:center center !important}
      .productsPage .heroVideoSlide:nth-child(3){object-position:center center !important}
      .productsPage .heroVideoSlide:nth-child(4){object-position:center center !important}
    }

    @media(prefers-reduced-motion:reduce){
      .productsPage .heroVideoSlide{
        transition:none !important;
      }
    }

/* =========================================================
       PRODUCTOS · AJUSTE DE VIDEO PARA PC / LAPTOP
       Los clips verticales usan una ventana central más angosta
       para mostrar mejor a las personas/prendas sin el recorte extremo
       del formato panorámico. En móvil se conserva el encuadre actual.
       ========================================================= */

    @media(min-width:761px){
      .productsPage .heroVideoSlide{
        top:0 !important;
        bottom:0 !important;
        height:100% !important;
        transform:none !important;
        filter:saturate(1) contrast(1.02) brightness(.96) !important;
      }

      /* Video 1 · mujer revisando prendas (vertical) */
      .productsPage .heroVideoSlide:nth-child(1){
        left:23% !important;
        right:auto !important;
        width:54% !important;
        object-fit:cover !important;
        object-position:center 36% !important;
        -webkit-mask-image:linear-gradient(
          90deg,
          transparent 0%,
          rgba(0,0,0,.55) 7%,
          #000 16%,
          #000 84%,
          rgba(0,0,0,.55) 93%,
          transparent 100%
        );
        mask-image:linear-gradient(
          90deg,
          transparent 0%,
          rgba(0,0,0,.55) 7%,
          #000 16%,
          #000 84%,
          rgba(0,0,0,.55) 93%,
          transparent 100%
        );
      }

      /* Video 2 · mujer con polo negro (vertical) */
      .productsPage .heroVideoSlide:nth-child(2){
        left:25% !important;
        right:auto !important;
        width:50% !important;
        object-fit:cover !important;
        object-position:center 34% !important;
        -webkit-mask-image:linear-gradient(
          90deg,
          transparent 0%,
          rgba(0,0,0,.55) 7%,
          #000 16%,
          #000 84%,
          rgba(0,0,0,.55) 93%,
          transparent 100%
        );
        mask-image:linear-gradient(
          90deg,
          transparent 0%,
          rgba(0,0,0,.55) 7%,
          #000 16%,
          #000 84%,
          rgba(0,0,0,.55) 93%,
          transparent 100%
        );
      }

      /* Video 3 · hombre posando con polo/camisa (horizontal) */
      .productsPage .heroVideoSlide:nth-child(3){
        left:0 !important;
        right:0 !important;
        width:100% !important;
        object-fit:cover !important;
        object-position:center 42% !important;
        -webkit-mask-image:none !important;
        mask-image:none !important;
      }

      /* Video 4 · hombres con ropa cozy (vertical) */
      .productsPage .heroVideoSlide:nth-child(4){
        left:21% !important;
        right:auto !important;
        width:58% !important;
        object-fit:cover !important;
        object-position:center 37% !important;
        -webkit-mask-image:linear-gradient(
          90deg,
          transparent 0%,
          rgba(0,0,0,.55) 7%,
          #000 16%,
          #000 84%,
          rgba(0,0,0,.55) 93%,
          transparent 100%
        );
        mask-image:linear-gradient(
          90deg,
          transparent 0%,
          rgba(0,0,0,.55) 7%,
          #000 16%,
          #000 84%,
          rgba(0,0,0,.55) 93%,
          transparent 100%
        );
      }

      /* Fondo oscuro detrás de los videos verticales para que el
         desvanecido lateral se integre con el hero. */
      .productsPage .productsHeroMedia{
        background:
          radial-gradient(circle at 58% 45%,rgba(26,62,101,.34),transparent 36%),
          #07152f !important;
      }
    }

    /* Laptop / tablet horizontal: ampliar un poco la ventana del clip */
    @media(min-width:761px) and (max-width:1366px){
      .productsPage .heroVideoSlide:nth-child(1){
        left:19% !important;
        width:62% !important;
      }

      .productsPage .heroVideoSlide:nth-child(2){
        left:21% !important;
        width:58% !important;
      }

      .productsPage .heroVideoSlide:nth-child(4){
        left:17% !important;
        width:66% !important;
      }
    }

    /* MÓVIL: conservar exactamente la composición de pantalla completa
       que ya estaba funcionando bien. */
    @media(max-width:760px){
      .productsPage .heroVideoSlide{
        left:0 !important;
        right:0 !important;
        top:0 !important;
        bottom:0 !important;
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
        object-position:center center !important;
        -webkit-mask-image:none !important;
        mask-image:none !important;
      }
    }

/* Productos generados: mostrar la prenda completa sin recortes fuertes */
    .productsPage .productMedia img.catalogProductImage{
      object-fit:contain !important;
      object-position:center center !important;
      padding:8px 10px 4px;
      background:linear-gradient(145deg,#f3f4f6,#e8eaed);
    }
    .productsPage .productCard:hover .productMedia img.catalogProductImage{
      transform:scale(1.025) !important;
    }
    @media(max-width:760px){
      .productsPage .productMedia img.catalogProductImage{
        padding:6px 8px 3px;
      }
    }

/* =========================================================
   FCC · PRODUCTOS · MENÚ MÓVIL
   Igualado al comportamiento visual de EMPRESA.
   Corrige el panel demasiado alto en Productos.
   ========================================================= */
@media (max-width:1160px){
  .productsPage .header .links{
    display:none !important;
    position:absolute !important;
    top:88px !important;
    left:16px !important;
    right:16px !important;
    margin:0 !important;
    padding:22px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:24px !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:22px !important;
    background:rgba(8,23,42,.98) !important;
    box-shadow:0 18px 48px rgba(2,12,27,.28) !important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }

  .productsPage .header.open .links{
    display:flex !important;
  }

  .productsPage .header .links a{
    width:auto !important;
    padding:0 !important;
    line-height:1.6 !important;
  }
}

@media (max-width:760px){
  .productsPage .header .links,
  .productsPage .header.open .links{
    top:80px !important;
    left:10px !important;
    right:10px !important;
    border-radius:20px !important;
  }
}

/* =========================================================
   PRODUCTOS · HERO VIDEO RESPONSIVE FINAL
   Desktop: conserva el carrusel horizontal actual.
   Móvil: usa un único video vertical y prioriza el contenido visual.
   Composición alineada con CONTACTO / COTIZACIÓN / SERVICIOS.
   ========================================================= */
.productsPage .productsHero.productsHeroVideoMode{
  position:relative !important;
  min-height:760px !important;
  height:88svh !important;
  max-height:840px !important;
  padding:0 !important;
  display:flex !important;
  align-items:stretch !important;
  overflow:hidden !important;
  background:#07152f !important;
  color:#fff !important;
}
.productsPage .productsHeroMedia{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  overflow:hidden !important;
  background:#07152f !important;
}
.productsPage .productsHeroDesktopVideos{
  position:absolute;
  inset:0;
}
.productsPage .productsHeroMobileVideo{
  display:none;
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.productsPage .productsHeroShade{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    linear-gradient(180deg,
      rgba(4,16,37,.10) 0%,
      rgba(4,16,37,.04) 40%,
      rgba(4,16,37,.20) 58%,
      rgba(4,16,37,.72) 88%,
      rgba(4,16,37,.94) 100%) !important;
}
.productsPage .productsHeroGrid.productsHeroGridVideo{
  position:relative !important;
  z-index:2 !important;
  width:min(calc(100% - 56px),1320px) !important;
  min-height:760px !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  align-items:center !important;
  padding-top:150px !important;
  padding-bottom:74px !important;
}
.productsPage .productsHeroCopy.productsHeroCopyVideo{
  width:100% !important;
  max-width:880px !important;
  margin-inline:auto !important;
  text-align:center !important;
}
.productsPage .productsHero .eyebrow{
  display:block !important;
  margin:0 0 12px !important;
  color:#62beff !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  text-shadow:0 4px 18px rgba(0,0,0,.24) !important;
}
.productsPage .productsHero h1{
  max-width:12ch !important;
  margin:0 auto 16px !important;
  font-family:'Manrope',Arial,sans-serif !important;
  font-size:clamp(50px,5.1vw,76px) !important;
  font-weight:800 !important;
  line-height:.98 !important;
  letter-spacing:-.05em !important;
  text-align:center !important;
  text-wrap:balance;
}
.productsPage .productsHero h1 em{
  display:block !important;
  color:#55b7ff !important;
  font-style:normal !important;
  font-weight:800 !important;
}
.productsPage .productsHero p{
  max-width:610px !important;
  margin:0 auto !important;
  color:rgba(255,255,255,.86) !important;
  font-size:15px !important;
  line-height:1.58 !important;
  text-align:center !important;
}
.productsPage .productsHeroActions{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:22px !important;
}
.productsPage .productsHeroBtn{
  min-height:48px !important;
  padding:0 19px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  border-radius:999px !important;
  text-decoration:none !important;
  font-family:'Manrope',Arial,sans-serif !important;
  font-size:11px !important;
  font-weight:800 !important;
  transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease !important;
}
.productsPage .productsHeroBtnPrimary{
  background:#fff !important;
  border:1px solid rgba(255,255,255,.92) !important;
  color:#0a1732 !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
}
.productsPage .productsHeroBtnPrimary:hover,
.productsPage .productsHeroBtnPrimary:focus-visible{
  background:#1688ff !important;
  border-color:#1688ff !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
}
.productsPage .productsHeroBtnGhost{
  border:1px solid rgba(255,255,255,.30) !important;
  background:rgba(8,25,49,.26) !important;
  color:#fff !important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.productsPage .productsHeroBtnGhost:hover,
.productsPage .productsHeroBtnGhost:focus-visible{
  border-color:rgba(99,189,255,.62) !important;
  background:rgba(22,136,255,.18) !important;
  transform:translateY(-2px) !important;
}
.productsPage .heroCatalogPanel{
  display:none !important;
}

@media(max-width:760px){
  .productsPage .productsHero.productsHeroVideoMode{
    min-height:100svh !important;
    height:100svh !important;
    max-height:none !important;
  }
  .productsPage .productsHeroDesktopVideos{
    display:none !important;
  }
  .productsPage .productsHeroMobileVideo{
    display:block !important;
    object-position:center 45% !important;
    transform:scale(1.01) !important;
    filter:saturate(.98) contrast(1.01) brightness(.98) !important;
  }
  .productsPage .productsHeroShade{
    background:
      linear-gradient(180deg,
        rgba(4,16,37,.08) 0%,
        rgba(4,16,37,.04) 34%,
        rgba(4,16,37,.17) 55%,
        rgba(4,16,37,.80) 86%,
        rgba(4,16,37,.96) 100%) !important;
  }
  .productsPage .productsHeroGrid.productsHeroGridVideo{
    width:min(calc(100% - 24px),1320px) !important;
    min-height:100svh !important;
    height:100svh !important;
    padding-top:118px !important;
    padding-bottom:44px !important;
  }
  .productsPage .productsHeroCopy.productsHeroCopyVideo{
    max-width:410px !important;
  }
  .productsPage .productsHero .eyebrow{
    margin-bottom:9px !important;
    font-size:9px !important;
    letter-spacing:.17em !important;
  }
  .productsPage .productsHero h1{
    max-width:10.5ch !important;
    margin:0 auto 12px !important;
    font-size:clamp(34px,10vw,46px) !important;
    line-height:.98 !important;
  }
  .productsPage .productsHero p{
    max-width:30ch !important;
    font-size:12.5px !important;
    line-height:1.5 !important;
  }
  .productsPage .productsHeroActions{
    margin-top:18px !important;
    gap:9px !important;
  }
  .productsPage .productsHeroBtn{
    min-height:44px !important;
    padding:0 15px !important;
    font-size:9.5px !important;
  }
}

@media(max-width:430px){
  .productsPage .productsHeroGrid.productsHeroGridVideo{
    width:calc(100% - 22px) !important;
    padding-top:108px !important;
    padding-bottom:38px !important;
  }
  .productsPage .productsHeroCopy.productsHeroCopyVideo{
    max-width:360px !important;
  }
  .productsPage .productsHero h1{
    max-width:10ch !important;
    font-size:clamp(31px,9.4vw,39px) !important;
  }
  .productsPage .productsHero p{
    max-width:28ch !important;
    font-size:12px !important;
  }
  .productsPage .productsHeroActions{
    gap:8px !important;
  }
  .productsPage .productsHeroBtn{
    min-height:42px !important;
    padding:0 13px !important;
    font-size:9px !important;
  }
}



/* =========================================================
   PRODUCTOS · VIDEOS HORIZONTALES + VERTICALES V2
   PC: 3 clips horizontales a pantalla completa.
   Móvil: 2 clips verticales con crossfade automático.
   ========================================================= */
.productsPage .productsHeroDesktopVideos,
.productsPage .productsHeroMobileVideos{
  position:absolute !important;
  inset:0 !important;
  overflow:hidden !important;
}
.productsPage .productsHeroMobileVideos{
  display:none !important;
}
.productsPage .productsHeroMobileVideos .productsHeroMobileVideo{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 45% !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .7s ease,visibility .7s ease !important;
  filter:saturate(.99) contrast(1.01) brightness(.98) !important;
  transform:scale(1.01) !important;
  will-change:opacity,transform;
}
.productsPage .productsHeroMobileVideos .productsHeroMobileVideo.is-active{
  opacity:1 !important;
  visibility:visible !important;
  z-index:1 !important;
}

/* Los nuevos clips de escritorio ya son 16:9: eliminamos la ventana/máscara
   usada anteriormente para adaptar videos verticales. */
@media(min-width:761px){
  .productsPage .productsHeroDesktopVideos .heroVideoSlide{
    left:0 !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    -webkit-mask-image:none !important;
    mask-image:none !important;
    transform:none !important;
    filter:saturate(1) contrast(1.02) brightness(.98) !important;
  }
  .productsPage .productsHeroMedia{
    background:#07152f !important;
  }
  .productsPage .productsHeroShade{
    background:linear-gradient(180deg,
      rgba(4,16,37,.06) 0%,
      rgba(4,16,37,.02) 42%,
      rgba(4,16,37,.16) 62%,
      rgba(4,16,37,.62) 90%,
      rgba(4,16,37,.82) 100%) !important;
  }
}

@media(max-width:760px){
  .productsPage .productsHeroDesktopVideos{
    display:none !important;
  }
  .productsPage .productsHeroMobileVideos{
    display:block !important;
  }
}

@media(prefers-reduced-motion:reduce){
  .productsPage .productsHeroMobileVideos .productsHeroMobileVideo{
    transition:none !important;
  }
}


/* =========================================================
   FCC · MENÚ MÓVIL UNIFICADO
   Patrón exacto de EMPRESA / INDEX:
   - sin línea fija en la página activa
   - línea aparece solamente en hover/focus
   - mismo espaciado, panel y hamburguesa
   ========================================================= */
@media (max-width:1160px){
  .productsPage .header .nav{
    display:flex !important;
    align-items:center !important;
  }

  .productsPage .header .logo{
    order:1 !important;
    flex:0 0 auto !important;
  }

  .productsPage .header .menu{
    display:block !important;
    order:2 !important;
    margin-left:auto !important;
    margin-right:0 !important;
    width:42px !important;
    height:42px !important;
    flex:0 0 42px !important;
    padding:0 !important;
    position:relative !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    cursor:pointer !important;
  }

  .productsPage .header .menu span{
    display:block !important;
    position:absolute !important;
    left:8px !important;
    right:8px !important;
    width:auto !important;
    height:1px !important;
    margin:0 !important;
    padding:0 !important;
    background:#fff !important;
    border:0 !important;
    transform:none !important;
  }

  .productsPage .header .menu span:first-child{top:16px !important;}
  .productsPage .header .menu span:last-child{top:25px !important;}

  .productsPage .header .lang{
    order:3 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    flex:0 0 auto !important;
  }

  .productsPage .header .navCta{
    display:none !important;
  }

  /* Panel igual a Empresa */
  .productsPage .header .links{
    display:none !important;
    position:absolute !important;
    top:88px !important;
    left:16px !important;
    right:16px !important;
    margin:0 !important;
    padding:22px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:24px !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:22px !important;
    background:rgba(8,23,42,.98) !important;
    box-shadow:0 18px 48px rgba(2,12,27,.28) !important;
    backdrop-filter:blur(18px) !important;
    -webkit-backdrop-filter:blur(18px) !important;
  }

  .productsPage .header.open .links{
    display:flex !important;
  }

  /* Todos los títulos parten con el mismo estilo */
  .productsPage .header .links a,
  .productsPage .header .links a.active{
    position:relative !important;
    width:auto !important;
    max-width:none !important;
    align-self:auto !important;
    padding:0 !important;
    color:rgba(255,255,255,.76) !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .productsPage .header .links a:hover,
  .productsPage .header .links a:focus-visible,
  .productsPage .header .links a.active:hover,
  .productsPage .header .links a.active:focus-visible{
    color:#fff !important;
  }

  /* Línea invisible por defecto, como Empresa */
  .productsPage .header .links a::after,
  .productsPage .header .links a.active::after{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:0 !important;
    right:100% !important;
    bottom:-10px !important;
    width:auto !important;
    height:1px !important;
    background:#63bdff !important;
    border:0 !important;
    transition:right .25s ease !important;
  }

  /* La línea aparece solamente al pasar el mouse / foco */
  .productsPage .header .links a:hover::after,
  .productsPage .header .links a:focus-visible::after,
  .productsPage .header .links a.active:hover::after,
  .productsPage .header .links a.active:focus-visible::after{
    right:0 !important;
  }
}

@media (max-width:760px){
  .productsPage .header{
    padding-top:10px !important;
  }

  .productsPage .header .nav{
    width:calc(100% - 20px) !important;
    height:62px !important;
    border-radius:21px !important;
    padding:0 9px 0 11px !important;
    gap:8px !important;
  }

  .productsPage .header .logo img{
    width:78px !important;
    max-height:42px !important;
    border-radius:10px !important;
    padding:4px 6px !important;
  }

  .productsPage .header .menu{
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
  }

  .productsPage .header .lang{
    transform:scale(.94) !important;
    transform-origin:right center !important;
  }

  .productsPage .header .links,
  .productsPage .header.open .links{
    top:80px !important;
    left:10px !important;
    right:10px !important;
    border-radius:20px !important;
  }
}

@media (max-width:430px){
  .productsPage .header .nav{
    width:calc(100% - 14px) !important;
    height:60px !important;
    border-radius:19px !important;
    padding-left:9px !important;
    padding-right:7px !important;
    gap:8px !important;
  }

  .productsPage .header .logo img{
    width:68px !important;
  }

  .productsPage .header .menu{
    width:38px !important;
    height:38px !important;
    flex-basis:38px !important;
  }

  .productsPage .header .lang{
    transform:scale(.88) !important;
  }
}
