/* Service and employer pages extend the expertise directory's visual language. */
.service-detail-hero h1 { font-size:clamp(40px,5.8vw,88px); max-width:1180px; }
.service-detail-hero .expertise-overview-intro { margin-top:32px; }
.service-detail-hero .expertise-overview-intro p { max-width:650px; }
.service-detail-hero .expertise-overview-intro .button { display:inline-flex; margin-top:0; }
.service-detail-hero h1 em { overflow-wrap:normal; }
.service-overview,.service-delivery,.service-process,.service-questions,.service-conversation,.hire-support,.hire-brief { padding-top:88px; padding-bottom:88px; }
.service-back { display:inline-block; margin-bottom:40px; font-size:14px; }
.service-overview .photo-story { margin-bottom:64px; }
.service-story { display:grid; grid-template-columns:1.3fr 1fr; gap:min(8vw,115.2px); align-items:start; }
.service-story .prose { margin-top:0; max-width:680px; }
.service-overview-heading h2 { font-size:calc(clamp(30px,3.6vw,54px) * var(--section-heading-scale, 1)); margin:20px 0 24px; }
.service-summary { max-width:620px; font-size:19px; line-height:1.6; margin-bottom:28px; }
.service-story>.service-scope { border-top-width:4px; }
.service-story .prose { color:var(--muted); }
.service-scope { padding:30px; background:#edf1e7; border-top:3px solid var(--lime); }
.service-scope ul,.hire-brief-notes ul { list-style:none; padding:0; margin:20px 0 0; }
.service-scope li,.hire-brief-notes li { padding:12px 0; border-top:1px solid var(--line); }
.service-scope li:last-child { padding-bottom:0; }
.service-delivery { background:#edf1e7; }
.service-delivery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.service-delivery-grid article { padding:30px; background:var(--paper); border-top:3px solid var(--lime); }
.service-number { display:inline-grid; place-items:center; width:42px; height:42px; border:1px solid var(--line); border-radius:50%; font-size:14px; }
.service-icon { display:inline-grid; place-items:center; width:56px; height:56px; color:var(--green); background:#edf1e7; border:1px solid var(--line); border-radius:14px; }
.service-icon svg { display:block; width:28px; height:28px; }
.service-process .service-icon { color:var(--yellow); background:#ffffff08; border-color:#ffffff40; }
.service-delivery-grid h3 { font-size:calc(28px * var(--section-heading-scale, 1)); line-height:1.15; margin:28px 0 18px; }
.service-delivery-grid p { color:var(--muted); }
.service-process .expertise-directory-heading>p { color:#cfddd2; }
.service-process .eyebrow,.service-process h2 em { color:var(--yellow); }
.service-process .service-number { border-color:#ffffff50; color:var(--yellow); }
.service-process .process-grid { gap:32px; margin-top:48px; }
.service-questions h2,.service-conversation h2,.hire-brief h2 { font-size:calc(clamp(32px,3.6vw,54px) * var(--section-heading-scale, 1)); }
.service-questions h2 { margin-bottom:24px; }
.service-questions>div>p:not(.eyebrow) { color:var(--muted); max-width:370px; }
.service-questions .underlined { display:inline-block; margin-top:24px; }
.service-conversation { background:#edf1e7; display:grid; grid-template-columns:1.3fr 1fr; gap:min(8vw,115.2px); align-items:center; }
.service-conversation h2,.hire-brief h2 { margin:24px 0; }
.service-conversation>div>p:not(.eyebrow) { max-width:580px; }
.service-actions { display:flex; align-items:center; flex-wrap:wrap; gap:28px; margin-top:32px; }
.service-conversation aside { background:var(--paper); padding:32px; }
.service-conversation aside>.eyebrow { margin-bottom:20px; }
.service-conversation aside>a { display:flex; justify-content:space-between; gap:20px; padding:20px 0; border-top:1px solid var(--line); }
.service-conversation aside>a:hover { color:#456c17; }
.hire-process-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.hire-support { background:#edf1e7; }
.hire-support-link { display:flex; align-items:center; justify-content:space-between; gap:40px; padding-top:48px; padding-bottom:48px; }
.hire-support-link h2 { font-size:calc(clamp(28px,3vw,42px) * var(--section-heading-scale, 1)); margin:18px 0; }
.hire-support-link p:not(.eyebrow) { max-width:600px; }
.hire-support-link .button { flex-shrink:0; }
.hire-support .expertise-card { background:var(--paper); }
.hire-brief { display:grid; grid-template-columns:1fr 1.15fr; gap:min(6vw,86.4px); align-items:start; }
.hire-brief-intro>p:not(.eyebrow) { max-width:470px; color:var(--muted); }
.hire-brief-notes { margin:36px 0; }
.hire-brief-notes h3 { font-size:calc(24px * var(--section-heading-scale, 1)); }
.hire-brief-intro>.underlined { display:table; margin-top:22px; }
.hire-brief-form { background:#edf1e7; padding:36px; border-top:3px solid var(--lime); }
.hire-brief-form>.eyebrow { margin-bottom:20px; }
.hire-brief-form .form-grid { gap:22px; }
.hire-brief-form .field { min-width:0; }
.hire-brief-form :is(input,select,textarea) { width:100%; min-width:0; padding:12px; background:var(--paper); }
.hire-brief-form form>.form-note { margin-top:18px; }
.hire-candidate-note { display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; padding-top:32px; padding-bottom:32px; border-top:1px solid var(--line); }
@media(max-width:1100px) {
  .service-detail-hero .expertise-overview-intro { align-items:start; flex-direction:column; gap:24px; }
  .service-delivery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hire-brief { gap:32px; }
  .hire-brief-form { padding:26px; }
  .hire-brief-form .form-grid { grid-template-columns:1fr; }
}
@media(max-width:800px) {
  .hire-support-link { flex-direction:column; align-items:start; }
  .service-detail-hero h1 { font-size:clamp(32px,7.5vw,60px); }
  .service-detail-hero .expertise-overview-intro .button { margin-top:24px; }
  .service-overview,.service-delivery,.service-process,.service-questions,.service-conversation,.hire-support,.hire-brief { padding-top:56px; padding-bottom:56px; }
  .service-story,.service-conversation,.hire-brief { grid-template-columns:1fr; gap:40px; }
  .service-overview .photo-story { margin-bottom:44px; }
  .service-questions { gap:36px; }
  .service-process .process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hire-brief-form .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px) {
  .service-delivery-grid,.service-process .process-grid,.hire-brief-form .form-grid { grid-template-columns:1fr; }
  .service-delivery-grid article,.service-scope,.service-conversation aside,.hire-brief-form { padding:24px; }
  .service-actions { align-items:start; flex-direction:column; }
  .hire-candidate-note { flex-direction:column; }
}
