/* ============================================
   ALIGN.CSS — inner pages follow the homepage (v6) rules
   Load last. Monochrome, DM Sans bold display, DM Mono labels, 3px radius.
============================================ */

/* Display type: bold, tight, like the homepage hero */
body h1, body h2,
body .cs-hero__heading, body .cs-section__heading,
body .about-hero__heading, body .about-section__heading,
body .about-testimonials__heading, body .portfolio-hero__heading,
body .portfolio-card__title {
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: -0.03em;
  text-wrap: balance;
}
body .contact-sheet__heading { font-weight: 700; letter-spacing: -0.03em; }
body h1 em, body h2 em { font-weight: 700; font-style: italic; }
body .portfolio-card__title, body .cs-section__heading { font-weight: 600; }

/* Labels and eyebrows: DM Mono, uppercase, wide tracking */
body .eyebrow, body .cs-section__tag, body .cs-overview__label,
body .portfolio-card__eyebrow, body .portfolio-work__company,
body .about-skills__label, body .about-testimonials__group-label,
body .cs-nav__label {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}

/* Tags: outlined, like homepage cards */
body .tag, body .tag--neutral {
  background: transparent;
  border: 1px solid var(--color-border);
  border-radius: 3px;
  color: var(--color-text-secondary);
  font-size: 11px;
  letter-spacing: 0.04em;
  padding: 3px 8px;
}

/* Buttons and nav CTA: square-ish corners */
body .btn, body .nav__cta { border-radius: 3px; }

/* Contact form: bordered fields, same as homepage */
body .contact-sheet__field {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 3px;
  padding: 12px 14px;
}
body .contact-sheet__field:focus { border-color: var(--color-text-primary); outline: none; }

/* Portfolio card images: whole artwork on a dark ground, like homepage */
body .portfolio-card__image { background: #0F1E36; }
body .portfolio-card__image img { object-fit: contain; }
body a[href="titan.html"] .portfolio-card__image { background: #1B2438; }
body a[href="checkin.html"] .portfolio-card__image { background: #0A2140; }

/* Keyboard focus visible everywhere */
:focus-visible { outline: 3px solid var(--color-text-primary); outline-offset: 4px; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none !important; }
}

/* Hero images: show the whole screen instead of cropping it */
body .cs-hero__image { object-fit: contain; background: var(--color-surface-subtle); }

/* Phone screenshots: keep them phone-sized, centered */
body .cs-asset-row--phones .cs-asset-row__grid {
  grid-template-columns: repeat(2, minmax(0, 320px));
  justify-content: center;
}
@media (max-width: 600px) {
  body .cs-asset-row--phones .cs-asset-row__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
