/**
 * 全站易讀字級 — 覆寫 peace-readable，手機與桌機皆適中
 */

.ultimate-home {
  font-size: 17px;
  line-height: 1.7;
}

.ultimate-home .section-head h2,
.ultimate-home .team-section .section-head h2 {
  font-size: clamp(22px, 3.5vw, 34px) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
}

.ultimate-home .section-head p,
.ultimate-home .section-head .team-lead,
.ultimate-home .about-hero-lead,
.ultimate-home .digital-home-lead {
  font-size: 16px !important;
  line-height: 1.7 !important;
  font-weight: 500 !important;
}

.ultimate-home .kicker {
  font-size: 11px !important;
  margin-bottom: 6px !important;
  letter-spacing: 0.14em !important;
}

.ultimate-home .hero-copy h1 {
  font-size: clamp(26px, 5vw, 44px) !important;
  line-height: 1.2 !important;
}

.ultimate-home .hero-desc {
  font-size: 14px !important;
  line-height: 1.65 !important;
  font-weight: 500 !important;
}

.ultimate-home .hero-kicker {
  font-size: 11px !important;
}

.ultimate-home .media-card h3,
.ultimate-home .case-card h3,
.ultimate-home .award-card-body h3,
.ultimate-home .service-card-body h3,
.ultimate-home .digital-home-feature-card h3 {
  font-size: 18px !important;
  line-height: 1.32 !important;
}

@media (min-width: 1201px) {
  .ultimate-home .media-card p,
  .ultimate-home .case-card p,
  .ultimate-home .award-card-body p,
  .ultimate-home .service-card-body p,
  .ultimate-home .about-pillar-card p,
  .ultimate-home .digital-home-feature-card p {
    font-size: 15px !important;
    line-height: 1.68 !important;
    font-weight: 500 !important;
    -webkit-line-clamp: 3 !important;
  }
}

.ultimate-home .works-section .case-card-no-cat small,
.ultimate-home .case-card-no-cat small {
  display: none !important;
}

.ultimate-home .case-category-block,
.ultimate-home .case-category-title {
  display: none !important;
}

.ultimate-home .team-tag-row {
  display: none !important;
}

.ultimate-home .team-section .section-head h2 {
  font-size: clamp(22px, 3.2vw, 32px) !important;
}

.ultimate-home .team-section .team-lead {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.ultimate-home .team-card h3 {
  font-size: 18px !important;
  line-height: 1.3 !important;
}

.ultimate-home .team-card .team-role {
  font-size: 14px !important;
  font-weight: 700 !important;
}

.ultimate-home .team-card .team-tagline {
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.ultimate-home .works-section .works-all-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

@media (max-width: 1100px) {
  .ultimate-home .works-section .works-all-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

.ultimate-home .impact-strip-rich .counter-num,
.ultimate-home .impact-strip-rich .impact-combined {
  font-size: clamp(28px, 3.5vw, 44px) !important;
  line-height: 1.05 !important;
  font-family: 'Noto Serif TC', serif !important;
  font-weight: 900 !important;
  color: var(--peace-orange, #e76542) !important;
}

.ultimate-home .impact-strip-rich .impact-value {
  display: block;
  margin: 0;
}

.ultimate-home .digital-home-head h2 {
  font-size: clamp(24px, 3.8vw, 34px) !important;
}

.alliance-copy-block {
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.68;
  color: var(--peace-muted, #6f6157);
  max-width: 72ch;
}

@media (max-width: 860px) {
  .ultimate-home {
    font-size: 14px;
  }

  .ultimate-home .section-head h2,
  .ultimate-home .team-section .section-head h2 {
    font-size: 20px !important;
  }

  .ultimate-home .hero-copy h1 {
    font-size: clamp(22px, 6.5vw, 28px) !important;
  }

  .ultimate-home .hero-desc {
    font-size: 13px !important;
  }

  .ultimate-home .about-hero-title {
    font-size: clamp(20px, 5.5vw, 26px) !important;
  }
}

.peace-article-page .article-body,
.peace-article-page .article-body p,
.case-article .case-body p,
.post-article .post-body p,
.digital-page-main .section-text p {
  font-size: 14px;
  line-height: 1.72;
}

@media (max-width: 860px) {
  .peace-article-page .article-body p,
  .case-article .case-body p,
  .post-article .post-body p {
    font-size: 13px;
  }
}
