:root {
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #1f2924;
  background: #f8f8f6;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; }
.dogs-page { width: min(100% - 40px, 1120px); margin: 0 auto; padding: clamp(48px, 8vw, 100px) 0 30px; }
.dogs-heading { margin: 0 0 36px; }
.eyebrow { margin: 0 0 10px; color: #68736d; font-size: .76rem; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(2rem, 5vw, 3.3rem); line-height: 1.08; letter-spacing: -.05em; font-weight: 600; }
.dogs-heading > p:last-child { margin: 14px 0 0; color: #66716a; font-size: 1.06rem; }
.gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.photo-card { min-width: 0; margin: 0; overflow: hidden; border: 1px solid #e5e7e3; border-radius: 16px; background: #fff; box-shadow: 0 8px 28px #15291b0b; }
.photo-card img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: #eceeea; }
.photo-card figcaption { padding: 16px 18px 18px; }
.photo-card strong, .photo-card span { display: block; }
.photo-card strong { font-size: 1rem; font-weight: 600; }
.photo-card span { margin-top: 5px; color: #69736d; font-size: .9rem; line-height: 1.45; }
.credit { margin: 27px 0 0; color: #7b847e; font-size: .76rem; }
.credit a { color: inherit; text-underline-offset: 3px; }
.credit a:hover { color: #23392b; }
@media (max-width: 760px) { .gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
@media (max-width: 540px) {
  .dogs-page { width: min(100% - 32px, 420px); padding-top: 42px; }
  .dogs-heading { margin-bottom: 26px; }
  .gallery { grid-template-columns: 1fr; gap: 14px; }
  .photo-card { border-radius: 14px; }
}
