/* /empresas/biblioteca/ */
.cu-hero { background: var(--color-canvas-ice); padding: 170px 0 90px; border-bottom: 2px solid var(--color-carbon-black); overflow-x: hidden; }
        .cu-eyebrow { display: inline-flex; align-items: center; gap: .45rem; padding: .35rem 1rem; border-radius: 50px; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; border: 1.5px solid var(--color-carbon-black); background: transparent; margin-bottom: 1.5rem; }
        .cu-eyebrow i { color: var(--color-brand-green); }
        .cu-headline { font-family: var(--font-helvetica-now-display-cn-bold) !important; font-size: clamp(2.2rem, 5vw, 4.2rem) !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: -1.5px !important; line-height: .95 !important; margin-bottom: 1.5rem; word-break: break-word; overflow-wrap: break-word; max-width: 100%; }
        .cu-headline .green { color: var(--color-brand-green) !important; }
        .cu-intro { font-size: 1rem !important; color: var(--color-muted-stone) !important; line-height: 1.7 !important; max-width: 520px; margin-bottom: 2rem; }
        .cu-section { padding: 90px 0; border-top: 2px solid var(--color-carbon-black); }
        .cu-section.bg-ice { background: var(--color-canvas-ice); }
        .cu-section.bg-white { background: var(--color-polar-white); }
        .cu-section.bg-dark { background: var(--color-carbon-black); color: var(--color-polar-white); }
        .sec-label { font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--color-muted-stone); margin-bottom: .75rem; }
        .sec-label.light { color: rgba(255, 255, 255, .45); }
        .sec-title { font-family: var(--font-helvetica-now-display-cn-bold) !important; font-size: clamp(1.8rem, 3.5vw, 2.8rem) !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: -1px !important; line-height: .96 !important; }
        .sec-title.light { color: var(--color-polar-white) !important; }
        .sec-title .green { color: var(--color-brand-green) !important; }
        .cat-card { border: 2px solid var(--color-carbon-black); border-radius: var(--radius-large); padding: 1.75rem; height: 100%; background: var(--color-polar-white); transition: transform .25s ease, background .25s ease; position: relative; overflow: hidden; display: flex; flex-direction: column; }
        .cat-card::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 3px; background: var(--color-brand-green); transition: width .35s ease; }
        .cat-card:hover { transform: translateY(-5px); background: var(--color-cream-card); }
        .cat-card:hover::after { width: 100%; }
        .cat-icon { width: 56px; height: 56px; background: var(--color-brand-green); border: 2px solid var(--color-carbon-black); border-radius: var(--radius-default); display: flex; align-items: center; justify-content: center; font-size: 1.35rem; color: var(--color-carbon-black); margin-bottom: 1.1rem; }
        .cat-card:hover .cat-icon { background: var(--color-carbon-black); color: var(--color-brand-green); }
        .cat-title { font-family: var(--font-helvetica-now-display-cn-bold) !important; font-size: 1.1rem !important; font-weight: 900 !important; text-transform: uppercase !important; margin-bottom: .6rem; }
        .cat-desc { font-size: .88rem !important; color: var(--color-muted-stone) !important; line-height: 1.6 !important; flex-grow: 1; margin-bottom: 1rem; }
        .cat-link { display: inline-flex; align-items: center; gap: .35rem; font-weight: 700; font-size: .85rem; color: var(--color-carbon-black); text-decoration: none; margin-top: auto; transition: color .2s; }
        .cat-link:hover { color: var(--color-brand-green); }
        .cu-cta { padding: 110px 0; background: var(--color-carbon-black); border-top: 2px solid var(--color-carbon-black); }
        .cu-cta .pill-accent-btn { background-color: var(--color-brand-green) !important; color: var(--color-carbon-black) !important; }
        .cu-cta .pill-accent-btn:hover { background-color: var(--color-brand-green-light) !important; }
        .btn-outline-light-cu { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; padding: .75rem 2rem; border-radius: var(--radius-default); border: 2px solid rgba(255, 255, 255, .3); background: transparent; color: rgba(255, 255, 255, .85) !important; font-weight: 700; font-size: 1rem; text-decoration: none; transition: border-color .2s, background .2s; }
        .btn-outline-light-cu:hover { border-color: rgba(255, 255, 255, .7); background: rgba(255, 255, 255, .07); color: #fff !important; }
        @media (max-width: 991px) { .cu-hero { padding: 130px 0 70px; } }
