﻿body {
    background-color: #fff;
    font-size: 14px;
}

@media (min-width: 1200px) {
    .container {
        max-width: 1450px;
    }
}

.navbar-toggler {
    background-color: #79bb1b !important;
}

.flot-chart {
    width: auto;
    height: 100px !important;
}

a {
    color: inherit;
}

.link-color a{
    color: #007bff;
} 


/*******************
 * Countdown number
 *******************/

.countdown-box {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding: 1em 2em;
    position: relative;
    font-size: 16px;
    border-radius: 0.5em;
    color: #fff;
    /*    background-color: #e8f6d0;*/
    background-color: #547933;
    border-bottom: 10px solid #79bb1c;
    height: 268px;
    z-index: 1;
    align-items: center;
}

    .countdown-box .nonum {
        /*color: #436c02;*/
        color: #fff;
        text-align: center;
        font-weight: 600;
        font-size: 3em;
    }

    .countdown-box .num {
        /*color: #436c02;*/
        color: #fff;
        text-align: center;
        font-weight: 600;
        font-size: 3em;
    }

    .countdown-box svg, .countdown-box i {
        /*color: #676a6c !important;*/
        color: #fff !important;
    }

    .countdown-box h2 {
        margin-top: 10px;
        /*color: #676a6c !important;*/
        text-align: center;
        font-weight: 400;
        font-family: 'Poppins', sans-serif;
    }

    .countdown-box.inverted {
        background-color: #436c02;
    }

        .countdown-box.inverted svg, .countdown-box.inverted i {
            color: #f2f3f4 !important;
        }

        .countdown-box.inverted h2 {
            color: #f2f3f4 !important;
        }

        .countdown-box.inverted .num {
            color: #79bb1c;
        }

        .countdown-box.inverted .nonum {
            color: #79bb1c;
        }

    .countdown-box h2 {
        font-size: 24px;
    }

    .countdown-box small {
        font-size: 80%;
    }

@media (max-width: 768px) {
    .countdown-box h2 {
        font-size: 85%;
        font-weight: 600;
    }

    .countdown-box small {
        font-size: 70%;
    }
}

@media (max-width: 1200px) {
    .countdown-box {
        padding: 1em 0.5em;
    }
}

@media (max-width: 992px) {
    .countdown-box {
        padding: 1em 1em;
    }
}
/*******************
 * FIM Countdown number
 *******************/

/*******************
 * Backgrounds a usar
 *******************/
.bg-dys-greendisable {
    background-color: #e8f6d0;
}

.bg-dys-green {
    background-color: #79bb1c;
}

.bg-dys-greendark {
    background-color: #436c02;
}

.bg-dys-greendarkdark {
    background-color: #3b4633;
}

.bg-dys-mediumdark {
    background-color: #547933;
}

.bg-dys-dark {
    background-color: #676a6c;
}

.bg-dys-light {
    background-color: #f2f3f4;
}

.bg-dys-sportsevents {
    background-color: #f1f18c36;
}

.bg-dys-culturalevents {
    background-color: #2958002e;
}

.dys-sportevents-color {
    color: #aaaa32 !important;
}

.text-dys-green {
    color: #79bb1c !important;
}

.bg-dys-golden {
    background-color: #aaaa32 !important;
}

.text-dys-greendark {
    color: #436c02 !important;
}

.text-dys-greeddarkdark {
    /*color: #3b4633;*/
    color: #295800;
}

.text-dys-dark {
    color: #676a6c !important;
}

.text-dys-gray {
    color: #afb0b4 !important;
}

.border-dys-golden {
    border: 3px solid #aaaa32;
    color: #aaaa32;
}

/* PARA REMOVER
    Alteração dos breadCrumbs para ficar transparente e com fonte branca, 
  utilizada em nas paginas de pesquisa e detalhes dos pois,eventos,rotas e desafios*/
.text-green {
    color: #295800 !important;
}
/*******************
 * FIM Backgrounds a usar
 *******************/

/*******************
 * Typography   
 *******************/
.section-title {
    /*color: #3b4633;*/
    color: #000;
    margin-top: 10px;
    /*font-size: 34px !important;*/
    font-size: 46px !important;
    /*font-weight: 600 !important;*/
    text-transform: none;
    /*text-decoration-line: underline;*/
    text-decoration-style: solid;
    text-decoration-thickness: 2px;
    /*text-underline-offset: 7px;*/
    display: block ;
    font-weight: 500;
    line-height: 1.2;
}

    .section-title small {
        /*color: #3b4633;*/
        /*color: #295800;*/
        color: #2e2e2e;
        margin-top: 10px;
        font-size: 24px !important;
        text-transform: none;
       /* text-decoration-line: underline;*/
        text-decoration-style: solid;
        text-decoration-thickness: 2px;
        text-underline-offset: 7px;
    }

section p {
    /*color: #676a6c !important;*/
    color: #2e2e2e !important;
    font-size: 18px !important;
    margin-top: 10px;
}

@font-face {
    font-family: 'Carattere';
    font-style: normal;
    font-weight: 400;
    src: local('Carattere'), url(../fonts/Carattere/Carattere-Regular.ttf) format('TrueType');
    font-display: swap;
}

.font-carattere {
    font-family: "Carattere";
}
/*******************
 * FIM Typography
 *******************/


/*******************
 * Paginas geral
 *******************/
/* Redefinição de propriedades de classes para paginas do layout */
/* diminuir padding quando for tela pequena*/
.body-small > .wrapper {
    padding: 20px 0px 40px;
}

/*******************
 * Landing Page   
 *******************/
/* Redefinição de propriedades de classes so para a Landing Page */
.landing-page .carousel-caption .h1 {
    font-weight: 700;
    font-size: 38px;
    text-transform: uppercase;
    text-shadow: none;
    letter-spacing: -1.5px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.landing-page .navbar-default .navbar-nav > li .nav-link.active,
.landing-page .navbar-default .navbar-nav > li .nav-link.active:hover {
    /*border-bottom: 6px solid #fff;*/
    border-bottom: 6px solid #1ab394;
    border-top: 6px solid #fff;
}

.landing-page .navbar-default .navbar-nav > li .nav-link:hover {
    border-bottom: 6px solid #fff;
    padding-bottom: 6px;
}

.landing-page .navbar-default .navbar-nav > li > a:hover,
.landing-page .navbar-default .navbar-nav > li > a:focus {
    color: #fff;
    background: inherit;
}

.landing-page .navbar-default .navbar-nav > li .nav-link.page-scroll.active,
.landing-page .navbar-scroll.navbar-default .nav li a:hover:not(.flag) {
    border-bottom: 6px solid #676a6c;
    color: #676a6c;
    padding-bottom: 6px;
}

.landing-page .navbar-scroll.navbar-default .navbar-nav > li > a:focus {
    color: #676a6c;
}

.landing-page .navbar-brand {
    background: #79bb1b !important;
    padding: 0px !important;
}

.landing-page .nav > li > a {
    padding: 20px 10px 15px 10px !important;
}

.landing-page .container {
    overflow: visible !important;
}

.landing-page .contact {
    margin-top: unset;
}

.landing-page.landing-page-font-color {
    color: #2e2e2e !important;
}

.landing-page .carousel {
    height: auto !important;
    overflow-x: clip;
}
    .landing-page .carousel .container {
        width: 70%;
    }

.landing-page .carousel-indicators {
    bottom: 80px;
    margin-left: 8% !important;
    justify-content: left !important;
}

@media (max-width: 768px) {
    .landing-page .carousel-indicators {
        bottom: 100px;
        margin-left: 6% !important;
    }

    .landing-page .container {
        overflow-x: clip !important;
    }
}

.landing-page .search-box {
    margin: auto;
    border: 3px solid #676a6c;
    border-radius: 50px;
    width: 50%;
    padding: 3px 10px 3px 20px;
    background-color: #fff;
    position: absolute;
    z-index: 3;
    left: 50%;
    transform: translate(-50%, 0);
    position: absolute !important;
    margin-bottom: 40px;
    overflow: hidden;
}

    .landing-page .search-box .form-control {
        font-size: 26px;
        border: none;
        color: black;
    }

        .landing-page .search-box .form-control::placeholder {
            color: #afb0b4;
        }

    .landing-page .search-box:focus-within {
        border-color: #79BB1C !important;
    }

@media (max-width: 1618px) {
    .landing-page .search-box {
        width: 65%;
        padding: 3px 10px 3px 10px;
    }
}

@media (max-width: 1200px) {
    .landing-page .search-box {
        width: 62%;
        padding: 3px 10px 3px 4px;
    }
}

@media (max-width: 992px) {
    .landing-page .search-box {
        width: 62%;
    }
}

@media (max-width: 768px) {
    .landing-page .search-box {
        width: 81%;
        padding: 3px 10px 3px 10px;
    }
}


@media (max-width: 576px) {
    .landing-page .search-box {
        margin: auto;
        border: 3px solid #676a6c;
        border-radius: 50px;
        width: 75%;
        padding: 3px 10px 3px 20px;
        background-color: #fff;
    }

        .landing-page .search-box .form-control {
            font-size: 18px;
            border: none;
            color: black;
        }

        .landing-page .search-box li svg, .landing-page .search-box li i {
            font-size: 17px;
        }

        .landing-page .search-box li a {
            font-size: 15px;
            padding: 12px 8px 12px 8px !important
        }

        .landing-page .search-box .card-item {
            font-size: 0.8rem;
        }

    .custom-card .card-item .title {
        font-size: 15px !important;
    }

    .custom-card .card-item h4 {
        font-size: 15px !important;
    }
}


/* Cartões de Desafios */
.challenge-base-overlay {
    position: relative;
}

.challenge-img-overlay {
    display: block;
    width: 100%;
    height: auto;
}

.challenge-activities {
    position: absolute;
    bottom: 10px;
}

.challenge-overlay {
    position: absolute;
    bottom: 0;
    background: rgb(41, 88, 0,0.7);
    /*background: rgba(28, 25, 25, 0.8);*/ /* Black see-through */
    color: #fff;
    width: 100%;
    height: 100%;
    transition: .5s ease;
    /*    opacity: 0.7;
*/ /*color: white;*/
    font-size: 20px;
    padding: 5px 10px;
    /*text-align: center;*/
    /*    position: relative;
    background: #1c191985;
    margin-top: -30px;
    color: #fff;
    vertical-align: middle;
    font-size: 16px;
    min-height: 30px;
    padding-top: 3px;*/
}
/* Cartões de Desafios */


/*Tamanho do dataMaps na home page*/
.datamap {
    height: 450px;
}
.datamaps-subunit{
    cursor: pointer;
}
/*svg.datamap {
    width: 400px !important;
}*/
/*Fim tamanho do dataMaps*/
.landing-page .search-box .nav-tabs .nav-link.active {
    border-bottom: 3px solid #79bb1b !important;
}

.landing-page .search-box .nav-tabs .nav-link {
    border: none;
    border-bottom: 1px solid transparent;
    padding: 25px 25px 15px 25px;
}

.landing-page .search-box .nav-tabs {
    border-bottom: none;
}

.centerInside {
    left: 50%;
    top: 50%;
}
/*******************
 * FIM Landing Page   
 *******************/

/*******************
 * Classes de paginas que usam o _LayoutV2   
 *******************/
.layoutV2 .navbar-default .navbar-nav > li .nav-link.active,
.layoutV2 .navbar-default .navbar-nav > li .nav-link.active:hover {
    border-bottom: 6px solid #79BB1C;
}

.layoutV2 .navbar-default .navbar-nav > li .nav-link:hover, .layoutV2 .navbar-default .navbar-nav > li .nav-link:active {
    border-bottom: 6px solid #676a6c;
    /*    border-bottom: 6px solid #79BB1C;
    color: #79BB1C;*/
    background: inherit;
    color: #676a6c;
    padding-bottom: 6px;
}

.layoutV2 .navbar-brand {
    margin-left: 20px !important;
}

.layoutV2 .navbar-default .nav li a {
    /*    color: #676a6c;
*/ color: #676a6c;
    font-family: 'Open Sans', helvetica, arial, sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 14px;
}

    .layoutV2 .navbar-default .nav li a:hover {
        background-color: transparent !important;
    }

@media (max-width: 768px) {
    .layoutV2 .navbar-nav > li > a {
        padding: 10px 20px;
    }
}

.layoutV2 .breadcrumb {
    color: #676a6c !important;
    margin-top: 15px;
    margin-bottom: 15px;
}

.layoutV2 .breadcrumb-item + .breadcrumb-item::before {
    color: #676a6c !important;
}

.layoutV2 .navbar-fixed-top {
    background: #fff;
}

/* Alteração dos breadCrumbs para ficar transparente e com fonte branca, 
  utilizada em nas paginas de pesquisa e detalhes dos pois,eventos,rotas e desafios*/
.breadcrumb {
    background-color: transparent;
    padding: 0;
    margin-bottom: 0;
    margin-top: 9px;
    color: #ffffff;
}

.breadcrumb-item + .breadcrumb-item::before {
    color: #FFFFFF;
}
/*FIM da alteração dos breadCrumbs


/*******************
 * Classes para o input group de pesquisa / search e filtro
 *******************/

.input-group .form-control {
    border-right: none;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
}

    .input-group .form-control:hover {
        border-color: #79BB1C !important;
    }

    .input-group .form-control:focus {
        border-color: #79BB1C !important;
    }

.input-group .input-group-append button {
    background-color: #fff;
    border: 1px solid #e5e6e7;
    border-left: none;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    font-size: 0.9rem;
    color: rgb(103, 106, 108);
}


.form-control:focus + .input-group-append button, .form-control:hover + .input-group-append button {
    border-color: #79BB1C !important;
}

.input-field {
    /*    border-right: none;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;*/
    border-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    text-align: center;
}

    .input-field:hover {
        border-color: #79BB1C !important;
    }

    .input-field:focus {
        border-color: #79BB1C !important;
    }


.search-fields {
    width: 600px;
}

@media (max-width: 500px) {
    .search-fields {
        width: 300px;
    }
}

/*******************
 * FIM Input group de pesquisa / search 
 *******************/

/*******************
 * Botões DYS
 *******************/
.btn-dys-outline-greendark {
    background-color: #fff;
    border: 1px solid #436c02;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 15px;
    color: #436c02 !important;
}

    .btn-dys-outline-greendark:hover {
        border: 1px solid #436c02;
        color: #fff !important;
        background-color: #436c02;
    }

.btn-dys-outline-green {
    background-color: #fff;
    border: 1px solid #79BB1C;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 15px;
    color: #79BB1C !important;
}

    .btn-dys-outline-green:hover {
        border: 1px solid #79BB1C;
        color: #fff !important;
        background-color: #79BB1C;
    }

.btn-dys-green {
    background-color: #79BB1C;
    border: 1px solid #79BB1C !important;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    color: #fff !important;
}

    .btn-dys-green:hover {
        border: 1px solid #79BB1C;
        color: #79BB1C !important;
        background-color: #fff;
    }

    .btn-dys-green.selected {
        border: 1px solid #79BB1C;
        color: #79BB1C !important;
        background-color: #e8f6d0;
    }

.btn-dys-greendark {
    background-color: #436c02;
    border: 1px solid #436c02;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
    margin-top: 5px;
    margin-bottom: 5px;
    /*padding: 15px;*/
    color: #fff !important;
}

    .btn-dys-greendark:hover {
        border: 1px solid #436c02;
        color: #436c02 !important;
        background-color: #fff;
    }

.btn-dys-white {
    border: 1px solid #79BB1C;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    color: #79BB1C !important;
}

    .btn-dys-white.btn-dys-landingpage {
        color: #295800 !important
    }

    .btn-dys-white:hover {
        color: #fff !important;
        background-color: #79BB1C;
        border: 1px solid #79BB1C;
    }

    .btn-dys-white.selected {
        border: 1px solid #79BB1C;
        color: #79BB1C !important;
        background-color: #e8f6d0;
    }


.btn-dys-gray {
    border: 1px solid #676a6c;
    background-color: #676a6c;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    color: #fff !important;
}

    .btn-dys-gray:hover {
        color: #868686 !important;
        background-color: #fff;
        border: 1px solid #676a6c;
    }


.btn-dys-red {
    border: 1px solid #eb1717;
    background-color: #eb1717;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    color: #fff !important;
}

    .btn-dys-red:hover {
        color: #eb1717 !important;
        background-color: #fff;
        border: 1px solid #eb1717;
    }

.btn-dys-gray-white {
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    color: #868686 !important;
    background-color: #fff;
    border: 1px solid #676a6c;
}

    .btn-dys-gray-white:hover {
        color: #fff !important;
        border: 1px solid #676a6c;
        background-color: #676a6c;
    }

/*******************
 * FIM Botões DYS
 *******************/

/*******************
 * Classes Weather ForeCast
 *******************/
/*Weather Forecast*/
.weather-ul {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    /*min-height: 90px;*/
    list-style-type: none;
    /*    padding-right: 50px;
    padding-left: 50px;*/
    padding-inline-start: unset;
    margin-right: 5px;
}

.weather-li {
    text-align: center;
    font-size: 12px;
    width: 55px;
}

#weatherTempId {
    font-size: 60px;
}

