/* Service-family layout extends the shared editorial grid and global typography. */
.consulting-page{--pc-line:#c4dce3;--pc-body:var(--body-text)}
.pc-hero{padding-bottom:72px}
.pc-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;padding:30px 0 0}
.pc-hero .ip-label{color:#96dbdd}
.pc-hero h1{margin-bottom:25px}
.pc-hero h1 em{color:var(--ip-teal)}
.pc-hero-copy>p{font-size:1.125rem;line-height:1.75;color:var(--body-text-on-dark);max-width:560px;margin-bottom:28px}
.pc-hero-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:24px 30px}
.pc-hero-actions .ip-inline-link{color:#a6ece4;width:fit-content;align-self:center}
.pc-blueprint{margin:0;border:1px solid #3a6070;background:#0b3043b8;padding:28px}
.pc-blueprint figcaption{font-size:.875rem;line-height:1.6;color:#b6d3db;margin-bottom:25px}
.pc-blueprint ol{list-style:none;padding:0;margin:0;display:grid;gap:18px}
.pc-blueprint li{position:relative;padding:18px 20px;border:1px solid #3a6070;background:#092534}
.pc-blueprint li+li:before{content:"";position:absolute;top:-19px;left:28px;width:1px;height:18px;background:#63d7d4}
.pc-blueprint li>span{display:block;color:#9ae7df;font-size:.875rem;line-height:1.6;margin-bottom:5px}
.pc-blueprint strong{display:block;font-family:var(--font-display);font-size:1.25rem;line-height:1.45;letter-spacing:-.025em}
.pc-blueprint li>p{font-size:1rem;line-height:1.65;color:var(--body-text-on-dark);margin:7px 0 0}
.pc-blueprint-footer{display:flex;flex-wrap:wrap;gap:11px;font-size:.875rem;line-height:1.6;color:#9ec4d0;margin-top:25px}
.pc-blueprint-footer>span{color:#547c8a}
.pc-start{background:#edf7f8}
.pc-start-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pc-start-choice{display:block;border:1px solid var(--pc-line);padding:28px;background:#fff;min-width:0;color:#0a344a;text-decoration:none;transition:background .2s,border-color .2s}
.pc-start-choice:hover{background:#f5fcfc;border-color:#249da5}
.pc-start-choice[aria-selected=true]{border-color:#1598a3;background:#fff;box-shadow:inset 0 3px 0 #1598a3}
.pc-choice-top{display:flex;justify-content:space-between;align-items:center;color:#178690;margin-bottom:24px;font-size:.875rem;font-weight:700}
.pc-choice-top .ms-icon{font-size:24px}
.pc-start-grid h3{font-size:1.5rem;line-height:1.3;margin-bottom:18px}
.pc-start-grid p{font-size:1rem;line-height:1.75;color:var(--pc-body);margin:0}
.pc-briefs{margin-top:24px}
.pc-brief{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;padding:44px;border:1px solid var(--pc-line);background:#fff}
.pc-brief+.pc-brief{margin-top:24px}
.pc-brief h3{font-size:clamp(1.75rem,2.5vw,2.6rem);line-height:1.22;margin-bottom:22px}
.pc-brief p,.pc-brief li{font-size:1rem;line-height:1.75;color:var(--pc-body)}
.pc-brief-question>.ip-inline-link{width:fit-content;margin-top:28px;color:#167f8e}
.pc-brief-details{display:grid;gap:23px}
.pc-brief-details h4{font:700 .875rem/1.6 var(--font-body);color:#167f8e;margin:0 0 8px}
.pc-brief-details :is(p,ul){margin:0}.pc-brief-details ul{padding-left:19px}
.pc-brief-output{padding-top:22px;border-top:1px solid #cfe3e7}
.consulting-page .pc-scope-note{font-size:.875rem;line-height:1.7;color:var(--pc-body);margin:20px 0 0}
.pc-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.pc-work-grid article{display:flex;flex-direction:column;border-top:1px solid var(--pc-line);padding-top:27px;min-width:0}
.pc-work-grid .ms-icon{font-size:32px;color:#1392a3;margin-bottom:24px;align-self:flex-start}
.pc-work-grid h3{font-size:1.45rem;line-height:1.3;margin-bottom:20px}
.pc-work-grid p{font-size:1rem;line-height:1.75;color:var(--pc-body);margin:0 0 26px}
.pc-working-question{margin-top:auto;font-size:1rem;line-height:1.65;font-weight:700;padding-top:20px;border-top:1px solid #d9e9ec}
.pc-roadmap{color:#fff;background:#092d42}
.pc-roadmap .ip-label{color:#96dbdd}.pc-roadmap h2 em{color:var(--ip-teal)}
.pc-roadmap .ip-section-heading>p{color:var(--body-text-on-dark)}
.pc-roadmap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.pc-roadmap-grid>li{padding:0 24px 0 0;min-width:0;display:flex;flex-direction:column}
.pc-roadmap-grid>li+li{padding-left:24px;border-left:1px solid #355b6e}
.pc-stage-number{font:700 2.3rem/1.2 var(--font-display);letter-spacing:-.05em;color:var(--process-step-rest);padding-bottom:28px;transition:color 500ms}
.pc-roadmap-grid>li:is(:hover,:focus-within)>.pc-stage-number{color:var(--process-step-hover)}
.pc-roadmap h3{font-size:1.4rem;line-height:1.3;margin-bottom:20px}
.pc-roadmap-grid>li>p{color:var(--body-text-on-dark);font-size:1rem;line-height:1.75;margin-bottom:25px}
.pc-stage-decision{margin-top:auto;padding-block:20px;border-top:1px solid #355b6e}
.pc-stage-decision>span,.pc-stage-output>span{display:block;color:#88d9d8;font-size:.875rem;line-height:1.6;margin-bottom:9px}
.pc-stage-decision strong{font-size:1rem;font-weight:600;line-height:1.65}
.pc-stage-output{padding-top:20px;border-top:1px solid #355b6e}
.pc-stage-output p{font-size:1rem;line-height:1.65;color:var(--body-text-on-dark);margin:0}
.consulting-page .pc-roadmap-note{font-size:.875rem;line-height:1.7;color:var(--body-text-on-dark);border-top:1px solid #355b6e;padding-top:25px;margin:38px 0 0}
.pc-delivery-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center}
.pc-delivery h2{margin-bottom:28px}
.pc-delivery p{font-size:1rem;line-height:1.8;color:var(--pc-body);margin-bottom:22px}
.pc-delivery .ip-inline-link{color:#167f8e;width:fit-content;margin-top:30px}
.pc-delivery figure{margin:0;min-width:0}
.pc-delivery-image{position:relative;background:#edf7f8}
.pc-delivery img{display:block;width:100%;height:auto;aspect-ratio:1440/759;object-fit:contain}
.pc-delivery .image-corners{inset:16px;opacity:.9}
.pc-delivery figcaption{font-size:.875rem;line-height:1.7;color:var(--pc-body);border-bottom:1px solid var(--pc-line);padding-block:19px}
.pc-questions{background:#edf7f8}
.pc-questions .ip-faq-list :is(summary,p){font-size:1rem}.pc-questions .ip-faq-list p{color:var(--pc-body);line-height:1.8}
/* html scroll-padding already accounts for the fixed header. */
.consulting-page section[id]{scroll-margin-top:0}
@media(max-width:1100px){.pc-hero-grid{gap:5%}.pc-blueprint{padding:22px}.pc-start-grid{gap:16px}.pc-start-choice{padding:24px}.pc-work-grid,.pc-roadmap-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.pc-roadmap-grid>li{padding:0}.pc-roadmap-grid>li+li{padding-left:0;border:0}.pc-roadmap-grid>li:nth-child(even){padding-left:28px;border-left:1px solid #355b6e}.pc-brief{padding:32px;gap:7%}}
@media(max-width:850px){.pc-hero-grid{grid-template-columns:1fr;gap:38px}.pc-blueprint{max-width:640px}.pc-start-grid{grid-template-columns:1fr}.pc-hero{padding-bottom:55px}.pc-start-choice{padding:23px}.pc-start-grid h3{margin-bottom:12px}.pc-choice-top{margin-bottom:15px}.pc-brief{grid-template-columns:1fr;gap:32px}.pc-delivery-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:600px){.pc-hero-grid{padding-top:18px}.pc-hero h1{font-size:clamp(2.8rem,11vw,3.4rem);line-height:1.1}.pc-hero-copy>p{font-size:1rem}.pc-blueprint{padding:20px}.pc-blueprint li{padding:18px}.pc-hero-actions{gap:25px}.pc-brief{padding:25px}.pc-work-grid,.pc-roadmap-grid{grid-template-columns:1fr;gap:32px}.pc-roadmap-grid>li:nth-child(even){padding-left:0;border-left:0}.pc-roadmap-grid>li+li{padding-top:30px;border-top:1px solid #355b6e}.pc-stage-number{padding-bottom:20px}.pc-roadmap-note{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.pc-start-choice{transition:none}}
/* Phone choices stay direct and compact; the full situation is explained by the
 * selected brief below. No extra accordion or sideways selector is introduced. */
@media(max-width:600px){.pc-start-choice{padding:19px 22px}.pc-start-grid h3{margin:0;font-size:1.25rem}.pc-start-grid p{display:none}.pc-choice-top{margin-bottom:11px}.pc-start-grid{gap:12px}}

/* Sentence-length questions are reading copy, not metadata labels. */
.pc-working-question{color:var(--body-text)}
.pc-stage-decision strong{color:var(--body-text-on-dark)}
.industry-page .pc-hero-actions .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
@media(prefers-reduced-motion:reduce){.pc-stage-number{transition:none}}
