
.consult-hero { background:var(--hero-bg); color:var(--hero-ink); padding-block:clamp(4rem,7vw,7rem); border-bottom:1px solid var(--line-100); }
.consult-hero-grid { display:block; }
.consult-hero h1 { color:var(--hero-ink); max-width:23ch; font-size:clamp(2.6rem,5vw,4.8rem); font-weight:400; line-height:1.12; letter-spacing:-.04em; }
.consult-hero .eyebrow,.consult-intro { color:var(--hero-muted); }
.consult-intro { max-width:65ch; font-size:1.1rem; line-height:1.8; margin-top:2rem; }
.consult-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.3rem 2rem; margin-top:2rem; }
.consult-hero .text-link { color:var(--hero-ink); }
.consult-section { padding-block:4.5rem; }
.consult-proof,.consult-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2vw,1.5rem); }
.consult-proof article { min-width:0; border-top:1px solid var(--line-100); padding-top:1.25rem; }
.consult-steps > article { display:flex; min-width:0; flex-direction:column; border:1px solid var(--line-100); border-radius:6px; padding:clamp(1.25rem,2vw,1.75rem); background:var(--surface-100); }
.consult-proof h3,.consult-steps > article h3 { font-size:1.3rem; font-weight:500; line-height:1.35; }
.consult-proof p,.consult-steps > article p,.consult-founder { color:var(--ink-600); font-size:.95rem; }
.consult-steps > article h3 { min-height:2.7em; margin-bottom:.75rem; }
.consult-steps > article > p:not(.engagement-index):not(.engagement-output) { max-width:38ch; margin:0; }
.consult-steps > article .engagement-index { margin:0 0 1.25rem; color:var(--blue); font-size:.72rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.engagement-index span { margin-left:.5rem; color:var(--ink-600); }
.consult-steps > article .engagement-output { margin:auto 0 0; padding-top:1rem; border-top:1px solid var(--line-100); font-size:.87rem; }
.engagement-output span { display:block; margin-bottom:.35rem; color:var(--ink-900); font-size:.72rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.engagement-note { max-width:68ch; margin:1.5rem 0 0; color:var(--ink-600); font-size:.92rem; }
.consult-proof a { display:block; font-size:.88rem; margin-top:.75rem; }
.consult-founder { margin:2.5rem 0 0; padding-top:1.5rem; border-top:1px solid var(--line-100); }
.consult-services-section { display:block; }
.consult-services-section .section-heading { position:static; max-width:78ch; margin-bottom:2rem; }
.consult-services-section .section-heading p { color:var(--ink-600); }
.consult-services-section .section-heading p:last-child { max-width:76ch; line-height:1.75; }
.turnstile-widget { min-height:65px; margin-top:1rem; }
.service-row { position:relative; border-top:1px solid var(--line-100); }
.service-row:last-child { border-bottom:1px solid var(--line-100); }
.service-row summary { display:flex; align-items:center; gap:1.5rem; justify-content:space-between; cursor:pointer; padding:1.7rem 0; list-style:none; transition:color 200ms ease; }
.service-row summary:hover { color:var(--blue); }
.service-row summary:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
.service-row summary::-webkit-details-marker { display:none; }
.service-row h3 { font-size:clamp(1.15rem,2vw,1.45rem); font-weight:400; margin:0; max-width:30ch; }
.service-toggle { color:var(--blue); font-size:.75rem; flex-shrink:0; }
.when-open,.service-row[open] .when-closed { display:none; }
.service-row[open] .when-open { display:inline; }
.service-body { padding:0 0 2rem; max-width:70ch; color:var(--ink-600); }
.service-body p { max-width:68ch; line-height:1.75; }
.service-anchor-alias { position:absolute; top:0; }
.service-body .text-link { display:inline-block; margin-top:.35rem; }
.consult-principle { border-left:2px solid var(--line-200); padding-left:1rem; font-size:.92rem; margin-top:1.5rem; }
.consult-contact { margin-top:1rem; }
.consult-contact > p { max-width:65ch; }
@media(max-width:767px) {
 .consult-hero { padding-block:3.5rem; }
 .consult-hero h1 { font-size:clamp(2.3rem,9vw,3.8rem); }
 .consult-section { padding-block:3rem; }
 .consult-proof,.consult-steps { grid-template-columns:1fr; gap:1.75rem; }
 .consult-services-section .section-heading { position:static; margin-bottom:0; }
 .service-row summary { gap:1rem; }
 .service-toggle { max-width:4ch; line-height:1.5; }
}
@media print { .service-row::details-content { display:block; } }
