/* Catálogo do portfólio (ecomup.site/portifolio/): usa as cores e o tipo de /styles.css */
.catalogo { max-width: var(--largura); margin: 0 auto; padding: clamp(2.5rem, 6vw, 4.5rem) var(--respiro) var(--secao); }
.catalogo__abertura { max-width: 46rem; margin-bottom: clamp(2.5rem, 6vw, 4rem); }
.catalogo__selo { display: inline-block; font-size: .85rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--azul); background: var(--branco); border: 1px solid var(--linha); border-radius: 999px; padding: .3rem .85rem; margin-bottom: 1rem; }
.catalogo__titulo { font-size: clamp(2.1rem, 5.5vw, 3.4rem); line-height: 1.08; font-weight: 800; letter-spacing: -.02em; margin-bottom: 1rem; }
.catalogo__apoio { color: var(--grafite); font-size: clamp(1.05rem, 2vw, 1.2rem); }

.vitrine { margin-bottom: clamp(2.75rem, 6vw, 4rem); }
.vitrine__cabeca { display: flex; flex-wrap: wrap; align-items: baseline; gap: .35rem 1.25rem; margin-bottom: 1.25rem; }
.vitrine__titulo { font-size: clamp(1.45rem, 3vw, 1.9rem); font-weight: 800; }
.vitrine__apoio { color: var(--grafite); font-size: .98rem; max-width: 44rem; }
.vitrine__lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); gap: 1.1rem; }
.vitrine__cartao { display: flex; flex-direction: column; height: 100%; background: var(--branco); border: 1px solid var(--linha); border-radius: 18px; overflow: hidden; text-decoration: none; color: var(--marinho); box-shadow: 0 1px 2px rgba(1, 16, 71, .04); transition: transform .18s ease, box-shadow .18s ease; }
.vitrine__cartao:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(1, 16, 71, .12); }
.vitrine__tela { display: block; width: 100%; height: auto; aspect-ratio: 640 / 336; object-fit: cover; background: var(--celeste); border-bottom: 1px solid var(--linha); }
.vitrine__area { font-size: 1.15rem; font-weight: 800; padding: 1rem 1.15rem 0; }
.vitrine__negocio { color: var(--grafite); font-size: .95rem; padding: .15rem 1.15rem 0; }
.vitrine__abrir { margin-top: auto; padding: .9rem 1.15rem 1.1rem; font-weight: 700; color: var(--azul); }
.vitrine__abrir::after { content: " →"; }

.catalogo__chamada { background: var(--marinho); color: var(--branco); border-radius: 24px; padding: clamp(2rem, 5vw, 3rem); display: flex; flex-direction: column; align-items: flex-start; gap: .9rem; }
.catalogo__chamada p { color: var(--texto-no-marinho); max-width: 40rem; }
.catalogo__chamada-titulo { font-size: clamp(1.6rem, 4vw, 2.3rem); font-weight: 800; line-height: 1.15; }
.catalogo__voltar { color: var(--branco); font-weight: 700; }

@media (prefers-reduced-motion: reduce) { .vitrine__cartao { transition: none; } .vitrine__cartao:hover { transform: none; } }
