@font-face {
  font-family: "Noto Serif KR";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/noto-serif-kr-subset.woff2") format("woff2");
}
:root {
  --serif: "Noto Serif KR", "Apple Myungjo", "Batang", "Noto Serif CJK KR", serif;
  --sans: system-ui, -apple-system, "Segoe UI", Roboto, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", "Noto Sans CJK KR", system-ui, sans-serif;
}
.hero h1 { font-size: clamp(50px, 5.4vw, 80px); line-height: 1.18; letter-spacing: 0; }
.hero h1 em { letter-spacing: 0; }
.section-heading h2, .features-heading h2, .quiet-section h2, .faq-heading h2 { font-size: 50px; line-height: 1.24; letter-spacing: 0; }
.feature-copy h3, .sound-copy h3 { font-size: 36px; line-height: 1.28; letter-spacing: 0; }
.practice-steps h3 { letter-spacing: 0; }
.eyebrow { letter-spacing: 0.08em; }
html .social-heading { font-size: 72px; line-height: 1.22; letter-spacing: 0; }
@media (max-width: 760px) {
  .hero h1 { font-size: clamp(38px, 10.5vw, 58px); letter-spacing: 0; }
}

html { word-break: keep-all; overflow-wrap: anywhere; }

/* Keep the practice invitation readable without isolated CJK characters on phones. */
@media (max-width: 760px) {
  .section-heading h2 { font-size: clamp(32px, 10vw, 40px); }
}
