/* body.paginas {
    overflow-y: scroll;
} */

.text-produto-td {
    color: #008baa;
    background-color: #5c5c5c;
    color: #fff;
}

.container-opcoes {
}

.container-opcoes .carrinho, .container-opcoes .area {
    display: inline-block;
}

.container-opcoes .b4-btn-default {
    border: 1px solid #b2b2b2;
    border-radius: 50px;
    font-size: 16px;
    background: #ffffff;
    color: #000000;
    padding-left: 20px;
    padding-right: 20px;
}

.container-opcoes .b4-btn-default:hover {
    background-color: rgba(178, 178, 178, 0.3);
}

.container-opcoes .b4-btn-default:active {
    background-color: rgba(178, 178, 178, 0.5);
}

.container-opcoes .b4-btn-default .icon-cart {
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../images/icon-cesto-compras.png?alt=1);
    background-size: auto 18px;
    vertical-align: middle;
    width: 18px;
    height: 18px;
    display: inline-block;
    position: relative;
    z-index: 0;
    top: -1px;
}

.container-opcoes .b4-btn-default .b4-badge {
    margin-left: 10px;
}

#passos > .card {
    background-color: #fff;
    border: solid 1px #eaf1f2;
    border-radius: 0px;
    overflow: inherit;
    width: 100%;
    margin-bottom: 15px;
    font-size: 1.5rem
}

#passos > .card .card-header {
    background-color: transparent;
    border: 0px;
    padding: 0px;
    border-radius: 0
}

#passos > .card .btn-editar[aria-expanded=true] {
    display: none
}

#passos > .card .btn-editar[aria-expanded=true]~.collapse-resumo {
    display: none
}

#passos > .card .card-header .btn-editar {
    float: right;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../images/icon-editar.png);
    background-size: 40% auto;
    border: solid 1px #e6e6e6;
    text-indent: -9000px;
    width: 1.5rem;
    height: 1.5rem;
    margin: 0.5rem 2rem;
    padding: 1.5rem;
    cursor: pointer;
    text-transform: uppercase;
    font-size: initial;
    color: #fff;
    font-weight: initial;
    min-width: auto
}

#passos > .card h4.subtitulo {
    background-color: rgba(150, 186, 191, 0.20);
    color: #346970;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.5rem;
    margin-bottom: 30px;
    padding: 1.25rem 2rem
}

#passos > .card .card-body {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: .75rem 2rem
}

#passos > .card .collapse-resumo {
    background-color: #fff;
    padding: 1.75rem 2rem
}

#passos > .card h5.subtitulo, #passos > .card p.subtitulo {
    font-size: 1.3rem;
    font-weight: 500;
    color: #000;
    text-transform: uppercase;
    margin-bottom: 0px
}

#passos > .card p.subtitulo {
    margin-bottom: 10px
}

#passos > .card .collapse-resumo-texto,.table-carrinho-sumario {
    font-size: 1.5rem;
    color: #999;
    margin-top: 0.5rem;
    margin-bottom: 0px
}

.pagina-conteudo .btn.btn-continuar {
    font-weight: 400;
    text-transform: none;
    color: #346970;
    background-color: transparent;
    padding-left: 0px;
    padding-right: 0px;
    font-size: 1.8rem
}

.pagina-conteudo .btn.btn-continuar:hover {
    text-decoration: underline
}

.btn.btn-checkout {
    font-weight: bold;
    background-color: #2aa754;
    text-transform: uppercase;
    font-size: 1.8rem;
    color: #fff;
    font-weight: 400;
    border-radius: 0.2rem;
    padding-top: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-bottom: 0.5rem
}

.btn.btn-checkout:hover {
    background-color: #49d077
}

.pagamento-finalizar .radio-opcoes {
}

.pagamento-finalizar .radio-opcoes .radio-item {
    border-radius: 2px;
    border: 2px solid #cccccc;
    background-color: #fff;
    color: #333;
    font-size: 1.5rem;
    line-height: 3.2rem;
    width: 100%;
    margin-bottom: 5px;
    padding-left: 10px;
    padding-top: 3px;
    padding-right: 10px;
    padding-bottom: 3px;
    display: block;
    position: relative;
    z-index: 0;
    cursor: pointer
}

