    .fw-500{
        font-weight: 500;
    }

    /* --- NAVEGACIÓN --- */
    .nav-wrapper {
        position: absolute;
        top: 0;
        z-index: 1000;
        width: 100%;
    }
    .nav-logo { max-height: 55px; }

    /* --- HERO & FONDOS --- */
    .section-hero {
        position: relative;
        min-height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 100px 0;
    }

    .hero-bg-wrapper {
        position: absolute;
        top: 0; left: 0; width: 100%; height: 100%;
        z-index: 1;
    }
    .hero-bg-wrapper img {
        width: 100%; height: 100%; object-fit: cover;
    }

    .content-z {
        position: relative;
        z-index: 10;
        width: 100%;
        padding: 120px 20px 60px;
    }

    /* --- TIPOGRAFÍA --- */
    .title-semibold { font-size: 3.5rem; line-height: 1.1; font-family: 'Bitter', serif; }
    .subtitulo-familia {
        font-size: 28px;
        font-weight: 600;
        border-bottom: 3px solid var(--color-yellow);
        display: inline-block;
        margin-top: 1rem;
        font-family: 'Bitter', serif;
    }
    .hero-lead { 
        max-width: 800px; 
        margin: 0 auto; 
        font-weight: 300;
        line-height: 1.6;
        color: #000000;
        font-family: 'Bitter', serif;
    }

    /* --- TARJETAS DIFERENCIALES --- */
    .card-diferencial-custom {
        border-radius: 2.5rem;
        height: 450px;
        display: flex;
        flex-direction: column;
        padding: 2.5rem;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        position: relative;
        overflow: hidden;
        border: none;
        margin-bottom: 1rem;
    }

    .card-diferencial-custom:hover {
        transform: translateY(-10px);
        box-shadow: 0 20px 40px rgba(0,0,0,0.15);
    }

    .card-title-white {
        color: white;
        font-weight: 600;
        font-size: 1.3rem;
        line-height: 1.3;
        z-index: 2;
        font-family: 'Bitter', serif;
    }

    .card-line {
        width: 45px;
        height: 4px;
        background-color: var(--color-yellow);
        margin-top: 10px;
        z-index: 2;
    }

    .card-img-bottom {
        width: 100%;
        height: 200px;
        object-fit: cover;
        border-radius: 1.8rem;
        margin-top: auto;
        z-index: 2;
    }

    /* --- SECCIÓN IMPACTO --- */
    .impact-section {
        background: linear-gradient(180deg, #161b2e 0%, #0d1117 100%);
        color: white;
        font-family: 'Bitter', serif;
    }

    .impact-title {
        color: var(--color-yellow);
        font-size: 2.5rem;
        letter-spacing: 2px;
        margin-bottom: 1.5rem;
        font-family: 'Bitter', serif;
    }

    .impact-subtitle {
        color: #fff;
        font-size: 1.8rem;
        letter-spacing: 2px;
        font-family: 'Bitter', serif;
    }

    .impact-lead {
        max-width: 700px;
        font-weight: 300;
        font-size: 1.1rem;
        opacity: 0.8;
    }

    .impact-grid-container {
        border-radius: 1.5rem;
        overflow: hidden;
        margin-top: 3rem;
    }

    .impact-box {
        padding: 2.5rem 1rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        text-align: center;
    }

    .impact-box span { font-weight: 600; font-size: 1.1rem; }
    .impact-box img { height: 40px; filter: brightness(0) invert(1); }

    .bg-teal-hands { background-color: var(--color-teal); }
    .bg-yellow-hands { background-color: var(--color-yellow); }
    .bg-pink-hands { background-color: var(--color-pink); }
    .bg-purple-hands { background-color: var(--color-purple); }

    .counter-box {
        background-color: white;
        color: #1a1a1a;
        padding: 2rem 1rem;
        text-align: center;
        height: 150px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        border-right: 1px solid #eee;
    }

    .counter-box h3 { font-size: 2rem; font-weight: 700; margin-bottom: 5px; }

    .col-impact:nth-child(1) .counter-box h3 { color: var(--color-teal); }
    .col-impact:nth-child(2) .counter-box h3 { color: var(--color-yellow); }
    .col-impact:nth-child(3) .counter-box h3 { color: var(--color-pink); }
    .col-impact:nth-child(4) .counter-box h3 { color: var(--color-purple); }

    /* --- RESPONSIVE --- */
    @media (max-width: 991px) {
        .impact-grid-container { border-radius: 1rem; }
        .counter-box { height: auto; padding: 1.5rem 0.5rem; border-right: none; border-bottom: 1px solid #eee; }
        .impact-box { padding: 1.5rem 0.5rem; }
        .impact-title { font-size: 1.8rem; }
    }

    @media (max-width: 768px) {
        .title-semibold { font-size: 2.5rem; }
        .hero-lead { font-size: 1.1rem; }
        .content-z { padding-top: 100px; }
        .card-diferencial-custom { height: 400px; padding: 1.8rem; }
        .card-title-white { text-align: center; }
        .section-hero { min-height: auto; padding: 50px 0;}
        #vision .hero-bg-wrapper img { object-position: 20% center; }
        .hands-trabaja-text { text-align: center; }
    }