/* Tablet layout (701px-1040px) shared across all pages. Unwrapped rules. */
.desktop-nav { display: none; }
  .menu-toggle { display: grid; }
  .hero-shell { grid-template-columns: 1fr; }
  .hero-copy { padding: 4rem 4rem 2.8rem; top: 0; margin-bottom: 0; }
  /* Tablet structure perfecting — shared across all 18 pages */
  .hero { padding: 1.2rem 0 3rem; }
  .hero-shell { overflow: clip; }
  .hero h1 { font-size: clamp(3rem, 7.5vw, 4.5rem); }
  .hero-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 1rem; }
  .hero-facts div + div { padding-left: 0; border-left: 0; }
  .hero-facts div:nth-child(3) { padding-left: 0; border-left: 0; }
  .page-intro .container, .case-hero > .container { padding: 3.5rem 2.5rem; }
  .page-intro h1 { font-size: clamp(2.8rem, 7vw, 4.5rem); }
  .cta-panel { padding: 2.8rem 2.5rem; }
  img, svg, video, canvas { max-width: 100%; height: auto; }
  table { display: block; max-width: 100%; overflow-x: auto; }
  pre, code { white-space: pre-wrap; overflow-wrap: anywhere; }
  p, h1, h2, h3, li { overflow-wrap: break-word; }
  .hero-visual { min-height: 25rem; }
  .hero-portrait { right: 4%; top: -1.1rem; height: calc(100% + 1.1rem); max-width: min(78%, 33rem); }
  .hero-project-card { right: 2rem; bottom: 2rem; }
  .hero-signature { width: min(10rem, 38%); height: auto; bottom: calc(100% + .3rem); }
  .project-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 1.1rem; }
  .strip-label { grid-column: 1 / -1; padding: 0 0 .2rem; }
  .strip-item { border-left: 0; border-top: 1px solid color-mix(in srgb, var(--foreground) 10%, transparent); padding: 1rem 0; }
  .split, .split.equal, .split.narrow-left, .contact-grid { grid-template-columns: 1fr; gap: 3.2rem; }
  .project-row { grid-template-columns: 1fr; gap: 2rem; }
  .selected-work .project-list { flex-wrap: wrap; }
  .selected-work .project-row { flex: 1 1 calc(50% - .5rem); }
  .cap-grid, .expertise-grid { grid-template-columns: repeat(2, 1fr); }
  .principle-grid { grid-template-columns: repeat(2, 1fr); }
  .tech-grid { grid-template-columns: repeat(2, 1fr); }
  .teaching-grid { grid-template-columns: repeat(2, 1fr); }
  .timeline-grid { grid-template-columns: 1fr; gap: .75rem; }
  .selected-grid { grid-template-columns: 1fr; }
  .cta-panel { align-items: flex-start; flex-direction: column; }
  .footer-grid { grid-template-columns: 1.2fr 1fr; }
