/* Shared type rhythm: keep word boundaries visible at every screen size. */
.hero h1 { letter-spacing: -.02em; word-spacing: .035em; line-height: 1.14; }
h1 em, h2 em, footer em { letter-spacing: 0; word-spacing: .02em; }
.hero h1 em { padding-inline-end: .08em; }
.cinematic-copy h2 { letter-spacing: -.01em; line-height: 1.14; }
.architecture-journey-panel figcaption strong,
.project-showcase-panel figcaption strong { letter-spacing: -.01em; line-height: 1.14; overflow-wrap: break-word; }
.faq-question button { letter-spacing: 0; line-height: 1.55; }
.faq-answer p { letter-spacing: 0; line-height: 1.8; }
.hero .reveal-line-mask { padding-inline-end: .08em; }
@media (max-width: 560px) {
  .hero h1 { letter-spacing: -.015em; line-height: 1.16; }
  .section-heading h2, .places-heading h2, .craft-copy h2,
  .how-intro h2, .network-top h2, .estimate-copy h2,
  .architecture-journey-copy h2 { overflow-wrap: break-word; }
}

/* Reserve one full answer so opening the FAQ does not move later sections. */
.faq-list { min-height: var(--faq-reserved-height, 0px); overflow-anchor: none; }
