.hw-catalog{color:#123e32;background:#f3efe6;padding:48px 0 40px}
.hw-catalog>h2{font-family:var(--font-heading--family);font-size:clamp(30px,3.2vw,46px);font-weight:400;line-height:1.15;letter-spacing:-.035em;text-align:center;margin:0 24px 42px;text-wrap:balance}
.hw-catalog__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0 6px;gap:6px}
.hw-catalog__card{min-width:0}
.hw-catalog__link{display:block;text-decoration:none;color:inherit}
.hw-catalog__link:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
.hw-catalog__media{position:relative;aspect-ratio:3/4;overflow:hidden;background:#e9e1d6}
.hw-catalog .hw-catalog__image{display:block;width:100%;height:100%;object-fit:contain;transition:opacity .4s ease,transform .65s ease}
.hw-catalog .hw-catalog__image--alternate{position:absolute;inset:0;opacity:0}
.hw-catalog__caption{padding:18px 12px 14px;text-align:center}
.hw-catalog__caption h3{font-family:var(--font-heading--family);font-size:18px;font-weight:400;line-height:1.35;letter-spacing:-.02em;margin:0 0 7px}
.hw-catalog__caption p{font-family:var(--font-body--family);font-size:14px;line-height:1.5;margin:0;opacity:.7}
@media(hover:hover) and (pointer:fine){.hw-catalog__link:hover .hw-catalog__image{transform:scale(1.025)}.hw-catalog__link:hover .hw-catalog__image--alternate{opacity:1}}
@media(max-width:759px){.hw-catalog{padding:28px 0 24px}.hw-catalog>h2{margin-bottom:28px}.hw-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.hw-catalog__caption{padding:13px 8px 10px}.hw-catalog__caption h3{font-size:16px}.hw-catalog__caption p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.hw-catalog .hw-catalog__image{transition:none;transform:none!important}}
