/* Home: one visual system, with two service families. */
.hp-home .eyebrow{font-size:.9375rem;font-weight:600;letter-spacing:0;text-transform:none;color:#6d3c8d;margin-bottom:20px}
.hp-home .hero{background:#242236;color:#fff;padding:76px 0 82px}
.hp-home .hero-grid{grid-template-columns:1.15fr .85fr;gap:65px;min-height:0;align-items:center}
.hp-home .hero-copy{padding:0;align-self:center}
.hp-home .hero .eyebrow{color:#d6bce9}
.hp-home .hero h1{font-size:clamp(3.5rem,5.4vw,5.6rem);font-weight:700;color:#fff;line-height:1.08;letter-spacing:-.035em;margin-bottom:28px;max-width:740px}
.hp-hero-emphasis{color:#ffe08a;background:linear-gradient(100deg,#dfbdff,#ffe08a 60%,#ffb17a);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hp-home .hero-copy p{color:#d7d4df;font-size:1.25rem;line-height:1.75;max-width:670px}
.hp-home .hero-image{margin:0;min-height:490px;border-radius:16px;box-shadow:0 18px 45px #14122050;aspect-ratio:4/5}
.hp-home .hero-image img{object-position:55% center}
.hp-home .image-caption{right:auto;left:26px;bottom:25px;font-size:.75rem;text-transform:none;letter-spacing:0}
.hp-home .hero-edge{width:100%;height:4px;background:linear-gradient(90deg,#ffc940,#ed7229 48%,#ae49f2)}
.hp-home .button{background:#ffc940;color:#241f47;border-radius:6px;min-height:54px;padding:15px 23px;font-size:1rem;font-weight:500}
.hp-home .button:hover{background:#ffda76}
.hp-home .inline-link{color:#fff;border-color:#8e859f;font-weight:500}
.hp-home .section{padding:84px 0}
.hp-home .services{background:#fff}
.hp-home .section-lead{display:block;margin-bottom:42px}
.hp-home .section-lead h2{font-size:clamp(2.5rem,3.8vw,3.8rem);line-height:1.18;letter-spacing:-.025em;color:#242433;margin-bottom:22px}
.hp-home .section-lead p{font-size:1.125rem;line-height:1.75;max-width:740px;color:#555563;padding:0}
.hp-service-family+.hp-service-family{margin-top:38px}
.hp-family-heading{font-size:1.125rem;line-height:1.5;letter-spacing:0;font-weight:600;margin:0 0 18px;color:#3b3348}
.hp-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.hp-data-ai .hp-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hp-service{display:flex;flex-direction:column;align-items:flex-start;padding:30px;background:#f6f5fa;border-radius:14px;min-width:0}
.hp-data-ai .hp-service{background:#f6f5fa}
.hp-service-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#e9def4;color:#6d3c8d;margin-bottom:25px}
.hp-service-icon svg{width:26px;height:26px}
.hp-engineering .hp-service:nth-child(2) .hp-service-icon{background:#ffc940;color:#241f47}
.hp-engineering .hp-service:nth-child(3) .hp-service-icon{background:#ffe0c9;color:#241f47}
.hp-data-ai .hp-service:nth-child(2) .hp-service-icon{background:#ed7229;color:#241f47}
.hp-service h4{font-size:1.625rem;line-height:1.3;letter-spacing:-.02em;color:#292938;margin:0 0 16px;font-weight:600}
.hp-service h4 a{display:flex;gap:15px;justify-content:space-between;align-items:center}
.hp-service h4 a span{font-size:1.15rem;color:#6d3c8d}
.hp-service p{font-size:1.0625rem;line-height:1.75;color:#555563;margin:0 0 26px}
.hp-home .cap-tags{gap:8px;margin-top:auto;align-items:flex-start}
.hp-home .cap-tags span,.hp-home .cap-tags a{font-size:.875rem;font-weight:400;line-height:1.5;letter-spacing:0;padding:6px 10px;background:#fff;color:#51475d;border:0;border-radius:5px;white-space:normal;opacity:1}
.hp-home .cap-tags a{color:#6d3c8d;text-decoration:underline;text-underline-offset:3px}
.hp-home .direction-cta{background:#fff;color:#242433;padding:64px 0 0}.hp-home .direction-layout{background:#fff4d1;border-radius:18px;padding:44px 48px}
.hp-home .direction-layout{grid-template-columns:1fr auto;gap:50px;align-items:center}
.hp-home .direction-cta .eyebrow{color:#6d3c8d;font-size:.9375rem}
.hp-home .direction-cta h2{font-size:clamp(2rem,3vw,3rem);line-height:1.2;letter-spacing:-.025em;margin-bottom:18px;max-width:900px}
.hp-home .direction-cta p{font-size:1.125rem;line-height:1.75;color:#555563;max-width:720px}
.hp-home .button-dark{background:#241f47;color:#fff;white-space:nowrap}
.hp-home .button-dark:hover{background:#443658}
.hp-home .explore-paths{background:#fff;padding:84px 0}
.hp-home .explore-paths-grid{gap:24px}
.hp-home .explore-path{padding:36px;border-radius:14px;min-height:370px;background:#f5f3f9;gap:0}
.hp-home .path-industries{background:#f5f3f9}
.hp-path-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#e7dbf2;color:#6d3c8d;margin-bottom:25px}
.hp-path-icon svg{width:26px;height:26px}
.hp-home .path-industries .hp-path-icon{background:#ffe2cc;color:#241f47}
.hp-home .explore-path .eyebrow{margin-bottom:15px}
.hp-home .explore-path h2{font-size:clamp(2rem,2.9vw,2.8rem);line-height:1.2;letter-spacing:-.025em;color:#292938;margin-bottom:18px;font-weight:700}
.hp-home .explore-path p{font-size:1.125rem;line-height:1.75;color:#555563;max-width:550px}
.hp-home .path-action{font-size:1rem;font-weight:500;padding-top:26px;border:0;color:#6d3c8d}
.hp-home a:focus-visible{outline:3px solid #9574b7;outline-offset:5px}
@keyframes hp-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.hp-home .hero-copy{animation:hp-enter .7s both}.hp-home .hero-image{animation:hp-enter .8s .12s both}.hp-reveal{animation:hp-enter .6s var(--hp-delay,0ms) both}.hp-service{transition:transform .25s,box-shadow .25s}.hp-service:hover{transform:translateY(-4px);box-shadow:0 12px 28px #241f4710}.hp-service-icon,.hp-path-icon{transition:transform .25s}.hp-service:hover .hp-service-icon,.hp-home .explore-path:hover .hp-path-icon{transform:translateY(-3px)}}
@media(max-width:1050px){.hp-home .hero-grid{gap:38px;grid-template-columns:1.1fr .9fr}.hp-home .hero-image{min-height:420px}.hp-home .hero h1{font-size:clamp(3.3rem,5.8vw,4.7rem)}.hp-service{padding:25px}.hp-service-grid{gap:18px}.hp-service h4{font-size:1.4rem}.hp-home .direction-layout{gap:30px}}
@media(max-width:760px){.hp-home .hero{padding:60px 0}.hp-home .hero-grid{grid-template-columns:1fr;gap:38px}.hp-home .hero h1{font-size:clamp(3rem,9vw,4rem)}.hp-home .hero-image{aspect-ratio:4/3;min-height:0;width:100%;max-width:600px}.hp-home .hero-copy p{font-size:1.125rem}.hp-home .section,.hp-home .explore-paths{padding:58px 0}.hp-service-grid,.hp-data-ai .hp-service-grid{grid-template-columns:1fr}.hp-service h4{font-size:1.5rem}.hp-home .direction-layout{display:block}.hp-home .direction-cta .button{margin-top:26px}.hp-home .direction-cta{padding:46px 0}.hp-home .explore-paths-grid{display:grid;grid-template-columns:1fr}.hp-home .explore-path{margin:0;min-height:0;padding:28px}.hp-home .hero-actions{gap:22px}.hp-home .section-lead h2{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){.hp-home .hero-copy,.hp-home .hero-image,.hp-reveal{animation:none!important;transform:none!important;opacity:1!important}.hp-service,.hp-service-icon,.hp-path-icon{transition:none}}
@media(forced-colors:active){.hp-hero-emphasis{background:none;-webkit-text-fill-color:currentColor;color:inherit}}

@media(prefers-reduced-motion:reduce){.hp-home .explore-path{transition:none;transform:none}.hp-home .button:hover{transform:none}}
.hp-all-services{display:inline-flex;align-items:center;gap:16px;color:#6d3c8d;font-size:1rem;font-weight:600;margin-top:30px}.hp-all-services:hover{text-decoration:underline;text-underline-offset:5px}

.hp-service-cloud .cap-tags{flex-wrap:nowrap;gap:6px}
.hp-home .hp-service-cloud .cap-tags span{white-space:nowrap;font-size:.8125rem;padding:6px 8px}
.hp-engagement{background:#fff;border-top:1px solid #eeeaf3}
.hp-engagement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.hp-engagement-grid article{display:flex;flex-direction:column;min-width:0;border-top:3px solid #6d3c8d;padding:26px 0 0}
.hp-engagement-grid article:nth-child(2){border-color:#ffc940}.hp-engagement-grid article:nth-child(3){border-color:#ed7229}
.hp-engagement-label{font-size:.9375rem;color:#6d3c8d;font-weight:600;margin-bottom:18px}
.hp-engagement-grid h3{font-size:1.65rem;line-height:1.35;letter-spacing:-.02em;color:#292938;margin:0 0 20px}
.hp-engagement-grid p{font-size:1.0625rem;line-height:1.75;color:#555563;margin:0 0 24px}
.hp-engagement-grid a{font-size:1rem;font-weight:500;color:#6d3c8d;margin-top:auto}
.hp-delivery{background:#f5f3f9;padding:84px 0;color:#292938}
.hp-delivery-intro{max-width:780px;margin-bottom:40px}
.hp-home .hp-delivery .eyebrow{color:#6d3c8d}
.hp-delivery h2{font-size:clamp(2.5rem,3.8vw,3.8rem);line-height:1.18;letter-spacing:-.025em;margin:0 0 24px;color:#292938}
.hp-delivery-intro>p{font-size:1.125rem;line-height:1.75;color:#555563;margin:0}
.hp-delivery-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.hp-delivery-details article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:22px;padding:32px;background:#fff;border:1px solid #e8e2ef;border-radius:14px;min-width:0}
.hp-delivery-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#e9def4;color:#6d3c8d}
.hp-delivery-icon svg{width:25px;height:25px}
.hp-delivery-details article:nth-child(2) .hp-delivery-icon{background:#ffc940;color:#241f47}
.hp-delivery-details article:nth-child(3) .hp-delivery-icon{background:#ffe0c9;color:#241f47}
.hp-delivery-details h3{font-size:1.4375rem;line-height:1.35;color:#292938;margin:0 0 14px}
.hp-delivery-details p{color:#555563;font-size:1.0625rem;line-height:1.75;margin:0}
.hp-insights{background:#f5f3f9}
.hp-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hp-insight-grid article{border:1px solid #e5e1ed;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;background:#fff;min-width:0}
.hp-insight-image{display:block;aspect-ratio:16/10;overflow:hidden}
.hp-insight-image img{width:100%;height:100%;object-fit:cover;display:block}
.hp-insight-grid article>div{padding:26px;display:flex;flex-direction:column;flex:1}
.hp-home .hp-insight-grid .eyebrow{font-size:.8125rem;margin-bottom:14px}
.hp-insight-grid h3{font-size:1.5rem;line-height:1.3;margin:0 0 18px;color:#292938;letter-spacing:-.02em}
.hp-insight-grid h3 a{color:inherit}
.hp-insight-grid p{font-size:1rem;line-height:1.7;color:#555563;margin:0 0 25px}
.hp-insight-link{color:#6d3c8d;font-weight:500;font-size:1rem;margin-top:auto}
@media(max-width:1050px){.hp-home .hp-service-cloud .cap-tags span{font-size:.75rem;padding:5px 6px}.hp-delivery-details article{padding:26px;gap:18px}.hp-engagement-grid{gap:24px}.hp-engagement-grid h3{font-size:1.45rem}}
@media(max-width:760px){.hp-engagement-grid,.hp-insight-grid{grid-template-columns:1fr;gap:36px}.hp-delivery-details{grid-template-columns:1fr;gap:18px}.hp-delivery-details article{padding:25px;grid-template-columns:1fr;gap:20px}.hp-home .direction-layout{padding:30px 28px}.hp-home .direction-cta{padding:46px 0 0}.hp-delivery{padding:58px 0}.hp-delivery h2{font-size:2.6rem}.hp-home .hp-service-cloud .cap-tags span{font-size:.8125rem;padding:6px 8px}}

.hp-track-record{background:#fff;padding:48px 0 0}
.hp-track-layout{border-bottom:1px solid #e9e3f0;padding-bottom:48px}
.hp-track-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
.hp-track-numbers>div{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:12px;padding:0;min-width:0;justify-self:start}.hp-track-numbers>div:nth-child(2){justify-self:center}.hp-track-numbers>div:last-child{justify-self:end}

.hp-track-numbers dt{order:2;font-size:1rem;font-weight:500;color:#555563;line-height:1.5}
.hp-track-numbers dd{order:1;margin:0;font-size:clamp(3.5rem,5.4vw,4.8rem);font-weight:700;line-height:1.12;letter-spacing:-.035em;color:#6d3c8d;background:linear-gradient(110deg,#6d3c8d 15%,#a23ee2 75%,#ed7229);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
@media(max-width:760px){.hp-track-record{padding:32px 0 0}.hp-track-layout{padding-bottom:32px}.hp-track-numbers{gap:16px}.hp-track-numbers>div{padding:0;gap:8px}.hp-track-numbers dd{font-size:clamp(2.25rem,8vw,3.5rem)}.hp-track-numbers dt{font-size:.8125rem}}
@media(forced-colors:active){.hp-track-numbers dd{background:none;-webkit-text-fill-color:currentColor;color:inherit}}
