/* Verified breed library. */

.kc-breeds,
.kc-breed-detail {
  background: #fffaf5;
  color: var(--kc-cocoa);
}

.kc-breeds__shell {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.kc-breeds__hero,
.kc-breed-detail__hero {
  background:
    radial-gradient(circle at 10% 14%, rgba(255, 224, 188, .75), transparent 32%),
    radial-gradient(circle at 88% 16%, rgba(231, 222, 245, .78), transparent 34%),
    linear-gradient(180deg, #fffaf5, #fff7f2);
}

.kc-breeds__hero { padding: 62px 0 66px; }
.kc-breed-detail__hero { padding: 22px 0 58px; }

.kc-breeds__hero-grid,
.kc-breed-detail__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  gap: clamp(32px, 6vw, 76px);
  align-items: center;
}

.kc-breeds__eyebrow,
.kc-breeds__card-kicker {
  margin: 0;
  color: #a95748;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .09em;
  line-height: 1.45;
  text-transform: uppercase;
}

.kc-breeds__hero h1,
.kc-breed-detail__hero h1 {
  max-width: 850px;
  margin: 12px 0 0;
  font-size: clamp(2.7rem, 5.6vw, 5rem);
  line-height: .99;
  letter-spacing: -.045em;
}

.kc-breeds__lead,
.kc-breed-detail__lead {
  max-width: 780px;
  margin: 23px 0 0;
  color: #675854;
  font-size: clamp(1.02rem, 1.5vw, 1.18rem);
  line-height: 1.72;
}

.kc-breeds__promise,
.kc-breed-detail__identity,
.kc-breed-detail__source-card {
  padding: 28px;
  border: 1px solid rgba(59, 42, 33, .09);
  border-radius: 30px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 20px 52px rgba(79, 55, 48, .09);
}

.kc-breeds__promise > span,
.kc-breed-detail__identity-icon {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 50%;
  background: #e6f2e5;
  font-size: 1.25rem;
  font-weight: 900;
}

.kc-breeds__promise h2,
.kc-breed-detail__source-card h2 {
  margin: 17px 0 9px;
  font-size: 1.5rem;
  line-height: 1.2;
}

.kc-breeds__promise p,
.kc-breed-detail__identity p,
.kc-breed-detail__source-card p {
  margin: 9px 0 0;
  color: #70615d;
  line-height: 1.64;
}

.kc-breeds__filters {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 28px;
}

.kc-breeds__filters a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding: 9px 15px;
  border: 1px solid rgba(59, 42, 33, .1);
  border-radius: 999px;
  background: rgba(255,255,255,.84);
  color: #66534d;
  font-weight: 850;
  text-decoration: none;
}

.kc-breeds__filters a[aria-current="page"] {
  background: #f1ebf8;
  color: #604a78;
}

.kc-breeds__section,
.kc-breed-detail__section {
  padding: 70px 0;
  background: #fff;
}

.kc-breeds__section--soft,
.kc-breed-detail__section--soft {
  background: linear-gradient(180deg, #fffaf5, #f7f3ee);
}

.kc-breeds__section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: 30px;
  align-items: end;
  margin-bottom: 30px;
}

.kc-breeds__section-heading h2,
.kc-breeds__how-grid h2,
.kc-breed-detail__content h2 {
  margin: 7px 0 0;
  font-size: clamp(1.9rem, 3.7vw, 3.05rem);
  line-height: 1.1;
}

.kc-breeds__section-heading > p,
.kc-breeds__how-grid > div > p:not(.kc-breeds__eyebrow) {
  margin: 0;
  color: #766863;
  line-height: 1.68;
}

.kc-breeds__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr));
  gap: 22px;
}

.kc-breeds__card {
  display: flex;
  min-height: 470px;
  flex-direction: column;
  padding: 24px;
  border: 1px solid rgba(59, 42, 33, .09);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 15px 42px rgba(79, 55, 48, .08);
}

.kc-breeds__grid--related .kc-breeds__card { min-height: 260px; }

