/* Korean typography — word-level line breaks (단어 단위 줄바꿈) */
html{
  word-break:keep-all;
  overflow-wrap:break-word;
  line-break:strict;
}

body{
  word-break:keep-all;
  overflow-wrap:break-word;
}

h1,h2,h3,h4,h5,h6,p,li,span,summary,label,td,th,
.chCard,.process-step,.navlink,
.section-head,.faq-block,.contact-grid{
  word-break:keep-all;
  overflow-wrap:break-word;
}

/* Headings: natural wrap on mobile, optional desktop breaks */
.flow-title{
  text-wrap:balance;
}
@media(max-width:768px){
  .flow-title br{display:none !important}
  .flow-title{
    line-height:1.35 !important;
    letter-spacing:-.02em !important;
  }
}

/* Sentence-per-line blocks on mobile */
.lead-line{display:inline}
@media(max-width:768px){
  .lead-line{
    display:block;
    margin-bottom:.65em;
  }
  .lead-line:last-child{margin-bottom:0}
}

/* Card body copy — phrase-friendly line height */
.chCard p,
#target .target-card__body p,
#process .process-step__body p,
.service-page .svc-card__desc,
.service-page .deliverables .grid-3 > div p,
.about-page .grid-3 > div p,
.section-head p,
.hero-lead,
.faq-block p,
.contact-grid p{
  line-height:1.85 !important;
  letter-spacing:-.01em;
}

/* Feature bullets in channel cards */
#channels .chCard > div:last-child > div{
  display:block !important;
  text-align:center !important;
  padding:5px 0;
  line-height:1.65 !important;
  justify-content:center !important;
}

/* FAQ: question wraps by word, answer readable */
.faq-block summary{
  word-break:keep-all;
  line-height:1.5 !important;
}

/* Tags / pills — keep label intact */
.service-page .svc-card__tags span{
  word-break:keep-all;
  white-space:normal !important;
  text-align:center;
}

/* Channel ticker — break between items not inside words */
.channel-ticker span{
  word-break:keep-all;
}

/* Section main titles — larger on PC */
@media (min-width: 769px) {
  .section-head h2,
  .section-block > h2,
  .section-block > .reveal > h2,
  .inner-pad > .reveal > h2,
  .inner-pad > h2,
  .faq-block > .reveal > h2,
  .contact-grid > .reveal > h2,
  #reviews .section-head h2,
  .cta-block h2,
  .deliverables h2,
  .stats-banner .stats-flex > div:first-child h2,
  .about-page .company-row h2,
  .about-page .inner-pad > .reveal > h2,
  .service-page .deliverables > .reveal > h2,
  .service-page .cta-block h2{
    font-size: clamp(44px, 5.6vw, 68px) !important;
    line-height: 1.28 !important;
    letter-spacing: -0.025em !important;
    padding: 0.08em 0 0.18em !important;
    margin-bottom: 22px !important;
  }

  .section-head h2:last-child,
  #process > .reveal:first-child h2,
  .faq-block > .reveal:first-child h2{
    margin-bottom: 0 !important;
  }

  .section-head,
  #target .inner-pad > div.reveal:first-child,
  #process > .reveal:first-child,
  .faq-block > .reveal:first-child{
    margin-bottom: 60px !important;
  }
  #portfolio .section-head{
    margin-bottom: 52px !important;
  }
  #reviews .section-head{
    margin-bottom: 52px !important;
  }
}
