@font-face {
    font-family: "Klavika Bold";
    src: url("../fonts/klavika-bold.ttf");
}

@font-face {
    font-family: "Klavika Light";
    src: url("../fonts/klavika-light.ttf");
}

@font-face {
    font-family: "Klavika Medium";
    src: url("../fonts/klavika-medium.ttf");
}

*:focus {
    outline: none !important;
}

html,
body {
    margin: 0;
    padding: 0;
}

body * {
    font-family: 'Klavika Light';
}

body.modal-open header,
body.page-checkout.modal-open .right>.card {
    z-index: 1050 !important;
}

body.page-checkout .right .card .product-name span {
    font-family: 'Klavika Medium';
}

em {
    color: #AE2E2A;
}

body.product-list .item ul i {
    color: #AE2E2A;
}

a.skip {
    display: none;
}

.swal2-styled.swal2-confirm {
    background-color: #F4BA44 !important;
}

.swal2-icon.swal2-info {
    border-color: #AE2E2A !important;
    color: #AE2E2A !important;
}

.swal2-styled.swal2-confirm:focus {
    box-shadow: none !important;
}

.site-search,
.product-tile .image-container .quickview {
    display: none;
}

.btn-outline-primary {
    color: #AE2E2A !important;
    border-color: #AE2E2A !important;
}

.btn-primary.focus,
.btn-primary:focus {
    box-shadow: none !important;
}

.btn-outline-primary {
    border-radius: 25px;
}

.btn-outline-primary:hover {
    color: #fff !important;
    background-color: #AE2E2A !important;
    border-color: #AE2E2A !important;
}

input:focus-visible {
    outline: none !important;
}

body:not(.product-list) .footer-link.tvphone {
    display: none;
}

