body {
    font-size: 1rem;
    color: #000000;
    font-family: 'Open Sans', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.position-sticky {
    top: 0;
    z-index: 1000;
    width: 100%;
}

.overflow-hidden {
    overflow: hidden;
}

.table tr:first-child td .rank span, .table tr:nth-child(2) td .rank span, .table tr:nth-child(3) td .rank span {
    background-color: #ec4d16;
}

.navbar-toggler {
    font-size: 1.7rem;
}

.navbar-dark .navbar-toggler {
    border-color: transparent;
}

.navbar-dark .navbar-toggler:focus {
    box-shadow: none;
    outline: none;
}

.navbar-dark .navbar-toggler i {
    color: rgba(255, 255, 255, .5);
    border: 1px solid rgba(255, 255, 255, .1);
    padding: .35rem .75rem;
    border-radius: .25rem;
}

.navbar .btn-outline-dark {
    background-color: transparent;
    border-color: rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, 1);
    font-size: 1.1rem;
}

.section {
    display: none;
}

.section.open {
    display: block;
}

.buttons-section a.section-link {
    color: #ffff;
    text-transform: uppercase;
    text-decoration: none;

}

.buttons-section a.section-link:hover {
    color: #FFFFFF;
    text-decoration: none;
    cursor: pointer;
    background-color: #ec4d16;
}

.buttons-section a.section-link.active i, .buttons-section a.section-link:hover i {
    font-weight: 600;
}

.buttons-section a.section-link.active i,
.buttons-section a.section-link:hover i {
    color: #000000;
}

.buttons-section a.section-link.active {
    font-weight: 800 !important;
    background-color: #ec4d16;
    color: #FFFFFF;
}

.DTFC_LeftWrapper {
    display: none;
}

.z-index-2 {
    z-index: 2;
}

.fa-2x {
    font-size: 5em;
}

.col-lg-12-5 {
    position: relative;
    width: 100%;
    min-height: 1px;
}

.rounded-left {
    border-top-left-radius: 1rem !important;
    border-top-right-radius: 1rem !important;
    border-bottom-left-radius: 0rem !important;
}

