/* Homepage product catalogue. */
#catalog .section-heading>p{max-width:390px}
#catalog .catalog-products{gap:24px;align-items:stretch}
#catalog .catalog-card{padding:0;min-height:0;overflow:hidden;background:#fff;border:1px solid var(--line);color:var(--ink);border-radius:20px}
#catalog .catalog-image{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:#e5e7df;flex:none}
#catalog .catalog-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
#catalog .catalog-card:hover .catalog-image img{transform:scale(1.025)}
#catalog .catalog-badge{position:absolute;top:16px;left:16px;right:16px;width:fit-content;max-width:calc(100% - 32px);padding:9px 13px;border-radius:24px;background:var(--lime);font-size:.75rem;font-weight:600;line-height:1.4;color:var(--ink)}
#catalog .catalog-card-body{display:flex;flex-direction:column;flex:1;padding:24px;min-width:0}
#catalog .catalog-card h3{font-size:1.6rem;line-height:1.15;letter-spacing:-.035em;margin:0 0 12px}
#catalog .catalog-card p{max-width:none;font-size:.875rem;line-height:1.6;color:var(--muted);margin:0}
#catalog .catalog-card .tags{margin:18px 0 24px;color:var(--muted);font-size:.8125rem;line-height:1.5}
#catalog .catalog-card .catalog-card-bottom{margin-top:auto;padding-top:8px;font-size:.8125rem}
#catalog .catalog-card .catalog-price{display:flex;align-items:baseline;gap:7px}
#catalog .catalog-price strong{font-size:1.4rem;font-weight:700;color:var(--ink);letter-spacing:-.035em}
#catalog .catalog-price span{font-size:.75rem}
#catalog .catalog-card .product-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:14px 16px;min-height:48px;border:0;border-radius:10px;background:#eef0e8;color:var(--ink);font-size:.8125rem;line-height:1.4;text-decoration:none}
#catalog .catalog-card:first-child .product-action{background:var(--lime)}
#catalog .catalog-card .product-action:hover{background:#dfe5d3}
#catalog .catalog-card:first-child .product-action:hover{background:var(--lime-hover)}
#catalog .catalog-image:focus-visible,#catalog .product-action:focus-visible{outline:3px solid #789b12;outline-offset:-4px}
#catalog .catalog-custom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:26px;margin-top:30px;border-top:1px solid var(--line)}
#catalog .catalog-custom h3{font-size:1.05rem;line-height:1.4;letter-spacing:-.02em;margin:0 0 6px}
#catalog .catalog-custom p{font-size:.875rem;color:var(--muted);margin:0;line-height:1.5}
#catalog .catalog-custom>a{display:flex;align-items:center;gap:18px;flex:none;padding:12px 0;font-weight:600;font-size:.875rem;text-decoration:none}
@media(max-width:1050px){#catalog .catalog-products{gap:18px}#catalog .catalog-card-body{padding:20px}#catalog .catalog-card h3{font-size:1.4rem}}
@media(max-width:800px){#catalog .catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))}#catalog .catalog-card h3{font-size:1.25rem}}
@media(max-width:520px){#catalog .catalog-products{grid-template-columns:1fr;gap:20px}#catalog .catalog-card-body{padding:22px}#catalog .catalog-card h3{font-size:1.6rem}#catalog .catalog-custom{align-items:flex-start;flex-direction:column;gap:8px}#catalog .catalog-badge{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){#catalog .catalog-image img{transition:none}#catalog .catalog-card:hover .catalog-image img{transform:none}}
