#catalogo.pf-catalogo {
  box-sizing: border-box;
  padding: 88px max(24px, calc((100% - 1180px) / 2));
  background: #f5f7f5;
  color: #10231a;
}
#catalogo .pf-catalogo-inner { max-width: 1180px; margin: 0 auto; }
#catalogo .pf-catalogo-eyebrow { margin: 0 0 12px; color: #19733c; font-size: 13px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
#catalogo h2 { max-width: 720px; margin: 0; color: #10231a; font-size: clamp(30px, 4vw, 52px); line-height: 1.04; letter-spacing: -.04em; }
#catalogo .pf-catalogo-copy { max-width: 720px; margin: 18px 0 12px; color: #46554b; font-size: 18px; line-height: 1.55; }
#catalogo .pf-catalogo-stamp { margin: 0; color: #64746a; font-size: 14px; }
#catalogo .pf-catalogo-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
#catalogo .pf-catalogo-card { box-sizing: border-box; min-height: 255px; padding: 24px; border: 1px solid #d8e2da; border-radius: 16px; background: #fff; box-shadow: 0 8px 28px rgba(16, 35, 26, .06); }
#catalogo .pf-catalogo-status { display: inline-block; margin: 0 0 18px; padding: 6px 10px; border-radius: 999px; background: #e8f5ec; color: #19733c; font-size: 12px; font-weight: 800; }
#catalogo .pf-catalogo-card h3 { margin: 0; color: #10231a; font-size: 21px; line-height: 1.2; }
#catalogo .pf-catalogo-card > p:not(.pf-catalogo-status) { margin: 13px 0 18px; color: #526158; font-size: 15px; line-height: 1.5; }
#catalogo .pf-catalogo-card ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
#catalogo .pf-catalogo-card li { padding: 5px 8px; border: 1px solid #d9e5dc; border-radius: 999px; color: #526158; font-size: 12px; }
#catalogo .pf-catalogo-cta { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 28px; padding: 24px; border-radius: 16px; background: #10231a; color: #fff; }
#catalogo .pf-catalogo-cta p { margin: 0; font-size: 17px; line-height: 1.45; }
#catalogo .pf-catalogo-cta a { flex: 0 0 auto; padding: 13px 18px; border-radius: 10px; background: #b7ee57; color: #10231a; font-weight: 800; text-decoration: none; }
@media (max-width: 980px) { #catalogo .pf-catalogo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { #catalogo.pf-catalogo { padding: 62px 20px; } #catalogo .pf-catalogo-grid { grid-template-columns: 1fr; } #catalogo .pf-catalogo-cta { align-items: flex-start; flex-direction: column; } #catalogo .pf-catalogo-cta a { width: 100%; box-sizing: border-box; text-align: center; } }
