/**
 * Pentagrafika 0.17.0 — aplicación del contrato visual 1.0.
 */

.pg-site {
  color: var(--pg-color-ink);
  font-family: var(--pg-font-body);
  font-size: var(--pg-type-body);
  line-height: var(--pg-line-body);
}

.pg-site .pg-lab-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .85rem;
  margin-top: .45rem;
}

.pg-site .pg-lab-footer__social a {
  font-size: .76rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.pg-site :where(h1, h2, h3) {
  font-family: var(--pg-font-display);
  font-weight: var(--pg-font-weight-strong);
  text-wrap: balance;
}

.pg-site :where(h1, h2) {
  letter-spacing: var(--pg-tracking-display);
}

.pg-site :where(h3) {
  letter-spacing: var(--pg-tracking-heading);
}

.pg-width-reading { width: var(--pg-layout-reading); }
.pg-width-copy { width: var(--pg-layout-copy); }
.pg-width-content { width: var(--pg-layout-content); }
.pg-width-wide { width: var(--pg-layout-wide); }
.pg-width-stage { width: var(--pg-layout-stage); }
.pg-width-full { width: var(--pg-layout-full); }

:where(.pg-width-reading, .pg-width-copy, .pg-width-content, .pg-width-wide, .pg-width-stage) {
  margin-inline: auto;
}

.pg-site :is(.pg-button, .pgse-button, .pg-lab-nav__cta) {
  min-height: var(--pg-button-height);
  border-radius: var(--pg-radius-small);
  font-weight: var(--pg-font-weight-strong);
  transition: transform var(--pg-transition-fast), background var(--pg-transition-fast), border-color var(--pg-transition-fast);
}

.pg-site :is(.pg-button, .pgse-button, .pg-lab-nav__cta):hover {
  transform: translateY(-2px);
}

/* Home: todos los escenarios principales comparten la misma medida. */
.pg-site :is(
  .pg-lab-nav,
  .pg-lab-statement p,
  .pg-lab-footer__top,
  .pg-lab-footer__middle,
  .pg-lab-footer__bottom,
  .pg-direction__head,
  .pg-direction__chapters,
  .pg-direction__continuity,
  .pg-work__head,
  .pg-work__grid,
  .pg-work__all,
  .pg-method__head,
  .pg-method__steps,
  .pg-service-stage__inner,
  .pg-work__foot,
  .pg-work__viewport,
  .pg-visual-reel__head,
  .pg-visual-reel__grid
) {
  width: var(--pg-layout-stage);
}

/* Interiores: cabeceras, rejillas y pruebas comparten contenido amplio. */
.pg-site :is(
  .pg-commercial-section__head,
  .pg-commercial-service-grid,
  .pg-commercial-three,
  .pg-commercial-problems,
  .pg-commercial-checks,
  .pg-commercial-proof > div:first-child,
  .pg-commercial-proof__items,
  .pg-commercial-process > header,
  .pg-commercial-process > div,
  .pg-commercial-links,
  .pg-work-index-grid,
  .pg-commercial-related > div,
  .pg-blog-pagination
) {
  width: var(--pg-layout-wide);
}

/* Lectura y copy: las piezas editoriales dejan de inventar medidas propias. */
.pg-site :is(
  .pg-commercial-note,
  .pg-blog-archive__hero > div,
  .pg-legal-hero > *,
  .pg-legal-content > section,
  .pg-legal-warning
) {
  width: var(--pg-layout-copy);
}

.pg-site :is(.pg-article-content, .pg-case-story > div:last-child) {
  width: var(--pg-layout-reading);
}

@media (max-width: 760px) {
  .pg-site :is(
    .pg-lab-nav,
    .pg-lab-statement p,
    .pg-lab-footer__top,
    .pg-lab-footer__middle,
    .pg-lab-footer__bottom,
    .pg-direction__head,
    .pg-direction__chapters,
    .pg-direction__continuity,
    .pg-work__head,
    .pg-work__grid,
    .pg-work__all,
    .pg-method__head,
    .pg-method__steps,
    .pg-service-stage__inner,
    .pg-work__foot,
    .pg-work__viewport,
    .pg-visual-reel__head,
    .pg-visual-reel__grid,
    .pg-commercial-section__head,
    .pg-commercial-service-grid,
    .pg-commercial-three,
    .pg-commercial-problems,
    .pg-commercial-checks,
    .pg-commercial-proof > div:first-child,
    .pg-commercial-proof__items,
    .pg-commercial-process > header,
    .pg-commercial-process > div,
    .pg-commercial-links,
    .pg-work-index-grid,
    .pg-commercial-related > div,
    .pg-blog-pagination,
    .pg-commercial-note,
    .pg-blog-archive__hero > div,
    .pg-legal-hero > *,
    .pg-legal-content > section,
    .pg-legal-warning,
    .pg-article-content,
    .pg-case-story > div:last-child
  ) {
    width: calc(100vw - var(--pg-gutter) - var(--pg-gutter));
  }
}
