/* Mobile readability: useful copy at 16px, secondary labels at 12px or more. */
@media (max-width: 760px) {
  body { font-size: 16px; }
  .header nav { font-size: 17px; }
  .header nav a { padding: 16px 0; }
  .menu-button { width: 46px; height: 46px; }
  .hero .eyebrow, .eyebrow, .time-copy > .eyebrow,
  .founder-copy .eyebrow, .contact-section .eyebrow {
    font-size: 12px; line-height: 1.65; letter-spacing: .045em;
  }
  .hero-description, .approach-copy > p:not(.lead), .product-heading > p,
  .loop-intro > p, .time-copy > p:not(.eyebrow),
  .founder-copy > p:not(.eyebrow), .contact-bottom p {
    font-size: 16px; line-height: 1.75; max-width: 100%;
  }
  .button { font-size: 16px; min-height: 52px; padding: 16px 20px; }
  .hero-secondary { font-size: 15px; margin: 12px 0 0; min-height: 46px; display: flex; width: fit-content; gap: 24px; }
  .hero-art { margin-top: 0; }
  .art-label { font-size: 12px; line-height: 1.4; gap: 12px; }
  .art-label-top { left: 12%; }
  .art-label-bottom { right: 12%; bottom: 42px; }
  .art-coordinate { display: none; }
  .motion-toggle { width: 44px; height: 44px; font-size: 15px; bottom: 0; }
  .hero-bottom { font-size: 13px; line-height: 1.6; align-items: flex-start; }
  .hero-bottom > span { max-width: 62%; }
  .hero-bottom > a { min-height: 44px; align-items: center; gap: 8px; }
  .section-index { font-size: 12px; line-height: 1.6; flex-wrap: wrap; gap: 10px 18px; }
  .section-index > span:last-child { text-align: left; }
  .approach-copy .lead { font-size: 21px; line-height: 1.55; }
  .text-link, .loop-intro > .text-link, .founder-copy .text-link {
    font-size: 15px; line-height: 1.55; min-height: 46px; gap: 18px;
  }
  .principles > div > span { font-size: 13px; }
  .principles strong { font-size: 17px; line-height: 1.5; }
  .principles p { font-size: 15px; line-height: 1.7; }
  .loop-intro { padding: 26px 22px; }
  .loop-note { font-size: 14px; line-height: 1.7; }
  .workflow { padding: 24px 16px; }
  .workflow-header { font-size: 12px; line-height: 1.6; flex-wrap: wrap; gap: 5px; }
  .demo-label { font-size: 12px; }
  .workflow-tabs { grid-template-columns: 1fr 1fr; gap: 14px 18px; }
  .workflow-tabs button { font-size: 14px; line-height: 1.5; padding: 8px 0 12px; min-height: 68px; }
  .workflow-tabs button > span { font-size: 12px; margin-bottom: 4px; }
  .workflow-visual { min-height: 260px; }
  .source-stack { width: 45%; }
  .source-document { font-size: 12px; line-height: 1.4; padding: 12px 7px; gap: 6px; min-height: 55px; overflow-wrap: anywhere; }
  .source-document .file-icon { display: none; }
  .flow-lines { width: 12%; }
  .output-document { width: 43%; padding: 16px 10px; min-height: 218px; }
  .output-caption { font-size: 10px; line-height: 1.5; letter-spacing: .02em; }
  .output-document strong { font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; }
  .output-document > span:last-of-type { font-size: 12px; line-height: 1.5; display: block; margin-top: 5px; }
  .workflow-explanation { display: block; min-height: 160px; }
  .workflow-explanation > span { display: block; font-size: 12px; margin-bottom: 10px; }
  .workflow-explanation h3 { font-size: 20px; line-height: 1.3; margin-bottom: 10px; }
  .workflow-explanation p { font-size: 16px; line-height: 1.7; }
  .product-footnote { font-size: 13px; line-height: 1.6; flex-direction: column; gap: 10px; }
  .calculator-top { font-size: 12px; line-height: 1.5; }
  .time-calculator { padding: 24px 20px; }
  .time-calculator label { font-size: 15px; line-height: 1.5; gap: 14px; }
  .time-calculator output { font-size: 15px; white-space: nowrap; }
  .time-calculator input { height: 32px; margin: 12px 0 24px; }
  .time-result { gap: 15px; }
  .time-result strong { font-size: 64px; }
  .time-result > div { font-size: 16px; }
  .time-result > div > span { font-size: 13px; }
  .calculator-note { font-size: 13px; line-height: 1.7; }
  .founder-signature strong { font-size: 16px; }
  .founder-signature small { font-size: 14px; line-height: 1.6; }
  .founder-tags span { font-size: 12px; line-height: 1.5; }
  .footer > div:first-child p { font-size: 14px; line-height: 1.7; }
  .footer-links { font-size: 15px; gap: 10px 28px; }
  .footer-links a { padding: 10px 0; min-height: 44px; }
  .footer-bottom { font-size: 12px; line-height: 1.7; }
  .footer-bottom a { min-height: 44px; display: inline-flex; align-items: center; }
}

/* Larger body copy across desktop and mobile. */
main p:not(.eyebrow):not(.section-index),.principles p,.workflow-explanation p,.contact-bottom p{font-size:18px!important;line-height:1.75!important}
.hero-description,.approach-copy .lead{font-size:20px!important}
.footer>div:first-child p,.footer-links{font-size:15px!important;line-height:1.7}
