/* ==========================================================
   NIGHT WINGS TAROT
   CSS PRINCIPAL
   ========================================================== */


/* ==========================================================
   1. FUNDO PRETO EM TODO O SITE
   ========================================================== */

html,
body,
#page,
.site,
.site-content,
.content-area,
.entry-content,
.wp-site-blocks {
    background-color: #000000 !important;
}


/* ==========================================================
   2. BOTÕES
   ========================================================== */

button,
.wp-block-button__link,
.elementor-button,
input[type="button"],
input[type="submit"],
a[class*="button"] {
    background: #000000 !important;
    background-color: #000000 !important;
    border-color: #000000 !important;
    color: #ffffff !important;
}


/* ==========================================================
   3. RODAPÉ E ZONAS INFERIORES
   ========================================================== */

footer,
.site-footer,
#colophon,
.widget-area {
    background-color: #000000 !important;
}


/* ==========================================================
   4. REDES SOCIAIS
   ========================================================== */

.wp-block-social-links,
.wp-block-social-links .wp-social-link,
.social-icons,
.social-icons a,
.elementor-social-icons-wrapper,
.elementor-social-icon {
    background: #000000 !important;
    background-color: #000000 !important;
}


/* ==========================================================
   5. PÁGINA INICIAL
   Centrar a frase e colocar a branco
   ========================================================== */

