/* Dog And Dog photo hero, consistent with Petium and Vetium. */
#hero.home-photo-hero { position:relative; isolation:isolate; overflow:hidden; min-height:680px; padding:145px 0 80px; display:flex; align-items:center; }
.home-photo-hero .home-hero-backdrop { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.home-photo-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(50,26,0,.93),rgba(50,26,0,.8) 38%,rgba(50,26,0,.2) 75%); z-index:-1; }
.home-photo-hero .container { position:relative; }
.home-photo-hero h1 { font-size:clamp(2.1rem,4vw,3.1rem); font-weight:700; margin-bottom:12px; }
.home-photo-hero h2 { font-size:clamp(2rem,3.8vw,3.2rem); line-height:1.15; margin-bottom:22px; }
.home-photo-hero .hero-content > p { font-size:1.08rem; line-height:1.7; color:var(--default-color); }
.home-photo-hero .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.home-photo-hero .hero-actions .btn { border-radius:50px; padding:12px 22px; min-height:48px; font-weight:600; }
.home-photo-hero .btn-primary { background:var(--accent-color); border-color:var(--accent-color); color:#321a00; }
.home-photo-hero .btn-outline { border:1px solid var(--default-color); color:var(--default-color); }
.home-photo-hero a:focus-visible { outline:3px solid var(--accent-color); outline-offset:4px; }
.home-photo-hero .social-links { display:flex; gap:18px; margin-top:24px; }
@media(max-width:991px) { #hero.home-photo-hero { min-height:720px; padding:115px 0 50px; } .home-photo-hero .home-hero-backdrop { object-position:72% center; } .home-photo-hero::before { background:linear-gradient(180deg,rgba(50,26,0,.88),rgba(50,26,0,.82) 65%,rgba(50,26,0,.55)); } }
@media(max-width:575px) { .home-photo-hero h2 { font-size:2rem; } .home-photo-hero .hero-actions .btn { width:100%; } }


/* Mobile buttons: centre both the group and the labels. */
@media(max-width:767px) {
 #hero.home-photo-hero .hero-actions { width:100%; max-width:360px; margin:26px auto 0; flex-direction:column; align-items:stretch; justify-content:center; }
 #hero.home-photo-hero .hero-actions .btn { display:flex; align-items:center; justify-content:center; text-align:center; width:100%; margin:0; box-sizing:border-box; }
}

/* V23: align the entire mobile hero, not just its text. */
@media(max-width:991px) {
 #hero.home-photo-hero { display:block; min-height:0; padding:110px 0 56px; }
 #hero.home-photo-hero .hero-content { text-align:center; margin-bottom:0; }
 #hero.home-photo-hero .hero-actions { justify-content:center; align-items:center; margin:26px auto 24px; }
 #hero.home-photo-hero .social-links { justify-content:center; margin-top:20px; }
}