.pagamento-finalizar .radio-opcoes .radio-item:after {
    content: '';
    clear: both;
    display: block
}

.pagamento-finalizar .radio-opcoes .label-text {
    position: relative;
    z-index: 10
}

.pagamento-finalizar .radio-opcoes input[type="radio"], .pagamento-finalizar .radio-opcoes input[type="checkbox"] {
    float: left;
    margin-top: 1rem;
    margin-left: 0.5rem;
    margin-right: 1rem;
    position: relative;
    z-index: 10;
    cursor: pointer
}

.pagamento-finalizar .radio-opcoes .icon {
    float: left;
    width: 45px;
    height: 32px;
    margin-left: 0px;
    margin-right: 10px;
    display: block;
    position: relative;
    top: 0px;
    z-index: 1
}

.pagamento-finalizar .radio-opcoes .icon.icon-paypal {
    background-image: url(../images/logo_paypal.jpg)
}

.pagamento-finalizar .radio-opcoes .icon.icon-visa-mastercard {
    background-image: url(../images/logo_visa-mastercard.jpg)
}

.pagamento-finalizar .radio-opcoes .icon.icon-mb {
    background-image: url(../images/logo_multibanco.jpg)
}

.pagamento-finalizar .radio-opcoes .icon.icon-transferencia-bancaria {
    background-image: url(../images/logo_transferencia-bancaria.jpg)
}

.pagamento-finalizar .radio-opcoes .icon.icon-mbway {
    background-image: url(../images/mbway_small.png)
}

.pagamento-finalizar .radio-opcoes input[type="radio"]:checked~span.label-text, .pagamento-finalizar .radio-opcoes input[type="checkbox"]:checked~span.label-text {
    font-weight: bold
}

.pagamento-finalizar .radio-opcoes input[type="radio"]:checked~i.icon, .pagamento-finalizar .radio-opcoes input[type="checkbox"]:checked~i.icon {
    opacity: 1
}

.pagamento-finalizar .radio-opcoes input[type="radio"]:checked~div.box, .pagamento-finalizar .radio-opcoes input[type="checkbox"]:checked~div.box {
    border: 2px solid #2e8b57;
    border-radius: 2px;
    background-color: #fff;
    padding: 0px;
    position: absolute;
    z-index: 0;
    left: -2px;
    right: -2px;
    top: -2px;
    bottom: -2px
}

.pagamento-finalizar .radio-opcoes input[type="radio"]:checked~.label-text, .pagamento-finalizar .radio-opcoes input[type="checkbox"]:checked~.label-text {
    color: #2e8b57;
    font-weight: bold
}

.pagamento-finalizar .radio-opcoes .radio-detalhes {
    padding: 0px;
    position: relative;
    z-index: 5
}

.pagamento-finalizar .radio-opcoes input[type="radio"]~.radio-detalhes, .pagamento-finalizar .radio-opcoes input[type="checkbox"]~.radio-detalhes {
    display: none
}

.pagamento-finalizar .radio-opcoes input[type="radio"]:checked~.radio-detalhes {
    display: block
}

.td-img {
    width: auto;
    max-width: 50px;
    height: 50px;
    margin-right: 15px
}

.card {
    border-radius: 0;
    border-color: #eaf1f2
}

a {
    color: rgba(52,105,112,1)
}

input {
    border: solid 1px #C9D7D9;
    background-color: #FAFBFB
}

/* ----- */
.pagina-carrinho-de-compras {
}

