/* catálogo: reaproveita as variáveis e o topo de estilo.css */
.ir-loja{padding:8px 16px;border-radius:999px;background:var(--ouro);color:var(--cafe-2);font-weight:700;text-decoration:none}

.hero{position:relative;display:grid;place-items:center;min-height:min(78vh,620px);overflow:hidden;background:var(--cafe-2);color:var(--creme);text-align:center}
.hero-fundo,.hero-fundo img{position:absolute;inset:0;width:100%;height:100%}
.hero-fundo img{object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--cafe-2) 72%,transparent) 0%,color-mix(in srgb,var(--cafe-2) 38%,transparent) 50%,transparent 80%)}
.hero-texto{position:relative;z-index:1;max-width:620px;padding:48px 24px}
.selo{margin:0;font-size:13px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--ouro-cl)}
.hero h1{margin:12px 0 8px;font-size:clamp(34px,7vw,64px);font-weight:400;letter-spacing:.04em;line-height:1.1;color:#fff}
.lema{margin:0;font-size:clamp(16px,2.6vw,22px);font-style:italic;color:var(--creme)}
.hero-acoes{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}
.botao{display:inline-block;padding:12px 24px;border:2px solid var(--ouro);border-radius:999px;background:var(--ouro);color:var(--cafe-2);font-weight:700;text-decoration:none;transition:transform .2s ease}
.botao.vazado{background:transparent;color:var(--creme)}
@media (hover:hover){.botao:hover{transform:translateY(-2px)}}

.colecao{max-width:1180px;margin:0 auto;padding:40px 16px 8px;scroll-margin-top:84px}
.secao{margin-bottom:48px;scroll-margin-top:90px}
.secao-cab{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--ouro)}
.secao h2{margin:0;font-size:clamp(22px,4vw,32px);font-weight:400;letter-spacing:.06em;color:var(--tinta)}
.secao-cab span{color:var(--tinta-2);font-size:13px}
.grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cartao-cat{display:flex;flex-direction:column;overflow:hidden;border-radius:16px;background:var(--carta);box-shadow:var(--sombra);color:inherit;text-decoration:none}
.cartao-cat .moldura{aspect-ratio:1;overflow:hidden;background:var(--mancha)}
.cartao-cat .moldura img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.cartao-cat .corpo{padding:10px 12px 14px}
.cartao-cat h3{margin:0;font-size:14px;font-weight:500;line-height:1.3}
.cartao-cat .preco{margin-top:6px}
.ver-todas{display:inline-block;margin-top:16px;color:var(--ouro-esc);font-weight:700;text-decoration:none;border-bottom:2px solid var(--ouro)}
@media (hover:hover){.cartao-cat:hover .moldura img{transform:scale(1.08)}}

.rodape{padding:40px 16px 96px;background:var(--cafe);color:var(--creme);text-align:center}
.monograma{width:96px;height:96px;border-radius:50%}
.rodape .site{margin:8px 0 20px;letter-spacing:.12em}

@media (max-width:900px){.grade{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.grade{gap:10px}.hero{min-height:70vh}}
@media (prefers-reduced-motion:reduce){.botao,.cartao-cat .moldura img{transition:none}.cartao-cat:hover .moldura img{transform:none}}
