@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//moliel.pt/wp-content/themes/woodmart/fonts/woodmart-font-1-300.woff2?v=8.4.1") format("woff2");
}

@font-face {
	font-family: "star";
	font-weight: 400;
	font-style: normal;
	src: url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"), url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/star.woff") format("woff"), url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/star.ttf") format("truetype"), url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/star.svg#star") format("svg");
}

@font-face {
	font-family: "WooCommerce";
	font-weight: 400;
	font-style: normal;
	src: url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"), url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"), url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"), url("//moliel.pt/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");
}

:root {
	--wd-hb-opt-h: 40px;
	--wd-text-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(26,26,26);
	--wd-text-font-size: 16px;
	--wd-title-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: rgb(26,26,26);
	--wd-entities-title-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 600;
	--wd-entities-title-color: rgb(26,26,26);
	--wd-entities-title-color-hover: rgb(58, 58, 58);
	--wd-alternative-font: var(--wd-text-font);
	--wd-widget-title-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 500;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: rgb(26,26,26);
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "hkgroteskpro", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 500;
	--wd-header-el-transform: capitalize;
	--wd-header-el-font-size: 15px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(26,26,46);
	--wd-alternative-color: #fbbc34;
	--btn-default-font-family: 'MS Sans Serif', Geneva, sans-serif;
	--btn-default-font-weight: 700;
	--btn-default-bgcolor: rgb(26,26,46);
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-font-family: 'MS Sans Serif', Geneva, sans-serif;
	--btn-accented-font-weight: 300;
	--btn-accented-bgcolor: rgb(30,30,30);
	--btn-accented-bgcolor-hover: rgb(30,30,30);
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: rgb(255,255,255);
	background-image: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(251,251,251);
	background-image: none;
}
html .product-image-summary-wrap .product_title, html .wd-single-title .product_title {
	font-family: "Lato-700", Arial, Helvetica, sans-serif;
	font-weight: 600;
}
html .post.wd-post:not(.blog-design-small) .wd-entities-title {
	font-size: 22px;
}
html .product.wd-cat .wd-entities-title, html .product.wd-cat.cat-design-replace-title .wd-entities-title, html .wd-masonry-first .wd-cat:first-child .wd-entities-title {
	text-transform: capitalize;
}
.page :is(.wd-page-content, .whb-header) {
	background-color: rgb(255,255,255);
	background-image: none;
}
.product-labels .product-label.onsale {
	background-color: rgb(191,3,3);
}
.product-labels .product-label.new {
	background-color: rgb(191,3,3);
}
.product-labels .product-label.featured {
	background-color: rgb(191,3,3);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}

@media (max-width: 1024px) {
	:root {
		--wd-hb-opt-h: 60px;
	}
	html .post.wd-post:not(.blog-design-small) .wd-entities-title {
		font-size: 20px;
	}

}

@media (max-width: 768.98px) {
	:root {
		--wd-hb-opt-h: 35px;
	}
	html .post.wd-post:not(.blog-design-small) .wd-entities-title {
		font-size: 18px;
	}

}
:root{
--wd-container-w: 1540px;
--wd-form-brd-radius: 35px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 5px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 5px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 5px;
}



.wd-page-title {
background-color: #0a0a0a;
}

@font-face {
	font-family: "hkgroteskpro";
	src: url("//moliel.pt/wp-content/uploads/2024/05/HKGroteskPro-Light.woff2") format("woff2");
	font-weight: 300;
	font-display:swap;
	font-style: normal;
}

@font-face {
	font-family: "hkgroteskpro";
	src: url("//moliel.pt/wp-content/uploads/2024/05/hkgroteskpro-regular.woff2") format("woff2"), 
url("//moliel.pt/wp-content/uploads/2024/05/hkgroteskpro-regular.woff") format("woff");
	font-weight: 400;
	font-display:swap;
	font-style: normal;
}

@font-face {
	font-family: "hkgroteskpro";
	src: url("//moliel.pt/wp-content/uploads/2024/05/hkgroteskpro-medium.woff2") format("woff2"), 
url("//moliel.pt/wp-content/uploads/2024/05/hkgroteskpro-medium.woff") format("woff");
	font-weight: 500;
	font-display:swap;
	font-style: normal;
}

@font-face {
	font-family: "hkgroteskpro";
	src: url("//moliel.pt/wp-content/uploads/2024/05/hkgroteskpro-bold.woff2") format("woff2"), 
url("//moliel.pt/wp-content/uploads/2024/05/hkgroteskpro-bold.woff") format("woff");
	font-weight: 600;
	font-display:swap;
	font-style: normal;
}

/* ════════════════════════════════════════════════════
   MOLIEL — CSS GLOBAL COMPLETO
   Versão consolidada — Woodmart → CSS Personalizado
   Paleta: #242948 | #c0392b | #A98F76
	navy:  #242948;
  red:   #c0392b;
  bronze:#A98F76;
  gray:  #888888;
  light: #f8f8f8;
  border:#f0f0f0;
════════════════════════════════════════════════════ */


/* ══════════════════════════════════════
   1. HOMEPAGE
══════════════════════════════════════ */

/* Esconde título "Home" gerado automaticamente */
.home .page-title,
.home .title-size-default {
  display: none !important;
}
/* Remove padding do topo da página */
.home .main-page-wrapper {
  padding-top: 0 !important;
}
/* Remove padding do container principal */
.home .container {
  padding-top: 0 !important;
}
/* Remove título de página — global */
.wd-page-title-el {
  display: none !important;
}


/* ══════════════════════════════════════
   2. ARQUIVO / LOJA
══════════════════════════════════════ */

/* Esconde o dropdown "Ordenar por" */
.woocommerce-ordering {
  display: none !important;
}
/* Esconde "X resultados encontrados" */
.woocommerce-result-count {
  display: none !important;
}

/* ══════════════════════════════════════
   3. PRODUTO — VARIAÇÕES (COR)
══════════════════════════════════════ */

