.elementor-373 .elementor-element.elementor-element-7c5ac48{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:center;--align-items:center;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-373 .elementor-element.elementor-element-5713e46{padding:60px 60px 60px 60px;font-family:"myriad-pro", Sans-serif;font-size:22px;font-weight:300;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-373 .elementor-element.elementor-element-826f64d{--display:flex;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-373 .elementor-element.elementor-element-b579922{font-family:"myriad-pro", Sans-serif;font-size:22px;font-weight:300;}@media(max-width:1024px){.elementor-373 .elementor-element.elementor-element-7c5ac48{--grid-auto-flow:row;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}@media(min-width:768px){.elementor-373 .elementor-element.elementor-element-7c5ac48{--content-width:1440px;}.elementor-373 .elementor-element.elementor-element-826f64d{--content-width:1400px;}}@media(max-width:767px){.elementor-373 .elementor-element.elementor-element-7c5ac48{--min-height:0px;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--gap:0px 0px;--row-gap:0px;--column-gap:0px;--grid-auto-flow:row;--justify-items:start;--align-items:start;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-373 .elementor-element.elementor-element-5713e46{padding:0px 0px 0px 0px;font-size:18px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-373 .elementor-element.elementor-element-826f64d{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}}/* Start custom CSS for text-editor, class: .elementor-element-b579922 *//* Wrap your table in <div class="table-responsive">…</div> */

/* Base: make wide tables scroll instead of overflowing */
.table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive table {
  width: 100%;
  border-collapse: collapse;
  /* Let columns size naturally; prevents weird squish */
  table-layout: auto;
  /* Ensure the table can be wider than the viewport if needed */
  min-width: 600px; /* adjust to your column count/content */
}

/* Improve text wrapping so long words don’t blow up columns */
.table-responsive th,
.table-responsive td {
  word-break: break-word;
  hyphens: auto;
}

/* Optional: keep first column visible while you scroll horizontally */
@media (max-width: 768px) {
  .table-responsive th:first-child,
  .table-responsive td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    background: #fff; /* match your table bg */
  }
}

/* If a parent container clips overflow on mobile, relax it */
@media (max-width: 768px) {
  .table-responsive,
  .table-responsive * {
    max-width: 100%;
  }
  /* Common culprit in page builders; uncomment if needed */
  /* .your-section-or-column-class { overflow: visible !important; } */
}

/* Rotate first column text */
.table-responsive td:first-child,
.table-responsive th:first-child {
  writing-mode: vertical-rl; /* vertical text */
  transform: rotate(180deg); /* flip so it reads top-to-bottom */
  white-space: nowrap;       /* prevent wrapping */
  text-align: center;        /* center align */
  vertical-align: middle;    /* middle align in cell */
  padding: 10px;             /* spacing */
}/* End custom CSS */
/* Start custom CSS *//* Responsive table wrapper */
.table-responsive {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; /* smooth scroll on iOS */
  overscroll-behavior-x: contain;    /* prevent scroll chaining */
}

/* Table layout */
.table-responsive table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;   /* natural column widths */
  min-width: 600px;     /* ensure columns don’t collapse; adjust as needed */
}

/* Improve text wrapping */
.table-responsive th,
.table-responsive td {
  word-break: break-word;
  hyphens: auto;
  padding: .5rem;       /* optional spacing */
  vertical-align: top;
}

/* Keep first column visible when scrolling horizontally */
@media (max-width: 768px) {
  .table-responsive th:first-child,
  .table-responsive td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    background: #fff;   /* match table bg */
  }
}/* End custom CSS */