.search-service, .engagements { scroll-margin-top: 24px; }
.search-service-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .8fr); gap: clamp(36px, 7vw, 110px); margin-bottom: 52px; }
.service-label { color: var(--accent-strong); font-size: 16px; font-weight: 700; margin: 0 0 22px; }
.search-service h2 { font-size: clamp(38px, 5vw, 70px); letter-spacing: -.025em; line-height: 1.06; font-weight: 500; max-width: 15ch; margin: 0; text-wrap: balance; }
.search-service-summary p, .search-service-steps p, .search-service-report p, .engagement-option > p:not(.engagement-fit), .engagement-note { color: var(--ink-soft); font-size: 17px; line-height: 1.7; text-wrap: pretty; max-width: 65ch; margin: 0 0 20px; }
.search-service-summary .text-link { display: inline-block; margin-top: 5px; }
.search-service-steps { list-style: none; padding: 0; margin: 0; counter-reset: search-step; border-top: 1px solid var(--rule-strong); }
.search-service-steps li { display: grid; grid-template-columns: 44px minmax(180px, .7fr) minmax(0, 1.3fr); gap: 26px; align-items: baseline; padding: 30px 0; border-bottom: 1px solid var(--rule); counter-increment: search-step; }
.search-service-steps li::before { content: counter(search-step, decimal-leading-zero); color: var(--accent-strong); font-weight: 600; font-size: 14px; }
.search-service-steps h3 { font-size: clamp(23px, 2.3vw, 30px); font-weight: 500; letter-spacing: -.015em; line-height: 1.2; text-wrap: balance; margin: 0; }
.search-service-steps p { margin: 0; }
.search-service-report { display: flex; align-items: baseline; gap: clamp(24px, 5vw, 80px); padding-top: 30px; }
.search-service-report strong { flex: 1; font-size: 19px; font-weight: 600; line-height: 1.5; }
.search-service-report p { flex: 1.5; margin: 0; font-size: 15px; }
.engagements h2 { text-wrap: balance; }
.engagement-options { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid var(--rule-strong); }
.engagement-option { padding: clamp(28px, 4vw, 54px); display: flex; align-items: flex-start; flex-direction: column; }
.engagement-option--retainer { background: var(--surface-deep); border-left: 1px solid var(--rule); }
.engagement-fit { color: var(--accent-strong); font-size: 14px; font-weight: 600; margin: 0 0 22px; }
.engagement-option h3 { font-size: clamp(32px, 3.5vw, 48px); font-weight: 500; letter-spacing: -.025em; line-height: 1.1; text-wrap: balance; margin: 0 0 24px; }
.engagement-option ul { list-style: none; width: 100%; padding: 0; margin: 0 0 30px; }
.engagement-option li { color: var(--ink-soft); border-top: 1px solid var(--rule); padding: 13px 0; font-size: 15px; line-height: 1.5; }
.engagement-option > a { margin-top: auto; }
.engagement-note { margin: 28px 0 0; max-width: 82ch; font-size: 15px; }
.search-service a:focus-visible, .engagements a:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
@media (max-width: 900px) { .search-service-intro { grid-template-columns: 1fr; gap: 30px; } .search-service h2 { max-width: 18ch; } .search-service-steps li { grid-template-columns: 36px 1fr; gap: 12px 20px; } .search-service-steps p { grid-column: 2; } .search-service-report { display: block; } .search-service-report p { margin-top: 14px; } }
@media (max-width: 600px) { .engagement-options { grid-template-columns: 1fr; } .engagement-option { padding: 30px 24px; } .engagement-option--retainer { border-left: 0; border-top: 1px solid var(--rule); } .search-service-steps li { padding: 26px 0; } .search-service-summary p, .search-service-steps p { font-size: 16px; } }
