.elementor-4077 .elementor-element.elementor-element-7ef59726{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-2010504 .elementor-toc__header-title{text-align:start;}.elementor-4077 .elementor-element.elementor-element-2010504 .elementor-toc__header, .elementor-4077 .elementor-element.elementor-element-2010504 .elementor-toc__header-title{font-family:"Cardo", Sans-serif;font-size:25px;font-weight:400;line-height:42.24px;}.elementor-4077 .elementor-element.elementor-element-2010504 .elementor-toc__header{flex-direction:row;}.elementor-4077 .elementor-element.elementor-element-2010504{--item-text-hover-decoration:underline;}.elementor-4077 .elementor-element.elementor-element-6782474{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-ff88079{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-d5b3fa3{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-5e56c08{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-cec523c{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-ccbd057{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-6688b4f{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-3d94c27{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-0965359{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-2b933f8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-644750c{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-556c7bd{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-2413cf4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-9b8f23c{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-0cc9963{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-7d15a69{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-7f193d7{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-8b44bd7{--display:flex;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-29cecff{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-4077 .elementor-element.elementor-element-febed1d{--n-accordion-title-font-size:1,75rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}@media(max-width:767px){.elementor-4077 .elementor-element.elementor-element-2010504 .elementor-toc__header, .elementor-4077 .elementor-element.elementor-element-2010504 .elementor-toc__header-title{font-size:26px;line-height:1.2em;}}/* Start custom CSS for container, class: .elementor-element-7ef59726 */.elementor-4077 .elementor-element.elementor-element-7ef59726 table {
  width: 100%;
  table-layout: fixed; /* Critical for controlling column widths */
  border-collapse: collapse;
}

.elementor-4077 .elementor-element.elementor-element-7ef59726 table td,
.elementor-4077 .elementor-element.elementor-element-7ef59726 table th {
  overflow-wrap: anywhere; /* Modern property that works better than break-word */
  word-wrap: break-word; /* Legacy fallback */
  -ms-word-break: break-all; /* IE support */
  word-break: break-all; /* For non-CJK text */
  word-break: break-word; /* Less aggressive than break-all */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

/* Responsive container */
.elementor-4077 .elementor-element.elementor-element-7ef59726 .table-container {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Mobile styles */
@media only screen and (max-width: 767px) {
  /* Text size adjustment */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 table {
    font-size: 14px;
  }
  
  /* Force all cells to have reasonable max-width */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 table td, 
  .elementor-4077 .elementor-element.elementor-element-7ef59726 table th {
    max-width: 100vw; /* Viewport-based width constraint */
    padding: 8px;
  }
  
  /* Option 1: Vertical text display for long strings */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-vertical-text .long-text {
    writing-mode: vertical-lr;
    text-orientation: mixed;
    white-space: nowrap;
    max-height: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  /* Option 2: Text truncation with ellipsis */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-truncate .long-text {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    display: block;
  }
  
  /* Option 3: Responsive card layout */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-cards {
    border: 0;
  }
  
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-cards thead {
    display: none;
  }
  
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-cards tr {
    display: block;
    margin-bottom: 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    background: #fff;
    padding: 10px;
  }
  
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-cards td {
    display: block;
    text-align: right;
    position: relative;
    padding: 10px 10px 10px 50%;
    border-bottom: 1px solid #eee;
  }
  
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-cards td:last-child {
    border-bottom: 0;
  }
  
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .table-cards td:before {
    content: attr(data-label);
    position: absolute;
    left: 10px;
    width: 45%;
    text-align: left;
    font-weight: bold;
  }
  
  /* Tooltip for truncated text */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .has-tooltip {
    position: relative;
  }
  
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .has-tooltip:hover:after {
    content: attr(data-full-text);
    position: absolute;
    left: 0;
    top: 100%;
    z-index: 10;
    background: #333;
    color: #fff;
    padding: 5px;
    border-radius: 3px;
    white-space: normal;
    word-break: break-word;
    max-width: 200px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3);
  }
}

/* Extra small screens */
@media only screen and (max-width: 480px) {
  .elementor-4077 .elementor-element.elementor-element-7ef59726 table {
    font-size: 12px;
  }
  
  /* For extremely long text */
  .elementor-4077 .elementor-element.elementor-element-7ef59726 .ultra-long-text {
    font-size: 10px;
    letter-spacing: -0.5px;
  }
}/* End custom CSS */