/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/*Messagens*/
a.button.wc-forward {
    padding: 17px 57px;
    background: #ddbfa2;
    color: #FFF;
    font-family: "Montserrat", Sans-serif;
    font-size: 24px;
    font-weight: 600 !important;
    border-radius: 30px;
    transition: .3s all;
    margin-top: -15px
}
a.button.wc-forward:hover {
    background: #cba887;
    color: #FFF !important
}
.woocommerce-message {
    border-top-color: #cba887 !important;
    padding-top: 33px;
    padding-bottom: 33px;
}
.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before {
    color: #ddbfa2;
    top: 33px
}





/*Breadcrumb*/
.meu-breadcrumbs {
font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
	letter-spacing: .08em;
    margin: 10px 0;
	color: #FFF
}
.meu-breadcrumbs a {
font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    color: #FFF;
    text-decoration: none;
}
.meu-breadcrumbs a:hover {
    text-decoration: underline;
}

/*Contact Form*/
.elementor-field:focus,
.elementor-field:active,
.elementor-field:focus-visible,
.elementor-field-textual:focus,
.elementor-field-textual:active,
textarea:focus,
textarea:active,
input:focus,
input:active {
    outline: none !important;
    box-shadow: none !important;
    border-color: #9FA753 !important;
}

/* Todos os grupos de campo recebem posição relativa */
.elementor-field-group-nome,
.elementor-field-group-email,
.elementor-field-group-telemovel,
.elementor-field-group-assunto,
.elementor-field-group-mensagem {
    position: relative;
}

/* Todos os inputs/textarea ganham espaço para o ícone */
#form-field-nome,
#form-field-email,
#form-field-telemovel,
#form-field-assunto,
#form-field-mensagem {
    padding-left: 45px !important;
}

/* Estilos base do ícone */
.elementor-field-group-nome::before,
.elementor-field-group-email::before,
.elementor-field-group-telemovel::before,
.elementor-field-group-assunto::before,
.elementor-field-group-mensagem::before {
    content: "";
    position: absolute;
    left: 12px;
    width: 27px;
    height: 27px;
    background-size: 20px;
    background-repeat: no-repeat;
}

/* Inputs normais: ícone centralizado */
.elementor-field-group-nome::before,
.elementor-field-group-email::before,
.elementor-field-group-telemovel::before,
.elementor-field-group-assunto::before {
    top: 50%;
    transform: translateY(-50%);
}

/* Campo mensagem (textarea): ícone mais alto */
.elementor-field-group-mensagem::before {
    top: 18px;
}


/* ============================================================
   SVGs INDIVIDUAIS DE CADA CAMPO
   ============================================================ */

/* Nome – ícone de usuário */
.elementor-field-group-nome::before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23888682' d='M313.6 304c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 304 0 364.2 0 438.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-25.6c0-74.2-60.2-134.4-134.4-134.4zM400 464H48v-25.6c0-47.6 38.8-86.4 86.4-86.4 14.6 0 38.3 16 89.6 16 51.7 0 74.9-16 89.6-16 47.6 0 86.4 38.8 86.4 86.4V464zM224 288c79.5 0 144-64.5 144-144S303.5 0 224 0 80 64.5 80 144s64.5 144 144 144zm0-240c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z'/%3E%3C/svg%3E");
}

/* Email – envelope */
.elementor-field-group-email::before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23888682' d='M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z'/%3E%3C/svg%3E");
}

/* Telefone */
.elementor-field-group-telemovel::before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' viewBox='0 0 384 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23888682' d='M97.333 506.966c-129.874-129.874-129.681-340.252 0-469.933 5.698-5.698 14.527-6.632 21.263-2.422l64.817 40.513a17.187 17.187 0 0 1 6.849 20.958l-32.408 81.021a17.188 17.188 0 0 1-17.669 10.719l-55.81-5.58c-21.051 58.261-20.612 122.471 0 179.515l55.811-5.581a17.188 17.188 0 0 1 17.669 10.719l32.408 81.022a17.188 17.188 0 0 1-6.849 20.958l-64.817 40.513a17.19 17.19 0 0 1-21.264-2.422z'/%3E%3C/svg%3E");
}