.kc-breeds__card-top {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

.kc-breeds__species {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 16px;
  background: #fff0df;
  font-size: 1.35rem;
}

.kc-breeds__card h3 {
  margin: 7px 0 0;
  font-size: 1.48rem;
  line-height: 1.2;
}

.kc-breeds__card h3 a {
  color: inherit;
  text-decoration: none;
}

.kc-breeds__excerpt {
  color: #70615d;
  line-height: 1.62;
}

.kc-breeds__mini-facts,
.kc-breed-detail__facts {
  display: grid;
  gap: 0;
  margin: 10px 0 0;
}

.kc-breeds__mini-facts div,
.kc-breed-detail__facts div {
  display: grid;
  grid-template-columns: minmax(90px, .45fr) minmax(0, 1fr);
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid rgba(59, 42, 33, .08);
}

.kc-breeds__mini-facts dt,
.kc-breed-detail__facts dt {
  color: #846f68;
  font-size: .76rem;
  font-weight: 850;
  text-transform: uppercase;
}

.kc-breeds__mini-facts dd,
.kc-breed-detail__facts dd { margin: 0; color: #534640; line-height: 1.5; }

.kc-breeds__sources { margin-top: auto; padding-top: 17px; }
.kc-breeds__sources strong { display: block; margin-bottom: 7px; font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }
.kc-breeds__sources ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
.kc-breeds__sources a {
  display: inline-flex;
  min-height: 31px;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  background: #f1ebf8;
  color: #654f82;
  font-size: .7rem;
  font-weight: 800;
  text-decoration: none;
}

.kc-breeds__read {
  display: inline-flex;
  width: fit-content;
  margin-top: 18px;
  color: #a34f41;
  font-weight: 900;
  text-decoration: none;
}

.kc-breeds__read:hover,
.kc-breeds__read:focus-visible,
.kc-breeds__sources a:hover,
.kc-breeds__sources a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }

.kc-breeds__how-grid,
.kc-breed-detail__content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, .72fr);
  gap: 44px;
  align-items: start;
}

.kc-breeds__how-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.kc-breeds__how-links a,
.kc-breed-detail__tool {
  display: flex;
  min-height: 54px;
  align-items: center;
  padding: 12px 15px;
  border: 1px solid rgba(59, 42, 33, .08);
  border-radius: 16px;
  background: #fff;
  color: #5c4e49;
  font-weight: 850;
  text-decoration: none;
}

.kc-breed-detail__breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 0 30px;
  color: #7a6a64;
  font-size: .82rem;
}
.kc-breed-detail__breadcrumb a { color: #6b5779; text-decoration: none; }

.kc-breed-detail__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 22px;
  color: #7b6b65;
  font-size: .82rem;
}

.kc-breed-detail__identity strong { display: block; margin-top: 17px; font-size: 1.18rem; }
.kc-breed-detail__content { max-width: 760px; }
.kc-breed-detail__content > section + section { margin-top: 48px; }
.kc-breed-detail__content section > p:not(.kc-breeds__eyebrow) { color: #5f514d; line-height: 1.75; }
.kc-breed-detail__facts { margin-top: 22px; }
.kc-breed-detail__facts div { grid-template-columns: minmax(155px, .45fr) minmax(0, 1fr); padding: 13px 0; }

.kc-breed-detail__sidebar { display: grid; gap: 18px; position: sticky; top: 24px; }
.kc-breed-detail__source-card ul { display: grid; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.kc-breed-detail__source-card li a { color: #654f82; font-weight: 800; text-decoration: none; }
.kc-breed-detail__source-card li a:hover,
.kc-breed-detail__source-card li a:focus-visible { text-decoration: underline; }
.kc-breed-detail__tool + .kc-breed-detail__tool { margin-top: 8px; }

.kc-breed-detail__notice {
  margin-top: 48px;
  padding: 20px;
  border: 1px solid rgba(163, 79, 65, .14);
  border-radius: 20px;
  background: #fff5ec;
  color: #644e47;
  line-height: 1.65;
}

.kc-breeds__empty { padding: 24px; border-radius: 20px; background: #fff8f2; color: #6c5e59; }

@media (max-width: 900px) {
  .kc-breeds__hero-grid,
  .kc-breed-detail__hero-grid,
  .kc-breeds__section-heading,
  .kc-breeds__how-grid,
  .kc-breed-detail__content-grid { grid-template-columns: 1fr; }
  .kc-breed-detail__sidebar { position: static; }
}

@media (max-width: 600px) {
  .kc-breeds__shell { width: min(100% - 28px, 1180px); }
  .kc-breeds__hero { padding: 48px 0; }
  .kc-breeds__section,
  .kc-breed-detail__section { padding: 52px 0; }
  .kc-breeds__card { min-height: auto; }
  .kc-breeds__how-links { grid-template-columns: 1fr; }
  .kc-breed-detail__facts div,
  .kc-breeds__mini-facts div { grid-template-columns: 1fr; gap: 5px; }
}

@media (prefers-reduced-motion: reduce) {
  .kc-breeds *, .kc-breed-detail * { scroll-behavior: auto !important; }
}
