/* Toolbelt CMS v2.18.63 — Dynamic Pages-specific design parity.
   This sheet is included only by custom-page.php; never in Services or homepage. */
/* Hero: multiline CMS intro is transformed into semantic paragraphs by custom-page.php. */
.inner-hero .tb-dp-hero-paragraphs{margin-top:22px;max-width:720px}
.inner-hero .tb-dp-hero-paragraphs p{margin:0;max-width:inherit;line-height:1.7}
.inner-hero .tb-dp-hero-paragraphs p+p{margin-top:1.1em}
/* Baseline dynamic CTA bug fix: proper heading-to-supporting-copy rhythm. */
.custom-page section.custom-cta .custom-cta-inner h2 + p,
.custom-page section .dynamic-contact h2 + p{margin:clamp(18px,2.5vw,28px) 0 0;line-height:1.7}
/* FAQ top heading matches the established CMS FAQ presentation while keeping
   split/centred legacy layouts untouched. */
.custom-page .block-faq-layout--stacked{display:block}
.custom-page .block-faq-layout--stacked .block-faq-intro{position:static;top:auto;max-width:940px;text-align:left;margin:0 0 clamp(36px,5vw,66px)}
.custom-page .block-faq-layout--stacked .block-faq-intro .prose{max-width:760px;margin-top:clamp(18px,2vw,26px)}
.custom-page .block-faq-layout--stacked .block-faq-intro .prose p{margin-bottom:.85em}
.custom-page .block-faq-layout--stacked .faq-list{max-width:none;width:100%;margin:0}
/* Premium CTA variations for both CTA and Contact sections. */
/* v2.18.64: centre the actual CTA content column and paragraph on wide screens.
   The prior baseline h2 + p margin shorthand defeated the low-specificity
   margin-inline:auto, leaving the supporting copy offset to the left. */
.custom-page section.tb-dp-cta--centered :is(.custom-cta-inner,.dynamic-contact){flex-direction:column;align-items:center;text-align:center;gap:clamp(26px,3vw,42px)}
.custom-page section.tb-dp-cta--centered :is(.custom-cta-inner,.dynamic-contact)>div:first-child{width:100%;max-width:850px;margin-inline:auto;text-align:center}
.custom-page section.tb-dp-cta--centered :is(.custom-cta-inner,.dynamic-contact)>div:first-child>p{width:100%;max-width:720px;margin-left:auto;margin-right:auto;text-align:center}
.custom-page section.tb-dp-cta--centered .dynamic-contact-actions{justify-content:center}
.custom-page section.tb-dp-cta--stacked :is(.custom-cta-inner,.dynamic-contact){flex-direction:column;align-items:flex-start;gap:clamp(26px,3vw,40px)}
.custom-page section.tb-dp-cta--stacked :is(.custom-cta-inner,.dynamic-contact)>div:first-child{max-width:920px}
.custom-page section.tb-dp-cta--panel{padding-block:clamp(60px,7vw,100px)}
.custom-page section.tb-dp-cta--panel :is(.custom-cta-inner,.dynamic-contact){position:relative;isolation:isolate;padding:clamp(30px,5vw,76px);background:color-mix(in srgb,var(--brand-light) 72%,#fff);border:1px solid var(--brand-border);border-radius:clamp(12px,2vw,24px);box-shadow:0 20px 64px color-mix(in srgb,var(--brand-dark) 8%,transparent);gap:30px}
.custom-page section.tb-dp-cta--panel:is(.block-bg-dark,.block-bg-brand) :is(.custom-cta-inner,.dynamic-contact){background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}
.custom-page section.tb-dp-cta--panel:is(.block-bg-dark,.block-bg-brand) :is(.custom-cta-inner,.dynamic-contact) h2{color:#fff}
.custom-page section.tb-dp-cta--accent-rail :is(.custom-cta-inner,.dynamic-contact){border-left:4px solid var(--brand-accent);padding-left:clamp(20px,3vw,48px)}
@media(max-width:900px){
 .custom-page section.tb-dp-cta--centered :is(.custom-cta-inner,.dynamic-contact){align-items:center}
 .custom-page section.tb-dp-cta--centered .dynamic-contact-actions{align-items:center}
}
@media(max-width:620px){
 .custom-page section.tb-dp-cta--panel :is(.custom-cta-inner,.dynamic-contact){padding:28px 22px}
 .custom-page section.tb-dp-cta--accent-rail :is(.custom-cta-inner,.dynamic-contact){padding-left:20px}
 .custom-page section.tb-dp-cta--centered .dynamic-contact-actions{width:100%;align-items:stretch}
}
