.serv-int { width: 100%; }
.serv-int__header { margin-bottom: 30px; }
.serv-int__eyebrow { display: block; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; font-size: 14px; color: #1a1a1a; }
.serv-int__titulo { margin: 2px 0 6px; line-height: 1.05; font-weight: 800; font-size: 42px; }
.serv-int__titulo .t2 { color: #44B322; }
.serv-int__subtitulo { margin: 0; font-size: 18px; color: #444; }

.serv-int__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.serv-int__card {
    position: relative; display: block; overflow: hidden; width: 100%;
    border-radius: 18px; text-decoration: none; isolation: isolate;
    height: var(--serv-h-movil, 260px); /* tablet/móvil: misma altura para todas */
}
/* PC: fila superior más alta que la inferior (alto explícito por tarjeta) */
@media (min-width: 1025px) {
    .serv-int__card:nth-child(-n+3) { height: var(--serv-h-sup, 340px); }
    .serv-int__card:nth-child(n+4) { height: var(--serv-h-inf, 270px); }
}
.serv-int__card-bg {
    position: absolute; inset: 0; z-index: 0;
    background-size: cover; background-position: center; background-repeat: no-repeat;
    transition: transform 0.5s ease;
}
.serv-int--zoom .serv-int__card:hover .serv-int__card-bg { transform: scale(1.06); }
.serv-int__card-overlay {
    position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(to top, var(--serv-overlay, rgba(0,0,0,0.55)) 0%, rgba(0,0,0,0) 65%);
}
.serv-int__card-cont {
    position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
    display: flex; flex-direction: column; gap: 4px; padding: 20px 22px;
}
.serv-int__card-titulo { color: #fff; font-weight: 800; font-size: 22px; line-height: 1.15; }
.serv-int__card-link { color: #e6e6e6; font-size: 14px; }

@media (max-width: 1024px) { .serv-int__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) {
    .serv-int__grid { grid-template-columns: 1fr; }
    .serv-int__titulo { font-size: 30px; }
    .serv-int__card-titulo { font-size: 20px; }
}
