/* 全站排版校正层：统一中文换行、字距、按钮和手机内容密度。 */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-kerning: normal; }
:where(h1, h2, h3) {
  letter-spacing: -.025em;
  line-break: strict;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: balance;
}
:where(p, li) { letter-spacing: 0; word-spacing: 0; }
:where(.button, .header-login-button, .service-button, .mobile-consult-cta) {
  white-space: nowrap;
  text-wrap: nowrap;
}
.title-break-desktop { display: block; }
.desktop-nav { margin-right: 14px; }
.eyebrow-zh { letter-spacing: .04em !important; }
.form-card-head > span { letter-spacing: .06em; }

/* 标注稿定向排版：桌面标题保持指定行数和对齐关系。 */
@media (min-width: 901px) {
  #live-execution .section-head h2 { text-align: center; }
  #about.about > div:first-child h2 { max-width: 470px; text-align: center; }
  #about.about > div:first-child h2 span { display: block; }
  .photography-page .photo-live-intro h2 { font-size: clamp(34px, 3.5vw, 48px); white-space: nowrap; }
  .production-page .related-section > div:first-child { align-self: center; text-align: center; }
  .production-page .related-section h2 span { display: block; white-space: nowrap; }
  .production-page .production-consult { grid-template-columns: minmax(0, .94fr) minmax(520px, .86fr); gap: 36px; }
  .production-page .production-consult .consult-form { width: min(100%, 600px); justify-self: start; }
  .press-release-page .release-consult { grid-template-columns: minmax(0, .94fr) minmax(520px, .86fr); gap: 36px; }
  .press-release-page .release-consult .consult-form { width: min(100%, 600px); justify-self: start; }
}

/* 首页语义流程：取消数字计数，图标与文字使用固定分区。 */
.semantic-step-list { counter-reset: none; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.semantic-step-list li {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 11px 13px;
  border: 1px solid var(--line, rgba(26,24,21,.14));
  border-left: 1px solid var(--line, rgba(26,24,21,.14));
  border-radius: 9px;
  text-align: left;
}
.semantic-step-list li::before { display: none !important; content: none !important; }
.semantic-step-list .semantic-card-icon,
.broadcast-capability-list .semantic-card-icon {
  width: 38px;
  height: 38px;
  margin: 0;
  border-radius: 10px;
}
.semantic-step-list .semantic-card-icon svg,
.broadcast-capability-list .semantic-card-icon svg { width: 20px; height: 20px; }
.semantic-step-list strong { font-size: 14px; }

.broadcast-grid .broadcast-capability-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: center;
  gap: 10px;
  padding: 20px;
}
.broadcast-capability-list li {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 9px;
  background: rgba(255,255,255,.035);
}
.broadcast-capability-list li::before { display: none !important; content: none !important; }
.broadcast-capability-list .semantic-card-icon { border-color: rgba(242,214,168,.22); background: rgba(242,214,168,.08); color: #f2d6a8; }
.broadcast-capability-list strong { min-width: 0; font-size: 14px; line-height: 1.45; }

@media (max-width: 680px) {
  :root { --mobile-copy-size: 14px; }
  .section { padding-top: 52px; padding-bottom: 52px; }
  .eyebrow { margin-bottom: 10px; font-size: 11px; letter-spacing: .15em; }
  .section-head { margin-bottom: 24px; }
  .section-head h2,
  .feature h2,
  .publish-entry h2,
  .about h2,
  .consult h2,
  .execution-copy h2,
  .contact-heading h2 {
    font-size: clamp(27px, 7.8vw, 32px);
    line-height: 1.22;
    letter-spacing: -.025em;
  }
  .section-head p,
  .feature p,
  .publish-entry p,
  .about p,
  .consult p,
  .execution-copy p,
  .contact-heading > p:not(.eyebrow) {
    font-size: var(--mobile-copy-size);
    line-height: 1.72;
    letter-spacing: 0;
    word-spacing: 0;
  }
  .media-hero h1,
  .release-hero h1,
  .distribution-hero__content h1,
  .production-hero h1,
  .photo-hero__content h1,
  .integrated-hero h1,
  .about-copy h1 {
    font-size: clamp(34px, 9.6vw, 40px);
    line-height: 1.14;
    letter-spacing: -.035em;
  }
  .title-break-desktop { display: inline; }
  #about.about > div:first-child h2 span,
  .production-page .related-section h2 span { display: inline; }
  .photography-page .photo-live-intro h2 { font-size: clamp(25px, 7.2vw, 29px); white-space: nowrap; }
  .semantic-step-list { margin-top: 20px; }
  .semantic-step-list li { grid-template-columns: 34px minmax(0, 1fr); gap: 7px; padding: 9px 8px; text-align: left; }
  .semantic-step-list .semantic-card-icon,
  .broadcast-capability-list .semantic-card-icon { width: 34px; height: 34px; border-radius: 9px; }
  .semantic-step-list .semantic-card-icon svg,
  .broadcast-capability-list .semantic-card-icon svg { width: 18px; height: 18px; }
  .semantic-step-list strong,
  .broadcast-capability-list strong { font-size: 13px; }
  .broadcast-grid .broadcast-capability-list { gap: 8px; padding: 12px; }
  .broadcast-capability-list li { grid-template-columns: 34px minmax(0, 1fr); gap: 7px; padding: 9px 8px; }
  .inline-actions { gap: 12px; }
  .inline-actions .button { min-height: 42px; padding-inline: 14px; }
}

@media (max-width: 360px) {
  .section { padding-left: 12px; padding-right: 12px; }
  .section-head h2,
  .feature h2,
  .publish-entry h2,
  .about h2,
  .consult h2,
  .execution-copy h2,
  .contact-heading h2 { font-size: 26px; }
  .semantic-step-list strong,
  .broadcast-capability-list strong { font-size: 12px; }
}