.weatherForecast .nav-tabs .nav-link.active {
    border-bottom: 3px solid #dd6d1a !important;
}

.weatherForecast .nav-tabs .nav-link {
    border: none;
    border-bottom: 1px solid transparent;
    padding: 25px 25px 15px 25px;
}

.weatherForecast .nav-tabs {
    border-bottom: none;
}

.weather-tab {
    height: 120px;
}

@media (max-width: 576px) {
    .weather-tab, .weather-tab .weather-li {
        font-size: 10px;
    }
}

@media (max-width: 768px) {
    /*    .weather-ul {
        padding-right: 0px;
        padding-left: 0px;
    }*/

    #weatherIconId {
        font-size: 23px !important;
    }

    #weatherTempId {
        font-size: 50px;
    }
}

/*******************
 * FIM Classes Weather ForeCast
 *******************/

/*******************
 * Classes de paginas que usam o _LayoutV2   
 *******************/

.loginscreen.middle-box {
    width: 500px;
}

/* botões da breadcrumb bar */
.btn-large-dim {
    width: 70px;
    height: 70px;
    font-size: 34px;
}

.btn-primary {
    background-color: #78BB1B;
    border-color: #78BB1B;
}

.btn-warning:hover {
    background-color: #CE7109;
    border-color: #CE7109;
}
/* FIM botões da breadcrumb bar */

/* alterações de cor */
/* verde do logotipo: #78BB1B / rgb(120, 187, 27 */
/* verde de fundo: rgb(243,252,233) */
.gray-bg {
    /*background-color: #fff8d0;*/ /* light yellow */
    background-color: rgb(243,252,233); /* light green */
}

.bg-primary {
    background-color: #78BB1B !important;
}


.abc-radio-primary input[type="radio"] + label::after {
    background-color: #78BB1B;
    border-color: #78BB1B;
}

.abc-radio-primary input[type="radio"]:checked + label::before {
    border-color: #78BB1B;
}

.abc-radio-primary input[type="radio"]:checked + label::after {
    border-color: #78BB1B;
    background-color: #78BB1B;
}

.abc-checkbox-primary input[type="checkbox"] + label::after {
    background-color: #78BB1B;
    border-color: #78BB1B;
}

.abc-checkbox-primary input[type="checkbox"]:checked + label::before {
    border-color: #78BB1B;
}

.abc-checkbox-primary input[type="checkbox"]:checked + label::after {
    border-color: #78BB1B;
    background-color: #78BB1B;
}

/* FIM alterações de cor */

/* classes IBOX */
.ibox-tools {
    top: 8px;
}
/* FIM classes IBOX */

/* classes TODO list */
.todo-list > li {
    padding: 5px 10px 5px 10px;
}
/* FIM classes TODO list */

/* classes FORUM */
.forum-icon {
    width: 40px;
}

.forum-item {
    margin-top: 0px;
    padding-top: 5px;
    padding-bottom: 10px;
}
/* FIM classes FORUM */

/* classes relacionadaa com DATATABLE */
table.dataTable > thead .sorting:before, table.dataTable > thead .sorting:after, table.dataTable > thead .sorting_asc:before, table.dataTable > thead .sorting_asc:after, table.dataTable > thead .sorting_desc:before, table.dataTable > thead .sorting_desc:after, table.dataTable > thead .sorting_asc_disabled:before, table.dataTable > thead .sorting_asc_disabled:after, table.dataTable > thead .sorting_desc_disabled:before, table.dataTable > thead .sorting_desc_disabled:after {
    bottom: 0.3em;
}

.dataTables_paginate.paging_simple_numbers .page-item.active .page-link {
    background-color: #78BB1B;
    border-color: #78BB1B;
}

div.dataTables_wrapper div.dataTables_paginate {
    margin: 7px;
    white-space: nowrap;
    text-align: right;
}

table thead tr th {
    /*background-color: #1ab394 !important;*/
    /*background-color: #666666 !important;*/
    background-color: #78BB1B !important;
    color: #fff !important;
    border-radius: 5px;
    border-right: 1px solid #fff;
}
    table thead tr th.control {
        /*background-color: #1ab394 !important;*/
        /*background-color: #666666 !important;*/
        background-color: transparent !important;
        color: #fff !important;
        border-radius: 5px;
        border-right: 1px solid #fff;
    }

.sportevents-table thead tr th {
    background-color: #aaaa32 !important;
}

.sportevents-table tr.border-bottom td {
    border-bottom: 1pt solid #aaaa32;
}


.table > thead > tr > td {
    line-height: 10px !important;
}

.datatable-image-xs, .datatable-image-sm, .datatable-image-md, .datatable-image-lg, .datatable-image-xl {
    text-align: center;
}

    .datatable-image-xs img, .datatable-image-sm img {
        height: 45px;
    }

    .datatable-image-md img, .datatable-image-lg img, .datatable-image-xl img {
        height: 90px;
    }

