/* Mobile refinements for the selected public homepage. */
.hero-title-line { display:block; }
.hero-mobile-break { display:none; }
body[data-site="public"] .skip-link:not(:focus) {
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
}

@media(max-width:900px) {
  body[data-site="public"] .site-header { height:68px; }
  body[data-site="public"] .site-header .brand { min-height:44px; }
  body[data-site="public"] .menu-toggle { min-height:44px; font-size:12px; border:0; padding:0; gap:10px; }
  body[data-site="public"] .menu-toggle span { display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--line); border-radius:50%; font-size:18px; transition:transform .2s ease; }
  body[data-site="public"] .menu-toggle[aria-expanded="true"] span { transform:rotate(45deg); }
  body[data-site="public"].afterglow-nocturne .home-hero {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:repeat(5,auto);
    min-height:0;
    gap:16px;
    padding:28px 24px max(32px,env(safe-area-inset-bottom));
    justify-items:center;
    text-align:center;
  }
  body[data-site="public"] .home-copy { display:contents; }
  body[data-site="public"] .home-eyebrow.home-eyebrow--large { grid-row:1; font-size:10px; letter-spacing:1.3px; line-height:1.6; }
  body[data-site="public"][data-font] .home-copy h1 { grid-row:2; font-size:clamp(30px,9.5vw,52px); line-height:1.1; margin:0; white-space:normal; }
  body[data-site="public"][data-font][data-ai-size="compact-20"] .home-copy h1 em { font-size:1em; }
  body[data-site="public"] .hero-title-line { display:inline; }
  body[data-site="public"] .hero-mobile-break { display:inline; }
  body[data-site="public"] .home-copy #home-description { grid-row:4; width:100%; max-width:340px; font-size:14px; line-height:1.65; margin:0; text-wrap:pretty; }
  body[data-site="public"] .home-copy .button { grid-row:5; width:min(100%,340px); justify-content:space-between; font-size:13px; min-height:48px; margin:0; border-radius:8px; }
  body[data-site="public"][data-hero="minimal"].afterglow-nocturne .home-stage {
    width:100%;
    grid-row:3;
    max-width:500px;
    height:clamp(220px,40svh,360px);
    min-height:0;
    padding:0;
    margin:0;
    align-self:center;
  }
  body[data-site="public"] .hero-brain-frame { display:grid; place-items:center; container-type:size; width:100%; height:100%; }
  body[data-site="public"] .hero-brain-frame .afterglow-brain-visual { width:min(100cqw,calc(100cqh * 640 / 540)); margin:0; }
  body[data-site="public"][data-hero="minimal"].afterglow-nocturne .afterglow-brain-visual > :is(.brain-mesh-canvas,.anatomical-brain) { scale:1.12; }
  body[data-site="public"] .hero-motion-control button { width:44px; height:44px; }
}

@media(max-width:900px) and (max-height:650px) {
  body[data-site="public"].afterglow-nocturne .home-hero { padding-block:12px; gap:8px; }
}

@media(max-width:760px) {
  body[data-site="public"] .single-section { padding-block:48px; scroll-margin-top:20px; }
  body[data-site="public"] .micro { font-size:10px; line-height:1.6; }
  body[data-site="public"] .single-heading>p,
  body[data-site="public"] .function-steps p,
  body[data-site="public"] .research-intro>p:not(.micro),
  body[data-site="public"] .research-paper>p { font-size:15px; line-height:1.75; }
  body[data-site="public"] .function-steps li { gap:14px; padding-block:20px; }
  body[data-site="public"] .function-steps h3 { font-size:20px; line-height:1.3; }
  body[data-site="public"] .concept-footnote>p { font-size:14px; line-height:1.75; }
  body[data-site="public"] .button { min-height:48px; font-size:13px; }

  body.single-page[data-site="public"] .app-showcase-pro { min-height:0; padding-block:32px 20px; }
  body.single-page[data-site="public"] .app-phone.app-phone-pro { width:min(344px,calc(100% - 12px)); padding-inline:16px; }
  body[data-site="public"] .app-phone-pro .phone-user { font-size:13px; }
  body[data-site="public"] .app-phone-pro .phone-response { font-size:14px; }
  body[data-site="public"] .app-phone-pro .phone-tones button { min-height:44px; font-size:12px; }
  body[data-site="public"] .phone-session-actions button { min-height:44px; font-size:12px; }
  body[data-site="public"] .app-phone-pro .phone-hint { font-size:11px; }
  body[data-site="public"] .app-showcase-pro .app-preview-caption { font-size:9px; }

  body[data-site="public"] [data-practice-guided] .plasticity-stage-narration>p { font-size:15px; line-height:1.75; min-height:0; max-width:none; }
  body[data-site="public"] [data-practice-guided] .plasticity-step-controls { max-width:none; margin-top:24px; }
  body[data-site="public"][data-section-layout="open"] [data-practice-guided] .plasticity-stage-copy>.plasticity-takeaway { font-size:13px; line-height:1.75; max-width:none; }
  body[data-site="public"] .plasticity-outcomes p { font-size:13px; }
  body[data-site="public"] .plasticity-outcomes strong { font-size:14px; }

  body[data-site="public"][data-section-layout="open"] .research-paper h3 { font-size:23px; line-height:1.35; overflow-wrap:break-word; }
  body[data-site="public"] .research-paper-heading .micro,
  body[data-site="public"] .research-paper-format,
  body[data-site="public"] .research-paper-meta { font-size:10px; line-height:1.7; }
  body[data-site="public"] .research-paper-heading { gap:8px; }
  body[data-site="public"] .research-paper-actions { gap:12px; }
  body[data-site="public"] .research-paper-actions a,
  body[data-site="public"] .research-intro>.text-link { display:inline-flex; align-items:center; min-height:44px; font-size:13px; }

  body[data-site="public"] .single-questions .question-list summary { min-height:64px; font-size:16px; line-height:1.5; gap:16px; padding-block:20px; }
  body[data-site="public"] .question-list summary span { flex:none; font-size:22px; }
  body[data-site="public"] .single-questions .question-list details>div { font-size:15px; line-height:1.75; padding-right:0; }

  body[data-site="public"] .site-footer { padding:32px 24px max(28px,env(safe-area-inset-bottom)); }
  body[data-site="public"] .site-footer .brand { width:fit-content; min-height:44px; }
  body[data-site="public"] .footer-signature p { max-width:none; margin-top:12px; text-align:left; font-size:17px; line-height:1.5; }
  body[data-site="public"] .site-footer nav { display:flex; flex-wrap:nowrap; justify-content:space-between; gap:8px; margin-top:24px; }
  body[data-site="public"] .site-footer nav a { display:flex; align-items:center; min-height:44px; font-size:clamp(11px,3.3vw,14px); white-space:nowrap; }
  body[data-site="public"][data-section-layout="open"] .footer-end { align-items:flex-start; margin-top:24px; padding-top:20px; gap:12px; font-size:11px; line-height:1.7; }
}

@media(max-width:360px) {
  body[data-site="public"] .site-header { padding-inline:20px; gap:12px; }
  body[data-site="public"].afterglow-nocturne .home-hero { padding-inline:20px; }
  body[data-site="public"] .single-section { margin-inline:20px; }
  body[data-site="public"] .site-footer { padding-inline:20px; }
}