.price .strike-through {
    display: none !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

.add-to-cart-messages {
    z-index: 999999;
}

body.product-list .product-tile .image-container a {
    pointer-events: none;
}

.container-minicart .veil .underlay {
    border-radius: 15px !important;
}

span.ver-mais {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

fieldset.shipping-address-block .form-control-label:before {
    display: none;
}

.input-disabled {
    pointer-events: none !important;
    background-color: #e9ecef;
    opacity: 1;
}

.product-options .long-desc span,
.product-options .long-desc a {
    color: #373737 !important;
}

.card.payment-form .form-group.required .form-control-label:before {
    display: none;
}

.loader {
    position: fixed;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.spinner {
    width: 80px;
    height: 80px;
    text-align: center;
    animation: sk-rotate 2s infinite linear;
    position: unset !important;
    top: unset !important;
    left: unset !important;
    margin-top: unset !important;
    margin-left: unset !important;
}

#timeout-message {
    color: #fff;
    font-size: 30px;
    padding-top: 30px;
    font-weight: bold;
}

body.page-address-validation a.logo-home.catalog {
    display: none;
}

body.page-address-validation a.logo-home.start {
    display: flex !important;
}

.grecaptcha-badge {
    z-index: 1059 !important;
    display: none;
}

@media screen and (max-width: 991px) {
    .background-extra {
        display: none; /* Esconde a imagem em telas maiores */
    }
}

@media only screen and (min-width: 992px) {
    body div#maincontent {
        min-height: calc(100vh - 72px);
    }

    .modal {
        width: 100% !important;
    }

    /* Header Desktop */
    html,
    body {
        font-family: "Klavika Light";
        text-rendering: optimizeLegibility;
    }

    body {
        margin-top: 72px;
    }

    header {
        height: 72px;
        background-color: #fff;
        position: fixed;
        width: 100%;
        z-index: 1060;
        margin-top: -72px;
        border-bottom: 1px solid #E4E3DD;
    }

    .header-container {
        width: 100%;
        max-width: 1366px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        flex-direction: row;
        height: 72px;
        position: relative;
    }

    header .logo-home img {
        max-height: 45px;
        width: 100%;
    }

    .logo-header {
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    a.logo-home {
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    header .atendimento {
        display: flex;
        flex-direction: column;
        height: 100%;
        align-items: flex-start;
        justify-content: center;
        color: #fff;
        font-family: Klavika light;
    }

    header .atendimento p {
        margin: 0;
    }

    header .atendimento p:first-child {
        color: #E8B600;
        font-family: Klavika;
    }

    /* Footer Desktop */
    footer {
       display: none;
    }

    .footer-container.emb {
        margin-bottom: 73px;
    }

    body.product-list footer {
        display: block;
    }

    .dede-footer {
        display: none;
    }

    .logo-footer {
        display: block;
    }

    /* Address Validation Page */
    body.page-address-validation div#maincontent {
        min-height: unset;
    }

    body.page-address-validation form input:disabled,
    body.page-address-validation form select:disabled,
    .modal-change-address form input:disabled,
    .modal-change-address form select:disabled,
    body.page-checkout form input:disabled,
    body.page-checkout form select:disabled {
        opacity: 0.8;
        background-color: #fff;
    }

    body.page-address-validation {
        background-color: #590C0A;
        font-family: Klavika Light;
    }

    body.page-address-validation p.note {
        font-size: 13px;
        color: #AE2E2A;
    }

    body.page-address-validation form,
    .modal-change-address form {
        display: flex;
        flex-direction: column;
    }

    body.page-address-validation.form-started .address-form.form h1 {
        display: none;
    }

    body.page-address-validation:not(.form-started) form>label:first-child input {
        height: 100px;
        font-size: 24px;
        text-align: center;
        text-indent: 0;
        border-radius: 20px;
    }

    body.page-address-validation:not(.form-started) form>label:first-child input::placeholder {
        color: #000;
    }

    body.page-address-validation form input,
    body.page-address-validation form select,
    .modal-change-address form input,
    .modal-change-address form select,
    body.page-checkout form input[type=text],
    body.page-checkout form input[type=email],
    body.page-checkout form input[type=tel],
    body.page-checkout form select {
        width: 100%;
        height: 40px;
        border: none;
        border-bottom: 1px solid #948F7B;
        text-indent: 10px;
        margin: 0 auto;
        color: #32302D;
        font-family: 'Klavika Medium';
        padding: 0;
    }

    body.page-checkout form input:-webkit-autofill,
    body.page-address-validation form input:-webkit-autofill,
    .modal-change-address form input:-webkit-autofill {
        box-shadow: 0 0 0 1000px #ffffff inset !important;
        -webkit-text-fill-color: #32302D !important;
        transition: background-color 5000s ease-in-out 0s;
    }

    body.page-address-validation .invalid-feedback,
    .modal-change-address .invalid-feedback {
        font-size: 100%;
        position: absolute;
        color: #000000;
        width: 200px;
        top: 100%;
        z-index: 2;
        background: #fff;
    }

    body.page-address-validation form label,
    .modal-change-address form label {
        display: flex;
        flex-direction: column;
        padding-bottom: 0px;
    }

    body.page-address-validation .address2.required span:after {
        content: "*";
    }

    body.page-address-validation form label span,
    .modal-change-address form label span,
    body.page-checkout form label span {
        font-size: 16px;
        font-family: 'Klavika Medium';
        color: #867F6C;
    }

    body.page-address-validation .terms-text a,
    .modal-change-address .terms-text a {
        color: #fff;
    }

    body.page-checkout .terms-text a {
        color: #AE2E2A;
    }

    body.page-address-validation input#terms,
    .modal-change-address input#terms,
    body.page-checkout input#terms {
        margin: unset;
    }

    body.page-address-validation .form,
    .modal-change-address .form {
        display: flex;
        align-items: center;
        flex-direction: column;
        justify-content: flex-start;
    }

    body.page-address-validation input.button,
    .modal-change-address input.button {
        width: 180px;
        height: 50px;
        border: 2px solid #E8B600;
        background-color: #E8B600;
        font-size: 30px;
        font-family: Klavika Medium;
        color: #373737;
        line-height: 47px;
        margin: 0 auto;
        margin-top: 50px;
        border-radius: 0px;
    }

    body.page-address-validation .control,
    .modal-change-address .control {
        display: flex;
        width: 100%;
        justify-content: space-between;
    }

    body.page-address-validation .control.triple label,
    .modal-change-address .control.triple label {
        width: 31%;
    }

    body.page-address-validation .control label,
    .modal-change-address .control label {
        width: 48%;
    }

    body.page-address-validation .control label span,
    .modal-change-address .control label span {
        width: 100%;
    }

    body.page-address-validation label.full-field.address2.complement,
    .modal-change-address label.full-field.address2.complement {
        display: flex;
        align-items: flex-end;
    }

    body.page-address-validation a.home-button {
        text-align: center;
    }

    body.page-address-validation .address-form.form h1 p {
        width: 100%;
        font-family: Klavika Medium !important;
        font-size: 55px;
        color: #d6b63b;
        text-align: left;
        margin: 0;
        padding: 0;
        font-weight: bold;
        text-transform: uppercase;
    }

    body.page-address-validation .address-form.form h1 {
        margin-bottom: 60px;
    }

    body.page-address-validation .address-form.form h1 p.white {
        color: #fff;
    }

    body.page-address-validation .address-form.form h1+p {
        width: 100%;
        text-align: left;
        margin: 0;
        padding: 0;
        padding-bottom: 20px;
    }

    body.page-address-validation input#terms,
    .modal-change-address input#terms,
    body.page-checkout input#terms {
        height: 15px;
        width: 15px;
        box-shadow: none;
    }

    body.page-address-validation label.full-field.terms,
    .modal-change-address label.full-field.terms,
    body.page-checkout label.full-field.terms {
        flex-direction: row;
        align-items: flex-start;
        display: flex;
    }

    body.page-address-validation label.full-field.terms a,
    .modal-change-address label.full-field.terms a,
    body.page-address-validation label.full-field.terms a,
    label.full-field.terms span {
        font-size: 16px;
    }

    body.page-address-validation .terms-text,
    .modal-change-address .terms-text,
    body.page-checkout .terms-text {
        line-height: 15px;
        padding-left: 10px;
    }

    body.page-address-validation button#callGeocode,
    .modal-change-address button#callGeocode {
        background-color: #AE2E2A;
        border: none;
        color: #fff;
        margin: 32px auto 0;
        border-radius: 4px;
        font-family: 'Klavika Medium';
        font-size: 16px;
        width: 100%;
        height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        cursor: pointer;
    }

    body.page-address-validation button#callGeocode:disabled,
    .modal-change-address button#callGeocode:disabled {
        color: #C8C8C8;
        background-color: #DFDFDF;
    }

    body.page-address-validation button#callGeocode:disabled svg path,
    .modal-change-address button#callGeocode:disabled svg path {
        fill: #C8C8C8;
    }

    body.page-address-validation header,
    body.page-address-validation footer {
        display: none;
    }

    body.page-address-validation header.header-intro {
        display: contents;
        position: relative;
        background-color: transparent;
        margin-top: 0;
        border: none;
    }

    body.page-address-validation {
        margin-top: 0 !important;
    }

    body.page-address-validation div#divAddress {
        max-height: 100vh;
        overflow-y: auto;
        flex: 1;
    }
    
    .bgplans {
        height: 40vh;
        margin-bottom: -20px;
    }

    body.page-address-validation .content {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    body.page-address-validation:not(.form-started) form>label:first-child span {
        width: 100%;
        font-family: Klavika Medium !important;
        font-size: 40px;
        color: #ffffff;
        text-align: center;
        margin: 0;
        padding: 0;
        margin-bottom: 20px;
    }

    body.page-address-validation a.sou-cliente {
        font-family: 'Klavika Medium';
        color: #f4b41a;
        border: 1px solid #F4BA44;
        border-radius: 10px;
        padding: 0px 10px;
        text-transform: uppercase;
        background-color: #a11e22;
        z-index: 3;
    }

    body.page-address-validation .cliente {
        display: flex;
        align-items: flex-start;
        justify-content: flex-end;
        width: 90%;
        margin-bottom: auto;
        margin-top: 20px;
    }

    body.page-address-validation .content footer {
        display: block;
        background-color: transparent;
        z-index: 1;
        position: absolute;
        bottom: 0;
    }

    body.page-address-validation .content footer .footer-container>* {
        width: 100%;
    }

    /* Product List */
    body.product-list {
        background-size: 100% 100%;
        background-repeat: no-repeat;
        background-position: center;
        background-attachment: fixed;
    }

    body.product-list {
        background-color: #EDEDED;
    }

    body.product-list .headercart {
        display: block;
    }

    body.product-list .minicart {
        position: unset !important;
    }

    body.product-list div#maincontent {
        min-height: calc(100vh - 72px);
        width: 100%;
        margin: 0 auto;
        display: flex;
        align-items: flex-start;
        padding: 0 32px;
        padding-top: 32px;
        flex-direction: column;
        background-color: #fff;
    }

    body.product-list .minicart .cart {
        padding: 0;
    }

    body.product-list .minicart p.title-txt {
        font-size: 24px;
        font-family: 'Klavika Medium';
        color: #000;
        margin: 0;
        padding: 0;
    }

    body.product-list .cart-title,
    body.product-list .title {
        width: 100%;
        display: flex;
    }

    body.product-list .title {
        flex-flow: column wrap;
        padding: 40px 64px 32px;
    }

    body.product-list .cart-title {
        justify-content: space-between;
        align-items: center;
    }

    body.product-list .close-cart,
    body.product-list .js-product-detail-close,
    .js-address-change-close {
        margin-left: auto;
        background-color: transparent;
        border: none;
    }

    body.product-list .js-product-detail-close,
    .js-address-change-close {
        margin: 32px 32px 0 auto;
    }

    body.product-list .close-cart i,
    body.product-list .js-product-detail-close i,
    .js-address-change-close i {
        font-size: 18px;
        color: #AE2E2A;
    }

    body.product-list .container.cart div.cart-content {
        width: 100%;
        padding: 0 64px;
    }
    
    .cart-overflow {
        height: 100%;
        max-height: calc(100vh - 219px);
        overflow: auto;
    }

    body.product-list .container.cart {
        display: flex;
        flex-direction: column;
        height: 100%;
        background-color: #fff;
    }

    body.product-list .minicart-footer,
    body.product-list .emptyminicart-footer {
        margin-top: auto;
        border-color: #E4E3DD;
        display: flex;
        width: 100%;
        padding: 20px 64px;
        flex-direction: row;
        align-content: center;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    body.product-list .category-nav {
        display: flex;
        text-align: center;
        align-items: center;
        gap: 8px;
    }

    body.product-list .item-image {
        margin: 0 !important;
        padding: 0 !important;
        flex-shrink: unset;
    }

    .product-line-item .product-name span {
        font-family: 'Klavika Bold' !important;
        font-size: 17px;
        color: #373737;
    }

    body.product-list .minicart img.product-image {
        max-width: 42px;
        max-height: 42px;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.product-list .product-name,
    body.page-checkout .right .card-body.order-total-summary div.product-name {
        font-size: 24px;
        margin-right: auto;
    }

    body.product-list .product-options {
        font-size: 14px;
    }

    body.product-list .col-4.line-item-quantity {
        max-width: 50px;
        padding: 0;
    }

    body.product-list ul.product-services {
        display: flex;
        justify-content: center;
        flex-direction: column;
    }

    body.product-list ul.product-services img {
        border-radius: 6px;
        max-width: 32px;
        max-height: 32px;
    }

    body.product-list ul.product-services li {
        margin: 0 5px;
    }

    body.product-list .product-options.active .long-desc {
        height: auto !important;
    }

    body.product-list span.ver-mais {
        text-transform: uppercase;
        font-family: 'Klavika Medium';
        color: #373737;
        cursor: pointer;
    }

    body.product-list .product-options ul {
        padding: 0;
        margin: 0;
    }

    body.product-list .product-options ul li {
        list-style: none;
    }

    body.product-list .product-options ul li i,
    body.product-list .product-options ul li img,
    body.product-list .product-options .infowifi,
    body.product-list .product-options ul.product-services {
        display: none !important;
    }

    body.product-list .product-price .pricing {
        font-weight: normal;
        font-family: 'Klavika Light';
        text-align: right;
    }

    body.product-list .minicart .card {
        border: none !important;
    }

    body.product-list .minicart .card hr {
        display: none;
    }

    body.product-list p.sub-total-label {
        font-size: 18px !important;
        font-family: 'Klavika Medium';
        font-weight: normal !important;
    }

    body.product-list .sub-total {
        /* font-size: 24px !important; */
        font-size: 13pt;
        color: #AE2E2A;
        font-family: 'Klavika Medium';
    }

    body.product-list .minicart-footer div div,
    body.product-list .emptyminicart-footer div div {
        padding: 0;
    }

    body.product-list .row.estimated-total {
        display: flex;
        align-items: center;
        width: 100%;
        margin: 0 auto;
    }

    .empty-cart .checkout-continue div {
        background-color: #de7c81;
        border-color: #de7c81;
        border-radius: 0px;
        font-size: 13px;
        font-family: 'Klavika Medium';
        pointer-events: none;
        color: #fff;
        width: 256px;
        margin: 0 auto;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 20px;
        border-radius: 25px;
    }

    body.product-list .checkout-continue a.btn {
        background-color: #AE2E2A;
        border-color: #AE2E2A;
        border-radius: 4px;
        font-size: 16px;
        line-height: 16px;
        font-family: 'Klavika Medium';
        color: #fff;
        width: 220px;
        margin: 0 auto;
        padding: 15px 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .minicart .product-summary {
        max-height: -webkit-fill-available !important;
    }

    body.product-list a.btn.btn-primary.btn-block.checkout-btn:hover {
        background-color: #AE2E2A;
        border-color: #AE2E2A;
        color: #fff;
    }

    body.product-list .item .pdp-link a {
        font-family: 'Klavika Medium';
        font-size: 26pt;
        color: #AE2E2A;
        font-weight: 700;
        pointer-events: none;
    }

    /* body.product-list .item .pdp-link a .break {
        font-family: 'Klavika Medium';
        font-size: 46px !important;
        font-weight: bold;
        pointer-events: none;
        display: inline-block;
        width: 100%;
        line-height: 0.8;
    } */

    body.product-list .item .pdp-link {
        text-align: center;
        margin-top: 10px;
        min-height: 86px;
    }

    body.product-list .price span {
        font-family: 'Klavika Medium';
        color: #35302D;
        font-size: 50px;
        display: block;
        align-items: center;
        justify-content: center;
        width: fit-content;
        padding: 0px 5px;
        margin: 0px auto;
        border-radius: 25px;
        line-height: 1;
    }

    body.product-list .price span.value::before {
        content: "R$";
        font-size: 28px;
        font-style: italic;
        font-family: 'Klavika Light';
        font-weight: bold;
    }

    body.product-list .item ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    body.product-list .item ul.detalhes-produto li img {
        display: none;
    }

    body.product-list .item ul.product-services {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: row;
        margin: 8px 0;
    }

    body.product-list hr.divisor {
        border: 1px solid #AE2E2A;
    }

    body.product-list .product ul.services {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    body.product-list .product ul.services li {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 10px 10px 10px 0px;
    }

    body.product-list .product ul.services li img {
        max-width: 40px;
        max-height: 40px;
        filter: drop-shadow(0px 1px 2px #AE2E2A9e);
    }

    body.product-list .product ul.services li:last-child {
        margin-right: 0px;
    }

    body.product-list .cart-button a {
        background-color: #AE2E2A;
        border-radius: 0;
        color: #fff;
        font-family: 'Klavika Medium';
        font-size: 13px;
    }

    body.product-list a.conditions {
        font-size: 13px;
        width: 100%;
        display: inline-block;
        text-align: center;
        color: #3D3D3D;
        text-decoration: underline;
        font-family: 'Klavika Medium';
    }

    body.product-list .product-tile .tile-body {
        padding: 0 !important;
    }

    body.product-list .product-tile .tile-body .image-title {
        display: flex;
        align-items: center;
        justify-content: space-evenly;
    }

    body.product-list .product-tile .tile-body .image-title>* {
        margin: 0;
        align-items: center;
        justify-content: center;
        display: flex;
    }

    body.product-list .product-tile .image-container a.product-image {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        margin: 0;
    }

    body.product-list .product-tile .image-container a.product-image img {
        margin: 0;
        padding: 0;
    }

    body.product-list .product-tile .image-title .image-container {
        width: 20%;
        height: auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    body.product-list .item {
        margin: 32px 0;
        display: flex;
        flex-direction: column;
        background-color: #FFFFFF;
        border-radius: 16px;
        position: relative;
        border: 2px solid #E6E6E6;
    }

    body.product-list .item.promo-border {
        border-color: #F4BA44;
        border-top-right-radius: 0px;
        border-top-left-radius: 0px;
        background-color: #F4BA44;
        border-top: none;
    }

    body.product-list .item.promo-border .product {
        margin: 2px;
    }

    body.product-list .product-list:not(.slick-slider) .item {
        width: calc(100%/3 - 33px);
    }

    body.product-list p.item-message {
        font-size: 12px;
        text-align: center;
        min-height: 18px;
        color: #35302D;
        font-style: italic;
        margin: 0;
    }

    body.product-list .cart-button {
        margin: 10px 0;
    }

    .product-list.slider {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    body.product-list .homepage-product-listing .product-list .item:not(:last-child) {
        margin-right: 20px;
    }

    body.product-list .required-text {
        font-size: 15px;
        color: #AE2E2A;
        font-family: 'Klavika Light';
        width: 100%;
        text-align: right;
        display: inline-block;
    }

    body.product-list .required-text.tax {
        text-align: left;
        display: block;
        width: calc(100% - 100px);
        margin: 0 auto;
        margin-top: -50px;
        margin-bottom: 0px;
        color: #fff;
        font-size: 14px;
    }

    body.product-list .homepage-product-listing .item.combo .image-container {
        display: none;
    }

    body.product-list .homepage-product-listing .item.service .pdp-link,
    body.product-list .homepage-product-listing .item.service a.conditions {
        display: none;
    }

    body.product-list .homepage-product-listing .item.ponto .image-container,
    body.product-list .homepage-product-listing .item.ponto a.conditions {
        display: none;
    }

    body.product-list .homepage-product-listing .item.ponto .pdp-link a {
        color: #373737;
    }

    body.product-list .product-tile .image-container a .tile-image {
        width: auto;
        margin: 0 auto;
        display: block;
        margin-bottom: 20px;
        max-height: 60px;
        max-width: 100%;
    }

    body.product-list .product-tile .image-container {
        width: 100%;
        height: 80px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    body.product-list div.product-list:not(.slider) {
        padding: 0px 43px;
    }

    body.product-list .product {
        height: 100%;
        display: flex;
        flex-direction: column;
        background-color: #fff;
        border-radius: 14px;
    }

    body.product-list .product-tile {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        border: none;
        position: relative;
        padding: 16px;
    }

    body.product-list .product-tile .price {
        margin-top: auto;
    }

    body.product-list span.tagText {
        position: absolute;
        right: 0;
        top: -7px;
    }

    body.product-list span.promoText i {
        margin-right: 10px;
        font-size: 17px;
    }

    body.product-list span.promoText span {
        font-family: 'Klavika Bold';
        padding-right: 5px;
    }

    body.product-list span.promoText {
        background-color: #F4BA44;
        text-align: center;
        color: #35302d;
        font-family: 'Klavika Light';
        font-size: 16px;
        font-weight: bold;
        height: 33px;
        line-height: 33px;
        margin: 0 auto;
        margin-top: -33px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(100% + 8px);
        border-top-left-radius: 16px;
        border-top-right-radius: 16px;
        margin-left: -4px;
        border-color: #F4BA44;
    }

    body.product-list .item.black-friday span.promoText {
        background-color: #35302d !important;
        color: #F4BA44 !important;
        border-color: #35302d !important;
    }

    body.product-list .item.promo-border.black-friday {
        border-color: #35302d !important;
        background-color: #35302d !important;
    }

    body.product-list span.promoText img {
        display: inline-block;
    }

    body.product-list .infowifi {
        display: inline-block;
        border: 2px solid;
        color: #f3b300;
        padding: 11px 8px;
        border-radius: 25px;
        font-family: 'Klavika Bold';
        font-size: 20px;
        line-height: 0;
        position: absolute;
        right: 0;
        cursor: default;
    }

    body.product-list .infowifi .infowifitext {
        visibility: hidden;
        position: absolute;
        width: 120px;
        background-color: #F4BA44;
        color: #35302d !important;
        text-align: center;
        padding: 5px 5px;
        border-radius: 6px;
        z-index: 1;
        opacity: 0;
        transition: opacity .6s;
        line-height: 1;
        font-size: 13px;
    }

    body.product-list .infowifi:hover .infowifitext {
        visibility: visible;
        opacity: 1;
    }

    body.product-list .infowifi-bottom {
        top: 135%;
        left: 50%;
        margin-left: -60px;
    }

    body.product-list .infowifi-bottom::after {
        content: "";
        position: absolute;
        bottom: 100%;
        left: 50%;
        margin-left: -5px;
        border-width: 5px;
        border-style: solid;
        border-color: transparent transparent #F4BA44 transparent;
    }

    /* Slider */
    button.slick-prev.slick-arrow:before {
        content: "\f053";
        font-family: 'Font Awesome 5 Free';
        font-weight: 700;
        font-size: 50px;
    }

    button.slick-prev.slick-arrow,
    button.slick-next.slick-arrow {
        font-size: 0px;
        background-color: transparent;
        border: none;
    }

    button.slick-prev.slick-arrow:focus,
    button.slick-next.slick-arrow:focus {
        outline: none !important;
    }

    button.slick-next.slick-arrow:before {
        content: "\f054";
        font-family: 'Font Awesome 5 Free';
        font-weight: 700;
        font-size: 50px;
    }

    .slick-track {
        margin-left: 0 !important;
    }

    .slick-list.draggable {
        width: 100%;
        overflow: hidden;
        margin: 0 auto;
    }

    button.slick-prev.slick-arrow {
        left: 0;
        top: 0;
    }

    button.slick-next.slick-arrow {
        top: 0;
        right: 0;
    }

    button.slick-prev.slick-arrow,
    button.slick-next.slick-arrow {
        font-size: 0px;
        background-color: transparent;
        border: none;
        width: 50px !important;
        position: absolute;
        height: 100%;
        background-color: transparent;
        color: #f9f9f9;
    }

    /* Page Checkout */
    body.page-checkout div#maincontent {
        background-repeat: repeat;
        background-size: cover;
        background-color: #fff;
    }

    body.page-checkout .right h2.card-header-custom {
        font-size: 24px;
        font-family: 'Klavika Medium';
        margin: 0;
        padding: 0;
    }

    body.page-checkout .qty-display {
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }

    body.page-checkout .qty-display span {
        padding-right: 5px;
    }

    body.page-checkout .right .card-header {
        border: none;
        font-size: 24px;
        padding: 0;
        padding: 32px 40px 0;
        width: 100%;
        display: flex;
        align-items: center;
    }

    body.page-checkout .valor-total {
        display: flex;
        flex-direction: column;
    }

    body.page-checkout .valor-total p,
    body.page-checkout p.valor-item {
        margin: 0;
    }

    body.page-checkout .valor-total-txt {
        font-size: 20px;
        font-family: 'Klavika Medium';
        font-weight: 700;
    }

    body.page-checkout .valor-eco {
        font-size: 14px;
    }

    body.page-checkout .right>.card {
        border: none;
        height: 100%;
        margin: 0;
        max-height: max-content;
        width: 100%;
        min-height: 616px;
        display: flex;
        flex-direction: column;
        z-index: 2;
    }

    body.page-checkout .container-checkout {
        display: flex;
    }

    body.page-checkout .left {
        width: 55%;
    }

    body.page-checkout .right {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        width: 45%;
        border-left: 1px solid #E6E6E6;
        min-height: 616px;
        height: max-content;
        z-index: 2;
    }

    body.page-checkout .right img.product-image {
        max-width: 32px;
        max-height: 32px;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-checkout .card-footer .leading-lines {
        display: none;
    }

    body.page-checkout .right>.card .card-footer {
        border-radius: 0;
        border-top: 1.5px solid #E4E3DD;
        padding: 20px 40px;
    }

    body.page-checkout .right .card hr {
        display: none;
    }

    body.page-checkout .right .card .item-image {
        margin: 0 !important;
        padding: 0 !important;
        flex-shrink: unset;
    }

    body.page-checkout .right .card-body.order-total-summary {
        width: 100%;
        display: flex;
        flex-direction: column;
        padding: 24px 40px 0
    }

    body.page-checkout .right .card-body.order-total-summary div {
        padding: 0;
        margin: 0;
        border: 0;
    }

    body.page-checkout .right .card img.product-image {
        max-width: 32px;
        max-height: 32px;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-checkout .product-options {
        width: 60%;
        overflow: hidden;
        font-size: 11px;
    }

    body.page-checkout .product-options.active {
        max-height: unset !important;
        overflow: visible !important;
    }

    body.page-checkout .product-options ul {
        padding: 0;
        margin: 0;
    }

    body.page-checkout .product-options ul li {
        list-style: none;
    }

    body.page-checkout .product-options ul li i,
    body.page-checkout .product-options ul li img,
    body.page-checkout .product-options .infowifi,
    body.page-checkout .product-options ul.product-services {
        display: none !important;
    }

    body.page-checkout .ver-mais:hover:after {
        text-decoration: underline;
    }

    body.page-checkout .ver-mais:after {
        content: "Ver Mais";
    }

    body.page-checkout .ver-mais.active:after {
        content: "Ver Menos";
    }

    body.page-checkout .ver-mais {
        text-transform: uppercase;
        font-size: 12px;
        font-family: 'Klavika Bold';
        cursor: pointer;
    }

    body.page-checkout.ver-mais:hover {
        text-decoration: underline;
    }

    body.page-checkout .right .card .product-price .pricing {
        font-weight: normal;
        font-family: 'Klavika Light';
        text-align: right;
    }

    body.page-checkout .right .card-body.order-total-summary div.row:not(.grand-total) {
        display: none;
    }

    body.page-checkout .right span.grand-total-sum {
        font-size: 40px;
        color: #35302D;
        font-family: 'Klavika Medium';
        font-weight: 700;
    }

    body.page-checkout .right .remove-line-item.product-remove {
        display: none;
    }

    body.page-checkout .right .card-body.order-total-summary .products {
        margin: 0;
    }

    body.page-checkout .right .leading-lines .start-lines:before {
        content: "" !important;
    }

    body.page-checkout .row.grand-total.leading-lines p.order-receipt-label span {
        font-size: 18px !important;
        font-family: 'Klavika Medium';
        font-weight: normal !important;
        background-color: #f9f9f9;
    }

    body.page-checkout .left .card-header .edit-button {
        display: none;
    }

    body.page-checkout .row.grand-total.leading-lines {
        display: flex;
        align-items: center;
        width: 100%;
        justify-content: space-between;
    }

    body.page-checkout .container {
        max-width: 1366px;
        padding: 0 24px;
    }

    body.page-checkout .left .card-header,
    body.page-checkout .left .card {
        border: none;
        padding: 0;
        margin: 0;
    }

    body.page-checkout span.ver-mais {
        display: none;
    }

    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.ghost.customer,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.customer-section,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card-header.clearfix,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.ghost.payment,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.payment-form,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.shipping-summary,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.shipping-section,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.ghost.shipping,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.payment-summary>.card-body,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] button.submit-shipping,
    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] button.submit-payment {
        display: none;
    }

    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] button.place-order {
        pointer-events: none;
    }

    body.page-checkout div#checkout-main[data-checkout-stage*="submited"] .card.payment-summary {
        display: block !important;
    }

    body.page-checkout div#checkout-main[data-checkout-stage*="payment"] .shipping-section {
        display: none;
    }

    body.page-checkout div#checkout-main[data-checkout-stage*="payment"] .shipping-section input {
        pointer-events: none;
    }

    body.page-checkout .summary {
        width: 100%;
        max-width: 551px;
    }

    ul.nav.nav-tabs.nav-fill.payment-options {
        border: none;
    }

    body.page-checkout .shipping-method-block,
    body.page-checkout .gift-message-block,
    body.page-checkout .customer-address,
    body.page-checkout .card-body.multi-shipping-checkbox-block,
    body.page-checkout .left .card-header .edit-button,
    body.page-checkout fieldset.billing-address-block,
    body.page-checkout fieldset.contact-info-block,
    body.page-checkout div#checkout-main[data-checkout-stage*="payment"] .card.shipping-summary,
    body.page-checkout div#checkout-main[data-checkout-stage*="placeOrder"] .card.shipping-summary,
    body.page-checkout div#checkout-main[data-checkout-stage*="placeOrder"] .card.payment-summary>.card-header.clearfix,
    body.page-checkout div#checkout-main[data-checkout-stage*="placeOrder"] .card.payment-summary>.card-body {
        display: none;
    }

    body.page-checkout .calendar i {
        position: absolute;
        right: 20px;
        top: 41px;
        font-size: 20px;
        cursor: pointer;
    }

    body.page-checkout .calendar i:hover {
        opacity: 0.7;
    }

    /* Page Success */
    body.page-success .bg-desktop {
        background-image: url('../images/sucesso-bg-1.png');
        background-size: cover;
        position: fixed;
        top: 0;
        left: 0;
        width: 45%;
        height: 100%;
        min-height: 100vh;
    }

    body.page-success .success-div {
        background-image: url('../images/sucesso-bg-2.png');
        background-size: cover;
        position: fixed;
        top: 0;
        right: 0;
        width: 55%;
        height: 100%;
        min-height: 100vh;
        padding: 56px 60px;
    }

    body.page-success .success-subdiv {
        padding: 0 24px;
    }

    .success-box {
        padding: 16px 24px 24px;
        margin-bottom: 56px;
    }

    .logo-sucesso {
        margin: 0 0 40px;
    }

    .credit .logo-sucesso {
        margin: 0 0 164px;
    }

    /* Paginas Custom */
    body.page-custom div#maincontent {
        width: 100%;
        max-width: 1366px;
        margin: 0 auto;
        padding: 30px 10px;
        max-height: calc(100vh - 72px);
        overflow-y: auto;
        text-align: justify;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div {
        width: fit-content;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: white;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div .content {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        flex: 1;
        margin-left: 10px;
        color: black;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div .content span {
        line-height: 15px;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div input {
        margin-left: 10px;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div .content span.times {
        font-size: 16px;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div.disabled {
        cursor: not-allowed;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div.disabled span {
        color: #9f9f9f;
    }

    body.page-checkout div#billingSchedule fieldset#scheduleRadio>div.disabled input {
        cursor: not-allowed;
    }

    /* Modal Produtos */
    div#showChannelModal {
        position: fixed;
        width: 60%;
        height: calc(100vh - 170px);
        background-color: #fffffff0;
        z-index: 999999999;
        display: flex;
        flex-direction: column;
        align-items: center;
        box-shadow: 4px 2px 6px #F4BA4473;
        border: 1px solid #F4BA44;
    }

    div#showChannelModal .modal-border {
        height: 50px;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    div#showChannelModal span#closeModal {
        font-family: 'Klavika Medium';
        font-size: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 20px;
    }

    div#showChannelModal span#closeModal i {
        font-size: 30px;
        margin-right: 10px;
    }

    div#showChannelModal .modal-container {
        width: 100%;
        flex: 1;
        display: flex;
        align-items: flex-start;
        justify-content: center;
    }

    div#showChannelModal iframe#channel-iframe {
        width: 95%;
        display: block;
        height: 95%;
        background-color: #fff;
    }

    div#showChannelModal span#closeModal {
        cursor: pointer;
    }

    div#showChannelModal.hidden {
        opacity: 0;
        height: 0px;
        overflow: hidden;
    }

    .minicart .minicart-link {
        border: 1.5px solid #E5E1CF;
        border-radius: 10px;
    }

    .produtos-tab h1,
    .container-products h2,
    .gostou p {
        font-size: 32px;
    }

    .container-minicart.active {
        display: block;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 2000;
    }

    .full-width {
        width: calc(100% + 64px);
        margin: 0 -32px;
        background: #E5E1CF;
        padding: 64px 0 128px;
    }

    .full-width.produtos,
    .full-width.produtos-tab {
        padding: 0;
    }

    #maincontent > div.full-width.produtos-tab,
    #maincontent > div.full-width:nth-of-type(2),
    #maincontent > div.full-width.faq {
        background-color: #fff;
    }

    .minicart .popover {
        min-width: 671px;
        max-width: 671px;
        height: 100vh;
    }

    .minicart .estimated-total {
        margin: 0;
        width: 315px;
        padding-right: 60px;
    }

    .cart-resume .valor-total,
    .modal-detalhes .modal-valor-total,
    .minicart-footer .valor-total {
        align-items: center;
    }

    body .produtos-tab p {
        font-size: 18px;
    }

    .change-address {
        margin: 0 40px 0 auto;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .change-address p {
        margin: 0 8px 0 0;
    }

    .modal-change-address {
        padding-bottom: 64px;
    }
}