.datatable-filter {
    float: left;
    min-width: 300px;
    width: 300px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.list-table .child td {
    border-bottom: 2pt solid #79bb1b;
}
.inscription-list-table thead tr th {
    background-color: transparent !important;
    color: #676a6c !important;
}

.custom-datatable .datatable-filter {
    position: absolute;
    bottom: 0px;
}

.custom-datatable .dtrg-group > td {
    background-color: white !important;
}

.custom-datatable thead tr th {
    border-radius: 0px;
    border-right: 0px solid #fff;
    padding-left: 5px;
}

.custom-datatable td, table.dataTable th {
    padding-left: 5px;
}

div.dataTables_wrapper div.dataTables_filter {
    text-align: left;
}

    div.dataTables_wrapper div.dataTables_filter label {
        width: 100%;
    }

        div.dataTables_wrapper div.dataTables_filter label input {
            width: 100%;
        }

.datatable-export-buttons {
    float: right;
    margin-top: 5px;
    margin-bottom: 5px;
}

@media (max-width: 1102px) {
    .datatable-export-buttons {
        float: left;
    }
}


@media (max-width: 576px) {
    .custom-datatable .control {
        font-size: 20px;
        padding-right: 15px;
    }
}

.datatable-export-buttons .btn-group > .btn-group:first-child > .btn, .datatable-export-buttons .btn-group > .btn:first-child:not(.dropdown-toggle) {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.datatable-export-buttons .btn-group > .btn-group:last-child > .btn, .datatable-export-buttons .btn-group > .btn:last-child:not(.dropdown-toggle) {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

.datatable-export-buttons .buttons-copy, .datatable-export-buttons .buttons-csv, .datatable-export-buttons .buttons-excel, .datatable-export-buttons .buttons-pdf, .datatable-export-buttons .buttons-print {
    color: #fff;
    /*    background-color: #f8ac59;
    border-color: #f8ac59; */

    background-color: #F8AC59;
    border-color: #F8AC59;
}

    .datatable-export-buttons .buttons-copy:hover, .datatable-export-buttons .buttons-csv:hover, .datatable-export-buttons .buttons-excel:hover, .datatable-export-buttons .buttons-pdf:hover,
    .datatable-export-buttons .buttons-print:hover {
        /*        background-color: #55513b;
        border-color: #55513b;*/
        background-color: #CE7109;
        border-color: #CE7109;
    }

/* layout dos links em linhas de dataTables */
tr a {
    font-family: "open sans", "Helvetica neue", Helvetica, Arial, sans-serif;
    color: unset;
    font-size: inherit;
}

    tr a:hover {
        font-style: italic;
        cursor: pointer;
        text-decoration: underline;
    }

tr.border-bottom td {
    border-bottom: 1pt solid #79bb1b;
}
/* FIM layout dos links em linhas de dataTables */

/* usar esta classe para uma célula de uma tabela 
    onde é apresentado uma imagem ou um logotipo */
.no-td-image {
    background-color: #ddd;
    color: #fff;
    vertical-align: middle !important;
    text-align: center;
}

/*para remover o icone colocado com o FA que é apresentado em lugar da imagem (logo ou fotografia) 
  quando a datatable é reduzida na horizontal e ao desdobrar  o grupo */
.dtr-details .min-xxl .dtr-data i:first-child {
    display: none;
}

.dtr-details .min-xxl:first-child .dtr-title {
    /*    display: none;
*/
}

tr .child {
    padding-left: 30px !important;
    border-bottom: 2px solid #1ab394 !important;
}

/* FIM classes relacionadaa com DATATABLE */

/*Icones de Sem imagem no recommendations index*/
.img-holder {
    width: 100px;
    height: 100px;
    border-radius: 0.25rem;
    display: flex;
    margin: 10px;
    background-color: #ddd;
    display: grid;
    justify-content: center !important;
    align-content: center !important;
    color: #fff;
}

    .img-holder i {
        margin: auto;
        font-size: 30px;
    }

/*Classe utilizada quando utilizador não tem imagem*/
.user-noimage {
    width: 75%;
    height: 75%;
    border-radius: 50%;
    display: flex;
    margin: 10px;
    background-color: #ddd;
    display: grid;
    justify-content: center !important;
    align-content: center !important;
    color: #fff;
    font-size: 50px !important;
    aspect-ratio: 1;
}
/*fim da Classe utilizada quando utilizador não tem imagem*/



/*image-crop dos utilizadores, no perfil do utilizador*/
.image-crop-entities {
    /*    max-height: 300px;
*/ width: 100%;
    min-height: 200px;
    position: relative;
    background-color: lightgrey;
    text-align: center;
    aspect-ratio: 1;
    display: grid;
    justify-content: center;
    align-content: center;
    /*    float: right;*/
}

    .image-crop-entities i {
        margin: auto;
        font-size: 30px;
    }
/*fim image-crop utilizadores*/

.image-class {
    text-align: center;
    display: grid;
    justify-content: center;
    align-content: center;
}



.left {
    float: left;
}



@media only screen and (max-width: 500px) {
    .responsiveGallery {
        width: 100%;
    }
}

.clearfixGalllery:after {
    content: "";
    display: table;
    clear: both;
}

/*classes auxiliares, classes que imitam as nativas do bootstrap, servem para tamanhho maximo, utilizadas com o truncate e o slim scroll, utilizadas em todo o projeto ADMIN*/
.fh-100 {
    max-height: 100px;
}

.fh-40 {
    max-height: 40px;
}

.fh-60 {
    max-height: 60px;
}

.fh-80 {
    max-height: 80px;
}
/*fim das classes de altura*/

/*classes auxiliares, classes que imitam as nativas do bootstrap*/
.padding-t-b-10 {
    padding-bottom: 10px;
    padding-top: 10px
}

.padditng-b-10 {
    padding-bottom: 10px
}

.margin-r-15 {
    margin-right: 10px
}

.green {
    color: forestgreen;
}

.white {
    color: white
}

.red {
    color: red;
}

.w-100 {
    width: 100%;
}

.h-100 {
    height: 100%;
}

.w-30 {
    width: 30%;
}
.mw-330 {
    max-width: 330px;
}
/*fim da classes auxiliares de cor*/

/*Cartões*/
.card-header-infos {
    position: relative;
    /*background: #1c191985;*/
    background: rgba(41, 88, 0, 0.8);
    margin-top: -30px;
    color: #fff;
    vertical-align: middle;
    font-size: 16px;
    min-height: 30px;
    padding-top: 3px;
}

    .card-header-infos.sport-event-header {
        background: rgba(170, 170, 50, 0.8);
    }

.card-route-desc, .card-challenge-desc, .card-pois-desc, .card-agendas-desc, .card-sportevents-desc {
    padding: 10px;
}

.card-route-title, .card-challenge-title {
    /*color: #295800 !important;*/
    color: #2e2e2e !important;
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin: 2px 0 5px 0;
    border-bottom: 1px solid #ececed;
}

.route-title, .challenge-title {
    color: #295800;
    margin-top: 10px;
    font-size: 30px;
    font-weight: 200;
    border-bottom: 2px solid;
    text-transform: capitalize;
}

.card-route-trophy {
    position: absolute;
    top: 45px;
    right: 30px;
    color: #fff;
}

.card-donelist-trophy {
    position: absolute;
    top: 0;
    right: 20px;
    color: #fff;
}

.card-heart {
    position: absolute;
    /*z-index: 1000;*/
    top: 8px;
    right: 30px;
    color: #fff;
}

/*Componente que mostra avaliação defs utilizadores*/

.rateit-font {
    font-size: 18px;
    line-height: 13px !important;
}

.rateit .rateit-preset {
    color: rgb(255 222 22);
}

.rateit-range {
    margin-top: 5px;
}
/*Desafios*/
.challenge-row, .poi-row {
    padding: 26px;
}

/*Reescrita desse classe*/


.challenge-carousel {
    overflow: hidden !important;
}

.ch-30 {
    max-height: 40px;
}

.green-light {
    color: #79bb1b;
}



.gray-section {
    background: #79bb1b !important;
}

.contact-title {
    color: #fff;
    font-size: 20px;
    display: block;
    margin: 2px 0 5px 0;
    border-bottom: 2px solid #fff;
}

.card-houver:hover {
    cursor: pointer;
}

.card-userevoloution-desc {
    margin-top: -25px;
}


.not-cookie {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 55;
    width: 100%;
    padding: 15px;
    margin: 0;
    border-width: 1px;
    border-style: solid;
    background-color: rgb(0, 65, 58);
    opacity: 0.9;
}

.dropdown > .dropdown-menu > a {
    color: #676a6c !important;
}

.policy-menus {
    color: #676a6c !important;
}

    .policy-menus:hover {
        color: #20c997 !important;
    }

/*tamanho do mapa nos pois,eventos e rotas nos Detalhes*/
.map-height {
    width: 100%;
    aspect-ratio: 1.2014;
}
/**/

/*sort list com drag e drop utilizada nas galerias dos pois,eventos e rotas ADMIN*/
.slist {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .slist li {
    }

        /* (B) DRAG-AND-DROP HINT */
        .slist li.hint {
            border: 1px solid #ffc49a;
            background: #feffb4;
        }

        .slist li.active {
            border: 1px solid #ffa5a5;
            background: #ffe7e7;
        }

.gallery img {
    width: 100%;
    height: auto;
}


.responsiveGallery {
    padding: 0 6px;
    float: left;
    width: 33%;
}

@media only screen and (max-width: 700px) {
    .responsiveGallery {
        width: 49.99999%;
        margin: 6px 0;
    }
}
/*fim de sortlist*/

/*tamanho das imagens de recomendação ADMIN*/
.rec-icon img {
    max-height: 20px;
    max-width: 100%;
}

.rec-img {
    max-height: 50px;
    max-width: 100%;
}
/*fim*/

/*tamanho maximo,*/
.mh-200 {
    max-height: 200px;
}
/**/

/* classe para mostrar icons fontawesome em uma select list, utilizado nos poiTypes,eventTypes,routeTypes, ChallengeTypes, atividade, e acessibilidade ADMIN*/
.select-class {
    font-family: 'FontAwesome';
    font-size: 12px;
}
/**/

/*classe do painel de montanha que fica atras dos breadCrumbs*/
.image-panel {
    position: relative; /* Declared position allows for location changes */
    top: -150px; /* Moves the image 2px closer to the top of the page */
    margin-bottom: -240px;
    padding-bottom: -240px;
    height: 250px;
    width: 100%;
    background: 50% 0 no-repeat !important;
    object-fit: cover;
}
/*fim*/


/*cor das estrelas dos comentarios, utilizado nos detalhes dos pois,eventos e rotas*/
.yellow {
    background-color: #fffa01;
}
/*fim*/

.gray {
    color: gray;
}

.font-18 {
    font-size: 18px;
}

.details-tab {
    min-height: 450px;
}

/*classe do botão canto inferior direito para abrir galeria, utilizado nos detalhes dos pois,eventos e rotas*/
.right-botton {
    position: absolute;
    bottom: 20px;
    right: 20px;
}
/*fim*/

/*classe do botão canto inferior direito para enviar comentario, utilizado nos detalhes dos pois,eventos e rotas*/
.right-botton-comment {
    position: absolute;
    bottom: 0px;
    right: 20px;
}
/**/

.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 300px;
    max-width: 400px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

    .dropdown-content a {
        color: black;
        padding: 8px 12px;
        text-decoration: none;
        display: block;
    }


.dropdown:hover .dropdown-content {
    display: block;
}

/*classe de publicar comentarios utilizada nos detalhes dos pois, eventos, rotas e desafios*/
.comment-panel {
    min-height: 200px;
    width: 100%;
    border: 1px solid;
    border-color: #e7eaec;
    border-radius: 5px;
    margin-top: 40px;
    padding-bottom: 20px;
}

.comments-center {
    display: grid;
    justify-content: center;
    align-content: center;
}

    .comments-center div, .comments-center h1 {
        margin: auto;
    }

div.bigstars div.rateit-selected {
    color: rgb(239, 197, 41);
    padding-top: 10px;
    height: 50px;
}

div.bigstars div.rateit-empty {
    padding-top: 10px;
    height: 50px;
}

div.bigstars div.rateit-hover {
    padding-top: 10px;
    height: 50px;
}

div.bigstars div.rateit-reset {
    width: 100px;
    height: 100px;
}
/*fim da classe de publicação de comentarios*/

/*classe dos comentarios utilizada nos detalhes dos pois, eventos, rotas e desafios*/
.user-image {
    max-height: 50px;
    max-width: 50px;
    min-width: 50px;
    min-height: 50px;
}

.forum-avatar {
    display: grid;
    justify-content: center;
    align-content: center;
    min-width: 200px;
}

    .forum-avatar div, img {
        margin: auto;
    }
/*fim da classe dos comentarios*/

/* barras de classificação utilizada nos detalhes dos pois, eventos, rotas e desafios*/
.rating-bars {
    min-width: 100px;
    max-width: 100px;
    padding-right: 20px;
    float: left;
}
/* fim das barras de classificação*/

.recommendations {
    display: grid;
    justify-content: center;
    align-content: center;
    width: 150px;
}

    .recommendations > div > span {
        margin: auto;
    }

.mt-137 {
    padding-top: 137px;
}


.dinamic-min-height {
    min-height: calc(100vh - 190px);
}


.header-nav-btn {
    font-weight: 700;
    font-size: 14px;
    font-family: 'Open Sans', helvetica, arial, sans-serif;
    padding-top: 17px;
}

.google-custom-btn {
    background-color: #EA4335;
    border-color: #EA4335;
}

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    border: 1px solid #e7eaec;
    line-height: 1.42857;
    padding: 8px;
    vertical-align: top;
}

#table-wishlist, #table-circuit-donelist,
#table-agendas-pois-donelist,
#table-suggestions {
    border-collapse: separate;
    border-spacing: 0 15px;
}

.text-green-ligth {
    color: #79bb1b;
}

.card-houver:hover {
    cursor: pointer;
}

.sidbar-border {
    border: solid 1px #e7eaec;
}

.heart-color-red {
    color: #FF0000 !important;
}

.user-circle {
    height: 70px !important;
    width: 70px !important;
}

.partners-image {
    float: left;
    min-width: 100px;
    max-width: 150px;
}

/*classe das dropdown dos filtros, utilizado nos pois, eventos, rotas e desafios*/
.dropdown-filters {
    position: relative;
    display: inline-block;
}

.dropdown-content-filters {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    background-color: #1ab394;
    border-radius: 10px;
    min-width: 200px;
}

    .dropdown-content-filters div input {
        color: black;
        margin-left: 10px !important;
        text-decoration: none;
        display: block;
    }

    .dropdown-content-filters div label {
        color: black;
        padding: 4px 4px 4px 4px;
        text-decoration: none;
        display: block;
        color: white;
        font-weight: bold;
    }
/*fim classe das dropdown*/


/*.dropdown-filters:hover .dropdown-content-filters {
    display: block;
}*/

.text-black {
    color: black !important;
}
/*Tamanho dos mapas quando carregado e quando diminuido, utilizado nas paginas de pesquisa de mapa dos pois, eventos e rotas*/
.map-index {
    min-height: 555px;
    max-height: 900px;
    transition: min-height 0.5s ease-in;
}

@media (max-width: 576px) {
    .map-index {
        height: 350px !important;
        min-height: 200px;
    }
}

.map_resize {
    min-height: 400px;
    transition: min-height 0.5s ease-in;
}
/*fim Tamanho dos mapas*/

.icons {
    font-family: 'FontAwesome';
    font-size: 20px;
}

/*Classe dos icones das recomendações, utilizadas nos detalhes de rotas*/
.recommendations-icons {
    width: 100px;
    height: 100px;
    border-radius: 0.25rem;
    display: flex;
    background-color: #fff;
    display: grid;
    justify-content: center !important;
    align-content: center !important;
    color: #fff;
    margin: auto;
}

    .recommendations-icons span {
        margin: auto;
        font-size: 20px;
        color: red;
    }

/*fim Classe dos icones das recomendações*/



/*nav bar de filtros, utilizado nas pesquisas de mapa e lista nos pois, eventos, rotas e desafios*/
.colum-reverse {
    flex-direction: column-reverse;
    border-radius: 0;
}

    .colum-reverse .slick-slider {
        margin-bottom: 0px;
    }

    .colum-reverse .collapsing {
        transition: height 0.500s;
    }

.custom-nav {
    position: absolute;
    z-index: 1;
    width: 100%;
    flex-shrink: 0 !important;
}

    .custom-nav .nav-tabs {
        border-bottom: none;
    }

.nav-flex {
    flex: 0 0 100%;
}

.collapsing {
    transition: height 0.500s;
}

/**/

/*cartoes na datatable
  utilizados nas listas de eventos, pois, rotas e desafios
*/
.CardRow {
    float: left;
    width: 33.33%;
    padding-bottom: 10px;
}

@media (max-width: 992px) {
    .CardRow {
        float: left;
        width: 50%;
        padding-bottom: 10px;
    }
}

@media (max-width: 768px) {
    .CardRow {
        float: left;
        width: 100%;
        padding-bottom: 10px;
    }
}
/*Fim cartoes na datatable*/

/*Data range com bordas redondas utilizado nas paginas de busca de eventos e lista de eventos*/
.input-daterange {
    border-top-left-radius: 50%;
    border-top-right-radius: 50%;
    border-bottom-left-radius: 50%;
    border-bottom-right-radius: 50%;
}

.rounded-left {
    border-top-left-radius: 20px 20px !important;
    border-bottom-left-radius: 20px 20px !important;
}

.rounded-right {
    border-top-right-radius: 20px 20px !important;
    border-bottom-right-radius: 20px 20px !important;
}

/*Tamanho do container dos cards do slickslide, utilizado no index dos pois, eventos e rotas*/
.slick-slider {
    margin-bottom: 0px;
}

.card-size {
    width: 350px !important;
}

@media (max-width: 460px) {
    .card-size {
        width: 260px !important;
    }
}
/*Fim do slickslide*/

/*Typeahead da home page*/

#typeaheadHome {
    padding-bottom: 100px !important;
}

.typeahead-row {
    position: relative;
    bottom: 35px;
}

.ri-search-line {
    font-size: 2rem;
}

.custom-typeahead {
    border: 0;
    outline: none;
    width: 100%;
    font-family: inherit;
    font-size: 2rem;
    background-color: white;
    z-index: 3;
    margin: 2px;
}

::placeholder {
    color: #587542;
}

.landing-page .slimScrollDiv {
    margin-right: -21px;
    margin-left: -33px;
}

    .landing-page .slimScrollDiv .custom-card {
        margin-right: 0px !important;
        margin-left: 0px !important;
    }

.landing-page .type-panels .slimScrollDiv {
    margin-right: 0px !important;
    margin-left: 0px !important;
}

.custom-card {
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    border: none !important;
    margin-right: -21px;
    margin-left: -33px;
}

@media (max-width: 768px) {
    .custom-card {
/*        width: 80%;
*/    }
}

.custom-card .card-item {
    width: 100%;
    position: relative;
    padding-right: 20px;
    padding-left: 40px;
    padding-top: 10px;
    padding-bottom: 10px;
    vertical-align: central;
}


.custom-card div:hover {
    background-color: #f2f2f2;
}

.custom-card .card-item a span h2 {
    width: 100%;
    color: #295800;
}

.custom-card .card-item .title {
    font-size: 20px;
    width: 500px;
    color: #295800;
    display: inline-block
}


.hl {
    color: black;
    font-weight: 900;
}

.result-spacer {
    height: 80px;
    width: 100%;
}


/*Fim TypeaHead*/

/*classe para deixar os navlinks do layout da mesma altura*/
.loginHeight {
    padding-top: 14px;
}
/**/

/*Menu horario exibido nos detalhes dos Pois*/

.hours-menu {
    padding: 0;
    margin: 0;
    list-style-type: none;
    height: 30px;
}


    .hours-menu ul {
        border: 1px solid;
        border-radius: 3px;
        background-color: white;
    }

    .hours-menu li {
        padding: 9px 20px;
        display: block;
        text-decoration: none;
        font-size: 12px;
        background-color: white;
    }

    /* Submenu */
    .hours-menu ul {
        color: #c5cbc9;
        border: 1px solid;
        position: absolute;
        left: -9999px;
        top: -9999px;
        list-style-type: none;
        z-index: 0;
    }

.dropdown-hours {
    position: relative;
    display: inline-block;
}

.dropdown-content-hours {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 300px;
    max-width: 400px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

    .dropdown-content-hours a {
        color: black;
        padding: 8px 12px;
        text-decoration: none;
        display: block;
    }


.dropdown-hours:hover .dropdown-content-hours {
    display: block;
}
/*Fim Menu horario*/


/*Serve para posicionar search box do datatable wishlist*/
#table-suggestions_filter > label {
    text-align: right !important;
}

#table-wishlist_filter > label {
    text-align: right !important;
}

