.fixed-bottom, .fixed-top {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    bottom: 0;
}

.fixed-nav {
    background-color: #fff;
    border-top: 1px solid #1A9A85;
    color: #000;
    -webkit-box-shadow: 0 0 2.7px rgb(0 0 0 / 2%), 0 0 6.9px rgb(0 0 0 / 3%), 0 0 14.2px rgb(0 0 0 / 4%), 0 0 29.2px rgb(0 0 0 / 5%), 0 0 80px rgb(0 0 0 / 7%);
    box-shadow: 0 0 2.7px rgb(0 0 0 / 2%), 0 0 6.9px rgb(0 0 0 / 3%), 0 0 14.2px rgb(0 0 0 / 4%), 0 0 29.2px rgb(0 0 0 / 5%), 0 0 80px rgb(0 0 0 / 7%);
}

.text-center {
    text-align: center!important;
}

.flex-fill {
    flex: 1 1 auto!important;
}

.min-height-menu-app {
    height: 20px;
}

.footer-app .fixed-nav a .labels {
    color: #1A9A85;
    font-size: 10px;
    line-height: 1;
}

[x-cloak] { display: none !important; }

.menu-app {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: calc(100vh - 48px);
    background-color: #1A9A85;
    color: #fff;
    z-index: 999;
    padding: 20px 40px;
}

.app-home header, .logado header.smaller {
    height: 60px!important;
}


.hamburguer-app svg {
    width: 22px;
}

.hamburguer-app svg path {
    fill: #1A9A85
}

#main-menu-app > li, #main-menu-app-servicos > li {
    border-bottom: 1px solid rgba(255,255,255,.4);
    padding-bottom: 15px;
    margin-bottom: 15px;
    font-weight: 700;
    font-size: 14px;
}

#main-menu-app > li:nth-child(n+2) {
    display: none!important;
}

#main-menu-app > li:last-child {
    display: none!important;
}

#main-menu-app > li ul, #main-menu-app-servicos > ul li {
    padding: 10px 0;
    margin-left: 15px;
}

#main-menu-app > li ul li, #main-menu-app-servicos > li ul li {
    padding: 8px 0;
}

#main-menu-app li a, #main-menu-app-servicos li a {
    color: #fff;
    font-weight: 700;
    font-size: 14px;
}

#main-menu-app li svg, #main-menu-app-servicos li svg {
    width: 12px;
    margin-left: auto;
}

#main-menu-app li svg path, #main-menu-app-servicos li svg path {
    fill: #fff;
}

#main-menu-app .rotate, #main-menu-app-servicos .rotate {
    transform: rotate(180deg);
}


#main-menu-app-servicos  > li ul {
    padding: 10px 0px;
    margin-left: 15px;
}

.height0 {
    max-height: 0px;
    transition: all .3s ease-in-out;
}

.heighit {
    max-height: 1000px;
}


.bold-14 {
    font-weight: 700;
    font-size: 16px;
}

.menu-app-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.contacts-app li {
    border-bottom: 1px solid rgba(255,255,255,.4);
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.contacts-app li a {
    color: #fff;
    font-weight: 700;
    font-size: 14px;
}

#lang-app {
    display: flex;
}

#lang-app div{
    flex: 1 1 auto!important;
}

#lang-app div a{
    font-size: 12px;
    color: #fff;
}

#lang-app div a.active{
    font-weight: 700;
    border-bottom: 1px solid #fff;
}

.lang-title {
    border-bottom: 1px solid rgba(255,255,255,.4);
    padding-bottom: 15px;
    margin-bottom: 15px;
    font-weight: 700;
    font-size: 16px;
}

.app-home #filterboxOpen {
    height: 35px;
    border: 0px!important;
    display: flex;
    align-items: center;
    padding: 0 8px;
    text-decoration: none;
    color: #fff;
    background-color: #1A9A85;
    font-size: 12px;
    font-weight: 700;
}

.app-home #filterboxOpen svg {
    margin-left: 6px;
    height: 33px;
}

.box {
    width: 90%;
    background-color: #1A9A85;
    color: #fff;
    padding: 10px;
    position: absolute;
    margin: 40px;
    border-radius: 5px;
    z-index: 999;
    top: -100px;
    right: -20px;
    font-size: 12px;
    text-align: center;
    box-shadow: 0px 0px 15px rgba(0,0,0,.4);
  }

  .box.arrow-bottom:after {
    content: " ";
    position: absolute;
    right: 15px;
    bottom: -15px;
    border-top: 15px solid #1A9A85;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
    border-bottom: none;
  }

  .box.arrow-bottom .close-hint {
    content: "";
    position: absolute;
    right: -8px;
    top: -8px;
    height: 25px;
    width: 25px;
    font-size: 16px;
    line-height: 20px;
    background-color: #fff;
    border: 1px solid #009a85;
    color: #009a85;
    border-radius: 50%;
  }

  .floating {
    animation-name: floating;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}