/* Assunto – info-circle */
.elementor-field-group-assunto::before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23888682' d='M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z'/%3E%3C/svg%3E");
}

/* Mensagem – lápis */
.elementor-field-group-mensagem::before {
    background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23888682' d='M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0z'/%3E%3C/svg%3E");
}


.text-right {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    background-transition: 0.3s;
    margin: 0;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: calc((100vw - 1400px) / 2);
}
.text-left {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    background-transition: 0.3s;
    margin: 0;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: calc((100vw - 1400px) / 2);
}


/* Esconde a seta original do Elementor */
.anime-arrow .elementor-button-icon svg {
    display: none;
}

/* Container do botão */
.anime-arrow .elementor-button-icon {
    position: relative;
    display: inline-block;
    width: 20px; /* ajuste conforme o tamanho da seta */
    height: 20px;
    overflow: hidden;
}

/* Pseudo-elementos para criar a seta animada */
.anime-arrow .elementor-button-icon::before,
.anime-arrow .elementor-button-icon::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("data:image/svg+xml,%3Csvg aria-hidden='true' class='e-font-icon-svg e-fas-arrow-right' viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23333' d='M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z'%3E%3C/path%3E%3C/svg%3E") no-repeat center center;
    background-size: contain;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Seta inicial */
.anime-arrow .elementor-button-icon::before {
    transform: translateX(0);
    opacity: 1;
}

/* Seta que entra da esquerda */
.anime-arrow .elementor-button-icon::after {
    transform: translateX(-100%);
    opacity: 0;
}

/* Hover: troca de posição das setas */
.anime-arrow:hover .elementor-button-icon::before {
    transform: translateX(100%);
    opacity: 0;
}

.anime-arrow:hover .elementor-button-icon::after {
    transform: translateX(0);
    opacity: 1;
}



/* Garante que o container tenha posição relativa */
.elementor-element.img-blog {
    position: relative;
    overflow: hidden;
}

/* Pseudo-elemento para o background */
.elementor-element.img-blog::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    background-image: inherit; /* herda o background do container */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    transition: transform 0.5s ease;
    z-index: 0; /* atrás de qualquer conteúdo */
}

/* Zoom no hover */
.elementor-element.img-blog:hover::before {
    transform: scale(1.1);
}
/* Alinha o conteúdo do post verticalmente */
.lista-posts .elementor-post {
    display: flex; /* ativa flexbox no post */
    align-items: center; /* centraliza verticalmente */
}

/* Ajusta a thumbnail e o texto */
.lista-posts .elementor-post__thumbnail {
    flex: 0 0 auto; /* tamanho fixo para a imagem */

}

.lista-posts .elementor-post__text {
    flex: 1; /* ocupa o espaço restante */
    display: flex;
    align-items: center; /* centraliza verticalmente o título */
}


.jet-filters-pagination__link {
    width: 52px;
    height: 52px;
    text-align: center;
    line-height: 28px;
}



.product-template-default main#main,
.post-type-archive  main#main,
.archive main#main {
    width: 100% !important;
    max-width: 100% !important
}
.product-template-default nav.woocommerce-breadcrumb {
    display: none !important
}

/* Remove margem e evita que o <p> force largura */
.product-label .elementor-widget-text-editor p {
  margin: 0 !important;
  display: inline !important;
  color: inherit !important;
}

/* Transformar o selo em “tamanho do conteúdo” */
.product-label {
  display: flex !important;

}

.product-label .elementor-widget-text-editor {
  flex: 0 0 auto !important;
  align-self: center !important;
  display: inline-block !important;

  /* Se quiser manter o estilo do selo, coloque aqui */
  background: #ddbfa2;
  padding: 10px 14px;
  border-radius: 30px;
  color: #FFF !important;
}