#table-circuit-donelist_filter > label {
    text-align: right !important;
}

#table-agendas-pois-donelist_filter > label {
    text-align: right !important;
}

/*Serve para resetar tamanho do serach box do data table*/
div.dataTables_wrapper div.dataTables_filter label input {
    width: auto !important;
}

.font-40 {
    font-size: 40px;
}

.profile-images {
    width: 99px;
}

.troph-color {
    color: #daa520 !important;
}

/*Informações que fica em cima datalist imagem nav galeria defs utlizador*/
.img-info {
    position: absolute;
    bottom: 18px;
    left: 10px;
}

/*Loader que fica nav pagina de defs galeria de utilizador*/
.loader-imagens {
    margin: 0 50% auto;
}

/*icone que fica em cima datalist imagem para publicar desc publicar */
.checkbox-image {
    position: absolute;
    top: 7px;
    right: 16px;
    color: #fff;
    cursor: pointer;
}


/*Animação preloader-geral*/
#preloader {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255,0.6);
    z-index: 99999;
}

/*Animação preloader-geral*/
#status {
    width: 90px;
    height: 73px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-image: url("../../images/spinnerwait.gif");
    z-index: 9999;
    background-repeat: no-repeat;
    background-position: center;
    margin: -10px 0 0 -36px;
}
/*Fim Menu horario*/

/*botão de resposta de comentarios, utilizado nas paginas de detalhes dos pois,eventos,rotas e desafios*/
.reply-button {
    background-color: #78BB1B;
    border-color: #78BB1B;
    color: #fff;
    font-size: 12px;
    padding: 0px 0px;
    border-radius: 10px;
    font-weight: 600;
}

.reply-cancel-button {
    background-color: #ff3030;
    border-color: #ff3030;
    color: #fff;
    font-size: 12px;
    padding: 0px 0px;
    border-radius: 10px;
    font-weight: 600;
}
/*fim resposta de comentarios*/

/*posição dos trofeus e whishlist nos cartoes dos pois, eventos e rotas na busca por lista*/
.card-heart-list {
    position: absolute;
    /* z-index: 1000; */
    top: 5px;
    right: 7px;
    color: #fff;
}

.trophy-list {
    position: absolute;
    top: 45px;
    right: 15px;
    color: #fff;
}
/*fim*/

/*posição dos trofeus e whishlist nos cartoes dos pois, eventos e rotas na busca por mapa*/
.card-heart-map {
    position: absolute;
    /* z-index: 1000; */
    top: 8px;
    right: 20px;
    color: #fff;
}

