/* Escolhas da Ana: editorial, claro e acolhedor. Mobile primeiro. */
:root {
  --ea-off: var(--wp--preset--color--off-white, #F7F3EE);
  --ea-bege: var(--wp--preset--color--bege, #E8DED4);
  --ea-marrom: var(--wp--preset--color--marrom, #72564A);
  --ea-salvia: var(--wp--preset--color--salvia, #8C9988);
  --ea-azul: var(--wp--preset--color--azul, #263B4B);
  --ea-preto: var(--wp--preset--color--preto, #292624);
  --ea-linha: rgba(41, 38, 36, .12);
  --ea-serif: var(--wp--preset--font-family--cormorant, Georgia, serif);
}

body { -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }

/* ---------- Tipografia de apoio ---------- */
.ea-sobretitulo { font-size: .72rem; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--ea-marrom); margin-bottom: .5rem !important; }
.ea-display { font-weight: 400 !important; letter-spacing: -.01em; }
.ea-display em { font-style: italic; color: var(--ea-marrom); }
.ea-lead { font-size: 1.0625rem; color: rgba(41, 38, 36, .78); max-width: 34em; }
.ea-aviso { font-size: .78rem; color: rgba(41, 38, 36, .65); line-height: 1.55; }
.ea-vazio { text-align: center; color: rgba(41, 38, 36, .7); padding: 2.5rem 0; }

/* Botões contornados */
.wp-block-button.is-style-outline > .wp-block-button__link { background: transparent; color: var(--ea-preto); border: 1px solid var(--ea-preto); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--ea-preto); color: var(--ea-off); }

/* ---------- Topo ---------- */
.ea-topbar { background: var(--ea-preto); color: var(--ea-off); font-size: .75rem; letter-spacing: .04em; padding-block: .55rem; }
.ea-topbar p { margin: 0; }
.ea-topbar a { color: var(--ea-off); text-decoration: underline; text-underline-offset: 3px; }
.ea-header { background: var(--ea-off); border-bottom: 1px solid var(--ea-linha); padding-block: 1rem; position: sticky; top: 0; z-index: 20; }
.ea-header-linha { gap: 1rem; }
.ea-header-direita { gap: 1.25rem; align-items: center; }
.ea-logo { display: flex; flex-direction: column; line-height: 1; text-decoration: none; color: var(--ea-preto) !important; white-space: nowrap; flex-shrink: 0; }
.ea-logo-nome { font-family: var(--ea-serif); font-style: italic; font-size: 1.65rem; font-weight: 500; }
.ea-logo-sub { font-size: .6rem; letter-spacing: .32em; text-transform: uppercase; margin-top: .35rem; color: var(--ea-marrom); }
.ea-nav { font-size: .8125rem; letter-spacing: .04em; --wp--style--block-gap: clamp(.9rem, 2vw, 1.75rem); }
.ea-nav .wp-block-navigation__container { flex-wrap: nowrap; white-space: nowrap; }
.ea-nav a { color: var(--ea-preto); text-decoration: none; }
.ea-nav a:hover { color: var(--ea-marrom); }
.ea-nav .wp-block-navigation__submenu-container { border: 1px solid var(--ea-linha) !important; background: var(--ea-off) !important; padding: .5rem 0; min-width: 210px !important; }
.ea-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--ea-off); padding: 2rem 1.5rem; }
.ea-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { font-size: 1.05rem; gap: 1rem; }
.ea-icone-busca { color: var(--ea-preto); display: flex; }
@media (max-width: 599px) {
  .ea-logo-nome { font-size: 1.35rem; }
  .ea-logo-sub { letter-spacing: .24em; }
}

/* ---------- Início ---------- */
.ea-home > * + * { margin-top: clamp(3.5rem, 8vw, 6.5rem) !important; }
.ea-hero { background: var(--ea-bege); padding-block: clamp(3rem, 9vw, 7rem); }
.ea-hero h1 { margin: .25rem 0 1.25rem; }
.ea-hero .wp-block-buttons { margin-top: 2rem; }
.ea-citacao { background: var(--ea-salvia); color: var(--ea-off); padding: clamp(2.5rem, 6vw, 4rem) clamp(1.75rem, 4vw, 3rem); aspect-ratio: 4 / 5; display: flex; flex-direction: column; justify-content: flex-end; border-radius: 2px; }
.ea-citacao-texto { font-family: var(--ea-serif); font-style: italic; font-size: clamp(1.75rem, 3.2vw, 2.4rem); line-height: 1.2; margin: 0; }
.ea-citacao-autora { font-size: .72rem; letter-spacing: .22em; text-transform: uppercase; margin-top: 1.25rem !important; }
@media (max-width: 781px) { .ea-citacao { aspect-ratio: auto; margin-top: 1rem; } }

.ea-faixa { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem 1rem; border-block: 1px solid var(--ea-linha); padding-block: 1.75rem; }
.ea-faixa li { display: flex; flex-direction: column; gap: .2rem; font-size: .8rem; }
.ea-faixa strong { font-weight: 600; letter-spacing: .02em; }
.ea-faixa span { color: rgba(41, 38, 36, .65); font-size: .75rem; }
@media (min-width: 900px) { .ea-faixa { grid-template-columns: repeat(4, 1fr); } .ea-faixa li { padding-left: 1.25rem; border-left: 1px solid var(--ea-linha); } .ea-faixa li:first-child { border-left: 0; padding-left: 0; } }

.ea-secao h2 { margin-top: 0; margin-bottom: 2rem; }
.ea-ver-todas { text-align: center; margin-top: 2.5rem !important; font-size: .85rem; letter-spacing: .06em; }

.ea-ambientes { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.ea-ambiente { position: relative; aspect-ratio: 4 / 5; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.1rem; text-decoration: none; color: var(--ea-off) !important; background-size: cover; background-position: center; overflow: hidden; }
.ea-ambiente::before { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(41, 38, 36, .55), rgba(41, 38, 36, 0) 60%); transition: opacity .3s; }
.ea-ambiente > * { position: relative; }
.ea-ambiente.cor-bege { background-color: #CDBFB1; }
.ea-ambiente.cor-salvia { background-color: var(--ea-salvia); }
.ea-ambiente.cor-marrom { background-color: var(--ea-marrom); }
.ea-ambiente.cor-azul { background-color: var(--ea-azul); }
.ea-ambiente-nome { font-family: var(--ea-serif); font-style: italic; font-size: 1.6rem; line-height: 1.1; }
.ea-ambiente-qtd { font-size: .68rem; letter-spacing: .18em; text-transform: uppercase; margin-top: .35rem; opacity: .9; }
.ea-ambiente:hover::before { opacity: .75; }
@media (min-width: 600px) { .ea-ambientes { grid-template-columns: repeat(3, 1fr); gap: 16px; } .ea-ambiente { aspect-ratio: 5 / 4; } }

.ea-faixa-sobre { background: var(--ea-bege); padding-block: clamp(3rem, 8vw, 5.5rem); }
.ea-faixa-grupo { background: var(--ea-azul); color: var(--ea-off); padding-block: clamp(3.5rem, 9vw, 6rem); text-align: center; }
.ea-faixa-grupo h2 { color: var(--ea-off); max-width: 18em; margin-inline: auto !important; }
.ea-faixa-grupo .ea-sobretitulo { color: var(--ea-bege); }
.ea-faixa-grupo .wp-block-buttons { justify-content: center; }
.ea-faixa-grupo .wp-block-button__link { background: var(--ea-off); color: var(--ea-azul); }
.ea-faixa-grupo .wp-block-button__link:hover { background: var(--ea-bege); color: var(--ea-azul); }
.ea-consultoria-chamada { text-align: center; padding-bottom: 1rem; }

/* ---------- Cards de produto ---------- */
.ea-grade { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px 14px; }
@media (min-width: 700px) { .ea-grade { grid-template-columns: repeat(3, 1fr); gap: 36px 20px; } }
@media (min-width: 1100px) { .ea-grade { grid-template-columns: repeat(4, 1fr); } }
.ea-card { display: flex; flex-direction: column; min-width: 0; }
.ea-card-foto { position: relative; display: block; aspect-ratio: 1; background: #fff; overflow: hidden; }
.ea-card-foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.ea-card:hover .ea-card-foto img { transform: scale(1.04); }
.ea-sem-foto { display: block; width: 100%; height: 100%; aspect-ratio: 1; background: var(--ea-bege); }
.ea-selo { display: inline-block; background: var(--ea-off); color: var(--ea-marrom); font-size: .62rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; padding: .35rem .6rem; }
.ea-card-foto .ea-selo { position: absolute; left: 8px; top: 8px; }
.ea-card-info { display: flex; flex-direction: column; gap: .3rem; padding-top: .85rem; flex: 1; }
.ea-loja { font-size: .62rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--ea-salvia); }
.ea-card-nome { font-family: var(--wp--preset--font-family--montserrat); font-size: .875rem; font-weight: 500; line-height: 1.4; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ea-card-nome a { color: var(--ea-preto); text-decoration: none; }
.ea-card-comentario { font-family: var(--ea-serif); font-style: italic; font-size: 1rem; line-height: 1.35; color: rgba(41, 38, 36, .75); margin: 0; }
.ea-preco { font-size: .95rem; font-weight: 600; margin-top: auto; padding-top: .25rem; }
.ea-preco del { font-weight: 400; opacity: .55; font-size: .8em; margin-right: .3rem; }
.ea-preco ins { text-decoration: none; }
.ea-botao-loja { display: block; text-align: center; border: 1px solid var(--ea-preto); color: var(--ea-preto) !important; text-decoration: none; font-size: .7rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; padding: .75rem .5rem; margin-top: .5rem; border-radius: 999px; transition: background .2s, color .2s; }
.ea-botao-loja:hover { background: var(--ea-preto); color: var(--ea-off) !important; }

/* ---------- Catálogo ---------- */
.ea-catalogo-topo { text-align: center; max-width: 720px; margin: 0 auto 2rem; }
.ea-catalogo-topo h1 { font-size: var(--wp--preset--font-size--x-large); margin: .25rem 0 .75rem; }
.ea-catalogo-topo .ea-lead { margin-inline: auto; }
.ea-chips { display: flex; gap: .5rem; overflow-x: auto; padding-bottom: .5rem; margin-bottom: 1rem; scrollbar-width: none; }
.ea-chips a { flex-shrink: 0; border: 1px solid var(--ea-linha); border-radius: 999px; padding: .45rem 1rem; font-size: .8rem; color: var(--ea-preto); text-decoration: none; white-space: nowrap; }
.ea-chips a.ativo, .ea-chips a:hover { background: var(--ea-preto); border-color: var(--ea-preto); color: var(--ea-off); }
.ea-filtros { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 1.5rem; }
.ea-filtros input, .ea-filtros select { font: inherit; font-size: .85rem; color: var(--ea-preto); background: #fff; border: 1px solid var(--ea-linha); border-radius: 0; padding: .7rem .8rem; width: 100%; min-width: 0; }
.ea-filtros input { grid-column: 1 / -1; }
.ea-filtros button { font: inherit; font-size: .75rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; background: var(--ea-preto); color: var(--ea-off); border: 0; padding: .7rem 1.25rem; cursor: pointer; }
@media (min-width: 900px) { .ea-filtros { grid-template-columns: 2fr 1fr 1fr 1fr auto; } .ea-filtros input { grid-column: auto; } }
.ea-contagem { font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; color: rgba(41, 38, 36, .6); margin-bottom: 1.25rem; }
.ea-paginas { display: flex; justify-content: center; gap: 1.5rem; margin: 3rem 0 1rem; font-size: .85rem; }
.ea-catalogo > .ea-aviso { text-align: center; margin-top: 3rem; }

/* ---------- Produto ---------- */
.ea-trilha { font-size: .75rem; letter-spacing: .04em; color: rgba(41, 38, 36, .6); margin-bottom: 1.5rem; }
.ea-trilha a { color: inherit; }
.ea-produto-grade { display: grid; gap: 2rem; }
@media (min-width: 900px) { .ea-produto-grade { grid-template-columns: 1.1fr 1fr; gap: 4rem; align-items: start; } .ea-produto-info { position: sticky; top: 110px; } }
.ea-galeria-principal { background: #fff; aspect-ratio: 1; overflow: hidden; }
.ea-galeria-principal img { width: 100%; height: 100%; object-fit: contain; }
.ea-galeria-miniaturas { display: flex; gap: 8px; margin-top: 8px; overflow-x: auto; }
.ea-galeria-miniaturas button { border: 1px solid var(--ea-linha); padding: 0; background: #fff; width: 72px; height: 72px; flex-shrink: 0; cursor: pointer; }
.ea-galeria-miniaturas img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ea-produto-info h1 { font-size: var(--wp--preset--font-size--x-large); margin: .4rem 0 .9rem; }
.ea-preco-grande { font-size: 1.5rem; margin-top: 1rem; }
.ea-preco-nota { font-size: .75rem; color: rgba(41, 38, 36, .6); margin: .25rem 0 1.25rem; }
.ea-botao-grande { font-size: .8rem; padding: 1.05rem 1rem; background: var(--ea-preto); color: var(--ea-off) !important; }
.ea-botao-grande:hover { background: var(--ea-marrom); border-color: var(--ea-marrom); }
.ea-porque { border-top: 1px solid var(--ea-linha); margin-top: 2rem; padding-top: 1.5rem; }
.ea-porque h2 { font-size: 1.5rem; font-style: italic; margin: 0 0 .5rem; }
.ea-porque p { font-size: .95rem; }
.ea-detalhes, .ea-relacionados { margin-top: 4rem; }
.ea-detalhes h2, .ea-relacionados h2 { font-size: var(--wp--preset--font-size--x-large); margin-bottom: 1.5rem; }

/* ---------- Páginas ---------- */
.ea-pagina { padding-block: clamp(2rem, 6vw, 4rem); }
.ea-pagina > .wp-block-post-title { font-weight: 400; margin-bottom: 1.5rem; }

/* Vitrine do grupo (gerada pelo painel) no estilo do site */
.ea-vitrine#vitrine-escolhas { gap: 24px 14px !important; }
.ea-vitrine#vitrine-escolhas a { border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.ea-vitrine#vitrine-escolhas img { background: #fff !important; }
.ea-vitrine#vitrine-escolhas .ve-info { padding: .75rem 0 0 !important; }

/* ---------- Rodapé ---------- */
.ea-rodape { background: var(--ea-preto); color: var(--ea-bege); padding-block: clamp(3rem, 7vw, 4.5rem) 2rem; margin-top: clamp(3.5rem, 8vw, 6rem); font-size: .875rem; }
.ea-rodape .ea-logo { color: var(--ea-off) !important; }
.ea-rodape .ea-logo-sub { color: var(--ea-bege); }
.ea-rodape h4 { color: var(--ea-off); font-family: var(--wp--preset--font-family--montserrat); font-size: .7rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; margin-bottom: 1rem; }
.ea-rodape a { color: var(--ea-bege); text-decoration: none; }
.ea-rodape a:hover { color: var(--ea-off); text-decoration: underline; }
.ea-lista-links { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: .45rem; }
.ea-rodape-final { border-top: 1px solid rgba(232, 222, 212, .18); margin-top: 2.5rem !important; padding-top: 1.5rem; gap: 1rem; }
.ea-rodape-final p, .ea-rodape .ea-aviso { color: rgba(232, 222, 212, .7); font-size: .75rem; margin: 0; max-width: 52em; }