table.variations label {
font-family: "Montserrat", Sans-serif;
    font-size: 24px;
    font-weight: 400 !important;
    color: #333
}

th.label {
    padding-left: 0
}


/*Store*/
/* Transição suave da imagem */
.jet-woo-products__item .jet-woo-product-thumbnail img {
    transition: transform 0.4s ease; /* duração e suavidade da animação */
}

/* Efeito de zoom apenas no hover do produto */
.jet-woo-products__item:hover .jet-woo-product-thumbnail img {
    transform: scale(1.1); /* aumenta 10% */
    z-index: 2; /* garante que a imagem fique acima de outros elementos */
}


/*Cart*/
table.shop_table.shop_table_responsive {
    border-top: 1px solid #333;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}
a.shipping-calculator-button {
    color: #cba887;
    font-weight: 700;
}
section#shipping-calculator-form input {
    border: 1px solid #dadada;
    border-radius: 30px;
    padding: 15px
}
span#select2-calc_shipping_country-container {
    padding-right: 30px;
}
section#shipping-calculator-form button.button {
    padding: 17px 57px;
    background: #ddbfa2;
    color: #FFF;
    font-family: "Montserrat", Sans-serif;
    font-size: 24px;
    font-weight: 600 !important;
    border-radius: 30px;
    transition: .3s all;
}
section#shipping-calculator-form button.button:hover {
    background: #cba887;
    color: #FFF !important
}
a.restore-item {
    color: #cba887;
}



/*Checkout*/
.top-checkout .woocommerce-info {
padding: 0;
margin: 0 0 2em;
position: relative;
background-color: transparent;
color: #333;
border-top: 0;
list-style: none outside;
width: auto;
word-wrap: break-word;
    text-align: center;

}
.top-checkout .woocommerce-info::before {
    display: none !important
}
.top-checkout .woocommerce-info a {

    font-weight: 600 !important
}
.encomenda thead {
    display: none
}

.encomenda #order_review {
    padding: 20px;
    background: #FDF5ED !important
}
.encomenda .cart-subtotal td,
.encomenda .woocommerce-shipping-totals.shipping td,
.encomenda .order-total td {
    border: none !important
}


/*Fowm Newsletter*/
.form-newsletter {
  position: relative;
}
.form-newsletter .elementor-field-type-acceptance {
    position: absolute;
    bottom: -50px;
    left: 75% !important;
    transform: translateX(-50%);
}
@media (max-width: 1024px) {
    .form-newsletter .elementor-field-type-acceptance {
        left: 0% !important;
        transform: none;
    }
}
@media (max-width: 767px) {
    .form-newsletter .elementor-field-type-acceptance {
        left: 0% !important;
        transform: none;
    }
}


.form-newsletter form.elementor-form {
    padding: 10px;
    background:#FFF !important;
    border-radius: 32px;
    box-shadow: 0 3px 25px rgba(0, 0, 0, 0.05) !important;
}
#form-field-aceito {
    position: absolute;
    opacity: 0;
    width: 16px;
    height: 16px;
    cursor: pointer;
}

#form-field-aceito + label {
    position: relative;
    padding-left: 24px;
    cursor: pointer;
    line-height: 16px;
    display: inline-block;
}

#form-field-aceito + label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
    border: 1px solid var(--theme-color-bd_color);
    border-radius: 4px;
    background-color: #fff;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

#form-field-aceito:checked + label::after {
    content:'✓';
    position: absolute;
    left: 2px;
    top: 0;
    font-size: 12px;
    color: var(--theme-color-text_dark);
}

/*Forns Geral*/
.new-focus input:focus {
    border-bottom: 2px solid #B98D58 !important;
    outline: none !important;
    box-shadow: none !important;
}