/* Caixa em volta das variações */
table.variations {
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  margin-bottom: 12px !important;
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
/* Cabeçalho "Cor:" fundo navy */
table.variations th.label {
  background: #242948 !important;
  padding: 10px 16px !important;
  border-radius: 6px 0 0 0 !important;
}
/* Texto "Cor:" a branco */
table.variations th.label label {
  color: #fff !important;
  font-weight: bold !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 !important;
}
/* Célula dos swatches fundo branco */
table.variations td.value {
  background: #fff !important;
  padding: 8px 16px !important;
  border-radius: 0 6px 0 0 !important;
}
/* Esconde o texto "Escolha uma opção" */
table.variations .woo-selected-variation-item-name {
  display: none !important;
}
/* Remove bordas internas da tabela */
table.variations td,
table.variations th {
  border: none !important;
  padding: 6px 8px !important;
}

/* Mobile — empilha label e opções verticalmente */
@media (max-width: 768px) {
  table.variations,
  table.variations tbody,
  table.variations tr,
  table.variations td,
  table.variations th {
    display: block !important;
    width: 100% !important;
  }
  table.variations td,
  table.variations th {
    padding: 4px 0 !important;
  }
  table.variations .label {
    padding-bottom: 0 !important;
  }
  table.variations .value {
    padding-top: 4px !important;
  }
	/* Espaço entre navbar e imagem do produto */
  .woocommerce-product-gallery {
    margin-top: 20px !important;
  }
}

/* ══════════════════════════════════════
   4. PRODUTO — WCPA SECÇÃO PRINCIPAL
══════════════════════════════════════ */
/* Botão "Escolher Fotografia" — WCPA upload */
.wcpa_choose_button {
  background: linear-gradient(90deg, #242948, #2D4A7C) !important;
  color: #fff !important;
  border: none !important;
	margin-top: 5px !important;
	box-shadow: 0 1px 6px rgba(36,41,72,0.3) !important;
  border-radius: 8px !important;
  padding: 9px 18px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  display: inline-block !important;
  transition: background 0.2s !important;
}
.wcpa_choose_button:hover {
  background: #c0392b !important;
}
/* Borda em volta de toda a secção */
.moliel-secao-principal {
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}
/* Cabeçalho navy */
.moliel-secao-principal .wcpa_section_head {
  background: #242948 !important;
  border-radius: 6px 6px 0 0 !important;
  padding: 10px 16px !important;
}
/* Título a branco e maiúsculas */
.moliel-secao-principal .wcpa_section_head .wcpa_sec_title {
  color: #fff !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
  font-weight: bold !important;
  margin: 0 !important;
}
/* Corpo branco com padding */
.moliel-secao-principal .wcpa_section_body {
  background: #fff !important;
  padding: 10px 14px !important;
}
/* Remove bordas dos campos individuais */
.moliel-secao-principal .wcpa_field_wrap {
  border: none !important;
  box-shadow: none !important;
  padding: 6px 0 !important;
}


/* ══════════════════════════════════════
   5. PRODUTO — WCPA SECÇÃO EXTRAS
══════════════════════════════════════ */

/* Borda em volta */
.moliel-secao-extras {
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}
/* Cabeçalho bronze */
.moliel-secao-extras .wcpa_section_head {
  background: #A98F76 !important;
  border-radius: 6px 6px 0 0 !important;
  padding: 10px 16px !important;
}
/* Título branco */
.moliel-secao-extras .wcpa_section_head .wcpa_sec_title {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: bold !important;
  margin: 0 !important;
}
/* Corpo branco */
.moliel-secao-extras .wcpa_section_body {
  background: #fff !important;
  padding: 10px 14px !important;
}
/* Badge de preço bronze em pill */
.moliel-secao-extras .wcpa_option_price {
  background: #A98F76 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: bold !important;
  padding: 2px 8px !important;
  border-radius: 10px !important;
  margin-left: 6px !important;
}
/* Remove bordas dos campos */
.moliel-secao-extras .wcpa_field_wrap {
  border: none !important;
  box-shadow: none !important;
  padding: 6px 0 !important;
}


/* ══════════════════════════════════════
   6. PRODUTO — WCPA CHARM
══════════════════════════════════════ */

/* Borda em volta */
.moliel-charm {
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}
/* Cabeçalho cinza claro */
.moliel-charm .wcpa_section_head {
  background: #dedede !important;
  border-radius: 6px 6px 0 0 !important;
  padding: 10px 16px !important;
}
/* Título preto */
.moliel-charm .wcpa_section_head .wcpa_sec_title {
  color: #000 !important;
  font-size: 14px !important;
  font-weight: bold !important;
  margin: 0 !important;
}
/* Corpo branco */
.moliel-charm .wcpa_section_body {
  background: #fff !important;
  padding: 10px 14px !important;
}
/* Badge de preço bronze em pill */
.moliel-charm .wcpa_option_price {
  background: #A98F76 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: bold !important;
  padding: 2px 8px !important;
  border-radius: 10px !important;
  margin-left: 6px !important;
}
/* Remove bordas dos campos */
.moliel-charm .wcpa_field_wrap {
  border: none !important;
  box-shadow: none !important;
  padding: 6px 0 !important;
}

/* ══════════════════════════════════════
   7. PRODUTO — WCPA EMBALAGEM
══════════════════════════════════════ */

/* Borda em volta */
.moliel-embalagem {
  border: 1px solid #e8e8e8 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  margin-bottom: 8px !important;
}
/* Cabeçalho navy */
.moliel-embalagem .wcpa_section_head {
  background: #242948 !important;
  border-radius: 6px 6px 0 0 !important;
  padding: 10px 16px !important;
}
/* Título branco maiúsculas */
.moliel-embalagem .wcpa_section_head .wcpa_sec_title {
  color: #fff !important;
  font-weight: bold !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
}
/* Layout vertical — imagem → label → toggle */
.moliel-embalagem .wcpa_row {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 12px !important;
}
/* Imagem da embalagem */
.moliel-embalagem img {
  order: 1 !important;
  width: 80px !important;
  height: 80px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
}
/* Label do campo a largura total */
.moliel-embalagem label {
  order: 2 !important;
  width: 100% !important;
  float: none !important;
  position: static !important;
}
/* Coluna vertical para os campos */
.moliel-embalagem .wcpa_field_wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
/* Toggle no fundo com separador */
.moliel-embalagem .wcpa_checkbox_wrap,
.moliel-embalagem .wcpa_check_ui_toggle,
.moliel-embalagem .wcpa_checkbox {
  order: 99 !important;
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid #f0f0f0 !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  float: none !important;
  position: static !important;
}
/* Preço em vermelho sem fundo */
.moliel-embalagem .wcpa_option_price {
  color: #c0392b !important;
  font-weight: bold !important;
  font-size: 13px !important;
  background: none !important;
  padding: 0 !important;
}
/* Descrição discreta */
.moliel-embalagem .wcpa_field_desc {
  font-size: 12px !important;
  color: #777 !important;
  margin-top: 4px !important;
}
/* Borda e sombra vermelha quando ativo */
.moliel-embalagem:has(input:checked) {
  border-color: #c0392b !important;
  box-shadow: 0 0 0 2px #c0392b22 !important;
}
/* Fundo quente quando ativo */
.moliel-embalagem .wcpa_row:has(input:checked) {
  background: #f0f3fa !important;
  border-radius: 6px !important;
}
/* Imagem com brilho quando ativo */
.moliel-embalagem:has(input:checked) img {
  box-shadow: 0 2px 8px #c0392b44 !important;
  transform: scale(1.05) !important;
  transition: all 0.2s !important;
}
/* Título vermelho quando ativo */
.moliel-embalagem:has(input:checked) .wcpa_label_text {
  color: #c0392b !important;
}

/* ══════════════════════════════════════
   8. PRODUTO — PREÇO TOTAL WCPA
══════════════════════════════════════ */

/* Container sem fundo */
.wcpa_price_summary {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 12px 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
/* Linha "Extras" em cinza claro */
.wcpa_price_summary .wcpa_option_price_total,
.wcpa_price_summary > div:first-child {
  display: flex !important;
  justify-content: space-between !important;
  background: #f4f4f8 !important;
  padding: 10px 16px !important;
  font-size: 13px !important;
  color: #555 !important;
  border-radius: 6px 6px 0 0 !important;
  border-bottom: 1px solid #e0e0e0 !important;
}
/* Linha "Total" em navy */
.wcpa_price_summary .wcpa_total_div,
.wcpa_price_summary > div:last-child {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: #242948 !important;
  padding: 12px 16px !important;
  border-radius: 0 0 6px 6px !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: bold !important;
}
/* Preço riscado em branco suave */
.wcpa_price_summary del {
  color: #f9f9f9 !important;
  font-size: 13px !important;
  margin-right: 6px !important;
}

/* ══════════════════════════════════════
   9. PRODUTO — QUANTIDADE + BOTÃO
══════════════════════════════════════ */

/* Container horizontal com alinhamento */
.quantity {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 6px 0 !important;
}
/* Botões +/- navy */
.quantity button,
.quantity .minus,
.quantity .plus {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  width: 26px !important;
  height: 26px !important;
  font-size: 18px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
}
/* Input do número centrado */
.quantity input {
  border: 2px solid #242948 !important;
  width: 30px !important;
  height: 36px !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: bold !important;
  margin: 0 4px !important;
  border-radius: 4px !important;
}
/* Botão "Adicionar ao carrinho" */
.single_add_to_cart_button {
  border-radius: 6px !important;
  margin-top: 0 !important;
}

/* ══════════════════════════════════════
   10. PRODUTO — TABS / ACORDEÃO
══════════════════════════════════════ */

/* Esconde o título "Descrição" duplicado dentro do acordeão */
.woocommerce-Tabs-panel--description h2.woocommerce-product-details__short-description,
.woocommerce-Tabs-panel--description > h2:first-child,
.entry-content .woocommerce-product-details__short-description h2,
.wd-accordion-content h2.wc-tab-title,
#tab-description h2:first-child {
  display: none !important;
}

/* ══════════════════════════════════════
   11. MINI-CART LATERAL — COM PRODUTOS
══════════════════════════════════════ */
/* Botão × remover item — mais à direita */
.woocommerce-mini-cart-item .remove.remove_from_cart_button {
  position: absolute !important;
  right: 0 !important;
  top: 16px !important;
}

.woocommerce-mini-cart-item.mini_cart_item {
  position: relative !important;
}
/* Cabeçalho do painel lateral */
.cart-widget-side .wd-heading {
  padding: 20px 16px !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
/* Título "Carrinho de compras" */
.cart-widget-side .wd-heading .title {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
}
/* Padding lateral no corpo e footer */
.cart-widget-side .shopping-cart-widget-body,
.cart-widget-side .widget_shopping_cart_content,
.cart-widget-side .woocommerce-mini-cart,
.cart-widget-side .shopping-cart-widget-footer {
  padding-left: 16px !important;
  padding-right: 16px !important;
}
/* Barra de portes grátis — container */
.cart-widget-side .wd-free-progress-bar {
  margin: 12px 0 8px !important;
  padding: 12px 15px !important;
  border-radius: 8px !important;
  overflow: visible !important;
  border-top: none !important;
  box-shadow: none !important;
}
/* Remove pseudo-elemento da barra */
.cart-widget-side .wd-free-progress-bar::before {
  display: none !important;
}
/* Texto da mensagem de portes */
.cart-widget-side .wd-free-progress-bar .progress-msg {
  font-size: 12px !important;
  text-align: center !important;
  margin-bottom: 10px !important;
  line-height: 1.5 !important;
  color: #888 !important;
}
/* Mensagem verde quando portes grátis atingidos */
.cart-widget-side .wd-free-progress-bar:has(.progress-bar[style*="width: 100%"]) .progress-msg {
  color: #27ae60 !important;
  font-weight: 600 !important;
}
/* Valor em destaque na mensagem */
.cart-widget-side .wd-free-progress-bar .progress-msg strong {
  font-size: 12px !important;
  font-weight: 700 !important;
  -webkit-text-fill-color: #242948 !important;
}
/* Track da barra de progresso */
.cart-widget-side .wd-progress-bar.wd-free-progress-bar .progress-area {
  height: 12px !important;
  overflow: visible !important;
  margin-right: 36px !important;
}
/* Cada item — layout grid thumbnail + info */
.woocommerce-mini-cart-item.mini_cart_item {
  display: grid !important;
  grid-template-columns: 80px 1fr !important;
  gap: 0 1px !important;
  padding: 16px 0 !important;
  border-bottom: 1px solid #f0f0f0 !important;
  list-style: none !important;
  align-items: start !important;
}
/* Imagem do produto */
.woocommerce-mini-cart-item .cart-item-image img {
  width: 80px !important;
  height: 80px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid #f0f0f0 !important;
  display: block !important;
}
/* Coluna direita — info do produto */
.woocommerce-mini-cart-item .cart-info {
  grid-column: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}
/* Nome do produto */
.woocommerce-mini-cart-item .wd-entities-title {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #242948 !important;
  line-height: 1.4 !important;
  display: block !important;
  margin-bottom: 4px !important;
}
/* Lista de variações/extras */
.woocommerce-mini-cart-item .variation {
  width: 100% !important;
  box-sizing: border-box !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 4px 0 0 !important;
}
/* Cada linha de variação */
.woocommerce-mini-cart-item .variation li {
  display: flex !important;
  width: 100% !important;
  justify-content: space-between !important;
  font-size: 11px !important;
  color: #888 !important;
  line-height: 1.5 !important;
  padding: 2px 0 !important;
}
/* Parágrafo dentro da variação */
.woocommerce-mini-cart-item .variation li p {
  margin: 0 !important;
  font-size: 11px !important;
  color: #888 !important;
}
/* Label da variação em negrito */
.woocommerce-mini-cart-item .variation li dt {
  font-weight: 600 !important;
  color: #555 !important;
  flex-shrink: 0 !important;
  margin-right: 6px !important;
}
/* Valor da variação à direita */
.woocommerce-mini-cart-item .variation li dd {
  flex: 1 !important;
  text-align: right !important;
  margin: 0 !important;
}
/* Esconde labels WCPA vazios */
.woocommerce-mini-cart-item .variation-wcpa_empty_label {
  display: none !important;
}
/* Preço atual do produto */
.woocommerce-mini-cart-item ins .woocommerce-Price-amount,
.woocommerce-mini-cart-item .woocommerce-Price-amount {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #242948 !important;
}
/* Preço riscado */
.woocommerce-mini-cart-item del .woocommerce-Price-amount {
  color: #aaa !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  margin-right: 4px !important;
}
/* Linha de subtotal */
.woocommerce-mini-cart__total.total {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 20px 0 12px !important;
  border-top: 1px solid #f0f0f0 !important;
  margin-top: 4px !important;
}
/* Label "SUBTOTAL" */
.woocommerce-mini-cart__total strong {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: #aaa !important;
}
/* Valor do subtotal */
.woocommerce-mini-cart__total .woocommerce-Price-amount {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #242948 !important;
  letter-spacing: -0.5px !important;
}
/* Container dos botões */
.woocommerce-mini-cart__buttons.buttons {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding-top: 4px !important;
  padding-bottom: 8px !important;
}
/* Botão "Ver Carrinho" — outline */
.woocommerce-mini-cart__buttons .btn-cart,
a.btn-cart.btn-default,
.woocommerce-mini-cart__buttons a.btn-cart {
  background: #fff !important;
  background-color: #fff !important;
  color: #242948 !important;
  border: 1.5px solid #242948 !important;
  border-radius: 6px !important;
  padding: 14px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  display: block !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: all 0.2s !important;
}
/* Hover botão "Ver Carrinho" */
.woocommerce-mini-cart__buttons .btn-cart:hover,
a.btn-cart.btn-default:hover {
  background: #242948 !important;
  background-color: #242948 !important;
  color: #fff !important;
}
/* Botão "Finalizar Compras" — sólido */
.woocommerce-mini-cart__buttons .checkout {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 17px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  transition: background 0.2s !important;
}
/* Hover botão "Finalizar" → vermelho */
.woocommerce-mini-cart__buttons .checkout:hover {
  background: #c0392b !important;
}
/* Ícone cadeado antes do texto */
.woocommerce-mini-cart__buttons .checkout::before {
  content: "🔒" !important;
  font-size: 13px !important;
}
/* Logos de pagamento — container */
.moliel-payment-methods {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 12px 0 16px !important;
  opacity: 0.5 !important;
  filter: grayscale(1) !important;
}
/* Cada logo de pagamento */
.moliel-payment-methods img {
  height: 20px !important;
  width: auto !important;
  max-width: 60px !important;
  object-fit: contain !important;
  display: inline-block !important;
}
/* Corrige overflow para o camião não ser cortado */
.cart-widget-side .widget_shopping_cart_content,
.cart-widget-side .wd-scroll-content,
.cart-widget-side .wd-scroll {
  overflow-y: auto !important;
  overflow-x: visible !important;
}

/* Linha da imagem upload — alinha à direita */
.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label {
  display: flex !important;
  justify-content: flex-end !important;
  padding: 2px 0 !important;
}

/* Esconde label "wcpa_empty_label:" */
.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label .item-variation-name {
  display: none !important;
}

/* Imagem do cliente — à direita */
.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label .item-variation-value {
  display: flex !important;
  justify-content: flex-end !important;
  flex: 0 !important;
}

.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label img,
.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label a img {
  width: 44px !important;
  height: 44px !important;
  max-width: 44px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid #e8e8e8 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  display: block !important;
}


/* ── Mobile ── */
@media (max-width: 768px) {
  /* Painel ocupa ecrã completo */
  .cart-widget-side {
    width: 100vw !important;
    max-width: 100vw !important;
  }
  /* Logos mais compactos em mobile */
  .moliel-payment-methods {
    opacity: 0.45 !important;
    gap: 6px !important;
  }
  .moliel-payment-methods img {
    height: 18px !important;
    max-width: unset !important;
  }
	
}

/* ══════════════════════════════════════
   12. MINI-CART LATERAL — VAZIO
══════════════════════════════════════ */

/* Esconde mensagem e botão padrão do Woodmart */
.wd-empty-mini-cart .woocommerce-mini-cart__empty-message,
.wd-empty-mini-cart > a.btn {
  display: none !important;
}
/* Container principal centrado */
.moliel-cart-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 36px 20px;
}
/* Wrapper do ícone */
.mce-icon {
	position: relative; 
	margin-bottom: 20px; 
}
/* Tamanho do SVG do ícone */
.mce-icon svg { 
	width: 68px; 
	height: 68px; 
}
/* Badge vermelho "0" no canto do ícone */
.mce-badge {
  position: absolute;
  top: -4px;
  right: -8px;
  background: #c0392b;
  color: #fff;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Título "CARRINHO VAZIO" */
.mce-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 10px !important;
}
/* Subtítulo descritivo */
.mce-sub {
  font-size: 12px !important;
  color: #999 !important;
  line-height: 1.7 !important;
  margin-bottom: 22px !important;
}
/* Divisor com símbolo ao centro */
.mce-divider {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 12px;
  margin-bottom: 22px;
}
/* Linhas do divisor */
.mce-divider::before,
.mce-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: #ebebeb;
}
/* Símbolo ao centro do divisor */
.mce-divider span { font-size: 12px; color: #242948; }
/* Grupo de botões verticais */
.mce-btns {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  margin-bottom: 22px;
}
/* Estilos base partilhados dos botões */
.mce-btn-primary,
.mce-btn-secondary {
  display: block !important;
  width: 100% !important;
  padding: 14px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
}
/* Botão primário navy → vermelho no hover */
.mce-btn-primary {
  background: #242948 !important;
  color: #fff !important;
  border: 1.5px solid #242948 !important;
}
.mce-btn-primary:hover {
  background: #c0392b !important;
  border-color: #c0392b !important;
  color: #fff !important;
}
/* Botão secundário outline → navy no hover */
.mce-btn-secondary {
  background: transparent !important;
  color: #242948 !important;
  border: 1.5px solid #242948 !important;
}
.mce-btn-secondary:hover {
  background: #242948 !important;
  color: #fff !important;
}
/* Linha separadora antes das categorias */
.mce-line { width: 100%; height: 1px; background: #f0f0f0; margin-bottom: 20px; }
/* Label "O QUE PROCURAS?" */
.mce-cats-label {
  font-size: 9px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: #bbb !important;
  margin-bottom: 12px !important;
}
/* Grid de pills de categorias */
.mce-cats { display: flex; flex-wrap: wrap; gap: 7px; justify-content: center; margin-bottom: 22px; }
/* Cada pill de categoria */
.mce-pill {
  background: #fff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 30px !important;
  padding: 6px 13px !important;
  font-size: 11px !important;
  color: #242948 !important;
  text-decoration: none !important;
  transition: border-color 0.2s, background 0.2s !important;
  white-space: nowrap !important;
}
/* Hover das pills */
.mce-pill:hover { border-color: #242948 !important; background: #f8f8f8 !important; }
/* Banner de código de desconto */
.mce-discount {
  background: #f0f3fa;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 11px !important;
  color: #555 !important;
  line-height: 1.6;
  width: 100%;
}
/* Código em destaque vermelho */
.mce-discount strong { color: #c0392b; font-weight: 600; }
/* Força layout flex no container vazio */
.wd-empty-mini-cart,
.wd-scroll-content .wd-empty-mini-cart,
.shopping-cart-widget-body .wd-empty-mini-cart {
  display: flex !important;
  flex-direction: column !important;
}
/* Esconde ícones SVG padrão do Woodmart */
.wd-empty-mini-cart > svg,
.wd-empty-mini-cart > img,
.wd-empty-mini-cart .wd-empty-cart-icon,
.wd-empty-mini-cart .cart-empty-icon,
.wd-empty-mini-cart > .wd-icon,
.shopping-cart-widget-body .wd-empty-mini-cart::before,
.wd-scroll-content > svg,
.wd-scroll-content > img {
  display: none !important;
}
/* Esconde o footer do painel quando vazio */
.shopping-cart-widget-footer.wd-cart-empty {
  display: none !important;
}


/* ══════════════════════════════════════
   13. BARRA PORTES GRÁTIS
══════════════════════════════════════ */

/* Container da barra — fundo cinza suave */
.wd-shipping-progress-bar {
  background: #f8f8f8 !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 16px 30px !important;
  margin-bottom: 16px !important;
  box-shadow: 0 1px 0 #e8e8e8 !important;
  overflow: visible !important;
}
/* Linha accent navy→vermelho no topo */
.wd-shipping-progress-bar::before {
  content: '' !important;
  display: block !important;
  height: 2px !important;
  background: linear-gradient(90deg, #242948, #c0392b) !important;
  border-radius: 2px 2px 0 0 !important;
  margin: -16px -30px 14px !important;
}
/* Texto da mensagem de progresso */
.wd-shipping-progress-bar .progress-msg {
  font-size: 12px !important;
  color: #888 !important;
  text-align: center !important;
  margin-bottom: 12px !important;
  line-height: 1.6 !important;
}
/* Valor em destaque na mensagem */
.wd-shipping-progress-bar .progress-msg strong {
  color: #242948 !important;
  font-weight: 700 !important;
}
/* Track cinza da barra com overflow para o camião */
.wd-progress-bar.wd-free-progress-bar .progress-area {
  background: #e0e0e0 !important;
  border-radius: 30px !important;
  height: 15px !important;
  overflow: visible !important;
  position: relative !important;
  margin-right: 20px !important;
}
/* Preenchimento da barra navy */
.wd-progress-bar.wd-free-progress-bar .progress-area .progress-bar {
  background: #242948 !important;
  border-radius: 30px !important;
  height: 100% !important;
  position: relative !important;
  transition: width 0.5s ease, background 0.4s ease !important;
}
/* Remove pseudo-elemento desnecessário */
.wd-free-progress-bar .progress-area::after {
  display: none !important;
}
/* Ícone camião no fim da barra */
.wd-free-progress-bar .progress-bar::before {
  content: "" !important;
  position: absolute !important;
  right: -7px !important;
  top: 50% !important;
  margin-top: -14px !important;
  width: 28px !important;
  height: 28px !important;
  background-color: #242948 !important;
  border-radius: 50% !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Crect x='1' y='3' width='15' height='13' rx='1'/%3E%3Cpath d='M16 8h4l3 5v4h-7V8z'/%3E%3Ccircle cx='5.5' cy='18.5' r='2.5'/%3E%3Ccircle cx='18.5' cy='18.5' r='2.5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 14px !important;
  animation: truckDrive 1.2s ease-in-out infinite !important;
}
/* Barra verde quando portes grátis atingidos */
.wd-free-progress-bar .progress-area .progress-bar[style*="width: 100%"] {
  background: #27ae60 !important;
}
/* Mensagem verde quando portes atingidos */
.wd-shipping-progress-bar:has(.progress-bar[style*="width: 100%"]) .progress-msg {
  color: #27ae60 !important;
  font-weight: 600 !important;
}
/* Animação de celebração quando 100% */
.wd-free-progress-bar .progress-area .progress-bar[style*="width: 100%"]::before {
  animation: truckCelebrate 0.7s ease-in-out infinite !important;
}
/* Animação — camião conduz lateralmente */
@keyframes truckDrive {
  0%   { margin-right: 0px; }
  30%  { margin-right: -3px; }
  60%  { margin-right: 2px; }
  100% { margin-right: 0px; }
}
/* Animação — camião salta ao chegar */
@keyframes truckCelebrate {
  0%   { transform: translateY(0px); }
  25%  { transform: translateY(-6px); }
  50%  { transform: translateY(0px); }
  75%  { transform: translateY(-3px); }
  100% { transform: translateY(0px); }
}


/* ══════════════════════════════════════
   14. PÁGINA CARRINHO — COM PRODUTOS
══════════════════════════════════════ */

/* Header "PRODUTO" navy por cima da tabela */
.woocommerce-cart-form table.cart {
  position: relative !important;
  border: none !important;
  border-radius: 0 0 10px 10px !important;
  overflow: hidden !important;
  border-collapse: collapse !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
}
/* Cabeçalho navy */
.woocommerce-cart-form table.cart thead th {
  background: #242948 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 12px 16px !important;
  border: none !important;
}
/* Separador entre linhas */
.woocommerce-cart-form table.cart tbody tr {
  border-bottom: 1px solid #f0f0f0 !important;
}
/* Células do corpo da tabela */
.woocommerce-cart-form table.cart tbody td {
  padding: 16px !important;
  vertical-align: middle !important;
  border: none !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
/* Imagem do produto */
.woocommerce-cart-form table.cart .product-thumbnail img {
  width: 80px !important;
  height: 80px !important;
}

/* Nome do produto */
.woocommerce-cart-form table.cart .product-name a {
  margin-top: 10px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #242948 !important;
  text-decoration: none !important;
}
/* Preço e subtotal */
.woocommerce-cart-form table.cart .product-price,
.woocommerce-cart-form table.cart .product-subtotal {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #242948 !important;
}
/* ── Cupão ── */
.woocommerce-cart-form .coupon {
  background: #fff !important;
  border-radius: 10px !important;
  padding: 16px !important;
  margin-top: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
  display: flex !important;
  gap: 8px !important;
}
.woocommerce-cart-form .coupon input {
  flex: 1 !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 6px !important;
  padding: 11px 14px !important;
  font-size: 13px !important;
  color: #242948 !important;
  outline: none !important;
}
.woocommerce-cart-form .coupon input::placeholder {
  color: #bbb !important;
}
.woocommerce-cart-form .coupon .button {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 11px 20px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}


/* ══════════════════════════════════════
   15. TOTAL DO CARRINHO
══════════════════════════════════════ */

/* Esconde título exterior "CART TOTALS" do bloco Woodmart */
.wd-page-content .wp-block-wd-title.title {
  display: none !important;
}

/* Remove borda exterior do wrapper Woodmart */
#wd-4838d8fb,
.wp-block-wd-column.wd-align-s-start {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
}

/* Container do resumo de totais */
.cart_totals {
  background: #fff !important;
  border-radius: 10px !important;
  padding: 20px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
  border: none !important;
  margin-top: 12px !important;
}

/* Título "Total no carrinho" centrado */
.cart_totals h2,
.cart-totals-inner h2,
.wd-cart-totals h2 {
  display: block !important;
  text-align: center !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 20px !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

/* Tabela de totais */
.cart_totals table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.cart_totals table tr {
  border: none !important;
}
.cart_totals table th,
.cart_totals table td {
  padding: 10px 0 !important;
  border: none !important;
  font-size: 13px !important;
  color: #242948 !important;
  vertical-align: top !important;
}
.cart_totals table th {
  font-weight: 500 !important;
  color: #aaa !important;
  font-size: 12px !important;
  width: 40% !important;
}
.cart_totals table td {
  text-align: right !important;
  font-weight: 500 !important;
}

/* Texto de envio */
.cart_totals .woocommerce-shipping-totals p {
  margin: 0 !important;
  font-size: 11px !important;
  color: #aaa !important;
  line-height: 1.5 !important;
}
.cart_totals .woocommerce-shipping-totals .woocommerce-Price-amount {
  color: #27ae60 !important;
  font-weight: 600 !important;
}

/* Link "Alterar morada" */
.cart_totals a.shipping-calculator-button {
  font-size: 11px !important;
  color: #aaa !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.cart_totals a.shipping-calculator-button:hover {
  color: #c0392b !important;
}

/* Linha de total final */
.cart_totals .order-total th,
.cart_totals .order-total td {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #242948 !important;
  padding-top: 14px !important;
  border-top: 1px solid #e8e8e8 !important;
}
.cart_totals .order-total td .woocommerce-Price-amount {
  font-size: 17px !important;
  font-weight: 700 !important;
}

/* Cupão — linha a verde */
.cart_totals .cart-discount th,
.cart_totals .cart-discount th a,
.cart_totals .cart-discount td,
.cart_totals .cart-discount td .woocommerce-Price-amount {
  color: #27ae60 !important;
  font-weight: 600 !important;
}

/* Botão "Finalizar Compra" */
.cart_totals .wc-proceed-to-checkout {
  margin-top: 20px !important;
}
.cart_totals .wc-proceed-to-checkout .checkout-button {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 16px !important;
  width: 100% !important;
  display: block !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: background 0.2s !important;
  box-sizing: border-box !important;
}
.cart_totals .wc-proceed-to-checkout .checkout-button:hover {
  background: #c0392b !important;
}


/* ══════════════════════════════════════
   15.1 WCPA — Botão editar + variações
══════════════════════════════════════ */

/* Botão "Deseja Modificar algo?" */
a.wcpa_edit_product {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 8px !important;
  padding: 6px 14px !important;
  background: transparent !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #888 !important;
  text-decoration: none !important;
  transition: all 0.2s !important;
  cursor: pointer !important;
}
a.wcpa_edit_product::before {
  content: "✏️" !important;
  font-size: 10px !important;
}
a.wcpa_edit_product:hover {
  border-color: #242948 !important;
  color: #242948 !important;
  background: #f8f8f8 !important;
}

/* Ordem: nome → variações → botão editar */
.shop_table.cart td.product-name {
  display: flex !important;
  flex-direction: column !important;
}
.shop_table.cart td.product-name > a {
  order: 1 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #242948 !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  margin-bottom: 6px !important;
}
.shop_table.cart td.product-name ul.variation {
  order: 2 !important;
  margin-top: 4px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  list-style: none !important;
  padding: 0 !important;
}
.shop_table.cart td.product-name a.wcpa_edit_product {
  order: 3 !important;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
  width: fit-content !important;
}

/* ── Cada linha de variação ── */
.shop_table.cart td.product-name ul.variation li {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
  width: 100% !important;
  font-size: 11px !important;
  color: #888 !important;
  line-height: 1.5 !important;
  padding: 2px 0 !important;
  border: none !important;
}

/* Label da variação em negrito */
.shop_table.cart td.product-name ul.variation li .item-variation-name {
  font-weight: 600 !important;
  color: #555 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* Valor da variação */
.shop_table.cart td.product-name ul.variation li .item-variation-value {
  color: #888 !important;
  text-align: right !important;
  flex: 1 !important;
	
}

/* ── Imagens upload do cliente ── */

/* Imagem normal (ex: Fotografia Realista) */
.shop_table.cart td.product-name ul.variation li img.wcpa_img,
.shop_table.cart td.product-name ul.variation li .item-variation-value img {
  width: 44px !important;
  height: 44px !important;
  max-width: 44px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid #e8e8e8 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  display: block !important;
  flex-shrink: 0 !important;
  margin-left: auto !important;
}

/* wcpa_empty_label — imagem à direita sem label */
.shop_table.cart td.product-name ul.variation li.variation-wcpa_empty_label {
  justify-content: flex-end !important;
}
.shop_table.cart td.product-name ul.variation li.variation-wcpa_empty_label .item-variation-name {
  display: none !important;
}
.shop_table.cart td.product-name ul.variation li.variation-wcpa_empty_label .item-variation-value {
  flex: 0 !important;
  display: flex !important;
  justify-content: flex-end !important;
}
.shop_table.cart .variation li.variation-wcpa_empty_label img.wcpa_img {
  width: 44px !important;
  height: 44px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid #e8e8e8 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  display: block !important;
}

/* Esconde nome do ficheiro — mantém só a imagem */
.shop_table.cart td.product-name ul.variation li .item-variation-value a {
  font-size: 0 !important;
  display: inline-flex !important;
}
.shop_table.cart td.product-name ul.variation li .item-variation-value a img {
  font-size: initial !important;
}

/* Esconde linhas de variação vazias */
.shop_table.cart td.product-name ul.variation li:empty {
  display: none !important;
}
.shop_table.cart .variation li.variation-wcpa_empty_label a span:not(:has(img)) {
  display: none !important;
}

/* Thumbnail do produto no carrinho */
.woocommerce-cart-form table.cart .product-thumbnail img,
.shop_table.cart .product-thumbnail img,
.shop_table.cart .product-thumbnail a img {
  width: 80px !important;
  height: 80px !important;
  min-width: 80px !important;
  max-width: 80px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  border: 1px solid #e8e8e8 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  display: block !important;
}
.shop_table.cart td.product-thumbnail {
  width: 80px !important;
  min-width: 80px !important;
  padding: 16px 12px 16px 0 !important;
  border: none !important;
}
.shop_table.cart td.product-thumbnail a {
  display: block !important;
  width: 80px !important;
  height: 80px !important;
  flex-shrink: 0 !important;
}

/* ══════════════════════════════════════
   15.2 Mini-cart — imagem upload
══════════════════════════════════════ */

/* Imagem upload no mini-cart — tamanho fixo */
.woocommerce-mini-cart-item .variation li img,
.woocommerce-mini-cart-item .variation li a img,
.woocommerce-mini-cart-item .variation dd img {
  width: 36px !important;
  height: 36px !important;
  max-width: 36px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  border: 1px solid #e8e8e8 !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
  display: inline-block !important;
  vertical-align: middle !important;
  flex-shrink: 0 !important;
}

/* Esconde nome do ficheiro */
.woocommerce-mini-cart-item .variation li a,
.woocommerce-mini-cart-item .variation dd a {
  font-size: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
}
.woocommerce-mini-cart-item .variation li a img,
.woocommerce-mini-cart-item .variation dd a img {
  font-size: 14px !important;
}

/* Imagem dentro de parágrafo no mini-cart */
.woocommerce-mini-cart-item .variation li p img {
  width: 36px !important;
  height: 36px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
}

/* wcpa_empty_label no mini-cart — à direita */
.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label {
  display: flex !important;
  justify-content: flex-end !important;
}
.woocommerce-mini-cart-item .variation li.variation-wcpa_empty_label .item-variation-name {
  display: none !important;
}


/* ══════════════════════════════════════
   15.3 CARRINHO MOBILE
══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Header "PRODUTO" navy */
  .woocommerce-cart-form::before {
    content: 'PRODUTO' !important;
    display: block !important;
    background: #242948 !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    text-align: center !important;
    padding: 12px !important;
    border-radius: 10px 10px 0 0 !important;
  }

  /* Esconde cabeçalho da tabela */
  .shop_table.cart thead {
    display: none !important;
  }

  /* Reduz espaço no topo */
  .wd-page-content.main-page-wrapper > main,
  .wd-content-layout.content-layout-wrapper {
    padding-top: 10px !important;
    margin-top: 0 !important;
  }
  /* Botão × no canto superior direito */
  .shop_table.cart td.product-remove {
    display: block !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: auto !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
  }
  /* Thumbnail mobile */
  .shop_table.cart td.product-thumbnail {
    border: none !important;
    padding: 0 !important;
    width: 80px !important;
    min-width: 80px !important;
    flex-shrink: 0 !important;
			margin: 12px 12px 12px 12px !important;
  }
  .shop_table.cart td.product-thumbnail a {
    display: block !important;
    width: 80px !important;
    height: 80px !important;
  }
  .shop_table.cart td.product-thumbnail img,
  .shop_table.cart td.product-thumbnail a img {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    border: 1px solid #e8e8e8 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    display: block !important;
  }

  /* Cada produto = card grid como mini-cart */
.shop_table.cart tbody tr.cart_item {
  display: grid !important;
  grid-template-columns: 80px 1fr !important;
  gap: 0 12px !important;
  position: relative !important;
  padding: 16px 12px !important;
  border-bottom: 1px solid #f0f0f0 !important;
  align-items: start !important;
}

/* Célula do nome — coluna direita */
.shop_table.cart td.product-name {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 24px 0 0 !important;
  border: none !important;
  box-sizing: border-box !important;
  grid-column: 2 !important;
}

/* Nome do produto */
.shop_table.cart td.product-name > a:first-of-type {
  display: block !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #242948 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  margin-bottom: 6px !important;
}

/* Variações mobile */
.shop_table.cart td.product-name ul.variation {
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

/* Cada linha de variação mobile */
.shop_table.cart td.product-name ul.variation li {
  font-size: 11px !important;
  color: #666 !important;
  line-height: 1.5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
  padding: 2px 0 !important;
}
		
  /* Esconde label wcpa_empty_label em mobile */
  .shop_table.cart ul.variation li.variation-wcpa_empty_label .item-variation-name {
    display: none !important;
  }
  .shop_table.cart ul.variation li.variation-wcpa_empty_label {
    justify-content: flex-end !important;
  }

  /* Label da variação em negrito */
  .shop_table.cart ul.variation li .item-variation-name {
    font-weight: 600 !important;
    color: #242948 !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }

  /* Valor do extra à direita */
  .shop_table.cart td.product-name ul.variation li:not(.variation-wcpa_empty_label) .item-variation-value {
    margin-left: auto !important;
    text-align: right !important;
  }
	/*Margin*/
	.shop_table.cart td.product-price{
    margin-top: 20px !important;
  }
 /* Preço, Quantidade e Subtotal — linha completa separada */
  .shop_table.cart td.product-price,
  .shop_table.cart td.product-quantity,
  .shop_table.cart td.product-subtotal {
    grid-column: 1 / -1 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-top: 1px solid #f0f0f0 !important;
    padding: 10px 5px !important;
    font-size: 13px !important;
    color: #242948 !important;
  }

  /* Labels antes de cada linha */
  .shop_table.cart td.product-price::before {
    content: 'Preço' !important;
    font-weight: 600 !important;
		font-size: 15px !important;
    color: #242948 !important;
  }
  .shop_table.cart td.product-quantity::before {
    content: 'Quantidade' !important;
    font-weight: 600 !important;
		font-size: 15px !important;
    color: #242948 !important;
  }
  .shop_table.cart td.product-subtotal::before {
    content: 'Subtotal' !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    color: #242948 !important;
  }

  /* Subtotal com separador mais forte */
  .shop_table.cart td.product-subtotal {
    border-top: 1.5px solid #e8e8e8 !important;
  }
  .shop_table.cart td.product-subtotal .woocommerce-Price-amount {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #242948 !important;
  }

  /* Qty +/- */
  .shop_table.cart td.product-quantity .quantity {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
  }
  .shop_table.cart td.product-quantity .qty {
    width: 32px !important;
    text-align: center !important;
    font-size: 13px !important;
    border: none !important;
    background: none !important;
  }
  .shop_table.cart td.product-quantity .btn {
    width: 28px !important;
    height: 28px !important;
    border: 1.5px solid #242948 !important;
    border-radius: 6px !important;
    background: #242948 !important;
    font-size: 16px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    line-height: 1 !important;
    padding: 0 !important;
  }
}
/*Botao deseja modificar*/
.shop_table.cart tbody tr.cart_item > a.wcpa_edit_product,
  a.wcpa_edit_product {
    font-size: 3px !important;

  }
/* Cupão linha a verde — mobile */
.shop_table.shop_table_responsive .cart-discount th,
.shop_table.shop_table_responsive .cart-discount th a,
.shop_table.shop_table_responsive .cart-discount td,
.shop_table.shop_table_responsive .cart-discount td::before,
.shop_table.shop_table_responsive .cart-discount .woocommerce-Price-amount {
  color: #27ae60 !important;
  font-weight: 600 !important;
}
/* ══════════════════════════════════════
   16. PÁGINA CARRINHO — VAZIO
══════════════════════════════════════ */

/* Container principal centrado */
.cart-empty-page {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 48px 24px;
  max-width: 500px;
  margin: 0 auto;
}
/* Wrapper do ícone do carrinho */
.cart-icon-wrap {
  position: relative;
  margin-bottom: 24px;
}
/* SVG do ícone */
.cart-icon-wrap svg {
  width: 76px;
  height: 76px;
  stroke: #242948;
}
/* Badge vermelho "0" no canto do ícone */
.cart-dot {
  position: absolute;
  top: -2px;
  right: -6px;
  background: #c0392b;
  color: #fff;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Título da página vazia */
.cart-empty-page h2 {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 3.5px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 12px !important;
}
/* Descrição discreta */
.empty-desc {
  font-size: 13px !important;
  color: #aaa !important;
  line-height: 1.7 !important;
  margin-bottom: 28px !important;
}
/* Divisor com símbolo ao centro */
.empty-divider {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 14px;
  margin-bottom: 28px;
}
/* Linhas do divisor */
.empty-divider::before,
.empty-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: #e8e8e8;
}
/* Símbolo ao centro */
.empty-divider span { 
	font-size: 13px; 
	color: #242948; 
}
/* Grupo de botões */
.empty-btns {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  margin-bottom: 32px;
}
/* Estilos base dos botões */
.empty-btn-primary,
.empty-btn-secondary {
  display: block !important;
  width: 100% !important;
  padding: 16px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
}
/* Botão primário navy → vermelho no hover */
.empty-btn-primary {
  background: #242948 !important;
  color: #fff !important;
  border: 1.5px solid #242948 !important;
}
.empty-btn-primary:hover {
  background: #c0392b !important;
  border-color: #c0392b !important;
  color: #fff !important;
}
/* Botão secundário outline → navy no hover */
.empty-btn-secondary {
  background: transparent !important;
  color: #242948 !important;
  border: 1.5px solid #242948 !important;
}
.empty-btn-secondary:hover {
  background: #242948 !important;
  color: #fff !important;
}
/* Linha separadora antes das categorias */
.empty-line { 
	width: 100%; 
	height: 1px; 
	background: #ebebeb; 
	margin-bottom: 24px; 
}
/* Label "O QUE PROCURAS?" */
.empty-cats-label {
  font-size: 9px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: #bbb !important;
  margin-bottom: 14px !important;
}
/* Grid de pills de categorias */
.empty-cats { 
	display: flex; 
	flex-wrap: wrap; 
	gap: 8px; 
	justify-content: center; 
	margin-bottom: 28px; 
}
/* Cada pill de categoria */
.empty-pill {
  background: #fff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 30px !important;
  padding: 7px 16px !important;
  font-size: 12px !important;
  color: #242948 !important;
  text-decoration: none !important;
  transition: border-color 0.2s, background 0.2s !important;
  white-space: nowrap !important;
}
/* Hover das pills */
.empty-pill:hover {
  border-color: #242948 !important;
  background: #f8f8f8 !important;
  color: #242948 !important;
}
/* Banner de código de desconto */
.empty-discount {
  background: #f0f3fa;
  border-radius: 8px;
  padding: 14px 18px;
  font-size: 12px !important;
  color: #666 !important;
  line-height: 1.6;
  width: 100%;
}
/* Código em destaque vermelho */
.empty-discount strong { 
	color: #c0392b; 
	font-weight: 600; 
}
/* Esconde elementos padrão do bloco WooCommerce */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__image,
.wp-block-woocommerce-empty-cart-block p:not(.cart-empty-page *),
.wp-block-woocommerce-empty-cart-block .wc-block-components-button {
  display: none !important;
}


/* ══════════════════════════════════════
   17. NOTIFICAÇÕES
══════════════════════════════════════ */

/* Esconde "Carrinho actualizado" e mensagens similares */
.woocommerce-notices-wrapper .woocommerce-message {
  display: none !important;
}


/* ══════════════════════════════════════
   18. PÁGINA DE AGRADECIMENTO
══════════════════════════════════════ */

/* Container principal centrado */
.moliel-thankyou {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 48px 24px !important;
  max-width: 600px !important;
  margin: 0 auto !important;
}
/* Wrapper do ícone de check */
.mty-icon { 
	margin-bottom: 24px !important; 
	animation: mtyPop 0.5s ease !important; 
}
/* SVG do ícone de check */
.mty-icon svg { 
	width: 80px !important; 
	height: 80px !important; 
	display: block !important; 
}
/* Animação de entrada do ícone */
@keyframes mtyPop {
  0%   { transform: scale(0.5); opacity: 0; }
  70%  { transform: scale(1.1); }
  100% { transform: scale(1);   opacity: 1; }
}
/* Título principal */
.mty-title {
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 14px !important;
  margin-top: 0 !important;
}
/* Subtítulo descritivo */
.mty-sub {
  font-size: 13px !important;
  color: #999 !important;
  line-height: 1.8 !important;
  margin-bottom: 28px !important;
  margin-top: 0 !important;
}
/* Divisor com símbolo */
.mty-divider {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  gap: 14px !important;
  margin-bottom: 32px !important;
}
/* Linhas do divisor */
.mty-divider::before,
.mty-divider::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e8e8e8 !important;
}
/* Símbolo ao centro */
.mty-divider span { 
	font-size: 13px !important; 
	color: #242948 !important; 
}
/* Linha de passos (confirmação → produção → envio) */
.mty-steps {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin-bottom: 32px !important;
  flex-wrap: wrap !important;
}
/* Cada passo */
.mty-step {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 1 !important;
  min-width: 80px !important;
  max-width: 120px !important;
}
/* Círculo com ícone do passo */
.mty-step-icon {
  font-size: 24px !important;
  background: #f8f8f8 !important;
  border-radius: 50% !important;
  width: 52px !important;
  height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #f0f0f0 !important;
}
/* Título do passo */
.mty-step-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
}
/* Descrição do passo */
.mty-step-desc { 
	font-size: 10px !important; 
	color: #aaa !important; 
	line-height: 1.4 !important; 
}
/* Seta entre passos */
.mty-step-arrow { 
	font-size: 18px !important; 
	color: #e0e0e0 !important; 
	flex-shrink: 0 !important; 
	margin-bottom: 20px !important; 
}
/* Linha separadora horizontal */
.mty-line { 
	width: 100% !important; 
	height: 1px !important; 
	background: #f0f0f0 !important; 
	margin: 24px 0 !important; 
}
/* Grupo de botões */
.mty-btns {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: 100% !important;
  margin-bottom: 8px !important;
}
/* Estilos base dos botões */
.mty-btn-primary,
.mty-btn-secondary {
  display: block !important;
  width: 100% !important;
  padding: 16px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
}
/* Botão primário navy → vermelho no hover */
.mty-btn-primary {
  background: #242948 !important;
  color: #fff !important;
  border: 1.5px solid #242948 !important;
}
.mty-btn-primary:hover {
  background: #c0392b !important;
  border-color: #c0392b !important;
  color: #fff !important;
}
/* Botão secundário outline → navy no hover */
.mty-btn-secondary {
  background: transparent !important;
  color: #242948 !important;
  border: 1.5px solid #242948 !important;
}
.mty-btn-secondary:hover { 
	background: #242948 !important; 
	color: #fff !important; 
}
/* Label de partilha social */
.mty-share-label {
  font-size: 9px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #bbb !important;
  margin-bottom: 12px !important;
  margin-top: 0 !important;
}
/* Container dos botões sociais */
.mty-share { 
	display: flex !important; 
	gap: 10px !important; 
	justify-content: center !important; 
	flex-wrap: wrap !important; 
}
/* Cada botão social em pill */
.mty-share-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 10px 20px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 30px !important;
  font-size: 12px !important;
  color: #242948 !important;
  text-decoration: none !important;
  transition: all 0.2s !important;
  font-weight: 500 !important;
}
/* Hover botão social → navy */
.mty-share-btn:hover {
  background: #242948 !important;
  color: #fff !important;
  border-color: #242948 !important;
}
/* Banner de desconto na página de agradecimento */
.mty-discount {
  background: #f0f3fa !important;
  border-radius: 8px !important;
  padding: 14px 18px !important;
  font-size: 12px !important;
  color: #666 !important;
  line-height: 1.6 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin-top: 8px !important;
}
/* Código em destaque vermelho */
.mty-discount strong { 
	color: #c0392b !important; 
	font-weight: 700 !important; 
}
/* Container inferior da página */
.moliel-thankyou-bottom {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 0 24px 48px !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}
/* Esconde mensagem de sucesso nativa do WooCommerce */
.woocommerce-order .woocommerce-notice--success { 
	display: none !important; 
}

/* Esconde botão "Comprar Novamente" */
p.order-again {
  display: none !important;
}

/* Mobile — passos compactos */
@media (max-width: 768px) {
  .mty-steps { gap: 4px !important; }
  .mty-step-arrow { font-size: 14px !important; }
  .mty-step { min-width: 70px !important; }
  .mty-step-icon { width: 44px !important; 
		height: 44px !important; 
		font-size: 20px !important; 
	}
}

/* Container da página de encomenda */
.woocommerce-order {
  max-width: 680px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}
/* Mensagem de sucesso verde */
.woocommerce-notice--success.woocommerce-thankyou-order-received {
  background: #f0faf4 !important;
  border: none !important;
  border-left: 3px solid #27ae60 !important;
  border-radius: 6px !important;
  padding: 16px 20px !important;
  font-size: 13px !important;
  color: #27ae60 !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 32px !important;
}
/* Resumo da encomenda (número, data, total, método) */
.woocommerce-order-overview.order_details {
  display: flex !important;
  gap: 0 !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 36px !important;
  border: 1px solid #f0f0f0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #f8f8f8 !important;
}
/* Cada item do resumo */
.woocommerce-order-overview.order_details li {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px 16px !important;
  border-right: 1px solid #f0f0f0 !important;
  text-align: center !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #bbb !important;
}
/* Remove borda do último item */
.woocommerce-order-overview.order_details li:last-child { 
	border-right: none !important; 
}
/* Valor de cada item em destaque */
.woocommerce-order-overview.order_details li strong {
  display: block !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #242948 !important;
  margin-top: 6px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
/* Títulos de secção (Detalhes, Morada) */
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-order-details h2,
.woocommerce-customer-details h2,
.woocommerce-column h2 {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
/* Tabela de detalhes da encomenda */
.woocommerce-table--order-details {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 32px !important;
  border: 1px solid #f0f0f0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
/* Cabeçalho da tabela navy */
.woocommerce-table--order-details thead th {
  background: #242948 !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 12px 16px !important;
  border: none !important;
}
/* Separador entre linhas de produto */
.woocommerce-table--order-details tbody tr { 
	border-bottom: 1px solid #f8f8f8 !important; 
}
/* Células do corpo da tabela */
.woocommerce-table--order-details tbody td {
  padding: 14px 16px !important;
  font-size: 13px !important;
  color: #242948 !important;
  border: none !important;
}
/* Nome do produto */
.woocommerce-table--order-details .product-name { 
	font-weight: 500 !important; 
}
/* Preço à direita */
.woocommerce-table--order-details .product-total { 
	font-weight: 600 !important; 
	text-align: right !important; 
}
/* Rodapé da tabela (subtotal, envio, total) */
.woocommerce-table--order-details tfoot tr th,
.woocommerce-table--order-details tfoot tr td {
  padding: 12px 16px !important;
  font-size: 12px !important;
  color: #888 !important;
  border-top: 1px solid #f0f0f0 !important;
  border-bottom: none !important;
}
/* Linha total final em destaque */
.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-table--order-details tfoot tr:last-child td {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #242948 !important;
  border-top: 2px solid #f0f0f0 !important;
}
/* Bloco de morada de faturação */
.woocommerce-customer-details address {
  font-style: normal !important;
  font-size: 13px !important;
  color: #555 !important;
  line-height: 1.8 !important;
  background: #f8f8f8 !important;
  border-radius: 8px !important;
  padding: 16px 20px !important;
  border: none !important;
}
/* Botão "Ver encomenda" navy */
.woocommerce-order .button,
.woocommerce-order a.button {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 10px 20px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background 0.2s !important;
}
/* Hover botão → vermelho */
.woocommerce-order a.button:hover { 
	background: #c0392b !important; 
}
/* Instrução de pagamento em itálico */
.woocommerce-PaymentMethod,
.woocommerce-order .woocommerce-order-pay-info p {
  font-size: 12px !important;
  color: #888 !important;
  font-style: italic !important;
  margin-top: 8px !important;
}

/* Mobile — resumo em lista vertical */
@media (max-width: 600px) {
  .woocommerce-order-overview.order_details { 
		flex-direction: column !important; 
	}
  .woocommerce-order-overview.order_details li {
    border-right: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    text-align: left !important;
  }
  .woocommerce-order-overview.order_details li strong { 
		margin-top: 0 !important; 
	}
}


/* ══════════════════════════════════════
   19. PÁGINA 404
══════════════════════════════════════ */

/* Container principal centrado */
.moliel-404 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 64px 24px !important;
  max-width: 560px !important;
  margin: 0 auto !important;
}
/* Linha com dois "4" e ícone ao centro */
.m404-number { 
	display: flex !important; 
	align-items: center !important; 
	justify-content: center !important; 
	gap: 12px !important; 
	margin-bottom: 32px !important; 
}
/* Dígitos 4 e 4 — grandes e transparentes */
.m404-digit {
  font-size: 80px !important;
  font-weight: 700 !important;
  color: #242948 !important;
  letter-spacing: -4px !important;
  line-height: 1 !important;
  opacity: 0.15 !important;
}
/* Ícone SVG pulsante ao centro */
.m404-icon svg { 
	width: 80px !important; 
	height: 80px !important; 
	display: block !important; 
	animation: m404Pulse 2s ease-in-out infinite !important;
}
/* Animação de pulso do ícone */
@keyframes m404Pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } }
/* Título da página 404 */
.m404-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 12px !important;
  margin-top: 0 !important;
}
/* Subtítulo descritivo */
.m404-sub { 
	font-size: 13px !important; 
	color: #aaa !important; 
	line-height: 1.7 !important; 
	margin-bottom: 28px !important; 
	margin-top: 0 !important; 
}
/* Divisor com símbolo */
.m404-divider { 
	display: flex !important; 
	align-items: center !important; 
	width: 100% !important; 
	gap: 14px !important; 
	margin-bottom: 28px !important; 
}
/* Linhas do divisor */
.m404-divider::before, .m404-divider::after { 
	content: '' !important; 
	flex: 1 !important; 
	height: 1px !important; 
	background: #e8e8e8 !important; 
}
/* Símbolo ao centro */
.m404-divider span { 
	font-size: 13px !important; 
	color: #242948 !important; 
}
/* Grupo de botões */
.m404-btns { 
	display: flex !important; 
	flex-direction: column !important; 
	gap: 12px !important; 
	width: 100% !important; 
	margin-bottom: 32px !important; 
}
/* Estilos base dos botões */
.m404-btn-primary,
.m404-btn-secondary {
  display: block !important;
  width: 100% !important;
  padding: 16px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
}
/* Botão primário navy → vermelho no hover */
.m404-btn-primary { 
	background: #242948 !important; 
	color: #fff !important; 
	border: 1.5px solid #242948 !important; 
}
.m404-btn-primary:hover { 
	background: #c0392b !important; 
	border-color: #c0392b !important; 
	color: #fff !important; 
}
/* Botão secundário outline → navy no hover */
.m404-btn-secondary { 
	background: transparent !important; 
	color: #242948 !important; 
	border: 1.5px solid #242948 !important; 
}
.m404-btn-secondary:hover { 
	background: #242948 !important; 
	color: #fff !important; 
}
/* Linha separadora */
.m404-line { 
	width: 100% !important; 
	height: 1px !important; 
	background: #f0f0f0 !important;
	margin-bottom: 24px !important;
}
/* Label "O QUE PROCURAS?" */
.m404-cats-label { 
	font-size: 9px !important; 
	letter-spacing: 2.5px !important; 
	text-transform: uppercase !important; 
	color: #bbb !important; 
	margin-bottom: 14px !important; 
	margin-top: 0 !important; 
}
/* Grid de pills de categorias */
.m404-cats { 
	display: flex !important; 
	flex-wrap: wrap !important; 
	gap: 8px !important; 
	justify-content: center !important; 
	margin-bottom: 28px !important; 
	padding: 0 !important; 
}
/* Cada pill de categoria */
.m404-pill {
  background: #fff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 30px !important;
  padding: 7px 16px !important;
  font-size: 12px !important;
  color: #242948 !important;
  text-decoration: none !important;
  transition: border-color 0.2s, background 0.2s !important;
  white-space: nowrap !important;
  display: inline-block !important;
}
/* Hover das pills */
.m404-pill:hover { 
	border-color: #242948 !important; 
	background: #f8f8f8 !important; 
	color: #242948 !important; 
}
/* Banner de ajuda com link para contacto */
.m404-help {
  background: #f8f8f8 !important;
  border-radius: 8px !important;
  padding: 14px 20px !important;
  font-size: 12px !important;
  color: #666 !important;
  line-height: 1.6 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
/* Texto em destaque */
.m404-help strong { 
	color: #242948 !important; 
	font-weight: 600 !important; 
}
/* Link de contacto → vermelho */
.m404-help a { 
	color: #c0392b !important; 
	text-decoration: underline !important; 
	text-underline-offset: 3px !important; 
	font-weight: 500 !important; 
}
/* Hover do link → navy */
.m404-help a:hover { color: #242948 !important; }

/* Mobile — layout mais compacto */
@media (max-width: 480px) {
  .moliel-404 { 
		padding: 40px 16px !important; 
	}
  .m404-digit { 
		font-size: 60px !important; 
	}
  .m404-icon svg { 
		width: 60px !important; 
		height: 60px !important; 
	}
}


/* ══════════════════════════════════════
   20. RODAPÉ
══════════════════════════════════════ */
/* Remove limitação de largura do container do rodapé */
.wd-footer.footer-container,
.wd-footer .container.main-footer,
.wd-footer .wd-entry-content {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Container geral do rodapé */
.moliel-footer {
  background: #fff !important;
  color: #242948 !important;
  border-top: 2px solid #242948 !important;
  margin-top: 0 !important;
}
/* Container centrado com padding lateral */
.mf-inner { 
	max-width: 1100px !important; 
	margin: 0 auto !important; 
	padding: 0 32px !important; 
}
/* Faixa de newsletter — fundo navy */
.mf-newsletter { 
	background: #242948 !important; 
	padding: 28px 0 !important; 
}
/* Conteúdo da newsletter em flex */
.mf-newsletter-inner {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  flex-wrap: wrap !important;
}
/* Coluna de texto da newsletter */
.mf-nl-text { 
	display: flex !important; 
	align-items: center !important; 
	gap: 16px !important; 
}
/* Ícone vermelho antes do título */
.mf-nl-icon { 
	font-size: 20px !important; 
	color: #c0392b !important; 
	flex-shrink: 0 !important; 
}
/* Título da newsletter */
.mf-nl-title { 
	font-size: 13px !important; 
	font-weight: 700 !important; 
	letter-spacing: 1px !important; 
	color: #fff !important; 
	margin: 0 0 4px !important; 
	text-transform: uppercase !important; 
}
/* Subtítulo da newsletter */
.mf-nl-sub { 
	font-size: 11px !important; 
	color: #666 !important; 
	margin: 0 !important; 
	line-height: 1.5 !important; 
}
/* Formulário de newsletter */
.mf-nl-form { 
	display: flex !important; 
	gap: 8px !important; 
	flex: 1 !important; 
	max-width: 420px !important; 
	min-width: 260px !important; 
}
/* Input de email */
.mf-nl-input {
  flex: 1 !important;
  border: 1px solid #2a2a3e !important;
  border-radius: 6px !important;
  padding: 11px 14px !important;
  font-size: 12px !important;
  color: #fff !important;
  background: #12122a !important;
  outline: none !important;
  transition: border-color 0.2s !important;
}
/* Placeholder do input */
.mf-nl-input::placeholder { 
	color: #444 !important; 
}
/* Focus do input → vermelho */
.mf-nl-input:focus { 
	border-color: #c0392b !important; 
}
/* Botão subscrever */
.mf-nl-btn {
  background: #c0392b !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 11px 20px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: background 0.2s !important;
}
/* Hover botão → navy com borda branca */
.mf-nl-btn:hover { 
	background: #242948 !important; 
	border: 1px solid #fff !important; 
}
/* Corpo principal do rodapé */
.mf-body { 
	padding: 48px 0 40px !important; 
}
/* Grid: coluna de marca + colunas de links */
.mf-body .mf-inner { 
	display: grid !important; 
	grid-template-columns: 260px 1fr !important; 
	gap: 48px !important; 
}
/* Coluna da marca */
.mf-brand { 
	display: flex !important; 
	flex-direction: column !important; 
	gap: 14px !important; 
}
/* Logo em texto */
.mf-logo { 
	font-size: 22px !important; 
	font-weight: 300 !important; 
	letter-spacing: 8px !important; 
	text-transform: uppercase !important; 
	color: #242948 !important; 
	text-decoration: none !important; 
	display: block !important; 
}
/* Slogan da marca */
.mf-slogan { 
	font-size: 12px !important; 
	color: #aaa !important; 
	line-height: 1.8 !important; 
	margin: 0 !important; 
}
/* Links de redes sociais em coluna */
.mf-social { 
	display: flex !important; 
	flex-direction: column !important; 
	gap: 10px !important; 
	margin-top: 4px !important; 
}
/* Cada link social */
.mf-social-link { 
	display: flex !important; 
	align-items: center !important; 
	gap: 8px !important; 
	font-size: 12px !important; 
	color: #aaa !important; 
	text-decoration: none !important; 
	transition: color 0.2s !important; 
	font-weight: 500 !important; 
}
/* Hover link social → vermelho */
.mf-social-link:hover { 
	color: #c0392b !important; 
}
/* SVG dentro do link social */
.mf-social-link svg { 
	flex-shrink: 0 !important; 
}
/* Grid de 3 colunas de links */
.mf-cols { 
	display: grid !important; 
	grid-template-columns: repeat(3, 1fr) !important; 
	gap: 32px !important; 
}
/* Título de cada coluna */
.mf-col-title { 
	font-size: 9px !important; 
	font-weight: 700 !important; 
	letter-spacing: 3px !important; 
	text-transform: uppercase !important; 
	color: #242948 !important; 
	margin: 0 0 16px !important; 
	padding-bottom: 10px !important; 
	border-bottom: 1px solid #f0f0f0 !important; 
}
/* Lista de links */
.mf-links { 
	list-style: none !important; 
	padding: 0 !important; 
	margin: 0 !important; 
	display: flex !important; 
	flex-direction: column !important; 
	gap: 10px !important; 
}
/* Cada link */
.mf-links a { 
	font-size: 12px !important; 
	color: #888 !important; 
	text-decoration: none !important; 
	transition: color 0.2s !important; 
	display: flex !important; 
	align-items: center !important; 
	gap: 6px !important; 
}
/* Hover link → navy */
.mf-links a:hover { 
	color: #242948 !important; 
}
/* Último link em vermelho (ex: promoções) */
.mf-links li:last-child a { 
	color: #c0392b !important; 
	font-weight: 600 !important; 
	margin-top: 4px !important; 
}
/* Lista de características (envio, garantia...) */
.mf-features { 
	list-style: none !important; 
	padding: 0 !important; 
	margin: 0 !important; 
	display: flex !important; 
	flex-direction: column !important; 
	gap: 12px !important; 
}
/* Cada característica com ícone */
.mf-features li { 
	display: flex !important; 
	align-items: flex-start !important; 
	gap: 10px !important; 
}
/* Ícone emoji da característica */
.mf-features li span { 
	font-size: 16px !important; 
	flex-shrink: 0 !important; 
	margin-top: 1px !important; 
}
/* Coluna de texto da característica */
.mf-features li div { 
	display: flex !important; 
	flex-direction: column !important; 
	gap: 1px !important; 
}
/* Título da característica */
.mf-features li strong { 
	font-size: 12px !important; 
	font-weight: 600 !important; 
	color: #242948 !important; 
}
/* Descrição da característica */
.mf-features li small { 
	font-size: 11px !important; 
	color: #aaa !important; 
}
/* Linha divisora horizontal */
.mf-divider { 
	height: 1px !important; 
	background: #f0f0f0 !important; 
	margin: 0 32px !important; 
}
/* Rodapé inferior com copyright e logos */
.mf-bottom { 
	padding: 20px 0 !important; 
}
/* Layout do rodapé inferior */
.mf-bottom .mf-inner { 
	display: flex !important; 
	align-items: center !important; 
	justify-content: space-between !important; 
}
/* Texto de copyright */
.mf-copy { 
	font-size: 11px !important; 
	color: #242948 !important; 
	margin: 0 !important; 
}
/* Logos de pagamento — desaturados */
.mf-payments { 
	display: flex !important; 
	align-items: center !important; 
	gap: 10px !important; 
	filter: grayscale(1) !important; 
	opacity: 0.35 !important; 
}
/* Cada logo de pagamento */
.mf-payments img { 
	height: 18px !important; 
	width: auto !important; 
	object-fit: contain !important; 
}

/* Tablet — coluna única */
@media (max-width: 900px) {
  .mf-body .mf-inner { 
		grid-template-columns: 1fr !important; 
		gap: 32px !important; 
	}
  .mf-brand { 
		align-items: center !important; 
		text-align: center !important; 
	}
  .mf-social { 
		flex-direction: row !important; 
		justify-content: center !important; 
	}
  .mf-cols { 
		grid-template-columns: 1fr 1fr !important; 
		gap: 24px !important; 
	}
}
/* Mobile */
@media (max-width: 768px) {
  .mf-inner { 
		padding: 0 20px !important; 
	}
  .mf-newsletter-inner { 
		flex-direction: column !important; 
		padding: 0 20px !important; gap: 20px !important; 
		text-align: center !important; 
	}
  .mf-nl-text { 
		flex-direction: column !important; 
		align-items: center !important; 
		gap: 8px !important; 
	}
  .mf-nl-form { 
		width: 100% !important; 
		max-width: 100% !important; 
	}
  .mf-bottom .mf-inner { 
		flex-direction: column !important; 
		gap: 14px !important; 
		text-align: center !important; 
	}
  .mf-divider { 
		margin: 0 20px !important; 
	}
	
	.mf-cols { 
		grid-template-columns: 1fr !important; 
	}
}


/* ── Rodapé — accordion mobile ── */
@media (max-width: 768px) {
  .footer-accordion .footer-accordion-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    cursor: pointer !important;
    padding: 14px 0 !important;
    border-bottom: 1px solid #e0e0e0 !important;
    user-select: none !important;
  }

  .footer-accordion .footer-accordion-header::after {
    content: '+' !important;
    font-size: 20px !important;
    color: #888 !important;
    transition: transform 0.3s ease !important;
    line-height: 1 !important;
  }

  .footer-accordion.is-open .footer-accordion-header::after {
    content: '−' !important;
  }

  .footer-accordion .footer-accordion-body {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease !important;
  }

  .footer-accordion.is-open .footer-accordion-body {
    max-height: 500px !important;
  }

}
/* ══════════════════════════════════════
   21. CHECKOUT
══════════════════════════════════════ */

/* Esconde cupão original na coluna esquerda */
.wd-ch-coupon-form,
.woocommerce-checkout .wd-81a383a6 {
  display: none !important;
}
/* Remove estilo de tabela — layout limpo */
.shop_table.woocommerce-checkout-review-order-table {
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
}
/* Esconde cabeçalho da tabela */
.woocommerce-checkout-review-order-table thead { 
	display: none !important; 
}
/* Cada produto em bloco separado */
.woocommerce-checkout-review-order-table tbody tr.cart_item {
  display: block !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
/* Célula principal do produto */
.woocommerce-checkout-review-order-table td.wd-checkout-prod {
  display: block !important;
  padding: 14px 0 !important;
  border: none !important;
}
/* Layout flex: thumbnail + conteúdo */
.wd-checkout-prod {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  position: relative !important;
}
/* Wrapper da thumbnail — posição relativa para o badge */
.wd-checkout-prod-img { 
	position: relative !important; 
	flex-shrink: 0 !important; 
}
/* Thumbnail do produto */
.wd-checkout-prod-img img {
  width: 56px !important;
  height: 56px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid #e8e8e8 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  display: block !important;
}
/* Badge de quantidade sobre a thumbnail */
.wd-checkout-prod-img::after {
  content: attr(data-qty) !important;
  position: absolute !important;
  top: -6px !important;
  right: -6px !important;
  background: #242948 !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 20px !important;
  height: 20px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* Conteúdo: nome + preço em linha */
.wd-checkout-prod-cont {
  flex: 1 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 8px !important;
  min-width: 0 !important;
	margin-top: 10px !important;
}
/* Coluna do nome e extras */
.wd-checkout-prod-title { 
	flex: 1 !important; 
	min-width: 0 !important; 
}
/* Nome do produto */
.wd-checkout-prod-title .cart-product-label-link {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #242948 !important;
  text-decoration: none !important;
  display: block !important;
  line-height: 1.4 !important;
}
/* Esconde botão × de remover */
.wd-checkout-remove-btn-wrapp { 
	display: none !important; 
}
/* Preço do produto à direita */
.wd-checkout-prod-total.product-total {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #242948 !important;
  white-space: nowrap !important;
  padding-top: 1px !important;
}
/* Botão "Extras" — estilo Moliel */
.moliel-extras-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #aaa !important;
  cursor: pointer !important;
  margin-top: 6px !important;
  background: none !important;
  border: none !important;
  padding: 6px 0 0 !important;
  width: 100% !important;
  font-family: inherit !important;
  transition: color 0.2s !important;
	justify-content: flex-start !important;

}
/* Hover → navy */
.moliel-extras-toggle:hover {
  color: #242948 !important;
}
/* Seta */
.moliel-extras-toggle .toggle-arrow {
  display: inline-block !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  font-size: 8px !important;
  color: #ccc !important;
}
/* Seta roda quando aberto */
.moliel-extras-toggle.open .toggle-arrow {
  transform: rotate(180deg) !important;
  color: #242948 !important;
}
/* Botão aberto — texto navy */
.moliel-extras-toggle.open {
  color: #242948 !important;
  border-top-color: #e8e8e8 !important;
}
/* Variações — fechadas por defeito */
.woocommerce-checkout-review-order-table ul.variation {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              padding-top 0.3s ease,
              margin-top 0.3s ease !important;
  padding: 0 !important;
  margin: 0 !important;
  border-top: none !important;
  list-style: none !important;
}
/* Variações — estado aberto */
.woocommerce-checkout-review-order-table ul.variation.open {
  max-height: 600px !important;
  padding-top: 8px !important;
  margin-top: 6px !important;
}
/* Cada linha de variação */
.wd-checkout-prod-title ul.variation li {
  font-size: 11px !important;
  color: #888 !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 6px !important;
  padding: 3px 0 !important;
}
/* Remove borda da última linha */
.wd-checkout-prod-title ul.variation li:last-child { 
	border-bottom: none !important; 
}
/* Label da variação em negrito */
.wd-checkout-prod-title ul.variation li .item-variation-name {
  font-weight: 600 !important;
  color: #555 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
/* Esconde label wcpa_empty_label */
.wd-checkout-prod-title ul.variation li.variation-wcpa_empty_label 
.item-variation-name { 
	display: none !important; 
}
/* Valor à direita */
.wd-checkout-prod-title ul.variation li .item-variation-value { 
	text-align: right !important; 
	margin-left: auto !important; 
}
/* Imagem upload do cliente */
.wd-checkout-prod-title ul.variation li .wcpa_img { 
	width: 36px !important; 
	height: 36px !important; 
	object-fit: cover !important; 
	border-radius: 4px !important; 
}
/* Esconde nome do ficheiro — mantém imagem */
.wd-checkout-prod-title ul.variation li a { 
	font-size: 0 !important; 
	display: inline-flex !important; 
}
/* Restaura tamanho da imagem */
.wd-checkout-prod-title ul.variation li a img { 
	font-size: 14px !important; 
}
/* Preço do extra em cinza */
.wd-checkout-prod-title ul.variation li .wcpa_cart_price { 
	color: #aaa !important; 
	font-size: 10px !important; 
}
/* Esconde qty no resumo checkout estilo Shopify */
.woocommerce-checkout-review-order-table .quantity { 
	display: none !important; 
}
/* Tfoot — Subtotal / Envio / Total */
.woocommerce-checkout-review-order-table tfoot {
  display: block !important;
 /*border-top: 1px solid #e8e8e8 !important;*/
  margin-top: 4px !important;
  padding-top: 4px !important;
}
/* Cada linha do tfoot em flex */
.woocommerce-checkout-review-order-table tfoot tr {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 8px 0 !important;
}
/* Células do tfoot */
.woocommerce-checkout-review-order-table tfoot tr th,
.woocommerce-checkout-review-order-table tfoot tr td {
  display: block !important;
  border: none !important;
  padding: 0 !important;
  font-size: 12px !important;
  background: none !important;
}
/* Label (Subtotal, Envio...) em cinza */
.woocommerce-checkout-review-order-table tfoot tr th { 
	color: #888 !important; 
	font-weight: 400 !important; 
}
/* Valor à direita */
.woocommerce-checkout-review-order-table tfoot tr td { 
	font-weight: 600 !important; 
	color: #242948 !important; 
	text-align: right !important; 
}
/* Linha total com separador */
.woocommerce-checkout-review-order-table tfoot tr.order-total { 
	/*border-top: 1px solid #e8e8e8 !important;*/ 
	padding-top: 12px !important; 
	margin-top: 4px !important; 
}
/* Label "Total" em destaque */
.woocommerce-checkout-review-order-table tfoot tr.order-total th { 
	font-size: 14px !important; 
	font-weight: 700 !important; 
	color: #242948 !important; 
}
/* Valor total maior */
.woocommerce-checkout-review-order-table tfoot tr.order-total td { 
	font-size: 18px !important; 
	font-weight: 700 !important; 
	color: #242948 !important; 
}
/* Envio grátis em verde */
.woocommerce-checkout-review-order-table tfoot 
.woocommerce-shipping-totals td 
.woocommerce-Price-amount { 
	color: #27ae60 !important; 
}
/* Cupão movido para o resumo */
.moliel-coupon-moved {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 16px !important;
}
/* Input do cupão */
.moliel-coupon-moved input {
  flex: 1 !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 6px !important;
  padding: 9px 12px !important;
  font-size: 12px !important;
  color: #242948 !important;
  outline: none !important;
  transition: border-color 0.2s !important;
}
/* Focus do input → navy */
.moliel-coupon-moved input:focus { 
	border-color: #242948 !important; 
}
/* Placeholder do input */
.moliel-coupon-moved input::placeholder { 
	color: #bbb !important; 
}
/* Botão "Aplicar" */
.moliel-coupon-moved button {
  background: transparent !important;
  color: #242948 !important;
  border: 1.5px solid #242948 !important;
  border-radius: 6px !important;
  padding: 9px 16px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: all 0.2s !important;
}
/* Hover botão → sólido navy */
.moliel-coupon-moved button:hover { 
	background: #242948 !important; 
	color: #fff !important; 
}
/* Separador visual entre cupão e tfoot */
.moliel-order-separator { 
	height: 1px !important; 
	background: #f0f0f0 !important; 
	margin: 12px 0 !important; 
}

/* Títulos de secção — labels pequenas */
.woocommerce-checkout h2,
.woocommerce-checkout .wp-block-wd-title.title {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #aaa !important;
  margin-bottom: 16px !important;
  margin-top: 24px !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
}
/* Título "O SEU PEDIDO" — destaque navy */
.wd-a589080a {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 20px !important;
  text-align: center !important;
}
/* Labels dos campos do formulário */
.woocommerce-checkout .form-row label {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #aaa !important;
  margin-bottom: 6px !important;
  display: block !important;
}
/* Campos de texto, email, telefone, select, textarea */
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
  width: 100% !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  font-size: 13px !important;
  color: #242948 !important;
  background: #fff !important;
  transition: border-color 0.2s !important;
  outline: none !important;
}
/* Focus dos campos → navy */
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus { 
	border-color: #242948 !important; 
}
/* Container de métodos de pagamento */
#payment { 
	background: #f8f8f8 !important; 
	border-radius: 8px !important; 
	padding: 20px !important; 
	border: none !important; 
	margin-top: 16px !important; 
}
/* Lista de métodos */
#payment .wc_payment_methods { 
	list-style: none !important; 
	padding: 0 !important; 
	margin: 0 0 16px !important; 
}
/* Cada método de pagamento */
#payment .wc_payment_method { 
	border: 1px solid #e8e8e8 !important; 
	border-radius: 6px !important; 
	margin-bottom: 8px !important; 
	background: #fff !important; 
	overflow: hidden !important; 
	transition: border-color 0.2s !important; 
}
/* Método selecionado — borda e sombra navy */
#payment .wc_payment_method:has(input:checked) { 
	border-color: #242948 !important; 
	box-shadow: 0 0 0 1px #242948 !important; 
}
/* Label do método */
#payment .wc_payment_method label { 
	display: flex !important; 
	align-items: center !important; 
	gap: 10px !important; 
	padding: 14px 16px !important; 
	font-size: 13px !important; 
	font-weight: 600 !important; 
	color: #242948 !important; 
	cursor: pointer !important; 
}
/* Radio button do método */
#payment .wc_payment_method input[type="radio"] { 
	accent-color: #242948 !important; 
	width: 15px !important; 
	height: 15px !important; 
}
/* Descrição do método */
#payment .wc_payment_method .payment_box { 
	padding: 0 16px 14px !important; 
	font-size: 12px !important; 
	color: #999 !important; 
	font-style: italic !important; 
}
/* Texto de política de privacidade */
.woocommerce-privacy-policy-text { 
	font-size: 11px !important; 
	color: #aaa !important; 
	line-height: 1.7 !important; 
	margin: 16px 0 14px !important; 
}
/* Link da política → vermelho */
.woocommerce-privacy-policy-text a { 
	color: #c0392b !important; 
	text-decoration: underline !important; 
}
/* Checkbox de termos e condições */
.woocommerce-terms-and-conditions-wrapper { 
	font-size: 12px !important; 
	color: #242948 !important; 
	margin-bottom: 20px !important; 
}
/* Link dos termos → vermelho */
.woocommerce-terms-and-conditions-wrapper a { 
	color: #c0392b !important; 
	text-decoration: underline !important; 
}
/* Botão "Finalizar encomenda" */
#place_order {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 18px !important;
  width: 100% !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
  display: block !important;
  text-align: center !important;
}
/* Hover botão → vermelho */
#place_order:hover { 
	background: #c0392b !important; 
}
/* Container fundo cinza da coluna direita */
.wd-2e88e58e { background: #f8f8f8 !important; 
	border-radius: 10px !important; 
	padding: 28px 24px !important; 
}
/* Esconde shapes decorativos do Woodmart */
.wd-2e88e58e .wd-shape-divider { 
	display: none !important; 
}

