/* ==========================================================================
SECTION FERIADOS
========================================================================== */
.sectionFeriados{
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    font-family: "Heebo";
}
.sectionFeriados .card{
    display: flex;
    flex-direction: row;
    width: 100%;
    min-width: 230px;
    padding: 5px;
    height: inherit;
    padding: 0;
    border: 0;
    margin-bottom: 10px;
}
@media screen and (min-width: 530px){
    .sectionFeriados .card{
        max-width: calc(50% - 10px);
    }
}
@media screen and (min-width: 680px){
    .sectionFeriados .card{
        max-width: 100%;
    }
}
@media screen and (min-width: 800px){
    .sectionFeriados .card{
        max-width: calc(50% - 10px);
    }
}
.sectionFeriados .card div{
    display: flex;
    flex-direction: column;
    padding: 5px 10px;
}
.sectionFeriados .card .date{
    background-color: rgba(1,75,140, .1);
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 600;
    width: 60px;
    padding: 9px 11px;
}
.sectionFeriados .card .date span:nth-of-type(1){
    margin-bottom: 2px;
    color: rgba(1,75,140, 1);
}
.sectionFeriados .card .date span:nth-of-type(2){
    color: rgba(90,90,90, 1);
    text-transform: uppercase;
}
.sectionFeriados .card .description span{
    padding: 0 0 5px 0;
}
.sectionFeriados .card .description span:nth-of-type(1){
    color: rgba(1,75,140, 1);
    font-weight: 500;
}
.sectionFeriados .card .description span:nth-of-type(2){
    color: rgba(90,90,90, 1);
}



