/* 2.3.7: final, deliberately small presentation layer shared by the canvas and block theme. */
body.bf-launchpad{--bf-content-width:1280px;overflow-x:clip;background:#f3f4f3!important}
body.bf-launchpad :where(.bf-main,.bf-entry,.bf-entry-content){min-width:0}
body.bf-launchpad :where(.wp-block-button__link,.bf-button,.bf-header-cta,.bf-final-action,.bf-scroll-story__actions a,.eqs-quick-submit){border-radius:999px!important;min-height:44px}
body.bf-launchpad :where(a,button,input,select,textarea):focus-visible{outline:3px solid #286e9c!important;outline-offset:3px!important}
.bf-site-header{z-index:100!important}
.bf-site-header .bf-header-inner{width:min(1440px,calc(100% - 2.5rem))!important;max-width:none!important;min-width:0!important;gap:clamp(.65rem,1.5vw,1.5rem)!important}
.bf-site-header .bf-header-actions{margin:0!important;flex-shrink:0}
.bf-site-header :where(.bf-header-cta,.bf-header-actions .wp-block-button__link){display:inline-flex!important;align-items:center;justify-content:center;white-space:nowrap;padding:.7rem 1.15rem!important;min-height:42px!important;font-size:.8rem!important;font-weight:750!important}
.bf-site-header :where(.bf-brand,.bf-brand-lockup){min-width:0}
.bf-site-header :where(.bf-brand-copy,.wp-block-site-title){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bf-front-page .bf-home-hero .bf-scroll-story__copy{border:1px solid rgba(255,255,255,.25)!important;border-radius:24px!important;background:rgba(246,247,247,.85)!important;box-shadow:0 18px 56px rgba(0,0,0,.14)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.bf-front-page .bf-home-hero .bf-scroll-story__copy h1{max-width:17ch!important;font-size:clamp(2.5rem,4.25vw,4.7rem)!important;line-height:1.03!important;letter-spacing:-.048em!important}
.bf-front-page .bf-home-hero .bf-scroll-story__technical{letter-spacing:.09em}
.bf-front-page .bf-home-hero .bf-scroll-story__actions{gap:.7rem!important}
.bf-front-page .bf-home-hero .bf-scroll-story__actions a{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.8rem 1.15rem!important;max-width:100%;line-height:1.2!important}
.bf-front-page .bf-home-hero .bf-scroll-story__actions a strong{font-size:.95rem}
.bf-front-page .bf-home-hero .bf-scroll-story__actions a small{font-size:.65rem;letter-spacing:.06em;text-transform:uppercase}
.bf-front-page .bf-home-hero .bf-scroll-story__context-card{border-radius:18px!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.bf-front-page :where(.bf-home-clean-intro,.bf-home-clean-services,.bf-home-clean-routes,.bf-home-brand-story,.bf-home-inquiry){scroll-margin-top:88px}
.bf-front-page :where(.bf-home-clean-intro,.bf-home-clean-services,.bf-home-clean-routes,.bf-home-brand-story,.bf-home-inquiry) h2{overflow-wrap:normal;text-wrap:balance;line-height:1.08!important;letter-spacing:-.045em!important}
.bf-front-page :where(.bf-home-clean-intro,.bf-home-clean-services,.bf-home-clean-routes,.bf-home-brand-story,.bf-home-inquiry) p{line-height:1.6}
.bf-home-clean-services__grid article{min-height:0!important;transform:none!important}
.bf-home-clean-routes__journal .wp-block-post-template{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.bf-front-page .bf-home-brand-story__copy h2{max-width:19ch!important}
.bf-front-page .bf-home-inquiry .bf-home-inquiry__heading h2{max-width:none!important}
.bf-front-page .bf-home-inquiry .bf-home-inquiry__grid{gap:clamp(1rem,2.5vw,2.5rem)!important;align-items:start!important}
.bf-front-page .bf-home-inquiry .bf-request-form,.bf-front-page .bf-home-inquiry .bf-request-aside{min-width:0}
.bf-front-page .bf-home-inquiry :where(.bf-request-form,.bf-request-aside,.bf-home-inquiry__heading){transform:none!important}
.bf-front-page .bf-home-inquiry .bf-home-inquiry__privacy{font-size:.83rem}
/* Article headlines should read like normal titles, with the topic as a quiet label. */
body.bf-article-view :where(.bf-content-hero,.bf-article-header){width:min(1120px,calc(100% - 2rem))!important;margin:clamp(2rem,5vw,5rem) auto 2rem!important;padding:clamp(1.5rem,4vw,3.5rem)!important;border-radius:22px!important}
body.bf-article-view :where(.bf-content-hero,.bf-article-header) :where(h1,.wp-block-post-title){max-width:22ch!important;font-size:clamp(2.35rem,4.4vw,4.5rem)!important;line-height:1.08!important;letter-spacing:-.045em!important}
body.bf-article-view :where(.bf-content-hero,.bf-article-header) .bf-eyebrow{font-size:.73rem!important}
body.bf-article-view :where(.bf-prose,.bf-article-runtime-content){width:min(860px,calc(100% - 2rem))!important;margin-inline:auto!important}
@media(max-width:1100px){.bf-home-clean-routes__journal .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:980px){.bf-front-page .bf-home-hero.is-static .bf-scroll-story__stage{height:clamp(280px,44vw,420px)!important;min-height:0!important}.bf-front-page .bf-home-hero.is-static .bf-scroll-story__visual{max-height:100%!important}.bf-front-page .bf-home-hero.is-static .bf-scroll-story__copy{width:min(720px,100%)!important;margin-inline:auto!important}.bf-front-page .bf-home-hero.is-static .bf-scroll-story__panel--context{display:none!important}}
@media(max-width:782px){.bf-site-header .bf-header-inner{width:calc(100% - 1rem)!important}.bf-front-page .bf-home-hero.is-static .bf-scroll-story__stage{height:280px!important}.bf-front-page .bf-home-hero.is-static .bf-scroll-story__visual{height:260px!important;min-height:0!important}.bf-front-page .bf-home-hero .bf-scroll-story__copy h1{font-size:clamp(2.15rem,8vw,3.4rem)!important}.bf-home-clean-routes__journal .wp-block-post-template{grid-template-columns:1fr!important}.bf-front-page .bf-home-inquiry .bf-home-inquiry__grid{display:block!important}.bf-front-page .bf-home-inquiry .bf-home-inquiry__grid>.wp-block-column{width:100%!important;max-width:none!important;margin-bottom:1.5rem!important;flex-basis:auto!important}.bf-front-page :where(.bf-home-clean-intro,.bf-home-clean-services,.bf-home-clean-routes,.bf-home-brand-story,.bf-home-inquiry) h2{font-size:clamp(2.2rem,8vw,3.7rem)!important}}
@media(max-width:520px){.bf-site-header :where(.bf-brand-copy,.wp-block-site-title){display:none!important}.bf-site-header :where(.bf-header-cta,.bf-header-actions .wp-block-button__link){font-size:.7rem!important;padding:.55rem .7rem!important}.bf-front-page .bf-home-hero .bf-scroll-story__copy{padding:1.2rem!important}.bf-front-page .bf-home-hero .bf-scroll-story__actions a{width:100%;align-items:center;text-align:center}}
@media(prefers-reduced-motion:reduce){.bf-front-page .bf-home-hero,.bf-front-page .bf-home-hero .bf-scroll-story__flow{height:auto!important;min-height:0!important}.bf-front-page .bf-home-hero .bf-scroll-story__stage{position:relative!important;top:0!important;height:300px!important;min-height:0!important}.bf-front-page .bf-home-hero .bf-scroll-story__visual{opacity:1!important;transform:translate3d(-50%,-50%,0)!important}.bf-front-page .bf-home-hero .bf-scroll-story__flow{position:relative!important;display:block!important;transform:none!important}.bf-front-page .bf-home-hero .bf-scroll-story__panel--context{display:none!important}}

/* 2.3.8: keep the fixed beaver above the home sections; never clip its stage. */
body.bf-front-page :where(.bf-main,.bf-entry,.bf-entry-content){overflow:visible!important;clip-path:none!important;contain:none!important}
body.bf-front-page .bf-home-hero.is-page-tracked{isolation:auto!important;z-index:12!important}
body.bf-front-page .bf-home-hero.is-page-tracked .bf-scroll-story__stage{z-index:12!important;overflow:visible!important}
body.bf-front-page .bf-home-hero.is-page-tracked .bf-scroll-story__stage::before,
body.bf-front-page .bf-home-hero.is-page-tracked .bf-scroll-story__stage::after{pointer-events:none!important}
body.bf-front-page .bf-home-hero.is-page-tracked .bf-scroll-story__visual{z-index:30!important;visibility:visible!important;pointer-events:none!important}
body.bf-front-page .bf-home-hero.is-page-tracked .bf-scroll-story__flow{z-index:31!important}
body.bf-front-page [data-bf-collision-card]{transition:transform 240ms cubic-bezier(.22,.8,.25,1)!important;will-change:transform}
