/* The prerendered homepage (#stStaticHome in index.html) and the hero's brand line.

   #stStaticHome is shown only while a homepage load is waiting for the start
   module, and removed from view the moment the module has painted the real page.
   Everything that styles it comes from start.css, which applies from the first
   paint through body.n1-bare-early. */

#stStaticHome {
  display: none;
}

html.n1-bare-boot:not(.n1-static-home-off) #stStaticHome,
html:not(.n1-static-home-off) body.n1-bare #stStaticHome {
  display: block;
}

/* The real page has painted: its hero (goal page) or a goal screen exists. */
body:has(#platform-screens-root .st-root .st-hero) #stStaticHome,
body:has(#platform-screens-root .st-root .st-goal) #stStaticHome {
  display: none !important;
}

/* While the prerendered page is up, the module's own "Loading…" placeholder
   would sit underneath it as a second, empty panel. */
html:not(.n1-static-home-off) body:has(#stStaticHome) #platform-screens-root .st-root:has(> .st-wrap > .st-loading:only-child) {
  display: none;
}

/* The prerendered buttons are plain links; keep them looking like the real ones. */
#stStaticHome a.st-hero-btn,
#stStaticHome a.st-teachbar-btn {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}

/* Never show "Open teacher mode" to a visitor who is probably signed in. */
html.n1-has-session #stStaticHome .st-teachbar,
.st-teachbar--none {
  display: none !important;
}

/* The brand sits above the heading, which now says what the site offers. */
.st-hero-brand {
  margin: 0 0 10px;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  opacity: 0.72;
}
