.custom-table-widget-wrapper {
    background-color: #ececec;
    padding: 20px;
    border-radius: 25px;
}

.custom-table-widget-title {
    font-family: var(--e-global-typography-primary-font-family);
    font-size: 2.5em;
    text-align: center;
    margin: .5em 0 .75em;
    color: #fff;
}

.custom-table-widget {
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    width: 100%;
    table-layout: fixed;
    font-family: var(--e-global-typography-primary-font-family);
    font-size: 1.5rem;
    color: gray;
}

.custom-table-widget tr {
    background-color: #ececec;
    padding: .35em;
}

.custom-table-widget th,
.custom-table-widget td {
    padding: 20px;
    text-align: center;
}

.custom-table-widget th {
    font-size: 1.5rem;
    font-weight: 800;
    padding: 20px;
}

.custom-table-widget th:first-child {
    border-top-left-radius: 20px;
}

.custom-table-widget th:last-child {
    border-top-right-radius: 20px;
}

.custom-table-widget tbody {
    border-bottom-left-radius: 20px;
}

.custom-table-widget-product {
    color: var(--e-global-color-3d743ff);
    font-family: var(--e-global-typography-primary-font-family);
    background-color: rgb(255, 249, 218);
}

.custom-table-widget-other-product {
    color: gray;
}

.custom-table-widget td:first-child, th:first-child {
    border-left: none;
    border-top: none;
}

.custom-table-widget tbody td:last-child {
    border-bottom: none;
    border-right: none;
}

/* every second td in a row */
.custom-table-widget tbody tr td:nth-child(even) {
    color: var(--e-global-color-3d743ff);
    background-color: rgb(255, 249, 218);
}

.custom-table-widget {
    border-collapse: collapse;
}

.custom-table-widget td,
.custom-table-widget th {
    border: 2px solid rgb(0, 225, 255);
}

.custom-table-widget tr:first-child th {
    border-top: 0;
}

.custom-table-widget tr:last-child td {
    border-bottom: 0;
}

.custom-table-widget tr td:first-child,
.custom-table-widget tr th:first-child {
    border-left: 0;
}

.custom-table-widget tr td:last-child,
.custom-table-widget tr th:last-child {
    border-right: 0;
}

@media screen and (max-width: 600px) {
    .custom-table-widget {
        border: 0;
    }

    .custom-table-widget caption {
        font-size: 1.3em;
    }

    .custom-table-widget thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    .custom-table-widget tr {
        border-bottom: 3px solid #ddd;
        display: block;
        margin-bottom: .625em;
    }

    .custom-table-widget td {
        border-bottom: 1px solid #ddd;
        display: block;
        font-size: .8em;
        text-align: right;
    }

    .custom-table-widget td::before {
        /*
      * aria-label has no advantage, it won't be read inside a .custom-table-widget
      content: attr(aria-label);
      */
        content: attr(data-label);
        float: left;
        font-weight: bold;
        text-transform: uppercase;
    }

    .custom-table-widget td:last-child {
        border-bottom: 0;
    }
}