.about-page{--graphite:#20282b;--graphite-deep:#141d21;--sand:#c9b58e;--sand-dark:#74603d;--company-muted:#5b6366;--company-paper:#f3f4f3;--company-line:#d9dddd;color:#20282b}
.about-page .eyebrow{font-size:10px;color:var(--company-muted)}
.about-page .dark .eyebrow{color:#d6cbb7}
.about-page .text-link:hover{color:var(--sand-dark)}
.about-page h2{font-size:clamp(29px,2.7vw,42px);line-height:1.16}
.company-photo{position:relative;overflow:hidden;background:#e5e8e6;min-width:0;aspect-ratio:4/3}
.company-photo img{width:100%;height:100%;object-fit:cover;object-position:var(--image-position,center);transition:transform .65s var(--ease)}
@media(hover:hover){.company-tech-image:hover img,.company-team figure:hover img,.company-project:hover img{transform:scale(1.025)}}
.company-placeholder{position:absolute;inset:24px;border:1px solid #c7cecb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--company-muted);font-size:12px;text-align:center}
.company-placeholder .icon{width:32px;height:32px}
.company-hero-copy{max-width:650px}
.company-hero .hero-copy .company-subtitle{font-size:21px;line-height:1.4;font-weight:600;color:white;margin:18px 0 0}
.company-hero .hero-copy .company-hero-description{max-width:590px;font-size:15px;line-height:1.7;margin:18px 0 0}
.about-page .hero .eyebrow{color:#c2cdd5}
.company-history-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,7vw,110px);align-items:start}
.company-history-copy{max-width:640px}
.company-story{margin-top:27px;display:grid;gap:16px;color:var(--company-muted);font-size:14px;line-height:1.85}
.company-timeline{list-style:none;padding:24px 0 0;margin:34px 0 0;border-top:1px solid var(--company-line);display:flex;gap:32px;flex-wrap:wrap}
.company-timeline li{display:flex;align-items:center;gap:22px}
.company-timeline strong{font-size:32px;font-weight:600;line-height:1.2;color:var(--sand-dark);font-variant-numeric:tabular-nums}
.company-timeline span{font-size:12px;max-width:140px}
.company-director{width:100%;max-width:460px;justify-self:end}
.company-director-photo{aspect-ratio:1.4;background:#e7e9e7}
.company-director figcaption{padding:27px 32px 30px;background:var(--graphite);color:white}
.company-director-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--sand);margin-bottom:13px}
.company-director h3{font-size:25px;font-weight:800}
.company-director figcaption>p:last-child{font-size:12px;color:#c5cdcd;margin-top:10px;max-width:260px}
.company-director blockquote{margin:20px 0 0;font-size:14px;line-height:1.7;color:#d7ddda}
.company-technology{background:var(--company-paper)}
.company-tech-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}
.company-intro{font-size:14px;line-height:1.85;margin-top:24px;color:var(--company-muted);max-width:62ch}
.company-directions{margin-top:28px}
.company-directions>a{display:grid;grid-template-columns:24px 1fr 22px;gap:20px;padding:23px 0;border-top:1px solid #ced4d1;align-items:start}
.company-directions>a>.icon{width:21px;height:21px;color:var(--sand-dark);transition:transform .2s}
.company-directions>a:hover>.icon{transform:translateX(3px)}
.company-index{font-size:12px;color:var(--sand-dark);padding-top:3px}
.company-directions h3{font-size:17px;line-height:1.4}
.company-directions p{font-size:12px;color:var(--company-muted);line-height:1.7;margin-top:9px}
.company-tech-image .company-photo{aspect-ratio:1.12}
.company-tech-image figcaption,.company-team figcaption{padding-top:13px;font-size:11px;color:var(--company-muted)}
.company-projects-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:64px;align-items:start}
.company-projects-layout>div{min-width:0}
.company-gallery{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--sand) #edf0ee;scroll-padding:0;padding-bottom:12px}
.company-project{position:relative;flex:0 0 82%;min-width:0;scroll-snap-align:start;background:var(--company-paper)}
.company-project .company-photo{aspect-ratio:1.7}
.company-project-copy{position:relative;padding:23px 70px 25px 24px}
.company-project-copy h3{font-size:22px;line-height:1.3}
.company-project-copy>p:not(.company-region){font-size:13px;margin-top:11px;color:var(--company-muted)}
.company-region{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--sand-dark);margin-bottom:12px}
.company-project-open{position:absolute;right:20px;bottom:24px;display:grid;place-items:center;width:44px;height:44px;color:white;background:var(--graphite)}
.company-project-open .icon{width:20px;height:20px}
.company-gallery-controls{display:flex;align-items:center;gap:12px;margin-top:28px}
.company-gallery-controls button{display:grid;place-items:center;border:1px solid #c6ceca;background:white;width:46px;height:46px;color:var(--graphite);cursor:pointer;transition:background .2s}
.company-gallery-controls button:hover:enabled{background:var(--company-paper)}
.company-gallery-controls button:disabled{opacity:.35;cursor:default}
.company-gallery-controls [data-gallery-prev] .icon{transform:rotate(180deg)}
.company-gallery-status{font-size:12px;color:var(--company-muted);margin-left:6px}
.company-project-empty{width:100%;display:grid;grid-template-columns:.85fr 1fr;background:var(--company-paper);align-items:stretch;min-height:300px}
.company-project-placeholder{border:1px solid #cbd2cf;margin:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;gap:15px;color:var(--company-muted);font-size:11px}
.company-project-empty>div:last-child{padding:36px 30px 36px 0;align-self:center}
.company-project-empty h3{font-size:19px;line-height:1.4}
.company-project-empty p{font-size:12px;color:var(--company-muted);line-height:1.8;margin-top:16px}
.company-project-detail{border-top:1px solid var(--company-line);padding-top:32px;margin-top:32px;scroll-margin-top:100px}
.company-detail-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:26px}
.company-detail-heading h3{font-size:27px}
.company-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.company-detail-grid p{margin-bottom:18px}
.company-geography{overflow:hidden}
.company-geography-grid{display:grid;grid-template-columns:.7fr 1.9fr .7fr;align-items:center;gap:38px;margin-top:28px}
.company-map-intro{font-size:13px;line-height:1.85}
.company-map{position:relative;width:100%;aspect-ratio:800/320}
.company-map>img{width:100%;height:100%;filter:brightness(0) invert(1);opacity:.73}
.company-regions h3{font-size:14px;margin-bottom:15px;color:var(--sand)}
.company-regions p{font-size:12px;line-height:1.85}
.company-regions ul{list-style:none;padding:0;margin:0;font-size:13px;display:grid;gap:12px;color:#d8dfdc}
.company-map-note{font-size:11px;margin-top:24px;padding-top:22px;border-top:1px solid #d9dddd25}
.company-map-marker{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;z-index:1}
.company-map-marker::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--sand);box-shadow:0 0 0 5px #c9b58e25}
.company-map-tooltip{position:absolute;bottom:38px;left:50%;transform:translateX(-50%);padding:10px 14px;background:#f3f4f3;color:var(--graphite);width:210px;font-size:11px;line-height:1.5;visibility:hidden;opacity:0;transition:opacity .2s;pointer-events:none}
.company-map-marker:hover,.company-map-marker:focus{z-index:3}
.company-map-marker:hover .company-map-tooltip,.company-map-marker:focus .company-map-tooltip{visibility:visible;opacity:1}
.company-team-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:70px;align-items:center}
.company-team .company-photo{aspect-ratio:1.85}
.company-closing{position:relative;isolation:isolate}
.company-closing-photo{position:absolute;inset:0;height:100%;width:100%;aspect-ratio:auto;z-index:-2}
.company-closing-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#141d21ed,#141d21bd)}
.company-closing-inner{display:grid;grid-template-columns:1.6fr 1fr;gap:80px;align-items:center}
.company-closing-inner>*{min-width:0}
.company-closing h2{font-size:clamp(25px,2.8vw,40px);line-height:1.25}
.company-closing p{font-size:14px;line-height:1.8;max-width:40ch}
.company-closing .button{margin-top:24px;min-width:200px}
@keyframes company-arrive{from{opacity:.3;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.company-hero-copy{animation:company-arrive .6s var(--ease) both}


@media(min-width:1700px){.company-history-grid{gap:140px}}
@media(max-width:1199px){.company-history-grid,.company-tech-grid,.company-team-grid,.company-projects-layout{gap:38px}.company-geography-grid{grid-template-columns:1fr 2fr;gap:28px}.company-regions{grid-column:1/-1;display:flex;gap:24px;align-items:baseline}.company-regions h3{white-space:nowrap}.company-regions ul{display:flex;flex-wrap:wrap;gap:18px}.company-map-note{margin-top:8px}.company-director figcaption{padding:24px}.company-project-empty{grid-template-columns:1fr}.company-project-placeholder{height:145px;margin-bottom:0}.company-project-empty>div:last-child{padding:24px}.company-closing-inner{gap:40px}}
@media(max-width:900px){.company-history-grid{grid-template-columns:1.15fr 1fr;gap:28px}.company-story{font-size:13px;line-height:1.8}.company-tech-grid{grid-template-columns:1fr 1fr;gap:28px}.company-tech-image .company-photo{aspect-ratio:.8}.company-team-grid,.company-projects-layout{grid-template-columns:1fr}.company-project-empty{grid-template-columns:1fr 1.4fr;min-height:260px}.company-project-placeholder{height:auto;margin-bottom:22px}.company-project-empty>div:last-child{padding:28px 32px 28px 0}.company-gallery{margin-top:0}.company-project{flex-basis:65%}.company-closing-inner{grid-template-columns:1fr 1fr}.company-closing h2{font-size:28px}.company-director-photo{aspect-ratio:.95}.company-director h3{font-size:22px}}
@media(max-width:640px){.about-page h2{font-size:29px}.company-hero .hero-copy .company-subtitle{font-size:18px}.company-hero .hero-copy .company-hero-description{font-size:14px;margin-top:18px}.company-history-grid,.company-tech-grid,.company-team-grid,.company-projects-layout,.company-closing-inner,.company-detail-grid{grid-template-columns:1fr;gap:32px}.company-story{font-size:14px;line-height:1.8;margin-top:22px}.company-timeline{margin-top:26px}.company-director{max-width:none}.company-director-photo{aspect-ratio:1.4}.company-director figcaption{padding:25px}.company-director h3{font-size:25px}.company-intro{margin-top:20px;font-size:14px}.company-directions>a{gap:14px;grid-template-columns:24px 1fr 20px;padding-block:22px}.company-directions h3{font-size:16px}.company-tech-image .company-photo{aspect-ratio:1.1}.company-project{flex-basis:88%}.company-project-empty{grid-template-columns:1fr}.company-project-placeholder{height:175px;margin:18px 18px 0}.company-project-empty>div:last-child{padding:24px}.company-project-empty h3{font-size:19px}.company-project-empty h3 br{display:none}.company-geography-grid{grid-template-columns:1fr;gap:24px}.company-map-intro{max-width:46ch}.company-map{margin-block:8px}.company-regions{display:block}.company-regions h3{margin-bottom:10px}.company-map-note{margin-top:18px}.company-map-tooltip{width:160px;font-size:10px}.company-team .company-photo{aspect-ratio:1.35}.company-team .company-photo img{object-position:70% center}.company-closing-inner{gap:24px}.company-closing h2{font-size:26px}.company-closing h2 br:last-child{display:none}.company-detail-heading{align-items:start;flex-direction:column}.company-detail-grid{gap:24px}.company-project-detail{scroll-margin-top:90px}}
@media(max-width:374px){.company-closing h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.company-hero-copy{animation:none}.company-photo img{transition:none}.company-photo:hover img,.company-directions>a:hover>.icon{transform:none}.company-gallery{scroll-behavior:auto}}

/* Use the shared hero, header, footer and closing banner from landing.css. */
.company-hero{isolation:isolate}
.company-hero .hero-media{z-index:-2}
.company-hero .hero-shade{z-index:-1}
.company-hero .hero-copy .company-subtitle{color:white}
.company-hero .hero-copy .company-hero-description{color:#eef2f5}
.company-history-grid{align-items:start}
.company-director{margin:0;max-width:460px;padding-top:8px}
.company-director figcaption{background:transparent;color:var(--ink);padding:0}
.company-director-label{color:var(--muted);font-size:12px;letter-spacing:.06em;margin-bottom:18px}
.company-director h3{font-size:clamp(25px,2.5vw,34px);line-height:1.25}
.company-director figcaption>p:last-child{color:var(--muted);font-size:14px;line-height:1.65;max-width:none;margin-top:12px}
.company-timeline strong{color:var(--orange-link,#a84008)}
.company-tech-grid{align-items:start}
.company-tech-grid>.company-directions{margin-top:0}
.company-directions>a{grid-template-columns:minmax(0,1fr) 22px}
.company-tech-grid .company-directions>a>.icon{color:var(--orange)}
.company-projects-layout-empty{grid-template-columns:1fr}
.company-projects-layout-empty .company-gallery{display:none}
.company-projects-note{font-size:14px;line-height:1.8;max-width:62ch;margin-top:20px;color:var(--muted)}
.company-team-grid{align-items:start}
.company-team-grid>.company-intro{margin-top:0}
.company-detail-grid{grid-template-columns:1fr}