/*My Account*/
.new-mu-accout h2 {
font-family: "Montserrat",serif !important;
font-size: 2.765em !important;
font-weight: 500 !important;
line-height: 1.021em !important;
margin-top: 0.67em !important;
margin-bottom: 0.44em !important;
}
.new-mu-accout .woocommerce-form.woocommerce-form-login.login,
.new-mu-accout .woocommerce-form.woocommerce-form-register.register{
    padding: 0 !important;
    border: none !important
        
}
.new-mu-accout .woocommerce-button.button.woocommerce-form-login__submit,
.new-mu-accout .woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit {
background-color: #CBA887 !important;
font-family: "Montserrat", Sans-serif !important;
font-size: 16px !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: 0.08em !important;
fill: #FFFFFF !important;
color: #FFFFFF !important;
border-radius: 32px 32px 32px 32px !important;
padding: 24px 52px 24px 52px !important;
    border: none !important;
}
.new-mu-accout label {
font-family: "Montserrat", Sans-serif;
font-size: 17px;
font-weight: 400;
line-height: 1.5em;
letter-spacing: 0.08em;
color: #333333;
margin: 0px 0px 15px 0px;
}
.new-mu-accout input {
    padding: 10px !important;
    border-radius: 0 !important;
    border-top: 0;
    border-left: 0;
    border-radius: 0;
    background: none !important;
font-family: "Montserrat", Sans-serif !important;
font-size: 17px !important;
font-weight: 400 !important;
line-height: 1.5em !important;
letter-spacing: 0.08em !important;
color: #333333 !important;
margin: 0px 0px 15px 0px !important;
    border-bottom: 1px solid #333 !important
}
.woocommerce-LostPassword.lost_password a,
.woocommerce-privacy-policy-text a {
    color: #CBA887 !important;
    font-weight: 700 !important;
}
nav.woocommerce-MyAccount-navigation {
display: none !important;
}
.woocommerce-info {
    border: none !important;
    padding-top: 30px !important;

}

.woocommerce-info .woocommerce-Button.wc-forward.button {
background-color: #CBA887;
font-family: "Montserrat", Sans-serif;
font-size: 16px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
fill: #FFFFFF;
color: #FFFFFF;
border-radius: 32px 32px 32px 32px;
padding: 24px 52px 24px 52px;
    border: none;
    color: #FFF !important;
    top: 0px
}
.woocommerce-info .woocommerce-Button.wc-forward.button:hover {
        background: #B98D58 !important;
}
.woocommerce-info::before {
    display: none !important;
}
.woocommerce-info p {
    padding-top: 10px !important
}
.woocommerce-error {
padding: 33px 30px 30px 50px !important;
border: none;
}

/*Lost Password*/
.new-lost-pass .woocommerce-Input.woocommerce-Input--text.input-text {
    padding: 10px !important;
    border-radius: 0 !important;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
font-family: "Montserrat", Sans-serif;
font-size: 17px;
font-weight: 400;
line-height: 1.5em;
letter-spacing: 0.08em;
color: #333333;
margin: 0px 0px 15px 0px;

}
.new-lost-pass .woocommerce-ResetPassword.lost_reset_password p,
.new-lost-pass .woocommerce-ResetPassword.lost_reset_password label {
font-family: "Montserrat", Sans-serif;
font-size: 17px;
font-weight: 400;
line-height: 1.5em;
letter-spacing: 0.08em;
color: #333333;
margin: 0px 0px 15px 0px;
}
.new-lost-pass .woocommerce-Button.button {
background-color: #CBA887;
font-family: "Montserrat", Sans-serif;
font-size: 16px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
fill: #FFFFFF;
color: #FFFFFF;
border-radius: 32px 32px 32px 32px;
padding: 24px 52px 24px 52px;
    border: none;
}
.new-lost-pass .woocommerce-Button.button:hover {
    background: #B98D58;
}



.jet-filters-pagination__item.jet-filters-pagination__current {
    border-radius: 50%;
    background: #333;
    color: #FFF     
}
.jet-filters-pagination__link {
    border: 1px solid #DED6D4;
    border-radius: 50%;
}



/* Oculta o SVG interno */
.dialog-lightbox-close-button svg {
    display: none !important;
}