@keyframes floating {
    0% { transform: translate(0,  0px); }
    50%  { transform: translate(0, 5px); }
    100%   { transform: translate(0, -0px); }
}


@media (max-width: 767px){

    .app-home .owl-theme .owl-controls .owl-prev, .owl-theme .owl-controls .owl-next {
        display: block !important;
    }

    .app-home .carousel-galeria.owl-carousel .owl-controls .owl-nav .owl-next {
        right: 25px;
        color: #009a85;
    }

    .app-home .carousel-galeria.owl-carousel .owl-controls .owl-nav .owl-prev {
        left: 25px;
        color: #009a85;
    }

    .app-home header+section, header+.item {
        margin-top: 60px!important;
    }

    .app-home #filterboxOpen.affix {
        top: 77px!important;
        z-index: 9!important;
        height: 35px;
        width: auto;
        background-color: #1A9A85;
        text-align: right;
        display: flex;
        justify-content: end;
        color: #fff;
        right: 15px;
        left: unset;
    }

    .app-home.filtersOpen #filterboxOpen {
        padding-right: 0;
    }

    .app-home .wrap {
        padding-bottom: 25px!important;
    }
}

.green-screen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #1A9A85;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
    z-index: 999999999; /* on top */
    justify-content: center;
    align-items: center;
}

.animated-svg {
    width: 50px;
    margin-top: -12px;
    margin-right: -40px;
}

#status {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.green-button {
    background-color: #1A9A85;
    color: #fff!important;
    text-transform: uppercase;
    text-decoration: none!important;
    font-weight: 700;
    font-size: 16px;
    width: 100%;
    padding: 10px 20px;
    display: block;
    margin-bottom: 15px;
}

.calc-peso-material .green-button {
    font-size: 14px;
}

.orc-count {
    position: absolute;
    background-color: #1A9A85;
    color: #fff;
    font-size: 10px!important;
    top: 0px;
    right: 10px;
    line-height: 10px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
}

.cat-resumo-app .comparador-icon {
    display: none;
}

.cat-resumo-app a {
    display: flex;
    margin-bottom: 20px;
    text-decoration: none!important;
}

.cat-resumo-app h3 {
    background-color: transparent!important;
    font-weight: 700;
    padding-top: 0;
    margin-top: 0;
    margin-left: 10px;
}

.cat-resumo-app img {
    width: 25%;
}

.hidden-app {
    display: none!important
}

.app-home .minimizar_bottom_bar {
    display: none;
}

.app-home .busca-filtros {
    height: 35px;
    border: 1px solid #E5E5E5!important;
    background-position: 95% center;
    background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.415' height='15.352' viewBox='0 0 15.415 15.352'%3E%3Cpath id='Icon_ionic-ios-search' data-name='Icon ionic-ios-search' d='M18.68,17.806l-3.99-4.028a5.687,5.687,0,1,0-.863.874l3.964,4a.614.614,0,0,0,.867.022A.618.618,0,0,0,18.68,17.806ZM10.22,14.7A4.49,4.49,0,1,1,13.4,13.386,4.463,4.463,0,0,1,10.22,14.7Z' transform='translate(-4 -3.993)' fill='%231a9a85' stroke='%231a9a85' stroke-width='1'/%3E%3C/svg%3E");
}

.dimensoesImg-wrapper label {
    font-size: 12px;
    text-transform: uppercase;
    color: #bbb;
    margin-right: 10px;
    display: block;
}

.app-home #filters-app {
    flex: 1 1 auto!important;
}


.app-home .listaicons h3, .app-home .listaicons h4 {
    font-size: 15px;
}

.app-home .filtrosleft {
    background-color: rgba(245, 245, 245, 0.95);
}

.app-home .active-filters {
    padding: 0
}

.app-home .accordion.filtro .bt a {
    text-transform: capitalize;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.app-home .accordion.filtro .bt a i {
    font-size: 16px;
    margin-top: 10px;
    color: #1A9A85;
}

.app-home .filter-box.filter-type {
    border-bottom: 1px solid #E1E2E2;
}

.app-home.filtersOpen .filtersClose {
    display: none!important;
}

.app-home .filtrosleft {
    padding-top: 50px
}

.app-home #adicionar_orcamento {
    margin-top: 20px;
}

.app-home .config tbody tr td:first-child {
    max-width: unset;
    word-break: unset;
}

.app-home .config input[type=number] {
    margin-left: 0;
    width: 30%;
    border-radius: 0;
    border: 1px solid #ddd;
    height: 40px;
}

.app-home #larguraselect {
    width: 50%!important;
}