.home .entry-content p {
    color: #ffffff !important;
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.home footer,
.home .site-footer,
.home .widget-area,
.home .wp-block-group:has(.wp-block-social-links) {
    background: #000000 !important;
}


/* ==========================================================
   6. PRODUTOS
   REMOVER O TEXTO/EXCERTO AO LADO DIREITO DA IMAGEM
   ========================================================== */

/* Bloco de excerto do tema / WooCommerce Blocks */
body.single-product .wp-block-post-excerpt,
body.single-product .wp-block-post-excerpt__excerpt,
body.single-product p.wp-block-post-excerpt__excerpt {
    display: none !important;
}

/* Caso o tema não coloque a classe single-product no body */
body .wp-block-post-excerpt__excerpt {
    display: none !important;
}

/* Descrição curta tradicional do WooCommerce */
body.single-product .woocommerce-product-details__short-description,
body.single-product .summary .woocommerce-product-details__short-description {
    display: none !important;
}


/* ==========================================================
   7. LOJA NO TELEMÓVEL
   UMA CONSULTA POR LINHA
   ========================================================== */

@media only screen and (max-width: 800px) {

    /* ---------- WooCommerce clássico ---------- */

    body.woocommerce ul.products,
    body.woocommerce-page ul.products,
    .woocommerce ul.products,
    .woocommerce-page ul.products,
    .woocommerce ul.products[class*="columns-"],
    .woocommerce-page ul.products[class*="columns-"] {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: 100% !important;
        column-gap: 0 !important;
        row-gap: 35px !important;
    }


    body.woocommerce ul.products li.product,
    body.woocommerce-page ul.products li.product,
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product,
    .woocommerce ul.products[class*="columns-"] li.product,
    .woocommerce-page ul.products[class*="columns-"] li.product {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        float: none !important;
        clear: both !important;

        display: block !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 35px !important;
    }


    /* ---------- WooCommerce Blocks ---------- */

    .wc-block-product-template,
    ul.wc-block-product-template,
    .wc-block-grid__products {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 35px 0 !important;
    }


    .wc-block-product-template .wc-block-product,
    .wc-block-grid__products .wc-block-grid__product,
    li.wc-block-product {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        flex: 0 0 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
    }


    /* ---------- Imagens dos produtos ---------- */

    .woocommerce ul.products li.product img,
    .woocommerce-page ul.products li.product img,
    .wc-block-product-template .wc-block-product img,
    .wc-block-grid__product img {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    /* ---------- Título ---------- */

    .woocommerce ul.products li.product
    .woocommerce-loop-product__title {
        text-align: center !important;
    }


    /* ---------- Preço ---------- */

    .woocommerce ul.products li.product .price {
        display: block !important;
        text-align: center !important;
    }


    /* ---------- Botão Adicionar ---------- */

    .woocommerce ul.products li.product .button {
        display: table !important;
        margin: 18px auto 0 auto !important;
    }

}

/* NIGHT WINGS TAROT
   Imagens uniformes dos Relatos Paranormais */

body .wp-block-post-featured-image {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    margin-bottom: 15px;
}

body .wp-block-post-featured-image img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    object-position: center;
}

/* Compatibilidade com listagens Elementor */
body .elementor-post__thumbnail {
    aspect-ratio: 3 / 4;
    overflow: hidden;
}

/* Imagens em destaque dos artigos */
.single-post img.wp-post-image,
.blog img.wp-post-image,
.archive img.wp-post-image {
    width: 100%;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center;
}

/* Evitar cortes em contentores de imagens */
.single-post .post-thumbnail,
.blog .post-thumbnail,
.archive .post-thumbnail {
    height: auto !important;
    max-height: none !important;
}
/* NIGHT WINGS TAROT
   Ajustar imagens apenas nos artigos */

body.single-post img.wp-post-image,
body.single-post .post-thumbnail img,
body.single-post .wp-block-post-featured-image img {
    display: block !important;
    width: 100% !important;
    max-width: 900px !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Evitar alturas excessivas na imagem */
body.single-post .post-thumbnail,
body.single-post .wp-block-post-featured-image {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    text-align: center !important;
}

/* NIGHT WINGS TAROT
   Reduzir espaço entre imagem e texto */

body.single-post .post-thumbnail,
body.single-post .wp-block-post-featured-image {
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

body.single-post .entry-content {
    margin-top: 20px !important;
    padding-top: 0 !important;
}

body.single-post .entry-content > :first-child {
    margin-top: 0 !important;
}
/* NIGHT WINGS TAROT
   Corrigir espaço da imagem nos artigos */

body.single-post .wp-block-post-featured-image {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    padding: 0 !important;
    margin: 0 auto 20px !important;
    overflow: visible !important;
}

body.single-post .wp-block-post-featured-image img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 900px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

body.single-post .wp-block-post-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* =======================================================
   NIGHT WINGS TAROT — LOJA WOOCOMMERCE BLOCKS
   SUBSTITUIR A SECÇÃO ANTIGA DA LOJA POR ESTE BLOCO
   Preserva produtos, links, preços e checkout
   ======================================================= */

/* A loja atual pode usar blocos WooCommerce em vez de ul.products */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) {
  --loja-fundo: #0b0712;
  --loja-cartao: #1b1126;
  --loja-dourado: #c8a575;
  --loja-claro: #f5eef4;
  --loja-borda: rgba(200,165,117,.38);
}

/* Fundo da loja: preto e roxo profundo, como a identidade da página inicial.
   Apenas o fundo foi alterado; o restante CSS mantém-se igual. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product),
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .wp-site-blocks,
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .site-content {
  background-color: #09060e !important;
  background-image:
    radial-gradient(ellipse at 50% 8%, rgba(65, 32, 82, .46) 0%, rgba(24, 12, 36, .20) 42%, transparent 75%),
    linear-gradient(180deg, #100919 0%, #0b0712 44%, #08060c 74%, #100919 100%) !important;
  background-attachment: scroll !important;
}

/* Deixar o degradé visível por trás do conteúdo da loja. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .entry-content,
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) main {
  background-color: transparent !important;
}

/* Título Loja, sem alterar os títulos dos produtos */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .wp-block-post-title:not(.wc-block-product .wp-block-post-title),
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .entry-header > .entry-title,
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .woocommerce-products-header__title {
  color: #e5c896 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  text-align: center !important;
  font-size: clamp(36px, 5vw, 54px) !important;
}

/* Grelhas: WooCommerce Blocks e WooCommerce clássico */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
  .wc-block-product-template,
  .wc-block-grid__products,
  ul.products
) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 26px !important;
  align-items: stretch !important;
  list-style: none !important;
  width: 100% !important;
  max-width: 1260px !important;
  padding: 0 !important;
  margin: 28px auto 55px !important;
}

body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products)::before,
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products)::after {
  display: none !important;
}

/* Cartões dos produtos (li.product não existe em muitos blocos modernos) */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
  .wc-block-product-template > li,
  .wc-block-grid__products > li,
  ul.products > li.product
) {
  float: none !important;
  clear: none !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 18px 18px 24px !important;
  box-sizing: border-box !important;
  background: linear-gradient(150deg,#291834 0%,#160e21 65%,#100b18 100%) !important;
  border: 1px solid var(--loja-borda) !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.34) !important;
  overflow: hidden !important;
  color: var(--loja-claro) !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 9px !important;
  transition: transform .2s ease,border-color .2s ease !important;
}