@media (min-width: 576px) {
    .col-sm-12-5 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media (min-width: 768px) {
    .col-md-12-5 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media (min-width: 992px) {
    .col-lg-12-5 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media (min-width: 1200px) {
    .col-xl-12-5 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}


.text-ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    width: 180px;
    display: inline-block;
    line-height: 20px;
    vertical-align: middle;
}


.header::after {
    content: "";
    background: url(../images/header.jpg) no-repeat right;
    background-size: contain;
    position: absolute;
    width: 1200px;
    height: 100%;
    right: 0;
    bottom: 0;
}

.header::before {
    content: "";
    background: url(../images/Banner-BG.svg) no-repeat center;
    position: absolute;
    background-size: cover;
    height: 100%;
    width: 317px;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 1;

}

.border-color {
    border-color: #242424 !important;
}


.border-bottom {
    border-bottom: 2px solid #14a09f !important;
}


.rounded-top {
    border-top-left-radius: 2.25rem !important;
    border-top-right-radius: 2.25rem !important;
}

.rounded-bottom {
    border-bottom-right-radius: 1.85rem !important;
    border-bottom-left-radius: 1.85rem !important;
}

.rounded-bottom-xs {
    border-bottom-right-radius: 1.15rem !important;
    border-bottom-left-radius: 1.15rem !important;
}


.bg-dark {
    background-color: #000000 !important;
}

.bg-green-light {
    background-color: #f0fcf8;
}


.font-weight-bold {
    font-weight: 700 !important;
}

.font-weight-semi-bold {
    font-weight: 700 !important;
}

.font-weight-medium {
    font-weight: 600 !important;
}

.icons-bottom i {
    background-color: transparent;
    border-radius: 50%;
    height: 46px;
    width: 46px;
    line-height: 46px;
    text-align: center;
    font-size: 1.5rem;
    color: #0a0a0a;
    font-weight: bold;
    border: 3px solid black
}

.icons-bottom i:hover {
    background-color: black;
    color: #ffffff;
}

.line-height-1 {
    line-height: 1;
}

.line-height-1-4 {
    line-height: 1.8;
}

.line-height-1-6 {
    line-height: 2;
}


.bg-blue-dark {
    background-color: #242424 !important;
}


.text-red {
    color: #ec4d16;
}

.bg-red {
    background-color: #ec4d16;
}

.bg-yellow-light {
    background-color: #fffbf0;
}

.bg-yellow {
    background-color: #fff2cc;
}

.text-green-salad {
    color: #81efef;
}

.bg-green-salad {
    background-color: #ecf8f7;
}

.bg-green {
    background-color: #14a09f;
}

.text-green {
    color: #14a09f !important;
}


.number {
    height: 45px;
    width: 45px;
    line-height: 45px;
    margin: auto;
    border-radius: 50%;

}

.icon-wrap {
    height: 35px;
    width: 35px;
    border-radius: 50%;
    background-color: #021d2d;
    line-height: 35px;
    color: #ec4d16;
    margin: auto;
    position: relative;
    top: 47px;
    font-size: 1.5rem;
}

.icon-wrap:hover {
    color: #FFFFFF;
}

.bg-gray {
    background-color: #f2f2f2;
}

.img-square {
    padding-bottom: 64%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.img-square-small {
    padding-bottom: 80%;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-bottom: -40px;
}

.img-square-methodology {
    padding-bottom: 128%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.h5,
h5 {
    font-size: 1rem;
}


.text-justify {
    text-align: justify;
}

.no-wrap {
    white-space: nowrap;
}

.text-dark {
    color: #000000 !important;
}

.font-weight-medium {
    font-weight: 500;
}

.font-weight-italic {
    font-weight: 300;
}

div#data_paginate,
div#data2_paginate,
.data_filter,
.dataTables_length,
.dataTables_filter {
    display: none;
}

/* table */


.dataTables_wrapper .row {
    margin-right: 0px;
    margin-left: 0px;
}

.dataTables_wrapper .col-6,
.dataTables_wrapper .col-12,
.dataTables_wrapper .col-sm-12 {
    padding-right: 0px;
    padding-left: 0px;
}

.sorting .fa-sort-up,
.sorting .fa-sort-down {
    display: none;
}

.sorting_asc .fa-sort-up,
.sorting_asc .fa-sort {
    display: none;
}

.sorting_desc .fa-sort-down,
.sorting_desc .fa-sort {
    display: none;
}

.table tr th .heading-holder .th-title .fa-brands {
    font-size: 1.1rem;
}

.table tr th:first-child .heading-holder .th-title {
    height: 32px;
    width: 32px;
    line-height: 30px;
    border-radius: 50%;
    padding: 0;
    margin-left: 0px;
    min-width: auto;
}

.table tr th:nth-child(2) .heading-holder .th-title {
    min-width: 190px;
}

.table tr th:nth-child(3) .heading-holder .th-title {
    min-width: 190px;
}

.table tr th .heading-holder .th-title {
    min-width: 120px;
}

.scroll-hint-icon {
    top: calc(50% - 25px);
    left: calc(50% - 60px);
    width: 112px;
    height: 112px;
    border-radius: 50%;
    box-shadow: 1px 2px 5px rgb(0 0 0 / 1%);
    background: rgba(0, 0, 0, 0.6);
    padding: 20px 10px 10px 10px;
}

.scroll-hint-icon:after {
    content: '\f104';
    background: transparent;
    font-family: "Font Awesome 6 Pro";
}

.scroll-hint-icon:before {
    color: #ffffff;
    filter: invert(48%) brightness(170%);
    content: '\f8cd';
    background: transparent;
    font-family: "Font Awesome 6 Pro";
    font-size: 2rem;
}

.scroll-hint-text {
    position: relative;
}


.scroll-hint-icon-wrap.is-active .scroll-hint-text::before {
    opacity: 1;
}

.scroll-hint-text::before {
    content: '\f105';
    width: 34px;
    height: 14px;
    display: block;
    position: absolute;
    filter: invert(48%) brightness(170%);
    font-family: "Font Awesome 6 Pro";
    top: -40px;
    right: 7%;
    margin-left: -20px;
    font-size: 1.7rem;
    background-repeat: no-repeat;
    opacity: 0;
    transition-delay: 2.4s;
}

.scroll-hint-icon:after {
    z-index: 1;
    left: 32%;
    font-size: 1.7rem;
    filter: invert(48%) brightness(170%);
    top: 25px;
    color: #ffffff;
}

.scroll-hint-text {
    font-size: 16px;
    color: #ffffff;
    margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    opacity: 1;
    color: #ffffff;
}

.heading-holder .th-title {
    background-color: #242424;
    border-radius: 1rem;
    display: block;
    position: relative;
    margin-bottom: 10px;
    padding: 0.2rem 0;
    color: #ffffff;
}

.table tr th:first-child .heading-holder .sorting-icons i {
    font-size: 0.8rem;
}


.city-block .show-inner {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.85);
    height: 100%;
    border-bottom-right-radius: 1.85rem !important;
    border-bottom-left-radius: 1.85rem !important;
    border-top-left-radius: 2.25rem !important;
    border-top-right-radius: 2.25rem !important;
}

.city-block .show {
    display: none;
}

.city-block:hover .show {
    display: block;
    cursor: pointer;
}

.heading-holder {
    text-align: center;
    font-weight: 400;
    position: relative;
    white-space: nowrap;
    padding: 0;
    margin: auto;
    min-width: 43px;

}


.btn-dark {
    color: #000;
    background-color: #fff;
    border-color: #000;
}


.table-striped tbody tr:nth-of-type(odd) {
    background-color: white;
}

.table tbody tr {
    background-color: #FFFFFF;
}


#data .row {
    margin-right: 0px;
    margin-left: 0px;
}

#data .col-6,
#data .col-12 {
    padding-right: 0px;
    padding-left: 0px;
}

.table tr td.sorting_1 .td-simulate {
    color: #000000;
}

.table tr td.sorting_1 .td-simulate {
    background-color: #fdede7;
    font-weight: 700;
}

table tr td.highlighted .td-simulate {
    background-color: #fdede7;
}

.table td,
.table th {
    padding: 0;
    vertical-align: top;
    border-top: 1px solid #000000;
}

.table tr:last-child td {
    border-bottom: 1px solid #000000;
}

#data .sorting_asc .heading-holder .sorting-icons,
#data .sorting_desc .heading-holder .sorting-icons {
    color: #000000;
}


