/* Homepage additions; other pages retain their current layouts. */
.home .hero { gap:45px }
.home h1 { font-size:clamp(42px,4.3vw,60px); line-height:1.12; letter-spacing:-2px }
.home .hero-copy,.home .workflow { min-width:0 }
.home-workflow-steps { list-style:none; margin:0; padding:0; display:grid; gap:14px }
.home .flow-step { padding:16px 14px }
.home .flow-step>div { min-width:0 }
.home .flow-step small { display:block; font-size:12px; line-height:1.5; margin-top:3px }
/* Step numbers are the only direct spans in the updated workflow. */
.home .flow-step>.step-icon { flex:none; margin-left:0; color:var(--purple) }
.home .flow-step.active>.step-icon { color:white }
.home .flow-label,.home .flow-footer { font-size:12px }
.home .expertise-inner { flex-wrap:wrap; justify-content:center; padding-top:24px; padding-bottom:24px; gap:12px 20px }
.home .expertise-inner>span:first-child { font-size:11px }
.home .path-top { font-size:12px; gap:16px; letter-spacing:1px }
.home .path-top>span:first-child { flex:1 }
.home .circle-arrow { flex:none }
.home .path-bottom { gap:16px }
.home .promise-list { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px }
.home .promise-list li { border-top:2px solid #ded6ec; padding-top:22px }
.home .promise-list h3 { font-size:20px; color:var(--deep); margin-bottom:10px }
.home .promise-list p { font-size:15px; color:#6c6474; margin-bottom:0 }
.home .home-promises { padding-bottom:0 }
@media(max-width:1000px) {
 .home .hero { grid-template-columns:1fr; gap:48px; padding-top:60px; padding-bottom:60px }
 .home .hero-copy { max-width:720px }
 .home .workflow { max-width:600px; width:94%; margin:auto }
 .home h1 { max-width:18ch; font-size:56px }
 .home .flow-step strong { font-size:14px }
 .home .promise-list { grid-template-columns:repeat(2,minmax(0,1fr)) }
}
@media(max-width:760px) {
 .home h1 { font-size:clamp(38px,10.5vw,47px); letter-spacing:-1.5px }
 .home .workflow-body { padding:22px }
 .home .flow-step { gap:10px; padding:14px 12px }
 .home .flow-step strong { font-size:14px; line-height:1.4 }
 .home .flow-step small { font-size:12px }
 .home .expertise-inner { justify-content:flex-start }
 .home .expertise-inner strong { font-size:14px }
 .home .promise-list { grid-template-columns:1fr; gap:25px }
}
/* Keep the specialty together and the decorative dot field outside the panel. */
.home h1 em { white-space:nowrap }
.home .window-top,.home .workflow-body { position:relative; background:white }
.home .window-top { border-radius:12px 12px 0 0 }
.home .workflow-body { border-radius:0 0 12px 12px }
/* Keep each section's introduction in one continuous reading column. */
.home .section-heading { display:block }
.home .section-heading h2 { margin-bottom:16px }
.home .section-heading>p { max-width:64ch; margin-bottom:0 }
/* Approved founder portrait and a unified introduction beside it. */
.home-experience-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:center }
.founder-portrait { margin:0; min-width:0 }
.founder-portrait img { display:block; width:100%; height:auto; border-radius:8px }
.founder-portrait figcaption { margin-top:14px; font-size:14px; font-weight:800; color:var(--deep) }
.founder-portrait figcaption span { font-weight:400; color:#6c6474 }
.home-experience-copy { min-width:0 }
.home-experience-copy h2 { margin-bottom:20px }
.home-experience-copy .large-copy { font-size:21px; line-height:1.5; margin-bottom:18px }
.home-experience-copy>p:not(.eyebrow):not(.large-copy) { color:#6c6474; font-size:15px }
.home-experience-copy .text-link { margin-top:24px }
@media(max-width:1000px) {
 .home-experience-grid { gap:32px }
 .home-experience-copy h2 { font-size:32px }
 .home-experience-copy .large-copy { font-size:19px }
}
@media(max-width:760px) {
 .home-experience-grid { grid-template-columns:1fr; gap:32px }
 .founder-portrait { max-width:600px; width:100%; margin:auto }
}