body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template > li,.wc-block-grid__products > li,ul.products > li.product):hover {
  transform: translateY(-4px);
  border-color: #e3c594 !important;
}

/* Neutralizar fundo preto de grupos internos dos cartões */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .wc-block-product-template > li :is(.wp-block-group,.wp-block-columns,.wp-block-column),
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .wc-block-grid__products > li :is(.wp-block-group,.wp-block-columns,.wp-block-column) {
  background: transparent !important;
}

/* Imagens completas e alinhadas */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 8px !important;
  margin: 0 auto !important;
}

/* Títulos de produtos, incluindo wp-block-post-title */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li :is(
  .wp-block-post-title,
  .wc-block-grid__product-title,
  .woocommerce-loop-product__title,
  .wp-block-woocommerce-product-title
) {
  color: var(--loja-claro) !important;
  font: 500 20px/1.4 Georgia,'Times New Roman',serif !important;
  margin: 8px auto 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li a {
  text-decoration: none;
}

/* Preços de blocos e listagem clássica */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li :is(
  .wp-block-woocommerce-product-price,
  .wc-block-components-product-price,
  .wc-block-grid__product-price,
  .price
) {
  color: #ead19f !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: center !important;
  margin: auto 0 12px !important;
  padding-top: 8px !important;
}

body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li :is(.woocommerce-Price-amount,.wc-block-components-product-price__value,.amount) {
  color: #ead19f !important;
}

/* Botões, substituem a regra global que os torna pretos */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li :is(
  .wp-block-button__link,
  .wc-block-components-product-button__button,
  .wc-block-grid__product-add-to-cart a,
  .add_to_cart_button,
  a.button,
  button.button
) {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 290px !important;
  min-height: 48px !important;
  padding: 12px 16px !important;
  margin: 6px auto 0 !important;
  box-sizing: border-box !important;
  background: #c8a575 !important;
  background-color: #c8a575 !important;
  border: 1px solid #c8a575 !important;
  border-radius: 8px !important;
  color: #160d1d !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .4px !important;
}

body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li :is(.wp-block-button__link,.wc-block-components-product-button__button,.wc-block-grid__product-add-to-cart a,.add_to_cart_button,a.button,button.button):hover {
  background: #35203e !important;
  background-color: #35203e !important;
  border-color: #c8a575 !important;
  color: #f1d4a4 !important;
}

/* Os links de carrinho e mensagens de compra continuam visíveis */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li .added_to_cart {
  color: #e5c896 !important;
  text-align: center !important;
}

@media (min-width: 641px) and (max-width: 1024px) {
  body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 20px !important;
  }
}

@media (max-width: 640px) {
  body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 20px !important;
    padding: 0 12px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) > li {
    transition: none !important;
  }
}
/* ========================================
   NIGHT WINGS TAROT
   NAVEGAÇÃO DA LOJA
   Botões de regresso à página inicial
   e seta para o topo
   ======================================== */

/* Área dos botões */

.nwt-loja-navegacao {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 22px;
    width: 100%;
    margin: 30px auto 40px;
    padding: 10px 16px;
    box-sizing: border-box;
    text-align: center;
    background: transparent !important;
}

/* Botões para a página inicial */

body .nwt-loja-navegacao a.nwt-botao-inicio {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 230px;
    max-width: 100%;
    min-height: 50px;

    padding: 14px 28px !important;

    background: #c8a575 !important;
    background-color: #c8a575 !important;
    color: #100a18 !important;

    border: 1px solid #d9b983 !important;
    border-radius: 10px !important;

    font-family: inherit;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.4;
    text-align: center;
    text-decoration: none !important;
    letter-spacing: 0.3px;

    box-sizing: border-box;
    cursor: pointer;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}

/* Efeito ao passar o rato */

body .nwt-loja-navegacao a.nwt-botao-inicio:hover {
    background: #281833 !important;
    background-color: #281833 !important;
    color: #ead5a8 !important;
    border-color: #c8a575 !important;
    transform: translateY(-2px);
}

/* Área final da loja */

.nwt-loja-final {
    margin-top: 50px;
    margin-bottom: 50px;
    padding-top: 20px;
}

/* Seta para voltar ao topo */

body .nwt-loja-navegacao a.nwt-subir-topo {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;
    min-width: 52px;

    padding: 0 !important;

    background: #21132f !important;
    background-color: #21132f !important;
    color: #e4c695 !important;

    border: 1px solid #c8a575 !important;
    border-radius: 50% !important;

    font-size: 30px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-align: center;
    text-decoration: none !important;

    box-sizing: border-box;
    cursor: pointer;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease;
}

