/* Type-only alignment with the approved homepage system.
   Layout and section structure intentionally remain untouched. */

body.about-scale-page {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
}

.about-scale-page .as-eyebrow {
  color: var(--cnw-eyebrow-ink);
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
  font-size: var(--cnw-eyebrow-size) !important;
  font-weight: var(--cnw-eyebrow-weight) !important;
  line-height: var(--cnw-eyebrow-leading) !important;
  letter-spacing: var(--cnw-eyebrow-tracking) !important;
  text-transform: uppercase !important;
}

.about-scale-page .as-hero h1 {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif !important;
  font-size: var(--cnw-display-size) !important;
  font-weight: var(--cnw-display-weight) !important;
  line-height: var(--cnw-display-leading) !important;
  letter-spacing: var(--cnw-display-tracking) !important;
  text-transform: none !important;
}

.about-scale-page .as-lead {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
  font-size: var(--cnw-lead-size) !important;
  font-weight: var(--cnw-lead-weight) !important;
  line-height: var(--cnw-lead-leading) !important;
  letter-spacing: var(--cnw-lead-tracking) !important;
}

.about-scale-page :is(
  .as-disciplines h2,
  .as-work > h2,
  .as-numbers h2,
  .as-team header h2,
  .as-stories h2,
  .as-careers h2
) {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif !important;
  font-size: var(--cnw-display-size) !important;
  font-weight: var(--cnw-display-weight) !important;
  line-height: var(--cnw-display-leading) !important;
  letter-spacing: var(--cnw-display-tracking) !important;
  text-transform: none !important;
}

.about-scale-page :is(.as-work-grid h3, .as-story h3) {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif !important;
  font-size: var(--cnw-heading-size) !important;
  font-weight: var(--cnw-heading-weight) !important;
  line-height: var(--cnw-heading-leading) !important;
  letter-spacing: var(--cnw-heading-tracking) !important;
  text-transform: none !important;
}

.about-scale-page .as-team-grid h3 {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif !important;
  font-size: clamp(24px, 1.55vw, 30px) !important;
  font-weight: var(--cnw-heading-weight) !important;
  line-height: 1.15 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
}

.about-scale-page :is(
  .as-work-grid p,
  .as-number-grid p,
  .as-team-grid p
) {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
  font-size: var(--cnw-body-size) !important;
  font-weight: var(--cnw-body-weight) !important;
  line-height: var(--cnw-body-leading) !important;
}

.about-scale-page :is(.as-number-grid small, .as-team-grid small, .as-story span) {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
  font-size: var(--cnw-eyebrow-size) !important;
  font-weight: var(--cnw-eyebrow-weight) !important;
  letter-spacing: var(--cnw-eyebrow-tracking) !important;
}

/* Keep the existing team section, but make its heading read as one unit. */
.about-scale-page .as-team > header {
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  align-items: end;
  column-gap: clamp(48px, 6vw, 96px);
  row-gap: 20px;
}

.about-scale-page .as-team > header > .as-eyebrow {
  grid-column: 1;
  grid-row: 1;
}

.about-scale-page .as-team > header > h2 {
  grid-column: 1;
  grid-row: 2;
  max-width: 14ch;
  margin: 0 !important;
}

.about-scale-page .as-team > header > p {
  grid-column: 2;
  grid-row: 2;
  max-width: 520px;
  margin: 0;
  font-size: var(--cnw-lead-size) !important;
  line-height: var(--cnw-lead-leading) !important;
  letter-spacing: var(--cnw-lead-tracking) !important;
}

/* Research cards use the approved full-bleed image + overlay treatment. */
.about-scale-page .as-story-grid {
  align-items: stretch;
}

.about-scale-page .as-story {
  position: relative;
  min-height: 280px;
  padding: 0 !important;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #111;
}

.about-scale-page .as-story-large {
  min-height: 572px;
}

.about-scale-page .as-story::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,.02) 36%, rgba(0,0,0,.78) 100%);
}

.about-scale-page .as-story img,
.about-scale-page .as-story-large img {
  width: 100%;
  height: 100%;
  min-height: inherit;
  margin: 0 !important;
  aspect-ratio: auto !important;
  object-fit: cover;
  border-radius: 0 !important;
  transition: transform 600ms cubic-bezier(.22,1,.36,1);
}

.about-scale-page .as-story:hover img {
  transform: scale(1.025);
}

.about-scale-page .as-story > span,
.about-scale-page .as-story > h3 {
  position: absolute;
  z-index: 2;
  left: clamp(20px, 2vw, 32px);
  right: clamp(20px, 2vw, 32px);
  margin: 0 !important;
  color: #fff;
}

.about-scale-page .as-story > span {
  bottom: clamp(112px, 8vw, 142px);
}

.about-scale-page .as-story > h3 {
  bottom: clamp(22px, 2.2vw, 34px);
  max-width: 28ch;
  font-size: clamp(25px, 1.8vw, 34px) !important;
}

@media (max-width: 1050px) {
  .about-scale-page .as-team > header {
    grid-template-columns: 1fr;
  }
  .about-scale-page .as-team > header > :is(.as-eyebrow, h2, p) {
    grid-column: 1;
    grid-row: auto;
  }
  .about-scale-page .as-story-large { min-height: 480px; }
}

@media (max-width: 720px) {
  .about-scale-page .as-shell { width: calc(100% - 40px); }
  .about-scale-page :is(h1, h2, h3, p) { overflow-wrap: anywhere; }
  .about-scale-page .as-story,
  .about-scale-page .as-story-large { min-height: 390px; }
}
