.module-table {
    background:var(--light-gray);
}

.module-table .inner-wrapper {
    background:#fff;
    border-radius: 15px;
}

.module-table .intro-wrapper {
    margin-bottom:4rem;
    text-align: center;
}

.module-table .table-wrapper {
    overflow-x:auto;
}

.module-table .table-wrapper.add-read-more {
    position: relative;
    transition: all .5s ease-in-out;
    max-height:200px;
    overflow-y: hidden;
}

.module-table .table-wrapper.add-read-more.expanded {
    max-height: 5000px; /* Large enough to fit content */
}

.module-table .table-wrapper.collapsed.add-read-more::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
    pointer-events: none; /* Don't block interactions */
    transition: opacity 0.3s ease;
    z-index:2;
}

.module-table .expand-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    text-transform: uppercase;
    padding: 10px;
    text-align: center;
    width: auto;
    margin: 10px auto; /* Keep it centered below table */
    font-weight: bold;
    transition: 0.3s;
    font-size:1.6rem;
}

.module-table .expand-btn:after {
    content:'\f063';
    color:#000;
    font: var(--fa-font-solid);
    background-color:var(--yellow);
    border-radius: 50%;
    padding:2px;
    width:2.5rem;
    height:2.5rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size:1.6rem;
    margin-left:8px;
    text-decoration: none;
}

.module-table .expand-btn.expanded:after {
    content:'\f062';
}

.module-table table {
    width: 100%;
    border-collapse: collapse;
    border:0;
}

.module-table table colgroup {
    display: none;
}

.module-table table tr {
    height: auto !important;;
}

.module-table table th, 
.module-table table td {
    padding:1rem 2rem;
    text-align: center;
    font-size:1.6rem;
    position: relative;
    border:0;
}

.module-table table td:first-child {
    text-align: left;
}

.module-table .table-wrapper.first-row-is-header tr:first-child td {
    font-weight:bold;
    color:#000;
    text-transform: uppercase;
    border-bottom:2px solid #fff
}

.module-table table td:after {
    content:'';
    position: absolute;
    right:0;
    top:0;
    width:2px;
    height:100%;
    background:#fff;
}

.module-table .table-wrapper.indent-non-subheads tbody tr.subhead {
    border-top:20px solid #fff;
}

.module-table .table-wrapper.indent-non-subheads tbody tr.subhead td {
    font-size:1.8rem;
    font-weight:bold;
}

.module-table .table-wrapper.indent-non-subheads tbody tr:not(.subhead) td:first-child {
    padding-left: 4rem;
}

.module-table .table-wrapper tbody tr.total td {
    border-top:2px solid #000;
    font-weight:bold;
}

.module-table .table-wrapper tr:nth-child(odd) td {
    background-color: var(--light-gray);
}

.module-table .table-wrapper tr:hover td {
    background-color: var(--medium-gray);
}

@media (min-width:1200px) {

}