/* ==========================================================================
LISTAGEM DE OBRAS
========================================================================== */
    /* PAGINA DE LISTAGEM */
    .page-obras .groupBox{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .page-obras .groupBox .box{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: calc(100% - 10px);
        min-height: 140px;
        margin: 5px 0;
        border-radius: 5px;
        text-decoration: none;
        color: #515151;
        transition: all 0.3s ease;
    }
    .page-obras .groupBox .box .title.component-overflowMultipleLines{
        margin: 20px;
        -webkit-line-clamp: 3;
    }
    .page-obras .groupBox .box .status{
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
        color: #fff;
        border-radius: 0 0 5px 5px;
        padding: 5px 20px;
        margin-left: -2px;
        margin-bottom: -2px;
        width: calc(100% + 4px);
        transition: all 0.3s ease;
    }
    .page-obras .groupBox .box .status p{
        width: calc( 100% - 20px);
        margin: 0;
    }
    .page-obras .groupBox .box .status p label{
        font-weight: 700;
        margin: 0;
    }
    .page-obras .groupBox .box .status span{
        display: flex;
        justify-content: center;
        align-items: center;
        width: 20px;
    }

    @media screen and (min-width: 600px){
        .page-obras .groupBox{
            flex-direction: row;
            justify-content: center;
            align-items: stretch;
            flex-wrap: wrap;
        }
        .page-obras .groupBox .box{
            width: calc(50% - 10px);
            margin: 5px;
        }
    }
    
    @media screen and (min-width: 968px){
        .page-obras .groupBox{
            justify-content: flex-start;
        }
        .page-obras .groupBox .box{
            width: calc(33.3% - 10px);
            margin: 5px 10px 5px 0;
        }
    }

    @media screen and (min-width: 1024px){
        .page-obras .groupBox{
            justify-content: flex-start;
            /* justify-content: space-between; */
        }	
        .page-obras .groupBox .box{
            /* margin: 5px 0; */
            margin: 5px 10px 5px 0;
        }
        .page-obras .groupBox .box:hover{
            overflow: hidden;
            transition: all 0.3s ease;
        }    
    }    

    @media screen and (min-width: 1600px){
        .page-obras .groupBox .box{
            width: calc(25% - 10px);
        }
    }

    .page-obras .groupBox .box.status--concluida{ border: 2px solid rgba(57, 153, 72, .2);}
    .page-obras .groupBox .box.status--concluida:hover{ border: 2px solid rgba(57, 153, 72, 1);}
    .page-obras .groupBox .box.status--concluida .status{ background-color: rgba(57, 153, 72, 1);}

    .page-obras .groupBox .box.status--contratorescindido{ border: 2px solid rgba(151, 151, 151, .2);}
    .page-obras .groupBox .box.status--contratorescindido:hover{ border: 2px solid rgb(151, 151, 151);}
    .page-obras .groupBox .box.status--contratorescindido .status{ background-color: rgba(151, 151, 151, 1);}

    .page-obras .groupBox .box.status--andamento{ border: 2px solid rgba(247, 173, 18, .2)}
    .page-obras .groupBox .box.status--andamento:hover{ border: 2px solid rgba(247, 173, 18, 1)}
    .page-obras .groupBox .box.status--andamento .status{ background-color: rgba(247, 173, 18, 1)}

    .page-obras .groupBox .box.status--paralisada{ border: 2px solid rgba(45, 125, 170, .2)}
    .page-obras .groupBox .box.status--paralisada:hover{ border: 2px solid rgba(45, 125, 170, 1)}
    .page-obras .groupBox .box.status--paralisada .status{ background-color: rgba(45, 125, 170, 1)}


    .page-obras .groupFilter form{
        display: flex;
        flex-direction: column;
        margin-bottom: 10px;
        padding: 5px;
    }

    .page-obras .groupFilter form .groupFilter-fields{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin-bottom: 5px;
    }

    .page-obras .groupFilter form .groupFilter-fields input,
    .page-obras .groupFilter form .groupFilter-fields select{
        border-radius: 5px;
        padding: 15px 10px;
        outline: none;
        height: 100%;
    }

    .page-obras .groupFilter form .groupFilter-fields input{
        width: 100%;
        border: 1px solid rgba(57, 153, 72, 0.2);
        outline: none;
        transition: all 0.3s ease;
        margin-bottom: 5px;
    }

    .page-obras .groupFilter form .groupFilter-fields input:focus{
        border: 1px solid rgba(57, 153, 72, 1);
        transition: all 0.3s ease;
    }
    .page-obras .groupFilter form .groupFilter-fields select{
        border: 1px solid rgba(57, 153, 72, 0.2);
        transition: all 0.3s ease;
        background-color: #ffffff;
    }
    .page-obras .groupFilter form .groupFilter-fields select:focus{
        border: 1px solid rgba(57, 153, 72, 1);
        transition: all 0.3s ease;
    }
    .page-obras .groupFilter form .groupFilter-button{
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }
    .page-obras .groupFilter form .groupFilter-button button{
        width: 100%;
        outline: none;
        border: 0;
        border-radius: 5px;
        transition: all 0.3s ease;
        font-size: 14px;
        text-transform: uppercase;
        font-weight: 600;
        border: 1px solid rgba(57, 153, 72, 0.2);
        cursor: pointer;
        border-radius: 5px;
        padding: 5px 10px;
        margin-bottom: 5px;
    }
    .page-obras .groupFilter form .groupFilter-button button a{
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        padding: 0 10px;
        text-decoration: none;
        color: inherit;
    }
    .page-obras .groupFilter form .groupFilter-button button:nth-of-type(1){
        background-color: #399948;
        color: #fff;
    }
    .page-obras .groupFilter form .groupFilter-button button:nth-of-type(2){
        background-color: #fff;
        color: rgba(57, 153, 72, 0.2);
        height: 50%;
        text-transform: capitalize;
    }

    .page-obras .groupFilter form .groupFilter-button button:nth-of-type(2):hover{
        border: 1px solid rgba(57, 153, 72, 1);
        color: rgba(57, 153, 72, 1);
        transition: all 0.3s ease;
    }

    @media screen and (min-width: 460px){
        .page-obras .groupFilter form .groupFilter-fields{
            flex-direction: row;
        }
        .page-obras .groupFilter form .groupFilter-fields input,
        .page-obras .groupFilter form .groupFilter-fields select{
            width: calc(50% - 5px);
        }
        .page-obras .groupFilter form .groupFilter-fields input{
            margin-bottom: 0;
        }
        .page-obras .groupFilter form .groupFilter-fields select{
            border-radius: 5px 0 0 5px;
        }
        .page-obras .groupFilter form .groupFilter-button{
            flex-direction: row;
        }
        .page-obras .groupFilter form .groupFilter-button button{
            width: calc(50% - 5px);
            margin-bottom: 0;
        }
        .page-obras .groupFilter form .groupFilter-button button:nth-of-type(2){
            margin-left: 10px;
        }
    }

    @media screen and (min-width: 768px){
        .page-obras .groupFilter form{
            flex-direction: row;
        }
        .page-obras .groupFilter form .groupFilter-fields{
            width: calc(100% - 300px);
            max-width: 620px;
            margin-bottom: 0;
        }
        .page-obras .groupFilter form .groupFilter-fields input{
            width: calc(100% - 230px);
        }
        .page-obras .groupFilter form .groupFilter-fields select{
            max-width: 220px;

        }
        .page-obras .groupFilter form .groupFilter-button{
            justify-content: flex-start;
            width: 300px;
        }
        .page-obras .groupFilter form .groupFilter-button button:nth-of-type(1){
            border-radius: 0px 5px 5px 0;
        }
        .page-obras .groupFilter form .groupFilter-button button{
            width: 140px;
        }
    }
    @media screen and (min-width: 968px){
        .page-obras .groupFilter form{
            padding: 0;
        }
    }

    /* SINGLE OBRAS */
    .page-obras .screen-size-10{ width: 100%; }
    .page-obras .screen-size-20{ width: 100%; }
    .page-obras .screen-size-25{ width: 100%; }
    .page-obras .screen-size-30{ width: 100%; }
    .page-obras .screen-size-50{ width: 100%; }
    .page-obras .screen-size-70{ width: 100%; }
    .page-obras .screen-size-75{ width: 100%; }
    .page-obras .screen-size-100{ width: 100%; }
    .page-obras .description-obra{
        display: flex;
        flex-direction: column;
        align-items: stretch;
        border: 1px solid #aaa;
    }
    .page-obras .description-obra .row-details{
        display: flex;
        margin-bottom: 0;
        flex-direction: column;
        width: 100%;
        margin-bottom: 20px;
        font-size: 12px;
    }
    .page-obras .description-obra .row-details .row-group{
        display: flex;
        flex-direction: column;
        margin-bottom: 10px;
    }
    .page-obras .description-obra .row-details .row-group .group-title{
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        background-color: var(--color_primary);
        color: #fff;
        height: 40px;   
        width: 100%;
        padding: 5px;
        line-height: normal;
    }
    .page-obras .description-obra .row-details .row-group:not(:last-child) .group-title{
        width: calc(100% - 2px);
    }
    .page-obras .description-obra .row-details .row-group .row-cards{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 100%;
    }
    .page-obras .description-obra .row-details .row-group .row-cards .row-card{
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .page-obras .description-obra .row-details .row-group .card-title{
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        height: 50px;
        background-color: #eee;
        color: #111;
        padding: 5px;
        line-height: normal;
    }
    .page-obras .description-obra .row-details .row-group:not(:last-child) .row-card .card-title{
        width: calc(100% - 2px);
    }
    .page-obras .description-obra .row-details .row-group:last-child .row-card:not(:last-child) .card-title{
        width: calc(100% - 2px);
    }
    .page-obras .description-obra .row-details .row-group .card-info{
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        min-height: 40px;
        background-color: #fff;
        color: #111;
        padding: 5px;
        line-height: normal;
    }
    .page-obras .description-obra .row-details .row-group > .card-info{
        height: calc(100% - 40px);
    }

    @media screen and (min-width: 768px){
        .page-obras .screen-size-10{ width: 10%; }
        .page-obras .screen-size-20{ width: 20%; }
        .page-obras .screen-size-25{ width: 25%; }
        .page-obras .screen-size-30{ width: 30%; }
        .page-obras .screen-size-50{ width: 50%; }
        .page-obras .screen-size-70{ width: 70%; }
        .page-obras .screen-size-75{ width: 75%; }
        .page-obras .screen-size-100{ width: 100%; }
        .page-obras .description-obra .row-details{
            flex-direction: row;
            margin-bottom: 0;
        }
        .page-obras .description-obra .row-details .row-group .row-cards{
            flex-direction: row;
        }
    }


    .page-obras .gallery-obra {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin: 10px 0;
    }

    .page-obras .gallery-obra .gallery-obra_title {
        width: 100%;
        padding: 10px 0;
    }

    .page-obras .gallery-obra .gallery-obra_title p {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: row;
        font-size: 20px;
        margin: 0;
    }

    .page-obras .gallery-obra .gallery-obra_title span {
        display: block;
        background-color: var(--color_primary);
        height: 2px;
        width: 94%;
        margin-top: 5px;
    }

    .page-obras .map-obra {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin: 10px 0;
    }

    .page-obras .map-obra .map-obra_title {
        width: 100%;
        padding: 10px 0;
    }

    .page-obras .map-obra .map-obra_title p {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: row;
        font-size: 20px;
    }

    .page-obras .map-obra .map-obra_title span {
        display: block;
        background-color: var(--color_primary);
        height: 2px;
        width: 94%;
        margin-top: 5px;
    }

    .page-obras .map-obra iframe {
        height: 450px;
        width: 100%;
        border: 0;
        margin-bottom: 10px;
    }

    .page-obras .map-obra .legenda {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .page-obras .map-obra .legenda .item {
        width: 100%!important;
        display: flex;
        align-items: center;
        margin-bottom: 5px;
    }

    .page-obras .map-obra .legenda .item span {
        display: block;
        background-color: #555;
        height: 22px!important;
        width: 22px!important;
        margin: 0!important;
    }

    .page-obras .map-obra .legenda .item p {
        font-size: 15px!important;
        margin: 0 0 0 10px;
    }
    .page-obras .map-obra .legenda .item.status--concluida span {
        background-color: rgba(57, 153, 72, 1);
    }
    .page-obras .map-obra .legenda .item.status--contratorescindido span {
        background-color: rgb(151, 151, 151);
    }
    .page-obras .map-obra .legenda .item.status--andamento span {
        background-color: rgba(247, 173, 18, 1);
    }
    .page-obras .map-obra .legenda .item.status--paralisada span {
        background-color: rgba(45, 125, 170, 1);
    }

    @media screen and (min-width: 600px){
        .page-obras .map-obra .legenda {
            flex-direction: row;
        }
        .page-obras .map-obra .legenda .item {
            width: 25%!important;
            margin-bottom: 0px;
        }
    }


/* ==========================================================================
LISTAGEM DE PARCERIA PÚBLICO PRIVADO
========================================================================== */
.listagem_cat_custom {
    display: flex;
    flex-direction: column;
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.oneColumn_custom {
    margin: 40px auto;
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
}

.listagem_cat_custom .container-bannerTitle {
    position: initial;
}