/* The approved hero stays unchanged, apart from moving its vertical annotation
   clear of the scroll arrow. All type changes below are scoped outside it. */
.creative-desk .desk-coordinate { bottom: 140px; }

.site-header nav, .site-header nav a, .site-header .contact-link { font-size: 18px; }
.site-header nav { gap: 40px; }
.site-header nav sup { font-size: 12px; }

.brand-strip p { font-size: 14px; min-width: 145px; line-height: 1.7; }
.work-section .section-topline > .micro,
.about-section .section-topline > .micro,
.experience-section .section-topline > .micro,
.impact-intro > .micro,
.research-section .micro,
.process-header > .micro,
.process-detail > .micro { font-size: 14px; letter-spacing: .7px; line-height: 1.7; }

.work-intro { max-width: 450px; }
.work-intro p { font-size: 20px; line-height: 1.75; }
.work-intro .text-link { font-size: 17px; }
.work-section .filters { gap: 10px; }
.work-section .filters button { font-size: 17px; padding: 11px 18px; min-height: 48px; }
.work-section .filters sup { font-size: 12px; }
.work-section .view-toggle { font-size: 17px; min-height: 48px; }
.work-toolbar { gap: 15px 24px; }
.project-meta .micro, .index-view .project-meta .micro {
  font-size: 14px; line-height: 1.7; letter-spacing: .4px;
}
.project-meta h3 { font-size: 21px; line-height: 1.4; }
.project-meta { align-items: start; }
.project-cover .cover-top, .project-cover .cover-cta {
  font-size: 13px; line-height: 1.5; letter-spacing: .3px;
}
.project-cover .cover-top { gap: 12px; }
.project-cover .cover-top > span:last-child { flex-shrink: 0; }
.project-cover .cover-top > span:first-child { max-width: 82%; }
.project-cover .cover-cta > span { flex-shrink: 0; }
.project-cover .cover-stamp { font-size: 12px; }
.work-footnote { font-size: 13px; line-height: 1.8; letter-spacing: .3px; }
.impact-stats p { font-size: 17px; line-height: 1.6; }
.stat-note { font-size: 14px; line-height: 1.8; }

.about-copy > p { font-size: 18px; line-height: 1.85; }
.about-links .button, .about-links .text-link { font-size: 17px; }
.about-links .button { min-height: 48px; }
.process-header > p { font-size: 17px; line-height: 1.75; }
.process-buttons > button { font-size: 16px; line-height: 1.4; padding: 12px; }
.process-buttons > button > span { font-size: 13px; }
.process-buttons > button small { font-size: 19px; line-height: 1.3; }
.process-detail p { font-size: 18px; line-height: 1.8; }
.process-detail .text-link { font-size: 16px; }
.research-section > div > p, .experience-grid > div > p { font-size: 18px; line-height: 1.8; }
.research-label, .research-studies summary small { font-size: 14px; line-height: 1.7; }
.research-studies details > div p, .timeline details > div p { font-size: 18px; line-height: 1.8; }
.research-studies details > div .micro { font-size: 13px; }
.timeline .timeline-date { font-size: 14px; line-height: 1.7; }
.timeline summary small { font-size: 16px; line-height: 1.6; }
.experience-section .text-link { font-size: 16px; }
.contact-top .micro { font-size: 14px; line-height: 1.8; }
.contact-bottom > a:not(:first-child), .contact-bottom #copy-email { font-size: 16px; }
.contact-bottom #copy-email { min-height: 46px; }
.contact-bottom > a:first-child { font-size: 20px; }
.copy-status { font-size: 16px; }
footer, footer > a:last-child, #motion-toggle { font-size: 14px; line-height: 1.7; }

.dialog-top > .micro, .dialog-top > button { font-size: 14px; }
.dialog-body .project-category { font-size: 14px; line-height: 1.8; }
.project-story h3 { font-size: 14px; }
.project-story p, .project-story li { font-size: 18px; line-height: 1.8; }
.project-outcome p { font-size: 17px; line-height: 1.8; }
.project-outcome small { font-size: 14px; line-height: 1.75; }
.media-tabs button { font-size: 16px; min-width: 46px; min-height: 44px; }
.media-caption { font-size: 17px; line-height: 1.8; }
.media-fallback, .project-reference { font-size: 15px; line-height: 1.8; }
.project-link-list a { font-size: 17px; }
.dialog-bottom > button { font-size: 16px; }
.dialog-bottom .micro { font-size: 13px; }