.trophy-map {
    position: absolute;
    top: 45px;
    right: 20px;
    color: #fff;
}
/*fim*/

/*Adicionar elips ao textos e tamanho dos cards nas listas de eventos, pois e rotas*/
.title-list {
    color: #295800;
    font-size: 16px;
    font-weight: 600;
    margin: 2px 0 5px 0;
    border-bottom: 1px solid #ececed;
    width: 100%;
    white-space: nowrap !important;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

@media (max-width: 1200px) {
    .card-w {
        width: 280px !important;
    }
}

@media (max-width: 768px) {
    .card-w {
        width: 330px !important;
    }
}

.weekhours {
    line-height: 24px !important;
    width: 100%;
    white-space: nowrap !important;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

.card-w {
    width: 330px;
    word-wrap: normal;
}

.map-card {
    width: 330px;
    word-wrap: normal;
    padding-left: 15px;
    padding-right: 15px;
}
/*fim*/

/*highlight cards nos mapas dos pois, eventos e rotas*/
.highlight-card {
    border-color: #f9ff86;
    box-shadow: inset 0 0 30px gold, 0 0 30px #ffee22;
    transition: box-shadow 0.2s ease-in;
}
/*fim highlight*/

/*Error Page*/
.error-page {
    background-color: white;
    top: -100px;
}
/*fim error page*/
.challenge-troph a :hover {
    color: #daa520 !important;
}
/*fim error page*/

/*classe para deixar a imagem não redimensionar no slide da landing page*/
.landing-page .header-back.three {
    background: 50% 0 no-repeat !important;
    object-fit: cover;
}
/*fim da classe para deixar a imagem não redimensionar no slide da landing page*/

/*deixar tabs arredondadas nos hoteis e retauração da landing page*/
.hotelRestaurantTab .nav-tabs .nav-link.active {
    border-bottom: 2px solid transparent;
    position: relative;
    z-index: 2;
    padding-bottom: 15px;
}

.hotelRestaurantTab .tab-content .panel-body {
    border-top: 1px solid #dee2e6;
}
/*Fim tabs arredondadas nos hoteis e retauração da landing page*/

/*CheckBox pada adicionar a minha viagem*/
.myTripCheckBox {
    position: absolute;
    top: 40px;
    color: #79bb1c;
    z-index: 99;
    left: 6px;
}
/*Fim do CheckBox pada adicionar a minha viagem*/

/*Icones das atividades dos detalhes das rotas*/
.activities-icons {
    background-color: #436c02;
    border: 1px solid #436c02;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 15px;
    color: #fff !important;
    /*    font-size: 3em;
*/ /*    width: 67.5px;
*/
}

    .activities-icons.activities-sportevents {
        background-color: #aaaa32;
        border: 1px solid #aaaa32;
    }

    .activities-icons > svg, .activities-icons > i {
        width: 67.5px;
        font-size: 3em;
    }


@media (max-width: 576px) {
    .activities-icons > svg, .activities-icons > i {
        font-size: 1.5em !important;
        width: 40.5px !important;
    }

    .details-header > h1 {
        font-size: 1.5rem !important;
    }
}
/*Fim Icones das atividades dos detalhes das rotas*/

/*Icones das atividades da lista de rotas*/
.activities-icons-small {
    background-color: #436c02;
    border: 1px solid #436c02;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    margin-top: 0px !important;
    margin-bottom: 5px !important;
    padding: 0px 5px !important;
    color: #fff !important;
    min-width: 32px;
}

    .activities-icons-small > i {
        width: 33.5px !important;
    }
/*Fim Icones das atividades dos detalhes das rotas*/

/*barra das classificações dos detalhes dos pois, eventos e rotas*/
.progress-mini, .progress-mini .progress-bar {
    height: 8px;
    margin-bottom: 0;
}
/*fim da barra das classificações dos detalhes dos pois, eventos e rotas*/

/*classe para configurar o tamanho das imagens dos ultimos parceiros aderente na plataforma, utilizado no index do home*/
.lastpartnersImage {
    max-width: 200px;
    padding: 0px;
}
/*fim da classe para configurar o tamanho das imagens dos ultimos parceiros aderente na plataforma, utilizado no index do home*/


/*Area das imagens dos detalhes das rotas, pois, eventos*/
.details-image {
    width: 100%;
    position: relative;
    /*    min-height: 320px;
*/ /*    text-align: center;*/
    aspect-ratio: 1.2014;
    display: grid;
    /*    justify-content: center;
    align-content: center;*/
    padding: 0px !important;
    border: 0px solid #e7eaec !important;
}

    .details-image > div > img {
        margin: 0px !important;
    }

    .details-image > div > #viewer {
        aspect-ratio: 1.385;
    }
/*Fim da Area das imagens dos detalhes das rotas, pois, eventos*/


/*Area das imagens dos detalhes dos eventos desportivos*/
.details-sportevent-image {
    width: 100%;
    position: relative;
    /*    min-height: 320px;
*/ /*    text-align: center;*/
    aspect-ratio: 1.2014;
    display: grid;
    /*    justify-content: center;
    align-content: center;*/
    padding: 0px !important;
}

    .details-sportevent-image > div > img {
        margin: 0px !important;
    }

    .details-sportevent-image > div > #viewer {
        aspect-ratio: 1.385;
    }

.vertical-poster {
    aspect-ratio: 0.66666 !important;
    display: flex;
    align-items: center;
    /*background-color: #ddd;*/
}

.vertical-thumb-div {
    aspect-ratio: 1.5;
    overflow: hidden;
    position: relative;
}

    .vertical-thumb-div > img {
        object-position: center;
    }


/*Fim da Area das imagens dos detalhes das rotas, pois, eventos*/

/*Botão para ir para a galeria de imagens de fotos 360 e videos utilizados nos detalhes dos eventos desportivos*/
.galleryBtnSportEvents {
    width: 13%;
    position: absolute;
    right: 0;
    opacity: 0.8;
    background: #79BB1C;
    border: 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    aspect-ratio: 0.59 !important;
}

    .galleryBtnSportEvents > span {
        font-size: 16px;
        color: white;
    }

@media (max-width: 576px) {
    .galleryBtnSportEvents > span {
        font-size: 12px;
        color: white;
    }
}

.vr-navigation-btn {
    z-index: 1;
    position: absolute;
    right: 0px;
}
/*Fim Botão para ir para a galeria de imagens de fotos 360 e videos*/

/*fa


/*classe da galeria de videos para deixar os videos de tamanho 100 e responsivos*/
.iframeibox {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}
/* fim da classe da galeria de videos para deixar os videos de tamanho 100 e responsivos*/

/* Then style the iframe to fit in the container div with full height and width */
.responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
/*fim da classe da galeria de videos para deixar os videos de tamanho 100 e responsivos*/

.center {
    display: flex;
    justify-content: center;
    align-items: center;
}

/*classe para alinhar info das rotas na pesquisa por lista*/
.routeListinfo {
    display: -webkit-inline-box !important;
}

    .routeListinfo > span {
        font-size: 16px !important;
    }


    .routeListinfo .dificulty-label {
        font-size: 12px !important;
    }
/*fim da classe para alinhar info das rotas na pesquisa por lista*/

/*Classe para estilizar as estrelas da classifição na pesquisa por lista*/
.listSearchRating {
    font-size: 30px !important;
    line-height: unset !important;
}
/*fim da Classe para estilizar as estrelas da classifição na pesquisa por lista*/

/*Espaçamento para os headers utilizados nas pesquisas por lista*/
.header-padding {
    padding-top: 85px;
    padding-bottom: 15px;
}

@media (max-width: 576px) {
    .header-padding {
        padding-top: 65px;
        padding-bottom: 0px;
    }
}
/*Fim do Espaçamento para os headers utilizados nas pesquisas por lista*/

/*margem utilizada para centralizar campos na filtragem nas pesquisas por lista*/
.m-12 {
    margin-top: -12px;
}
/*fim margem utilizada para centralizar campos de classificação na filtragem*/

/*Redimensionamendo de thumbnail de imagens de fotos 360 e videos utilizados nos detalhes*/
.img-resize-thumb {
    max-width: 500px;
    aspect-ratio: 3/2;
    width: 100%;
}
/*Fim do Redimensionamendo de thumbnail de imagens de fotos 360 e videos*/


/*Botão para ir para a galeria de imagens de fotos 360 e videos utilizados nos detalhes*/
.galleryBtn {
    width: 10%;
    position: absolute;
    right: 0;
    opacity: 0.8;
    background: #79BB1C;
    border: 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    aspect-ratio: 0.6 !important;
}

    .galleryBtn > span {
        font-size: 16px;
        color: white;
    }

@media (max-width: 576px) {
    .galleryBtn > span {
        font-size: 12px;
        color: white;
    }
}
/*Fim Botão para ir para a galeria de imagens de fotos 360 e videos*/

/*faixa para colocar botoes do google maps utilizados nos detalhes das rotas*/

.routes-maps-control-Layer {
    bottom: 109px;
    width: 100%;
    position: absolute;
    background: rgba(243,243,244,0.8);
}


/*fim da faixa para colocar botoes do google maps utilizados nos detalhes*/

/*faixa para colocar botoes do google maps utilizados nos detalhes dos pois e eventos*/
.maps-control-Layer {
    width: 100%;
    bottom: 0px;
    position: absolute;
    background: rgba(243,243,244,0.8);
}
/*fim da faixa para colocar botoes do google maps utilizados nos detalhes*/

/*faixa para colocar botoes do google maps utilizados nos detalhes dos eventos desportivos*/

.sportevent-maps-control-Layer {
    bottom: 109px;
    width: 98%;
    position: absolute;
    background: rgba(243,243,244,0.8);
}


/*fim da faixa para colocar botoes do google maps utilizados nos detalhes*/


/*tamanho das tabs nos pois,eventos e rotas nos Detalhes*/
.tab-height {
    min-height: 460px;
}
/*fim dos tamanho das tabs nos pois,eventos e rotas nos Detalhes*/


/*paineis nos tipos de pois e eventos utilizado na home*/
.type-panels {
    border-radius: 1em;
    height: 100%;
    border-color: transparent;
}

    .type-panels .card-header {
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
    }

    .type-panels .card-body {
        border: 1px solid #dee2e6;
        border-top: none;
        border-bottom-left-radius: 20px;
        border-bottom-right-radius: 20px;
    }
/*fim dos paineis nos tipos de pois e eventos utilizado na home*/


/*tamanho das fontes em dispositivos menores, utilizados nos detalhes de desafio*/

@media (max-width: 1200px) {
    .font-90rem {
        font-size: 0.90rem;
    }

    .font-80rem {
        font-size: 0.80rem;
    }
}


/*fim do tamanho das fontes em dispositivos menores, utilizados nos detalhes de desafio*/

/*limitador de texto com tres linha, utilizado nas listas de desafios*/
.three-lines-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
}
/*fim do limitador de texto com tres linha, utilizado nas listas de desafios*/

/*limitador de texto com quatro linha, utilizado nas listas de desafios*/
.four-lines-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    -webkit-box-orient: vertical;
}
/*fim do limitador de texto com quatro linha, utilizado nas listas de desafios*/

/*limitador de texto com uma linha*/
.one-line-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1;
    -webkit-box-orient: vertical;
}
/*fim do limitador de texto com uma linha*/

/*limitador de texto com uma linha*/
.two-lines-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}
/*fim do limitador de texto com uma linha*/

