/* Existing articles and service pages: constrain intrinsic widths, not the viewport. */
body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) { min-width:0; overflow-wrap:anywhere; }
body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) .v2b-table-scroll { box-sizing:border-box; width:100%; min-width:0; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; margin:14px 0 24px; }
body.v2b-design .v2b-table-scroll:focus-visible { outline:2px solid #e36500; outline-offset:3px; }
body.v2b-design .v2b-table-hint { margin:16px 0 6px; color:#62626c; font:400 13px/1.45 V2B-Roboto,Arial,sans-serif; }
body.v2b-design .v2b-table-hint[hidden] { display:none!important; }
body.v2b-inner .v2bp-existing-content .v2b-table-hint { color:#bcbec6; }

@media (max-width:768px) {
    /* Flex children must be allowed to shrink before a wide table can scroll locally. */
    body.v2b-design { min-width:0; max-width:100%; }
    body.v2b-design #page { width:100%; min-width:0; max-width:100%; margin-inline:0; }
    body.v2b-design #content.site-content { box-sizing:border-box; width:100%; min-width:0; max-width:100%; margin-inline:0; }
    body.v2b-design #content :is(.content-area,.site-main,#secondary) { box-sizing:border-box; float:none; width:100%; min-width:0; max-width:100%; }
    body.v2b-design #content .content-area { padding-inline:16px; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description),
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(div,section,article,figure,form) { box-sizing:border-box; min-width:0!important; max-width:100%!important; }
    body.v2b-design .entry-content { width:100%; padding-inline:0!important; margin-inline:auto; font-size:17px; line-height:1.6; }
    body.v2b-design .entry-content :is(.elementor-section,.elementor-container,.elementor-column,.elementor-widget,.elementor-widget-wrap,.elementor-widget-container) { min-width:0!important; max-width:100%!important; }
    body.v2b-design .entry-content :is(.elementor-container,.elementor-widget-wrap) { flex-wrap:wrap!important; }
    body.v2b-design .entry-content .elementor-column { width:100%!important; flex-basis:100%!important; }
    body.v2b-design .entry-content :is(.elementor-section,.elementor-widget-wrap) { padding-inline:0!important; }
    body.v2b-design .entry-content :is(div,section)[style*="max-width:1200px"],
    body.v2b-design .entry-content :is(div,section)[style*="max-width: 1200px"] { padding-inline:0!important; }
    body.v2b-design .entry-content :is(div,section)[style*="display:flex"],
    body.v2b-design .entry-content :is(div,section)[style*="display: flex"] { flex-wrap:wrap!important; gap:20px!important; }
    body.v2b-design .entry-content :is(div,section)[style*="flex:"] { flex-basis:100%!important; }
    body.v2b-design .entry-content :is(.alignwide,.alignfull) { width:100%!important; margin-inline:0!important; left:auto; right:auto; }

    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(p,li,td,th,a) { overflow-wrap:anywhere; word-break:normal; }
    body.v2b-design .entry-content :is(p,li) { line-height:1.6; }
    body.v2b-design .entry-content p { margin-bottom:1em; }
    body.v2b-design .entry-content h1, body.v2b-design .entry-title { font-size:clamp(26px,7vw,34px)!important; line-height:1.16!important; overflow-wrap:anywhere; }
    body.v2b-design .entry-content h2 { font-size:clamp(23px,5.5vw,28px)!important; line-height:1.22!important; }
    body.v2b-design .entry-content h3 { font-size:21px!important; line-height:1.3!important; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(ul,ol):not([class]),
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) .wp-block-list { margin:1em 0!important; padding:0 0 0 1.3em!important; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(ul:not([class]),ul.wp-block-list) { list-style:disc outside!important; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(ol:not([class]),ol.wp-block-list) { list-style:decimal outside!important; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(ul:not([class]),ol:not([class]),.wp-block-list) > li { display:list-item; padding:0!important; margin:.55em 0!important; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(ul:not([class]),ol:not([class]),.wp-block-list) > li::before { content:none!important; display:none!important; }
    body.v2b-design .entry-content :is(ul:not([class]),ol:not([class]),.wp-block-list) > li::marker { color:#ce5600; }
    body.v2b-design .entry-content blockquote { margin-inline:0!important; padding:16px!important; }
    body.v2b-design .entry-content blockquote::before { position:static; margin-right:8px; }

    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) img:not(.v2-lb-img) { max-width:100%!important; height:auto!important; }
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) :is(iframe,video,canvas,svg) { max-width:100%!important; }
    body.v2b-design .entry-content :is(.alignleft,.alignright) { float:none!important; margin:16px auto!important; }
    body.v2b-design .entry-content :is(pre,code) { white-space:pre-wrap; overflow-wrap:anywhere; max-width:100%; }
    body.v2b-design .entry-content form { width:100%; padding:20px 16px!important; }
    body.v2b-design .entry-content :is(input,textarea,select,button,.custom-order-button,.elementor-button) { box-sizing:border-box; max-width:100%; }
    body.v2b-design .entry-content :is(input,textarea,select) { min-width:0; font-size:16px; }
    body.v2b-design .entry-content :is(.custom-order-button,.elementor-button) { white-space:normal; text-align:center; }
    body.v2b-design .entry-header .entry-meta { display:flex; flex-wrap:wrap; gap:10px; }
    body.v2b-design .entry-header .b-share { display:flex; flex-wrap:wrap; float:none; max-width:100%; }

    /* No-JS fallback: the table itself contains its overflow. */
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) table:not(.vp-mtbl) { display:block; width:100%!important; min-width:0!important; max-width:100%!important; overflow-x:auto; -webkit-overflow-scrolling:touch; }
    /* With JS the wrapper scrolls; the native table keeps its headings and cell relationships. */
    body.v2b-design :is(.entry-content,.v2bp-existing-content,.taxonomy-description) .v2b-table-scroll > table.v2b-table { display:table!important; width:100%!important; min-width:var(--v2b-table-min,560px)!important; max-width:none!important; margin:0; overflow:visible; table-layout:auto; }
    body.v2b-design .v2b-table :is(th,td) { padding:10px 12px!important; font-size:15px; line-height:1.45; vertical-align:top; white-space:normal; }
}
