.jbm-utility{max-width:900px;margin:1.5rem auto;padding:clamp(1rem,3vw,2rem);background:#fff;border:1px solid #e2e8f0;border-radius:.8rem}
.jbm-utility__privacy{font-size:.9rem;color:#475569}
.jbm-utility__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;margin:1rem 0}
.jbm-utility__fields label{display:block;font-weight:700;align-self:end}
.jbm-utility__fields input{display:block;width:100%;min-height:46px;padding:.6rem .75rem;border:1px solid #64748b;border-radius:.4rem;color:#0f172a;background:#fff;font:inherit;grid-row:auto}
.jbm-utility button,.jbm-utility__actions a{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:.6rem 1rem;border:1px solid #c8102e;border-radius:.4rem;background:#c8102e;color:#fff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
.jbm-utility button:hover,.jbm-utility__actions a:hover{background:#a50d26;color:#fff}
.jbm-utility :is(input,button,a):focus-visible{outline:3px solid #c8102e;outline-offset:3px}
.jbm-utility__result:not(:empty){margin-top:1.5rem;padding:1rem;border-left:4px solid #16a34a;background:#f8fafc;scroll-margin-top:6rem}
.jbm-utility__result h2{margin:.1rem 0 .8rem;font-size:1.4rem}.jbm-utility__result li{padding:.25rem 0}
.jbm-utility__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-block:1rem}.jbm-utility__actions button{background:#fff;color:#a50d26}
@media(max-width:650px){.jbm-utility__fields{grid-template-columns:1fr;gap:.35rem}.jbm-utility__fields label{margin-top:.7rem}}

.jbm-utility__privacy,.jbm-mfg__privacy{font-size:.875rem;color:#475569;line-height:1.5}
