.breed-hero{isolation:isolate;min-height:650px;background:#fff;cursor:grab}.breed-hero:active{cursor:grabbing}.breed-hero .hero-layout{position:relative;z-index:2;min-height:650px;display:flex;align-items:center}.hero-gallery{position:absolute;inset:0;overflow:hidden;z-index:0;touch-action:none}.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.84) 34%,rgba(255,255,255,.28) 66%,rgba(255,255,255,.05) 100%)}.hero-panel{max-width:650px}.hero-gesture{margin:22px 0 0;font-size:11px;letter-spacing:.08em;color:#6b655e}.hero-gesture::before{content:'↔';display:inline-grid;place-items:center;width:24px;height:24px;margin-right:8px;border:1px solid rgba(41,39,37,.25);border-radius:50%;font-size:14px}.pan-wall{position:absolute;top:-17vh;left:-100vw;width:300vw;height:150vh;will-change:transform;animation:pan-wall 46s ease-in-out infinite}.pan-tile{position:absolute;left:calc(var(--x)*1vw);top:calc(var(--y)*1vh);width:calc(var(--w)*1vw);aspect-ratio:var(--ratio);overflow:hidden;border-radius:8px;background:#ddd;box-shadow:0 16px 30px rgba(42,36,29,.15);transition:transform .45s cubic-bezier(.2,.75,.2,1),box-shadow .45s ease;will-change:transform}.pan-tile img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(.98);transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .45s ease}.pan-tile:hover{z-index:2;transform:scale(1.06) rotate(.8deg);box-shadow:0 26px 45px rgba(42,36,29,.27)}.pan-tile:hover img{transform:scale(1.06);filter:saturate(1.08) contrast(1.02)}.hero-gallery.is-dragging .pan-wall{animation-play-state:paused}.hero-gallery.is-dragging .pan-tile img{filter:saturate(1.04) contrast(1)}@keyframes pan-wall{0%,100%{transform:translate3d(-1.5vw,-1.5vh,0)}50%{transform:translate3d(-5vw,-4vh,0)}}
.carousel-section{position:relative;overflow:hidden;padding:104px 0 132px;background:linear-gradient(180deg,#fff 0,#fbfaf7 100%);color:var(--ink)}.carousel-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 72% 52%,rgba(233,185,79,.11),transparent 39%);pointer-events:none}.carousel-section .wrap{position:relative;z-index:1;display:block;width:min(1260px,96%)}.carousel-copy{max-width:480px;margin:0 0 -32px 7%;position:relative;z-index:3}.carousel-copy .eyebrow{color:var(--coral)}.carousel-copy h2{font-size:clamp(31px,4vw,52px);line-height:1.15;letter-spacing:-.04em;margin:8px 0 14px}.carousel-copy p{font-size:13px;line-height:1.8;color:var(--muted)}.breed-carousel{--count:12;--radius:790px;position:relative;height:570px;perspective:1850px;perspective-origin:50% 46%;overflow:visible}.carousel-track{position:absolute;left:54%;top:53%;width:330px;height:220px;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(-15deg) rotateZ(-18deg);animation:carousel-spin 36s linear infinite}.carousel-card{position:absolute;inset:0;display:block;overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:4px;background:#e7e2dc;box-shadow:0 26px 52px rgba(40,34,29,.22);backface-visibility:hidden;transform:rotateY(calc(360deg / var(--count) * var(--i))) translateZ(var(--radius));animation:carousel-focus 36s linear infinite;animation-delay:calc(-36s / var(--count) * var(--i));transition:filter .25s}.carousel-card::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.52));pointer-events:none}.carousel-card img{display:block;width:100%;height:100%;object-fit:cover}.carousel-card span{position:absolute;z-index:1;right:16px;bottom:14px;left:16px;color:#fff;font-size:15px;font-weight:900;line-height:1.25;text-shadow:0 1px 10px rgba(0,0,0,.36)}.carousel-card small{display:block;margin-top:3px;font-size:9px;letter-spacing:.1em;font-weight:500;color:#f4eee7}@keyframes carousel-spin{from{transform:translate(-50%,-50%) rotateX(-15deg) rotateZ(-18deg) rotateY(0)}to{transform:translate(-50%,-50%) rotateX(-15deg) rotateZ(-18deg) rotateY(360deg)}}@keyframes carousel-focus{0%,100%{filter:blur(0) saturate(1.05);opacity:1}42%,58%{filter:blur(5px) grayscale(.36) saturate(.55);opacity:.46}}
.carousel-card{overflow:visible;border:0;background:transparent;box-shadow:none;transform-style:preserve-3d;backface-visibility:visible}.carousel-card::after{display:none}.carousel-card-face{position:absolute;inset:0;display:block;overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:4px;background:#e7e2dc;box-shadow:0 26px 52px rgba(40,34,29,.22);backface-visibility:hidden;-webkit-backface-visibility:hidden}.carousel-card-face::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.52));pointer-events:none}.carousel-card-back{transform:rotateY(180deg)}.carousel-card-back img{transform:scaleX(-1)}.carousel-card .carousel-label{position:absolute;z-index:1;right:16px;bottom:14px;left:16px;color:#fff;font-size:15px;font-weight:900;line-height:1.25;text-shadow:0 1px 10px rgba(0,0,0,.36)}.carousel-card .carousel-label small{display:block;margin-top:3px;font-size:9px;letter-spacing:.1em;font-weight:500;color:#f4eee7}.carousel-card-back .carousel-label{opacity:.78}
@media(max-width:900px){.breed-hero,.breed-hero .hero-layout{min-height:610px}.hero-scrim{background:linear-gradient(90deg,rgba(251,250,247,.96),rgba(251,250,247,.72) 58%,rgba(251,250,247,.24))}.pan-wall{top:-28%;left:-56%;width:205%;grid-template-columns:repeat(12,minmax(120px,1fr));gap:14px}.carousel-copy{max-width:560px;margin:0 0 -16px 4%}.breed-carousel{--radius:650px;height:500px}.carousel-track{width:270px;height:180px;left:56%}}
@media(max-width:620px){.breed-hero,.breed-hero .hero-layout{min-height:630px}.breed-hero .hero-layout{align-items:flex-end;padding-bottom:42px}.hero-panel{padding:20px 18px 18px;border-radius:20px;background:rgba(251,250,247,.81);backdrop-filter:blur(8px)}.hero-scrim{background:linear-gradient(180deg,rgba(251,250,247,.04),rgba(251,250,247,.15) 38%,rgba(251,250,247,.76) 65%,rgba(251,250,247,.96))}.pan-wall{top:-9%;left:-114%;width:325%;grid-template-columns:repeat(12,minmax(104px,1fr));gap:10px}.pan-tile{border-radius:12px}.hero-gesture{margin-top:12px}.carousel-section{padding:68px 0 88px}.carousel-copy{margin:0 0 -8px 3%}.breed-carousel{--radius:410px;height:370px;perspective:920px}.carousel-track{width:162px;height:108px;left:57%;top:56%}.carousel-card{border-radius:3px}.carousel-card span{right:10px;bottom:10px;left:10px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.pan-wall,.carousel-track,.carousel-card{animation:none!important}.pan-wall{transform:rotate(-7deg) translate3d(-8%,-8%,0)}.carousel-track{transform:translate(-50%,-50%) rotateX(-15deg) rotateZ(-18deg) rotateY(-15deg)}}
.carousel-card .carousel-card-face{top:0;right:0;bottom:0;left:0;z-index:auto;color:initial;font-size:initial;font-weight:initial;line-height:normal;text-shadow:none}
@media(max-width:620px){.carousel-card .carousel-card-face{inset:0}.carousel-card .carousel-label{right:10px;bottom:10px;left:10px;font-size:11px}}
.breed-hero{min-height:138vh;padding:0;overflow:visible;background:#fff}.hero-pinned{position:sticky;top:64px;height:calc(100svh - 64px);margin-bottom:calc(-100svh + 64px);overflow:hidden;z-index:0}.hero-pinned .hero-gallery{position:absolute;inset:0;touch-action:none}.hero-pinned .hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.86) 32%,rgba(255,255,255,.38) 62%,rgba(255,255,255,.08) 100%)}.hero-pinned .pan-wall{margin-top:var(--parallax-y,0px)}.breed-hero .hero-layout{position:relative;z-index:2;min-height:calc(100svh - 64px);height:calc(100svh - 64px);display:flex;align-items:center}.breed-hero + .section{position:relative;z-index:4;background:var(--paper)}
@media(max-width:900px){.hero-pinned .pan-wall{top:-12vh;left:-100vw;width:300vw;height:150vh;display:block}.hero-pinned .pan-tile{left:calc(var(--x)*1vw);top:calc(var(--y)*1vh);width:calc(var(--w)*1vw)}}
@media(max-width:620px){.breed-hero{min-height:134vh}.hero-pinned{height:calc(100svh - 64px);margin-bottom:calc(-100svh + 64px)}.hero-pinned .hero-scrim{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.16) 37%,rgba(255,255,255,.77) 66%,rgba(255,255,255,.98))}.breed-hero .hero-layout{min-height:calc(100svh - 64px);height:calc(100svh - 64px)}.hero-pinned .pan-wall{top:-7vh;left:-100vw;width:300vw;height:142vh;display:block}.hero-pinned .pan-tile{left:calc(var(--x)*1vw);top:calc(var(--y)*1vh);width:calc(var(--w)*1vw);border-radius:6px}}
@media(prefers-reduced-motion:reduce){.hero-pinned .pan-wall{margin-top:0}}
@media(prefers-reduced-motion:reduce){.hero-pinned .pan-wall{transform:translate3d(-3vw,-2vh,0)}}

/* Keep all rotating card captions inside the visible carousel after adding a 13th card. */
.carousel-section{padding-bottom:172px}
.breed-carousel{height:670px}
.carousel-track{top:34%;width:280px;height:187px}
@media(max-width:900px){.breed-carousel{height:580px}.carousel-track{top:35%;width:235px;height:157px}}
@media(max-width:620px){.carousel-section{padding-bottom:128px}.breed-carousel{height:450px}.carousel-track{top:38%;width:135px;height:90px}}
/* Preserve the cats' full faces while the carousel rotates. */
.carousel-card-face{background:linear-gradient(145deg,#faf7f2,#e9e2d9)}.carousel-card img{object-fit:contain;object-position:center;background:#f7f3ee}
