/* v45: typography and local vertical spacing only.
   Reference: Sekine/Osawa supplied ZIP, local.css / pages.css / copy.css.
   Retain existing fonts, colors, columns, images, hero geometry and motion.
   Deliberately preserve page-title overlays, FAQ question size and v44 +5% labels. */
html body:not(.page-home) [data-top-type="section"] {
  --type-size:32px; --type-leading:1.55; --type-tracking:.055em;
}
html body:not(.page-home) [data-top-type="subsection"] {
  --type-size:21px; --type-leading:1.6; --type-tracking:.045em;
}
html body:not(.page-home) [data-top-type="body"] {
  --type-leading:1.85; --type-tracking:.035em;
}
html body:not(.page-home) [data-top-type="card"] {
  --type-leading:1.65; --type-tracking:.035em;
}
html body:not(.page-home) [data-top-type="note"] {
  --type-leading:1.7; --type-tracking:.04em;
}
html body:not(.page-home) [data-top-type="eyebrow"] {
  --type-size:16px; --type-tracking:.1em;
}
/* Apply the prose rhythm through legacy important declarations. */
html body:not(.page-home) main p[data-top-type="body"][data-top-type="body"] {
  line-height:1.85!important; letter-spacing:.035em!important;
}
html body.page-home .concept__title {
  font-size:36px!important; line-height:1.6!important; letter-spacing:.055em!important;
}
html body.page-home .concept__text {
  line-height:1.85!important; letter-spacing:.035em!important;
}
/* Tighten spaces within related content, without moving the section boundaries. */
html body.client-redline-v07.client-redline-v07.page-company .company-work__title {margin-top:24px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-work__lead {margin-top:24px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-work__cards {margin-top:44px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-greeting__heading {padding-bottom:24px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-flow__list {margin-top:32px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story__label-title {margin-bottom:22px!important;}
html body.page-news .news-item__desc {margin-top:6px!important;}
@media(max-width:768px) {
  html body:not(.page-home) [data-top-type="section"] {--type-size:clamp(24px,6.5vw,28px);--type-tracking:.045em;}
  html body:not(.page-home) [data-top-type="subsection"] {--type-size:20px;}
  html body:not(.page-home) [data-top-type="eyebrow"] {--type-size:14px;}
  html body.page-home .concept__title {font-size:clamp(24px,6.5vw,28px)!important;letter-spacing:.045em!important;}
  html body:not(.page-home) main p[data-top-type="body"][data-top-type="body"],
  html body.page-home .concept__text {line-height:1.9!important;letter-spacing:.025em!important;}
  html body.client-redline-v07.client-redline-v07.page-company .company-work__cards {margin-top:32px!important;}
  html body.client-redline-v07.client-redline-v07.page-company .company-flow__list {margin-top:24px!important;}
  html body.client-redline-v07.client-redline-v07.page-company .company-story__label-title {margin-bottom:20px!important;}
}

/* v92: match the performance link to its sibling mobile menu items. */
@media (max-width: 767px) {
  html body:not(.page-home) .drawer__nav a.drawer__child { font-size: 16px !important; }
  html body.page-home .drawer__nav a.drawer__child { font-size: 14px !important; }
}
