/* Consistent typography, clearer service hierarchy, and restrained motion. */
:root{--ink:#372b25;--muted:#62554d}
body,button,input,textarea,select{font-family:var(--sans)}
h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:500}
p{color:var(--muted)}
.expertise-hero{padding:76px 0 64px;background:radial-gradient(ellipse at 50% 0%,#ede7dd80,transparent 75%)}
.expertise-hero .hero-copy{max-width:920px;margin:0 auto;text-align:center}
.expertise-hero h1{font-size:clamp(2.7rem,5.2vw,4.6rem);line-height:1.13;margin-bottom:24px}
.expertise-hero .eyebrow{font-size:.75rem;line-height:1.8;letter-spacing:.1em;display:block;margin-bottom:24px}
.expertise-hero .hero-lead,.hero-proof{font-family:var(--sans);font-size:1.15rem;line-height:1.75;color:var(--muted);font-weight:400;max-width:740px;margin:0 auto}
.hero-proof{margin-top:18px}
.expertise-hero .hero-actions{justify-content:center;margin-top:28px;gap:24px}
.group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.group-card{padding:30px 26px;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.group-card>p{min-height:145px;font-size:1rem}
.group-card h3{font-size:1.9rem;min-height:4.6rem}
.group-card:hover,.group-card:focus-within{transform:translateY(-5px);box-shadow:0 16px 38px #372b2510;border-color:var(--gold)}
.section-heading p{font-size:1rem;line-height:1.7}
.bio-portrait{display:block;width:100%;max-width:220px;height:auto;aspect-ratio:741/879;object-fit:contain;border-radius:8px;margin-top:30px}
.consultant-section figure img{width:100%;max-width:200px;height:auto;aspect-ratio:741/879;object-fit:contain;border-radius:8px;margin:0 auto;display:block}
.consultant-section figure figcaption{text-align:center;max-width:360px;margin-inline:auto;font-size:.9rem;color:var(--muted)}
.bio-grid h3{font-size:1.65rem;margin-top:30px;margin-bottom:12px;line-height:1.3}
.bio-copy p,.bio-copy li{font-family:var(--sans);font-size:1rem;font-weight:400;line-height:1.75;color:var(--muted);letter-spacing:normal}
.bio-copy p{margin:0}
.bio-copy p+p{margin-top:20px}
.expertise-list{list-style:none;padding:0;margin:20px 0}
.expertise-list li{position:relative;padding-left:20px}
.expertise-list li+li{margin-top:8px}
.expertise-list li::before{content:'·';position:absolute;left:0;color:var(--gold);font-size:1.35rem;line-height:1.3}
.footer-main>div>p{max-width:330px;line-height:1.7}
.cta p,.cta h2{color:var(--white)}
.cta .eyebrow{line-height:1.8}
.research-media{background:var(--wash)}
.media-grid,.demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.media-card{border:1px solid var(--line);background:var(--white);border-radius:10px;overflow:hidden}
.media-card>a{display:block;background:#f5f3f0;padding:16px}
.media-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;transition:transform .3s ease}
.media-card>a:hover img,.media-card>a:focus-visible img{transform:scale(1.02)}
.media-card>div{padding:28px}
.media-card h3,.video-demo h3{font-size:1.9rem;margin:12px 0}
.media-card p,.video-demo p{font-size:1rem;margin-bottom:18px;line-height:1.75}
.media-card .inline-link,.video-demo .inline-link{font-size:1rem}
.demo-grid{margin-top:30px}
.video-demo{padding:28px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.video-demo video{width:100%;max-height:360px;background:#211b17;border-radius:6px;margin:20px 0}
.video-demo iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:6px;margin:20px 0;background:#211b17}
.video-demo video[hidden]{display:none}
.video-demo .button{margin-bottom:16px}
.video-demo .inline-link{display:inline-block}
.media-note{font-size:.9rem;line-height:1.65;max-width:840px;margin-top:24px}
.video-status:empty{display:none}
.motion-in{animation:gentle-arrival .6s ease-out both}
@keyframes gentle-arrival{from{opacity:.4;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(min-width:801px){.hero-copy{animation:gentle-arrival .7s ease-out both}}
@media(max-width:950px){.group-grid{grid-template-columns:1fr}.group-card h3,.group-card>p{min-height:0}.group-card h3{margin-bottom:18px}.group-card{padding:28px}.hero-proof{max-width:680px}}
@media(max-width:650px){
 .expertise-hero{padding:45px 0}
 .expertise-hero h1{font-size:clamp(2.4rem,9.2vw,3.4rem)}
 .expertise-hero .eyebrow{font-size:.72rem;max-width:370px;margin-inline:auto}
 .expertise-hero .hero-lead,.hero-proof{font-size:1.05rem}
 .expertise-hero .hero-actions{gap:16px}
 .media-grid,.demo-grid{grid-template-columns:1fr}
 .media-card>div,.video-demo{padding:22px}
 .bio-portrait{max-width:220px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.group-card:hover,.group-card:focus-within{transform:none}}
