:root{--paper:#faf6ed;--surface:#f0e9dd;--white:#fffcf6;--ink:#292d28;--muted:#5d6259;--sage:#43594d;--sage-deep:#30463b;--clay:#8a4934;--line:#d5cebf;--serif:Georgia, "Times New Roman", serif;--sans:"Segoe UI", system-ui, sans-serif;--content:1100px;--gutter:clamp(1rem, 4vw, 3rem);--space:clamp(2.5rem, 5vw, 4rem);--radius:8px;--duration:.16s}*{box-sizing:border-box}html{background:var(--paper);min-width:320px;color:var(--ink)}body{font:1rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;margin:0}::selection{color:var(--white);background:var(--sage)}a{color:inherit;text-underline-offset:.22em}button,a{-webkit-tap-highlight-color:transparent}a{transition:color var(--duration), background var(--duration), border-color var(--duration)}a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--clay);outline-offset:5px}img{object-position:var(--photo-position,center);max-width:100%;height:auto;display:block}figure,blockquote{margin:0}figcaption{color:var(--muted);margin-top:.65rem;font-size:.8rem}p{color:var(--muted);margin:0 0 1rem}h1,h2,h3{margin:0 0 1rem;font-weight:500;line-height:1.13}h1{font:500 clamp(2.1rem, 4.4vw, 3.5rem)/1.08 var(--serif);letter-spacing:-.035em}h1 em{color:var(--sage);font-weight:400}h2{font:500 clamp(1.65rem, 2.7vw, 2.2rem)/1.15 var(--serif);letter-spacing:-.025em}h3{font-size:1.2rem;line-height:1.35}.container{width:min(var(--content), 100% - 2 * var(--gutter));margin-inline:auto}.section{padding-block:var(--space)}.eyebrow{color:var(--clay);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:.55rem;margin-bottom:1.1rem;font-size:.75rem;font-weight:650;display:flex}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--white);z-index:10;padding:.75rem 1rem;position:fixed;top:.8rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:1rem;padding-block:1.15rem;display:flex}.brand{font:1.18rem/1.1 var(--serif);white-space:nowrap;align-items:center;gap:.8rem;text-decoration:none;display:inline-flex}.brand-mark{background:var(--sage);color:var(--paper);width:42px;height:42px;font:italic 2rem/1 var(--serif);border-radius:5px;place-items:center;display:grid}.brand-by{color:var(--sage);margin-top:.2rem;font-size:1rem;font-style:italic;display:block}nav{flex-wrap:wrap;gap:.35rem;display:flex}nav a{border-radius:4px;align-items:center;min-height:44px;padding:.4rem .75rem;font-size:.875rem;text-decoration:none;display:inline-flex}nav a:hover,nav a[aria-current=page]{background:var(--surface);color:var(--sage-deep)}nav a:last-child{border:1px solid var(--sage)}.hero{grid-template-columns:1fr 1.07fr;align-items:center;gap:3.5rem;padding-block:2.75rem;display:grid}.hero h1{margin-bottom:1.3rem}.hero-description{max-width:40ch}.actions{flex-wrap:wrap;align-items:center;gap:1.25rem;margin-top:1.5rem;display:flex}.button{background:var(--sage);color:var(--white);border:1px solid var(--sage);border-radius:4px;justify-content:center;align-items:center;gap:1.5rem;min-height:48px;padding:.75rem 1.1rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{background:var(--sage-deep)}.button--light{color:var(--sage-deep);background:var(--paper);border-color:var(--paper)}.button--light:hover{background:var(--surface);color:var(--sage-deep)}.text-link{min-height:44px;color:var(--sage-deep);align-items:center;gap:.75rem;font-size:.875rem;font-weight:600;display:inline-flex}.text-link:hover{color:var(--clay)}.hero-note{margin:1.4rem 0 0;font-size:.78rem}.location-dot{background:var(--clay);border-radius:50%;flex:0 0 6px;height:6px}.hero-photos{grid-template-columns:1.5fr 1fr;align-items:center;gap:1rem;display:grid}.hero-photos img{object-fit:cover;border-radius:var(--radius);width:100%}.hero-dog img{aspect-ratio:3/4}.hero-cat{padding-top:3.5rem}.hero-cat img{aspect-ratio:3/4}.hero-photos figcaption{font-style:italic;font-family:var(--serif);font-size:.9rem}.care-promises{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:2rem;padding-block:1.65rem;display:grid}.care-promises h2{font:600 1rem/1.4 var(--sans);letter-spacing:0;margin-bottom:.4rem}.care-promises p{max-width:33ch;margin:0;font-size:.85rem}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.6rem;display:flex}.section-heading h2{margin-bottom:0}.service-list{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.service-item{border-top:2px solid var(--sage);padding-top:1.3rem}.service-number{font:italic 1rem var(--serif);color:var(--clay);margin-bottom:.85rem;display:block}.service-item p{margin-bottom:0;font-size:.92rem}.service-item ul{color:var(--muted);margin-block:1.5rem;padding-left:1.2rem;font-size:.88rem}.service-item li{padding-block:.35rem}.familiar-section{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:center;gap:3rem;display:grid}.relationship-photo img,.uncropped-photo img{border-radius:var(--radius);width:100%}.home-review{border-top:1px solid var(--line);grid-template-columns:.7fr 1.3fr;align-items:center;gap:3rem;display:grid}.review-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem}.review-source{color:var(--sage);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;font-size:.7rem;display:flex}.review-source>span:first-child{font:3rem/.6 var(--serif)}.review-card blockquote p{white-space:pre-wrap;color:var(--ink);font-size:.95rem}.review-card figcaption{border-top:1px solid var(--line);color:var(--sage-deep);padding-top:.8rem;font-size:.82rem;font-weight:650}.contact-cta{background:var(--sage);color:var(--paper);border-radius:var(--radius);grid-template-columns:1fr auto;align-items:center;gap:2rem;margin-block:1rem 3rem;padding:2.25rem;display:grid}.contact-cta .eyebrow,.contact-cta p{color:var(--paper)}.contact-cta h2{color:var(--white)}.contact-cta p{max-width:52ch;margin-bottom:0;font-size:.92rem}.contact-cta .eyebrow{margin-bottom:.8rem;font-size:.7rem}.contact-cta .actions{flex-direction:column;align-items:start;gap:.6rem;margin:0}.cta-text{align-items:center;min-height:44px;font-size:.75rem;display:inline-flex}.contact-cta a:focus-visible{outline-color:var(--paper)}.site-footer{background:var(--surface);padding-block:2rem 1rem}.footer-inner,.footer-bottom{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.footer-brand{font:1.25rem var(--serif);text-decoration:none}.footer-inner p{margin:.6rem 0 0;font-size:.8rem}.footer-links{flex-wrap:wrap;align-items:start;gap:1rem;display:flex}.footer-links a{align-items:center;min-height:44px;font-size:.8rem;display:inline-flex}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);margin-top:1.5rem;padding-top:1rem;font-size:.7rem}.page-intro{padding-block:3.25rem 2.5rem}.page-intro>p{max-width:61ch}.page-intro>p:last-child{margin-bottom:0}.services-section{padding-bottom:var(--space)}.about-intro{grid-template-columns:1.3fr 1fr;align-items:center;gap:4rem;padding-block:3rem;display:grid}.about-intro .page-intro{padding:0}.portrait{justify-self:end;max-width:350px}.portrait img{border-radius:var(--radius);width:100%}.expectations{grid-template-columns:repeat(2,1fr);gap:2rem 3rem;margin-top:2rem;display:grid}.expectations article{border-top:1px solid var(--line);padding-top:1.5rem}.expectations p{margin-bottom:0}.contact-methods{grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-bottom:2rem;display:grid}.contact-method{border-top:2px solid var(--sage);min-width:0;padding-top:1.4rem}.contact-method h2{font:500 1.4rem var(--serif);margin-bottom:.65rem}.contact-value{color:var(--sage-deep);overflow-wrap:anywhere;padding-block:.5rem;font-size:.9rem;font-weight:600;display:inline-block}.contact-method p{margin-top:.8rem;font-size:.875rem}.contact-preparation{border-top:1px solid var(--line);grid-template-columns:1fr 1.2fr;gap:3rem;display:grid}.contact-preparation ol{margin:0;padding-left:1.5rem}.contact-preparation li{border-bottom:1px solid var(--line);padding:.8rem .5rem}.contact-preparation li::marker{color:var(--clay);font-family:var(--serif)}.contact-note{background:var(--surface);border-left:3px solid var(--sage);margin-bottom:3rem;padding:1.5rem}.contact-note h2{font:600 1rem var(--sans)}.contact-note p{margin:0;font-size:.9rem}.reviews-grid{grid-template-columns:repeat(2,1fr);align-items:start;gap:1.25rem;display:grid}.pet-gallery{grid-template-columns:repeat(4,1fr);align-items:center;gap:1rem;display:grid}.pet-gallery img{border-radius:var(--radius);width:100%;height:auto}.not-found{min-height:55vh}@media (width<=1000px){.hero{gap:2rem}.header-inner{flex-wrap:wrap}.about-intro{gap:2rem}.contact-methods{grid-template-columns:1fr;gap:1.5rem}.contact-method{display:block}}@media (width<=720px){.header-inner{gap:.75rem;padding-block:.85rem}nav{grid-template-columns:.8fr 1fr 1.3fr 1fr 1fr;gap:.2rem;width:100%;display:grid}nav a{text-align:center;justify-content:center;padding:.35rem .2rem;font-size:.75rem;line-height:1.3}.hero{grid-template-columns:1fr;gap:1.75rem;padding-block:2rem}.hero-copy{max-width:500px}.hero-note{margin-top:1rem}.hero-photos{gap:.8rem;max-width:480px}.hero-cat{padding-top:2rem}.care-promises{grid-template-columns:1fr;gap:1.1rem}.care-promises>div{grid-template-columns:105px 1fr;gap:.85rem;display:grid}.care-promises h2{margin:0;font-size:.9rem}.care-promises p{max-width:none;font-size:.8rem}.service-list{grid-template-columns:1fr;gap:1.6rem}.service-item{grid-template-columns:1.5rem 1fr;gap:.5rem 1rem;display:grid}.service-number,.service-item h3{margin-bottom:0}.service-item p,.service-item ul,.service-item>a{grid-column:2}.service-item ul{margin-block:.5rem}.familiar-section,.home-review,.contact-preparation,.about-intro{grid-template-columns:1fr;gap:1.75rem}.home-review br{display:none}.review-card{padding:1.25rem}.contact-cta{grid-template-columns:1fr;gap:1.25rem;margin-bottom:2rem;padding:1.6rem}.footer-links{gap:.75rem}.page-intro{padding-block:2.5rem 2rem}.about-intro{padding-block:2.5rem}.portrait{justify-self:start;max-width:300px}.expectations,.reviews-grid{grid-template-columns:1fr}.pet-gallery{grid-template-columns:repeat(2,1fr)}}@media (width<=519px){.hero .eyebrow{letter-spacing:.05em;font-size:.67rem}.hero-photos figcaption{font-size:.78rem}.pet-gallery{grid-template-columns:1fr;gap:1.5rem}.pet-gallery img{object-fit:contain;background:var(--surface);max-height:500px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
