.kp-home-animals { padding: var(--kp-section-space) 24px; background: #fff7ef; }
.kp-home-animals__container { max-width: 1080px; margin: 0 auto; text-align: center; }
.kp-home-animals__header { max-width: 720px; margin: 0 auto 32px; }
.kp-home-animals__header h2 { margin: 0 0 14px; font-size: clamp(1.8rem, 4vw, 2.35rem); line-height: 1.2; color: #222; }
.kp-home-animals__header p, .kp-home-animals__empty { color: #555; font-size: 1.1rem; line-height: 1.6; }
.kp-home-animals__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; text-align: left; }
.kp-home-animals__card { overflow: hidden; background: #fff; border: 1px solid #eadfd4; border-radius: 14px; box-shadow: 0 5px 18px rgb(0 0 0 / 5%); }
.kp-home-animals__photo { aspect-ratio: 1; background: #f4ece3; display: flex; align-items: center; justify-content: center; }
.kp-home-animals__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.kp-home-animals__placeholder { color: #64554a; padding: 16px; }
.kp-home-animals__details { padding: 20px; }
.kp-home-animals__details h3 { margin: 0 0 8px; font-size: 1.4rem; overflow-wrap: anywhere; }
.kp-home-animals__details p { color: #555; font-size: .95rem; margin: 0 0 16px; }
.kp-home-animals__link { color: #93430a; text-decoration: underline; font-weight: 600; }
.kp-home-animals__browse { margin-top: 32px; }
.kp-home-animals a:focus-visible { outline: 3px solid #93430a; outline-offset: 4px; }
@media (max-width: 900px) { .kp-home-animals__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 540px) { .kp-home-animals { padding: var(--kp-section-space) 18px; } .kp-home-animals__grid { grid-template-columns: 1fr; max-width: 360px; margin: auto; } }