.pagina-carrinho-de-compras .conteudos_produto {
    min-height: 100%;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.pagina-carrinho-de-compras .conteudos_produto .table td {
    /* background-color: rgba(0, 0, 0, 0.05); */
    height: 100%;
}

.pagina-carrinho-de-compras th {
    font-size: 1.8rem;
    font-weight: normal;
    color: rgba(88, 83, 77, 0.7);
    background-color: transparent;
    border-top: 0;
}

.pagina-carrinho-de-compras .form-group {
    margin-bottom: 1.5rem;
}

.pagina-carrinho-de-compras .form-control, .pagina-carrinho-de-compras .btn {
    font-size: 1.6rem;
}

.pagina-carrinho-de-compras .form-control {
    font-size: 1.4rem;
    border-radius: 0px;
    background: #fff;
    border-width: 0 0 1px 0;
    box-shadow: none !important;
    border-color: #dddddd;
    padding: 0.75em;
    padding: 0.55em;
    min-height: 3.5rem;
}

.pagina-carrinho-de-compras .form-control::-webkit-input-placeholder {
    color: rgba(73, 73, 73, 0.4);
    font-weight: normal;
}

.pagina-carrinho-de-compras .form-control:-moz-placeholder {
    /* Firefox 18- */
    color: rgba(73, 73, 73, 0.4);
    font-weight: normal;
}

.pagina-carrinho-de-compras .form-control::-moz-placeholder {
    /* Firefox 19+ */
    color: rgba(73, 73, 73, 0.4);
    font-weight: normal;
}

.pagina-carrinho-de-compras .form-control:-ms-input-placeholder {
    color: rgba(73, 73, 73, 0.4);
    font-weight: normal;
}


.pagina-carrinho-de-compras .form-control:focus {
    opacity: 1;
    outline-color: transparent;
    border-color: var(--cor-website-1);
}
.pagina-carrinho-de-compras .form-group > label {
    margin-bottom: 5px;
    color: #494949;
    font-weight: 400;
    font-size: 1.4rem;
}

.pagina-carrinho-de-compras .form-group span {
    margin-bottom: 5px;
    color: #494949;
    font-weight: normal;
    font-size: 1.4rem;
}

.pagina-carrinho-de-compras .form-group span a {
    color: #494949;
    text-decoration: underline;
}


.pagina-carrinho-de-compras .btn.btn-secondary, .modal_carrinho .btn.btn-danger, .modal_carrinho .btn.btn-default {
    cursor: pointer;
    background-color: var(--cor-website-1);
    font-size: 1.6rem;
    border: 0;
    color: #fff;
    text-decoration: none !important;
    text-transform: uppercase;
    font-weight: 400;
    border-radius: 0.5rem;
    padding: 1.2rem 3rem;
}

.pagina-carrinho-de-compras .btn.btn-secondary:hover, .modal_carrinho .btn.btn-danger:hover, .modal_carrinho .btn.btn-default:hover {
    background-color: #878787;
    color: #fff;
}

.btn-danger.focus, .btn-danger:focus {
    box-shadow: none;
}

.pagina-carrinho-de-compras .btn.btn-link {
    cursor: pointer;
    color: var(--cor-website-1);
    font-size: 1.6rem;
    border: 0;
    background-color: #fff;
    text-decoration: none !important;
    text-transform: uppercase;
    font-weight: 400;
    border-radius: 0.5rem;
    padding: 1.2rem 5rem;
}

.pagina-carrinho-de-compras .btn.btn-success {
    cursor: pointer;
    background-color: var(--cor-website-1);
    font-size: 1.6rem;
    border: 0;
    color: #fff;
    text-decoration: none !important;
    text-transform: uppercase;
    font-weight: 400;
    border-radius: 0.5rem;
    padding: 1.2rem 5rem;
}

.pagina-carrinho-de-compras .btn.btn-success:focus {
    outline: none;
    box-shadow: none;
}    

.pagina-carrinho-de-compras .btn:hover, .pagina-carrinho-de-compras .btn.btn-success:hover {
    background-color: #878787;
    color: #fff;
}

.pagina-carrinho-de-compras .btn.btn-success.btn-outline {
    color: var(--cor-website-1);
    background-color: transparent;
    background-image: none;
    border: 1px solid var(--cor-website-1);
}
.pagina-carrinho-de-compras .btn.btn-success.btn-outline:hover {
    background-color: var(--cor-website-1);
    color: #fff;
}

.pagina-carrinho-de-compras .form-text-preco, .pagina-carrinho-de-compras .form-text-quantidade, .pagina-carrinho-de-compras .btn.btn-menos-mais, .pagina-carrinho-de-compras .btn.icon-apagar {
    -ms-flex-align: center !important;
    align-items: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

.pagina-carrinho-de-compras .form-text-preco, .pagina-carrinho-de-compras .form-text-quantidade, .pagina-carrinho-de-compras .btn.btn-menos-mais, .pagina-carrinho-de-compras .btn.icon-apagar {
    height: 3.5rem;
}

.pagina-carrinho-de-compras .form-text-preco {
    color: #666666;
}

.pagina-carrinho-de-compras .form-text-quantidade, .pagina-carrinho-de-compras .btn.btn-menos-mais {
    min-width: 3rem;
}

.pagina-carrinho-de-compras .form-text-quantidade {
    font-weight: bold;
    min-width: 5rem;
    margin-right: 0.4rem;
    border: solid 1px rgba(204, 204, 204, 0.3);
    border-radius: 0.25rem;
}

.pagina-carrinho-de-compras .btn.btn-menos-mais {
    cursor: pointer;
    background-color: var(--cor-website-1);
    font-size: 1.6rem;
    border: 0;
    color: #fff;
    text-decoration: none !important;
    text-transform: uppercase;
    font-weight: 400;
    border-radius: 55px;
    margin: 0 0.25rem;
    padding: 1.2rem;
}

.pagina-carrinho-de-compras .btn.btn-menos-mais:active {
    color: #ffffff;
    background-color: #666666;
}

.pagina-carrinho-de-compras .btn.btn-menos-mais:last-child {
    margin-right: 0;
}

.pagina-carrinho-de-compras .btn.icon-apagar, .pagina-carrinho-de-compras .btn.icon-apagar:active {
    background-color: transparent;
    margin: 0 0 0 auto;
    width: 4rem;
    min-width: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
}

.pagina-carrinho-de-compras .btn.icon-apagar svg {
    fill: #dc3545;
    width: 1.5rem;
    height: 1.7rem;
}

.pagina-carrinho-de-compras .table.carrinho_item {
    margin: 0 0 0.75rem 0;
}

.pagina-carrinho-de-compras .table.carrinho_item td, .pagina-carrinho-de-compras .table.carrinho_item th {
    border: 0;
    background-color: #ffffff;
    padding: 0;
}

.pagina-carrinho-de-compras .thumb-img {
    margin-top: 0.5rem;
}

.pagina-carrinho-de-compras .text-produto-0.text-produto-1 {
    margin-top: 0.75rem;
    /* display: inline-block; */
    display: block;
}

.pagina-carrinho-de-compras .text-produto-small {
    color: #5c5c5c;
}

.pagina-carrinho-de-compras [for="metodopagamento_1"], .pagina-carrinho-de-compras [for="metodopagamento_3"] {
    display: none;
}

.pagina-carrinho-de-compras .td-thumb-img {
    width: 15%;
}

.pagina-carrinho-de-compras .table th, .pagina-carrinho-de-compras .table td {
    padding: 0.75rem 1.5rem;
    border-bottom: 0;
}

.pagina-carrinho-de-compras .table thead th {
    border-bottom: solid 1px rgba(88, 83, 77, 0.3);
}


.pagina-carrinho-de-compras .table-noresponsive .card {
    border-radius: 0;
    border: 1px solid #e9ecef;
    margin-top: 1rem;
    margin-bottom: 1.25rem;
}

.pagina-carrinho-de-compras .table-noresponsive .card-header {
    text-transform: uppercase;
    color: #5c5c5c;
    font-size: 1.25rem;
    line-height: normal;
    border-bottom: 0;
}

.pagina-carrinho-de-compras .caixa-conteudo-voucher {
    width: auto;
    max-width: none;
}

.pagina-carrinho-de-compras .caixa-conteudo-voucher thead tr {
    background-color: rgba(var(--vcor2),1) !important;
}

.pagina-carrinho-de-compras .caixa-conteudo-voucher thead th {
    color: #ffffff;
}

.pagina-carrinho-de-compras .caixa-conteudo-voucher td {
    background-color: #f5f5f5;
}

.pagina-carrinho-de-compras .conteudos_produto .table td, .pagina-carrinho-de-compras .caixa-conteudo-voucher td {
    /* -webkit-box-shadow: 0 10px 50px -16px rgba(0, 0, 0, 0.2); */
    /* box-shadow: 0 10px 50px -16px rgba(0, 0, 0, 0.2); */
}

.pagina-carrinho-de-compras .pagamento-finalizar .radio-opcoes .radio-item b {
    margin-left: 1.5rem;
    display: inline-block;
}

.pagina-carrinho-de-compras .pagamento-finalizar .radio-opcoes .radio-item .form-control {
    width: auto;
    height: auto;
    border-width: 1px;
    margin: 0 0 0 1.5rem;
    padding: 0.25rem 0.5rem;
}

.pagina-carrinho-de-compras .conteudos_produtos_dados_faturacao .row {
    margin: 0 -3rem;
}

.pagina-carrinho-de-compras .conteudos_produtos_dados_faturacao .row [class*=col-] {
    padding: 0 3rem;
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox {
    background-color: transparent;
    line-height: 2.4rem;
    min-height: calc(1.8em + 0.75rem + 2px);
    width: 100%;
    height: auto !important;
    padding-left: 2rem !important;
    display: block;
    position: relative;
    z-index: 0;
    border: none !important;
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox span:before {
    content: '';
    text-align: center;
    background-color: rgb(255 255 255);
    border-radius: 0;
    line-height: 2.6rem !important;
    font-size: 1.6rem;
    color: #000;
    width: 2.5rem;
    height: 2.5rem;
    display: block;
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
    border: 1px solid #dddddd;
    margin: auto;
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox span:before {
    background-color: #ffffff;
    color: #4f4f47;
    border-radius: 0;
    border: 1px solid #dddddd;
}

.pagina-carrinho-de-compras .formulario .form-control:hover, .pagina-carrinho-de-compras .formulario .form-control-checkbox input:checked + span:before {
    background-color: #ffffff;
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox, .pagina-carrinho-de-compras .formulario .form-control-checkbox:hover {
    background-color: transparent;
    border: 0;
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox input:checked + span:before {
    content: 'x';
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox input {
    margin: auto 0;
    opacity: 0;
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox span span {
}

.pagina-carrinho-de-compras .formulario .form-control-checkbox span span:before {
    display: none;
}

/* .formulario.was-validated .form-control-checkbox .form-check-input:invalid + span:before,
.formulario .form-control-checkbox input:invalid + span:before {
    border: 1px solid #dc3545;
} */

.formulario.was-validated .form-control-checkbox .form-check-input:valid + span:before,
.formulario .form-control-checkbox input:valid + span:before {
    border: 1px solid #28a745;
}

.modal_carrinho .modal-header {
    padding: 10px 15px;
    position: relative;
    z-index: 0;
    -ms-flex-align: center !important;
    align-items: center !important;
}

.modal_carrinho .modal-title {
    font-size: 1.6rem;
    line-height: normal;
    font-weight: 400;
    text-transform: uppercase;
    color: rgba(var(--vcor2),1);
}

.modal_carrinho .close {
    font-size: 2.25rem;
    line-height: 2.25rem;
    height: auto;
    margin: 0;
    padding: 5px 10px;
    cursor: pointer;
}

.modal_carrinho .modal-body {
}

.modal_carrinho .modal-footer {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
}

.modal_carrinho .modal-footer .btn {
}

.modal_carrinho .modal-footer .btn:hover {
    /* color: #ffffff; */
    /* background-color: rgba(var(--vcor2),1); */
    /* border-color: rgba(var(--vcor2),1); */
    /* text-decoration: none; */
}

.modal_carrinho .modal-footer .btn.btn-danger {
}

.modal_carrinho .modal-footer .btn.btn-default {
    cursor: pointer;
    background-color: #fff;
    font-size: 1.6rem;
    border: 0;
    color: var(--cor-website-1);
    text-decoration: none !important;
    text-transform: uppercase;
    font-weight: 400;
    border-radius: 0.5rem;
    padding: 1.2rem 3rem;
}

.btn-danger:not([disabled]):not(.disabled).active, .btn-danger:not([disabled]):not(.disabled):active, .show > .btn-danger.dropdown-toggle {
    box-shadow: none;
}

.row-floats1 {
    display: block !important;
}

.row-floats1 [class*="col-"] {
    float: right;
}   

.row-floats1 [class*="col-"] {
    float: right;
} 

.row-floats2 {
    display: inline !important;
}

.row-floats2 [class*="col-"] {
    float: left;
}    

@media (min-width: 992px) {
.row-floats1 .float-right {
    float: right;
} 
}

.visibility-hidden {
    visibility: hidden !important;
}

/* ----- */
.form-group-morada {

}
.form-group-morada .morada-conteudos {
    background-color: #f1f1f1;
    padding: 1rem 1.5rem;
}

.form-group-morada .morada-conteudos label {
    display: none;
}

.form-group-morada .morada-conteudos strong {
    font-weight: 400;
}

.form-group-morada .morada-conteudos .form-group {
    margin-bottom: 0.5rem;
}

.form-group-morada .morada-conteudos .barra-opcoes {
    float: right;
}

.form-group-morada .morada-conteudos .barra-opcoes .btn {
    background-color: #ffffff;
    color: var(--cor-website-1);
    border-radius: 50%;
    line-height: normal;
    width: 3.5rem;
    height: 3.5rem;
    padding: 0;
}

.form-group-morada .morada-conteudos .barra-opcoes .btn:hover {
    color: #ffffff;
    background-color: var(--cor-website-1);
}

.form-group-morada .morada-conteudos .morada-block {
    display: none;
}
.form-group-morada .morada-conteudos .morada-block.show {
    display: block;
}

.itens-opcao-carrinho,
.itens-opcao-carrinho .drop_box_opcoes .item-opcao-carrinho {
    display: inline-block;
    background: #FFF;
    border: solid 1px #e0e0e0;
    margin: 2px auto;
    text-align: center;
    padding: 0.2rem 1.2rem;
    /* font-size: 1.2rem; */
}

.itens-opcao-carrinho:hover,
.itens-opcao-carrinho .drop_box_opcoes .item-opcao-carrinho:hover {
    border-color: #7d7a7a;
}

.itens-opcao-carrinho .span-opcao {
    font-size: 1.6rem !important;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}

.itens-opcao-carrinho .drop_box_opcoes {
    display: none;
    position: absolute;
    z-index: 3;
    border: 1px solid #e2e2e2;
    background: #ffffff;
    -moz-box-shadow: 3px 3px 15px -3px #d0d0d0;
    -webkit-box-shadow: 3px 3px 15px -3px #d0d0d0;
    box-shadow: 3px 3px 15px -3px #d0d0d0;
    -webkit-transition: all 0.6s ease-in;
    -moz-transition: all 0.6s ease-in;
    -o-transition: all 0.6s ease-in;
    -ms-transition: all 0.6s ease-in;
    transition: all 0.6s ease-in;
    margin-left: -17px;
    margin-top: 0px;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
    max-height: 220px;
    overflow-y: auto;
}

.itens-opcao-carrinho:hover .drop_box_opcoes {
    display: block;
}

.itens-opcao-carrinho .drop_box_opcoes .item-opcao-carrinho {
    width: 100%;
    margin-top: 0px;
    margin-bottom: 0px;
    display: block;
    text-decoration: none;
}

.btn.color-2 {
    color: var(--cor-website-1) !important;
    background-color: #fff !important;
    border: 2px solid var(--cor-website-1) !important;
    cursor: pointer;
}

.btn.color-2:hover {
    color: #fff !important;
    background-color: var(--cor-website-1) !important;
}

.btn.btn-outline-small {
    color: var(--cor-website-1);
    background-color: transparent;
    background-image: none;
    border-color: var(--cor-website-1);
    padding: 0.5rem 2rem;
    font-size: 1.4rem !important;
    cursor: pointer;
}

.btn.btn-outline-small:hover {
    color: #fff !important;
    background-color: var(--cor-website-1) !important;
}

.formulario.validation-form-js .validation-section {
    --color-valid-input: #28a745;
    --color-invalid-input: #dc3545;
}

.formulario.validation-form-js .validation-section .invalid-text,
.formulario.validation-form-js .validation-section .valid-text {
    display: none;
    width: 100%;
    margin-top: .5rem;
    font-size: 90%;
    text-transform: none;
}

.formulario.validation-form-js .validation-section input,
.formulario.validation-form-js .validation-section textarea,
.formulario.validation-form-js .validation-section select,
.formulario.validation-form-js .validation-section .form-control,
.formulario.validation-form-js .validation-section .form-control-checkbox>span:before,
.formulario.validation-form-js .validation-section .form-group-morada .morada-conteudos {
    border-width: 1px;
    border-style: solid;
}

.formulario.validation-form-js .validation-section.invalid input,
.formulario.validation-form-js .validation-section.invalid textarea,
.formulario.validation-form-js .validation-section.invalid select,
.formulario.validation-form-js .validation-section.invalid .form-control,
.formulario.validation-form-js .validation-section.invalid .form-control-checkbox>span:before,
.formulario.validation-form-js .validation-section.invalid .form-group-morada .morada-conteudos,
.formulario.validation-form-js .pagamentos-choose-geral .validation-section.invalid .nav .nav-item {
    border-color: var(--color-invalid-input);
}

.formulario.validation-form-js .validation-section.valid input,
.formulario.validation-form-js .validation-section.valid textarea,
.formulario.validation-form-js .validation-section.valid select,
.formulario.validation-form-js .validation-section.valid .form-control,
.formulario.validation-form-js .validation-section.valid .form-control-checkbox>span:before,
.formulario.validation-form-js .validation-section.valid .form-group-morada .morada-conteudos,
.formulario.validation-form-js .pagamentos-choose-geral .validation-section.valid .nav .nav-item {
    border-color: var(--color-valid-input);
}

.formulario.validation-form-js .validation-section.invalid .invalid-text {
    display: block;
    color: var(--color-invalid-input);
}

.formulario.validation-form-js .validation-section.valid .valid-text {
    display: block;
    color: var(--color-valid-input);
}

.formulario.validation-form-js .validation-section.invalid .form-check-input~.form-check-label {
    color: var(--color-invalid-input);
}

.formulario.validation-form-js .validation-section.valid .form-check-input~.form-check-label {
    color: var(--color-valid-input);
}


.pagina-carrinho-de-compras-v2 {
    background-color: #f5f5f5;
}

.pagina-carrinho-de-compras-v2 .titulo {
    font-size: 3.5rem;
    line-height: normal;
}

.pagina-carrinho-de-compras-v2 .pagina-conteudo {
    margin-top: 0;
    padding-top: 5rem;
    margin-bottom: 0;
    padding-bottom: 5rem;
    background-color: transparent;
}

.pagina-carrinho-de-compras-v2 .bloco-conteudo {
    z-index: 8;
}

.pagina-carrinho-de-compras-v2 .bloco-container {
    background-color: #fff;
    padding: 1.5rem 2.5rem;
    margin-bottom: 1rem;
}

.pagina-carrinho-de-compras-v2 .sticky {
    position: unset;
}

.pagina-carrinho-de-compras-v2 .cart-summary {
    display: block;
}

.pagina-carrinho-de-compras-v2 .cart-summary .cart-summary-list {}

.pagina-carrinho-de-compras-v2 .cart-summary .cart-summary-list .cart-summary-item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.pagina-carrinho-de-compras-v2 .formulario .form-group {
    text-transform: unset;
}

.pagina-carrinho-de-compras-v2 .images-pagamentos {
    display: flex;
}

.pagina-carrinho-de-compras-v2 .images-pagamentos .bloco-imagem {
    margin-right: 0.8rem;
    padding: 0.5rem;
    border: 1px solid #dddddd;
    display: flex;
    align-items: center;
}

.pagina-carrinho-de-compras-v2 .images-pagamentos img {
    object-fit: contain;
    width: 100%;
    height: auto;
}

.pagina-carrinho-de-compras-v2 .formulario .form-check {
    margin-bottom: 0;
}

.pagina-carrinho-de-compras-v2 .bloco-container.finish-card .price-mobile {
    display: none;
}

.pagina-carrinho-de-compras-v2 .bloco-container.finish-card .cart-summary .close-summary {
    display: none;
}

/* Lista produtos carrinho */
.pagina-carrinho-de-compras-v2 .cart-produto-group {
    padding: 1.6rem 0;
    border-bottom: 1px solid #f5f5f5;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group:last-child {
    border-bottom: none;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-image {}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-image img {
    width: 100%;
    height: auto;
}

.cart-produto-image img {
    width: 100%;
    height: auto;
	background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-info {}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-info .cart-produto-name {
    font-size: 1.6rem;
    font-weight: 400;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-info .cart-produto-opcoes {
    margin-left: 1rem;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-info .cart-produto-opcoes .btn.icon-apagar {
    background-color: transparent;
    margin: 0 0 0 auto;
    width: 4rem;
    height: auto;
    min-width: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    display: block !important;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-info .cart-produto-opcoes .btn.icon-apagar svg {
    fill: #dc3545;
    width: 1.5rem;
    height: 1.7rem;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco {
    margin-top: 1rem;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .cart-produto-bloco-preco {
    font-size: 1.6rem;
    font-weight: 400;
    color: #000;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .cart-produto-bloco-quantidade {
    display: flex;
    align-items: center;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .text-quantidade {
    margin: 0 1.2rem;
    font-size: 1.4rem;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .cart-produto-bloco-quantidade .btn-menos-mais,
.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .cart-produto-bloco-quantidade .btn-menos-menos {
    width: 2.5rem;
    height: 2.5rem;
    background-color: #f5f5f5;
    font-size: 1.4rem;
    line-height: 2.5rem;
    line-height: normal;
    text-align: center;
    border-radius: 100%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    min-width: unset;
    margin: 0;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .cart-produto-bloco-quantidade .btn-menos-mais:hover,
.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .cart-produto-bloco-quantidade .btn-menos-menos:hover {
    background-color: #b9b9b9;
}

.pagina-carrinho-de-compras-v2 .cart-produto-group .cart-produto-bloco .produto-descricao {
    margin-top: 1rem;
}

/* Lista produtos carrinho */

@media (max-width: 768px) {
    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 999;
        width: 100%;
        margin: 0;
        -webkit-box-shadow: 0 -4px 6px 0 rgba(0, 0, 0, .06);
        box-shadow: 0 -4px 6px 0 rgba(0, 0, 0, .06);
    }
    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .cart-summary {
        display: none;
        margin-bottom: 2rem;
    }
    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .cart-summary.show {
        display: block;
    }

    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .price-mobile {
        display: flex;
        align-items: flex-end;
        margin-right: 2rem;
    }

    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .price-mobile .wrapper {
        display: flex;
        flex-direction: column;
        margin-right: 1rem;
    }

    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .price-mobile .wrapper span,
    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .price-mobile .arrow {
        font-size: 2rem;
        font-weight: 400;
    }

    .pagina-carrinho-de-compras-v2 .bloco-container.finish-card .cart-summary .close-summary {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 3.5rem;
        height: 3.5rem;
        border-radius: 50%;
        color: #999;
        font-weight: 400;
        font-size: 1.6rem;
        text-align: center;
        text-transform: none;
        text-decoration: none;
        border: 1px solid #e1e1e1;
        outline: 0;
        cursor: pointer;
        -webkit-transition: color .3s;
        transition: color .3s;
        background-color: #f5f5f5;
    }
}

@media (min-width: 768px) {
    .pagina-carrinho-de-compras-v2 .sticky {
        position: sticky;
        top: calc(var(--scroll-padding) + 20px);
    }
}

@media (min-width: 576px) {
    .pagina-carrinho-de-compras-v2 .bloco-conteudo {
        display: block;
    }
}

.modal-fullscreen {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
}

.modal-fullscreen .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
}

.modulo-item-listagem.modulo-bloco-sugestoes .card {
    border: none;
    margin-bottom: 3rem;
}

.modulo-item-listagem.modulo-bloco-sugestoes {
    --space-bloco: 0.5rem;
}
@media (min-width: 768px) {
    .modulo-item-listagem.modulo-bloco-sugestoes {
        --space-bloco: 1.5rem;
        margin-right: calc(var(--space-bloco) * -1);
        margin-left: calc(var(--space-bloco) * -1);
    }

    .modulo-item-listagem.modulo-bloco-sugestoes .card {
        padding-right: var(--space-bloco);
        padding-left: var(--space-bloco);
    }
}

.modulo-item-listagem.modulo-bloco-sugestoes .card .card-link:before {
    content: '';
    width: auto;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 1;
}

.modulo-item-listagem.modulo-bloco-sugestoes .card .card-header {
    border: none;
    position: absolute;
    bottom: 0;
    left: var(--space-bloco);
    right: var(--space-bloco);
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
}

.modulo-item-listagem.modulo-bloco-sugestoes .card .card-title {
    margin-bottom: 0;
    font-size: 1.8rem;
    font-weight: 400;
}