/* ==========================================================================
   PB Design System
   CORE · Texto
   ========================================================================== */

/* --------------------------------------------------------------
   Bloques de lectura
-------------------------------------------------------------- */

.pb-root .texto{

    max-width:65ch;

}

.pb-root .texto-sm{

    max-width:50ch;

}

.pb-root .texto-lg{

    max-width:80ch;

}

/* --------------------------------------------------------------
   Alineación
-------------------------------------------------------------- */

.pb-root .contenedor p,
.pb-root .contenedor div[data-texto],
.pb-root .contenedor .section-header__text,
.pb-root .contenedor-sm p,
.pb-root .contenedor-sm div[data-texto],
.pb-root .contenedor-sm .section-header__text,
.pb-root .contenedor-md p,
.pb-root .contenedor-md div[data-texto],
.pb-root .contenedor-md .section-header__text,
.pb-root .contenedor-lg p,
.pb-root .contenedor-lg div[data-texto],
.pb-root .contenedor-lg .section-header__text,
.pb-root .contenedor-xl p,
.pb-root .contenedor-xl div[data-texto],
.pb-root .contenedor-xl .section-header__text {
    text-align: justify;
}

.pb-root .texto-izquierda{

    text-align:left;

}

.pb-root .texto-centro{

    text-align:center;

}

.pb-root .texto-derecha{

    text-align:right;

}

/* --------------------------------------------------------------
   Peso
-------------------------------------------------------------- */

.pb-root .texto-light{

    font-weight:300;

}

.pb-root .texto-normal{

    font-weight:400;

}

.pb-root .texto-medium{

    font-weight:500;

}

.pb-root .texto-semibold{

    font-weight:600;

}

.pb-root .texto-bold{

    font-weight:700;

}

/* --------------------------------------------------------------
   Colores
-------------------------------------------------------------- */

.pb-root .texto-bordoy{

    color:var(--color-bordoy);

}

.pb-root .texto-dorado{

    color:var(--color-dorado);

}

.pb-root .texto-principal{

    color:var(--color-texto);

}

.pb-root .texto-blanco{

    color:var(--color-blanco);

}

.pb-root .texto-error{

    color:var(--color-rojo);

}

.pb-root .texto-exito{

    color:var(--color-verde);

}

/* --------------------------------------------------------------
   Transformación
-------------------------------------------------------------- */


.pb-root .texto-capitalizar{

    text-transform:capitalize;

}

.pb-root .texto-nowrap{

    white-space:nowrap;

}

/* --------------------------------------------------------------
   Lectura cómoda
-------------------------------------------------------------- */

.pb-root .texto-lectura{

    line-height:1.7;

}

.pb-root .texto-destacado{

    font-style:italic;

}

/* --------------------------------------------------------------
   Etiqueta de texto / Kicker
-------------------------------------------------------------- */

.pb-root .texto-etiqueta {
    font-family: var(--fuente-acento);
    font-size: var(--fs-100);
    font-weight: 700;
    text-transform: capitalize;
    letter-spacing: .08em;
    color: var(--color-seleccion);
}

/* --------------------------------------------------------------
   Tipografía Informativa Estándar (AGENTS.md Regla 6)
   -------------------------------------------------------------- */

.pb-root .texto-titulo {
    font-family: var(--fuente-display);
    font-size: clamp(var(--fs-700), 6vw, var(--fs-900));
    font-weight: 700;
    line-height: 1.05;
    color: var(--color-bordoy);
}

.pb-root .texto-encabezado {
    font-family: var(--fuente-display); 
    font-size: clamp(var(--fs-500), 3vw, var(--fs-700));
    font-weight: 700;
    line-height: 1.15;
    color: var(--color-bordoy);
}

.pb-root .texto-base {
    font-family: var(--fuente-texto);
    font-size: var(--fs-300);
    line-height: 1.55;
    color: var(--color-texto);
}

.pb-root .texto-pequeño,
.pb-root .texto-pequeño p {
    font-family: var(--fuente-texto);
    font-size: var(--fs-200); /* Unificado con reseñas como texto pequeño real */
    line-height: 1.55;
    color: var(--color-texto);
    margin: 0;
}

.pb-root .texto-kicker {
    font-family: var(--fuente-acento);
    font-size: var(--fs-400);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--color-seleccion);
}

.pb-root .texto-link {
    font-family: var(--fuente-acento);
    font-size: var(--fs-300);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 4px;
    color: var(--color-bordoy);
    transition: color var(--transition-base);
}

.pb-root .texto-link:hover {
    color: var(--color-dorado);
}