/* Services extension: approved IMPACT tokens, Onest 400, solid surfaces. */
.catalog-page{font-synthesis:none;background:#fff;color:#171717}
.svc{font:400 18px/28px Onest,Arial,sans-serif;--ink:#171717;--wine:#32131d;--accent:#ff5a2b;--muted:#656565;--line:#d6d6d6}
.svc *{box-sizing:border-box}.svc [hidden]{display:none!important}.svc h1,.svc h2,.svc h3,.svc strong,.svc b{font-weight:400}.svc h1,.svc h2,.svc h3,.svc p{margin:0}.svc a{color:inherit;text-decoration:none}.svc button,.svc input,.svc select{font:inherit}.svc button{cursor:pointer}.svc :focus-visible{outline:2px solid currentColor;outline-offset:5px}.svc section[id]{scroll-margin-top:calc(var(--header-height,80px) + 32px)}
.svc-wrap{width:min(1280px,calc(100% - 112px));margin:auto}.svc-section{padding:112px 0}.svc h1{font-size:clamp(40px,5vw,72px);line-height:1.14;letter-spacing:-.02em;overflow-wrap:break-word}.svc h2{font-size:clamp(32px,3.5vw,48px);line-height:1.19;letter-spacing:-.015em}.svc h3{font-size:28px;line-height:36px;letter-spacing:-.01em}.svc-kicker{font-size:14px;line-height:20px;display:flex;align-items:center;gap:12px;margin-bottom:32px}.svc-kicker:before{content:'';width:6px;height:6px;background:var(--accent);border-radius:50%;flex:none}.svc-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:56px;background:var(--accent);color:var(--ink)!important;border:0;border-radius:8px;padding:16px 24px;font-size:16px;line-height:22px}.svc-button .ui-arrow{transition:transform .42s cubic-bezier(.22,1,.36,1)}.svc-button:hover .ui-arrow{transform:translate(3px,-3px) rotate(-7deg)}.svc-text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:16px;text-decoration:underline!important;text-underline-offset:5px}
.svc-hero{background:var(--ink);color:#fff;padding:24px 0 64px;overflow:hidden}.svc-crumbs{display:flex;flex-wrap:wrap;gap:10px;color:#a3a3a3;font-size:14px;line-height:20px;margin-bottom:64px}.svc-crumbs a{color:#fff;min-height:28px}.svc-hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:64px;align-items:center}.svc-hero h1{max-width:850px}.svc-hero .svc-lead{font-size:22px;line-height:32px;color:#c4b8bd;max-width:690px;margin:24px 0 32px}.svc-hero-art{position:relative;aspect-ratio:1;display:grid;place-items:center}.svc-hero-art img{width:115%;max-width:520px;height:auto;object-fit:contain}.svc-hero-art>span{position:absolute;bottom:0;left:0;font-size:14px;color:#a3a3a3}.svc-hero-terms{display:flex;gap:24px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:1px solid #806b73;font-size:14px;color:#c4b8bd}.svc-price-lead{display:block;font-size:22px;line-height:32px;margin-bottom:24px}.svc-section-nav{border-bottom:1px solid var(--line);background:#fff}.svc-section-nav .svc-wrap{display:flex;gap:32px;overflow-x:auto}.svc-section-nav a{font-size:16px;white-space:nowrap;display:flex;align-items:center;min-height:64px}.svc-heading-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;margin-bottom:48px}.svc-heading-grid>p{color:var(--muted)}.svc-emphasis{color:var(--accent)}.svc-situations{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:32px}.svc-situations p{color:var(--muted);margin-top:16px;max-width:600px}.svc-list{border-top:1px solid var(--line)}.svc-work{display:grid;grid-template-columns:48px minmax(0,1.4fr) minmax(0,1fr);gap:32px;padding:32px 0;border-bottom:1px solid var(--line)}.svc-work>span{color:var(--muted);font-size:14px}.svc-work p{color:var(--muted);margin-top:12px}.svc-work small{font-size:16px;line-height:26px;color:var(--muted);align-self:center;padding-left:32px;border-left:1px solid var(--line)}.svc-deliverables{background:var(--wine);color:#fff}.svc-deliverables p{color:#c4b8bd}.svc-output{max-width:900px;font-size:28px;line-height:40px;margin:32px 0!important}.svc-deliverables .svc-text-link{margin-top:32px}.svc-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.svc-process article{border-top:1px solid var(--line);padding-top:24px}.svc-process span{font-size:14px;color:var(--muted)}.svc-process h3{margin:24px 0 16px;font-size:24px;line-height:31px}.svc-process p{font-size:16px;line-height:26px;color:var(--muted)}.svc-note{font-size:16px;line-height:26px;color:var(--muted);max-width:900px;margin-top:32px!important}.svc-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid var(--line);padding-top:32px}.svc-price{font-size:clamp(32px,4vw,56px);line-height:1.2;display:block;margin:24px 0}.svc-price-grid p+p{margin-top:16px}.svc-price-grid .svc-button{margin-top:24px}.svc-proof{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.svc-proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.svc-proof article{padding-top:24px;border-top:1px solid var(--line)}.svc-proof p{margin:16px 0;color:var(--muted)}.svc-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.svc-faq details{border-bottom:1px solid var(--line)}.svc-faq details:first-child{border-top:1px solid var(--line)}.svc-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;cursor:pointer}.svc-faq summary::-webkit-details-marker{display:none}.svc-faq summary>span{font-size:28px;flex:none;transition:transform .2s}.svc-faq details[open] summary>span{transform:rotate(45deg)}.svc-faq details p{padding:0 24px 24px 0;color:var(--muted)}.svc-related-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.svc-related-grid a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);min-height:88px;font-size:22px;line-height:32px;padding:20px 0}.svc-related-grid a:hover{color:var(--accent)}
.svc-motion-track{height:320svh;min-height:1800px;margin:0}.svc-motion-sticky{position:sticky;top:var(--header-height,80px);height:calc(100svh - var(--header-height,80px));min-height:460px;display:flex;flex-direction:column;justify-content:center;padding:32px 0;background:#fff}.svc-motion-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center;min-height:0;flex:1}.svc-motion-copy p{margin-top:24px;color:var(--muted)}.svc-motion-stage{height:clamp(240px,45svh,420px);position:relative;display:grid;place-items:center;overflow:hidden}.svc-motion-visual,.svc-motion-visual svg{display:block;width:100%;height:100%;font-family:Onest,Arial,sans-serif;font-weight:400}.svc-motion-actions{position:absolute;inset:0;pointer-events:none}.svc-motion-actions button{position:absolute;background:transparent;border:0;pointer-events:auto;border-radius:8px}.svc-motion-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:24px}.svc-motion-steps button{border:0;border-top:1px solid var(--line);background:none;color:var(--muted);font-size:16px;line-height:24px;padding:16px 0;text-align:left;min-height:64px;position:relative}.svc-motion-steps button:before{content:'';position:absolute;top:-1px;left:0;width:calc(var(--progress,0)*100%);height:2px;background:var(--accent)}.svc-motion-steps button[aria-current]{color:var(--ink)}.svc-motion-caption{font-size:14px;line-height:20px;color:var(--muted);margin-top:16px!important;display:flex;justify-content:space-between;gap:24px}.svc-motion-static{font-size:16px;color:var(--muted);margin-top:24px!important}
.svc-catalog-head{max-width:900px}.svc-search{display:flex;gap:24px;align-items:end;margin:48px 0;flex-wrap:wrap}.svc-search label{display:flex;flex-direction:column;gap:10px;flex:1;min-width:220px;font-size:14px}.svc-search input,.svc-search select{height:64px;padding:18px;border:1px solid #a3a3a3;border-radius:8px;background:#fff;color:var(--ink);width:100%;font-size:18px}.svc-search p{color:var(--muted);font-size:16px}.svc-catalog-group{padding:48px 0;border-top:1px solid var(--line)}.svc-catalog-group h2{margin-bottom:32px}.svc-catalog-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 24px;gap:32px;border-top:1px solid var(--line);padding:24px 0;align-items:center}.svc-catalog-row h3{font-size:24px;line-height:31px}.svc-catalog-row p{font-size:16px;line-height:26px;color:var(--muted)}.svc-catalog-row:hover h3{color:var(--accent)}.svc-status{display:block;font-size:14px;line-height:20px;color:var(--muted);margin-top:12px}.svc-catalog-empty{padding:32px 0}.svc-existing-links{padding:64px var(--gutter);background:#fff;color:#171717}.svc-existing-links h2{font:400 32px/38px Onest,Arial,sans-serif;margin-bottom:24px}.svc-existing-links>div{display:flex;flex-wrap:wrap;gap:16px 32px}.svc-existing-links a{font:400 18px/28px Onest,Arial,sans-serif;color:#171717;min-height:44px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:1000px){.svc-wrap{width:calc(100% - 48px)}.svc-hero-grid{gap:32px}.svc-heading-grid,.svc-price-grid,.svc-faq-grid{gap:40px}.svc-process{grid-template-columns:1fr 1fr}.svc-motion-layout{gap:24px}.svc h3{font-size:24px;line-height:31px}}
@media(max-width:760px){.svc-wrap{width:calc(100% - 40px)}.svc-section{padding:72px 0}.svc-hero{padding-bottom:40px}.svc-crumbs{margin-bottom:40px;font-size:12px}.svc-hero-grid{grid-template-columns:1fr;gap:16px}.svc-hero .svc-lead{font-size:20px;line-height:30px}.svc-hero-art{display:none}.svc h1{font-size:40px;line-height:46px}.svc h2{font-size:32px;line-height:38px}.svc-kicker{margin-bottom:24px}.svc{font-size:16px;line-height:26px}.svc-hero-terms{gap:16px;margin-top:32px}.svc-section-nav .svc-wrap{gap:24px}.svc-section-nav a{min-height:56px}.svc-heading-grid,.svc-price-grid,.svc-faq-grid,.svc-situations,.svc-proof-grid,.svc-related-grid{grid-template-columns:1fr;gap:32px}.svc-work{grid-template-columns:24px minmax(0,1fr);gap:16px;padding:24px 0}.svc-work small{grid-column:2;padding:16px 0 0;border:0;border-top:1px solid var(--line)}.svc-work h3{font-size:24px;line-height:31px}.svc-process{gap:32px 20px}.svc-process h3{font-size:22px;line-height:30px}.svc-process p{font-size:16px;line-height:26px}.svc-output{font-size:24px;line-height:34px}.svc-price-grid{padding-top:24px}.svc-button{min-height:52px;width:100%}.svc-motion-track{height:350svh;min-height:1600px}.svc-motion-sticky{padding:16px 0;min-height:0}.svc-motion-layout{grid-template-columns:1fr;gap:12px;flex:0}.svc-motion-copy h2{font-size:28px;line-height:34px}.svc-motion-copy .svc-kicker{margin-bottom:12px}.svc-motion-copy p{margin-top:12px;font-size:16px;line-height:24px}.svc-motion-stage{height:clamp(170px,29svh,300px)}.svc-motion-steps{gap:12px;margin-top:12px}.svc-motion-steps button{font-size:12px;line-height:18px;padding:12px 0;min-height:48px}.svc-motion-caption{font-size:12px;line-height:18px;margin-top:8px!important}.svc-search{margin:32px 0;gap:20px}.svc-search label{min-width:100%;}.svc-catalog-row{grid-template-columns:minmax(0,1fr) 24px;gap:16px}.svc-catalog-row p{grid-column:1;grid-row:2}.svc-catalog-row>.ui-arrow{grid-column:2;grid-row:1/3}.svc-catalog-row h3{font-size:24px;line-height:31px}.svc-existing-links{padding:48px 20px}}
@media(max-width:380px){.svc-process{grid-template-columns:1fr}.svc-hero-terms{font-size:12px}.svc-motion-copy h2{font-size:26px;line-height:31px}.svc-motion-copy p{font-size:14px;line-height:22px}.svc-motion-stage{height:25svh}.svc-motion-steps{gap:8px}}
@media(prefers-reduced-motion:reduce),(max-height:650px){.svc-motion-track{height:auto;min-height:0;padding:64px 0}.svc-motion-sticky{position:relative;top:auto;height:auto;min-height:0}.svc-motion-stage{height:320px}.svc-button .ui-arrow,.svc-faq summary>span{transition:none}.svc-motion-static{display:block!important}}

/* Definite scene viewport: intrinsic SVG size must not enlarge the grid row. */
.svc-motion-visual{position:absolute;inset:0;min-width:0;min-height:0}
@media(max-width:760px) and (min-height:651px){.svc-motion-stage{height:clamp(240px,34svh,300px)}}

/* Related tasks: explicit heading/list rhythm; no doubled mobile row gaps. */
.svc-section:has(.svc-related-grid),.svc-section:has(.scp-next-links){padding-block:clamp(64px,6vw,96px)}
.svc-wrap:has(>.svc-related-grid)>.svc-kicker,.svc-wrap:has(>.scp-next-links)>.svc-kicker{margin-bottom:24px}
.svc-wrap:has(>.svc-related-grid)>h2{margin:0 0 32px}
.svc-wrap>.svc-related-grid{gap:0 32px}
.svc-wrap>.svc-related-grid>a{padding:22px 0;min-height:84px;gap:24px}
.svc-wrap>.svc-related-grid+.svc-note{margin:24px 0 0!important}
.strategy-client-page .svc-wrap:has(>.scp-next-links)>.scp-heading{margin-bottom:32px}
.strategy-client-page .svc-wrap>.scp-next-links{gap:28px 32px}
.strategy-client-page .svc-wrap>.scp-next-links>a{padding-top:22px}
.strategy-client-page .svc-wrap>.scp-next-links h3{margin-bottom:10px}
@media(max-width:760px){
 .svc-section:has(.svc-related-grid),.svc-section:has(.scp-next-links){padding-block:56px}
 .svc-wrap:has(>.svc-related-grid)>.svc-kicker,.svc-wrap:has(>.scp-next-links)>.svc-kicker{margin-bottom:20px}
 .svc-wrap:has(>.svc-related-grid)>h2{margin-bottom:24px}
 .svc-wrap>.svc-related-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .svc-wrap>.svc-related-grid>a{min-height:72px;padding:20px 0;font-size:20px;line-height:1.4;gap:20px}
 .svc-wrap>.svc-related-grid+.svc-note{margin-top:20px!important}
 .strategy-client-page .svc-wrap:has(>.scp-next-links)>.scp-heading{margin-bottom:24px}
 .strategy-client-page .svc-wrap>.scp-next-links{gap:24px}
 .strategy-client-page .svc-wrap>.scp-next-links>a{padding-top:20px}
}

/* Keep the heading/list clearance inside the list box, without margin collapse. */
.svc-wrap:has(>.svc-related-grid)>h2{margin-bottom:0}
.svc-wrap>.svc-related-grid{padding-top:40px}
.strategy-client-page .svc-wrap:has(>.scp-next-links)>.scp-heading{margin-bottom:40px}
@media(max-width:760px){
 .svc-wrap>.svc-related-grid{padding-top:32px}
 .strategy-client-page .svc-wrap:has(>.scp-next-links)>.scp-heading{margin-bottom:32px}
}
/* Caption occupies its own row rather than overlapping the hero illustration. */
@media(min-width:761px){
 .svc-hero .svc-hero-art{display:flex;flex-direction:column;justify-content:center;gap:20px;aspect-ratio:auto}
 .svc-hero .svc-hero-art img{display:block;width:100%;max-width:520px;height:auto}
 .svc-hero .svc-hero-art>span{position:static;align-self:center;text-align:center;font-size:12px;line-height:18px;letter-spacing:.01em;max-width:100%}
}
