/* =========================================
   SINGLE — Pieza individual (entrada)
   Dos columnas en desktop: media (izq. 65%) /
   texto (der. 35%) separadas por línea de 1px.
   En móvil apilado: media primero, texto después.
   ========================================= */

.lab-single {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
}

.lab-single__titulo {
    font-family: var(--tipografia-titulos);
    font-size: var(--tamanio-h1);
    font-weight: 700;
    color: var(--color-primario);
    /* Libra la cabecera fija (top 20px + caja ~62px) */
    margin: 60px 0 20px;
}

/* ── Cuerpo — dos columnas: media (izq.) / texto (der.) ── */

.lab-single__cuerpo {
    display: grid;
    grid-template-columns: 65% 35%;
    margin-top: 30px;
}

.lab-single__galeria {
    padding-right: 30px;
}

.lab-single__texto {
    padding-left: 30px;
    border-left: 1px solid var(--color-borde);
    font-family: var(--tipografia-base);
    color: var(--color-texto);
    line-height: 1.6;
}

.lab-single__texto a {
    color: var(--color-primario);
}

.lab-single__media {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 20px; /* mismo radio que las piezas del masonry */
    margin: 0 0 20px;
    background-color: var(--color-fondo-alt);
}

.lab-single__media:last-child {
    margin-bottom: 0;
}

/* ── Responsive — apilado: media primero, texto después ── */

@media (max-width: 800px) {
    .lab-single__cuerpo {
        grid-template-columns: 1fr;
        row-gap: 30px;
    }

    .lab-single__galeria {
        padding-right: 0;
    }

    .lab-single__texto {
        padding-left: 0;
        border-left: none;
    }
}