/* ══════════════════════════════════════
   22. LISTA DE DESEJOS
══════════════════════════════════════ */

/* Título da página de lista de desejos */
.wd-wishlist-head .title {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #242948 !important;
  margin-bottom: 16px !important;
}
/* Esconde ícones de redes sociais */
.wd-wishlist-head .wd-social-icons { 
	display: none !important; 
}
/* Margem acima da grelha de produtos */
.wd-wishlist-content .wd-products-element { 
	margin-top: 20px !important; 
}
/* Card de produto com borda e hover */
.wd-wishlist-content .product-grid-item {
  border: 1px solid #f0f0f0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  transition: box-shadow 0.2s !important;
}
/* Sombra suave no hover do card */
.wd-wishlist-content .product-grid-item:hover { 
	box-shadow: 0 4px 16px rgba(0,0,0,0.06) !important; 
}
/* Nome do produto */
.wd-wishlist-content .wd-entities-title { 
	font-size: 13px !important; 
	font-weight: 600 !important; 
	color: #242948 !important; 
}
/* Preço normal */
.wd-wishlist-content .price { 
	font-size: 14px !important; 
	font-weight: 700 !important; 
	color: #242948 !important; 
}
/* Preço riscado */
.wd-wishlist-content .price del { 
	color: #bbb !important; 
	font-weight: 400 !important; 
}
/* Preço com desconto → vermelho */
.wd-wishlist-content .price ins { 
	color: #c0392b !important; 
	text-decoration: none !important; }