.table tr th:nth-child(5) .heading-holder {
    min-width: 131px;
}

.heading-holder .sorting-icons i {
    margin-bottom: 0px;
    font-size: 0.8rem;
    color: #ec4d16;
}

.control_lenght, .control_lenght_fixed_button {
    color: #0a0935;
    text-decoration: none;
    margin: auto;
    padding: 0.5rem 2.7rem;
    background-color: #ec4d16;
    border-radius: 0.5rem;
    font-size: 1rem;
    display: inline-block;
}

.control_lenght:hover, .control_lenght_fixed_button:hover {
    background-color: #7e290d;
    color: #ffffff;
    text-decoration: none;
}


.dataTables_paginate {
    display: none;
}


.table th {
    border-bottom: 0rem solid transparent !important;
    border-top: 0px solid transparent;
}


.table .title-th {
    border-width: 2px !important;
    border-color: #c7f0bf !important;
}

.table .title-th p {
    line-height: 1;
    color: #000000;
}

#data .sorting_asc .heading-holder .title-th,
#data .sorting_desc .heading-holder .title-th {
    color: #fff;
}


table.dataTable tbody th,
table.dataTable tbody td {
    padding: 0px;
}


.table .td-simulate {
    display: block;
    color: #000000;
    white-space: nowrap;
    line-height: 34px;
    margin: 0 10px;
    font-weight: 600;

}

.table tr td:first-child .td-simulate {
    margin-left: 0;
}

.table tr td:last-child .td-simulate {
    margin-right: 0;
}

.table .sorting_asc .heading-holder .th-title,
.table .sorting_desc .heading-holder .th-title {
    color: #ffffff !important;
    background-color: #ec4d16 !important;
    border-color: #ec4d16 !important;
}


.table .sorting_asc .heading-holder .th-title i,
.table .sorting_desc .heading-holder .th-title i {
    color: #ffffff !important;

}

.table .sorting_asc .heading-holder .sorting-icons i,
.table .sorting_desc .heading-holder .sorting-icons i {
    color: #0a0935 !important;
}

