/* PI presentation language. Opt-in per page after its visual review. */
.pi-presentation{--pi-display:clamp(2rem,3.3vw,3rem);--pi-section-space:clamp(48px,6vw,88px);--pi-deep:#172f47;--pi-pale:#f0f4f8;--pi-copy:#465668;--pi-round:12px}
.pi-presentation.home-page .wrap{width:min(1240px,calc(100% - 96px))}
.pi-presentation.home-page.master-page .master-hero.pi-hero .hero-content{padding-inline:max(48px,calc((100vw - 1240px)/2));padding-top:160px;padding-bottom:72px}
.pi-presentation.home-page .master-hero .eyebrow{color:#c5d9ff;letter-spacing:.12em}
.pi-presentation.home-page .master-hero-summary{max-width:580px;border-top-color:#ffffff40}
.pi-presentation.home-page .pi-services,.pi-presentation.home-page .pi-principles,.pi-presentation.home-page .process-panel,.pi-presentation.home-page .pi-company{padding-block:var(--pi-section-space)}
.pi-presentation.home-page :is(.pi-heading,.pi-section-top,.pi-expertise-heading) h2,.pi-presentation.home-page .process-panel h2{font-size:var(--pi-display);letter-spacing:-.035em;line-height:1.13}
.pi-presentation.home-page .pi-services .pi-heading{align-items:start;gap:32px;margin-bottom:36px}
.pi-presentation.home-page .pi-heading>p{max-width:55ch;color:var(--pi-copy);font-size:1.0625rem;line-height:1.7}
.pi-presentation.home-page .master-offerings{gap:32px}
.pi-presentation.home-page .master-offerings article{border-color:#dbe2e9;border-radius:var(--pi-round);transition:border-color .18s,box-shadow .18s}
.pi-presentation.home-page .master-offering-copy{padding:32px}
.pi-presentation.home-page .master-offering-copy h3{font-size:1.875rem;letter-spacing:-.025em}
.pi-presentation.home-page .master-offering-copy p{color:var(--pi-copy);font-size:1rem}
.pi-presentation.home-page .master-offering-copy .line-link{color:var(--blue);font-weight:600}
@media(hover:hover){.pi-presentation.home-page .master-offerings article:hover{border-color:#7d9bcb;box-shadow:0 10px 26px #172f470b}}
.pi-presentation.home-page .pi-management-note{border:0;border-left:3px solid var(--blue);border-radius:var(--pi-round);background:var(--pi-pale);padding:28px 32px;margin-top:32px}
.pi-presentation.home-page .pi-principles{background:var(--pi-pale);border:0}
.pi-presentation.home-page .pi-principles>.wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px}
.pi-presentation.home-page .pi-section-top{margin:0;max-width:none}
.pi-presentation.home-page .pi-section-top h2{max-width:15ch}
.pi-presentation.home-page .pi-principle-grid{grid-template-columns:minmax(0,1fr);gap:12px}
.pi-presentation.home-page .pi-principle-grid article{border:1px solid #dbe2e9;border-radius:var(--pi-round);background:#fff;padding:20px 24px}

.pi-presentation.home-page .pi-principle-grid h3{font-size:1.4rem;margin-bottom:12px}
.pi-presentation.home-page .pi-principle-grid p{max-width:61ch;color:var(--pi-copy)}
.pi-presentation.home-page .master-process{gap:28px;margin-top:40px}
.pi-presentation.home-page .master-process li{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-top:20px;border-top:1px solid #b9c8d8}
.pi-presentation.home-page .master-process li>span{order:-1;font-size:.875rem;letter-spacing:.06em}
.pi-presentation.home-page .master-process li>h3,.pi-presentation.home-page .master-process li>p{margin:0}
.pi-presentation.home-page .pi-company{background:var(--pi-deep)}
.pi-presentation.home-page .pi-expertise-examples>a{padding-block:26px}
.pi-presentation.home-page .master-ending{background:#fff;color:var(--ink);padding-block:var(--pi-section-space);border-top:3px solid var(--blue)}
.pi-presentation.home-page .master-ending :is(h2,p){color:var(--ink)}
.pi-presentation.home-page .master-ending>.wrap>.eyebrow{color:var(--blue)}
.pi-presentation.home-page .master-ending p:not(.eyebrow){color:var(--pi-copy);max-width:52ch}
/* Four equally sized contact controls, with a single primary action. */
.pi-presentation.home-page .master-ending .master-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-auto-rows:1fr;width:100%;max-width:480px;justify-items:stretch}
.pi-presentation.home-page .master-ending .master-actions>a{width:100%;box-sizing:border-box}
.pi-presentation.home-page .master-ending .master-actions>a{display:flex;align-items:center;justify-content:center;min-height:54px;height:100%;padding:14px 12px;border:1px solid #a7b4c2;border-radius:10px;background:#fff;color:var(--ink);font-size:.9375rem;font-weight:600;line-height:1.4;text-decoration:none;opacity:1}
.pi-presentation.home-page .master-ending .master-actions>a:first-child{background:var(--blue);border-color:var(--blue);color:#fff}
.pi-presentation.home-page .master-ending .master-actions>a.pi-contact-secondary{background:#fff;border-color:#a7b4c2;color:var(--ink)}
.pi-presentation.home-page .master-ending .master-actions>a.pi-contact-secondary:hover{background:var(--pi-pale);border-color:var(--blue);color:var(--blue)}
.pi-presentation.home-page .master-ending .master-actions>a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
@media(max-width:360px){.pi-presentation.home-page .master-ending .master-actions{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1099px){
 .pi-presentation.home-page .wrap{width:calc(100% - 64px)}
 .pi-presentation.home-page.master-page .master-hero.pi-hero .hero-content{padding-inline:32px;padding-top:132px;padding-bottom:56px}
 .pi-presentation.home-page .pi-principles>.wrap{grid-template-columns:minmax(0,1fr);gap:32px}
 .pi-presentation.home-page .pi-section-top h2{max-width:26ch}
 .pi-presentation.home-page .pi-services .pi-heading{grid-template-columns:minmax(0,1fr);gap:20px}
}
@media(max-width:600px){
 .pi-presentation.home-page .wrap{width:calc(100% - 40px)}
 .pi-presentation.home-page.master-page .master-hero.pi-hero .hero-content{padding:116px 20px 48px}
 .pi-presentation.home-page .master-offering-copy{padding:24px 20px}
 .pi-presentation.home-page .master-offering-copy h3{font-size:1.6rem}
 .pi-presentation.home-page .pi-management-note{padding:24px 20px}
 .pi-presentation.home-page .master-process{gap:24px;margin-top:28px}
 .pi-presentation.home-page .master-process li{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:16px;row-gap:8px}
 .pi-presentation.home-page .master-process li>span{grid-column:1;grid-row:1/3;padding-top:2px}
 .pi-presentation.home-page .master-process li>h3{grid-column:2;grid-row:1}
 .pi-presentation.home-page .master-process li>p{grid-column:2;grid-row:2}
}

.pi-presentation.home-page .pi-expertise-examples > a:focus-visible {
  outline: 2px solid white;
  outline-offset: 3px;
}
