/* 0.21: saved Site Editor templates use jbm-home; WordPress's constrained defaults must not shrink the page. */
.jbm-home{width:min(calc(100% - 2rem),1280px)!important;max-width:1280px!important;margin-inline:auto!important;padding:clamp(.75rem,1.8vw,1.5rem) 0 4rem}
.jbm-home.is-layout-constrained>*{width:100%!important;max-width:none!important;margin-inline:0!important}
.jbm-home-hero{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:center;gap:clamp(1.5rem,3.5vw,4rem);padding:clamp(1rem,2vw,2rem) 0 clamp(2rem,4vw,4rem);border-bottom:1px solid #e2e8f0}
.jbm-home-hero>*{min-width:0;max-width:none!important;width:100%!important;margin-inline:0!important}
.jbm-home-hero__copy>*{margin-left:0!important;margin-right:0!important}
.jbm-home-hero h1{max-width:19ch!important;font-size:clamp(2.2rem,1.45rem + 2.15vw,3.65rem);line-height:1.12;text-wrap:balance}
.jbm-home-hero__copy>p:not(.jbm-eyebrow){max-width:65ch!important;font-size:clamp(1.05rem,1rem + .25vw,1.2rem);line-height:1.65}
.jbm-home-hero .wp-block-buttons{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.3rem}
.jbm-home-hero__visual>.jbm-image-slot{min-height:260px;aspect-ratio:4/3;display:grid;place-items:center;max-width:none!important;width:100%;padding:clamp(1.5rem,3vw,3rem);border:1px solid #d9e1ea;border-radius:1rem;background:radial-gradient(circle at 85% 18%,rgba(242,85,99,.28) 0 10%,transparent 10.2%),radial-gradient(circle at 16% 82%,rgba(255,255,255,.07) 0 15%,transparent 15.2%),linear-gradient(135deg,#0f172a,#26374d 65%,#a50d26);text-align:center}
.jbm-image-slot p{max-width:24ch!important;margin:0!important;color:#fff;font-family:Archivo,Inter,sans-serif;font-weight:800;font-size:clamp(1.35rem,1rem + 1vw,2rem);line-height:1.25;text-wrap:balance}
.jbm-home-hero__caption{margin:.6rem 0 0!important;color:#475569;font-size:.85rem;text-align:center}
.jbm-home-section{padding:clamp(2.3rem,4vw,4rem) 0;border-bottom:1px solid #e2e8f0}
.jbm-home-section>*{max-width:none!important;margin-left:0!important;margin-right:0!important}
.jbm-home-section>h2{font-size:clamp(1.8rem,1.3rem + 1.2vw,2.65rem);line-height:1.2;max-width:32ch!important;text-wrap:balance}
.jbm-home-section>p{max-width:85ch!important;line-height:1.7}
.jbm-home-section .jbm-discovery-grid,.jbm-home-section .jbm-content-grid{max-width:none!important;width:100%;margin-inline:0!important}
.jbm-home-section--final{border-bottom:0}
/* Keep headings and body aligned on internal pages, including owner-saved content blocks. */
.jbm-page:not(.jbm-page--legal):not(.jbm-contact)>.jbm-page__intro,
.jbm-page:not(.jbm-page--legal):not(.jbm-contact)>.jbm-page__content,
.jbm-page>.jbm-service-hero{width:100%!important;max-width:1280px!important;margin-left:0!important;margin-right:0!important}
.jbm-page:not(.jbm-page--legal):not(.jbm-contact) .jbm-page__intro>*{margin-left:0!important;margin-right:0!important;max-width:1100px!important}
.jbm-page:not(.jbm-page--legal):not(.jbm-contact) .jbm-page__content>.wp-block-post-content{width:100%!important;max-width:1100px!important;margin-left:0!important;margin-right:0!important}
.jbm-page--discovery .wp-block-post-content>*{max-width:1050px!important;margin-left:0!important;margin-right:0!important}
.jbm-page--discovery .wp-block-post-content :is(p,li){font-size:clamp(1rem,.96rem + .2vw,1.12rem)}
@media(max-width:900px){.jbm-home-hero{grid-template-columns:1fr}.jbm-home-hero__visual{max-width:680px!important}.jbm-home-section{padding-block:2.4rem}}
@media(max-width:620px){.jbm-home{width:calc(100% - 1.25rem)!important}.jbm-home-hero{padding-top:.75rem;text-align:center}.jbm-home-hero__copy>*{margin-inline:auto!important}.jbm-home-hero h1{font-size:clamp(2rem,1.45rem + 2.2vw,2.75rem)}.jbm-home-hero .wp-block-buttons{display:grid}.jbm-home-hero .wp-block-button,.jbm-home-hero .wp-block-button__link{width:100%}.jbm-home-hero__visual>.jbm-image-slot{min-height:210px}.jbm-home-section>h2{font-size:clamp(1.6rem,1.25rem + 1vw,2rem)}}
