.hero-sol {
      min-height: 360px;
      background: linear-gradient(to right, rgba(8,20,32,.88) 55%, rgba(8,20,32,.4)),
                  url('https://images.unsplash.com/photo-1551076805-e1869033e561?w=1400&q=80') center/cover no-repeat;
    }
    .hero-sol h1 { font-family: var(--font-h); font-size: 42px; font-weight: 800; color: var(--white); max-width: 560px; line-height: 1.16; margin-bottom: 16px; }
    .hero-sol h1 span { color: var(--teal); }
    .hero-sol p { color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.7; max-width: 480px; }

    /* Orthobone */
    .ortho-section { padding: 72px 0; background: var(--white); }
    .ortho-label { font-family: var(--font-h); font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--teal); margin-bottom: 10px; }
    .ortho-h2 { font-family: var(--font-h); font-size: 28px; font-weight: 800; margin-bottom: 16px; }
    .ortho-p { font-size: 14px; color: var(--gray); line-height: 1.7; margin-bottom: 28px; }
    .ortho-feats { display: flex; gap: 32px; flex-wrap: wrap; margin-top: 8px; }
    .ortho-feat { display: flex; align-items: flex-start; gap: 10px; }
    .ortho-feat .icon-circle.small { flex-shrink: 0; }
    .ortho-feat div h4 { font-family: var(--font-h); font-size: 13px; font-weight: 700; margin-bottom: 3px; }
    .ortho-feat div p  { font-size: 12px; color: var(--gray); line-height: 1.5; }

    /* Orthobone dark card */
    .ortho-card {
      /* background: var(--dark2); border-radius: 16px; padding: 36px 32px; */
      display: flex; flex-direction: column; align-items: center; justify-content: center;
      text-align: center; min-height: 280px;
    }
    .ortho-card img {border-radius: 24px;}
    .ortho-card .icon-circle { margin: 0 auto 16px; }
    .ortho-card h3 { font-family: var(--font-h); font-size: 18px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
    .ortho-card p  { font-size: 13px; color: rgba(255,255,255,.5); letter-spacing: 1px; text-transform: uppercase; }

    /* Vanguardia band */
    .vanguardia-band {
      background: linear-gradient(135deg, var(--light-bg) 0%, #d0ede8 100%);
      padding: 72px 0; text-align: center;
    }
    .vanguardia-band h2 { font-family: var(--font-h); font-size: 36px; font-weight: 800; color: var(--dark); }
    .vanguardia-band h2 span { color: var(--teal); }
    .vanguardia-band p  { font-size: 14px; color: var(--gray); line-height: 1.7; max-width: 560px; margin: 14px auto 0; }

    /* Consultoría especialidades */
    .esp-card { background: var(--white); border-radius: var(--radius); padding: 28px 24px; border: 1px solid var(--border); }
    .esp-card .esp-icon { width: 40px; height: 40px; background: rgba(0,201,167,.1); border-radius: 8px; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
    .esp-card .esp-icon svg { width: 20px; stroke: var(--teal); fill: none; stroke-width: 1.8; }
    .esp-card h3 { font-family: var(--font-h); font-size: 16px; font-weight: 700; margin-bottom: 10px; }
    .esp-card .como { font-family: var(--font-h); font-size: 12px; font-weight: 700; color: var(--teal); text-transform: uppercase; letter-spacing: 1px; margin: 14px 0 6px; }
    .esp-card ul { list-style: none; padding: 0; }
    .esp-card ul li { font-size: 13px; color: var(--gray); padding: 3px 0; padding-left: 16px; position: relative; }
    .esp-card ul li::before { content: '–'; position: absolute; left: 0; color: var(--teal); }
    .esp-card .benef { font-family: var(--font-h); font-size: 12px; font-weight: 700; color: var(--dark); text-transform: uppercase; letter-spacing: 1px; margin: 12px 0 6px; }
    .esp-card .benef-txt { font-size: 13px; color: var(--gray); line-height: 1.6; }

    /* Casos de éxito */
    .casos-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; margin-top: 40px; }
    .caso-card { background: var(--white); border-radius: var(--radius); padding: 24px; border: 1px solid var(--border); font-size: 13.5px; color: var(--gray); line-height: 1.65; font-style: italic; }

    /* Pilares estratégicos */
    .pilares-grid-sol { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
    .pilar-item { display: flex; align-items: flex-start; gap: 10px; border: 1px solid var(--teal); padding: 20px; border-radius: 10px; }
    .pilar-check { flex-shrink: 0; width: 20px; height: 20px; background: var(--teal); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-top: 2px; }
    .pilar-check svg { width: 10px; stroke: white; fill: none; stroke-width: 2.5; }
    .pilar-item p { font-size: 13px; color: rgba(255,255,255,.75); line-height: 1.5; font-family: var(--font-h); font-weight: 600; }

    /* Bottom CTA dark card */
    .sol-cta { background: var(--dark); padding: 72px 0; text-align: center; }
    .sol-cta-inner { max-width: 600px; margin: 0 auto; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 18px; padding: 52px 40px; }
    .sol-cta h2 { font-family: var(--font-h); font-size: 28px; font-weight: 800; color: var(--white); margin-bottom: 12px; }
    .sol-cta p  { font-size: 14px; color: rgba(255,255,255,.55); margin-bottom: 0; }

    @media(max-width:900px){
      .casos-grid, .pilares-grid-sol { grid-template-columns: 1fr; }
      .ortho-feats { flex-direction: column; gap: 16px; }
    }