body.product-list .item ul:first-of-type li {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
    margin-left: 10px;
}

/* Classes de estilização do natal de 2022 
   Destaque do título do produto
*/
.featured-title {
    font-size: 30pt;
    pointer-events: none;
    text-align: center !important;
    font-family: 'Klavika Medium' !important;
}

.featured-title a {
    color: #AE2E2A !important;
    font-weight: bolder;
    -webkit-text-stroke: #AE2E2A;
    display: flex;
    flex-direction: column;
}

.featured-title .featured-title-name {
    -webkit-text-stroke-width: 2px;
}

.featured-title .featured-title-subtitle {
    font-size: 20pt;
    position: relative;
    top: -10px;
}

.container {
    max-width: 1366px;
    padding: 0 24px;
}

.recommendation-container {
    margin-bottom: 8px;
    position: relative;
}

.recommendation-container label {
    width: 100%;
    background-color: #E5E1CF;
    padding: 8px 8px 8px 28px;
    border-radius: 4px;
    color: #292522;
    font-family: 'Klavika Medium';
    font-size: 16px;
    line-height: 16px;
    margin: 0;
}

.recommendation-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkmark {
    position: absolute;
    top: 8px;
    left: 8px;
    height: 16px;
    width: 16px;
    background-color: #FFF;
    border: 1px solid #C8C8C8;
    border-radius: 4px;
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.recommendation-container label:hover input ~ .checkmark,
.recommendation-container input:checked ~ .checkmark {
    background-color: #F4BA44;
    border-color: #F4BA44;
}

.recommendation-container input:checked ~ .checkmark:after,
.recommendation-container label:hover input ~ .checkmark::after {
    display: block;
}

.recommendation-container .checkmark:after {
    left: 5px;
    top: 2px;
    width: 5px;
    height: 8px;
    border: solid #292522;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.fa-shopping-bag:before {
    content: '' !important;
    width: 24px;
    height: 24px;
    display: block;
}

.minicart .minicart-link {
    display: flex;
    flex-flow: row;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
}

.minicart .minicart-quantity {
    top: unset;
    left: unset;
    background-color: transparent;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Klavika Medium';
}

body.product-list .item:has([data-inbasket="true"]) {
    border: 2px solid #35CF78;
}
.pagination {
    max-width: 342px;
    min-width: 300px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
}

.pagination p {
    margin: 0;
}

.pagination .prev.slick-arrow,
.pagination .next.slick-arrow {
    display: block;
    background-color: transparent;
    border: none;
    padding: 0;
}

.pagination:has(.slick-hidden) {
    display: none;
}

.pagination .prev svg path,
.pagination .next svg path {
    fill: #AE2E2A;
}

.pagination .prev.slick-disabled,
.pagination .next.slick-disabled {
    cursor: default;
}

.pagination .prev.slick-disabled svg path,
.pagination .next.slick-disabled svg path {
    fill: #CAC9BE;
}

body.product-list .homepage-product-listing {
    margin-bottom: 64px;
}

body.product-list .item:has([data-inbasket="true"]) .add-to-cart,
body.product-list .modal-detalhes.in-basket .add-to-cart {
    display: none;
}

body.product-list .item:has([data-inbasket="true"]) .added-to-cart,
body.product-list .modal-detalhes.in-basket .added-to-cart {
    display: flex;
}

body.product-list .item:has([data-inbasket="false"]) .add-to-cart:active,
body.product-list .modal-detalhes .add-to-cart:active {
    color: #fff;
    background-color: #35CF78;
    border-color: #35CF78;
}

body.product-list .item:has([data-inbasket="false"]) .added-to-cart,
body.product-list .modal-detalhes .added-to-cart   {
    display: none;
}

body.product-list .item.promo-border:has([data-inbasket="true"]),
body.product-list .item:has([data-inbasket="true"]) span.promoText {
    background-color: #35CF78;
    border-color: #35CF78;
}

.add {
    display: none;
}

.add-plus {
    display: block;
}

.full-width:nth-of-type(2) .add {
    display: block;
}

.full-width:nth-of-type(2) .add-plus {
    display: none;
}

.container-minicart {
    display: none;
}

.container-minicart.active .popover {
    display: block;
    border: none;
}

.minicart .minicart-quantity {
    color: #000;
}

.minicart:has(.popover:empty) .minicart-quantity {
    color: #8F8781;
}

.fa-shopping-bag:before {
    background-image: url('../images/desktop-cart.png');
}

.minicart:has(.popover:empty) .fa-shopping-bag:before {
    background-image: url('../images/desktop-cart-empty.png');
}

.minicart .popover:empty {
    display: none;
}

body.product-list .product .btn-primary,
body.product-list .modal-detalhes .btn-primary {
    border: 2px solid;
    border-color: #F4BA44;
    border-radius: 4px;
    background-color: #F4BA44;
    color: #000;
    width: 100%;
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

body.product-list .product .btn-primary span,
body.product-list .modal-detalhes .btn-primary span {
    font-size: 16px;
    font-family: 'Klavika Medium';
}

body.product-list .product .btn-secondary,
body.product-list .modal-detalhes .btn-secondary {
    font-size: 16px;
    font-family: 'Klavika Medium';
    border: 2px solid;
    border-color: #35CF78;
    border-radius: 4px;
    background-color: #35CF78;
    color: #FFF;
    width: 100%;
    opacity: 1;
    padding: 10px 0;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

body .produtos-tab h1,
.container-products h2 {
    font-family: 'Klavika Medium';
    color: #000;
    font-weight: 500;
    margin: 0;
}

.minicart {
    margin: 0;
}

.gostou {
    margin-top: 48px;
    display: none;
}

.full-width:nth-of-type(3) .gostou {
    display: block;
}

body .category-nav-container p,
body .produtos-tab p,
.container-products p,
.container-products p a {
    color: #000;
}

.category-nav a {
    color: #000 !important;
    font-family: 'Klavika Medium';
    font-size: 16px;
    padding: 16px 12px;
    border-radius: 124px;
    background-color: #F6F5F5;
    min-width: 150px;
    line-height: 16px;
}

.category-nav a.active,
.category-nav a:hover {
    background-color: #AE2E2A;
    color: #fff !important;
    text-decoration: none;
}

.cart-delete-confirmation-btn.btn-primary {
    background-color: #AE2E2A;
    border-color: #AE2E2A;
    border-radius: 25px;
}

.cart-delete-confirmation-btn.btn-primary:hover {
    color: #AE2E2A;
    border-color: #AE2E2A;
    background-color: #fff;
}

.accordion {
    max-width: 100%;
    margin: auto;
    background: #fff;
    overflow: hidden;
}

.accordion-item + .accordion-item {
    border-top: 1px solid #000;
}

.accordion-header {
    width: 100%;
    background: #fff;
    padding: 1rem;
    text-align: left;
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    cursor: pointer;
    font-family: 'Klavika Bold';
    font-size: 18px;
}

.arrow {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-right: 2px solid #AE2E2A;
    border-bottom: 2px solid #AE2E2A;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
    margin-left: 1rem;
}

.accordion-item.active {
    padding-bottom: 1rem;
}

.accordion-item.active .arrow {
    transform: rotate(-135deg);
    border-color: #F4BA44;
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
    padding: 0 1rem;
}

.accordion-content p {
    margin: 0;
}

.accordion-content.open {
    padding: 0 1rem;
}

.minicart .estimated-total {
    margin: 0;
}

.container-minicart.active .modal-background {
    display: block;
}

.container-minicart:has(.popover:empty) .modal-background {
    display: none;
}

.cart-resume {
    position: fixed;
    bottom: 0;
    width: 100%;
    right: 0;
    left: 0;
    padding: 12px 0;
    background-color: #fff;
    border-top: 1.5px solid #E4E3DD;
}

.cart-resume .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cart-resume .valor-total,
.modal-detalhes .modal-valor-total,
.minicart-footer .valor-total {
    display: flex;
    gap: 16px;
    color: #35302D;
}

.cart-resume .valor-total p,
.modal-detalhes .modal-valor p,
.minicart-footer .valor-total p {
    margin: 0;
}

.cart-resume .valor-total .valor-total-txt,
.modal-detalhes .modal-valor-total .modal-valor-total-txt,
.minicart-footer .valor-total .valor-total-txt {
    font-family: 'Klavika Bold';
    font-size: 14px;
    line-height: 140%;
    width: 43px;
}

.modal-detalhes .modal-valor-total .modal-valor-total-txt {
    width: 65px;
}

.cart-resume .valor-total .valor,
.modal-detalhes .modal-valor-total .modal-valores,
.minicart-footer .valor-total .valor {
    display: flex;
    flex-direction: column;
}

.cart-resume .valor-total .valor .valor-item,
.modal-detalhes .modal-valor-total .modal-valores .price span,
.modal-detalhes .modal-valor-total .modal-valores .price span.value::before,
.minicart-footer .valor-total .valor .valor-item {
    font-family: 'Klavika Bold';
    font-size: 32px;
    line-height: 120%;
    font-style: normal;
    padding: 0;
    margin: 0;
}

.cart-resume .valor-total .valor .valor-item span,
.minicart-footer .valor-total .valor .valor-item span {
    font-family: 'Klavika Medium';
    font-size: 18px;
}

.cart-resume .valor-total .valor .valor-eco,
.minicart-footer .valor .valor-eco {
    font-size: 14px;
    line-height: 100%;
}

.cart-resume a.cart-resume-btn{
    background-color: #AE2E2A;
    border-color: #AE2E2A;
    border-radius: 4px;
    font-size: 16px;
    line-height: 16px;
    font-family: 'Klavika Medium';
    color: #fff;
    width: 220px;
    padding: 15px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.data-checkout-stage[data-checkout-stage] .left button.submit-shipping,
.data-checkout-stage[data-checkout-stage] .left button.submit-payment,
.data-checkout-stage[data-checkout-stage] .left button.place-order,
.shipping-step1 {
    background-color: #AE2E2A;
    border-color: #AE2E2A;
    border-radius: 4px;
    font-size: 16px;
    line-height: 16px;
    font-family: 'Klavika Medium';
    color: #fff;
    width: 220px;
    padding: 15px 0;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.btn-block {
    display: flex;
    border: none;
}

.invalid-feedback {
    position: absolute;
    bottom: -20px;
}
/* SANDY para data da instalação */
.data-checkout-stage[data-checkout-stage=shipping] .left button.submit-shipping {
    display: flex;
}

.cart-resume a.cart-resume-btn:hover,
.data-checkout-stage[data-checkout-stage] .left button.submit-shipping:hover,
.data-checkout-stage[data-checkout-stage] .left button.submit-payment:hover,
.data-checkout-stage[data-checkout-stage] .left button.place-order:hover,
.shipping-step1:hover {
    background-color: #AE2E2A;
    border-color: #AE2E2A;
    color: #fff;
    text-decoration: none;
}

.ver-detalhes {
    text-align: center;
    display: none;
    margin: 8px 0 16px;
}

#maincontent > div.full-width:nth-of-type(2) .ver-detalhes,
#maincontent:has(#intro) > div.full-width:nth-of-type(3) .ver-detalhes {
    display: block;
}

.ver-detalhes a {
    color: #AE2E2A;
    font-size: 16px;
    line-height: 100%;
    text-decoration: underline;
}

.modal-detalhes .modal-dialog {
    width: 100%;
    max-width: 796px;
}

.modal-detalhes .modal-body {
    display: flex;
    flex-direction: column;
    padding: 0;
    background: #fff;
}

.modal-detalhes .modal-valor {
    align-items: center;
    padding: 20px 48px;
    display: flex;
    border-top: 1.5px solid #E4E3DD;
}

.modal-detalhes .cart-and-ipay {
    width: 219px;
    margin: 0 0 0 auto;
}

.modal-plano-header {
    width: 100%;
    padding: 0 48px 24px;
}

.termos-desk {
    margin: 0;
}

.termos-desk a {
    color: #AE2E2A;
    text-decoration: underline;
}

.modal-plano-nome {
    font-size: 32px;
    line-height: 130%;
    font-family: 'Klavika Medium';
}

body.product-list ul.product-services li.extra,
body.product-list ul.product-services li p,
body.product-list .modal-detalhes ul.product-services li.extra-n,
.container-products p.inclusos {
    display: none;
}

body.product-list .modal-detalhes ul.product-services li,
body.product-list .modal-detalhes ul.product-services li.extra {
    display: flex;
    width: 180px;
    text-align: left;
    flex-direction: column;
    gap: 8px;
    border: 1.5px solid #E6E6E6;
    padding: 16px;
    border-radius: 16px;
    margin: 0;
}

body.product-list .modal-detalhes ul.product-services li p {
    display: block;
    margin: 0;
    font-size: 12px;
    line-height: 100%;
}

body.product-list .modal-detalhes ul.product-services li p.servico {
    font-size: 16px;
}

.inclusos {
    font-size: 24px;
    margin: 32px 48px 16px 48px;
}

body.product-list ul.product-services li.extra-n {
    color: #F4BA44;
    border: 2px solid #F4BA44;
    border-radius: 5px;
    min-width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Klavika Bold";
}

.full-width.produtos-tab {
    margin-bottom: 16px;
}

.modal-detalhes .product-services-container::-webkit-scrollbar,
.cart .product-recommend-container::-webkit-scrollbar {
    display: none;
}

.modal-detalhes .product-services-container {
    margin-left: 48px;
    max-width: calc(100% - 48px);
    overflow-x: auto;
    cursor: -webkit-grab;
    cursor: grab;
    padding-bottom: 32px;
}

.cart .product-recommend-container  {
    margin-left: 64px;
    max-width: calc(100% - 64px);
    overflow-x: auto;
    cursor: -webkit-grab;
    cursor: grab;
    padding-bottom: 32px;
}

.modal-detalhes .detalhes-produto {
    padding: 0 48px;
    width: 100%;
    max-width: 580px;
    margin: 0;
    display: flex;
    flex-flow: row wrap;
    gap: 16px;
}

.modal-detalhes .detalhes-produto li {
    display: flex;
    width: calc(50% - 8px);
    min-width: calc(50% - 8px);
    align-items: center;
    gap: 16px;
}

body.product-list .modal-detalhes ul.product-services {
    padding: 0 48px 0 0;
    width: max-content;
    align-items: stretch;
    flex-direction: row;
    gap: 16px;
    margin: 0;
}

.cart .product-recommend {
    display: flex;
    padding: 0 64px 0 0;
    width: max-content;
    align-items: stretch;
    flex-direction: row;
    gap: 16px;
    margin: 0;
}

.cart .product-recommend .recommendation {
    display: flex;
    min-width: 132px;
    max-width: 132px;
    align-items: center;
    flex-direction: column;
    gap: 12px;
    border: 2px dashed #CAC9BE;
    padding: 16px;
    border-radius: 14px;
}

.cart .product-recommend .recommendation img {
    max-width: 100%;
    height: 34px;
    object-fit: contain;
}

.cart .product-recommend .recommendation.active {
    border-color: #9C9073;
    border-style: solid;
    background-color: #F8F7F4;
}

.cart .product-recommend .product-remove,
.cart .product-recommend .recommendation.active .add-recommended {
    margin: 0;
    display: none;
}

.cart .product-recommend .recommendation .add-recommended {
    color: #AE2E2A;
    border: 2px solid #AE2E2A;
    background: transparent;
    padding: 0 0 2px;
    font-size: 16px;
    line-height: 100%;
    font-weight: 700;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cart .clear-all {
    color: #AE2E2A;
    text-decoration: underline;
}

.cart .product-recommend .recommendation.active .product-remove {
    display: block;
}

.modal-detalhes .socio-incluso {
    width: 84px;
    height: 56px;
}

.modal-detalhes ul.socio {
    margin: 1rem 0 0;
    border-radius: 0 !important;
}

.detalhes-produto p {
    margin-bottom: 4px;
    line-height: 100%;
}

.detalhes-produto p b,
.product-services p b {
    font-family: "Klavika Medium";
}

.modal-detalhes .detalhes-produto p {
    margin: 0;
    line-height: 125%;
}

.modal-detalhes .detalhes-produto p b {
    font-size: 18px;
    width: 100%;
    display: block;
}

.efeito-place {
    position: relative;
    display: flex;
    height: 64px;
    justify-content: flex-end;
    flex-flow: column;
}

.form-label {
    margin-bottom: 0;
}

.efeito-place .form-label {
    position: absolute;
    left: 0;
    top: 45px;
    transform: translateY(-50%);
    font-size: 1rem;
    transition: top 0.2s ease, font-size 0.2s ease;
    pointer-events: none;
    z-index: 1;
    background-color: #fff;
    padding: 0 4px;
    width: 100%;
}

.efeito-place.is-value .form-label {
    top: 12px;
    transform: none;
    left: 5px;
    font-size: 0.75rem;
}

.efeito-place.postcode .form-label,
.efeito-place.postcode.is-value .form-label,
.efeito-place.birth .form-label,
.efeito-place.birth.is-value .form-label,
.efeito-place.install .form-label,
.efeito-place.install.is-value .form-label {
    left: 47px;
    width: calc(100% - 47px)
}

.efeito-place.tipo-moradia.is-valu .form-label {
    left: 10px;
}

.postcode input::placeholder,
.page-checkout .change-address,
.page-checkout .headercart {
    display: none;
}

.minicart .card-body,
body.page-checkout .left .card-body {
    padding: 0;
}

.left .card-header-custom {
    font-size: 24px;
    line-height: 130%;
    font-family: 'Klavika Medium';
    margin-bottom: 16px;
    margin-top: 16px;
}

.left .card-header-txt {
    line-height: 100%;
    margin-bottom: 24px;
}

.left .card-header-txt b {
    color: #AE2E2A;
    font-weight: 700;
}

.product-line-item-details,
body.page-checkout .right .card-body.order-total-summary div.product-line-item-details {
    max-width: 543px;
    margin: 0 0 24px;
    border: 2px solid #9C9073;
    background: #F8F7F4;
    border-radius: 8px;
    padding: 24px;
    width: 100%;
}

body.product-list .item-attributes,
body.page-checkout .right .card .item-attributes {
    display: flex;
    align-items: center;
    flex-flow: row wrap;
    width: 100%;
}

.checkout-continue {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

body.product-list .product-name p,
body.page-checkout .right .card .product-name p {
    margin-bottom: 8px;
    font-weight: 700;
    line-height: 100%;
    font-family: 'Klavika Medium';
}

body.product-list p.product-options,
body.page-checkout .right .card p.product-options {
    margin: 0;
    font-weight: 400;
    font-style: italic;
    font-family: 'Klavika Light';
    width: fit-content;
}

body.product-list .product-price .pricing p,
body.page-checkout .right .card .product-price .pricing p{
    margin: 0;
    line-height: 100%;
    font-size: 32px;
    font-weight: 700;
    font-family: 'Klavika Medium';
}

body.product-list .product-price .pricing p.apenas,
body.page-checkout .right .card .product-price .pricing p.apenas {
    font-size: 10px;
    text-align: left;
    margin-bottom: 4px;
}

body.product-list .product-price .pricing p.price-info,
body.page-checkout .right .card .product-price .pricing p.price-info {
    text-align: left;
    font-size: 13px;
    font-style: italic;
    font-weight: 400;
    font-family: 'Klavika Light';
}

.minicart .remove-btn {
    height: 20px;
    width: 17px;
    margin: 0;
    font-size: unset;
}

body.product-list .product-remove {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 12px;
}

body.product-list .product-remove i {
    font-size: 20px;
    color: #AE2E2A;
    display: block;
}

.turbine {
    display: flex;
    margin: 0 64px;
    justify-content: space-between;
    align-items: center;
}

body.page-checkout form label.address2 {
    margin-bottom: 32px;
}

#postcode {
  background-image: url('../images/cep-pin.png');
  background-repeat: no-repeat;
  width: 100%;
  padding-left: 40px;
  background-position: 8px;
}

body.page-address-validation .control.cep a,
.modal-change-address .control.cep a {
    font-family: 'Klavika Medium';
}

.back-checkout-link {
  color: #AE2E2A;
  text-decoration: underline;
  font-weight: bold;
  font-size: 14px;
}

.turbine p, .turbine p b {
    font-family: 'Klavika Medium';
}

.turbine .turbine-txt {
    font-size: 24px;
}

.change-address a {
    color: #AE2E2A;
    font-size: 16px;
    line-height: 100%;
    text-decoration: underline;
}

.modal-change-address {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
}

.change-address a span {
    font-family: 'Klavika Medium';
}

.modal-change-address form {
    width: 100%;
    max-width: 543px;
    margin: 0 auto;
}

.rec-valor {
    display: flex;
    gap: 4px;
}

.rec-valor p {
    font-family: 'Klavika Medium';
    margin: 0;
    line-height: 100%;
}

.rec-txt {
    width: 24px;
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.rec-txt {
    font-size: 14px;
}

.rec-apenas {
    font-size: 8px;
}

.rec-preco {
    font-size: 32px;
}

.left .next-step-button {
    background-color: transparent;
    box-shadow: none;
    position: unset;
}

body.page-checkout form input.input-disabled {
    pointer-events: none;
    background-color: #fff;
    opacity: 1;
    border: none;
}

body.page-checkout form input.birthDate,
body.page-checkout form input.installDate {
  background-image: url('../images/calendar.png');
  background-repeat: no-repeat;
  width: 100%;
  padding-left: 40px;
  background-position: 8px;
}

body.page-checkout label.full-field.terms {
    margin: 16px 0 32px;
}

body.page-checkout .left .best-date {
    font-family: 'Klavika Medium';
    color: #292522;
    font-size: 20px;
}

.morning {
    margin-bottom: 16px;
}

.page-custom .change-address,
.page-custom .headercart,
.page-warning .change-address,
.page-warning .headercart,
.page-error .change-address,
.page-error .headercart  {
    display: none;
}

.steps {
    display: flex;
    justify-content: space-between;
    margin: 24px 0;
    width: 100%;
    max-width: 551px;
}

.step {
    position: relative;
    width: 33.33%;
    display: flex;
}

.step.step-cep {
    width: 20%;
}

.step.step2 {
    justify-content: center;
}

.step.step-cep.step1,
.step.step-cep.step2 {
    justify-content: center;
    width: 30%;
}

.step.step3 {
    justify-content: flex-end;
}

.step span {
    width: 43px;
    height: 43px;
    border-radius: 50%;
    text-align: center;
    line-height: 43px;
    font-family: 'Klavika Medium';
    font-weight: 700;
    display: block;
    z-index: 2;
    position: relative;
    background: #E5E1CF;
    color: #fff;
}

.step span.img-check {
    display: none;
}

.step.feito span.img-check {
    display: block;
}

.step.feito span.txt-check {
    display: none;
}

.step.ativo span {
    background-color: #AE2E2A;
}

.step.feito span {
    background-color: #F4BA44;
}

.step hr {
    display: block;
    width: calc(150% - 20px);
    position: absolute;
    height: 2px;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    left: 50%;
    z-index: 1;
    border-top: 1px solid #E5E1CF;
}

.step.step-cep hr {
    width: 150%;
}

.step .hr1 {
    left: 20px;
}

.step.step-cep hr.hr2 {
    width: 100%;
}

.step.feito hr {
    border-color: #F4BA44;
}

.step-head {
    font-size: 32px;
    font-family: 'Klavika Medium';
    margin-top: 24px;
}

.desktop-summary .card-body {
    flex-direction: column;
}

.desktop-summary h3 {
    font-family: 'Klavika Medium';
    color: #DCA83D;
    font-size: 24px;
    line-height: 130%;
    margin-bottom: 16px;
}

.desktop-summary .card-body b {
    display: block;
    width: 100%;
    color: #867F6C;
    margin: 0;
    font-size: 11px;
    line-height: 100%;
    font-family: 'Klavika Medium';
}

.desktop-summary .card-body span {
    display: block;
    width: 100%;
    margin: 0 0 32px;
    font-size: 16px;
    line-height: 100%;
    color: #32302D;
    font-family: 'Klavika Medium';
}

body.page-success {
    margin: 0;
}

body.page-success div#maincontent {
    background: #590C0A;
    min-height: 100vh !important;
    padding: 0 !important;
}

body.page-success header {
    display: none;
}

body.page-success div#maincontent p.order-number {
    display: flex;
    align-items: center;
    line-height: 100%;
}

body.page-success div#maincontent p img {
    cursor: pointer;
}

.success-box {
    background-color: #E5E1CF;
    border-radius: 12px;
    width: 100%;
    max-width: 580px;
}

body.page-success .success-subdiv {
    width: 100%;
    max-width: 580px;
}

.success-subdiv p {
    font-size: 14px;
    color: #fff;
}

.success-subdiv p.amarelo {
    font-family: 'Klavika Medium';
}

.success-subdiv p.amarelo,
.success-subdiv a.amarelo {
    font-size: 20px;
    color: #F4BA44;
}

.success-subdiv a.amarelo {
    text-decoration: underline;
}

.order-id {
    color: #AE2E2A;
    font-family: 'Klavika Medium';
}

.success-box h1 {
    color: #AE2E2A;
    font-size: 48px;
    line-height: 130%;
    font-family: 'Klavika Medium';
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

.credit .success-box h1 {
    font-size: 40px;
}

.success-box p {
    color: #000;
}
/* ANIMAÇÃO */
/* body.product-list {
    overflow: hidden;
} */

.ui-widget.ui-widget-content {
    z-index: 3 !important;
}

/* Define a perspectiva no container (opcional, mas melhora o efeito) */
.veil {
  perspective: 1000px;
}

.veil .underlay {
    background-color: #fff;
    opacity: 0.8;
}

/* Oculta os dots */
.spinner .dot1,
.spinner .dot2 {
    display: none;
}

/* Aplica a imagem girando em eixo Y */
.spinner {
    background-image: url('../images/dede.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 90px;
    height: 65px;
    animation: rotateY-img 2s linear infinite;
    transform-style: preserve-3d;
}

/* Animação no eixo Y */
@keyframes rotateY-img {
    0% {
        transform: rotateY(0deg);
    }
    100% {
        transform: rotateY(360deg);
    }
}

.troca-cep {
    display: flex;
    gap: 24px;
    align-items: flex-end;
}

.troca-cep a, .nao-sabe-cep {
    color: #AE2E2A;
    font-family: 'Klavika Medium';
    font-size: 14px;
    margin-bottom: 16px;
}

.troca-cep .postcode {
    width: 180px;
}

/* Página de Erro e Manutenção*/
/* Warning Pages */
body.page-warning,
body.page-error {
    margin-top: 0;
    background-image: url('../images/error-bg.jpg');
    width: 100%;
    background-size: cover;
}

body.page-warning header,
body.page-error header {
    margin-top: 0;
    top: 0;
}

body.page-warning .page,
body.page-error .page {
    margin-top: 72px;
}

.error-warning {
    width: 455px;
    transform: translateY(-50%);
    position: absolute;
    left: 57%;
    top: 50%;
    color: #FFF;
}

.error-warning h2,
.error-warning .btn-error,
.error-warning p b {
    font-family: 'Klavika Medium';
}

.error-warning h2,
.error-warning p {
    line-height: 100%;
}

.error-warning h2 {
    margin-bottom: 24px;
}

.error-warning p {
    font-family: 'Klavika Light';
}

body.page-error .error-warning h2 {
    font-size: 80px;
}

body.page-warning .error-warning h2 {
    font-size: 32px;
}

.error-warning p {
    font-weight: 400;
    font-size: 18px;
}

.error-warning p b {
    color: #F4BA44;
    font-weight: 500;
}

.error-warning .btn-error {
    color: #000;
    background-color: #F4BA44;
    width: 100%;
    max-width: 264px;
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 12px 0;
    border-radius: 4px;
    margin: 32px 0 0;
}

.mtcaptcha-wrapper {
    display: none;
}

.mtcaptcha-wrapper.visible {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1999;
    background-color: rgba(0, 0, 0, 0.75);
    width: 100%;
    height: 100%;

    .mtcaptcha-content {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 340px;
    }
}

.success-message-notification {
    color: #176b1b;
    display: none;
    background-color: #d5f5f6;
    border-color: #c4f1c6;
    z-index: 1051;
}

.error-message-notification {
    color: #6a0000;
    background-color: #f5cccc;
    border-color: #f1b8b8;
    display: none;
    z-index: 1051;
}

footer {
    padding: 0 0 32px;
    background-color: #861318;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
    align-items: center;
    margin-top: 32px;
}

footer .center {
    display: block;
    color: #FFF;
    font-family: 'Klavika Medium';
}

.footer-nav {
    display: flex;
    gap: 24px;
    margin-bottom: 16px;
}

footer .center a {
    color: #FFF;
    text-decoration: underline;
}

footer .center p {
    margin: 0;
}

.adesao {
    color: #32302D;
    font-size: 14px;
    font-family: 'Klavika Medium';
    background-color: #E6E6E6;
    padding: 16px 0;
}

.adesao p {
    margin: 0;
}

.product-container {
    height: 100%;
}