/* Scoped adaptive layer for species and collection catalogues. Shared home/finder cards stay unchanged. */
.ds-v2 .species-catalog-main{scroll-margin-top:96px}
.ds-v2 .species-catalog-heading{margin-bottom:14px}
.ds-v2 .species-catalog-filters{position:relative;z-index:3;margin-bottom:28px;padding:14px 16px}
.ds-v2 .species-filter-details>summary{display:none}
.ds-v2 .species-filter-details>.breed-selects{display:flex;flex-wrap:wrap}
.ds-v2 .species-catalog-result-count{margin:0 0 12px;color:var(--muted);font-size:.78rem}
.ds-v2 .species-breed-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ds-v2 .species-breed-grid .species-catalog-card{height:100%;border-radius:18px}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-picture,
.ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__fallback{width:100%;height:auto;min-height:0;aspect-ratio:4/3;background:#f4eee4}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-picture>img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:50% 34%}
.ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__body{min-width:0;min-height:0;padding:14px 15px 15px}
.ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__body>strong{display:-webkit-box;min-height:2.4em;overflow:hidden;font-size:1rem;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2;hyphens:auto;overflow-wrap:break-word}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-summary{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.68rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-context:not(.breed-collection-reason){display:none}
.ds-v2 .species-breed-grid .species-catalog-card .breed-collection-reason{display:-webkit-box;min-height:0;margin-top:auto;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts{margin:8px 0;padding-top:7px}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts>span{grid-template-columns:66px minmax(0,1fr);gap:7px}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts small{font-size:.58rem}
.ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts__value{display:-webkit-box;overflow:hidden;font-size:.64rem;-webkit-box-orient:vertical;-webkit-line-clamp:1}
.ds-v2 .breed-collection-links{margin:28px 0 38px}
.ds-v2 .breed-collection-links>div:last-child{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ds-v2 .breed-collection-links a{min-height:112px;padding:15px 16px}
.ds-v2 .breed-collection-links span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.ds-v2 .breed-collection-links b{padding-top:10px}

@media(max-width:1099px){
  .ds-v2 .species-breed-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ds-v2 .breed-collection-links>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:899px){
  .ds-v2 .species-catalog-hero{grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:22px;padding:24px}
  .ds-v2 .species-catalog-hero figure{height:190px}
  .ds-v2 .species-breed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ds-v2 .breed-collection-links>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:640px){
  .ds-v2 .species-catalog-hero{display:block;padding:20px 18px}
  .ds-v2 .species-catalog-hero h1{font-size:clamp(2.25rem,10.5vw,2.9rem)}
  .ds-v2 .species-catalog-hero figure{display:none}
  .ds-v2 .species-catalog>.species-tabs{margin-block:16px 20px}
  .ds-v2 .species-catalog-heading{align-items:flex-start;margin-bottom:12px}
  .ds-v2 .species-catalog-heading h2{font-size:clamp(1.85rem,8.5vw,2.35rem)}
  .ds-v2 .species-catalog-heading p:last-child{font-size:.82rem}
  .ds-v2 .species-catalog-filters{gap:8px;margin-bottom:24px;padding:12px}
  .ds-v2 .species-catalog-filters .breed-search{min-height:48px;padding:0 8px 8px}
  .ds-v2 .species-filter-details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:9px 10px;border-radius:10px;color:var(--green-dark);font-weight:700;cursor:pointer;list-style:none}
  .ds-v2 .species-filter-details>summary::-webkit-details-marker{display:none}
  .ds-v2 .species-filter-details>summary::after{content:"+";display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:1.05rem}
  .ds-v2 .species-filter-details[open]>summary::after{content:"−"}
  .ds-v2 .species-filter-details>summary small{margin-left:auto;color:var(--muted);font-size:.65rem;font-weight:500}
  .ds-v2 .species-filter-details>.breed-selects{display:grid;grid-template-columns:1fr;gap:8px;padding-top:10px;border-top:1px solid var(--line)}
  .ds-v2 .species-filter-details .breed-selects label{width:100%}
  .ds-v2 .species-filter-details .breed-selects :is(button,.button){width:100%;min-height:46px}
  .ds-v2 .breed-collection-links{margin:22px 0 30px}
  .ds-v2 .breed-collection-links .breed-section-head{margin-bottom:12px}
  .ds-v2 .breed-collection-links .breed-section-head h2{font-size:1.55rem}
  .ds-v2 .breed-collection-links .breed-section-head p{display:none}
  .ds-v2 .breed-collection-links>div:last-child{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;margin-inline:-12px;padding:2px 12px 10px;scroll-snap-type:x mandatory;scrollbar-width:thin}
  .ds-v2 .breed-collection-links a{flex:0 0 min(68vw,240px);min-height:102px;padding:14px;scroll-snap-align:start}
  .ds-v2 .breed-collection-links span{font-size:.64rem}
  .ds-v2 .breed-collection-links b{font-size:.65rem}
  .ds-v2 .species-breed-grid{grid-template-columns:1fr;gap:12px}
  .ds-v2 .species-breed-grid .species-catalog-card{display:grid;grid-template-columns:clamp(104px,34vw,140px) minmax(0,1fr);min-height:178px;overflow:hidden}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-picture,
  .ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__fallback{position:relative;width:100%;height:100%;min-height:0;aspect-ratio:auto}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-picture>img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-position:50% 30%}
  .ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__body{min-height:0;padding:12px 36px 12px 12px;overflow-wrap:normal}
  .ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__body>small{font-size:.58rem}
  .ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__body>strong{min-height:0;font-size:clamp(.96rem,4.2vw,1.08rem)}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts{gap:2px;margin:7px 0 0;padding-top:6px}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts>span{grid-template-columns:58px minmax(0,1fr);gap:5px}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts small{font-size:.57rem}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts__value{font-size:.62rem}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-summary{display:none}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-collection-reason{font-size:.62rem!important;line-height:1.35!important}
  .ds-v2 .species-breed-grid .species-catalog-card .home-breed-card__body>b{right:8px;bottom:8px;display:grid;width:44px;height:44px;place-items:center}
  .ds-v2 .species-catalog-result-count{font-size:.72rem}
}

@media(max-width:360px){
  .ds-v2 .species-filter-details>summary small{display:none}
  .ds-v2 .species-breed-grid .species-catalog-card{grid-template-columns:104px minmax(0,1fr)}
  .ds-v2 .species-breed-grid .species-catalog-card .breed-card-facts>span:nth-child(n+3){display:none}
}

@media(prefers-reduced-motion:reduce){
  .ds-v2 .breed-collection-links>div:last-child{scroll-behavior:auto}
}