/* Efeito na seta */

body .nwt-loja-navegacao a.nwt-subir-topo:hover {
    background: #c8a575 !important;
    background-color: #c8a575 !important;
    color: #100a18 !important;
    transform: translateY(-4px);
}

/* Deslocação suave */

html:has(#nwt-loja-topo) {
    scroll-behavior: smooth;
}

/* Acessibilidade */

.nwt-loja-navegacao a:focus-visible {
    outline: 2px solid #ead5a8 !important;
    outline-offset: 4px;
}

/* Ajustes para telemóvel */

@media (max-width: 640px) {

    .nwt-loja-navegacao {
        margin: 25px auto 35px;
        gap: 18px;
        padding: 10px;
    }

    body .nwt-loja-navegacao a.nwt-botao-inicio {
        width: 100%;
        max-width: 320px;
        min-width: 0;
        min-height: 48px;
        font-size: 14px !important;
        padding: 13px 18px !important;
    }

    .nwt-loja-final {
        margin-top: 35px;
        margin-bottom: 35px;
    }
}

/* Respeitar movimento reduzido */

@media (prefers-reduced-motion: reduce) {
    html:has(#nwt-loja-topo) {
        scroll-behavior: auto;
    }

    .nwt-loja-navegacao a {
        transition: none !important;
    }
}

/* FIM DA NAVEGAÇÃO DA LOJA */
/* ===========================================================
   NIGHT WINGS TAROT - CORREÇÃO FINAL DE LARGURA E BOTÕES
   29/10/2026
   Acrescentado ao CSS existente; não altera outras secções.
   =========================================================== */

/* Área principal: retirar a largura estreita imposta pelo tema.
   Aplicação apenas a páginas com uma grelha WooCommerce. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
  main#main,
  main.site-main,
  main.wp-block-group,
  .site-main,
  #primary,
  .content-area,
  .wp-block-post-content,
  .entry-content,
  .woocommerce,
  .wp-block-woocommerce-product-collection,
  .wp-block-woocommerce-all-products
) {
  width: min(100% - 32px, 1260px) !important;
  max-width: 1260px !important;
  box-sizing: border-box !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Contornar as restrições de largura dos blocos do WordPress. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) .is-layout-constrained > :is(
  .wp-block-post-content,
  .wp-block-woocommerce-product-collection,
  .wp-block-woocommerce-all-products,
  .woocommerce,
  .wc-block-grid
) {
  width: min(100% - 32px, 1260px) !important;
  max-width: 1260px !important;
  margin-inline: auto !important;
}

/* Grelha ampla e alinhada. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 26px !important;
  width: 100% !important;
  max-width: 1260px !important;
  margin: 32px auto 54px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Restaurar cartões com estrutura legível e fundo escuro. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) {
  background: linear-gradient(155deg, #291a36, #160f22 65%, #100b19) !important;
  border: 1px solid rgba(200,165,117,.40) !important;
  border-radius: 14px !important;
  padding: 18px 18px 24px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  text-align: center !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}

/* Imagens nítidas, completas e sem cortes. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) > li img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 8px !important;
}

/* Evitar que grupos internos tapem o degradé dos cartões. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products
) > li :is(.wp-block-group,.wp-block-columns,.wp-block-column,.wp-block-button) {
  background: transparent !important;
}

/* Títulos e preços, com contraste legível. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) > li :is(.wp-block-post-title,.wc-block-grid__product-title,.woocommerce-loop-product__title,.wp-block-woocommerce-product-title) {
  color: #f5eef4 !important;
  font: 500 20px/1.4 Georgia,"Times New Roman",serif !important;
  text-align: center !important;
}
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) > li :is(.wp-block-woocommerce-product-price,.wc-block-components-product-price,.wc-block-grid__product-price,.price,.woocommerce-Price-amount) {
  color: #ead19f !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

/* Corrigir os botões que estavam a ficar brancos ou pouco legíveis. */
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) > li :is(
 .wp-block-button__link,
 .wp-element-button,
 .wc-block-components-product-button__button,
 .wc-block-grid__product-add-to-cart a,
 .add_to_cart_button,
 a.button,
 button.button
) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 290px !important;
  min-height: 48px !important;
  margin: 10px auto 0 !important;
  padding: 12px 16px !important;
  background: #c8a575 !important;
  background-color: #c8a575 !important;
  border: 1px solid #c8a575 !important;
  border-radius: 9px !important;
  color: #160d1d !important;
  opacity: 1 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1.35 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) > li :is(
 .wp-block-button__link,
 .wp-element-button,
 .wc-block-components-product-button__button,
 .wc-block-grid__product-add-to-cart a,
 .add_to_cart_button,
 a.button,
 button.button
 ):hover {
  background: #35203e !important;
  color: #f1d4a4 !important;
  border-color: #c8a575 !important;
}