/*classe para estilizar painel das caracteristicas, utilizada nos detalhes das rotas, eventos e pois*/

.characteristicsTabs .nav-link {
    display: block;
    padding: 0.5rem 1rem;
}

.characteristicsTabs .tab-pane {
    min-height: 410px;
}

.eventsCharacteristicsTabs .nav-link {
    display: block;
    padding: 0.5rem 1rem;
}

.eventsCharacteristicsTabs .tab-pane {
    min-height: 250px;
}


/*fim da classe para estilizar painel das caracteristicas, utilizada nos detalhes das rotas, eventos e pois*/


/*Classes para controlar altura utilizadas na minha area*/
.my-passport-points {
    height: 164px;
    text-align: center !important;
}

.my-passport-finished-challenges {
    height: 112px;
    padding-top: 0 !important;
    padding-bottom: 0.25rem !important;
    text-align: left !important;
}

.my-passport-ongoing-challenges {
    height: 116px;
    padding-top: 0 !important;
    text-align: left !important;
}

.my-trips {
    height: 265px;
}

.my-wish-list-profile {
    height: 140px;
}

.my-next-trip {
    height: 128px;
    padding-bottom: 0.25rem !important;
    padding-top: 0 !important;
}

.visited-items {
    height: 177px;
}

.my-gallery {
    height: 200px;
}

@media (max-width: 1200px) {
    .my-gallery {
        height: 100%;
    }
}

.horizontalScroll {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
}


    .horizontalScroll::-webkit-scrollbar {
        height: 4px; /* height of horizontal scrollbar ← You're missing this */
        width: 4px; /* width of vertical scrollbar */
        border: 1px solid #d5d5d5;
    }

    .horizontalScroll::-webkit-scrollbar-thumb {
        background: #79bb1c !important;
        border-radius: 10px !important;
    }

    .horizontalScroll::-webkit-scrollbar-track {
        box-shadow: inset 0 0 5px grey !important;
        border-radius: 10px !important;
    }

/*fim das Classes para controlar altura utilizadas na minha area*/

/*Classe para adicionar o icone e overlay em imagens que possuem credito de autor*/

.image-rights {
    position: absolute;
    z-index: 1000;
    bottom: 21%;
    right: 1%;
    color: #fff;
}

.cursor-pointer {
    cursor: pointer;
}

.image-rights-gallery {
    position: absolute;
    z-index: 1000;
    bottom: 2px;
    right: 0px;
    color: #fff;
}

.creativeCommons-icon {
    max-width: 80px;
}

.image-rights-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 2;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    display: grid;
    justify-content: center;
    align-content: center;
}

    .image-rights-overlay > span {
        color: white;
    }
/*Fim da Classe para adicionar o icone e overlay em imagens que possuem credito de autor*/

/*Classes utilizadas nos cartoes da minha viagem*/
.selected-card {
    transform: scale(1.2);
    transition: transform 250ms ease-in-out;
    /*    padding-left: 25px;
    padding-right: 25px;
    margin-top: 25px;*/
    /*    z-index: 1000 !important;
*/ overflow: hidden;
    position: relative !important;
    z-index: 2000;
}

    .selected-card ibox-content {
        border: solid;
    }

.unselected-card {
    transform: scale(1);
    transition: transform 250ms ease-in-out;
    position: relative;
}

#myTripCollum .My-Trip-card-size {
    width: 193px !important;
    padding-bottom: 0px;
}

#myTripCollum .card-route-title, .card-challenge-title {
    font-size: 14px;
}

.My-Trip-card-size {
    width: 250px !important;
    padding-top: 40px;
    padding-bottom: 10px;
    font-size: .8rem;
    position: relative;
}


.card-header-events {
    position: relative;
    /*background: #1c191985;*/
    background: rgba(133, 58, 5, 0.8);
    margin-top: -30px;
    color: #fff;
    vertical-align: middle;
    font-size: 16px;
    min-height: 30px;
    padding-top: 3px;
}

.card-header-routes {
    position: relative;
    /*background: #1c191985;*/
    background: rgba(1, 113, 193, 0.8);
    margin-top: -30px;
    color: #fff;
    vertical-align: middle;
    font-size: 16px;
    min-height: 30px;
    padding-top: 3px;
}

.card-myTrip-trophy {
    position: absolute;
    top: 58px;
    right: 6px;
    font-size: 20px;
}

.card-myTrip-heart {
    position: absolute;
    /* z-index: 1000; */
    top: 43px;
    right: 6px;
    font-size: 20px;
}
/*Fim das Classes utilizadas nos cartoes da minha viagem*/

/*Classes utilizadas nos cartoes da wishlist*/

.my-WishList-card-size {
    width: 250px !important;
    font-size: .8rem;
    position: relative;
    margin-right: 15px;
}

.card-myWishList-trophy {
    position: absolute;
    top: 27px;
    right: 5px;
    font-size: 20px;
}

.card-myWishList-heart {
    position: absolute;
    /* z-index: 1000; */
    top: 3px;
    right: 6px;
    font-size: 20px;
}
/*Fim Classes utilizadas nos cartoes da wishlist*/


