/* Homepage rhythm: compact section spacing, without shrinking type or controls. */
main>section:not(.hero){padding-block:72px}
main>section .sec-eyebrow{margin-bottom:16px}
#company .pillars,#diagnosis .pillars{margin-top:32px}
#company .practice-art{height:156px;margin-bottom:20px;padding-block:14px 24px}
.gap-heading{margin-bottom:28px}
.work-map{padding-block:28px}
#approach .beam{margin-top:28px;padding-block:24px 28px}
#approach .beam-col{gap:16px}
#approach .pillars{margin-top:20px}
#approach .pillar{padding-block:20px 0}
.consult-expect{margin-block:28px;gap:18px}
@media(max-width:800px){
 main>section:not(.hero){padding-block:56px}
 .gap-heading{gap:20px}
 .consult-grid{gap:28px}
}
@media(max-width:600px){
 main>section:not(.hero){padding-block:44px}
 main>section .sec-eyebrow{margin-bottom:12px}
 #company .pillars,#diagnosis .pillars{margin-top:24px}
 #company .practice-art{height:144px;margin-bottom:16px}
 .gap-heading{margin-bottom:24px}
 .work-map{padding-block:24px;gap:20px}
 #approach .beam{margin-top:20px;padding-block:20px}
 #approach .beam-col{gap:12px}
 #approach .pillars{margin-top:16px;gap:20px}
 .consult-expect{margin-block:20px}
}
/* A quiet bridge from the film to the company, rather than three slogan cards. */
.hero .recomposition{background:var(--home-pale);color:var(--home-ink);gap:48px;padding-block:32px;border-bottom:1px solid #102c3514}
.hero .recomposition>div{position:relative;display:block}
.hero .recomposition>div+div::before{content:'→';position:absolute;left:-32px;top:3px;color:var(--rc-brand-teal);font-size:20px}
.hero .recomposition h2{font-size:19px;letter-spacing:-.035em;margin:0 0 8px;font-weight:650}
.hero .recomposition p{color:var(--home-muted);font-size:13px;margin:0;line-height:1.7}
@media(max-width:600px){.hero .recomposition{gap:22px;padding-block:28px}.hero .recomposition>div{padding-left:22px}.hero .recomposition>div::before,.hero .recomposition>div+div::before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;background:var(--rc-brand-teal);border-radius:50%}.hero .recomposition>div:not(:last-child)::after{content:'';position:absolute;left:2px;top:20px;bottom:-20px;width:1px;background:#167d8d30}.hero .recomposition h2{font-size:18px}}
.hero .recomposition h2,.hero .recomposition p{word-break:keep-all;overflow-wrap:normal}
@media(min-width:601px) and (max-width:800px){.hero .recomposition{gap:28px;padding-inline:24px}.hero .recomposition h2{font-size:16px}.hero .recomposition>div+div::before{left:-21px;font-size:16px}}
