:root { --as-gutter: 32px; --as-max: 1500px; }
body.about-scale-page { margin: 0; color: #0d0e0f; background: #fff; font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif; }
.about-scale-page *, .about-scale-page *::before, .about-scale-page *::after { box-sizing: border-box; letter-spacing: 0; }
.about-scale-page img { display: block; width: 100%; }
.about-scale-page .as-shell { width: min(calc(100% - (var(--as-gutter) * 2)), var(--as-max)); margin-inline: auto; }
.about-scale-page .as-eyebrow { margin: 0; font-size: 12px; font-weight: 700; line-height: 1; text-transform: uppercase; }
.as-hero { padding: 170px var(--as-gutter) 132px; overflow: hidden; }
.as-hero-copy { text-align: center; }
.as-hero h1 { max-width: 1180px; margin: 38px auto 34px; font-size: 72px; font-weight: 520; line-height: .98; }
.as-hero h1 span { display: block; }
.as-lead { max-width: 790px; margin: 0 auto; color: #4e565b; font-size: 22px; line-height: 1.36; }
.as-hero-media { width: min(calc(100% - 18vw), 1160px); margin: 112px auto 0; overflow: hidden; }
.as-hero-media img { aspect-ratio: 16 / 9; object-fit: cover; border-radius: 8px; transform: scale(var(--about-media-scale, 1.08)); }
.as-hero-media figcaption { margin-top: 12px; color: #6f7477; font-size: 11px; text-align: center; text-transform: uppercase; }
.as-disciplines { padding: 70px var(--as-gutter) 126px; text-align: center; }
.as-disciplines h2, .as-numbers h2, .as-stories h2 { margin: 24px 0 74px; font-size: 48px; font-weight: 500; line-height: 1.04; }
.as-wordmarks { width: min(100%, 1260px); margin: auto; display: grid; grid-template-columns: repeat(5, 1fr); align-items: center; gap: 20px; }
.as-wordmarks span { font-size: 25px; font-weight: 650; }
.as-work-wrap { padding: 0 14px; background: #fff; }
.as-work { width: 100%; max-width: 1876px; min-height: 690px; margin: auto; padding: 96px max(7vw, 72px); color: #fff; background: #070808; border-radius: 8px; }
.as-work > h2 { max-width: 900px; margin: 30px 0 86px; font-size: 58px; font-weight: 520; line-height: 1; }
.as-work-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.as-work-grid article { min-height: 340px; padding: 32px; display: flex; flex-direction: column; justify-content: space-between; background: #202222; border: 1px solid #2d3032; border-radius: 8px; }
.as-icon { width: 62px; height: 62px; display: grid; place-items: center; color: #d8e4ec; background: #343738; border-radius: 8px; }
.as-icon svg { width: 28px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.as-work-grid h3 { margin: 0 0 16px; font-size: 28px; font-weight: 550; }
.as-work-grid p { margin: 0; color: #b9bdbe; font-size: 17px; line-height: 1.45; }
.as-numbers { padding: 150px var(--as-gutter); }
.as-numbers header { text-align: center; }
.as-number-grid { width: min(100%, 1420px); margin: auto; display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.as-number-grid article { min-height: 390px; padding: 30px; display: flex; flex-direction: column; background: #f1f2f2; border-radius: 8px; }
.as-number-grid article:nth-child(-n+3) { grid-column: span 2; }
.as-number-grid article:nth-child(n+4) { grid-column: span 3; min-height: 320px; }
.as-number-grid small { font-size: 12px; font-weight: 700; text-transform: uppercase; }
.as-number-grid strong { margin-top: auto; font-size: 62px; font-weight: 500; }
.as-number-grid p { margin: 8px 0 0; color: #72777a; font-size: 17px; }
.as-strip { padding: 26px var(--as-gutter) 150px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; overflow: hidden; }
.as-strip figure { margin: 0; transform: translate3d(var(--about-strip-shift, 0), 0, 0); }
.as-strip img { aspect-ratio: 1.55; object-fit: cover; border-radius: 8px; }
.as-team { padding: 30px var(--as-gutter) 160px; }
.as-team > header { width: min(100%, 1420px); margin: auto; display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 80px; }
.as-team header h2 { margin: 24px 0 0; font-size: 64px; font-weight: 520; line-height: .98; }
.as-team header > p { margin: 0; color: #51585c; font-size: 21px; line-height: 1.42; }
.as-team-grid { width: min(100%, 1420px); margin: 88px auto 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.as-team-grid article { padding-bottom: 28px; border-bottom: 1px solid #cfd2d3; }
.as-team-profile { display: block; color: inherit; text-decoration: none; }
.as-team-profile:focus-visible { outline: 2px solid #173d5b; outline-offset: 5px; border-radius: 8px; }
.as-team-grid img { aspect-ratio: 1 / 1.08; margin-bottom: 24px; object-fit: cover; border-radius: 8px; }
.as-team-grid small, .as-story span { color: #65727a; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.as-team-grid h3 { margin: 12px 0; font-size: 25px; font-weight: 600; }
.as-team-grid h3 span { display: inline-block; margin-left: 4px; font-size: .58em; transition: transform 180ms ease; }
.as-team-profile:hover h3 span { transform: translate(2px, -2px); }
.as-team-grid p { margin: 0; color: #555d61; font-size: 16px; line-height: 1.42; }
.as-stories { padding: 120px var(--as-gutter) 160px; }
.as-stories > header { width: min(100%, 1420px); margin: auto; position: relative; text-align: center; }
.as-stories header a { position: absolute; right: 0; bottom: 6px; color: inherit; text-decoration: none; }
.as-story-grid { width: min(100%, 1420px); margin: auto; display: grid; grid-template-columns: 1.4fr 1fr; gap: 12px; }
.as-story { padding: 10px 10px 24px; color: inherit; background: #f0f1f1; border-radius: 8px; text-decoration: none; }
.as-story-large { grid-row: span 2; }
.as-story img { aspect-ratio: 2.1; margin-bottom: 18px; object-fit: cover; border-radius: 6px; }
.as-story-large img { aspect-ratio: 1.42; }
.as-story h3 { margin: 8px 8px 0; font-size: 25px; font-weight: 550; line-height: 1.08; }
.as-story span { margin-left: 8px; }
.as-careers { position: relative; min-height: 690px; margin: 0 14px 14px; overflow: hidden; color: #fff; background: #090a0a; border-radius: 8px; }
.as-careers::after { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.48); }
.as-careers > img { position: absolute; inset: 0; height: 100%; object-fit: cover; transform: scale(var(--about-cta-scale, 1.06)); }
.as-careers > div { position: absolute; z-index: 1; left: 8%; right: 8%; bottom: 80px; max-width: 950px; }
.as-careers h2 { margin: 24px 0 36px; font-size: 64px; font-weight: 520; line-height: .98; }
.as-careers a { display: inline-flex; gap: 28px; align-items: center; padding: 14px 18px; color: #0b0c0c; background: #fff; border-radius: 6px; text-decoration: none; font-weight: 650; }
[data-about-scale-reveal] { opacity: 0; transform: translate3d(0, 26px, 0); transition: opacity 720ms ease, transform 850ms cubic-bezier(.22,1,.36,1); }
[data-about-scale-reveal].is-visible { opacity: 1; transform: none; }
.as-work-grid article:nth-child(2), .as-team-grid article:nth-child(2), .as-number-grid article:nth-child(2) { transition-delay: 80ms; }
.as-work-grid article:nth-child(3), .as-team-grid article:nth-child(3), .as-number-grid article:nth-child(3) { transition-delay: 160ms; }
.as-team-grid article:nth-child(4) { transition-delay: 240ms; }
@media (min-width: 1500px) { .as-hero h1 { font-size: 88px; } }
@media (max-width: 1050px) {
  :root { --as-gutter: 22px; }
  .as-hero h1 { font-size: 60px; }
  .as-work { padding: 80px 42px; }
  .as-work-grid { grid-template-columns: 1fr; }
  .as-work-grid article { min-height: 270px; }
  .as-team-grid { grid-template-columns: repeat(2, 1fr); }
  .as-strip { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
  :root { --as-gutter: 14px; }
  .as-hero { padding-top: 130px; padding-bottom: 88px; }
  .as-hero h1 { margin-top: 28px; font-size: 44px; }
  .as-lead { font-size: 18px; }
  .as-hero-media { width: 100%; margin-top: 72px; }
  .as-wordmarks { grid-template-columns: repeat(2, 1fr); gap: 34px 12px; }
  .as-disciplines h2, .as-numbers h2, .as-stories h2 { font-size: 38px; }
  .as-work-wrap { padding: 0 8px; }
  .as-work { min-height: 0; padding: 64px 18px 24px; }
  .as-work > h2 { margin-bottom: 54px; font-size: 42px; }
  .as-number-grid, .as-story-grid { grid-template-columns: 1fr; }
  .as-number-grid article:nth-child(n) { grid-column: span 1; min-height: 270px; }
  .as-strip { padding-inline: 14px; grid-template-columns: 1fr 1fr; gap: 8px; }
  .as-team > header { grid-template-columns: 1fr; gap: 28px; }
  .as-team header h2 { font-size: 46px; }
  .as-team-grid { grid-template-columns: 1fr; }
  .as-stories header a { position: static; display: inline-block; margin-bottom: 38px; }
  .as-story-large { grid-row: auto; }
  .as-careers { min-height: 620px; margin: 0 8px 8px; }
  .as-careers > div { left: 22px; right: 22px; bottom: 34px; }
  .as-careers h2 { font-size: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-about-scale-reveal] { opacity: 1; transform: none; transition: none; }
  .as-hero-media img, .as-strip figure, .as-careers > img { transform: none; }
}

/* Team identities use initials until actual portraits are provided. */
.as-team-monogram { display: grid; place-items: center; aspect-ratio: 1 / 1.08; margin-bottom: 24px; border-radius: 8px; background: #e8edee; color: #263d4c; font: 400 clamp(64px, 6vw, 110px)/1 "Inter Tight", sans-serif; letter-spacing: -.05em; }
