/*
Theme Name: Kadence Child - Trevo Armarinho
Template: kadence
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;800&family=Inter:wght@300;400;600;700;800&display=swap');

:root {
  --cream: #FDFBF7;
  --emerald: #064E3B;
  --emerald-light: #065F46;
  --dark: #0F172A;
  --slate: #334155;
  --border: #E2E8F0;
}

body {
  font-family: 'Inter', sans-serif !important;
  background-color: var(--cream) !important;
  color: var(--dark) !important;
}

h1, h2, h3, h4 {
  font-family: 'Playfair Display', serif !important;
}

/* ── Header ── */
#masthead, .site-header {
  background: rgba(255,255,255,0.97) !important;
  border-bottom: 1px solid #E2E8F0 !important;
}

.site-branding .site-title a, .site-title a {
  font-family: 'Inter', sans-serif !important;
  font-weight: 900 !important;
  font-size: 1.3rem !important;
  color: #0F172A !important;
  letter-spacing: -0.04em;
  text-decoration: none !important;
}

.main-navigation a, .primary-menu a {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: #64748B !important;
  text-decoration: none !important;
  transition: color 0.3s !important;
}
.main-navigation a:hover, .primary-menu a:hover { color: var(--emerald) !important; }

/* ── Botões ── */
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit,
.wp-block-button__link {
  background: var(--emerald) !important;
  color: #fff !important;
  border-radius: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 800 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  border: none !important;
  transition: background 0.2s !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover,
.wp-block-button__link:hover { background: #0F172A !important; }

/* ── Cards Produto ── */
.woocommerce ul.products li.product {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid #E2E8F0 !important;
  padding: 16px !important;
  transition: transform 0.3s, box-shadow 0.3s !important;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 24px 40px -8px rgba(6,78,59,0.15) !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #0F172A !important;
}
.woocommerce ul.products li.product .price {
  font-weight: 900 !important;
  color: var(--emerald) !important;
  font-size: 1.1rem !important;
}
.woocommerce ul.products li.product img {
  border-radius: 12px !important;
}

/* ── Footer ── */
#colophon, .site-footer {
  background: #0F172A !important;
  color: #94A3B8 !important;
}
.site-footer a { color: #94A3B8 !important; text-decoration: none !important; }
.site-footer a:hover { color: #34D399 !important; }
.site-footer p, .site-footer .copyright { color: #94A3B8 !important; font-size: 11px !important; }
.kadence-credit { display: none !important; }

/* ── Inputs ── */
input[type=text], input[type=email], input[type=search],
input[type=password], textarea, select {
  border-radius: 12px !important;
  border: 1px solid #E2E8F0 !important;
  font-family: 'Inter', sans-serif !important;
  padding: 10px 16px !important;
  background: #fff !important;
}
input:focus, textarea:focus { border-color: var(--emerald) !important; box-shadow: 0 0 0 3px rgba(6,78,59,0.1) !important; outline: none !important; }

/* ── Produto individual ── */
.woocommerce div.product .product_title {
  font-family: 'Playfair Display', serif !important;
  font-weight: 800 !important;
}
.woocommerce div.product .price { color: var(--emerald) !important; font-weight: 900 !important; }

/* ── Breadcrumbs ── */
.woocommerce-breadcrumb { font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; color: #94A3B8 !important; }
.woocommerce-breadcrumb a { color: var(--emerald) !important; }

/* ── Ocultar título Shop/hero do Kadence ── */
.entry-hero.page-hero-section,
.entry-hero,
.woocommerce-products-header,
.woocommerce-products-header__title,
.entry-header.woo-entry-header,
h1.woocommerce-products-header__title,
.page-title { display: none !important; }

/* ── Zerar gap entre header e conteúdo ── */
.content-area { margin-top: 0 !important; margin-bottom: 0 !important; }
#inner-wrap.wrap { padding-top: 0 !important; margin-top: 0 !important; }
.entry-content-wrap { padding: 0 !important; }
.entry.single-entry { box-shadow: none !important; }

.woocommerce-page .site-main,
.woocommerce .site-main { padding-top: 0 !important; margin-top: 0 !important; }
.woocommerce-page .content-bg,
.woocommerce .content-bg { padding-top: 0 !important; }

.content-area,
#primary,
.site-main,
.woocommerce-page #primary,
.woocommerce-page .site-main,
.entry-content,
.woocommerce .entry-content,
.kadence-inner-column-inner,
.content-container { padding-top: 0 !important; margin-top: 0 !important; }

.site-container .content-area { padding-top: 0 !important; }

.kadence-page-layout-page .kadence-inner-column-inner,
.entry-content > .wp-block-group:first-child,
.hentry { margin-top: 0 !important; padding-top: 0 !important; }

.wp-block-html:first-child,
.wp-block:first-child { margin-top: 0 !important; }

/* ── Blog — Arquivo de posts ── */
body.blog #primary,
body.blog .content-area,
body.archive #primary,
body.archive .content-area { margin-top: 0 !important; padding: 48px 24px !important; background: #F0FDF4 !important; }

/* Grid de cards */
.blog #main,
.archive #main { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }

/* Card individual */
article.loop-entry {
  background: #fff !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: none !important;
  transition: transform 0.3s, box-shadow 0.3s !important;
  display: flex !important;
  flex-direction: column !important;
}
article.loop-entry:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 32px -8px rgba(6,78,59,0.12) !important;
}

/* Remover padding interno padrão e recriar */
article.loop-entry .entry-content-wrap {
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

/* Thumbnail */
article.loop-entry .post-thumbnail {
  margin: 0 !important;
  aspect-ratio: 16/9;
  overflow: hidden;
}
article.loop-entry .post-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.4s !important;
}
article.loop-entry:hover .post-thumbnail img { transform: scale(1.04) !important; }

/* Categoria tag */
article.loop-entry .entry-taxonomies { margin-bottom: 10px !important; }
article.loop-entry .category-link-uncategorized,
article.loop-entry .category-links a {
  font-family: Inter, sans-serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .15em !important;
  color: #064E3B !important;
  background: #F0FDF4 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
}

/* Título do post */
article.loop-entry .entry-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: #0F172A !important;
  margin: 0 0 10px !important;
  letter-spacing: -.02em !important;
  line-height: 1.3 !important;
}
article.loop-entry .entry-title a {
  color: #0F172A !important;
  text-decoration: none !important;
}
article.loop-entry .entry-title a:hover { color: #064E3B !important; }

/* Meta (data/autor) */
article.loop-entry .entry-meta {
  font-family: Inter, sans-serif !important;
  font-size: 11px !important;
  color: #94A3B8 !important;
  margin-bottom: 12px !important;
}
article.loop-entry .entry-meta a { color: #94A3B8 !important; }
article.loop-entry .meta-label { display: none !important; }

/* Excerpt */
article.loop-entry .entry-summary {
  font-family: Inter, sans-serif !important;
  font-size: 13px !important;
  color: #64748B !important;
  line-height: 1.7 !important;
  flex: 1 !important;
  margin-bottom: 20px !important;
}
article.loop-entry .entry-summary p { margin: 0 !important; }

/* Read More */
article.loop-entry .more-link-wrap { margin: 0 !important; }
article.loop-entry .post-more-link {
  font-family: Inter, sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  color: #064E3B !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: gap 0.2s !important;
}
article.loop-entry .post-more-link:hover { gap: 10px !important; color: #0F172A !important; }
article.loop-entry .post-more-link .kadence-svg-iconset { display: none !important; }

/* Paginação */
.blog .pagination, .archive .pagination {
  max-width: 1100px;
  margin: 48px auto 0;
  display: flex;
  justify-content: center;
  gap: 8px;
}
.blog .pagination .page-numbers,
.archive .pagination .page-numbers {
  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  padding: 8px 16px !important;
  border-radius: 12px !important;
  color: #64748B !important;
  text-decoration: none !important;
  border: 1px solid #E2E8F0 !important;
  transition: all .2s !important;
}
.blog .pagination .page-numbers.current,
.blog .pagination .page-numbers:hover {
  background: #064E3B !important;
  color: #fff !important;
  border-color: #064E3B !important;
}

/* ── Post individual ── */
.single-post .entry-content-wrap { padding: 0 24px 48px !important; max-width: 760px; margin: 0 auto; }
.single-post .entry-header { padding: 48px 24px 32px !important; max-width: 760px; margin: 0 auto; }
.single-post .entry-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(1.8rem, 3vw, 2.8rem) !important;
  font-weight: 800 !important;
  color: #0F172A !important;
  letter-spacing: -.03em !important;
  line-height: 1.2 !important;
}
.single-post .entry-meta { font-size: 12px !important; color: #94A3B8 !important; margin-top: 12px !important; }
.single-post .entry-content p { font-size: 1.05rem !important; line-height: 1.85 !important; color: #334155 !important; margin-bottom: 20px !important; }
.single-post .entry-content h2 { font-family: 'Playfair Display', serif !important; font-size: 1.6rem !important; font-weight: 800 !important; color: #0F172A !important; margin: 40px 0 16px !important; }
.single-post .entry-content h3 { font-family: Inter, sans-serif !important; font-size: 1rem !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: .1em !important; color: #064E3B !important; margin: 32px 0 12px !important; }

@media(max-width: 900px) {
  .blog #main, .archive #main { grid-template-columns: repeat(2, 1fr) !important; }
}
@media(max-width: 600px) {
  .blog #main, .archive #main { grid-template-columns: 1fr !important; }
  body.blog .content-area, body.archive .content-area { padding: 32px 16px !important; }
}

/* ── Minha Conta ── */
body.woocommerce-account .content-area,
body.page-id-9 #primary { background: #F0FDF4 !important; padding: 56px 24px !important; }

/* Container dos formulários */
body.woocommerce-account .woocommerce {
  max-width: 960px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 32px !important;
  align-items: start !important;
}

/* Cada form num card */
body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register {
  background: #fff !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 24px !important;
  padding: 40px !important;
  box-shadow: 0 4px 24px -4px rgba(6,78,59,.07) !important;
}

/* Títulos dos forms */
body.woocommerce-account h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  color: #0F172A !important;
  margin: 0 0 28px !important;
  letter-spacing: -.02em !important;
}

/* Labels */
body.woocommerce-account .woocommerce-form-row label {
  font-family: Inter, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  color: #64748B !important;
  margin-bottom: 6px !important;
  display: block !important;
}

/* Inputs */
body.woocommerce-account .woocommerce-Input--text {
  width: 100% !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  color: #0F172A !important;
  background: #F8FAFC !important;
  transition: border-color .2s, box-shadow .2s !important;
}
body.woocommerce-account .woocommerce-Input--text:focus {
  border-color: #064E3B !important;
  box-shadow: 0 0 0 3px rgba(6,78,59,.1) !important;
  outline: none !important;
  background: #fff !important;
}

/* Botões */
body.woocommerce-account .woocommerce-button {
  background: #064E3B !important;
  color: #fff !important;
  border: none !important;
  border-radius: 14px !important;
  padding: 14px 28px !important;
  font-family: Inter, sans-serif !important;
  font-weight: 800 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  cursor: pointer !important;
  transition: background .2s !important;
  width: 100% !important;
  margin-top: 8px !important;
}
body.woocommerce-account .woocommerce-button:hover { background: #0F172A !important; }

/* "Esqueceu a senha" */
body.woocommerce-account .woocommerce-LostPassword {
  margin-top: 16px !important;
  text-align: center !important;
}
body.woocommerce-account .woocommerce-LostPassword a {
  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  color: #064E3B !important;
  font-weight: 600 !important;
}

/* Checkbox lembrar */
body.woocommerce-account .woocommerce-form-login__rememberme {
  font-family: Inter, sans-serif !important;
  font-size: 13px !important;
  color: #64748B !important;
}

/* Texto de privacidade */
body.woocommerce-account .woocommerce-privacy-policy-text {
  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  color: #94A3B8 !important;
  line-height: 1.6 !important;
  margin-bottom: 16px !important;
}
body.woocommerce-account .woocommerce-privacy-policy-link { color: #064E3B !important; }

/* Painel do usuário logado — layout correto quando autenticado */
body.woocommerce-account.logged-in .woocommerce {
  display: grid !important;
  grid-template-columns: 240px 1fr !important;
  gap: 32px !important;
  align-items: start !important;
  max-width: 1000px !important;
  margin: 0 auto !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  background: #fff !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 20px !important;
  padding: 8px 0 !important;
  box-shadow: 0 4px 20px -4px rgba(6,78,59,.08) !important;
  overflow: hidden !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom: 1px solid #F1F5F9 !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { border-bottom: none !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation a {
  font-family: Inter, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  padding: 14px 20px !important;
  display: block !important;
  text-decoration: none !important;
  transition: all .15s !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  color: #064E3B !important;
  font-weight: 800 !important;
  background: #F0FDF4 !important;
  border-left: 3px solid #064E3B !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  color: #064E3B !important;
  background: #F8FFF9 !important;
}

/* Área de conteúdo do painel */
body.woocommerce-account .woocommerce-MyAccount-content {
  background: #fff !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 20px !important;
  padding: 36px !important;
  box-shadow: 0 4px 20px -4px rgba(6,78,59,.08) !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  color: #475569 !important;
  line-height: 1.7 !important;
}
body.woocommerce-account .woocommerce-MyAccount-content p { margin: 0 0 12px !important; }
body.woocommerce-account .woocommerce-MyAccount-content a {
  color: #064E3B !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
}

@media(max-width: 640px) {
  body.woocommerce-account .woocommerce,
  body.woocommerce-account.logged-in .woocommerce { grid-template-columns: 1fr !important; }
  body.woocommerce-account .woocommerce-form-login,
  body.woocommerce-account .woocommerce-form-register { padding: 28px 20px !important; }
}

/* ── Carrinho (WooCommerce Blocks) ── */
.wc-block-cart { font-family: Inter, sans-serif !important; }

/* Fundo da página do carrinho — sobrescreve .content-bg do Kadence */
body.page-id-7 .content-bg,
body.page-id-7 .entry.content-bg,
body.page-id-7 #primary,
body.page-id-7 .content-area { background: #F0FDF4 !important; padding: 40px 24px !important; }

/* Título vazio */
.wc-block-cart__empty-cart__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.8rem !important;
  font-weight: 800 !important;
  color: #0F172A !important;
}

/* "Talvez você se interesse por" */
.wc-block-cart__empty-cart__ .wp-block-heading,
h2.wp-block-heading { font-family: 'Playfair Display', serif !important; color: #0F172A !important; }

/* Tabela de itens */
.wc-block-cart-items { border-radius: 16px !important; overflow: hidden !important; border: 1px solid #E2E8F0 !important; }
.wc-block-cart-items__header {
  background: #F8FAFC !important;
  font-family: Inter, sans-serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .15em !important;
  color: #94A3B8 !important;
  padding: 12px 16px !important;
}
.wc-block-cart-item { border-top: 1px solid #E2E8F0 !important; padding: 16px !important; }
.wc-block-cart-item__image img { border-radius: 10px !important; }
.wc-block-cart-item__wrap { font-family: Inter, sans-serif !important; }
.wc-block-cart-item__product-name { font-weight: 700 !important; color: #0F172A !important; font-size: 14px !important; }
.wc-block-cart-item__prices .price { color: #064E3B !important; font-weight: 900 !important; font-size: 1.1rem !important; }

/* Resumo do pedido */
.wc-block-cart__totals-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  color: #0F172A !important;
}
.wp-block-woocommerce-cart-order-summary-block {
  background: #fff !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 20px !important;
  padding: 24px !important;
}
.wc-block-components-totals-item { font-family: Inter, sans-serif !important; font-size: 14px !important; }
.wc-block-components-totals-item__label { color: #64748B !important; }
.wc-block-components-totals-item__value { font-weight: 700 !important; color: #0F172A !important; }

/* Botão finalizar */
.wc-block-cart__submit-container .wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button {
  background: #064E3B !important;
  color: #fff !important;
  border-radius: 14px !important;
  font-family: Inter, sans-serif !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  border: none !important;
  padding: 16px 24px !important;
  width: 100% !important;
  transition: background .2s !important;
}
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button:hover { background: #0F172A !important; }

/* ── Produtos em Destaque (shortcode WooCommerce na home) ── */
.trevo-wc-produtos { margin-top: 40px; }
.trevo-wc-produtos ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.trevo-wc-produtos ul.products li.product {
  background: #fff !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  transition: all .3s !important;
  padding: 0 0 16px !important;
  margin: 0 !important;
}
.trevo-wc-produtos ul.products li.product:hover {
  border-color: #064E3B !important;
  box-shadow: 0 16px 40px -8px rgba(6,78,59,.15) !important;
  transform: translateY(-4px) !important;
}
.trevo-wc-produtos ul.products li.product a img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .4s !important;
  border-radius: 0 !important;
}
.trevo-wc-produtos ul.products li.product:hover a img { transform: scale(1.04) !important; }

/* Remover overlay do Kadence que aparece sobre a imagem no hover */
.trevo-wc-produtos .product-action-wrap { display: none !important; }
.trevo-wc-produtos .woo-archive-action-on-hover .product-details { position: static !important; transform: none !important; opacity: 1 !important; }
.trevo-wc-produtos .product-details { display: block !important; padding: 0 !important; background: transparent !important; box-shadow: none !important; }
.trevo-wc-produtos mark { background: none !important; color: inherit !important; }
.trevo-wc-produtos ul.products li.product .woocommerce-loop-product__title {
  font-family: Inter, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #0F172A !important;
  padding: 14px 16px 4px !important;
  line-height: 1.4 !important;
}
.trevo-wc-produtos ul.products li.product .price {
  font-family: Inter, sans-serif !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #064E3B !important;
  padding: 0 16px 12px !important;
  display: block !important;
}
.trevo-wc-produtos ul.products li.product .button {
  display: block !important;
  margin: 4px 16px 0 !important;
  background: #064E3B !important;
  color: #fff !important;
  text-align: center !important;
  padding: 10px !important;
  border-radius: 12px !important;
  font-family: Inter, sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  text-decoration: none !important;
  border: none !important;
  transition: background .2s !important;
}
.trevo-wc-produtos ul.products li.product .button:hover { background: #0F172A !important; }
@media(max-width: 640px) {
  .trevo-wc-produtos ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
