/* Shared hero geometry: one height and one title/description alignment per breakpoint. */
.page-hero{height:420px}
.page-hero>.container{height:100%;display:grid;grid-template-rows:64px minmax(0,1fr)}
.page-hero .breadcrumbs{margin:0;padding:22px 0 0;align-content:start;align-items:start;line-height:1.7;gap:6px 12px;font-size:11px;min-width:0}
.page-hero-copy{display:grid;grid-template-rows:24px 126px minmax(0,1fr);gap:18px;max-width:860px;min-width:0;padding:28px 0 40px}
.page-hero-copy>.eyebrow{margin:0;line-height:1.6;align-self:start}
.page-hero h1{font-size:54px;line-height:1.16;letter-spacing:-1.8px;margin:0;align-self:start;overflow-wrap:break-word}
.page-hero p{font-size:15px;line-height:1.8;max-width:600px;margin:0;align-self:start}
.page-hero-photo{background-position:right center;background-size:cover}
.page-hero-symbol{bottom:-65px;right:8%;line-height:1}
/* Align the first content section and the side panel beneath each hero. */
.page-hero+.section,.page-hero+.detail-layout,.page-hero+.contact-page{padding-top:72px}
.detail-content>section:first-child>h2,.contact-intro>h2,.corporate-intro h2{margin-top:18px}
.detail-content{min-width:0}
.detail-content p{max-width:72ch}
.detail-content .scope-grid article,.detail-content .specialty-card{height:100%}
.detail-content .related-links a{align-items:center;line-height:1.7}
.scope-grid h3,.specialty-card h3{overflow-wrap:break-word}
@media(max-width:1100px){.page-hero h1{font-size:48px}.page-hero-copy{grid-template-rows:24px 126px minmax(0,1fr)}}
@media(max-width:800px){.page-hero{height:420px}.page-hero>.container{grid-template-rows:64px minmax(0,1fr)}.page-hero-copy{grid-template-rows:24px 112px minmax(0,1fr);gap:18px;padding:26px 0 36px}.page-hero h1{font-size:44px}.page-hero+.section,.page-hero+.detail-layout,.page-hero+.contact-page{padding-top:52px}.service-sidebar{gap:20px}}
@media(max-width:580px){.page-hero{height:460px}.page-hero>.container{grid-template-rows:72px minmax(0,1fr)}.page-hero .breadcrumbs{padding:18px 0 0;font-size:10px;line-height:1.65;gap:4px 9px}.page-hero-copy{grid-template-rows:32px 160px minmax(0,1fr);gap:14px;padding:20px 0 26px}.page-hero h1{font-size:clamp(28px,7.5vw,36px);line-height:1.16;letter-spacing:-.9px}.page-hero p{font-size:14px;line-height:1.8}.page-hero-copy>.eyebrow{font-size:10px;letter-spacing:1.15px;line-height:1.6}.page-hero-photo{background-position:65% center}.page-hero-symbol{font-size:280px;bottom:-45px;right:-20px}.page-hero+.section,.page-hero+.detail-layout,.page-hero+.contact-page{padding-top:40px}.detail-layout{gap:32px}.detail-content h2{font-size:27px}.detail-content>section+section{margin-top:40px}.sidebar-box{padding:20px}.scope-grid,.process-list,.related-links{gap:18px}.contact-form-panel{padding:24px 20px}}
.services>.service{display:flex;flex-direction:column}
.services>.service h3{min-height:66px}
.services>.service .detail{margin-top:auto;padding-top:22px}
.services>.service p{margin-bottom:24px}
@media(max-width:580px){.services>.service h3{min-height:0}.services>.service .detail{margin-top:4px}.services>.service p{margin-bottom:20px}}