/* Botão "Adicionar ao carrinho" navy */
.wd-wishlist-content .add_to_cart_button,
.wd-wishlist-content .button {
  background: #242948 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  transition: background 0.2s !important;
}
/* Hover botão → vermelho */
.wd-wishlist-content .add_to_cart_button:hover,
.wd-wishlist-content .button:hover { 
	background: #c0392b !important; 
}
/* Ícone de favorito/remover */
.wd-wishlist-content .wd-wishlist-btn { 
	color: #242948 !important; 
}
/* Hover ícone → vermelho */
.wd-wishlist-content .wd-wishlist-btn:hover { 
	color: #c0392b !important; 
}
/* Checkbox de seleção */
.wd-wishlist-content input[type="checkbox"] { 
	accent-color: #242948 !important; 
}
/* Mensagem quando lista vazia */
.wd-wishlist-content .woocommerce-info {
  border-left: 3px solid #242948 !important;
  background: #f8f8f8 !important;
  font-size: 13px !important;
  color: #888 !important;
  border-radius: 0 6px 6px 0 !important;
}

/* Mobile — cabeçalho em coluna */
@media (max-width: 768px) {
  .wd-wishlist-head { 
		flex-direction: column !important; 
		gap: 12px !important; 
	}
}

/* ══════════════════════════════════════
   23. MENU MOBILE LATERAL
══════════════════════════════════════ */
/* Esconde texto "Fechar" — mantém só o ícone × */
.mobile-nav .wd-action-text {
  display: none !important;
}

