
.dog-page{background:#f7f5f1;color:#292827;min-height:100vh}
.dog-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:82px 0 110px}
.dog-heading{text-align:center;margin-bottom:48px}
.dog-kicker{margin:0 0 12px;color:#a36d2f;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.dog-heading h1{margin:0;color:#292827;font-size:clamp(38px,5vw,64px);font-weight:300;line-height:1.08;letter-spacing:-.025em}
.dog-subtitle{margin:17px 0 0;color:#77736e;font-size:16px}
.gold-line{width:58px;height:1px;background:#a36d2f;margin:24px auto 0}
.dog-intro{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:52px}
.dog-photo{overflow:hidden;background:#e8e3dc;box-shadow:0 14px 35px rgba(38,30,23,.09)}
.dog-photo img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover}
.dog-details{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start;margin-bottom:76px}
.dog-info,.dog-pedigree{background:#fff;border:1px solid rgba(0,0,0,.07);padding:34px;box-shadow:0 10px 28px rgba(38,30,23,.05)}
.dog-info-title,.dog-pedigree h2,.dog-gallery-heading h2{margin:0 0 25px;font-size:27px;font-weight:400}
.dog-info p{margin:0 0 22px;color:#68645f;font-size:15px;line-height:1.7}
.dog-info p:last-child{margin-bottom:0}
.dog-info strong{color:#292827;font-weight:600}
.dog-pedigree h2{color:#a36d2f}
.image-open{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer}
.image-open img{display:block;width:100%;height:auto}
.image-open-label{display:block;margin-top:12px;color:#a36d2f;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.dog-gallery{padding-top:10px}
.dog-gallery-heading{display:flex;align-items:center;gap:18px;margin-bottom:25px}
.dog-gallery-heading span{width:38px;height:1px;background:#a36d2f}
.dog-gallery-heading h2{margin:0}
.dog-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.dog-gallery-item{padding:0;border:0;overflow:hidden;background:#e8e3dc;cursor:pointer}
.dog-gallery-item img{display:block;width:100%;height:245px;object-fit:cover;transition:transform .3s ease}
.dog-gallery-item:hover img{transform:scale(1.035)}
.image-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center}
.image-lightbox.is-open{display:flex}
.lightbox-backdrop{position:absolute;inset:0;background:rgba(20,17,14,.9)}
.lightbox-content{position:relative;z-index:2;width:min(1200px,92vw);max-height:88vh;text-align:center}
.lightbox-content img{max-width:100%;max-height:88vh;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.lightbox-close{position:absolute;z-index:3;right:25px;top:18px;border:0;background:transparent;color:#fff;font-size:42px;line-height:1;cursor:pointer}
body.lightbox-open{overflow:hidden}
@media(max-width:800px){
 .dog-wrap{padding:58px 0 80px}
 .dog-intro,.dog-details{grid-template-columns:1fr}
 .dog-photo img{min-height:0;max-height:520px}
 .dog-gallery-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
 .dog-wrap{width:min(100% - 28px,1180px)}
 .dog-intro{gap:14px}
 .dog-info,.dog-pedigree{padding:24px}
 .dog-gallery-grid{grid-template-columns:1fr}
 .dog-gallery-item img{height:260px}
}
