/* SugerPaws: warm ivory, plum and soft blush. One palette across every page. */
body {
  --ink:#342c36; --ink-soft:#665d65; --paper:#fffdfb; --oat:#f6efea;
  --sage:#f0e7ee; --sage-deep:#8a657d; --forest:#66445e; --forest-dk:#3e2a3a;
  --honey:#a5673e; --line:#e5d9dd; --stone:#716c68;
}
.site-header { background:#fff; border-bottom:1px solid #eee6e9; backdrop-filter:none; }
.site-header .header-inner { min-height:104px; gap:22px; }
.site-header .brand { gap:9px; }
.site-header .brand-name { color:#342c36; font-size:1.8rem; font-weight:700; }
.site-header .brand-tag { color:#665d65; letter-spacing:.3em; font-size:.65rem; margin-top:7px; }
.sugerpaws-symbol { display:block; position:relative; width:67px; height:54px; overflow:hidden; flex-shrink:0; background:white; }
.sugerpaws-symbol img { position:absolute; width:104px; height:104px; max-width:none; left:-18px; top:-10px; }
.site-header .nav-links { gap:17px; }
.site-header .nav-links a { color:#342c36; font-size:.86rem; }
.site-header .nav-links a[aria-current="page"] { border-color:#8a657d; }
.site-header .btn-primary { background:#66445e; color:#fff; }
.site-header .btn-primary:hover { background:#3e2a3a; }
.site-header .header-cta .btn { padding:12px 19px; font-size:.86rem; }
.site-header .nav-toggle { border-color:#ded2d9; }
.site-header .nav-toggle span,.site-header .nav-toggle span:before,.site-header .nav-toggle span:after { background:#342c36; }
.site-header .nav-toggle[aria-expanded="true"] span { background:transparent; }
.site-footer { background:#3e2a3a; color:#eee2e8; }
.site-footer .footer-grid { grid-template-columns:1.15fr .75fr 1.25fr 1fr; gap:32px; }
.site-footer img.footer-logo { width:156px; height:156px; padding:8px; background:#fff; border-radius:12px; margin-bottom:22px; }
.site-footer p,.site-footer .footer-list a,.site-footer .footer-bottom a { color:#e3d4de; }
.site-footer .footer-list a { overflow-wrap:anywhere; }
.site-footer .footer-list a:hover { color:#fff; text-decoration:underline; }
.site-footer .registration { margin-top:20px; color:#fff; font-weight:700; }
.rightpaw-link { display:flex; align-items:center; gap:14px; color:#513c59; text-decoration:none; width:fit-content; max-width:100%; }
.rightpaw-link>img { width:68px; height:68px; flex-shrink:0; object-fit:contain; }
.rightpaw-link>span { display:grid; line-height:1.45; }
.rightpaw-link strong { font-size:.96rem; }
.rightpaw-link>span>span { font-size:.86rem; text-decoration:underline; text-underline-offset:4px; }
.rightpaw-link:hover { color:#7330a2; }
.site-footer .rightpaw-link { color:#fff; flex-wrap:wrap; }
.site-footer .rightpaw-link>img { width:90px; height:90px; }
.eyebrow { font-family:var(--font-body); font-size:.73rem; font-weight:700; letter-spacing:.16em; color:#795c70; margin-bottom:20px; }
.page-head .eyebrow { font-size:.73rem; color:#795c70; }
.page-preview #main { overflow-x:auto; justify-content:flex-start; }
.page-preview .device { flex-shrink:0; margin-inline:auto; }
.home-hero { background:#faf5f1; padding:58px 0 64px; }
.home-hero .hero-grid { grid-template-columns:1.06fr 1fr; gap:64px; }
.home-hero h1 { font-size:clamp(2.7rem,4.5vw,4.5rem); line-height:1.08; letter-spacing:-.045em; margin-bottom:25px; }
.home-hero .hero-lede { font-size:1.14rem; line-height:1.75; max-width:45ch; }
.home-hero .hero-support { font-size:.96rem; color:#665d65; margin-bottom:28px; }
.home-hero .btn { border-radius:10px; }
.home-hero .trust-strip { margin-top:26px; gap:12px 20px; font-size:.84rem; }
.home-hero .rightpaw-link { margin-top:25px; }
.home-portrait { position:relative; padding-bottom:40px; }
.home-portrait>img { aspect-ratio:1; width:100%; height:auto; object-fit:cover; border-radius:150px 150px 24px 24px; }
.portrait-caption { position:absolute; bottom:12px; left:25px; right:25px; padding:20px 24px; border-radius:12px; background:#fff; box-shadow:0 8px 30px #3e2a3a12; text-align:center; }
.portrait-caption strong { display:block; font-family:var(--font-display); font-weight:500; font-size:1.03rem; }
.portrait-caption span { display:block; margin-top:4px; color:#766572; font-size:.8rem; }
.care-ribbon { padding:23px 0; background:#66445e; color:#fff; }
.care-ribbon .wrap { display:flex; gap:20px; justify-content:space-around; flex-wrap:wrap; text-align:center; font-size:.94rem; }
body .page-head { background:#f6efea; }
body .btn { border-radius:10px; }
body .band-dark p,body .band-dark .section-head p,body .cta-band p { color:#eadfe6; }
body .band-dark a:not(.btn) { color:#fff; }
.about-story { align-items:start; }
.about-facts { margin-top:26px; background:#f6efea; padding:28px; }
.about-facts .rightpaw-link { margin-top:28px; }
.about-facts .eyebrow { font-size:.69rem; }
.form-status[data-state="err"] { color:#a21b36; }
@media(min-width:1081px) and (max-width:1250px) {
 .site-header .header-cta { display:none; }
 .site-header .nav-links .nav-cta { display:block; }
 .site-header .nav-links .nav-cta a { font-size:.82rem; padding:8px 13px; }
 .site-header .nav-links { gap:12px; }
}
@media(max-width:1080px) {
 .site-header .header-inner { min-height:88px; }
 .site-header .nav-links { top:88px; background:#fff; gap:0; }
 .site-header .nav-links a { font-size:1rem; }
 .site-header .nav-links .nav-cta a { color:#fff; }
 .home-hero .hero-grid { gap:35px; }
 .site-footer .footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:760px) {
 .home-hero { padding:35px 0 38px; }
 .home-hero .hero-grid { grid-template-columns:1fr; gap:35px; }
 .home-hero h1 { font-size:3rem; }
 .home-hero .eyebrow { font-size:.66rem; letter-spacing:.11em; }
 .home-hero .hero-lede { font-size:1.05rem; }
 .home-portrait { max-width:530px; width:100%; margin:auto; }
 .home-portrait>img { border-radius:110px 110px 20px 20px; }
 .home-hero .trust-strip { align-items:flex-start; }
 .care-ribbon .wrap { gap:10px; flex-direction:column; font-size:.9rem; }
 .about-story { grid-template-columns:1fr; }
 .about-story aside { max-width:530px; }
}
@media(max-width:520px) {
 .site-header .header-inner { min-height:82px; gap:10px; }
 .site-header .brand-name { font-size:1.6rem; }
 .site-header .brand-tag { display:block; font-size:.58rem; }
 .sugerpaws-symbol { transform:scale(.88); transform-origin:left center; width:61px; margin-right:-5px; }
 .site-header .nav-links { top:82px; }
 .site-footer .footer-grid { grid-template-columns:1fr; gap:30px; }
 .site-footer .rightpaw-link { flex-wrap:nowrap; }
 .home-hero h1 { font-size:2.75rem; }
 .portrait-caption { left:12px; right:12px; padding:15px 12px; }
 .portrait-caption strong { font-size:.95rem; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Photo-first homepage and compact footer, version 2. */
.page-index .home-hero { padding:0 0 44px; background:#faf5f1; }
.hero-photo-first { width:min(100%,600px); margin:0 auto; }
.hero-photo-first img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.home-introduction { max-width:800px; padding-top:42px; text-align:center; }
.home-introduction .eyebrow { margin-inline:auto; }
.home-introduction .hero-lede { max-width:61ch; margin-inline:auto; font-size:1.1rem; }
.home-introduction h1 { font-size:clamp(2.5rem,4.5vw,3.8rem); margin-bottom:20px; }
.home-introduction .trust-strip { justify-content:center; margin-top:25px; }
.home-introduction .rightpaw-link { margin:22px auto 0; justify-content:center; text-align:center; }
.location-message { font-weight:700; text-align:center; max-width:80ch; margin:0 auto; line-height:1.5; overflow-wrap:break-word; }
.care-ribbon .wrap { display:block; }
.care-ribbon { padding:22px 0; }
.home-care .section-head { max-width:70ch; }
.home-care .value-card { text-align:center; }
.contact-rightpaw { text-align:center; }
.contact-rightpaw .rightpaw-link { flex-direction:column; margin:18px auto 0; text-align:center; gap:12px; }
.contact-rightpaw .rightpaw-link img { width:88px; height:88px; }
.compact-footer { padding:28px 0 0; }
.compact-footer .footer-location { padding:0 0 22px; border-bottom:1px solid #ffffff26; }
.compact-footer .location-message { color:#fff; font-size:1.02rem; }
.compact-footer .pickup-detail { margin:6px auto 0; text-align:center; font-size:.82rem; color:#dfcfda; }
.compact-footer .footer-main { display:grid; grid-template-columns:140px minmax(280px,1fr) minmax(250px,.8fr); align-items:center; gap:34px; padding:26px 0; }
.site-footer.compact-footer img.footer-logo { width:120px; height:120px; padding:6px; margin:0; }
.footer-contact { min-width:0; }
.footer-contact h2 { font-size:1.45rem; color:white; margin-bottom:12px; }
.footer-contact>a { color:#eee2e8; display:block; width:fit-content; font-size:.94rem; text-decoration:none; overflow-wrap:anywhere; margin-bottom:5px; }
.footer-contact>a:hover { color:#fff; text-decoration:underline; }
.footer-contact .btn-row { margin-top:15px; gap:10px; }
.footer-contact .btn { min-height:43px; padding:9px 15px; font-size:.86rem; }
.footer-credentials { display:flex; align-items:flex-start; justify-content:center; gap:28px; text-align:center; }
.compact-footer .rightpaw-link { flex-direction:column; flex-wrap:nowrap; gap:10px; margin:0; text-align:center; flex:1; }
.compact-footer .rightpaw-link>img { width:64px; height:64px; }
.compact-footer .rightpaw-link strong,.registration-badge strong { font-size:.86rem; }
.compact-footer .rightpaw-link>span>span { font-size:.75rem; }
.registration-badge { display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; color:#fff; line-height:1.45; }
.registration-icon { display:flex; align-items:center; justify-content:center; width:64px; height:64px; border:1px solid #d4bdcf; border-radius:50%; color:#f3e6ef; }
.compact-footer .footer-bottom { border-top:1px solid #ffffff26; padding:17px 0; }
.compact-footer .footer-bottom p { margin:0; font-size:.82rem; }
@media(max-width:1000px) {
 .compact-footer .footer-main { grid-template-columns:120px 1fr; gap:24px; }
 .compact-footer .footer-credentials { grid-column:1/-1; max-width:340px; width:100%; margin:auto; }
}
@media(max-width:640px) {
 .page-index .home-hero { padding-bottom:32px; }
 .home-introduction { padding-top:28px; }
 .home-introduction .hero-lede { font-size:1rem; }
 .home-introduction .eyebrow { font-size:.65rem; letter-spacing:.1em; }
 .home-introduction .rightpaw-link,.about-facts .rightpaw-link { margin-inline:auto; justify-content:center; text-align:center; }
 .compact-footer .footer-main { grid-template-columns:1fr; gap:23px; text-align:center; padding:23px 0; }
 .compact-footer .footer-brand { justify-self:center; }
 .site-footer.compact-footer img.footer-logo { width:102px; height:102px; }
 .footer-contact>a { margin-inline:auto; }
 .footer-contact .btn-row { justify-content:center; flex-direction:row; }
 .footer-contact .btn { width:auto; }
 .compact-footer .footer-credentials { gap:20px; max-width:300px; }
 .compact-footer .location-message { font-size:.96rem; }
 .compact-footer .footer-bottom { gap:8px; }
}