/* Navegação da loja: realçar os links HTML quando inseridos no editor. */
body .nwt-loja-navegacao a.nwt-botao-inicio {
  background: #c8a575 !important;
  background-color: #c8a575 !important;
  border-color: #c8a575 !important;
  color: #160d1d !important;
  opacity: 1 !important;
}

/* Tablet e telemóvel: preservar a disposição responsiva. */
@media (min-width: 641px) and (max-width: 1024px) {
  body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}
@media (max-width: 640px) {
  body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(
    main#main, main.site-main, main.wp-block-group, .site-main, #primary,
    .content-area, .wp-block-post-content, .entry-content, .woocommerce,
    .wp-block-woocommerce-product-collection, .wp-block-woocommerce-all-products
  ) {
    width: calc(100% - 24px) !important;
  }
  body:has(.wc-block-product-template, .wc-block-grid__products, ul.products li.product) :is(.wc-block-product-template,.wc-block-grid__products,ul.products) {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
    padding: 0 !important;
  }
}
/* FIM DA CORREÇÃO */
/* =============================================
   NIGHT WINGS TAROT
   AJUSTES FINAIS DA LOJA
   Navegação e uniformização do texto
   Não modifica os cartões nem os produtos
   ============================================= */

/* Cor uniforme dos textos da loja */

body:has(.wc-block-product-template,
         .wc-block-grid__products,
         ul.products li.product)
:is(
  .entry-content,
  .wp-block-post-content,
  .woocommerce-products-header,
  .woocommerce-products-header__description
) {
  color: #f5eef4 !important;
}

body:has(.wc-block-product-template,
         .wc-block-grid__products,
         ul.products li.product)
:is(
  .entry-content,
  .wp-block-post-content,
  .woocommerce-products-header
)
:is(p,h1,h2,h3,h4,h5,h6,li,span) {
  color: #f5eef4 !important;
}

/* Título principal */

body:has(.wc-block-product-template,
         .wc-block-grid__products,
         ul.products li.product)
.entry-header .entry-title {
  color: #f5eef4 !important;
}

/* Preservar a cor dos preços e botões existentes */


/* Área de navegação */

.nwt-loja-navegacao {
  width: 100%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  background: transparent !important;
  box-sizing: border-box;
}

/* Botão superior */

.nwt-loja-navegacao.nwt-loja-topo {
  margin: 16px auto 35px !important;
  padding: 0 15px;
}

/* Área dos botões inferiores */

.nwt-loja-navegacao.nwt-loja-final {
  margin: 45px auto 55px !important;
  padding: 18px 15px !important;
  gap: 22px !important;
}

/* Botões para a página inicial */

body .nwt-loja-navegacao a.nwt-botao-inicio {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;

  min-width: 230px;
  min-height: 50px;
  padding: 13px 26px !important;

  background: #c8a575 !important;
  background-color: #c8a575 !important;
  color: #160d1d !important;

  border: 1px solid #d7b985 !important;
  border-radius: 10px !important;

  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: center !important;
  text-decoration: none !important;

  box-sizing: border-box !important;
  cursor: pointer;
  transition: all .25s ease;
}

/* Efeito dos botões */

body .nwt-loja-navegacao a.nwt-botao-inicio:hover {
  background: #35203e !important;
  background-color: #35203e !important;
  color: #f5eef4 !important;
  border-color: #c8a575 !important;
  transform: translateY(-2px);
}

/* Botão da seta */

body .nwt-loja-navegacao a.nwt-subir-topo {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;

  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;

  padding: 0 !important;

  background: #21132f !important;
  background-color: #21132f !important;
  color: #e5c896 !important;

  border: 1px solid #c8a575 !important;
  border-radius: 50% !important;

  font-size: 30px !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-sizing: border-box !important;
  cursor: pointer;
  transition: all .25s ease;
}

/* Efeito da seta */

