/* v2.31: final spacing, section hierarchy and CTA consistency. */
.dsc-content-page .dsc-content-section{padding-top:64px;padding-bottom:64px}
.dsc-content-page .dsc-section-heading{max-width:820px;margin-bottom:30px;gap:8px}
.dsc-content-page .dsc-section-heading h2.elementor-heading-title,
.dsc-content-page .dsc-section-heading .elementor-widget-heading h2.elementor-heading-title,
.dsc-content-page .dsc-section-heading .elementor-heading-title{margin:8px 0 0;color:var(--ink);font-size:clamp(32px,3.2vw,46px)!important;font-weight:800;line-height:1.1!important;letter-spacing:-.032em}
.dsc-content-page .dsc-section-intro,.dsc-content-page .dsc-section-intro p{margin-top:10px;font-size:17px;line-height:1.65}
.dsc-content-page .dsc-related-section{padding-top:58px;padding-bottom:58px}
.dsc-content-page .dsc-related-section+.dsc-related-section{padding-top:20px}
.dsc-content-page .dsc-related-grid{gap:18px}
.dsc-content-page .dsc-related-card{padding:24px}
.dsc-content-page .dsc-content-section--navy{padding-top:64px;padding-bottom:64px}
.dsc-content-page .dsc-final-panel{gap:44px;padding:42px 46px}
.dsc-content-page .dsc-final-copy h2.elementor-heading-title,
.dsc-content-page .dsc-final-copy .elementor-widget-heading h2.elementor-heading-title{margin:0;color:#fff;font-size:clamp(34px,3vw,44px)!important;font-weight:800;line-height:1.08!important;letter-spacing:-.032em}
.dsc-content-page .dsc-final-copy p{max-width:680px;margin:14px 0 0;font-size:16px;line-height:1.62}
.dsc-content-page .dsc-final-actions{min-width:230px}
.services-hub-page .hub-final{padding:64px 0}
.services-hub-page .hub-final__panel{gap:44px;padding:46px 50px}
.services-hub-page .hub-final__title,.services-hub-page .hub-final__title .elementor-heading-title{font-size:clamp(38px,3.5vw,48px);line-height:1.06}.cel-fi-page .cel-fi-cta{padding-block:64px}
.cel-fi-page .cel-fi-cta__inner{grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:54px;padding:46px 52px}
.cel-fi-page .cel-fi-cta h2.elementor-heading-title{font-size:clamp(36px,3.4vw,46px)!important}
.cel-fi-page .cel-fi-contact-link{grid-template-columns:34px minmax(110px,auto) minmax(150px,1fr);gap:4px 12px}
.cel-fi-page .cel-fi-contact-label{white-space:nowrap}
.service-page .service-cta{padding-bottom:64px}
.service-page .service-cta__inner{padding:46px 52px}
.service-page .service-cta h2.elementor-heading-title{font-size:clamp(36px,3.4vw,46px)!important}
@media(max-width:1024px){
 .dsc-content-page .dsc-content-section{padding-block:58px}
 .dsc-content-page .dsc-related-section+.dsc-related-section{padding-top:12px}
 .cel-fi-page .cel-fi-cta__inner{grid-template-columns:1fr}
}
@media(max-width:767px){
 .dsc-content-page .dsc-content-section,.dsc-content-page .dsc-content-section--navy,.dsc-content-page .dsc-related-section{padding-block:46px}
 .dsc-content-page .dsc-related-section+.dsc-related-section{padding-top:4px}
 .dsc-content-page .dsc-section-heading{margin-bottom:24px}
 .dsc-content-page .dsc-section-heading h2.elementor-heading-title,.dsc-content-page .dsc-section-heading .elementor-heading-title{font-size:clamp(29px,8vw,38px)!important}
 .dsc-content-page .dsc-final-panel{gap:28px;padding:32px 24px}
 .dsc-content-page .dsc-final-copy h2.elementor-heading-title{font-size:34px!important}
 .services-hub-page .hub-final,.cel-fi-page .cel-fi-cta{padding-block:52px}
 .services-hub-page .hub-final__panel,.cel-fi-page .cel-fi-cta__inner,.service-page .service-cta__inner{gap:30px;padding:34px 24px}
 .cel-fi-page .cel-fi-contact-link{grid-template-columns:34px 1fr}
 .cel-fi-page .cel-fi-contact-link svg{grid-row:1/3}
}