.green-text {
    color: #1A9A85!important;
}

.font-14 {
    font-size: 14px!important;
}

.go-back {
    cursor: pointer;
    font-size: 10px;
}

.gap-8 {
    gap: 8px
}

.app-home .icon-cog {
    top: 20px!important
}

.select-prod {
    text-transform: uppercase;
    margin-bottom: 15px;
    font-weight: 700;
}


.app-home .config tbody tr td:first-child {
    padding: 0 8px;
}

.app-home .config select.round {
    background-position: 95% center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='5.718' viewBox='0 0 10 5.718'%3E%3Cpath id='Icon_ionic-ios-arrow-down' data-name='Icon ionic-ios-arrow-down' d='M11.189,15.241l3.781-3.784a.712.712,0,0,1,1.009,0,.721.721,0,0,1,0,1.012L11.7,16.756a.713.713,0,0,1-.985.021L6.4,12.472a.715.715,0,1,1,1.009-1.012Z' transform='translate(-6.188 -11.246)' fill='%231a9a85'/%3E%3C/svg%3E");
    background-size: 20px 6px, 5px 5px, 1.5em 1.5em;
    background-repeat: no-repeat;
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 0;
}

.app-home .table>tbody>tr>td {
    padding: 0px;
}

.app-home .flex-buttons {
    display: flex;
    gap: 8px;
    margin-top: 15px;
}

.app-home .flex-buttons li {
    flex: 1 1 auto !important;
    width: 50%;
}

.app-home .finalizaorcam {
    display: none!important;
}

.calc-peso-material {
    margin-bottom: 40px;
}

.calc-peso-material img {
    width: 100%;
    height: 100px;
    object-fit: cover;
    object-position: center;
}



.app-home .scroll-form-orcamento-modal {
    overflow-x: scroll;
    display: block;
    width: 55%;
}

.contacto-grid {
    width: 100%;
    display: grid;
    grid-template-rows: repeat(3, 1fr);
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    justify-content: center;
    align-content: center;
}

.contacto-app-btn {
    display: block;
    color: #fff!important;
    font-weight: 700;
    padding: 16px;
    text-align: center;
    text-decoration: none!important;
}

.contacto-grid-item   {
    background-color: #1A9A85;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contacto-grid-item svg  {
    width: 22px;
    display: block;
    margin: 0 auto 8px auto
}

.contacto-grid-item svg path {
    fill: #fff;
}

.height-50vh {
    height: 60vh!important;
}

.app-home .geral-section{
    text-align: center;
}

.app-home .geral-section #formContacto, .app-home .geral-section iframe {
    display: none!important;
}

#modalmapa .modal-header {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 99;
    background: #fff;
}

.app-home .table-responsive {
    font-size: 10px;
    width: 95%;
}

.app-home .table th {
    padding: 4px;
}

.app-home .filter-box .tooltip.top {
    opacity: 1!important;
    margin-top: 0px;
}


.app-home .icon-animado {
    /* min-height: 110px; */
    min-height: 50px;
    width: 100%;
    height:65px;
    object-fit: contain;
}
/*
@media (max-width: 478px){
    .app-home .icon-animado {
        min-height: 108px;
        width: 100%;
    }
} */

@media (max-width: 452px){
    /* .app-home .icon-animado {
        min-height: 70px;
        width: 100%;
    } */
    .app-home .flex-buttons {
        flex-direction: column-reverse;
    }
    .app-home .flex-buttons li {
        width: 100%;
    }
}


/* @media (max-width: 375px){
    .app-home .icon-animado {
        min-height: 58px;
        width: 100%;
    }
} */

#gcaMainButton {
    bottom: 80px!important;
}

.btn-green {
    font-size: 10px;
    padding: 5px!important
}

/* #produtophp .banner-item {
    display: none;
}*/


.rate {
    height: 46px;
    display: inline-block;
}
.rate:not(:checked) > input {
    position:absolute;
    top:-9999px;
}
.rate:not(:checked) > label {
    float:right;
    width:1em;
    overflow:hidden;
    white-space:nowrap;
    cursor:pointer;
    font-size:30px;
    line-height: 1;
    color:#ccc;
}
.rate:not(:checked) > label:before {
    content: '★ ';
}
.rate > input:checked ~ label {
    color: #ffc700;
}
.rate:not(:checked) > label:hover,
.rate:not(:checked) > label:hover ~ label {
    color: #deb217;
}
.rate > input:checked + label:hover,
.rate > input:checked + label:hover ~ label,
.rate > input:checked ~ label:hover,
.rate > input:checked ~ label:hover ~ label,
.rate > label:hover ~ input:checked ~ label {
    color: #ffc700;
}

.filtersOpen:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100vh;
    height: 100vh;
}