body .nwt-loja-navegacao a.nwt-subir-topo:hover {
  background: #c8a575 !important;
  background-color: #c8a575 !important;
  color: #160d1d !important;
  transform: translateY(-3px);
}

/* Navegação suave */

html:has(#nwt-loja-topo) {
  scroll-behavior: smooth;
}

/* Telemóvel */

@media (max-width: 640px) {
  .nwt-loja-navegacao.nwt-loja-topo {
    margin: 15px auto 28px !important;
  }

  .nwt-loja-navegacao.nwt-loja-final {
    flex-direction: column;
    margin: 35px auto !important;
  }

  body .nwt-loja-navegacao a.nwt-botao-inicio {
    width: 100%;
    max-width: 320px;
    min-width: 0;
    font-size: 14px !important;
  }
}

/* Acessibilidade */

.nwt-loja-navegacao a:focus-visible {
  outline: 2px solid #ead5a8 !important;
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  html:has(#nwt-loja-topo) {
    scroll-behavior: auto;
  }

  .nwt-loja-navegacao a {
    transition: none !important;
  }
}

/* FIM DOS AJUSTES */

/* NIGHT WINGS TAROT
   Uniformizar os textos da loja
   com a cor dos nomes das consultas */

body.nwt-loja-ajustada main,
body.nwt-loja-ajustada main .entry-content,
body.nwt-loja-ajustada main .wp-block-post-content {
    color: #f5eef4 !important;
}

body.nwt-loja-ajustada main :is(
    .entry-title,
    .page-title,
    .wp-block-post-title,
    .entry-content > p,
    .wp-block-post-content > p,
    .woocommerce-products-header p,
    .woocommerce-products-header__description p
) {
    color: #f5eef4 !important;
}

/* Textos dentro da apresentação da loja */

body.nwt-loja-ajustada main
.entry-content :is(p, span, strong, em),

body.nwt-loja-ajustada main
.wp-block-post-content > :is(
    p,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6
) {
    color: #f5eef4 !important;
}

/* Manter as ligações do texto legíveis */

body.nwt-loja-ajustada main
.entry-content p a {
    color: #f5eef4 !important;
}

/* Preservar a cor dourada dos preços */

body.nwt-loja-ajustada main
:is(
    .price,
    .woocommerce-Price-amount,
    .wp-block-woocommerce-product-price,
    .wc-block-components-product-price
),
body.nwt-loja-ajustada main .price * {
    color: #ead19f !important;
}

/* NIGHT WINGS TAROT
   COR UNIFORME DOS TEXTOS DA LOJA */

body.nwt-loja-ajustada main
:is(
  .entry-title,
  .page-title,
  .woocommerce-products-header__title,
  .wp-block-post-content p,
  .wp-block-post-content p *,
  .entry-content p,
  .entry-content p *,
  .woocommerce-products-header p,
  .woocommerce-products-header p *,
  .wc-block-product-template .wp-block-post-title,
  .wc-block-product-template .wp-block-post-title *,
  .wc-block-grid__product-title,
  ul.products .woocommerce-loop-product__title
):not(.nwt-voltar-inicio):not(.nwt-seta-subir) {
    color: #e8d8ca !important;
}

/* Preservar os preços dourados */

body.nwt-loja-ajustada main
:is(
  .price,
  .price *,
  .woocommerce-Price-amount,
  .wc-block-components-product-price,
  .wc-block-components-product-price *,
  .wp-block-woocommerce-product-price,
  .wp-block-woocommerce-product-price *
) {
    color: #ead19f !important;
}

/* ============================================
   NIGHT WINGS TAROT
   CORREÇÃO DEFINITIVA DOS CARTÕES DA LOJA
   Remover espaços roxos vazios
   Manter imagens completas e tudo centrado
   ============================================ */

/* Grelha WooCommerce */

body.nwt-loja-final :is(
    .wc-block-product-template,
    .wc-block-grid__products,
    ul.products
) {
    align-items: start !important;
    grid-auto-rows: auto !important;
}

/* Cartões com altura ajustada ao conteúdo */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: center !important;

    gap: 8px !important;
    padding: 12px 12px 18px !important;

    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Eliminar alturas artificiais dos contentores */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) :is(
    .wp-block-group,
    .wp-block-column,
    .wp-block-columns,
    .wp-block-woocommerce-product-image,
    .wc-block-components-product-image,
    .wc-block-grid__product-image
) {
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Imagens grandes, sem cortes */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) img {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;

    object-fit: contain !important;
    object-position: center !important;

    aspect-ratio: auto !important;

    margin: 0 auto 10px !important;
    padding: 0 !important;

    position: static !important;
    transform: none !important;
}

