/* Role mapping from boons.design/assets/editorial.css and site.css.
   Values come only from the original boons-tokens.css. */
html.editorial:has(body.service-page){font-size:1rem}
.service-page{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body)}
.service-page :is(h1,h2,h3,h4){font-family:var(--serif);font-weight:400;letter-spacing:var(--sf-ls)}
.service-page .detail-hero h1{font-size:var(--sf-stat);line-height:var(--sf-stat-lh);letter-spacing:var(--sf-ls)}
.service-page h2,.service-page .detail-scope h2,.service-page .contact-intro h2{font-size:var(--sf-h2);line-height:var(--sf-h2-lh);letter-spacing:var(--sf-ls)}
.service-page .process-panel h3,.service-page .related-services>a{font-family:var(--serif);font-weight:400;font-size:var(--sf-md);line-height:var(--sf-md-lh);letter-spacing:var(--sf-ls)}
.service-page p,.service-page .process-copy p,.service-page .detail-story p,.service-page .detail-scope p,.service-page .detail-focus p,.service-page .contact-intro p{font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body)}
.service-page .detail-hero-bottom>p{font-size:calc(var(--fs-text) * 1.35);line-height:1.28;letter-spacing:var(--ls-text)}
.service-page .section-label,.service-page .process-heading .process-label{font-size:var(--fs-meta);line-height:var(--lh-meta);letter-spacing:var(--ls-meta);font-weight:400}
.service-page .delivery-label,.service-page .process-index,.service-page .generated-art figcaption{font-size:var(--fs-tiny);line-height:var(--lh-tiny);letter-spacing:var(--ls-tiny);font-weight:400}
.service-page .process-delivery ul,.service-page .detail-scope li{font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body)}
.service-page .svc-faq summary{font-size:var(--fs-faq);line-height:var(--lh-faq);letter-spacing:var(--ls-faq);font-weight:400}
.service-page .button,.service-page .nav-studio{font-size:var(--fs-btn);line-height:var(--lh-btn);letter-spacing:var(--ls-btn);font-weight:400;min-height:2.5625rem;padding:0.625rem 1rem}
.service-page #services-contact label,.service-page .svc-footer>div:not(.footer-wordmark){font-size:var(--fs-text);line-height:var(--lh-text);letter-spacing:var(--ls-text)}
.service-page #services-contact :is(input,select,textarea){font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body)}
.service-page .form-bottom>p{font-size:var(--fs-tiny);line-height:var(--lh-tiny);letter-spacing:var(--ls-tiny)}
.service-page .contact-email{font-size:var(--fs-link);line-height:var(--lh-link);letter-spacing:var(--ls-link)}
.service-page .detail-focus{background:var(--dark);color:var(--paper)}
.service-page .detail-focus :is(p,.section-label){color:var(--muted-on-dark)}
.service-page .generated-art{background:var(--surface)}
.service-page .generated-art figcaption{color:var(--white);background:color-mix(in srgb,var(--dark) 72%,transparent)}

/* Paragraph text follows the paragraph tokens (18px at 1440px). */
.service-page{--fs-body:var(--fs-paragraph);--lh-body:var(--lh-paragraph);--ls-body:var(--ls-paragraph)}
.service-page .detail-hero-bottom>p{font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body)}
.service-page .delivery-label{font-size:var(--fs-meta);line-height:var(--lh-meta);letter-spacing:var(--ls-meta)}
