  /* ============================================================
       DESIGN TOKENS — mismo sistema que Home y Producto
       ============================================================ */
    :root {
      --red:      #E74C3C;
      --red-dk:   #C0392B;
      --red-lt:   #FFEEED;
      --red-mid:  #FADDDB;
      --dark:     #1A1A1A;
      --mid:      #555555;
      --soft:     #888888;
      --light:    #F8F8F8;
      --white:    #FFFFFF;
      --border:   #EBEBEB;
      --green:    #27AE60;
      --shadow-sm:0 2px 8px rgba(0,0,0,.06);
      --shadow-md:0 6px 24px rgba(0,0,0,.10);
      --shadow-lg:0 16px 52px rgba(0,0,0,.14);
      --r:        8px;
      --r-lg:     16px;
      --trans:    .25s ease;
    }

    *, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
    html { scroll-behavior:smooth; }
    body { font-family:'Poppins',sans-serif; color:var(--dark); background:var(--white); overflow-x:hidden; -webkit-font-smoothing:antialiased; }
    img { display:block; max-width:100%; }
    a { text-decoration:none; color:inherit; }
    ul { list-style:none; }
    .container { width:100%; max-width:1200px; margin-inline:auto; padding-inline:24px; }

    .lb-eyebrow { display:inline-flex; align-items:center; gap:8px; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--red); margin-bottom:12px; }
    .lb-eyebrow::before { content:''; width:20px; height:2px; background:var(--red); border-radius:2px; flex-shrink:0; }
    .lb-eyebrow-white { color:rgba(255,255,255,.8); }
    .lb-eyebrow-white::before { background:rgba(255,255,255,.6); }

    .lb-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:'Poppins',sans-serif; font-size:14px; font-weight:600; padding:13px 26px; border-radius:6px; border:2px solid transparent; cursor:pointer; transition:var(--trans); white-space:nowrap; }
    .lb-btn-primary { background:var(--red); color:#fff; border-color:var(--red); }
    .lb-btn-primary:hover { background:var(--red-dk); border-color:var(--red-dk); transform:translateY(-1px); box-shadow:0 6px 20px rgba(231,76,60,.35); }
    .lb-btn-outline { background:transparent; color:var(--red); border-color:var(--red); }
    .lb-btn-outline:hover { background:var(--red); color:#fff; }
    .lb-btn-dark { background:var(--dark); color:#fff; border-color:var(--dark); }
    .lb-btn-dark:hover { background:#333; transform:translateY(-1px); }
    .lb-btn-wa { background:#25D366; color:#fff; border-color:#25D366; }
    .lb-btn-wa:hover { background:#1ebe5d; transform:translateY(-1px); }
    .lb-btn-white { background:#fff; color:var(--red); border-color:#fff; font-weight:700; }
    .lb-btn-white:hover { background:var(--red-lt); transform:translateY(-1px); }

    .lb-reveal { opacity:0; transform:translateY(26px); transition:opacity .6s ease,transform .6s ease; }
    .lb-reveal.lb-visible { opacity:1; transform:none; }
    .lb-delay-1 { transition-delay:.08s; }
    .lb-delay-2 { transition-delay:.16s; }
    .lb-delay-3 { transition-delay:.24s; }
    .lb-delay-4 { transition-delay:.32s; }
    .lb-delay-5 { transition-delay:.40s; }

    /* ============================================================
       1 · HERO DE SECCIÓN
       ============================================================ */
    .lb-about-hero {
      background:var(--dark); padding:80px 0; position:relative; overflow:hidden;
    }
    .lb-about-hero::before {
      content:''; position:absolute; inset:0;
      background:
        radial-gradient(ellipse at 20% 50%, rgba(231,76,60,.22) 0%, transparent 55%),
        radial-gradient(ellipse at 80% 20%, rgba(231,76,60,.08) 0%, transparent 45%);
    }
    .lb-about-hero-grid {
      position:relative; z-index:2;
      display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center;
    }
    .lb-about-hero-title {
      font-size:clamp(36px,4.5vw,58px); font-weight:800; color:#fff;
      line-height:1.1; margin-bottom:18px; letter-spacing:-.02em;
    }
    .lb-about-hero-title em { font-style:normal; color:var(--red); }
    .lb-about-hero-text { font-size:17px; color:rgba(255,255,255,.6); line-height:1.8; margin-bottom:32px; font-weight:400; }
    .lb-about-hero-ctas { display:flex; flex-wrap:wrap; gap:12px; }

    .lb-about-hero-stats {
      display:grid; grid-template-columns:1fr 1fr; gap:16px;
    }
    .lb-stat-card {
      background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
      border-radius:var(--r-lg); padding:28px 24px; text-align:center;
      transition:var(--trans); cursor:default;
      backdrop-filter:blur(4px);
    }
    .lb-stat-card:hover { background:rgba(231,76,60,.15); border-color:rgba(231,76,60,.35); }
    .lb-stat-num { font-size:48px; font-weight:800; color:var(--red); line-height:1; }
    .lb-stat-label { font-size:13px; color:rgba(255,255,255,.55); margin-top:8px; line-height:1.4; font-weight:500; }

    /* ============================================================
       2 · HISTORIA
       ============================================================ */
    .lb-historia { padding:88px 0; background:var(--white); }
    .lb-historia-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
    .lb-historia-content h2 { font-size:clamp(28px,3vw,40px); font-weight:800; line-height:1.2; margin-bottom:20px; }
    .lb-historia-content h2 span { color:var(--red); }
    .lb-historia-lead { font-size:16px; color:var(--mid); line-height:1.8; margin-bottom:20px; }
    .lb-historia-body { font-size:15px; color:var(--mid); line-height:1.8; margin-bottom:28px; }
    .lb-timeline { display:flex; flex-direction:column; gap:0; }
    .lb-timeline-item { display:flex; gap:20px; padding-bottom:28px; position:relative; }
    .lb-timeline-item:last-child { padding-bottom:0; }
    .lb-timeline-left { display:flex; flex-direction:column; align-items:center; flex-shrink:0; }
    .lb-timeline-dot { width:14px; height:14px; border-radius:50%; background:var(--red); flex-shrink:0; margin-top:3px; box-shadow:0 0 0 4px var(--red-lt); }
    .lb-timeline-line { width:2px; flex:1; background:var(--border); margin-top:8px; }
    .lb-timeline-item:last-child .lb-timeline-line { display:none; }
    .lb-timeline-content { padding-bottom:4px; }
    .lb-timeline-year { font-size:11px; font-weight:800; color:var(--red); text-transform:uppercase; letter-spacing:.1em; margin-bottom:4px; }
    .lb-timeline-title { font-size:15px; font-weight:700; color:var(--dark); margin-bottom:4px; }
    .lb-timeline-desc { font-size:13px; color:var(--mid); line-height:1.6; }

    .lb-historia-values { display:flex; flex-direction:column; gap:16px; }
    .lb-value-item {
      display:flex; align-items:flex-start; gap:16px;
      padding:20px; background:var(--light); border:1px solid var(--border);
      border-radius:var(--r-lg); transition:var(--trans);
    }
    .lb-value-item:hover { border-color:var(--red); box-shadow:var(--shadow-sm); }
    .lb-value-icon { width:44px; height:44px; border-radius:12px; background:var(--red-lt); display:flex; align-items:center; justify-content:center; color:var(--red); flex-shrink:0; transition:var(--trans); }
    .lb-value-item:hover .lb-value-icon { background:var(--red); color:#fff; }
    .lb-value-text h3 { font-size:15px; font-weight:700; margin-bottom:5px; }
    .lb-value-text p { font-size:13px; color:var(--mid); line-height:1.6; }

    /* ============================================================
       3 · DIFERENCIALES (TRUST BUILDERS)
       ============================================================ */
    .lb-trust { padding:80px 0; background:var(--light); }
    .lb-trust-section-head { text-align:center; margin-bottom:52px; }
    .lb-trust-section-head h2 { font-size:clamp(26px,3vw,40px); font-weight:800; line-height:1.2; margin-bottom:12px; }
    .lb-trust-section-head p { font-size:16px; color:var(--mid); max-width:560px; margin-inline:auto; line-height:1.7; }

    .lb-trust-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
    .lb-trust-card {
      background:var(--white); border:1px solid var(--border); border-radius:var(--r-lg);
      padding:32px 26px; transition:var(--trans); cursor:default;
    }
    .lb-trust-card:hover { border-color:var(--red); box-shadow:var(--shadow-md); transform:translateY(-4px); }
    .lb-trust-card-icon {
      width:56px; height:56px; border-radius:14px; background:var(--red-lt);
      display:flex; align-items:center; justify-content:center; color:var(--red);
      margin-bottom:20px; transition:var(--trans);
    }
    .lb-trust-card:hover .lb-trust-card-icon { background:var(--red); color:#fff; }
    .lb-trust-card h3 { font-size:17px; font-weight:700; margin-bottom:10px; }
    .lb-trust-card p { font-size:14px; color:var(--mid); line-height:1.7; }
    .lb-trust-card-tag { display:inline-block; margin-top:14px; font-size:11px; font-weight:700; color:var(--red); text-transform:uppercase; letter-spacing:.07em; }

    /* ============================================================
       4 · TECNOLOGÍAS BASE
       ============================================================ */
    .lb-tecnologias { padding:80px 0; background:var(--dark); position:relative; overflow:hidden; }
    .lb-tecnologias::before {
      content:''; position:absolute; inset:0;
      background:radial-gradient(ellipse at 90% 30%, rgba(231,76,60,.14) 0%, transparent 55%);
    }
    .lb-tecnologias .container { position:relative; z-index:2; }
    .lb-tec-head { text-align:center; margin-bottom:52px; }
    .lb-tec-head h2 { font-size:clamp(26px,3vw,40px); font-weight:800; color:#fff; line-height:1.2; margin-bottom:12px; }
    .lb-tec-head p { font-size:16px; color:rgba(255,255,255,.5); max-width:540px; margin-inline:auto; line-height:1.7; }

    .lb-tec-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
    .lb-tec-card {
      background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
      border-radius:var(--r-lg); padding:36px 32px; transition:var(--trans);
      display:flex; gap:24px; align-items:flex-start;
    }
    .lb-tec-card:hover { background:rgba(231,76,60,.1); border-color:rgba(231,76,60,.3); }
    .lb-tec-icon {
      width:56px; height:56px; flex-shrink:0; border-radius:14px;
      background:rgba(231,76,60,.15); border:1px solid rgba(231,76,60,.3);
      display:flex; align-items:center; justify-content:center; color:var(--red);
    }
    .lb-tec-title { font-size:17px; font-weight:700; color:#fff; margin-bottom:10px; line-height:1.3; }
    .lb-tec-desc { font-size:14px; color:rgba(255,255,255,.5); line-height:1.75; }
    .lb-tec-highlight {
      display:inline-flex; align-items:center; gap:6px; margin-top:14px;
      font-size:11px; font-weight:700; color:var(--red); text-transform:uppercase; letter-spacing:.07em;
    }

    /* ============================================================
       5 · LÍNEAS DE PRODUCTOS
       ============================================================ */
    .lb-lineas { padding:88px 0; background:var(--white); }
    .lb-lineas-intro { text-align:center; max-width:680px; margin:0 auto 64px; }
    .lb-lineas-intro h2 { font-size:clamp(28px,3vw,42px); font-weight:800; line-height:1.2; margin-bottom:14px; }
    .lb-lineas-intro p { font-size:16px; color:var(--mid); line-height:1.75; }

    /* Línea card */
    .lb-linea {
      display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center;
      padding:56px 0; border-bottom:1px solid var(--border);
    }
    .lb-linea:last-child { border-bottom:none; }
    .lb-linea.reverse { direction:rtl; }
    .lb-linea.reverse > * { direction:ltr; }

    .lb-linea-badge { display:inline-flex; align-items:center; gap:8px; margin-bottom:14px; }
    .lb-linea-num {
      width:32px; height:32px; border-radius:50%; background:var(--red); color:#fff;
      font-size:13px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0;
    }
    .lb-linea-tier { font-size:11px; font-weight:700; color:var(--soft); text-transform:uppercase; letter-spacing:.12em; }

    .lb-linea-logo { height:40px; width:auto; margin-bottom:20px; object-fit:contain; object-position:left; }
    .lb-linea-title { font-size:clamp(24px,2.5vw,34px); font-weight:800; margin-bottom:14px; line-height:1.15; }
    .lb-linea-title span { color:var(--red); }
    .lb-linea-tech {
      display:inline-flex; align-items:center; gap:8px;
      background:var(--red-lt); border:1px solid var(--red-mid);
      border-radius:100px; padding:7px 14px;
      font-size:12px; font-weight:600; color:var(--red); margin-bottom:18px;
    }
    .lb-linea-desc { font-size:15px; color:var(--mid); line-height:1.8; margin-bottom:24px; }

    .lb-linea-specs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px; }
    .lb-linea-spec {
      display:flex; align-items:center; gap:7px;
      background:var(--light); border:1px solid var(--border);
      border-radius:100px; padding:6px 14px; font-size:12px; font-weight:600; color:var(--dark);
    }
    .lb-linea-spec svg { color:var(--red); flex-shrink:0; }

    .lb-linea-sizes { margin-bottom:24px; }
    .lb-linea-sizes h4 { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--soft); margin-bottom:8px; }
    .lb-linea-sizes-grid { display:flex; flex-wrap:wrap; gap:6px; }
    .lb-linea-size-tag {
      font-size:11px; font-weight:600; padding:5px 12px; border-radius:4px;
      background:var(--light); border:1px solid var(--border); color:var(--dark);
    }

    /* Imagen de la línea */
    .lb-linea-visual { position:relative; }
    .lb-linea-img-wrap {
      border-radius:var(--r-lg); overflow:hidden; background:var(--red-lt);
      aspect-ratio:4/3;
      display:flex; align-items:center; justify-content:center;
    }
    .lb-linea-img-wrap img { width:100%; height:100%; object-fit:contain; padding:20px; }
    .lb-linea-level {
      position:absolute; top:-14px; right:-14px;
      background:var(--red); color:#fff; border-radius:var(--r);
      padding:10px 16px; font-size:12px; font-weight:800; text-align:center;
      box-shadow:var(--shadow-md); line-height:1.3;
    }
    .lb-linea-level small { display:block; font-size:10px; font-weight:500; opacity:.8; text-transform:uppercase; letter-spacing:.05em; }

    /* ============================================================
       6 · MAPA + SUCURSALES
       ============================================================ */
    .lb-sucursales { padding:88px 0; background:var(--light); }
    .lb-sucursales-head { text-align:center; margin-bottom:56px; }
    .lb-sucursales-head h2 { font-size:clamp(28px,3vw,42px); font-weight:800; line-height:1.2; margin-bottom:12px; }
    .lb-sucursales-head p { font-size:16px; color:var(--mid); max-width:520px; margin-inline:auto; line-height:1.7; }

    .lb-sucursales-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:start; }

    /* Mapa */
    .lb-map-wrap {
      border-radius:var(--r-lg); overflow:hidden; border:1px solid var(--border);
      box-shadow:var(--shadow-md);
      position:sticky; top:90px;
    }
    .lb-map-wrap iframe { display:block; width:100%; height:480px; border:none; }

    /* Cards de sucursales */
    .lb-suc-list { display:flex; flex-direction:column; gap:14px; }
    .lb-suc-card {
      background:var(--white); border:1px solid var(--border); border-radius:var(--r-lg);
      padding:22px 24px; transition:var(--trans); display:flex; gap:16px; align-items:flex-start;
    }
    .lb-suc-card:hover { border-color:var(--red); box-shadow:var(--shadow-sm); }
    .lb-suc-num {
      width:36px; height:36px; border-radius:50%; background:var(--red); color:#fff;
      font-size:14px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0;
    }
    .lb-suc-body h3 { font-size:14px; font-weight:700; margin-bottom:4px; }
    .lb-suc-body address { font-style:normal; font-size:13px; color:var(--mid); line-height:1.5; margin-bottom:8px; }
    .lb-suc-contact { display:flex; flex-wrap:wrap; gap:8px; }
    .lb-suc-link {
      display:inline-flex; align-items:center; gap:5px;
      font-size:12px; font-weight:600; color:var(--dark);
      background:var(--light); border:1px solid var(--border); border-radius:4px; padding:4px 10px;
      transition:var(--trans);
    }
    .lb-suc-link:hover { border-color:var(--red); color:var(--red); }
    .lb-suc-link svg { color:var(--red); }

    /* ============================================================
       7 · CONTACTO
       ============================================================ */
    .lb-contacto { padding:80px 0; background:var(--white); }
    .lb-contacto-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
    .lb-contacto-left h2 { font-size:clamp(26px,3vw,38px); font-weight:800; line-height:1.2; margin-bottom:14px; }
    .lb-contacto-left p { font-size:16px; color:var(--mid); line-height:1.75; margin-bottom:32px; }

    .lb-contacto-methods { display:flex; flex-direction:column; gap:12px; }
    .lb-contact-method {
      display:flex; align-items:center; gap:14px;
      padding:18px 20px; background:var(--light); border:1px solid var(--border);
      border-radius:var(--r-lg); transition:var(--trans); cursor:pointer;
    }
    .lb-contact-method:hover { border-color:var(--red); box-shadow:var(--shadow-sm); }
    .lb-contact-method-icon { width:44px; height:44px; border-radius:12px; background:var(--red-lt); display:flex; align-items:center; justify-content:center; color:var(--red); flex-shrink:0; }
    .lb-contact-method strong { font-size:14px; display:block; }
    .lb-contact-method span { font-size:13px; color:var(--mid); }

    .lb-faq { background:var(--light); border-radius:var(--r-lg); padding:32px; border:1px solid var(--border); }
    .lb-faq h3 { font-size:17px; font-weight:700; margin-bottom:20px; }
    .lb-faq-item { border-bottom:1px solid var(--border); }
    .lb-faq-item:last-child { border-bottom:none; }
    .lb-faq-q {
      width:100%; text-align:left; padding:16px 0; font-size:14px; font-weight:600;
      cursor:pointer; background:none; border:none; color:var(--dark);
      display:flex; justify-content:space-between; align-items:center; gap:12px;
      transition:var(--trans);
    }
    .lb-faq-q:hover { color:var(--red); }
    .lb-faq-q svg { flex-shrink:0; transition:transform .25s ease; color:var(--soft); }
    .lb-faq-item.open .lb-faq-q svg { transform:rotate(180deg); color:var(--red); }
    .lb-faq-a { font-size:14px; color:var(--mid); line-height:1.7; padding-bottom:16px; display:none; }
    .lb-faq-item.open .lb-faq-a { display:block; }

    /* ============================================================
       8 · CTA FINAL
       ============================================================ */
    .lb-cta-final {
      padding:90px 0; background:var(--dark); text-align:center; position:relative; overflow:hidden;
    }
    .lb-cta-final::before {
      content:''; position:absolute; inset:0;
      background:radial-gradient(ellipse at 50% 60%, rgba(231,76,60,.22) 0%, transparent 65%);
    }
    .lb-cta-final .container { position:relative; z-index:2; }
    .lb-cta-final h2 { font-size:clamp(30px,4vw,52px); font-weight:800; color:#fff; line-height:1.15; margin-bottom:14px; }
    .lb-cta-final-sub { font-size:17px; color:rgba(255,255,255,.5); margin-bottom:44px; font-weight:400; }
    .lb-cta-final-btns { display:flex; justify-content:center; flex-wrap:wrap; gap:14px; }

    /* WA FLOAT */
    .lb-wa-float { position:fixed; bottom:24px; right:24px; z-index:9999; width:52px; height:52px; border-radius:50%; background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 18px rgba(37,211,102,.5); transition:var(--trans); animation:lb-wa-pulse 2.5s infinite; }
    .lb-wa-float:hover { transform:scale(1.1); }
    @keyframes lb-wa-pulse { 0%,100%{ box-shadow:0 4px 18px rgba(37,211,102,.5) } 50%{ box-shadow:0 4px 28px rgba(37,211,102,.75) } }

a:hover,a:focus { color: var(--main-categories-background); fill: var(--main-categories-background) }

    /* ── RESPONSIVE ── */
    @media (max-width:1024px) {
      .lb-linea { grid-template-columns:1fr; gap:36px; }
      .lb-linea.reverse { direction:ltr; }
      .lb-sucursales-grid { grid-template-columns:1fr; }
      .lb-map-wrap { position:static; }
      .lb-trust-grid { grid-template-columns:1fr 1fr; }
      .lb-tec-grid { grid-template-columns:1fr; }
      .lb-footer-grid { grid-template-columns:1fr 1fr; }
    }
    @media (max-width:768px) {
      .lb-topbar { display:none; }
      .lb-nav-links { display:none; }
      .lb-about-hero-grid { grid-template-columns:1fr; gap:40px; }
      .lb-historia-grid { grid-template-columns:1fr; gap:40px; }
      .lb-trust-grid { grid-template-columns:1fr; }
      .lb-contacto-grid { grid-template-columns:1fr; gap:36px; }
      .lb-cta-final-btns { flex-direction:column; align-items:center; }
      .lb-footer-grid { grid-template-columns:1fr; gap:28px; }
      .lb-footer-bottom { flex-direction:column; text-align:center; }
      .lb-map-wrap iframe { height:320px; }
    }
    @media (max-width:480px) {
      .lb-about-hero-stats { grid-template-columns:1fr 1fr; }
      .lb-linea-specs { flex-direction:column; }
    }