:root{--ink:#22201d;--muted:#85817d;--line:#ece9e5;--wash:#f8f6f3}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}.site-header{text-align:center;border-bottom:1px solid var(--line);padding:33px 22px 0}.brand{font-family:Georgia,'Times New Roman',serif;font-size:31px;letter-spacing:.19em;font-weight:400;display:inline-flex;flex-direction:column;align-items:center;gap:13px}.brand span{font:10px Arial,sans-serif;letter-spacing:.36em;color:var(--muted)}nav{display:flex;justify-content:center;flex-wrap:wrap;gap:clamp(14px,3vw,35px);margin:34px auto 0}nav a{font-size:10px;letter-spacing:.14em;padding:0 0 18px;color:#66615b;border-bottom:2px solid transparent}nav a.active,nav a:hover{border-color:var(--ink);color:var(--ink)}main{max-width:1280px;margin:auto;padding:50px 30px 110px}.intro{text-align:center;margin-bottom:44px}.intro h1{font:normal 22px Georgia,serif;letter-spacing:.13em;margin:0 0 13px}.intro p{font-size:12px;color:var(--muted);letter-spacing:.13em;margin:0}.catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:43px 20px}.puppy-card{text-align:center;min-width:0}.photo{background:var(--wash);aspect-ratio:4/5;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.puppy-card:hover .photo img{transform:scale(1.025)}.placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%;height:100%;color:#c0bab3}.placeholder svg{width:45px;height:45px;stroke:#cfc7bf;fill:none;stroke-width:1.2}.placeholder small{letter-spacing:.2em;font-size:9px}.status{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.94);font-size:9px;letter-spacing:.11em;padding:9px 11px}.puppy-card h2{font:normal 13px Georgia,serif;letter-spacing:.05em;line-height:1.4;margin:18px 0 9px}.muted{font-size:11px;color:var(--muted);letter-spacing:.05em}.price{font-size:12px;letter-spacing:.04em;margin-top:10px}.back{display:inline-block;font-size:11px;letter-spacing:.08em;color:var(--muted);margin-bottom:34px}.detail{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(25px,6vw,95px)}.main-photo{aspect-ratio:4/5}.thumbs{display:flex;gap:9px;margin-top:12px;flex-wrap:wrap}.thumb{padding:0;border:1px solid transparent;background:none;width:78px}.thumb.selected{border-color:#333}.thumb .photo{aspect-ratio:1}.thumb .placeholder svg{width:20px;height:20px}.thumb .placeholder small{display:none}.detail-info{padding-top:14px}.detail-info h1{font:normal 27px Georgia,serif;line-height:1.4;letter-spacing:.05em;margin:0 0 15px}.subtitle{font-size:10px;letter-spacing:.19em;color:var(--muted);margin-bottom:33px}.spec{display:grid;grid-template-columns:100px 1fr;padding:17px 0;border-bottom:1px solid var(--line);gap:10px;font-size:12px}.spec span:first-child{color:var(--muted)}.cta{display:block;background:#25231f;color:#fff;text-align:center;padding:18px 12px;letter-spacing:.13em;font-size:11px;margin-top:35px;border:1px solid #25231f}.cta.disabled{background:#eeeae6;border-color:#eeeae6;color:#928c85;cursor:default}.outline{display:block;text-align:center;border:1px solid #d6d0c9;font-size:11px;letter-spacing:.12em;margin-top:10px;padding:17px}.note{font-size:11px;color:var(--muted);line-height:1.8;margin-top:24px}.empty{text-align:center;background:var(--wash);padding:80px 25px;color:var(--muted);font-size:13px;line-height:1.8}.video{width:100%;margin-top:18px;display:block}footer{border-top:1px solid var(--line);padding:27px 30px;display:flex;justify-content:space-between;gap:14px;font-size:10px;letter-spacing:.16em;color:var(--muted)}@media(max-width:900px){.catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.detail{gap:30px}.brand{font-size:27px}}@media(max-width:650px){.site-header{padding:26px 10px 0}.brand{font-size:23px;letter-spacing:.13em}.brand span{font-size:9px;letter-spacing:.26em}nav{gap:17px 20px;margin-top:26px}nav a{font-size:9px;padding-bottom:11px}main{padding:34px 15px 70px}.intro{margin-bottom:28px}.intro h1{font-size:19px}.catalog{gap:32px 12px}.puppy-card h2{font-size:12px}.detail{grid-template-columns:1fr}.detail-info{padding-top:0}.detail-info h1{font-size:24px}.thumb{width:62px}footer{font-size:9px;flex-direction:column;text-align:center}}