/* Insere seu próprio ícone */
.dialog-lightbox-close-button {
    width: 24px;
    height: 24px;
    display: inline-block;
    background-image: url("/wp-content/uploads/2025/12/ico-close.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;

    transition: transform 0.3s ease;
}

/* Gira no hover */
.dialog-lightbox-close-button:hover {
    transform: rotate(90deg);
}



.product-template-default .ppc-button-wrapper {
    display: none !important;
}


.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}


/*Pagina do Produto*/
body.wp-singular.product-template-default main#main{
    margin: 0 !important;
    padding: 0 !important
}



.info-produto details {
    border: 1px solid #FFF;
    border-radius: 30px;
    box-shadow: 10px 10px 50px 0px rgba(0, 0, 0, 0.121);
}

.wp-block-group.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-6c531013.wp-block-group-is-layout-flex {
    margin-bottom: 30px;
}

/* ============================================================
   PÓS-PAGAMENTO / CONFIRMAÇÃO DE ENCOMENDA (UpWeGo 2026-07)
   Página "order received" + instruções Multibanco / MB WAY
   ============================================================ */

.woocommerce-order {
	font-family: "Montserrat", sans-serif;
	color: #333333;
}

/* Mensagem principal ("A tua encomenda foi recebida.") */
.woocommerce-order .woocommerce-thankyou-order-received {
	text-align: center;
	font-size: 1.5em;
	font-weight: 500;
	line-height: 1.4;
	color: #333333;
	max-width: 680px;
	margin: 0.4em auto 1.6em;
	padding-bottom: 1em;
	position: relative;
}
.woocommerce-order .woocommerce-thankyou-order-received::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 64px;
	height: 2px;
	background: #B98D58;
}

/* Resumo da encomenda (nº, data, e-mail, total, método) */
.woocommerce-order ul.woocommerce-order-overview {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	list-style: none !important;
	margin: 0 auto 2.5em !important;
	padding: 1.2em 0.6em !important;
	background: #FFFCF9;
	border: 1px solid #DDBFA2;
}
.woocommerce-order ul.woocommerce-order-overview li {
	flex: 1 1 auto;
	float: none !important;
	width: auto !important;
	text-align: center;
	margin: 0 !important;
	padding: 0.3em 1.6em !important;
	border-right: 1px dashed #DDBFA2 !important;
	border-left: 0 !important;
	font-size: 0.78em !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #888682;
}
.woocommerce-order ul.woocommerce-order-overview li:last-child { border-right: 0 !important; }
.woocommerce-order ul.woocommerce-order-overview li strong {
	display: block;
	margin-top: 0.55em;
	font-size: 1.5em;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
	color: #333333;
}

/* Cartão de instruções de pagamento (Multibanco / MB WAY) */
.woocommerce table.multibanco_ifthen_for_woocommerce_table,
.woocommerce table.mbway_ifthen_for_woocommerce_table {
	width: 100% !important;
	max-width: 430px !important;
	margin: 2.2em auto !important;
	border-collapse: separate !important;
	border-spacing: 0;
	background: #FFFCF9 !important;
	border: 1px solid #DDBFA2;
	box-shadow: none;
}
.woocommerce table.multibanco_ifthen_for_woocommerce_table th,
.woocommerce table.mbway_ifthen_for_woocommerce_table th {
	background: transparent !important;
	color: #333333 !important;
	text-align: center !important;
	font-weight: 600;
	font-size: 0.85em;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	padding: 1.4em 1.6em 1.2em !important;
	border-bottom: 2px solid #B98D58;
}
.woocommerce table.multibanco_ifthen_for_woocommerce_table th img,
.woocommerce table.mbway_ifthen_for_woocommerce_table th img {
	max-height: 42px !important;
	margin: 0.9em auto 0 !important;
}
.woocommerce table.multibanco_ifthen_for_woocommerce_table td,
.woocommerce table.mbway_ifthen_for_woocommerce_table td {
	background: transparent !important;
	color: #888682 !important;
	font-size: 0.95em;
	padding: 0.9em 1.6em !important;
	border-bottom: 1px solid rgba(221, 191, 162, 0.5);
	vertical-align: middle;
}
.woocommerce table.multibanco_ifthen_for_woocommerce_table tr:last-child td,
.woocommerce table.mbway_ifthen_for_woocommerce_table tr:last-child td { border-bottom: 0; }
.woocommerce table.multibanco_ifthen_for_woocommerce_table td.mb_value,
.woocommerce table.mbway_ifthen_for_woocommerce_table td.mb_value {
	color: #333333 !important;
	font-weight: 600;
	text-align: right !important;
}
.woocommerce table.multibanco_ifthen_for_woocommerce_table td.extra_instructions,
.woocommerce table.mbway_ifthen_for_woocommerce_table td.extra_instructions {
	font-size: 0.8em !important;
	line-height: 1.6;
	color: #888682 !important;
	padding-top: 1.1em !important;
}