/*Classes para parametrizar PopUps*/
.popUp-Image {
    /*    background: 50% 0 no-repeat !important;
*/ object-fit: cover;
    height: 500px;
    width: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.PopUp-Modal .modal-content {
    border-radius: 20px;
    overflow: hidden;
}

    .PopUp-Modal .modal-content .modal-body {
        padding: 0px !important;
    }

.PopUp-Modal {
    z-index: 9999;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 2px 4px 1px rgba(0,0,0,0.14);
    position: absolute;
}

    .PopUp-Modal .PopUp-Title-Win {
        display: flex;
        align-content: center;
        justify-content: center;
        font-weight: 800;
        font-size: 70px;
        margin: 20px;
    }

    .PopUp-Modal .PopUp-Title {
        display: flex;
        align-content: center;
        justify-content: center;
        font-weight: 800;
        margin: 20px;
        margin: 20px 0px 20px 10px;
    }

    .PopUp-Modal .popUp-TitleInfo > h1, .popUp-QuestionMark > h1 {
        font-size: 30px;
        font-weight: 600;
    }

    .PopUp-Modal .popUp-DescriptionInfo {
        font-size: 20px;
        line-height: 1.6;
        font-weight: 600;
        padding-top: 35px;
        padding-bottom: 35px;
    }

    .PopUp-Modal .popUp-QuestionMark {
        width: 75px;
        height: 75px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        text-align: center;
        justify-content: center;
        float: right;
        margin-right: 26px;
        position: relative;
        top: -60px;
    }


    .PopUp-Modal .PopUp-Description-NoQuiz {
        height: 390px;
        display: flex;
        text-align: center;
        justify-content: space-evenly;
        flex-direction: column;
        align-items: center;
    }

        .PopUp-Modal .PopUp-Description-NoQuiz .redirectionBtn {
            display: flex;
            align-items: center;
            text-align: center;
            justify-content: center;
        }


    .PopUp-Modal .PopUp-Description {
        height: 487px;
        display: flex;
        /*        text-align: center;
*/ justify-content: space-evenly;
        flex-direction: column;
        align-items: center;
    }

        .PopUp-Modal .PopUp-Description .redirectionBtn {
            display: flex;
            align-items: center;
            text-align: center;
            justify-content: center;
            margin-left: 30px;
            margin-right: 30px;
        }

        .PopUp-Modal .PopUp-Description .form-check-label {
            font-size: 18px;
        }

            .PopUp-Modal .PopUp-Description .form-check-label:after {
                margin-top: 2px;
            }

            .PopUp-Modal .PopUp-Description .form-check-label:before {
                margin-top: 2px;
            }


        .PopUp-Modal .PopUp-Description .redirectionBtn .btns-div {
            display: flex;
            /*            align-items: center;
            text-align: center;*/
            justify-content: space-evenly;
        }

    .PopUp-Modal .PopUp-Description-Answers {
        text-align: start;
        justify-content: space-evenly;
        flex-direction: column;
        align-items: center;
        align-self: start;
        line-height: 1.6;
    }

    .PopUp-Modal .close {
        z-index: 2;
        position: relative;
    }


.disable-click {
    pointer-events: none;
    color: gray;
}

@media (max-width: 576px) {
    .PopUp-Modal .PopUp-Title {
        margin: 15px 0px 5px 0px;
    }
    .popUp-Image {
        height: 200px;
    }

    .PopUp-Modal .close {
        padding-right: 0px !important;
    }
    .PopUp-Modal .modal-content .modal-body .col-sm-7 {
        padding: 0px 25px 15px 25px !important;
    }

    .PopUp-Modal .PopUp-Description-Answers {
        line-height: 1.5;
        margin-bottom: 5px;
    }

    .PopUp-Modal .PopUp-Description {
        height: auto;
        padding-right: 0px;
        display: inline;
    }

    .PopUp-Modal .PopUp-Description-NoQuiz {
        height: auto;
        padding-right: 0px;
        display: inline;
    }

    .PopUp-Modal .popUp-DescriptionInfo {
        font-size: 16px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .PopUp-Modal .PopUp-Description .redirectionBtn .btns-div {
        display: flex;
        align-items: stretch;
        justify-content: center;
        flex-wrap: wrap;
        padding-left: 44px !important;
        padding-right: 44px !important;
    }

    .PopUp-Modal .PopUp-Title-Win {
        display: flex;
        align-content: center;
        justify-content: center;
        font-weight: 800;
        font-size: 60px;
        margin: 20px 10px 10px 10px;
    }
}

.wrong-shake {
    /* Start the shake animation and make the animation last for 0.5 seconds */
    animation: shake 0.2s;
    /* When the animation is finished, start again */
    /*animation-iteration-count: infinite;*/
}

@keyframes shake {
    0% {
        transform: translate(1px, 1px) rotate(0deg);
    }

    10% {
        transform: translate(-1px, -2px) rotate(-1deg);
    }

    20% {
        transform: translate(-3px, 0px) rotate(1deg);
    }

    30% {
        transform: translate(3px, 2px) rotate(0deg);
    }

    40% {
        transform: translate(1px, -1px) rotate(1deg);
    }

    50% {
        transform: translate(-1px, 2px) rotate(-1deg);
    }

    60% {
        transform: translate(-3px, 1px) rotate(0deg);
    }

    70% {
        transform: translate(3px, 1px) rotate(-1deg);
    }

    80% {
        transform: translate(-1px, -1px) rotate(1deg);
    }

    90% {
        transform: translate(1px, 2px) rotate(0deg);
    }

    100% {
        transform: translate(1px, -2px) rotate(-1deg);
    }
}

/*Fim das classes para parametrizar popups*/

/*Custom header utilizado na landing page*/
.custom-header {
    font-size: 16px;
    margin-top: 5px;
    font-weight: 600;
}
/*Fim de custom header*/

/*Big checkbox utilizado no popup*/
.big-checkbox {
    transform: scale(1.20);
}

.big-checkbox-label {
    font-size: 20px;
    line-height: 1.6;
    font-weight: 600;
    position: absolute;
}

@media (max-width: 576px) {
    .big-checkbox-label {
        font-size: 16px;
    }
}
/*Big checkbox utilizado no popup*/


/*Classes para os amigos utilizado no profile*/
.badge-col-initial {
    display: flex;
    align-items: center;
    margin: 0.5rem;
    flex-direction: column;
}

.badge-col {
    display: flex;
    align-items: center;
    margin: 0.5rem;
    flex-direction: column;
    position: relative;
    width: 63px;
}

.user-badge {
    width: 50px;
    height: 50px;
/*    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;*/
    border-radius: 10%;
    overflow: hidden;
}

.comment-badge {
    min-width: 50px;
    height: 50px;
    border-radius: 10%;
    margin: 10px;
    background-color: #ddd;
    display: grid;
    justify-content: center !important;
    align-content: center !important;
    color: #fff;
    font-size: 20px !important;
    aspect-ratio: 1;
}

.green-badge {
    min-width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    background-color: #79bb1c;
    border-radius: 10%;
    color: white;
}

.badge-button {
    width: 15px;
    height: 15px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    background-color: #79bb1c;
    border-radius: 50%;
    position: absolute;
    right: 5px;
}

.badge-col-initial .dropdown-menu {
    position: absolute !important;
    will-change: top, left !important;
    top: 78px !important;
    left: 23px !important;
}
/*
    .badge-col-initial .dropdown-menu .dropdown-item {
        font-size: 14px;
        padding: 0.25rem 1.0rem;
    }*/

.friends-modal {
    overflow: hidden;
    border-radius: 20px;
}

    .friends-modal .friends-header {
        background-color: #79bb1c;
        font-size: 20px;
        padding: 1rem;
        display: block;
    }

    .friends-modal .friends-footer {
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: end;
        justify-content: flex-end;
        padding: 0.25rem 1.25rem;
        background-color: #E7E7E7;
        border-top: 1px solid #dee2e6;
    }

.swal2-container {
    z-index: 300000;
}

.center-modal {
    position: absolute;
    float: left;
    left: 50%;
    top: 45%;
    transform: translate(-50%, -50%) !important;
}

@media (min-width: 576px) {
    .center-modal {
        max-width: 540px !important;
    }
}
/*fim das classes para os amigos utilizado no profile*/

/*Classe para dar truncate nos detalhes dos pois,eventos e rotas em versao TM*/
.ten-lines-truncate {
    display: -webkit-box;
    -webkit-line-clamp: 10;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/*fim da Classe para dar truncate nos detalhes dos pois,eventos e rotas em versao TM*/

/*Classe para parametrizar a posição dos logos das lojas*/
.logos-app {
    right: 53px;
    position: absolute;
    z-index: 1;
    top: 300px;
}

.logos-app-text {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    /*    width: 376px; 
*/ text-align: center;
}


@media (max-width: 576px) {
    .logos-app {
        right: auto;
    }
}
/*fim da classe para parametrizar a posição dos logos das lojas*/

/*Classe de drag and drop da minha viagem*/
.box-minHeight {
    /*    min-height: 200px;
*/ border: dotted;
    border-color: #79BB1C;
}
/**/

/*Classe de estilização dos destaques*/

.highlight-section {
    background-color: #99b178;
    /*    background-color: #ccd9b9;
*/ color: #2e2e2e;
    padding-bottom: 4.0rem;
    margin-top: -140px;
    padding-top: 210px;
}
    .highlight-section::before {
/*        background-image: url(../images/HighLightEffect.webp);
*/        background: url(../images/HighLightEffect.webp) no-repeat;
        content: ' ';
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        opacity: 0.1;
        margin-top: -140px;
    }

@media (max-width: 576px) {
    .highlight-section::before {
        background: url(../images/HighLightEffect-600.webp) no-repeat;
    }
}

.highlight-box {
    /*    border: 4px solid #dee2e6;
    border-radius: 0.75em;*/
    overflow: hidden;
}

    .highlight-box .highLightEntity {
        max-width: 300px;
    }

    .highlight-box .image-gallery1 {
        height: 50%;
        width: 100%;
        object-position: 50% 50%;
        padding-bottom: 4px;
        object-fit: cover;
    }

    .highlight-box .image-gallery2 {
        height: 50%;
        width: 100%;
        object-position: 50% 50%;
        padding-top: 4px;
        object-fit: cover;
    }

    .highlight-box .image-main {
        height: 100%;
        width: 100%;
        object-position: 50% 50%;
        object-fit: cover;
    }

    .highlight-box .highlight-description {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2; /* From which line on to truncate */
        overflow: hidden;
        line-height: 2.6;
    }

    .highlight-box .type-icons {
        border: 1px solid #295800;
        border-radius: 12px;
        margin-top: 12px;
        margin-bottom: 5px;
        padding: 9px;
        color: #295800 !important;
        margin-right: 1rem;
    }

        .highlight-box .type-icons > svg, .highlight-box .type-icons > i {
            width: 54.5px;
            font-size: 2.60em;
        }

.landing-page-icons {
    border: 1px solid #295800;
    background-color: #295800;
    border-radius: 50%;
    padding: 9px;
    color: #fff !important;
    margin-right: 1rem;
    width: 65px;
    height: 65px;
}

    .landing-page-icons > svg, .landing-page-icons > i {
        font-size: 2.5em;
    }    




@media (max-width: 576px) {
    .highlight-box.activities-icons > svg, .highlight-box.activities-icons > i {
        font-size: 0.5em !important;
        width: 40.5px !important;
    }

    .highlight-box .details-header > h1 {
        font-size: 1.5rem !important;
    }
}

/**/

/*paineis das provas desportivas nos detalhes do evento desportivo*/
.subevent-card {
    border: #aaaa32 solid 2px;
}
.subevent-card .subevent-googlemap {
    height:250px;
}
.subevent-card .subevent-desc {
    height:65px;
    z-index: 2;
}
.subevent-card .subevent-title {
    min-height:45px;
}
@media (max-width: 576px) {
    .subevent-card .subevent-desc{
        height:100%;
    }
}

/*    .subevent-card:hover .card-body {
        background-color: #e8f6d0;
    }

    .subevent-card .card-header {
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
    }

    .subevent-card .card-body {
        border: 1px solid #dee2e6;
        border-top: none;
        border-bottom-left-radius: 20px;
        border-bottom-right-radius: 20px;
    }

        .subevent-card .card-body.selected {
            background-color: #e8f6d0;
        }*/
/*fim dos paineis das provas desportivas nos detalhes do evento desportivo*/

/*Campo de Contacto telefonico*/
.iti.iti--allow-dropdown.iti--separate-dial-code{
    width:100%
}

/*fim de campo de Contacto telefonico*/

/*Estilos das Barras De Controle no Mapa usado no visualizar nas provas*/
.MapSubEventsUnderRow {
    z-index: 2;
    position: absolute;
    width: 100%;
    margin-top: -46px;
    margin-top: -46px;
    padding-right: 10px;
    padding-left: 10px;
}
/*Estilos das Barras De Controle no Mapa*/

/*Estilo De Slider Redondo*/
#sliderRound {
    height: 10px;
}

    #sliderRound .noUi-connect {
        background: #79BB1C;
    }

    #sliderRound .noUi-handle {
        height: 36px;
        width: 18px;
        top: -15px;
        right: -18px; /* half the width */
        border-radius: 4px;
        content: none;
    }

        #sliderRound .noUi-handle:before, .noUi-handle:after {
            content: none;
        }


/*Fim de Estilo De Slider Redondo*/

/*Grafico de altitude em full screen*/
.fullscreengraph {
    position: absolute !important;
    bottom: 0;
    background-color:white;
    left: 0;
    right: 0;
    height: 100px;
    display:block !important;
    z-index: 9999;
}
/*Fim de grafico de altitude em full screen*/

/*classe para configurar tamanhos dos qr codes utilizdos nas listas*/
.list-qrcode-card{
    display:flex;
    flex-direction:column;
}

    .list-qrcode-card > a > img{
        width: 30%;
    }

@media (max-width: 576px) {
    .list-qrcode-card {
        display: flex;
        flex-direction: row;
    }

        .list-qrcode-card > a > img {
            width: 100%;
        }

}
@media (min-width: 576px) {
    .w-sm-30{
        width:30% !important;
    }
   
    .h3-sm {
        font-size: 1.75rem !important;
    }
}

@media (min-width: 992px) {

    .h3-lg {
        font-size: 1.75rem !important;
    }
}


/*fim classe para configurar tamanhos dos qr codes utilizdos nas listas*/

.input-group.alldate.date > label.error {
    width: 100%;
}

/*Cards de recomendações em mapas*/
.mobile-card {
    width: 210px;
}
    .mobile-card .type-card > img {
        width: 18px;
    }

.h7-sm {
    font-size: 0.7rem !important;
}
.mobile-card > img {
    width: 230px;
}
/*Cards de recomendações em mapas*/

/*cor do podio eventos desportivos*/
.bronze-color {
    color: #CD7F32;
}
.silver-color {
    color: #C0C0C0;
}
.gold-color {
    color: #FFD700;
}
/*cor do podio eventos desportivos*/

/*classe auxiliar para dar bordas laterais utilizado nas listas das inscrições e resultados dos eventos desportivos*/
.border-radius-left {
    border-top-left-radius: 5px !important;
    border-bottom-left-radius: 5px !important;
}
.border-radius-right {
    border-top-right-radius: 5px !important;
    border-bottom-right-radius: 5px !important;
}
/*fim classe auxiliar para dar bordas laterais*/

.displayImage {
    /*aspect-ratio: 3/2;*/
    background: transparent url(../images/spinnerwait.gif) no-repeat scroll center center;
}

/*Classe Para padronizar logos dos metodos de pagamentos na inscrição*/
.payment-methods-boxes {
    height: 100px;
    display: flex;
    justify-content: center;
    align-content: center;
}
.payment-methods-images{
    max-height:60px;
}
.payment-methods-images-cards {
    max-height: 40px;
}
.payment-methods-images-detail {
    max-height: 60px;
}
.payment-methods-images-cards-detail {
    max-height: 30px;
}

.paymentSelected label:has(input[type=radio]:checked) {
    background: #e8f6d0;
}

.paymentSelected input[type=radio] {
    display: none !important;
}

@media (max-width: 1200px) {
    .payment-methods-images {
        max-height: 40px;
    }

    .payment-methods-images-cards {
        max-height: 30px;
    }
}

@media (max-width: 992px) {
    .payment-methods-images {
        max-height: 35px;
    }

    .payment-methods-images-cards {
        max-height: 27px;
    }
}

.payment-card-modal {
    overflow: hidden;
/*    max-width: 600px;
*/}
    .payment-card-modal .modal-body {
        padding: 0px;
        border: 3px solid #7abf1d;
    }

    .payment-card-modal .payment-title {
        position: absolute;
        background-color: #fff;
        width: 100%;
        margin-top: 0 !important;
        padding-top: 1rem !important;
        padding-left: 1rem !important;
    }

    .paymentSPG > iframe {
        max-height: 551px !important;
        overflow: hidden;
    }

@media (max-width: 762px) {
    .paymentSPG > iframe {
        max-height: 670px !important;
        overflow: hidden;
    }
}


/*fim da Classe Para padronizar logos dos metodos de pagamentos na inscrição*/

/*Classe de qr codes gerados para as provas desportivas*/
/*.generate-qr-code img {
    display: none !important;
    height: 20px;
    width: 20px;
}*/