@media (max-width: 1100px) {
  .work-section .filters button { font-size: 16px; }
  .work-toolbar { flex-wrap: wrap; }
  .brand-strip > .wrap { gap: 25px; }
  .brand-strip p { min-width: 115px; }
  .process-buttons > button { font-size: 15px; }
}
@media (max-width: 800px) {
  .site-header nav, .site-header nav a, .site-header .contact-link { font-size: 16px; }
  .site-header nav { gap: 22px; }
  .work-intro { max-width: 350px; }
  .work-intro p { font-size: 18px; }
  .project-meta .micro, .index-view .project-meta .micro { font-size: 13px; }
  .project-meta h3 { font-size: 19px; }
  .project-cover .cover-top, .project-cover .cover-cta { font-size: 12px; }
  .project-cover .cover-stamp { display: none; }
  .impact-stats p { font-size: 16px; }
  .about-links { flex-wrap: wrap; }
  .contact-top { gap: 20px; }
  .media-fallback { flex-wrap: wrap; }
}
@media (max-width: 600px) {
  .work-grid { grid-template-columns: 1fr; }
  .work-grid .project-card { grid-column: 1; }
  .section-heading { display: block; }
  .work-intro { display: block; max-width: none; margin-top: 24px; }
  .work-intro p { max-width: none; margin-bottom: 18px; }
  .work-intro p br { display: none; }
  .work-intro .text-link { font-size: 16px; }
  .work-section .filters button { font-size: 16px; padding: 10px 15px; }
  .work-section .view-toggle { font-size: 16px; }
  .project-meta h3 { font-size: 21px; }
  .project-cover .cover-top, .project-cover .cover-cta { font-size: 13px; }
  .project-cover .cover-top { left: 20px; right: 20px; }
  .project-cover .cover-cta { left: 20px; right: 20px; }
  .boat-cover { min-height: 390px; }
  .boat-cover .boat-cover-brands { top: 75px; right: 20px; }
  .boat-cover .boat-cover-type { top: 140px; font-size: clamp(50px, 12vw, 60px); line-height: .85; }
  .boat-cover .boat-cover-type em { font-size: inherit; }
  .boat-cover .ball-art { width: 100px; height: 100px; right: -50px; top: 220px; }
  .chop-cover .chop-cover-type { top: 145px; font-size: clamp(46px, 13vw, 60px); }
  .chop-cover .chop-cover-type em { font-size: 43px; }
  .chop-cover .chop-sticker { top: 57px; width: 70px; height: 70px; font-size: 10px; }
  .process-buttons { grid-template-columns: 1fr; gap: 12px; }
  .process-buttons > button {
    width: 100%; height: auto; min-height: 110px; border-radius: 22px;
    font-size: 17px; padding: 16px 20px;
  }
  .process-buttons > button small { font-size: 20px; max-width: none; }
  .process-buttons > button.active, .process-buttons > button:hover { transform: none; }
  .impact-stats p { font-size: 15px; }
  .stat-note { font-size: 14px; }
  .research-studies summary small { font-size: 13px; }
  .timeline .timeline-date { font-size: 13px; }
  .contact-top .micro { font-size: 13px; }
  .contact-bottom > a:first-child { font-size: 18px; }
  .contact-bottom > a:not(:first-child), .contact-bottom #copy-email { font-size: 15px; }
  .dialog-top > .micro, .dialog-top > button { font-size: 12px; }
  .dialog-body .project-category, .project-story h3 { font-size: 13px; }
  .project-story p, .project-story li { font-size: 17px; }
  .project-outcome p { font-size: 17px; }
  .media-caption { font-size: 17px; }
  .media-fallback, .project-reference { font-size: 14px; }
  .dialog-bottom > button { font-size: 15px; }
}
@media (max-width: 540px) {
  .site-header nav a, .site-header .contact-link { font-size: 16px; }
  .site-header .contact-link { gap: 12px; }
  .brand-strip p { font-size: 13px; }
  .work-section .section-topline > .micro,
  .about-section .section-topline > .micro,
  .experience-section .section-topline > .micro { font-size: 13px; }
}
@media (max-width: 360px) {
  .site-header nav { margin-left: 0; }
  .site-header nav a, .site-header .contact-link { font-size: 15px; }
  .site-header .contact-link { gap: 8px; }
  .project-cover .cover-top, .project-cover .cover-cta { font-size: 12px; }
  .project-meta .micro { font-size: 12px; }
  .impact-stats { gap: 8px; }
  .impact-stats > div { padding-left: 9px; }
  .impact-stats p { font-size: 14px; }
  .index-view .project-card { grid-template-columns: 65px 1fr; gap: 12px; }
  .index-view .project-meta h3 { font-size: 24px; }
}