/* Botões (voltar à loja / usar outro método de pagamento) */
.woocommerce-order .button,
p.mbway_ifthen_for_woocommerce_pay_another_method .button {
	background: #B98D58 !important;
	color: #FFFFFF !important;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600 !important;
	font-size: 0.82em !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 0.95em 1.9em !important;
	border: 0;
	border-radius: 0 !important;
	transition: background 0.2s ease;
}
.woocommerce-order .button:hover,
p.mbway_ifthen_for_woocommerce_pay_another_method .button:hover {
	background: #A47B49 !important;
	color: #FFFFFF !important;
}
p.mbway_ifthen_for_woocommerce_pay_another_method {
	text-align: center;
	margin: 1.6em 0 0.5em;
}

/* Secções "Detalhes da encomenda" / moradas */
.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details { margin-top: 2.6em; }
.woocommerce-order .woocommerce-order-details h2,
.woocommerce-order .woocommerce-customer-details h2,
.woocommerce-order .woocommerce-column__title {
	font-size: 1em;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #333333;
	border-bottom: 1px solid #DDBFA2;
	padding-bottom: 0.7em;
	margin-bottom: 1.1em;
}
.woocommerce-order table.woocommerce-table--order-details {
	width: 100%;
	border: 1px solid #DDBFA2 !important;
	border-collapse: separate !important;
	border-spacing: 0;
	background: #FFFCF9;
}
.woocommerce-order table.woocommerce-table--order-details th,
.woocommerce-order table.woocommerce-table--order-details td {
	padding: 0.85em 1.3em !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(221, 191, 162, 0.5) !important;
	color: #333333;
	font-size: 0.95em;
}
.woocommerce-order table.woocommerce-table--order-details tfoot th {
	color: #888682;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 0.78em;
	letter-spacing: 0.06em;
}
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child td {
	border-bottom: 0 !important;
	font-weight: 700;
	color: #B98D58;
	font-size: 1.05em;
}
.woocommerce-order .woocommerce-customer-details address {
	font-style: normal;
	line-height: 1.8;
	color: #555555;
	background: #FFFCF9;
	border: 1px solid #DDBFA2 !important;
	border-radius: 0;
	padding: 1.2em 1.5em !important;
}

/* Mobile */
@media (max-width: 640px) {
	.woocommerce-order ul.woocommerce-order-overview { display: block; }
	.woocommerce-order ul.woocommerce-order-overview li {
		border-right: 0 !important;
		border-bottom: 1px dashed #DDBFA2 !important;
		padding: 0.9em 0.4em !important;
	}
	.woocommerce-order ul.woocommerce-order-overview li:last-child { border-bottom: 0 !important; }
	.woocommerce table.multibanco_ifthen_for_woocommerce_table,
	.woocommerce table.mbway_ifthen_for_woocommerce_table { max-width: 100% !important; }
}

/* Header do site tem logo/menu brancos e fica invisível sobre o fundo
   branco das páginas de checkout/confirmação — dar-lhe o escuro do footer */