.table tr th:first-child .sorting-icons {
    right: 0;
    left: 0;
    top: 0;
}

.table tr td:first-child .td-simulate {
    line-height: 25px;
}

.table tr td .rank span {
    line-height: 29px;
    height: 29px;
    width: 29px;
    display: block;
    margin-left: 2px;
    border-radius: 50%;
    vertical-align: middle;
    background-color: #000000;
    color: #ffffff;
}

.sorting-icons {
    position: absolute;
    right: 14px;
    top: 3px;
}

.table td {
    padding: 0;
    text-align: center;
    vertical-align: middle;
}


a {
    color: #0000ee;
    text-decoration: underline;
}


.scroll-overflow {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

div#data_paginate,
div#data2_paginate,
.data_filter,
.dataTables_length,
.dataTables_filter {
    display: none;
}


/* typography */
.display-1 {
    font-size: 3.6rem;
    line-height: 0.8;
}

.display-2 {
    font-size: 2.6rem;
    line-height: 1;
}

.display-3 {
    font-size: 2.3rem;
    font-weight: 300;
    line-height: 1.2;
}

.display-4 {
    font-size: 1.6rem;
    font-weight: 300;
}

.lead {
    font-size: 1rem;
}


.text-gray {
    color: #b7b7b7;
}

#methodology .rounded {
    border-radius: 1.2rem !important;
}

.rounded {
    border-radius: 8px !important;
}

.rounded-xl {
    border-radius: 2.5rem !important;
}


.btn-light {
    text-decoration: none;
}

.font-style-italic {
    font-style: italic;
}

.font-weight-extra-bold {
    font-weight: 900 !important;
}

.font-weight-medium {
    font-weight: 600;
}

.methodology-margin-top {
    margin-top: -46px;
}

#methodology p a {
    color: #0000ee;
    text-decoration: underline;
    word-wrap: break-word;
}


.section-link {
    color: #ffffff;
    text-decoration: none;
}

.section-link:hover {
    text-decoration: none;
}

#methodology a {
    color: #0000ee;
}

