.vbn-tool{box-sizing:border-box;padding:28px;margin:28px 0;font-family:var(--font-body);border:1px solid;border-radius:18px}.faq-content .vbn-tool>h3{font:700 clamp(20px,2vw,24px)/1.35 var(--font-main)!important;margin:0 0 16px!important;padding:0!important;border:0;min-height:0!important}.vbn-tool p{line-height:1.65}.vbn-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;margin:24px 0}.vbn-fields label{display:block;font-weight:600;min-width:0;line-height:1.5}.vbn-tool input{appearance:none;box-sizing:border-box;width:100%;min-height:52px;margin-top:12px;padding:12px;border:1px solid;border-radius:10px;font:16px/1.5 var(--font-body)}.vbn-tool :is(input,button):focus-visible{outline:3px solid;outline-offset:4px}.vbn-actions{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0}.vbn-tool button{appearance:none;box-sizing:border-box;min-height:50px;padding:12px 18px;border:1px solid;border-radius:10px;font:600 16px/1.5 var(--font-body);white-space:normal;cursor:pointer;flex:1 1 200px}.vbn-tool :disabled{opacity:1;border-style:dashed;cursor:default}.vbn-tool #vbn-status{border:1px solid;border-left-width:4px;border-radius:12px;padding:20px;margin:24px 0;overflow-wrap:anywhere}.vbn-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 0}.vbn-results>div{border:1px solid;border-radius:10px;padding:16px;min-width:0}.vbn-results dt{font-weight:700;font-size:14px}.vbn-results dd{margin:12px 0 0;font-size:20px;line-height:1.5;font-weight:700;overflow-wrap:anywhere}.vbn-tool .vbn-note{font-size:14px;line-height:1.65;margin-top:24px!important}.vbn-tool [hidden]{display:none!important}.vbn-tool [aria-invalid=true]{border-width:3px!important}.crunch-guide .granta-table-scroll table{min-width:800px;width:100%;table-layout:auto}.crunch-guide table :is(th,td){word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}.crunch-guide figure img{display:block;width:100%;height:auto;object-fit:contain}.crunch-guide .granta-answer>h3:empty{display:none}@media(max-width:700px){.vbn-tool{padding:20px}.vbn-fields,.vbn-results{grid-template-columns:1fr}.vbn-tool #vbn-status{padding:16px}.vbn-tool .vbn-note{margin-top:20px!important}}
.faq-content aside.vbn-tool[data-faq-functional="compact"]{padding:28px!important}.vbn-quote-title{font-weight:700;margin-top:24px!important}@media(max-width:800px){.faq-content aside.vbn-tool[data-faq-functional="compact"]{padding:20px!important}}

.vbn-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.vbn-fields fieldset{min-width:0;margin:0;padding:18px;border:1px solid var(--accent-green);border-radius:10px}
.vbn-fields legend{padding:0 8px;font:700 1rem var(--font-body)}
.vbn-fields label+label{margin-top:20px}.vbn-fields input{width:100%;box-sizing:border-box}
#vbn-insight{margin:20px 0 0;padding:18px;border:1px solid var(--accent-green);border-radius:8px;line-height:1.7}
@media(max-width:600px){.vbn-fields{grid-template-columns:1fr}.vbn-fields fieldset{padding:16px}}

.vbn-tool .vbn-results{display:block}.vbn-tool .vbn-results[hidden]{display:none!important}.vbn-results>dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}.vbn-results>dl>div{padding:18px;background:var(--bg-main);border:1px solid var(--accent-green);border-radius:8px}.vbn-results dd{margin:8px 0 0;font-size:1.6rem;font-weight:700}@media(max-width:600px){.vbn-results>dl{grid-template-columns:1fr}}
.vbn-tool textarea{appearance:none;box-sizing:border-box;display:block;width:100%;min-height:132px;padding:14px;margin-top:12px;border:1px solid var(--accent-green);border-radius:10px;font:16px/1.6 var(--font-body);resize:vertical}.vbn-tool textarea:focus-visible,.vbn-tool pre:focus-visible{outline:3px solid var(--text-light);outline-offset:4px}.vbn-tool .vbn-results{display:block}.vbn-tool .vbn-results[hidden]{display:none!important}.vbn-tool pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0;padding:18px;border:1px solid var(--accent-green);border-radius:10px;font:16px/1.7 var(--font-body)}.vbn-tool h4{font:700 18px/1.5 var(--font-body);margin:18px 0}