/* Editorial PI identity, based on version 176. */
.home-visual .pi-principles{background:#f3f6f9;padding:56px 0}
.pi-section-top{margin-bottom:32px}.pi-section-top h2{margin:0;font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.03em}
.pi-principle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.pi-principle-grid article{border-top:1px solid #bac8d7;padding-top:18px;min-width:0}
.pi-rule-number{font-size:.8rem;color:var(--blue);font-weight:700}
.pi-principle-grid h3{font-size:1.15rem;line-height:1.3;margin:16px 0 12px}
.pi-principle-grid p{font-size:.95rem;line-height:1.65;margin:0;color:var(--muted)}
.home-visual .pi-services{padding-top:64px;padding-bottom:48px}
.home-visual .pi-services .pi-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:36px}
.home-visual .pi-services .pi-heading>p{margin:0;max-width:60ch}
.home-visual .pi-services .pi-heading h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.03em}
.home-visual .master-offerings{gap:48px}
.home-visual .master-offerings article{border:0;background:#fff;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;overflow:visible}
.home-visual .master-offerings article:nth-child(even) .master-offering-image{order:0}
.home-visual .master-offering-image img{height:auto;min-height:0;aspect-ratio:16/10;display:block;width:100%;object-fit:cover}
.home-visual .master-offering-copy{padding:24px 0;gap:24px}
.home-visual .master-offering-copy h3{font-size:clamp(1.6rem,2.5vw,2.3rem);letter-spacing:-.025em}
.home-visual .master-offering-copy p{max-width:46ch;margin-bottom:22px}
.home-visual .master-offering-copy .line-link{font-size:.95rem}
.pi-management-note{border-top:1px solid #ccd5df;margin-top:44px;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.pi-management-note h3{font-size:1.4rem;margin:0 0 10px}.pi-management-note p{max-width:70ch;margin:0}.pi-management-note .eyebrow{margin-bottom:12px}.pi-management-note>a{flex-shrink:0}
.home-visual .process-panel{background:#f3f6f9;border:0;padding:52px 0}
.home-visual .process-panel h2{font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.03em;line-height:1.2}
.home-visual .master-process{margin-top:32px;gap:28px;border:0}
.home-visual .master-process li{padding:20px 0 0;border:0;border-top:1px solid #b9c7d7;background:none}
.home-visual .master-process h3{margin:16px 0 10px;font-size:1.25rem}
.home-visual .master-process p{font-size:.95rem;line-height:1.6}
.pi-company{background:#172f47;color:white;padding:64px 0}
.pi-company-layout{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:64px}
.pi-company figure,.pi-about-standards figure{margin:0;min-width:0}
.pi-company img,.pi-about-standards img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.pi-company figcaption{font-size:.8rem;color:#cbd8e6;margin-top:14px;line-height:1.5}
.pi-company h2{color:white;font-size:clamp(1.9rem,3.1vw,3rem);line-height:1.15;letter-spacing:-.03em;margin:0 0 24px}
.pi-company p{color:#e0e8f1;line-height:1.7}.pi-company .eyebrow{color:#a8c8ff}
.pi-company .line-link{color:white;border-bottom-color:#7891ad;margin-top:12px}
.home-visual .master-ending{padding:52px 0}.home-visual .master-ending h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.03em;line-height:1.15}

.pi-position{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:start}
.pi-position h2{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.2;letter-spacing:-.03em;margin:0}
.pi-position p{line-height:1.7}.pi-position>div>p:first-child{margin-top:0}
.pi-about-standards{padding:56px 0;background:#f3f6f9}
.pi-standards-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:start}
.pi-standards-layout h2{font-size:clamp(1.8rem,2.8vw,2.5rem);line-height:1.2;margin:0 0 24px}
.pi-standards-layout dl{margin:0}.pi-standards-layout dl>div{border-top:1px solid #cad5df;padding:18px 0}.pi-standards-layout dt{font-weight:700;margin-bottom:8px}.pi-standards-layout dd{margin:0;color:var(--muted);line-height:1.65}
.pi-local-trust{display:flex;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid #d0dae4;padding-top:22px;padding-bottom:22px}.pi-local-trust p{margin:0;max-width:75ch;line-height:1.6}.pi-local-trust a{flex-shrink:0}
@media(max-width:1099px){.pi-principle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.home-visual .master-offerings article{gap:32px}.pi-company-layout,.pi-position,.pi-standards-layout{gap:32px}.pi-management-note{align-items:start}.pi-management-note>a{flex-shrink:1}}
@media(max-width:760px){.home-visual .pi-principles{padding:36px 0}.pi-principle-grid{gap:24px 20px}.pi-principle-grid h3{font-size:1.05rem}.pi-principle-grid p{font-size:.9rem}.pi-section-top{margin-bottom:24px}.home-visual .pi-services{padding-top:40px;padding-bottom:36px}.home-visual .pi-services .pi-heading{grid-template-columns:1fr;gap:16px;margin-bottom:28px}.home-visual .master-offerings{gap:32px}.home-visual .master-offerings article{grid-template-columns:1fr;gap:0}.home-visual .master-offerings article:nth-child(even) .master-offering-image{order:0}.home-visual .master-offering-copy{padding:20px 0 0;gap:16px}.home-visual .master-offering-copy p{margin-bottom:14px}.home-visual .master-offering-image img{aspect-ratio:16/9}.pi-management-note{display:block;margin-top:32px;padding-top:24px}.pi-management-note>a{margin-top:20px}.home-visual .process-panel{padding:36px 0}.home-visual .master-process{grid-template-columns:1fr;gap:18px;margin-top:24px}.home-visual .master-process li{display:grid;grid-template-columns:32px 1fr;gap:8px 12px;padding-top:16px}.home-visual .master-process li>span{grid-row:1/3;padding-top:3px}.home-visual .master-process h3{margin:0}.home-visual .master-process p{grid-column:2}.pi-company{padding:36px 0}.pi-company-layout,.pi-position,.pi-standards-layout{grid-template-columns:1fr;gap:28px}.pi-company h2{margin-bottom:18px}.pi-company-copy>p{margin-bottom:16px}.pi-about-standards{padding:36px 0}.pi-local-trust{display:block}.pi-local-trust a{margin-top:12px}.home-visual .master-ending{padding:36px 0}}
@media(max-width:350px){.pi-principle-grid{grid-template-columns:1fr}}

/* Text-only quality sections: no empty image column. */
.pi-company-layout,.pi-standards-layout{display:block}
.pi-company-copy{display:grid;grid-template-columns:1fr 1.1fr;column-gap:64px;align-items:start}
.pi-company-copy>.eyebrow,.pi-company-copy>h2{grid-column:1}
.pi-company-copy>.eyebrow{grid-row:1}
.pi-company-copy>h2{grid-row:2/5;max-width:18ch}
.pi-company-copy>p:not(.eyebrow),.pi-company-copy>a{grid-column:2;max-width:65ch}
.pi-company-copy>p:not(.eyebrow):first-of-type{margin-top:0}
.pi-standards-layout>div{display:grid;grid-template-columns:1fr 1.2fr;column-gap:64px;align-items:start}
.pi-standards-layout .eyebrow{grid-column:1;grid-row:1}
.pi-standards-layout h2{grid-column:1;grid-row:2;max-width:18ch}
.pi-standards-layout dl{grid-column:2;grid-row:1/4}
@media(max-width:900px){.pi-company-copy,.pi-standards-layout>div{display:block}.pi-company-copy>h2,.pi-standards-layout h2{max-width:none}.pi-company-copy>p,.pi-standards-layout dl{max-width:70ch}.pi-position{grid-template-columns:1fr;gap:24px}}

/* Explicit placement overrides the original number-on-right card layout. */
@media(max-width:760px){
 .home-visual .master-process li>span{grid-column:1;grid-row:1/3;justify-self:start}
 .home-visual .master-process li>h3{grid-column:2;grid-row:1;margin:0}
 .home-visual .master-process li>p{grid-column:2;grid-row:2;margin:0}
}

/* Clear section rhythm and gently rounded service panels. */
.home-visual .pi-principles{background:#fff;border-bottom:1px solid #e3e9f0}
.home-visual .pi-services{background:#fff}
.home-visual .pi-services .pi-heading{background:transparent}
.home-visual .master-offerings{gap:32px}
.home-visual .master-offerings article{padding:0;gap:0;border:1px solid #dce4ed;border-radius:18px;overflow:hidden;background:#fff;box-shadow:none;align-items:stretch}
.home-visual .master-offering-image{min-width:0}
.home-visual .master-offering-image img{height:100%;aspect-ratio:16/10;min-height:0}
.home-visual .master-offering-copy{padding:clamp(24px,3vw,42px);gap:20px}
.home-visual .master-offering-copy h3{margin:0}
.home-visual .master-offering-copy p{margin:0}
.home-visual .master-offering-copy .line-link{align-self:flex-start;margin-top:4px}
.home-visual .pi-management-note{background:#e6edf5;border:1px solid #d2deeb;border-radius:18px;margin-top:40px;padding:30px;gap:28px}
.home-visual .process-panel{background:#fff;padding:64px 0;border-top:1px solid #e3e9f0}
.home-visual .button,.home-visual .header-contact{border-radius:10px}
@media(max-width:760px){
 .home-visual .pi-services{padding:44px 0}
 .home-visual .master-offerings{gap:28px}
 .home-visual .master-offerings article{border-radius:16px}
 .home-visual .master-offering-image img{height:auto;aspect-ratio:16/9}
 .home-visual .master-offering-copy{padding:24px 20px;gap:20px}
 .home-visual .master-offering-copy h3{font-size:clamp(1.35rem,5.7vw,1.75rem)}
 .home-visual .master-offering-copy .line-link{gap:10px}
 .home-visual .pi-management-note{margin-top:36px;padding:26px 20px;border-radius:16px}
 .home-visual .process-panel{padding:44px 0}
}
.home-visual .master-offering-copy>div+div{margin-top:0}
.home-visual .master-offering-copy>div+div .line-link{margin-top:22px}

/* Regional pages inherit the standard service-page layout and type scale. */
.regional-page .button,.regional-page .header-contact{border-radius:10px}
.regional-page .regional-introduction{display:block;padding-top:36px;padding-bottom:20px}
.regional-page .regional-introduction h2,.regional-page main>section.master-copy h2,.regional-page main>section.master-tint h2{font-size:var(--pi-h2);font-weight:700;line-height:1.2;letter-spacing:0;max-width:none;margin:0 0 24px}
.regional-page .regional-introduction .lead{max-width:none;font-size:clamp(1.0625rem,1.4vw,1.125rem);line-height:1.7;color:var(--muted)}
.regional-page main>section.master-copy{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding-top:40px;padding-bottom:40px}
.regional-page main>section.master-copy h2{margin:0}
.regional-page main>section.master-copy>div{max-width:70ch;width:100%}
.regional-page main>section.master-copy p{font-size:1rem;line-height:1.65;margin:0;max-width:none}
.regional-page .master-tint{background:#fff}
.regional-page .master-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:28px;margin-bottom:28px}
.regional-page .master-cards article{padding:22px;border:1px solid #dfe4ec;border-radius:18px;background:#fff;box-shadow:none;min-width:0}
.regional-page .master-cards h3{margin:0 0 12px}
.regional-page .master-cards p{margin:0;line-height:1.65}
.regional-page .pi-local-trust{border:1px solid #d2deeb;border-radius:18px;background:#e6edf5;padding:26px;margin-top:24px;margin-bottom:40px}
.regional-page .master-ending h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.03em;line-height:1.15}
@media(min-width:1100px){.regional-page .master-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.regional-page .regional-introduction{padding-top:48px;padding-bottom:24px}}
@media(max-width:600px){.regional-page .regional-introduction{padding-top:28px;padding-bottom:16px}.regional-page .master-cards article{padding:20px 16px;border-radius:16px}.regional-page .pi-local-trust{padding:22px 20px}}

/* About PI: practical expertise, considered decisions and accountable service. */
.about-page .button,.about-page .header-contact{border-radius:10px}
.about-page .pi-about-intro{padding-top:48px;padding-bottom:40px}
.about-page .pi-about-intro p{font-size:clamp(1.125rem,1.5vw,1.3rem);line-height:1.7;max-width:80ch;margin:0;color:var(--muted)}
.about-page .pi-about-expertise,.about-page .pi-about-decision-inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,72px);align-items:start}
.about-page .pi-about-expertise{padding-top:32px;padding-bottom:48px;border-top:1px solid #dce4ed}
.about-page .pi-about-expertise h2,.about-page .pi-about-decision h2{font-size:var(--pi-h2);line-height:1.2;letter-spacing:-.02em;margin:0;max-width:23ch}
.about-page .pi-about-expertise p,.about-page .pi-about-decision p,.about-page .pi-about-assurance p{font-size:1.0625rem;line-height:1.7;margin:0;color:var(--muted)}
.about-page .pi-about-expertise p+p,.about-page .pi-about-decision p+p,.about-page .pi-about-assurance p+p{margin-top:18px}
.about-page .pi-about-decision{padding-top:0;padding-bottom:48px}
.about-page .pi-about-decision-inner{padding:clamp(24px,4vw,48px);background:#e6edf5;border:1px solid #d2deeb;border-radius:18px}
.about-page .pi-about-assurance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;padding-bottom:32px}
.about-page .pi-about-assurance section{min-width:0;border-top:3px solid var(--blue);padding-top:24px}
.about-page .pi-about-assurance h2{font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.25;margin:0 0 24px;max-width:28ch}
@media(max-width:900px){.about-page .pi-about-expertise,.about-page .pi-about-decision-inner{grid-template-columns:1fr;gap:24px}.about-page .pi-about-expertise h2,.about-page .pi-about-decision h2{max-width:none}.about-page .pi-about-assurance{grid-template-columns:1fr;gap:36px}}
@media(max-width:600px){.about-page .pi-about-intro{padding-top:32px;padding-bottom:32px}.about-page .pi-about-expertise{padding-top:28px;padding-bottom:32px}.about-page .pi-about-decision{padding-bottom:36px}.about-page .pi-about-decision-inner{padding:26px 20px;border-radius:16px}.about-page .pi-about-assurance h2{max-width:none;margin-bottom:18px}}

/* About: quieter hierarchy and consistent spacing across all four principles. */
.about-page .pi-about-intro{padding-top:36px;padding-bottom:32px}
.about-page .pi-about-intro p{font-size:1.0625rem;line-height:1.65;max-width:80ch}
.about-page .pi-about-expertise{padding-top:32px;padding-bottom:36px}
.about-page .pi-about-expertise h2,.about-page .pi-about-decision h2,.about-page .pi-about-assurance h2{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.25;letter-spacing:-.015em}
.about-page .pi-about-assurance{gap:24px;padding-bottom:36px}
.about-page .pi-about-assurance section{border:0;border-top:1px solid #dce4ed;border-radius:0;padding:24px 0 0;background:transparent}
.about-page .pi-about-assurance h2{margin-bottom:18px}
.about-page .pi-about-decision{padding-bottom:28px}
.about-page .pi-about-decision-inner{background:#f3f6f9;border-color:#dce4ed;padding:32px;gap:32px}
.about-page .pi-about-expertise p,.about-page .pi-about-decision p,.about-page .pi-about-assurance p{font-size:1rem;line-height:1.65}
@media(max-width:600px){.about-page .pi-about-expertise{padding-top:26px;padding-bottom:28px;gap:18px}.about-page .pi-about-assurance{gap:20px;padding-bottom:28px}.about-page .pi-about-assurance section{padding:24px 0 0;border-radius:0}.about-page .pi-about-decision-inner{padding:24px 20px;border-radius:16px}.about-page .pi-about-decision-inner{gap:18px}.about-page .pi-about-intro{padding-top:28px;padding-bottom:28px}}

/* Customer groups: compact spacing and the same layout at every desktop width. */
.about-page .about-customers{padding-top:24px;padding-bottom:40px}
.about-page .about-customers>.eyebrow{margin-bottom:14px}
.about-page .about-customers>h2{margin-bottom:0}
.about-page .about-customer-list{margin-top:20px;display:grid;grid-template-columns:1fr;gap:0}
.about-page .about-customer-list li{padding:20px 0;border-top:0;border-bottom:1px solid #dfe4ec}
.about-page .about-customer-list li:last-child{border-bottom:0;padding-bottom:0}
@media(min-width:1000px){.about-page .about-customer-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.about-page .about-customer-list li{border-top:1px solid #dfe4ec;border-bottom:0;padding-top:20px;padding-bottom:0}}
@media(max-width:600px){.about-page .pi-about-decision{padding-bottom:16px}.about-page .about-customers{padding-top:20px;padding-bottom:32px}}
