/* HARDWOOD 1.0.7. Mobile-only content tables; desktop geometry is untouched.
 * Native headers stay in the accessible table. Generated visual labels contain
 * no duplicate DOM text; their empty speech alternative avoids a second header.
 * No-JS, irregular, merged-cell and unknown tables retain a wrapping grid.
 */
@media (max-width: 599.98px) {
    body.hw-grafit .hw-content :where(.entry-content, .elementor-widget-container, .post-text, .post-entry) table:where(:not([role="presentation"]):not(form table):not(.super-form table)) {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
        box-sizing: border-box;
    }
    body.hw-grafit .hw-content :where(.entry-content, .elementor-widget-container, .post-text, .post-entry) table:where(:not([role="presentation"]):not(form table):not(.super-form table)) :is(th, td) {
        min-width: 0 !important;
        width: auto !important;
        box-sizing: border-box;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        padding: 8px !important;
    }
    body.hw-grafit .hw-content :where(.entry-content, .elementor-widget-container, .post-text, .post-entry) table:where(:not([role="presentation"]):not(form table):not(.super-form table)) :is(th, td) :is(a, span, strong, p, li) {
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        max-width: 100% !important;
    }
    body.hw-grafit .hw-content :where(.entry-content, .elementor-widget-container, .post-text, .post-entry) table:where(:not([role="presentation"]):not(form table):not(.super-form table)) :is(img, video, iframe) {
        max-width: 100% !important;
    }
    body.hw-grafit .hw-content :is(.table-responsive, .table-wrapper, .comparison-table):has(> table) {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) {
        display: block !important;
        border: 0 !important;
        border-spacing: 0 !important;
        background: transparent !important;
        overflow: visible !important;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) > :is(thead, tbody, tfoot) {
        display: block !important;
        width: 100% !important;
        border: 0 !important;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) > caption {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) tr {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box;
        margin: 0 0 16px !important;
        border: 1px solid #c8c2b8 !important;
        border-radius: 4px !important;
        background: #fbfaf7 !important;
        box-shadow: none !important;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) tr > :is(th, td) {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 11px 12px !important;
        border: 0 !important;
        border-bottom: 1px solid #e3dfd6 !important;
        background: transparent !important;
        color: #272722 !important;
        text-align: left !important;
        font-size: 16px !important;
        line-height: 1.5 !important;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) tr > :is(th, td):first-child {
        background: #f0ede7 !important;
        font-weight: 700 !important;
        border-radius: 3px 3px 0 0;
    }
    body.hw-grafit .hw-content table:is(.hw-mobile-table--cards, .hw-mobile-table--pairs) tr > :is(th, td):last-child { border-bottom: 0 !important; }
    body.hw-grafit .hw-content table.hw-mobile-table--cards tr > [data-hw-label]::before {
        content: attr(data-hw-label);
        content: attr(data-hw-label) / "";
        display: block;
        margin: 0 0 3px;
        color: #605d57;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.4;
    }
    body.hw-grafit .hw-content table.hw-mobile-table--cards tr.hw-mobile-table-header {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        margin: -1px !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        clip-path: inset(50%) !important;
    }
}