body.woocommerce-checkout .elementor-location-header {
	background-color: #222222;
}

/* Mensagem "pagamento recebido" (filtro qm_ifthenpay_payment_received_html) */
.woocommerce-order .qm-payment-received {
	margin: 2em auto 1em;
	font-size: 1.05em;
}

/* Conteudo das paginas de checkout flui por baixo do header (padrao hero do site);
   com o header escuro precisa de offset para o titulo nao ficar tapado */
body.woocommerce-checkout main.site-main {
	padding-top: 200px;
}

/* Titulo de pagina do tema (Encomenda recebida / Finalizar compra) vinha em
   system font; alinhar ao kit (Montserrat 500) nas paginas de checkout */
body.woocommerce-checkout .page-header .entry-title {
	font-family: "Montserrat", sans-serif;
	font-weight: 500;
}

/* mq-foco-popup (28/09/2026): o popup de idade põe o foco no primeiro botão ao abrir; em vez do
   retângulo preto do browser, contorno discreto no dourado da marca (só aparece a quem navega com Tab, classe mq-kbd posta pelo mu-plugin mq-cookies). */
.elementor-popup-modal .elementor-button:focus{outline:none;box-shadow:none}
.elementor-popup-modal .elementor-button:focus:not(:hover){border-color:#333333 !important;color:#333333 !important}
html.mq-kbd .elementor-popup-modal .elementor-button:focus-visible{outline:2px solid #B98D58;outline-offset:4px;border-radius:4px}

/* 30/09/2026: cópia anterior em /root/miradouro-correcoes-20260930/style.css.antes-menu */
/* mq-menu-uma-linha: menus do cabeçalho sempre numa linha (o FR "Domaine viticole" partia) */
.elementor-element-ae0301b .elementor-nav-menu--main > .elementor-nav-menu,
.elementor-element-a004500 .elementor-nav-menu--main > .elementor-nav-menu { flex-wrap: nowrap; }
.elementor-element-ae0301b .elementor-nav-menu--main .elementor-item,
.elementor-element-a004500 .elementor-nav-menu--main .elementor-item {
  white-space: nowrap;
  padding-left: clamp(5px, 1vw, 16px) !important;
  padding-right: clamp(5px, 1vw, 16px) !important;
}
@media (max-width: 1440px) {
  .elementor-element-ae0301b .elementor-nav-menu--main .elementor-item,
  .elementor-element-a004500 .elementor-nav-menu--main .elementor-item { font-size: clamp(10.5px, 0.9vw, 13px) !important; }
}
@media (max-width: 1366px) {
  .elementor-element-ae0301b .elementor-nav-menu--main .elementor-item,
  .elementor-element-a004500 .elementor-nav-menu--main .elementor-item { letter-spacing: 0.03em !important; }
  .elementor-element-0cac2c1 { --margin-left: 2%; --margin-right: 2%; margin-left: 2% !important; margin-right: 2% !important; width: clamp(170px, 16vw, 230px) !important; }
  .elementor-element-0cac2c1 img { width: 100%; }
}
@media (max-width: 1180px) {
  .elementor-element-ae0301b .elementor-nav-menu--main .elementor-item,
  .elementor-element-a004500 .elementor-nav-menu--main .elementor-item { letter-spacing: 0 !important; padding-left: 4px !important; padding-right: 4px !important; }
}

/* mq-checkout (30/09/2026): caixa de pagamento e página de encomenda recebida com o aspeto do resto do site */
.woocommerce-checkout #payment div.payment_box {
  background-color: #FFFCF9;
  border: 1px solid #EFE3D5;
  color: #3a3a3a;
  border-radius: 4px;
}
.woocommerce-checkout #payment div.payment_box::before {
  border-color: #EFE3D5;
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
}
body.woocommerce-order-received .page-header,
body.woocommerce-order-received .woocommerce-order {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}
body.woocommerce-order-received .page-header .entry-title { text-align: center; }
body.woocommerce-order-received .woocommerce-order { margin-bottom: 80px; }
.woocommerce-checkout input[type=radio], .woocommerce-checkout input[type=checkbox] { accent-color: #B98D58; }

/* mq-cupao (01/10/2026): o botão do código promocional cortava o texto em francês */
.woocommerce-checkout form.checkout_coupon { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; align-items: center; }
.woocommerce-checkout form.checkout_coupon > p:first-child:not(.form-row) { flex-basis: 100%; }
.woocommerce-checkout form.checkout_coupon .form-row-first,
.woocommerce-checkout form.checkout_coupon .form-row-last { float: none; width: auto; margin: 0; }
.woocommerce-checkout form.checkout_coupon .form-row-first { flex: 1 1 260px; max-width: 320px; }
.woocommerce-checkout form.checkout_coupon .form-row-last { flex: 0 0 auto; }
.woocommerce-checkout form.checkout_coupon button.button { width: auto; white-space: nowrap; padding-left: 28px; padding-right: 28px; }
.woocommerce-checkout form.checkout_coupon .clear { display: none; }
@media (max-width: 600px) { .woocommerce-checkout form.checkout_coupon .form-row-first, .woocommerce-checkout form.checkout_coupon .form-row-last { flex: 1 1 100%; max-width: 100%; } .woocommerce-checkout form.checkout_coupon button.button { width: 100%; white-space: normal; padding-left: 16px; padding-right: 16px; } }

/* mq-promo (11/10/2026): etiqueta e preços de promoção com as cores do site (a etiqueta saía verde e a transbordar, o preço antigo a azul) */
.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{background:#B98D58!important;color:#fff!important;font-family:Montserrat,sans-serif!important;font-size:11px!important;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1!important;min-width:0!important;min-height:0!important;width:auto!important;height:auto!important;padding:7px 12px!important;border-radius:999px!important;top:12px!important;right:12px!important;left:auto!important;margin:0!important}
.woocommerce .price del,.woocommerce .price del .amount,.woocommerce ul.products li.product .price del{color:#9b9189!important;opacity:1!important}
.woocommerce .price ins,.woocommerce ul.products li.product .price ins{text-decoration:none!important}


/* mq-telemovel 13/10/2026: carrinho, aviso do carrinho e barra da promoção no telemóvel */
.mq-barra-promo{font-family:Montserrat,sans-serif}
@media (max-width:768px){
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table,
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table tbody{display:block;width:100%;max-width:100%}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table.cart tr td{width:100%!important;max-width:100%}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table.cart tr td.product-thumbnail{text-align:center!important}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table.cart tr td.product-thumbnail::before,
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table.cart tr td.product-name::before{content:none}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table.cart tr td.product-name{text-align:center!important}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table.cart td.product-quantity .quantity{display:inline-block;width:110px}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table td.actions .coupon{flex-wrap:wrap;gap:8px}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table td.actions .coupon .input-text{margin:0;flex:1 1 100%}
.woocommerce .elementor-jet-cart-table .woocommerce-cart-form table.shop_table td.actions .button{float:none;flex:1 1 100%;width:100%;padding:17px 16px!important;white-space:normal}
.woocommerce-cart .woocommerce-message{display:flex!important;flex-direction:column;align-items:stretch;gap:14px;height:auto}
.woocommerce-cart .woocommerce-message .button{float:none!important;position:static;margin:0;top:auto;transform:none;display:block;width:100%;padding:12px 16px;font-size:14px;line-height:1.3;text-align:center;white-space:normal}
}

/* mq-telemovel-2 13/10/2026: selo circular, fecho dos popups e newsletter no telemóvel */
.texto-circular-svg text{font-size:11.7px!important}
.elementor-popup-modal .dialog-close-button:focus{outline:none}
@media (max-width:767px){
.form-newsletter .elementor-field-group .elementor-field-textual{font-size:13px!important;letter-spacing:0!important}
.form-newsletter .elementor-field-group .elementor-button{border-width:0!important}
}
