/* Shared marketing copy scale based on the homepage About introduction. */
:root{
 --tt-copy-lead-size:18px;
 --tt-copy-card-size:16px;
 --tt-copy-compact-size:15px;
 --tt-copy-action-size:16px;
 --tt-copy-label-size:14px;
 --tt-copy-small-size:13px;
 --tt-copy-lead-line:1.65;
 --tt-copy-card-line:1.6;
}

/* Lead copy beside the major section titles. */
body.home .tt-home :is(
 .tt-hero-v2-intro,
 .tt-services-heading>p,
 .tt-recent-works-intro>p,
 .tt-about-story-heading>p,
 .tt-why-heading>p,
 .tt-comparison-heading>p,
 .tt-consult-lede
){
 font-size:var(--tt-copy-lead-size)!important;
 font-weight:400!important;
 line-height:var(--tt-copy-lead-line)!important;
}

/* Useful explanations within cards and process steps. */
body.home .tt-home :is(
 .tt-hero-v2-insight p,
 .tt-services-detail-copy p,
 .tt-solutions-card p,
 .tt-recent-works-slide-head p,
 .tt-about-story-feature p,
 .tt-about-story-value p,
 .tt-why-card p,
 .tt-process-card li,
 .tt-consult-form-heading p,
 .tt-consult-benefits li
){
 font-size:var(--tt-copy-card-size)!important;
 line-height:var(--tt-copy-card-line)!important;
}

/* Dense comparison content and supporting notes remain comfortable to read. */
body.home .tt-home :is(
 .tt-comparison-copy>span,
 .tt-comparison-note,
 .tt-why-plan-points li,
 .tt-about-story-footer,
 .tt-why-end,
 .tt-services-bottom
){
 font-size:var(--tt-copy-compact-size)!important;
 line-height:1.55!important;
}
body.home .tt-home :is(
 .tt-hero-v2-capabilities-footer p,
 .tt-consult-team-heading span,
 .tt-consult .tt-inquiry-privacy
){
 font-size:var(--tt-copy-label-size)!important;
 line-height:1.5!important;
}

/* Links, buttons, and form controls use a shared readable action size. */
body.home .tt-home :is(
 .tt-hero-v2-primary,
 .tt-hero-v2-secondary,
 .tt-services-cta,
 .tt-services-sublist li,
 .tt-solutions-more,
 .tt-recent-works-cta,
 .tt-about-story-footer a,
 .tt-why-end a,
 .tt-consult-team-actions a,
 .tt-contact-pending,
 .tt-inquiry-submit
){
 font-size:var(--tt-copy-action-size)!important;
 line-height:1.4!important;
}
body.home .tt-home .tt-consult .tt-inquiry-form :is(
 input:not([type=radio]):not([type=hidden]),
 select,
 textarea
){
 font-size:16px!important;
 line-height:1.5!important;
}

/* Section labels and compact card labels form two consistent steps. */
body.home .tt-home :is(
 .tt-services-kicker,
 .tt-solutions-kicker,
 .tt-about-story-kicker,
 .tt-why-kicker,
 .tt-comparison-kicker,
 .tt-process-kicker,
 .tt-consult-badge,
 .tt-recent-works-eyebrow
){
 font-size:var(--tt-copy-label-size)!important;
 line-height:1.3!important;
}
body.home .tt-home :is(
 .tt-hero-v2-small-label,
 .tt-recent-works-slide-head span,
 .tt-consult-kicker,
 .tt-about-story-feature-top,
 .tt-services-count
){
 font-size:var(--tt-copy-small-size)!important;
 line-height:1.3!important;
}
body.home .tt-home .tt-hero-v2-tags span{font-size:15px!important;line-height:1.35!important}
body.home .tt-home .tt-services-detail-label{font-size:17px!important;line-height:1.35!important}

/* Footer copy stays aligned with the homepage body scale. */
body.home .tt-footer :is(.tt-footer-brand p,.tt-footer-links a,.tt-footer-offices p,.tt-footer-bottom a){
 font-size:var(--tt-copy-compact-size)!important;
 line-height:1.55!important;
}
body.home .tt-footer .tt-footer-cta>a{font-size:var(--tt-copy-action-size)!important}

@media(max-width:700px){
 :root{
  --tt-copy-lead-size:16px;
  --tt-copy-card-size:16px;
  --tt-copy-compact-size:15px;
  --tt-copy-action-size:16px;
  --tt-copy-label-size:14px;
  --tt-copy-small-size:13px;
 }
 body.home .tt-home .tt-hero-v2-tags span{font-size:14px!important}
}