/* Shared page frame. Gutenberg's per-template inline spacing is overridden
 * deliberately here so the masthead, page headings and sections share edges. */
:root { --sbi-page-width: 1240px; --sbi-page-gutter: 28px; --sbi-page-top: 48px; --sbi-reading-width: 740px; }
body .sbi-edition { box-sizing: border-box; width: 100%; max-width: calc(var(--sbi-page-width) + 2 * var(--sbi-page-gutter)); padding-inline: var(--sbi-page-gutter); }
body :is(.wp-site-blocks, .is-root-container) > main:is(.sbi-archive, .sbi-contact-page, .sbi-explainer, .sbi-article),
body :is(.wp-site-blocks, .is-root-container) > main:has(.sbi-services) {
 box-sizing: border-box;
 width: min(var(--sbi-page-width), calc(100% - 2 * var(--sbi-page-gutter)));
 max-width: none;
 margin: 0 auto !important;
 padding: var(--sbi-page-top) 0 64px !important;
 background: none;
}
body .sbi-archive > .alignwide,
body .sbi-contact-page > .alignwide,
body .sbi-contact-hero,
body .sbi-contact-hero > .alignwide,
body main:has(.sbi-services) > .wp-block-post-content {
 box-sizing: border-box;
 width: 100%; max-width: none;
 margin-inline: 0 !important;
 padding-inline: 0 !important;
}
body .sbi-contact-page .sbi-contact-hero { margin-top: 0; padding-block: 0 32px !important; border-bottom: 1px solid var(--sbi-line); background: none; }
body .sbi-contact-hero > .alignwide { margin-block: 0; }
body .sbi-contact-page .sbi-contact-page__body { padding-top: 32px; }
body .sbi-archive .sbi-archive__header { margin-top: 0; padding: 0; }
body .sbi-archive > .wp-block-separator { margin-block: 32px; border-color: var(--sbi-line); border-width: 1px; }
body .sbi-services { max-width: none; margin: 0; padding: 0; }
body .sbi-services .sbi-services__intro { max-width: none; padding: 0 0 32px; }
body .sbi-services__intro > p { max-width: var(--sbi-reading-width); }
body .sbi-services__intro > p:first-child { margin-top: 0; }
body .sbi-explainer .sbi-explainer__article { width: 100%; max-width: none; margin-inline: 0; }
body .sbi-explainer .sbi-explainer__header { max-width: none; margin-top: 0; }
body .sbi-explainer .sbi-explainer__content { width: 100%; max-width: var(--sbi-reading-width); margin-inline: 0 !important; }
body .sbi-explainer .sbi-explainer__header .sbi-explainer__hero-image { max-width: var(--sbi-reading-width); }
body .sbi-explainer .sbi-explainer__header .sbi-explainer__standfirst,
body .sbi-contact-hero .has-large-font-size,
body .sbi-services .sbi-services__lead,
body .sbi-archive__header .has-medium-font-size { max-width: var(--sbi-reading-width); font-size: clamp(1.1rem, 2vw, 1.35rem); line-height: 1.6; }
body :is(.wp-site-blocks, .is-root-container) main :is(.sbi-archive__header h1, .sbi-contact-hero h1, .sbi-services__intro h1, .sbi-explainer__header h1, .sbi-article__header h1) {
 max-width: min(100%, 1000px) !important; font-size: clamp(2.25rem, 4.3vw, 3.65rem) !important;
 line-height: 1.08 !important; letter-spacing: -.025em; margin-block: 14px 20px !important;
}
body :is(.sbi-contact-hero p:first-child, .sbi-archive__header > p:first-child, .sbi-services__intro > .sbi-min-kicker, .sbi-explainer__eyebrow) { margin: 0 !important; font: 700 12px/1.5 var(--sbi-font-sans); letter-spacing: .09em; color: var(--sbi-secondary-dark); }
body .sbi-contact-form-heading h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.15; }
body .sbi-contact-intro h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.15; }
body .sbi-article .sbi-article__inner { max-width: none; margin-inline: 0; }
body .sbi-article__inner > :is(.sbi-article__content, .sbi-article__image, .sbi-article__meta, .sbi-article__footer),
body .sbi-article__header .sbi-article__summary { max-width: var(--sbi-reading-width); margin-inline: 0; }
body .sbi-article__content > :where(:not(.alignleft):not(.alignright)) { max-width: 100%; margin-inline: 0 !important; }
@media (max-width: 640px) { :root { --sbi-page-gutter: 18px; --sbi-page-top: 32px; } }
@media print {
 :root { --sbi-page-gutter: 0px; --sbi-page-top: 20px; }
 body .wp-site-blocks > main { width: 100% !important; }
}