/* Nome da consulta próximo da imagem */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) :is(
    .wp-block-post-title,
    .woocommerce-loop-product__title,
    .wc-block-grid__product-title,
    .wp-block-woocommerce-product-title
) {
    text-align: center !important;
    margin: 8px auto 4px !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    min-height: 0 !important;
}

/* Preços próximos dos nomes */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) :is(
    .price,
    .wp-block-woocommerce-product-price,
    .wc-block-components-product-price,
    .wc-block-grid__product-price
) {
    margin: 5px auto 10px !important;
    padding: 0 !important;
    text-align: center !important;
    min-height: 0 !important;
}

/* Botões próximos dos preços */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) :is(
    .wp-block-button,
    .wc-block-components-product-button,
    .wc-block-grid__product-add-to-cart
) {
    width: 100% !important;
    margin: 5px auto 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    text-align: center !important;
}

/* Não permitir que os botões desçam
   automaticamente para o fundo */

body.nwt-loja-final :is(
    .wc-block-product-template > li,
    .wc-block-grid__products > li,
    ul.products > li.product
) :is(
    .wp-block-button__link,
    .wc-block-components-product-button__button,
    .add_to_cart_button,
    a.button
) {
    margin-top: 5px !important;
    margin-bottom: 0 !important;
}

/* Telemóvel */

@media (max-width: 640px) {
    body.nwt-loja-final :is(
        .wc-block-product-template > li,
        .wc-block-grid__products > li,
        ul.products > li.product
    ) {
        padding: 12px 12px 18px !important;
        gap: 8px !important;
    }
}

/* FIM DA CORREÇÃO */

/* ============================================
 NIGHT WINGS TAROT
 ELIMINAR ESPAÇOS VAZIOS DOS CARTÕES
 Mantém cores, imagens, preços e botões
 ============================================ */

/* Grelha sem alturas artificiais */

body.nwt-loja-final :is(
 .wc-block-product-template,
 .wc-block-grid__products,
 ul.products
) {
 align-items: start !important;
 grid-auto-rows: max-content !important;
 align-content: start !important;
}

/* Cartões adaptados ao conteúdo */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) {
 display: flex !important;
 flex-direction: column !important;
 align-items: center !important;
 justify-content: flex-start !important;

 height: fit-content !important;
 min-height: 0 !important;
 max-height: none !important;

 padding: 12px 12px 18px !important;
 margin: 0 !important;
 gap: 8px !important;

 box-sizing: border-box !important;
}

/* Eliminar espaçadores internos */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) :is(
 .wp-block-spacer,
 .wp-block-woocommerce-product-image,
 .wc-block-components-product-image,
 .wc-block-grid__product-image,
 .wp-block-post-featured-image
) {
 height: auto !important;
 min-height: 0 !important;
 max-height: none !important;
 aspect-ratio: auto !important;
 margin: 0 !important;
 padding: 0 !important;
}

/* Contentores das imagens */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) :is(
 figure,
 .wp-block-woocommerce-product-image,
 .wc-block-components-product-image,
 .wc-block-grid__product-image
) {
 width: 100% !important;
 height: auto !important;
 min-height: 0 !important;
 max-height: none !important;
 aspect-ratio: auto !important;
 overflow: visible !important;
 margin: 0 auto !important;
 padding: 0 !important;
 position: relative !important;
}

/* Imagens grandes, centradas e completas */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) img {
 display: block !important;
 position: static !important;

 width: 100% !important;
 max-width: 100% !important;
 height: auto !important;
 min-height: 0 !important;
 max-height: none !important;

 aspect-ratio: auto !important;
 object-fit: contain !important;
 object-position: center !important;

 margin: 0 auto !important;
 padding: 0 !important;
 transform: none !important;
}

/* Remover expansão dos grupos internos */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) > :is(
 .wp-block-group,
 .wp-block-columns,
 .wp-block-column,
 .wp-block-button,
 .wc-block-components-product-button
) {
 flex-grow: 0 !important;
 flex-shrink: 0 !important;
 height: auto !important;
 min-height: 0 !important;
 max-height: none !important;
 margin-top: 0 !important;
 margin-bottom: 0 !important;
}

/* Evitar margens automáticas nos elementos */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) > * {
 margin-top: 0 !important;
 margin-bottom: 0 !important;
}

