.about-steve-page figure{margin:0}
.about-steve-page figcaption{font-size:12px;line-height:1.5}
.steve-china-hero{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);min-height:690px;background:var(--deep-red);color:#fff}
.steve-hero-copy{align-self:center;padding:72px 10% 84px}
.steve-hero-copy .eyebrow{color:#f3c552}
.steve-hero-copy h1{font-size:clamp(45px,4.7vw,72px)}
.steve-hero-copy h1 em{color:#ffd172}
.steve-hero-copy>p:not(.eyebrow){max-width:610px;margin-bottom:32px;color:#f7ded5;font-size:18px;line-height:1.75}
.steve-hero-gallery{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(170px,.8fr);grid-template-rows:1fr 1fr;gap:12px;padding:34px 34px 34px 0;min-width:0}
.steve-hero-gallery figure{position:relative;overflow:hidden;border:4px solid #fff;background:#2f100d;box-shadow:0 12px 34px rgba(32,0,3,.3)}
.steve-hero-gallery img{display:block;width:100%;height:100%;object-fit:cover}
.hero-palace{grid-row:1/3}
.hero-palace img{object-position:center}
.hero-early img{object-position:center 35%}
.hero-city img{object-position:center}
.steve-hero-gallery figcaption{position:absolute;inset:auto 0 0;padding:11px 13px;background:linear-gradient(transparent,rgba(38,8,8,.9));color:#fff;font-size:11px}

.steve-intro{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:4% 8%;align-items:start}
.steve-intro-heading h2{margin-bottom:0}
.steve-intro-copy{max-width:720px;color:var(--muted)}
.steve-intro-copy .lead,.work-story-copy .lead,.purpose-copy .lead{color:var(--ink);font-family:'Playfair Display',Georgia,serif;font-size:21px;line-height:1.6}
.early-portraits{grid-column:1/-1;justify-self:center;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);width:min(100%,900px);gap:12px;margin-top:22px;padding:12px;background:var(--cream);border-top:4px solid var(--gold)}
.early-portraits figure{overflow:hidden;background:#fff}
.early-portraits img{display:block;width:100%;height:100%;object-fit:cover}
.early-portraits .early-portrait{aspect-ratio:3/4}
.early-portraits .early-group{aspect-ratio:4/3}
.early-portraits .early-group img{object-position:center}

.groups-story{padding:84px 7%;background:#39100d;color:#fff}
.groups-story-copy{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:8%;row-gap:20px;align-items:start;margin-bottom:42px}
.groups-story-copy h2{margin-bottom:0}
.groups-story-copy h2 em{color:#f3c552}
.groups-story-copy>div,.groups-story-copy p{color:#e5cfca}
.groups-story-copy .eyebrow{grid-column:1/-1;color:#f3c552;margin-bottom:4px}
.groups-story-copy h2{grid-column:1}
.groups-story-text{grid-column:2;display:grid;gap:20px}
.groups-story-copy .groups-story-text p{margin:0}
.group-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.group-gallery figure{display:flex;flex-direction:column;background:#fff;color:var(--ink);border:4px solid #fff}
.group-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.group-gallery figcaption{min-height:62px;padding:14px 15px;background:#fff;color:var(--deep-red);font-weight:700}

.work-story{display:grid;grid-template-columns:minmax(280px,.74fr) minmax(0,1.26fr);gap:8%;align-items:start}
.work-story-copy{position:sticky;top:28px;color:var(--muted)}
.work-story-copy h2{color:var(--ink)}
.work-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.work-mosaic figure{display:flex;flex-direction:column;border:1px solid var(--line);background:#fff}
.work-mosaic img{display:block;width:100%;object-fit:cover}
.work-mosaic figcaption{min-height:58px;padding:12px 14px;color:var(--deep-red);font-weight:700}
.work-mosaic .presenting img,.work-mosaic .meeting img{aspect-ratio:4/3}
.work-mosaic .armor img,.work-mosaic .panda img{aspect-ratio:3/4}
.work-mosaic .presenting img{object-position:center 40%}
.work-mosaic .meeting img{object-position:center}
.work-mosaic .armor img{object-position:center 20%}
.work-mosaic .panda img{object-position:center}

.people-story{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:7%;align-items:center;padding:78px 7%;background:var(--cream)}
.people-collage{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);grid-template-rows:1fr 1fr;gap:16px}
.people-collage figure{overflow:hidden;border:5px solid #fff;box-shadow:0 12px 28px rgba(74,32,20,.12)}
.people-collage img{display:block;width:100%;height:100%;object-fit:cover}
.people-local{grid-row:1/3}
.people-local img{object-position:right center}
.people-welcome img{object-position:center}
.people-ship img{object-position:center 72%}
.people-story-copy .eyebrow{color:var(--red)}
.people-story-copy p:not(.eyebrow){color:var(--muted)}
.people-story-copy h2 em{color:var(--red)}

.steve-purpose{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.7fr);gap:9%;align-items:center}
.purpose-copy p:not(.eyebrow){max-width:760px;color:var(--muted)}
.purpose-copy .lead{color:var(--ink)}
.purpose-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}
.purpose-phone{color:var(--deep-red);font-size:14px;font-weight:700}
.purpose-photo{border:10px solid var(--cream);outline:1px solid var(--gold)}
.purpose-photo img{display:block;width:100%;height:auto}
.purpose-photo figcaption{padding:15px 14px;background:var(--deep-red);color:#fff;font-weight:700}
.steve-back{padding:0 7% 58px;text-align:right}

@media(min-width:1550px){
  .groups-story,.people-story{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}
  .steve-china-hero{padding-left:max(0px,calc((100vw - 1600px)/2));padding-right:max(0px,calc((100vw - 1600px)/2))}
}
@media(max-width:1050px){
  .steve-china-hero{grid-template-columns:1fr;min-height:0}
  .steve-hero-copy{padding:58px 7% 46px}
  .steve-hero-gallery{padding:0 5% 46px;min-height:620px}
  .steve-intro{gap:34px}
  .groups-story-copy{grid-template-columns:1fr;gap:8px}
  .groups-story-copy h2,.groups-story-text{grid-column:1}
  .work-story{grid-template-columns:1fr}
  .work-story-copy{position:static;max-width:850px}
  .people-story{grid-template-columns:1fr;gap:46px}
  .people-collage{min-height:650px}
}
@media(max-width:760px){
  .steve-hero-copy{padding:48px 7% 38px}
  .steve-hero-copy h1{font-size:clamp(40px,11vw,55px)}
  .steve-hero-copy>p:not(.eyebrow){font-size:16px}
  .steve-hero-gallery{grid-template-columns:1.15fr .85fr;grid-template-rows:auto auto;padding:0 5% 34px;min-height:0;gap:9px}
  .steve-hero-gallery figure{border-width:3px;box-shadow:none}
  .steve-hero-gallery img{height:auto;object-fit:contain}
  .hero-palace{grid-row:1/3}
  .steve-hero-gallery figcaption{position:static;background:#fff;color:var(--deep-red);padding:8px;font-size:9px}
  .steve-intro{grid-template-columns:1fr}
  .steve-intro-copy{grid-column:1}
  .early-portraits{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:6px;padding:7px;margin-top:0}
  .groups-story{padding:56px 7%}
  .groups-story-copy{margin-bottom:28px}
  .group-gallery{grid-template-columns:1fr;gap:22px}
  .group-gallery img{height:auto;aspect-ratio:auto;object-fit:contain}
  .group-gallery figcaption{min-height:0}
  .work-mosaic{gap:10px}
  .work-mosaic img{height:auto!important;aspect-ratio:auto!important;object-fit:contain}
  .work-mosaic figcaption{min-height:0;padding:10px;font-size:10px}
  .people-story{padding:56px 7%}
  .people-collage{min-height:0;grid-template-columns:.82fr 1.18fr;gap:9px}
  .people-collage figure{border-width:3px}
  .people-collage img{height:auto;object-fit:contain}
  .people-local{grid-row:1/3}
  .steve-purpose{grid-template-columns:1fr}
  .purpose-photo{max-width:460px}
  .steve-back{padding:0 7% 44px;text-align:left}
}
@media(max-width:460px){
  .steve-hero-gallery{grid-template-columns:1fr 1fr}
  .hero-palace{grid-column:1/-1;grid-row:auto}
  .work-mosaic{grid-template-columns:1fr 1fr}
  .people-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto}
  .people-local{grid-row:1;grid-column:1}
  .people-welcome{grid-row:1;grid-column:2}
  .people-ship{grid-column:1/-1}
}

/* Keep every photograph inside a predictable frame at every viewport. */
.work-story-copy{position:static;top:auto}
.steve-hero-gallery figure,.early-portraits figure,.group-gallery figure,.work-mosaic figure,.people-collage figure{min-width:0;min-height:0;overflow:hidden}
.group-gallery img{height:auto}
.hero-city img{object-position:18% center}

@media(min-width:761px){
  .work-mosaic img{height:auto;aspect-ratio:4/3!important;object-fit:cover}
  .people-collage{aspect-ratio:4/3}
}

@media(max-width:760px){
  .steve-hero-gallery{aspect-ratio:16/11;grid-template-rows:repeat(2,minmax(0,1fr))}
  .steve-hero-gallery img{width:100%;height:100%;object-fit:cover}
  .steve-hero-gallery figcaption{position:absolute;inset:auto 0 0;padding:8px;background:linear-gradient(transparent,rgba(38,8,8,.9));color:#fff}
  .group-gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
  .work-mosaic img{width:100%;height:auto!important;aspect-ratio:1/1!important;object-fit:cover}
  .work-mosaic figcaption{min-height:52px}
  .people-collage{aspect-ratio:5/4;grid-template-columns:.82fr 1.18fr;grid-template-rows:repeat(2,minmax(0,1fr))}
  .people-collage img{width:100%;height:100%;object-fit:cover}
}

@media(max-width:460px){
  .steve-hero-gallery{aspect-ratio:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto auto}
  .hero-palace{aspect-ratio:4/5}
  .hero-early,.hero-city{aspect-ratio:1/1}
  .people-collage{aspect-ratio:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto auto}
  .people-collage .people-welcome{grid-column:1/-1;grid-row:1;aspect-ratio:16/9}
  .people-collage .people-local{grid-column:1;grid-row:2;aspect-ratio:1/1}
  .people-collage .people-ship{grid-column:2;grid-row:2;aspect-ratio:1/1}
}
