/* About-specific layouts; shared responsive sections use figma-page. */
.about-page .trust-grid{grid-template-columns:minmax(0,407fr) minmax(0,466fr) minmax(0,407fr)}
.about-page .trust-card p{margin-top:1rem}
.about-page .mosaic-mobile-join{display:none}
.about-page #about-services{overflow-x:clip}
.about-page .expertise-panel h2,.about-page .expertise-item h3,.about-page .process-timeline h3,.about-page .trust-card h3,.about-page .service-card--mosaic strong{font-synthesis:none}
@media(min-width:993px){
 .about-page .about-bio{padding-top:0.875rem}
 .about-page .about-eyebrow{line-height:0.875rem}
 .about-page .process-timeline ol{gap:0;min-height:32.1875rem}
 .about-page .process-timeline li:not(:last-child){min-height:8.875rem}
 .about-page .process-timeline li>div{padding-top:0.5625rem}
}
@media(max-width:992px) and (min-width:601px){
 .about-page .trust-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .about-page .about-page-main{padding-top:4.125rem}
 .about-page .about-hero,.about-page .about-hero>.container{min-height:44.25rem}
 .about-page .about-hero>.container{padding-top:1.25rem}
 .about-page .about-hero .breadcrumbs{font-size:1rem;line-height:1.2;margin-bottom:1.5rem}
 .about-page .about-hero .breadcrumbs ol,.about-page .about-hero .breadcrumbs li{gap:0.625rem}
 .about-page .about-eyebrow{font-size:clamp(0.625rem,3.59vw,0.875rem);line-height:1.2;letter-spacing:-.04em}
 .about-page .about-eyebrow span{padding-inline:0}
 .about-page .about-bio h1{font-size:clamp(3.25rem,16.41vw,4rem);font-weight:600;line-height:1;letter-spacing:-.04em;margin-top:0.5rem}
 .about-page .about-bio .text-large{font-size:1.125rem;line-height:1.2;margin-top:0.5rem}
 .about-page .about-bio>.btn{width:100%;margin-top:2rem}
 .about-page .about-hero-photo{width:100%;max-width:21.875rem;height:21.5625rem;bottom:1.625rem}
 .about-page .about-hero::after{height:1.9375rem;border-radius:1.875rem 1.875rem 0 0}
 .about-page .about-glow--top{right:-13.75rem;top:-14.375rem}
 .about-page .about-glow--bottom{left:-15rem;top:13.75rem}
 .about-page .about-expertise{margin-top:-0.6875rem;position:relative;z-index:3}
 .about-page .expertise-grid{gap:0.75rem}
 .about-page .expertise-photo{height:17.5rem;aspect-ratio:auto;border-radius:1.875rem;object-fit:cover;object-position:center}
 .about-page .expertise-panel{padding:1.25rem;gap:1rem;border-radius:1.875rem;min-height:0}
 .about-page .expertise-panel h2,.about-page .expertise-item h3{font-size:1.25rem;line-height:1.2;font-weight:600}
 .about-page .principle-tags{display:flex;flex-direction:column;gap:0.625rem;margin-top:1rem}
 .about-page .principle-tags>span{width:100%;min-height:3.125rem;flex:auto;padding:0.75rem 1rem;font-size:1rem;line-height:1.2;justify-content:center;white-space:normal}
 .about-page .expertise-panel>div:first-child{margin-bottom:0.4375rem}
 .about-page .expertise-item p{font-size:1rem;line-height:1.2;margin-top:0.625rem}
 .about-page .expertise-grid .section-actions{gap:0.625rem;margin-top:1rem}
 .about-page .process-timeline ol{gap:2.375rem}
 .about-page .process-timeline li{grid-template-columns:3.125rem minmax(0,1fr);gap:2.5rem}
 .about-page .step-number{font-size:1.5rem;line-height:1.1}
 .about-page .timeline-line{left:2.3125rem;top:0.375rem}
 .about-page .process-timeline h3{font-size:1.25rem;line-height:1.2}
 .about-page .process-timeline p{font-size:1rem;line-height:1.2;margin-top:0.625rem}
 .about-page .trust-grid{grid-template-columns:minmax(0,1fr);gap:0.625rem}
 .about-page .trust-photo{grid-column:1;grid-row:3;height:18.875rem;min-height:0;max-height:none;object-position:center top;border-radius:1.875rem}
 .about-page .trust-card{min-height:12.375rem;padding:1.25rem;gap:1.375rem;border-radius:1.875rem}
 .about-page .trust-icon{width:2.25rem;height:2.25rem}
 .about-page .trust-icon img{transform:scale(.72)}
 .about-page .trust-card h3{font-size:1.25rem;line-height:1.2}
 .about-page .trust-card p{font-size:1rem;line-height:1.2;margin-top:1rem}
 .about-page .about-services-grid{gap:0;grid-template-rows:auto repeat(4,13.375rem) auto}
 .about-page .mosaic-intro{text-align:center;font-size:1rem;line-height:1.2;margin:0 0 1.5rem;padding:0}
 .about-page .service-card--mosaic{height:13.375rem;min-height:13.375rem;border-radius:1.875rem}
 .about-page .service-card--mosaic>span{font-size:1.5rem;line-height:1.1;left:1.5rem;right:1.5rem;bottom:1.5rem;gap:0.625rem;align-items:flex-start}
 .about-page .service-card--mosaic strong{font-weight:600}
 .about-page .service-card--mosaic small{font-size:1rem;line-height:1.2}
 .about-page .mosaic-action{margin-top:1.5rem;padding:0}
 .about-page .mosaic-mobile-join{display:block;grid-column:1;grid-row:var(--mosaic-row);align-self:end;justify-self:start;position:relative;z-index:2;transform:translate(-50%,50%);pointer-events:none}
 .about-page .mosaic-mobile-join--right{justify-self:end;transform:translate(50%,50%)}
}
@media(max-width:359px){
 .about-page .process-timeline li{grid-template-columns:2.625rem minmax(0,1fr);gap:1.625rem}
 .about-page .timeline-line{left:2rem}
 .about-page .service-card--mosaic>span{left:1.25rem;right:1.25rem;font-size:1.375rem}
 .about-page .service-card--mosaic small{font-size:0.875rem}
}

/* Process steps follow the scroll position in both directions. */
#work-process .timeline-line{display:block;width:1.25rem;height:var(--process-height,0);pointer-events:none}
#work-process .timeline-line::before,#work-process .timeline-line::after{content:'';position:absolute;left:calc(50% - .5px);top:.625rem;width:1px;height:100%;background:var(--accent);opacity:.2}
#work-process .timeline-line::after{height:var(--process-progress,0);opacity:1}
#work-process .process-marker{position:absolute;left:var(--process-marker-left,4.5rem);top:var(--process-marker-top,.875rem);width:1.25rem;height:1.25rem;border:1px solid var(--accent);border-radius:50%;background:#fff;transition:background-color .3s,box-shadow .3s}
#work-process .step-number{color:#b426684d;transition:color .3s,text-shadow .3s}
#work-process .is-reached .step-number{color:var(--accent);text-shadow:0 0 .75rem #b4266826}
#work-process .is-reached .process-marker{background:var(--accent);box-shadow:0 0 0 .1875rem #b4266826}
@media(prefers-reduced-motion:reduce){#work-process .step-number,#work-process .process-marker{transition:none}}
