/* D-067: compact section transitions; leave paragraph and image clearance intact. */
.about-story{margin-block:1rem}
.personal-copy,.home-selection,.selection{margin-block:1.5rem}
.home-pair{margin-block:2rem}
.section-line{margin-block:1.5rem}
.price-section{margin-bottom:1rem}
.home-contact{margin-top:1.5rem}
.about-story h2,.price-section>h2,.price-section>h3,.home-contact>h2{margin-top:0}
.about-story>div>p:last-child,.personal-copy>p:last-child,.home-selection>p:last-child,.three-d-story>p:last-child{margin-bottom:0}
.page-contact-cta{margin-top:1.5rem}
.site-main p:has(+h2,+h3,+h4,+h5,+h6){margin-bottom:.4rem}
.site-main p+:is(h2,h3,h4,h5,h6){margin-top:.4rem}
.three-d-hero{padding-bottom:clamp(19px,3vw,33px)}
.three-d-content{padding-block:clamp(17.5px,2.5vw,30px)}
.three-d-faq{padding-top:clamp(17.5px,2.5vw,30px)}
/* Footer uses the white asset on its retained blue background, in every theme. */
.site-footer .footer-brand .logo-light{display:none!important}
.site-footer .footer-brand .logo-dark{display:block!important}
/* Match the page-title typography without creating another heading. */
.brand-heading+.brand-slogan{font-size:1.75rem;font-weight:700;line-height:1.18;letter-spacing:-.035em;text-wrap:balance}
/* Real Unicode word spacing for readers that retain nav and discard author styles.
   Zero-sized inline flex items leave the normal navigation's geometry unchanged.
   No hidden/aria-hidden attribute: reader extraction can otherwise discard the text. */
.nav-reader-space{font-size:0;line-height:0;width:0;height:0;flex:0 0 0;padding:0;margin:0;border:0}
@media(max-width:760px){.brand-heading+.brand-slogan{font-size:1.5rem}}
