.public-site { font-size: var(--text-base); }
.public-site .language-picker button { font: inherit; }
.public-site .terms-page p { font-size: var(--text-base); }
.public-site .footer .site-footer-bar { padding: 0; font-size: var(--text-xs); }
.public-site .footer-inner { flex-wrap: wrap; }
.public-site .footer-links { flex-wrap: wrap; }
.public-site :is(.hero, .guide-layout, .directory-layout, .faq-layout, .model-explorer) > * { min-width: 0; }
.public-site .hero-copy h1 { line-height: 1.35; text-wrap: balance; }
.public-site .hero-copy p { font-size: var(--text-base); }
.public-site .actions { flex-wrap: wrap; }
.public-site .button { text-align: center; }
.public-site .section-description { margin-bottom: 1rem; font-size: var(--text-sm); }
.public-site .toc .toc-help { border: 0; padding: 0; }
.public-site [data-checklist-note] { margin-top: 1.125rem; }
.public-site .inline-link { text-decoration: underline; }
.public-site .model-toolbar { flex-wrap: wrap; }
.public-site .model-toolbar label { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
.public-site .model-toolbar select { min-width: 0; }
.public-site .view-tabs { max-width: 100%; flex-wrap: wrap; }
.public-site .view-tabs button { padding-inline: 0.5rem; }
.public-site .label-count { flex-wrap: wrap; gap: 0.25rem 0.75rem; }
.public-site .label-row { grid-template-columns: 1.5rem minmax(0, 1fr) minmax(0, 1fr); }
.public-site .label-row small { text-align: end; overflow-wrap: anywhere; }
.public-site .label-row code { overflow-wrap: anywhere; }
.public-site .faq-count { flex-wrap: wrap; gap: 0.5rem; }
.public-site .faq-item summary { overflow-wrap: anywhere; }
.public-site .faq-item[hidden] { display: none; }
.public-site .figure-axis { font-family: var(--font-sans); }
.public-site .figure-leader { pointer-events: none; }
.public-site :is(.figure-axis, .figure-label) { font-size: var(--text-figure); }
.public-site :is(.eyebrow, .step-number, .caption, .toc-title, .requirement .key) { font-family: var(--font-sans); }
.public-site [id] { scroll-margin-top: 1.5rem; }
.public-site .check-item { min-width: 0; }
.public-site .check-item p { margin: 0; }

@media (max-width: 760px) {
  .public-site .public-navigation { gap: 0.5rem 0.75rem; padding: 0.75rem; }
  .public-site .requirements { grid-template-columns: 1fr; }
  .public-site .requirement strong { font-size: var(--text-xl); }
  .public-site .rule-table th { width: 6rem; }
  .public-site .anatomy-panel, .public-site .label-panel { padding: 1rem; }
  .public-site .fact > div:last-child { display: block; }
  .public-site .actions > .button { max-width: 100%; }
  .public-site .code-panel pre { font-size: var(--text-xs); padding: 1rem; }
  .public-site .faq-categories button { font-size: var(--text-sm); }
}