/* Nome imediatamente depois da imagem */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) :is(
 .wp-block-post-title,
 .woocommerce-loop-product__title,
 .wc-block-grid__product-title,
 .wp-block-woocommerce-product-title
) {
 margin: 10px auto 5px !important;
 padding: 0 !important;
 min-height: 0 !important;
 line-height: 1.3 !important;
 text-align: center !important;
}

/* Preços próximos dos nomes */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) :is(
 .price,
 .wp-block-woocommerce-product-price,
 .wc-block-components-product-price,
 .wc-block-grid__product-price
) {
 margin: 5px auto 10px !important;
 padding: 0 !important;
 min-height: 0 !important;
 text-align: center !important;
}

/* Botões próximos dos preços */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) :is(
 .wp-block-button,
 .wc-block-components-product-button,
 .wc-block-grid__product-add-to-cart
) {
 width: 100% !important;
 margin: 5px auto 0 !important;
 padding: 0 !important;
 min-height: 0 !important;
}

/* Não deixar o botão afastar-se */

body.nwt-loja-final :is(
 .wc-block-product-template > li,
 .wc-block-grid__products > li,
 ul.products > li.product
) :is(
 .wp-block-button__link,
 .wc-block-components-product-button__button,
 .add_to_cart_button,
 a.button
) {
 margin-top: 5px !important;
 margin-bottom: 0 !important;
}

/* FIM DA CORREÇÃO */

/* ==========================================
   NIGHT WINGS TAROT
   CORRIGIR ALTURA E ESPAÇAMENTO DOS CARTÕES
   ========================================== */

/* Grelha */
body.nwt-loja-final .wc-block-product-template,
body.nwt-loja-final .wc-block-grid__products,
body.nwt-loja-final ul.products {
    align-items: start !important;
    align-content: start !important;
    grid-auto-rows: max-content !important;
}

/* Cartões sem altura forçada */
body.nwt-loja-final .wc-block-product-template > li,
body.nwt-loja-final .wc-block-grid__products > li,
body.nwt-loja-final ul.products > li.product {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    align-content: flex-start !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    padding: 12px !important;
    gap: 8px !important;

    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Impedir distribuição vertical dos elementos */
body.nwt-loja-final .wc-block-product-template > li > *,
body.nwt-loja-final .wc-block-grid__products > li > *,
body.nwt-loja-final ul.products > li.product > * {
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: center !important;
}

/* Remover espaçadores vazios */
body.nwt-loja-final .wc-block-product-template > li .wp-block-spacer,
body.nwt-loja-final .wc-block-grid__products > li .wp-block-spacer {
    display: none !important;
}

/* Corrigir contentores de imagem */
body.nwt-loja-final .wc-block-product-template > li figure,
body.nwt-loja-final .wc-block-grid__products > li figure,
body.nwt-loja-final ul.products > li.product img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Imagem completa */
body.nwt-loja-final .wc-block-product-template > li img,
body.nwt-loja-final .wc-block-grid__products > li img,
body.nwt-loja-final ul.products > li.product img {
    display: block !important;
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
}

/* Títulos */
body.nwt-loja-final .wc-block-product-template > li :is(
    .wp-block-post-title,
    .woocommerce-loop-product__title
),
body.nwt-loja-final .wc-block-grid__products > li .wc-block-grid__product-title,
body.nwt-loja-final ul.products > li.product .woocommerce-loop-product__title {
    margin: 10px auto 4px !important;
    padding: 0 !important;
    text-align: center !important;
    line-height: 1.3 !important;
    height: auto !important;
    min-height: 0 !important;
}

/* Preços */
body.nwt-loja-final .wc-block-product-template > li :is(
    .wp-block-woocommerce-product-price,
    .wc-block-components-product-price,
    .price
),
body.nwt-loja-final .wc-block-grid__products > li .wc-block-grid__product-price,
body.nwt-loja-final ul.products > li.product .price {
    margin: 5px auto !important;
    padding: 0 !important;
    text-align: center !important;
    height: auto !important;
    min-height: 0 !important;
}

/* Botões */
body.nwt-loja-final .wc-block-product-template > li :is(
    .wp-block-button,
    .wc-block-components-product-button
),
body.nwt-loja-final .wc-block-grid__products > li .wc-block-grid__product-add-to-cart {
    width: 100% !important;
    margin: 5px auto 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
}

/* FIM */

