/* About uses open editorial sections and an accessible career timeline. */
.about-page .page-opening{padding-bottom:28px}
.about-introduction{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:clamp(32px,5vw,72px);align-items:center}
.about-introduction-copy{max-width:700px;min-width:0}
.about-intro{font-size:clamp(18px,1.65vw,22px);line-height:1.65;color:var(--muted)}
.about-base{font-size:16px;color:var(--muted);margin-top:14px}
.about-portrait{width:100%;max-width:360px;margin:0;justify-self:end}
/* A taller frame retains more of photo 5, including the shoulders and upper body. */
.about-portrait img{display:block;width:100%;height:auto;aspect-ratio:3/5;object-fit:cover;object-position:50% 20%}
.about-story{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:30px 40px;padding:38px 0;border-bottom:1px solid var(--line)}
.about-story .section-label,.about-recognition .section-label{display:block;margin-bottom:20px;font-size:18px;font-weight:500}
.about-story h2,.about-recognition h2{font-size:clamp(28px,2.6vw,38px);line-height:1.25;letter-spacing:-.025em;text-wrap:initial}
.about-story-copy p{font-size:clamp(18px,1.5vw,21px);color:var(--muted);line-height:1.7}
.about-story-copy p+p{margin-top:18px}
.about-career,.about-clients,.about-international{padding:38px 0;border-bottom:1px solid var(--line)}
.about-career>.section-label,.about-clients>.section-label,.about-international>.section-label{display:block;font-size:18px;font-weight:500;margin-bottom:20px}
.about-career>h2,.about-section-heading h2{font-size:clamp(32px,3.5vw,52px);letter-spacing:-.025em;line-height:1.15}
.about-timeline{list-style:none;margin:28px 0 0;padding:0}
.about-resume{margin-top:14px}
.about-resume a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--muted);font-size:16px;font-weight:500}
.about-resume a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
.about-timeline>li{display:grid;grid-template-columns:minmax(130px,2fr) minmax(0,3fr);gap:40px;border-top:1px solid var(--line);padding:28px 0;align-items:start}
.about-timeline>li:last-child{padding-bottom:0}
.about-career-date{color:var(--muted);font-size:16px;padding-top:15px}
.about-company{display:flex;align-items:center;gap:22px;min-height:56px}
.about-company img{width:72px;height:56px;object-fit:contain;flex:0 0 72px}
.about-company h3{font-size:clamp(24px,2.2vw,32px);line-height:1.2;letter-spacing:-.025em;text-wrap:initial}
.about-role{font-size:17px;line-height:1.6;margin:12px 0 0 94px;color:var(--ink)}
.about-location{font-size:15px;line-height:1.6;margin:5px 0 0 94px;color:var(--muted)}
.about-career-scope{font-size:17px;line-height:1.65;color:var(--muted);margin:14px 0 0 94px}
.about-section-heading{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:40px;align-items:start}
.about-section-heading>p{font-size:clamp(18px,1.5vw,21px);line-height:1.7;color:var(--muted)}
.about-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;margin-top:30px}
.about-city{min-width:0;margin:0}
.about-city-photo{position:relative;overflow:hidden;aspect-ratio:534/236;background:#EBE9EA}
.about-city-photo>img{position:absolute;display:block;width:313.10861%;max-width:none;height:auto;aspect-ratio:1280/720}
.about-city figcaption{padding-top:14px}
.about-city figcaption::before{content:"";display:block;width:28px;height:3px;margin-bottom:9px;background:var(--orange)}
.about-city strong{display:block;color:var(--ink);font-size:clamp(20px,1.8vw,26px);font-weight:700;line-height:1.25;letter-spacing:-.02em}
.about-city figcaption>span{display:block;margin-top:3px;color:var(--muted);font-size:16px;line-height:1.5}
.about-logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 24px;list-style:none;margin:30px 0 0;padding:0}
.about-logo-grid>li{display:flex;align-items:center;justify-content:center;min-width:0;height:138px}
.about-logo-grid img{display:block;width:100%;height:138px;object-fit:contain;mix-blend-mode:multiply}
.about-recognition{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:40px;padding:38px 0 8px}
.about-recognition dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0}
.about-recognition dt{font-size:17px;color:var(--orange);margin-bottom:16px}
.about-recognition dd{font-size:20px;line-height:1.7;color:var(--ink);margin:0}
@media(max-width:1000px){
 .about-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .about-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .about-timeline>li,.about-story,.about-section-heading,.about-recognition{column-gap:30px}
}
@media(max-width:760px){
 .about-page .page-opening{padding-bottom:24px}
 .about-introduction{grid-template-columns:1fr;gap:28px}
 .about-introduction-copy{max-width:none}
 .about-portrait{justify-self:start}
 .about-story,.about-section-heading,.about-recognition{grid-template-columns:1fr;gap:24px}
 .about-story,.about-career,.about-clients,.about-recognition,.about-international{padding-top:28px;padding-bottom:28px}
 .about-timeline>li{grid-template-columns:1fr;gap:16px;padding:24px 0}
 .about-career-date{padding:0}
 .about-company{gap:16px}
 .about-company img{width:56px;height:48px;flex-basis:56px}
 .about-role,.about-location,.about-career-scope{margin-left:72px}
 .about-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;margin-top:24px}
 .about-logo-grid>li,.about-logo-grid img{height:110px}
 .about-recognition dd{font-size:18px}
 .about-recognition{padding-bottom:8px}
}
@media(max-width:480px){.about-city-grid{grid-template-columns:1fr;gap:24px}.about-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-recognition dl{grid-template-columns:1fr}}