.scroll-overflow {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.footer-logo {
    height: 52px;
    width: 103px;

}


.footer a {
    text-decoration: underline;
    color: #ec4d16;
}

.header.h4,
.header h4 {
    font-size: 1rem;
}

.h4,
h4 {
    font-size: 1.4rem;

}

.h1,
h1 {
    font-size: 1.5rem;
}


.h3,
h3 {
    font-size: 1.5rem;
}

.fa-2x {
    font-size: 2.2em;
}

.header.h3,
.header h3 {
    font-size: 1rem;
}

.container-custom,
.container-custom-table,
.container-custom-header {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.bs-popover-auto[x-placement^=right] .arrow::after,
.bs-popover-right .arrow::after {
    left: 1px;
    border-right-color: #000000;
}
@media (min-width: 390px) {
    .header::before {
        width: 360px;
    }
}
@media (min-width: 425px) {
    .header::before {
        width: 370px;
    }
}

@media (min-width: 576px) {
    .display-2 {
        font-size: 2rem;
    }

    .container-custom {
        max-width: 540px;
    }

    .h3,
    h3 {
        font-size: 1.6rem;
    }


    .btn-primary {
        width: 215px;
    }

}

@media (min-width: 768px) {
    .img-square-methodology {
        padding-bottom: 84%;
        background-size: contain;
    }

    .header::before {
        width: 451px;
    }

    .btn-primary {
        width: 240px;
    }

    .display-3 {
        font-size: 3.4rem;

    }

    .display-2 {
        font-size: 3.3rem;

    }

    .header.h3, .header h3 {
        font-size: 1.2rem;
    }

    .h4,
    h4 {
        font-size: 1.65rem;
    }


    .container-custom, .container-fluid {
        max-width: 720px;
    }

    .btn-secondary {
        width: 210px;
    }

    .icon-wrap {
        position: relative;
        top: 55px;
    }

    h2 .fa-2x {
        font-size: 2.2rem;
    }

    .img-square-methodology {
        padding-bottom: 94%;
        background-size: cover;
    }

    .img-square-small {
        margin-bottom: -60px;

    }

    .h3, h3 {
        font-size: 1.8rem;
    }
}

@media (min-width: 900px) {
    .header::before {
        width: 492px;
    }
}

@media (min-width: 992px) {
    .fa-2x {
        font-size: 4em;
    }

    .img-square {
        padding-bottom: 74%;
    }

    .img-square-small {
        padding-bottom: 98%;
        margin-top: -55px;
        margin-bottom: -60px;

    }


    .icon-wrap {
        position: relative;
        top: 66px;
    }

    .number {
        height: 49px;
        width: 53px;
        line-height: 47px;
    }


    .white-space-nowrap {
        white-space: nowrap;
    }

    .buttons-section a.section-link {
        width: 361px;
    }

    .container-custom,
    .container-custom-table,
    .container-fluid {
        max-width: 960px;
    }

    .display-4 {
        font-size: 2.4rem;
    }


    .h4,
    h4 {
        font-size: 1.8rem;
    }

    .h5,
    h5 {
        font-size: 1.20rem;
    }


    .h3,
    h3 {
        font-size: 2.3rem;
    }

    .h1,
    h1 {
        font-size: 2.5rem;
    }

    .h2,
    h2 {
        font-size: 2rem;
    }

    .lead {
        font-size: 1.4rem;
    }

    .display-2 {
        font-size: 4.7rem;
    }

    .display-3 {
        font-size: 3.3rem;
        line-height: 1;
    }

    .display-1 {
        font-size: 7rem;

    }


    .rounded-left {
        border-top-left-radius: 1.25rem !important;
        border-top-right-radius: 0rem !important;
        border-bottom-left-radius: 1.25rem !important;
    }

    .rounded-right {
        border-top-right-radius: 1.25rem !important;
        border-bottom-right-radius: 1.25rem !important;
    }

    .number {
        height: 46px;
        width: 46px;
        line-height: 46px;
    }


    .header.h3,
    .header h3 {
        font-size: 1.4rem;
    }

    .number.h4 {
        font-size: 2rem !important;
    }

    .icon-wrap {
        position: relative;
        top: 87px;
    }

    .header.h4, .header h4 {
        font-size: 1.6rem;
    }

    .header::before {
        width: 551px;
    }
}


@media (min-width: 1200px) {
    .icon-wrap {
        position: relative;
        top: 87px;

    }

    .header::before {
        width: 710px;
    }

    .header.h4, .header h4 {
        font-size: 1.5rem;
    }

    .number.h4 {
        font-size: 2.2rem !important;
    }

    .img-square-methodology {
        padding-bottom: 74%;
        background-size: contain;
    }

    .buttons-section a.section-link {
        width: 300px;
    }

    .DTFC_LeftWrapper {
        display: block;
    }

    .h2, h2 {
        font-size: 3.4rem;
    }

    .h3, h3 {
        font-size: 2.6rem;
    }

    .display-3 {
        font-size: 4.5rem;
    }

    .container-fluid {
        max-width: 1400px;
    }


    .container {
        max-width: 1165px;
    }

    .display-4 {
        font-size: 3.3rem;
    }

    .container-custom-table {
        max-width: 1570px;
    }

    .container-custom {
        max-width: 1140px;
    }

    .container-custom-header {
        max-width: 1470px;
    }

    .display-2 {
        font-size: 6.4rem;
    }


    .display-4 {
        font-size: 2.6rem;
    }

    .number {
        height: 49px;
        width: 53px;
        line-height: 47px;
    }


    .h4, h4 {
        font-size: 1.8rem;
    }

    .fa-2x {
        font-size: 5em;
    }

}

@media (min-width: 1400px) {
    .container-custom {
        max-width: 1258px;
    }

    .header::before {
        width: 853px;
    }

    .number {
        height: 53px;
        width: 53px;
        line-height: 53px;
    }

    .container-custom-header {
        max-width: 1672px;
    }

    .display-4 {
        font-size: 3.1rem;
    }

    .header::after {
        width: 1334px;
        background-size: cover;
    }
}

@media (min-width: 1900px) {
    .header::before {
        width: 907px;
    }

    .header::after {
        background-size: cover;

    }

}

@media (min-width: 2200px) {

    .header::after {
        width: 1294px;
    }

    .header::before {
        width: 1341px;
    }

}