/* Shared site-wide surfaces and spacing. Page content styles stay inside main. */
:root{--surface-paper:#fffdf7;--surface-sage:#e5e9e3;--section-space:72px;--section-space-compact:40px;--content-gap:48px}
body,.site-header,.client-logo-section{background:var(--cream);color:var(--navy)}
.section,.inner-page .site-section,.inner-page .brand-section,.market-section{padding-block:var(--section-space)}
.inner-page .brand-opening{padding-block:var(--section-space-compact)}
.inner-page .brand-editorial{padding-block:30px}
.work-section,.industry-section,.people-section,.market-section,.brand-sage,.brand-conversation,.brand-links,.tone-sage{background:var(--surface-sage)}
.seo-section,.faq-section,.inner-page .site-faq{background:var(--surface-paper)}
.growth,.statement,.brand-dark,.brand-ribbon,.tone-navy,.review-section,.site-finale,.site-footer{background:var(--navy);color:var(--cream)}
.problems,.brand-teal,.tone-teal{background:var(--teal);color:var(--navy)}
.cs-project,.cs-feature,.cs-related-grid>a,.cs-client-register{background:var(--surface-sage)}
.cs-card,.cs-notebook{background:var(--surface-paper)}
.client-logo-heading .eyebrow{line-height:1.7}
/* Footer dimensions are owned here, never by service-page heading rules. */
.site-footer{padding-top:65px;border-top:1px solid #ffffff24}
.site-footer h2{font-size:17px;line-height:1.03;letter-spacing:-.025em;margin:7px 0 23px}
.site-footer p{line-height:1.7}
.site-footer .footer-grid img{display:block;width:200px;height:auto;aspect-ratio:538/240}
.site-header .brand img{display:block;object-fit:contain}
/* Compact content groups use the same gap scale as the homepage. */
.brand-heading,.brand-feature-grid,.brand-opening-grid,.brand-budget-grid,.brand-technical-grid,.brand-editorial-grid{column-gap:var(--content-gap)}
.brand-feature-list article,.brand-feature-list article:first-child{padding-block:24px}
.brand-feature-list h3{margin-bottom:9px}
.inner-page .brand-heading{margin-bottom:28px}
.inner-page .brand-owner-note{margin-top:24px}
.inner-page .conversation-book{margin:24px 0 30px}
.brand-heading>.brand-prose,.brand-heading>p{padding-top:0}
.inner-page .brand-prose{font-size:15px}
.site-finale{padding-block:var(--section-space)}
.cs-outcome,.cs-evolution,.cs-decisions,.cs-feature,.cs-story-layout{margin-bottom:var(--section-space)}
@media(max-width:900px){:root{--content-gap:32px}}
@media(max-width:760px){:root{--section-space:48px;--section-space-compact:36px;--content-gap:24px}.inner-page .brand-editorial{padding-block:25px}.brand-feature-list article,.brand-feature-list article:first-child{padding-block:22px}.site-footer{padding-top:45px}.site-footer .footer-bottom{margin-top:32px}.inner-page .brand-opening-grid{gap:24px}}
@media print{.growth,.statement,.brand-dark,.brand-ribbon,.tone-navy,.review-section,.site-finale,.site-footer,.problems,.brand-teal,.tone-teal{background:white;color:var(--navy)}}
