.detail-hero { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:5vw; padding:64px 0 56px; }
.detail-hero h1 { font-size:clamp(38px,4.5vw,66px); line-height:1.12; letter-spacing:-.035em; margin:20px 0; text-wrap:balance; }
.detail-name { font-size:18px; font-weight:650; color:var(--blue); margin:24px 0 12px; }
.detail-hero .button { margin-top:24px; }
.detail-hero .back-link { margin-bottom:28px; }
.detail-people { position:relative; margin:0; align-self:center; isolation:isolate; }
.detail-people img { display:block; width:100%; height:auto; max-height:530px; object-fit:contain; position:relative; }
.portrait-orbit { position:absolute; inset:15% 4% 10%; border:1px solid #dce4ee; border-radius:50%; background:linear-gradient(140deg,#f5f8fc,white); z-index:-1; }
.portrait-caption { position:relative; margin:-18% 4% 0; padding:24px; border:1px solid var(--line); background:white; box-shadow:0 15px 30px -24px #17233766; }
.portrait-caption span { font-size:12px; color:var(--blue); letter-spacing:.1em; display:block; margin-bottom:8px; }
.portrait-caption strong { font-size:21px; line-height:1.4; font-weight:550; }
.detail-people figcaption { font-size:11px; color:var(--muted); text-align:center; margin-top:16px; }
.detail-jumps { display:flex; flex-wrap:wrap; gap:12px 28px; padding:22px 0; border-block:1px solid var(--line); font-size:15px; }
.detail-jumps a { padding:10px 0; color:var(--blue); }
.engagement-facts { margin:28px 0 0; }
.engagement-facts > div { display:grid; grid-template-columns:minmax(160px,.65fr) 1.65fr; gap:28px; padding:20px 0; border-top:1px solid var(--line); }
.engagement-facts dt { font-size:16px; font-weight:600; color:var(--ink); line-height:1.6; }
.engagement-facts dd { margin:0; font-size:18px; line-height:1.7; color:#505b67; }
.framework-example { list-style:none; padding:0; margin:40px 0 0; }
.framework-example > li { padding:32px 0; border-top:2px solid var(--blue); }
.framework-example .text-link { margin-top:20px; }
@media(max-width:700px) { .engagement-facts > div { grid-template-columns:1fr; gap:8px; } .engagement-facts dd { font-size:17px; } }
.detail-section { padding:76px 0; border-bottom:1px solid var(--line); scroll-margin-top:120px; }
.detail-section h2,.detail-example h2 { font-size:clamp(30px,3.1vw,46px); line-height:1.2; letter-spacing:-.03em; margin:18px 0 28px; text-wrap:balance; }
.detail-section h3 { font-size:24px; line-height:1.3; margin:0 0 14px; letter-spacing:-.02em; }
.detail-section p,.detail-example p { font-size:18px; line-height:1.75; color:#505b67; margin:0 0 22px; }
.detail-split { display:grid; grid-template-columns:.9fr 1.1fr; gap:7vw; }
.detail-list { margin:0 0 24px; padding-left:22px; font-size:18px; line-height:1.75; }
.detail-list li { padding:0 0 16px 8px; }
.delivery-steps { list-style:none; padding:0; margin:40px 0 0; }
.delivery-steps li { display:grid; grid-template-columns:80px 1fr; padding:28px 0; border-top:1px solid var(--line); max-width:900px; }
.step-number { font-size:28px; font-variant-numeric:tabular-nums; color:var(--blue); }
.delivery-steps li p { max-width:720px; margin-bottom:0; }
.deliverable-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin-top:40px; }
.deliverable-grid article { border-top:2px solid var(--blue); padding-top:24px; }
.deliverable-number { font-size:13px; color:var(--blue); display:block; margin-bottom:26px; }
.detail-example { padding:40px; background:#f5f8fb; margin:50px 0 0; border-left:3px solid var(--blue); }
.example-comparison { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.example-comparison span { font-size:12px; letter-spacing:.06em; color:var(--blue); display:block; margin-bottom:14px; }
.scope-note { border-left:2px solid var(--red); padding-left:20px; font-size:16px!important; margin-top:28px!important; }
.detail-faq details { border-top:1px solid var(--line); }
.detail-faq summary { font-size:18px; padding:20px 0; cursor:pointer; line-height:1.5; }
.detail-faq p { font-size:17px; }
.companion-link { margin:20px 0 0 24px; }
.other-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.other-services a { padding:24px 0; border-top:1px solid var(--line); }
.other-services span { font-size:12px; color:var(--blue); display:block; margin-bottom:12px; }
.other-services strong { font-size:21px; font-weight:550; line-height:1.4; display:block; }
.service-directory { display:grid; grid-template-columns:1fr 1fr; gap:36px 50px; }
.service-preview { border-top:2px solid var(--blue); padding:28px 0; }
.service-preview h2 { font-size:30px; line-height:1.3; margin:20px 0; letter-spacing:-.02em; }
.service-preview p { font-size:18px; line-height:1.7; }
.service-preview .eyebrow { font-size:12px; }
.service-preview .service-format { font-size:14px; color:var(--muted); margin:24px 0; }
.about-privacy { margin-top:24px; font-size:15px!important; }
.about-privacy a { color:var(--blue); text-decoration:underline; }
.delivery-steps li { transition:border-color .3s ease; }
.delivery-steps li.is-active { border-top-color:var(--blue); }
@media(max-width:900px) { .detail-hero { gap:24px; grid-template-columns:1.1fr .9fr; } .detail-split { gap:32px; } .deliverable-grid { gap:22px; } }
@media(max-width:700px) { .detail-hero,.detail-split,.service-directory,.deliverable-grid,.example-comparison,.other-services { grid-template-columns:1fr; } .detail-hero { padding:40px 0; } .detail-people { max-width:470px; width:100%; margin:16px auto 0; } .detail-section { padding:48px 0; } .detail-example { padding:28px 22px; } .detail-jumps { gap:4px 22px; } .delivery-steps li { grid-template-columns:50px 1fr; } .companion-link { display:block; margin-left:0; } .detail-hero h1 { font-size:40px; } .portrait-caption strong { font-size:19px; } }
@media(prefers-reduced-motion:reduce) { .delivery-steps li { transition:none; } }
