/* v0.7.2: service decision journey and resource finder. Loaded only where used. */
.jbm-page--service,.jbm-page--solutions,.jbm-page--resources{max-width:1280px}
.jbm-page--service .jbm-page__content,.jbm-page--solutions .jbm-page__content,.jbm-page--resources .jbm-page__content{max-width:none;width:100%}
.jbm-page--service .jbm-page__content>.wp-block-shortcode,.jbm-page--solutions .jbm-page__content>.wp-block-shortcode,.jbm-page--resources .jbm-page__content>.wp-block-shortcode{width:100%;max-width:none!important}
.jbm-page--service .jbm-page__content>.wp-block-post-content,.jbm-page--solutions .jbm-page__content>.wp-block-post-content,.jbm-page--resources .jbm-page__content>.wp-block-post-content{max-width:900px;margin-inline:auto}
.jbm-service-jump{display:flex;align-items:center;gap:.5rem;overflow-x:auto;scrollbar-width:thin;margin:2.2rem 0 1.4rem;padding:.85rem;border:1px solid var(--jbm-line);border-radius:.75rem;background:#fff}
.jbm-service-jump span{flex:none;color:var(--jbm-ink);font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em;margin-right:.7rem}
.jbm-service-jump a{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:.45rem .75rem;border-radius:99px;color:var(--jbm-ink);background:#f1f5f9;font-size:.83rem;font-weight:700;text-decoration:none}
.jbm-service-jump a:hover,.jbm-service-jump a:focus-visible{background:#fdecef;color:var(--jbm-red-dark)}
.jbm-service-section{scroll-margin-top:9rem;position:relative;margin:1.5rem 0;padding:clamp(1.5rem,3vw,3rem);border:1px solid var(--jbm-line);border-top:4px solid var(--jbm-red);border-radius:.9rem;background:#fff}
.jbm-service-section__head{max-width:780px;margin:0 0 1.7rem}
.jbm-service-section__head h2,.jbm-resource-hub__intro h2{font-size:clamp(1.85rem,1.3rem + 1.2vw,2.7rem);line-height:1.15;letter-spacing:-.025em;max-width:30ch;margin:0 0 .85rem;text-wrap:balance}
.jbm-service-section__head>p:last-child,.jbm-resource-hub__intro>p:last-child{max-width:68ch;color:#334155;font-size:clamp(1rem,.95rem + .15vw,1.15rem);line-height:1.65}
.jbm-service-grid,.jbm-surface-grid,.jbm-route-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.jbm-service-card,.jbm-surface-grid article,.jbm-route-grid article{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1rem,1.6vw,1.45rem);border:1px solid var(--jbm-line);border-radius:.7rem;background:#f8fafc}
.jbm-service-card h3,.jbm-surface-grid h3,.jbm-route-grid h3{font-size:clamp(1.1rem,1rem + .24vw,1.32rem);line-height:1.28;margin:.65rem 0 .4rem}
.jbm-service-card p,.jbm-surface-grid p,.jbm-route-grid p{font-size:.93rem;line-height:1.6;margin:.15rem 0 1rem}
.jbm-service-card>a,.jbm-route-grid a{margin-top:auto;color:var(--jbm-red-dark);font-size:.9rem;font-weight:800}
.jbm-service-card__icon{display:block;width:48px;height:48px;border-radius:.65rem;background:#fdecef url('../images/section-spark.svg') center/29px no-repeat}
.jbm-service-card__icon--search{background-image:url('../images/section-search.svg')}
.jbm-service-card__icon--handoff,.jbm-service-card__icon--measure{background-image:url('../images/section-path.svg')}
.jbm-service-section--ink{background:var(--jbm-ink);border-color:var(--jbm-ink);color:#fff}
.jbm-service-section--ink .jbm-service-section__head>p:last-child,.jbm-service-section--ink .jbm-service-note{color:#e2e8f0}
.jbm-service-section--ink .jbm-eyebrow{color:#f25563}
.jbm-service-section--ink h2,.jbm-service-section--ink h3{color:#fff}
.jbm-surface-grid article{background:#1e293b;border-color:#475569}
.jbm-surface-grid article>span{font:800 .88rem JetBrains Mono,ui-monospace,monospace;color:#f25563}
.jbm-surface-grid article p{color:#e2e8f0}
.jbm-service-note{margin:1.25rem 0 0;font-size:.82rem}
.jbm-service-timeline{counter-reset:jbmstep;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:0}
.jbm-service-timeline li{min-width:0;padding:1.2rem;border-top:4px solid var(--jbm-red);background:#f8fafc;border-radius:.3rem .3rem .7rem .7rem}
.jbm-service-timeline li::before{counter-increment:jbmstep;content:counter(jbmstep,decimal-leading-zero);display:block;color:var(--jbm-red-dark);font:850 1.35rem JetBrains Mono,ui-monospace,monospace}
.jbm-service-timeline h3{font-size:1.22rem;margin:.5rem 0 .3rem}
.jbm-service-timeline p{font-size:.94rem;line-height:1.6;margin:0}
.jbm-service-section--tint{background:#fdecef;border-color:#f6cbd3}
.jbm-route-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.jbm-route-grid article{background:#fff;border-color:#efb9c3}
.jbm-service-section--proof .jbm-content-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.jbm-service-section--faq details{padding:1rem 0;border-bottom:1px solid var(--jbm-line);max-width:880px}
.jbm-service-section--faq summary{cursor:pointer;font-weight:750;font-size:1.05rem}
.jbm-service-section--faq details p{max-width:70ch;color:#334155;margin:.7rem 0 0}
.jbm-service-final{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:2rem 0 3rem;padding:clamp(1.4rem,3vw,2.7rem);background:var(--jbm-ink);border-radius:.9rem;color:#fff}
.jbm-service-final .jbm-eyebrow{color:#f25563}
.jbm-service-final h2{color:#fff;font-size:clamp(1.6rem,1.3rem + .8vw,2.2rem);max-width:26ch;margin:.3rem 0}
.jbm-service-final p:last-child{color:#e2e8f0;margin:0}
.jbm-service-final>a{flex:none;display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:.7rem 1.2rem;border-radius:.5rem;background:var(--jbm-red);color:#fff;font-weight:800;text-decoration:none}
.jbm-service-final>a:hover{background:var(--jbm-red-dark)}
.jbm-resource-hub{margin:2rem 0 4rem;padding:clamp(1.4rem,3vw,2.7rem);border:1px solid var(--jbm-line);border-top:4px solid var(--jbm-red);border-radius:.8rem;background:#fff}
.jbm-resource-hub__intro{max-width:720px}
.jbm-resource-filters{display:grid;grid-template-columns:minmax(200px,1fr) auto;align-items:end;gap:.6rem 1rem;margin:1.5rem 0 1rem}
.jbm-resource-filters[hidden],.jbm-resource-empty[hidden],.jbm-resource-card[hidden]{display:none!important}
.jbm-resource-filters label{grid-column:1/-1;font-size:.83rem;font-weight:700}
.jbm-resource-filters input{width:100%;min-height:44px;padding:.55rem .75rem;border:1px solid #94a3b8;border-radius:.45rem;font:inherit}
.jbm-resource-filters [role=group]{display:flex;gap:.4rem;flex-wrap:wrap}
.jbm-resource-filters button{min-height:44px;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:.45rem;background:#f8fafc;color:var(--jbm-ink);font:inherit;font-size:.83rem;font-weight:750;cursor:pointer}
.jbm-resource-filters button[aria-pressed=true]{background:var(--jbm-ink);border-color:var(--jbm-ink);color:#fff}
.jbm-resource-count{min-height:1.4rem;font-size:.83rem;color:#475569}
.jbm-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.jbm-resource-card{min-width:0;padding:1.3rem;background:#f8fafc;border:1px solid var(--jbm-line);border-radius:.7rem}
.jbm-resource-card>span{display:inline-block;color:var(--jbm-red-dark);font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.jbm-resource-card h3{font-size:1.17rem;line-height:1.3;margin:.6rem 0 .4rem}
.jbm-resource-card h3 a{color:var(--jbm-ink);text-decoration:none}
.jbm-resource-card h3 a:hover{text-decoration:underline}
.jbm-resource-card p{font-size:.92rem;color:#334155;line-height:1.6;margin:0}
.jbm-resource-empty{padding:1rem;border:1px dashed #cbd5e1;border-radius:.5rem}
.jbm-resource-hub__more{margin:1.6rem 0 0}
.jbm-resource-hub__more a{font-weight:800}
@media(max-width:980px){.jbm-service-grid,.jbm-surface-grid,.jbm-service-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.jbm-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.jbm-service-section,.jbm-resource-hub{padding:1.2rem;margin-block:.8rem}.jbm-service-section__head{text-align:center;margin-inline:auto}.jbm-service-section__head h2,.jbm-resource-hub__intro h2{max-width:none}.jbm-service-grid,.jbm-surface-grid,.jbm-route-grid,.jbm-service-timeline,.jbm-resource-grid{grid-template-columns:1fr}.jbm-service-jump{margin:1.2rem 0;padding:.55rem}.jbm-service-jump span{display:none}.jbm-service-final{display:block;text-align:center}.jbm-service-final h2{max-width:none}.jbm-service-final>a{width:100%;margin-top:1.2rem}.jbm-resource-filters{grid-template-columns:1fr}.jbm-resource-filters [role=group]{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.jbm-resource-filters button{flex:none}}
.jbm-service-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.88fr);align-items:center;gap:clamp(1.4rem,4vw,4.2rem);padding:clamp(1.4rem,3.5vw,3rem) 0 clamp(1.5rem,3vw,2.5rem);border-bottom:1px solid var(--jbm-line)}
.jbm-service-hero>*{min-width:0;max-width:none!important;margin:0!important}
.jbm-service-hero__copy>.wp-block-post-title{max-width:18ch;font-size:clamp(2.25rem,1.55rem + 1.9vw,3.55rem);line-height:1.1;margin:.3rem 0 1.15rem;text-wrap:balance}
.jbm-service-hero__copy .wp-block-post-content{max-width:64ch;font-size:clamp(1rem,.96rem + .18vw,1.08rem);line-height:1.62}
.jbm-service-hero__copy .wp-block-post-content h2{font-size:1.25rem;margin:1rem 0 .4rem}
.jbm-service-hero__copy .wp-block-post-content ul{margin:.5rem 0;padding-left:1.3rem}
.jbm-service-hero__copy .wp-block-post-content p{margin:.5rem 0 .8rem}
.jbm-service-hero__visual{overflow:hidden;border:1px solid #334155;border-radius:.9rem;background:#0f172a;box-shadow:0 16px 36px rgba(15,23,42,.13)}
.jbm-service-hero__visual .wp-block-image{margin:0}
.jbm-service-hero__visual img{display:block;width:100%;height:auto;aspect-ratio:9/7;object-fit:cover}
.jbm-service-page__body{width:100%;max-width:none!important}
.jbm-service-page__body>.wp-block-shortcode{width:100%;max-width:none!important}
@media(max-width:850px){.jbm-service-hero{grid-template-columns:1fr}.jbm-service-hero__visual{max-width:720px!important;width:100%}}
@media(max-width:650px){.jbm-service-hero{padding:1.7rem .3rem 1.5rem;gap:1.25rem}.jbm-service-hero__copy>.jbm-eyebrow,.jbm-service-hero__copy>.wp-block-post-title{text-align:center;margin-inline:auto}.jbm-service-hero__copy>.wp-block-post-title{font-size:clamp(2rem,1.5rem + 2vw,2.6rem)}.jbm-service-hero__visual img{aspect-ratio:4/3}}
.jbm-page--service,.jbm-page--solutions{padding-top:0!important}
