/* Interaction and readability fixes, loaded after the main page stylesheet. */
[hidden] { display: none !important; }
.mobile-download { visibility: hidden; }
.mobile-download.visible { visibility: visible; }

.hero-detail,
.section-intro,
.section-heading > p:last-child,
.meaning-explanation > p:first-child,
.names-copy .section-intro,
.experience .section-intro,
.download-copy > p:not(.eyebrow):not(.download-note) {
  font-size: 15px;
  line-height: 1.8;
}

.lesson-tab strong,
.tool-tab strong,
.faq-list summary {
  font-size: 14px;
  line-height: 1.6;
}

.lesson-tab small,
.tool-tab small,
.faq-list details > p,
.quiet-list li,
.progress-card-copy p,
.faq-intro > p:last-child,
.gallery-heading p:not(.eyebrow),
.gallery-bottom > p {
  font-size: 14px;
  line-height: 1.8;
}

.download-note,
.hero .download-note,
.download-copy .download-note,
.method-note,
.gallery-disclosure,
.toolkit-visual > p,
.site-footer nav,
.site-footer > small,
.mobile-download span {
  font-size: 11px;
  line-height: 1.7;
}

.screen-card .screen-label,
.full-gallery .screen-label {
  font-size: 12px;
  line-height: 1.6;
}

@media (max-width: 650px) {
  .section-intro { font-size: 14px !important; }
  .hero-description { font-size: 16px; }
  .hero-detail,
  .section-heading > p:last-child,
  .meaning-explanation > p:first-child,
  .download-copy > p:not(.eyebrow):not(.download-note) { font-size: 14px; }
  .lesson-tab small { max-width: none; }
  .tool-tab > .icon,
  .lesson-tab > .icon { flex-shrink: 0; }
  .toolkit-visual > p { max-width: 290px; }
  .faq-list details > p { max-width: 100%; }
  .gallery-bottom > p { max-width: 300px; }
  .mobile-download strong { font-size: 12px; }
  .mobile-download span { font-size: 10px; }
  .mobile-download .button { min-height: 44px; }
  .site-footer nav { gap: 15px; flex-wrap: wrap; justify-content: center; }
}
