/* === INDEX === щенки сейчас и пустое состояние · pillars · полоса о питомнике · лента собак · статьи === END INDEX === */
.puppies-empty{align-items:center}
.puppies-empty h2{margin-bottom:var(--s-4)}
.puppies-empty p{color:var(--c-steel);margin-bottom:var(--s-6);max-width:44ch}
.puppies-empty .media-lg{aspect-ratio:4/3}

.pillars-in{align-items:start}
@media (min-width:1025px){.pillars h2{max-width:12ch}}

.story{padding-block:calc(var(--section)/2)}
.story-in{align-items:center}
.story-photo{aspect-ratio:4/3;margin-top:0}
.story-text h2{margin-bottom:var(--s-6)}
.story-text p{color:var(--c-steel-soft);margin-bottom:var(--s-8)}

.strip{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:max(var(--gutter),calc((100% - var(--container))/2 + var(--gutter)));scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%}
.strip::-webkit-scrollbar{display:none}
.strip-in{display:flex;gap:var(--s-6);padding-block:var(--s-1) var(--s-3);padding-inline:max(var(--gutter),calc((100% - var(--container))/2 + var(--gutter)))}
.strip .dog-card{flex:0 0 260px;scroll-snap-align:start}
@media (max-width:640px){.strip-in{gap:var(--s-3)}.strip .dog-card{flex-basis:200px}}

.sec-articles{background:var(--c-paper-deep)}

/* === leads + polish: цифры · щенки есть · почему подрощенный · вязки · услуги · стена титулов · финальный CTA === */
.numbers{padding-block:var(--s-12);border-bottom:1px solid var(--line)}
.numbers-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-8)}
.num+.num{border-left:1px solid var(--line);padding-left:var(--s-8)}
.num{position:relative;container-type:inline-size}
.num-shine{display:block;padding:.1em .08em .12em .04em;margin:-.1em -.08em -.12em -.04em}
.num b{display:block;font:700 min(14rem,26cqw)/1 var(--f-display);letter-spacing:-.02em;color:var(--c-gold);white-space:nowrap;transform:translateY(105%);transition:transform 700ms var(--ease)}
.numbers-row.is-in .num b,.no-js .num b{transform:none}
.numbers-row.is-in .num:nth-child(2) b{transition-delay:90ms}.numbers-row.is-in .num:nth-child(3) b{transition-delay:180ms}
.numbers-row.is-in .num .shine::after{animation-delay:.8s}
.num-cap{display:block;font-size:var(--t-small);color:var(--c-steel);max-width:20ch;margin-top:var(--s-2)}
@media (max-width:1024px){.num b{font-size:min(5rem,40cqw)}}
@media (max-width:640px){.numbers-row{grid-template-columns:1fr;gap:var(--s-6)}.num+.num{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:var(--s-6)}.num b{font-size:min(4.5rem,60cqw)}}

.available{align-items:start}
.available .lead{font:400 var(--t-body)/var(--lh-body) var(--f-text);max-width:60ch}
.available-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6);margin:var(--s-6) 0}
.available-cols>div{padding-top:var(--s-4);border-top:1px solid var(--line)}
.available-cols h3{margin:0 0 var(--s-2)}
.available-cols p{color:var(--c-steel);font-size:var(--t-small);margin:0}
.available-photo{aspect-ratio:4/5}
.available .lf-hint{display:block;margin-top:var(--s-3)}
@media (max-width:640px){.available-cols{grid-template-columns:1fr}}

.services{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-6)}
@media (max-width:1024px){.services{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.services{grid-template-columns:1fr}}
.service-card{display:block;text-decoration:none;color:var(--c-ink);padding-top:var(--s-4);border-top:1px solid var(--line)}
.service-card h3{margin-bottom:var(--s-2);transition:color var(--dur-hover) var(--ease)}
.service-card:hover h3{color:var(--c-steel)}
.service-card p{color:var(--c-steel);font-size:var(--t-small);margin:0}

.titles-wall{padding-block:calc(var(--section)/2);overflow:hidden;overflow:clip}
.wall-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-6);margin:var(--s-8) 0}
.wall-stats div{border-top:1px solid var(--glass-edge);padding-top:var(--s-3);font-size:var(--t-small);text-transform:uppercase;letter-spacing:.06em;color:var(--c-steel-soft)}
.wall-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-6) var(--s-8)}
.wall-dog b{display:block;font:700 var(--t-h2)/1.05 var(--f-display);letter-spacing:var(--ls-display)}
.wall-dog span{display:block;margin-top:var(--s-2);font-size:var(--t-small);color:var(--c-steel-soft)}
@media (max-width:1024px){.wall-grid,.wall-stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.wall-grid,.wall-stats{grid-template-columns:1fr}}
.marquee{overflow:hidden;overflow:clip;contain:paint;margin-top:var(--s-8);border-top:1px solid var(--glass-edge);border-bottom:1px solid var(--glass-edge);padding-block:var(--s-3);white-space:nowrap}
.marquee-track{display:inline-block;will-change:transform;animation:marquee 60s linear infinite;font-size:var(--t-small);color:var(--c-steel-soft);letter-spacing:.04em}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}

.final{padding-block:calc(var(--section)/2)}
.final-in{align-items:start}
.final h2{margin-bottom:var(--s-4)}
.final-text{color:var(--c-steel-soft);max-width:44ch;margin-bottom:var(--s-8)}
.final-photo{aspect-ratio:4/5}@media (min-width:1025px){.final-photo{aspect-ratio:1}.final-in{align-items:center}}
@media (min-width:1025px){.faq-right{grid-column:6/-1}}
@supports (animation-timeline: view()){
  @media (pointer:coarse) and (prefers-reduced-motion:no-preference){
    .story-photo img,.final-photo img{scale:1.12;animation:drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
    @keyframes drift{from{transform:translateY(-5%)}to{transform:translateY(5%)}}
  }
}