/* Container */
.mobile-nav.wd-side-hidden {
  background: #fff !important;
  border-right: none !important;
  box-shadow: 4px 0 24px rgba(0,0,0,0.08) !important;
}

/* Linha accent no topo */
.mobile-nav.wd-side-hidden::before {
  content: '' !important;
  display: block !important;
  height: 3px !important;
  background: linear-gradient(90deg, #242948, #2D4A7C) !important;
}

/* Cada item */
.mobile-pages-menu .menu-item > a {
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.3px !important;
  text-transform: none !important;
  color: #242948 !important;
  padding: 14px 20px !important;
  border-bottom: 1px solid #f4f4f8 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  transition: color 0.2s !important;
  background: transparent !important;
}

/* Hover */
.mobile-pages-menu .menu-item > a:hover {
  color: #c0392b !important;
  background: transparent !important;
}

/* Seta submenu → bronze */
.mobile-pages-menu .menu-item-has-children > a .wd-nav-arrow {
  color: #A98F76 !important;
}

/* Submenu */
.mobile-pages-menu .sub-menu {
  background: #fafafa !important;
  border-left: 2px solid #f0f0f0 !important;
  margin-left: 20px !important;
}
.mobile-pages-menu .sub-menu .menu-item > a {
  font-size: 12px !important;
  color: #666 !important;
  padding: 11px 20px !important;
  border-bottom: 1px solid #f4f4f8 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}
.mobile-pages-menu .sub-menu .menu-item > a:hover {
  color: #242948 !important;
}

/* ── Itens do submenu ── */
.mobile-nav .wd-sub-menu li a {
  font-size: 13px !important;
  color: #888888 !important;
  font-weight: 400 !important;
}
/* Ícones wishlist, comparar, conta */
.mobile-pages-menu .wd-with-icon > a {
  color: #888 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  border-bottom: 1px solid #f4f4f8 !important;
}
.mobile-pages-menu .wd-with-icon > a:hover {
  color: #242948 !important;
}

/* Idiomas e moeda */
.mobile-pages-menu .menu-item-languages > a,
.mobile-pages-menu .wpml-ls-item > a {
  font-size: 11px !important;
  color: #aaa !important;
  padding: 10px 20px !important;
  border-bottom: none !important;
}

/* ── Menu mobile — container principal ── */
.mobile-nav.wd-side-hidden {
  overflow-x: hidden !important;
}

/* Barra fechar */
.mobile-nav .wd-heading {
  width: 100% !important;
	height: 1% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Barra de pesquisa */
.mobile-nav .wd-search-form {
  width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.mobile-nav .wd-search-form form {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── Menu mobile — remove todas as bordas ── */
.mobile-nav .wd-nav-mobile li,
.mobile-nav .wd-nav-mobile a,
.mobile-nav .mobile-pages-menu > li,
.mobile-nav .wd-heading,
.mobile-nav .wd-search-form,
.mobile-pages-menu .wd-nav-opener,
.mobile-nav .wd-search-results-wrapper,
.mobile-nav .wd-search-results,
.mobile-nav .wd-dropdown-results,
.mobile-nav .widgetarea-mobile,
.mobile-nav .widgetarea-mobile > *,
.mobile-nav .wd-tools-list li {
  border: none !important;
  border-bottom: none !important;
  border-top: none !important;
  box-shadow: none !important;
}

/* ── Menu mobile — borda topo 80% centrada ── */
.mobile-nav .widgetarea-mobile {
  position: relative !important;
  padding-top: 8px !important;
}

.mobile-nav .widgetarea-mobile::before {
  content: '' !important;
  display: block !important;
  width: 95% !important;
  height: 1px !important;
  background: #e0e0e0 !important;
  margin: 0 auto 12px !important;
}

/* ══════════════════════════════════════
   24. ACESSIBILIDADE — MOVIMENTO REDUZIDO
══════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
  /* Desativa animação do camião */
  .wd-free-progress-bar .progress-bar::before {
    animation: none !important;
  }

  /* Desativa celebração do camião */
  .wd-free-progress-bar .progress-area .progress-bar[style*="width: 100%"]::before {
    animation: none !important;
  }

  /* Desativa animação de entrada da página de agradecimento */
  .mty-icon {
    animation: none !important;
  }

  /* Desativa pulso da página 404 */
  .m404-icon svg {
    animation: none !important;
  }

  /* Desativa todas as transições suaves */
  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
  }
}