/*.generate-qr-code:hover img {
    height: 200px;
    width: 200px;
    position: absolute;
    z-index: 3;
    display: inline !important;
    border: #79BB19 solid 7px;
    padding: 10px;
    background: white;
    border-radius: 5px;
    margin-left: 20px !important;
}
*/
.show-qr-code span img {
    height: 200px;
    width: 200px;
    position: absolute;
    z-index: 3;
    display: inline !important;
    border: #79BB19 solid 7px;
    padding: 10px;
    background: white;
    border-radius: 5px;
    margin-left: 20px !important;
}
.show-qr-code span {
    display: block !important;
}
@media (max-width: 576px) {
    .show-qr-code span img {
        height: 200px;
        width: 200px;
        position: absolute;
        z-index: 3;
        display: block !important;
        border: #79BB19 solid 0px;
        padding: 10px;
        background: rgba(0, 0, 0, 0);
        border-radius: 0px;
        margin-left: 20px !important;
        left: 20px !important;
    }
    .show-qr-code img {
        display: none !important;
    }
}
/*
@media (max-width: 576px) {
    .generate-qr-code:hover img {
        left: 20px !important;
    }
}*/
/*Fim de classes de qr codes gerados para as provas desportivas*/

/*Classes para alterar estilos do wizard steps utilizados nas inscricoes*/
.wizard > .content {
    background: #fff;
}

    .wizard > .content > .body {
        padding: 0px;
    }

@media (max-width: 576px) {
    .wizard > .content {
        background: #f3f3f4;
    }
}


.wizard > .steps .current a, .wizard > .steps .current a:hover, .wizard > .steps .current a:active {
    background: #79bb1c;
    border: 1px solid #79BB1C !important;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    text-align: center;
}
.wizard > .steps .done a, .wizard > .steps .done a:hover, .wizard > .steps .done a:active {
    background: #79bb1c;
    color: #fff;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    text-align: center;
}
.wizard > .steps .disabled a, .wizard > .steps .disabled a:hover, .wizard > .steps .disabled a:active {
    background: #eee;
    color: #aaa;
    cursor: default;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
    text-align: center;
}

.wizard > .actions a, .wizard > .actions a:hover, .wizard > .actions a:active {
    background: #79bb1c;
    border: 1px solid #79BB1C !important;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.wizard > .content > .body .icheckbox_square-green label.error {
    min-width: 250px;
    padding-left: 10px;
}

.wizard a {
    color: #007bff;
}

@media (max-width: 576px) {
    .wizard > .steps > ul > li {
        width: 100%;
    }
}

    /*fim das Classes para alterar estilos do wizard steps utilizados nas inscricoes*/


    /*DropDown navbar*/

/* Dropdown Button */
.nav-dropbtn {
    padding: 20px 10px 15px 10px !important;
    border-top: 6px solid transparent;
}
.layoutV2 .nav-dropbtn {
    padding: 7px 20px 14px 25px !important;
}

/* The container <div> - needed to position the dropdown content */
.dropdown-nav {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-nav-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-top-right-radius: 20px;
}

    /* Links inside the dropdown */
    .dropdown-nav-content a {
        color: #79bb1c !important;
        margin: 12px 16px;
        text-decoration: none;
        /*display: block;*/
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        font-size: 14px;
        padding-right: .5rem;
        padding-left: .5rem;
        display: block;
        padding: .5rem 1rem;
    }

/* Show the dropdown menu on hover */
.dropdown-nav:hover .dropdown-nav-content {
    display: block;
}

/*fim da dropdown navBar*/

/*Classes que são utilizadas na donelist*/

.rounded-image {
    border-radius: 10px;
}

.done-list-table .rateit .rateit-preset {
    color: rgb(121 187 28);
}
.done-list-table .content-row {
    padding-left: 0.6rem;
}
.done-list-table .rounded-image {
    max-width: 331px;
    width:100%;
}

@media (min-width: 1200px) {
    .done-list-table .card-route-title {
        margin-bottom: 22px !important;
    }
}

.item-type-rounded {
    display: flex;
    height: 33px;
    width: 33px;
    background: #78bb1b;
    border-radius: 50%;
    align-content: center;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    top: -4px;
    right: -17px;
    font-size: 20px;
    position: absolute;
}
    .item-type-rounded > i {
        color: white;
        padding-bottom: 2px;
    }

/*customizar infowindow googlemaps*/
.gm-style-iw-d {
    position: relative;
    top: -37px;
    height: 100%;
    margin-bottom: -38px;
}

.gm-ui-hover-effect {
    z-index: 99;
}
/*Fim*/

/*Imagem nos report de problema*/
.add-image {
    aspect-ratio: 3/2;
    display: flex;
    justify-content: center;
    align-items: center;
    border: #78bb1b dotted 2px;
    border-radius:10px;
}
    .add-image > div {
        text-align: center;
        width: 45px;
        height: 45px;
    }

.image-crop-problem {
    width: 100%;
    min-height: 200px;
    position: relative;
    background-color: lightgrey;
    text-align: center;
    aspect-ratio: 3/2;
    display: grid;
    justify-content: center;
    align-content: center;
}

    .image-crop-problem i {
        margin: auto;
        font-size: 30px;
    }

.remove-image {
    display: flex;
    height: 33px;
    width: 33px;
    background: #eb1717;
    border-radius: 50%;
    align-content: center;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    top: -15px;
    right: -1px;
    font-size: 20px;
    position: absolute;
    color: white;
}

.communication-card {
    background-color: blanchedalmond;
    border-radius: 10px;
    padding-bottom: 0.5rem;
    padding-top: 0.25rem;
    display: inline-block !important;
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
    padding-right: 10px;
}
/*fim Imagem nos report de problema*/


/*
 * Advanced Markers.
 */
.advanced-marker {
    align-items: center;
    background-color: #FFFFFF;
    border-radius: 50%;
    color: #263238;
    display: flex;
    font-size: 14px;
    gap: 15px;
    height: 26px;
    justify-content: center;
    padding: 4px;
    position: relative;
    position: relative;
    transition: ease-out 0s;
    width: 26px;
    top: -11px;
}

    .advanced-marker.graph-marker {
        top: -6px;
    }

    .advanced-marker.big-marker {
        height: 50px;
        width: 50px;
        transition-delay: 0.025s;
        top: -19px;
    }

    .advanced-marker::after {
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 9px solid #fff;
        content: "";
        height: 0px;
        left: 50%;
        position: absolute;
        top: 81%;
        transform: translate(-50%);
        width: 0;
        z-index: 1;
    }

    .advanced-marker.big-marker::after {
        border-left: 19px solid transparent;
        border-right: 19px solid transparent;
        border-top: 9px solid #fff;
        left: 50%;
        top: 81%;
    }


    .advanced-marker .marker-div {
        align-items: center;
        display: flex;
        justify-content: center;
        z-index: 2;
    }


    .advanced-marker .marker-card-image {
        display: none;
    }

    .advanced-marker .marker-div .marker-icon {
        font-size: 11px;
        padding-bottom: 1px;
        background-color: #FFF;
        border-radius: 50%;
        aspect-ratio: 1;
        width: 20px;
        height: 20px;
        align-content: center;
        text-align: center;
    }

    .advanced-marker .marker-div .hidden-Marker {
        position: absolute;
        top: -4px;
        right: -1px;
        text-shadow: 0 0 3px #FFF;
    }

    .advanced-marker.big-marker .marker-div .marker-icon {
        font-size: 22px;
        aspect-ratio: 1;
        width: 40px;
        height: 40px;
        transition-delay: 0.025s;
    }

    .advanced-marker.big-marker .marker-div .hidden-Marker {
        font-size: 23px;
        top: -10px;
        right: -2px;
    }



    .advanced-marker .marker-details {
        display: none;
        flex-direction: column;
        flex: 1;
    }

    .advanced-marker .address {
        color: #9E9E9E;
        font-size: 10px;
        margin-bottom: 10px;
        margin-top: 5px;
    }

    .advanced-marker .features {
        align-items: flex-end;
        display: flex;
        flex-direction: row;
        gap: 10px;
    }

        .advanced-marker .features > div {
            align-items: center;
            background: #F5F5F5;
            border-radius: 5px;
            border: 1px solid #ccc;
            display: flex;
            font-size: 10px;
            gap: 5px;
            padding: 5px;
        }

    /*
 * Property styles in highlighted state.
 */
    .advanced-marker.highlight {
        background-color: #FFFFFF;
        border-radius: 8px;
        box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.2);
        height: 80px;
        padding: 8px 15px;
        width: auto;
        max-width: 326px;
    }

        .advanced-marker.highlight.sportevent-marker {
            height: auto;
            max-width: none;
        }



        .advanced-marker.highlight::after {
            top: 97%;
        }

        .advanced-marker.highlight .marker-details {
            display: flex;
            max-width: 200px;
        }

        .advanced-marker.highlight.sportevent-marker .marker-details {
            max-width: 400px;
        }

        .advanced-marker.highlight .marker-div {
            display: none;
        }

            .advanced-marker.highlight .marker-div .marker-icon {
                width: 50px;
                height: 50px;
            }

        .advanced-marker.highlight .marker-card-image {
            display: flex;
            width: 80px;
            height: 100%;
        }

            .advanced-marker.highlight .marker-card-image > img {
                width: 100%;
            }

.green-marker {
    background: #00b14f;
}

    .green-marker .marker-div {
        color: #00b14f;
    }

    .green-marker:not(.highlight)::after {
        border-top: 17px solid #00b14f;
    }

    .green-marker.big-marker:not(.highlight)::after {
        border-top: 29px solid #00b14f;
        transition-delay: 0.01s;
    }

.brown-marker {
    background: #853904;
}

    .brown-marker .marker-div {
        color: #853904;
    }

    .brown-marker:not(.highlight)::after {
        border-top: 17px solid #853904;
    }

    .brown-marker.big-marker:not(.highlight)::after {
        border-top: 29px solid #853904;
        transition-delay: 0.01s;
    }

.blue-marker {
    background: #0070c1;
}

    .blue-marker .marker-div {
        color: #0070c1;
    }

    .blue-marker:not(.highlight)::after {
        border-top: 17px solid #0070c1;
    }

    .blue-marker.big-marker:not(.highlight)::after {
        border-top: 29px solid #0070c1;
        transition-delay: 0.01s;
    }

.gold-marker {
    background: #aaaa32;
}

    .gold-marker .marker-div {
        color: #aaaa32;
    }

    .gold-marker:not(.highlight)::after {
        border-top: 17px solid #aaaa32;
    }

    .gold-marker.big-marker:not(.highlight)::after {
        border-top: 29px solid #aaaa32;
        transition-delay: 0.01s;
    }

.red-marker {
    background: #DB3545;
}

    .red-marker .marker-div {
        color: #DB3545;
    }

    .red-marker:not(.highlight)::after {
        border-top: 17px solid #DB3545;
    }

    .red-marker.big-marker:not(.highlight)::after {
        border-top: 29px solid #DB3545;
        transition-delay: 0.01s;
    }

.close-card {
    height: 16px;
    width: 16px;
    border-radius: 65%;
    background: red;
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: -7px;
    top: -7px;
    z-index: 2;
}

    .close-card > i {
        color: #fff;
    }

.advanced-marker.problem-card {
    max-height: 350px;
    height: auto;
    display: block;
}

    .advanced-marker.problem-card .marker-details {
        max-width: 300px;
    }
/*Fim dos Advanced Markers.*/

/*Classe para colocar para mostrar o erro em baixo da checkbox quando ela estiver inline*/
.checkbox-inline .error {
    margin-top: 23px;
    width: 200px;
    margin-left: 0px;
}
/*Fim da Classe para colocar para mostrar o erro em baixo da checkbox quando ela estiver inline*/

.overflow-hidden{
    overflow:hidden;
}