@font-face{font-family:'Baloo 2';src:url('assets/baloo2.woff2') format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/body.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Allura;src:url('assets/signature.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--cream:#fffbed;--blue:#204d8a;--ink:#173e71;--muted:#50667c;--powder:#deebed;--yellow:#f9db6e;--butter:#f5dea0;--line:#204d8a32;--body:Manrope,Arial,sans-serif;--heading:'Baloo 2',sans-serif;--ease:cubic-bezier(.16,1,.3,1);--header-height:112px}
*{box-sizing:border-box}[hidden]{display:none!important}
html{scroll-behavior:auto;scroll-padding-top:calc(var(--header-height) + 24px);scrollbar-color:var(--blue) var(--cream)}
body{margin:0;background:var(--cream);color:var(--ink);font:400 1rem/1.75 var(--body);-webkit-font-smoothing:antialiased}
::selection{background:var(--yellow);color:var(--ink)}
a{color:inherit;text-decoration:none;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}svg{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
h1,h2,h3{font-family:var(--heading);font-weight:800;letter-spacing:-.025em;text-wrap:balance}h2{font-size:clamp(2.7rem,4.2vw,4rem);line-height:1.04}h3{font-size:1.55rem;line-height:1.25}em{font-style:normal;font-weight:inherit}
.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}.section{padding-block:100px}.arrow{width:21px;height:21px;flex:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:13px 26px;border:1px solid transparent;border-radius:100px;background:var(--yellow);color:var(--ink);font-size:.875rem;line-height:1.5;transition:background .2s,color .2s}
.button:hover{background:var(--butter)}.button-small{min-height:44px;font-size:.8125rem;padding:10px 24px}.button-outline{background:var(--blue);color:var(--cream)}.button-outline:hover{background:var(--ink)}
.text-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;text-decoration:underline;font-size:.875rem;line-height:1.5}.text-link:hover,.inline-link:hover{text-decoration-thickness:2px}.text-link .arrow{width:19px;height:19px}.inline-link{text-decoration:underline}.skip-link{position:fixed;top:-100px;left:20px;z-index:99;background:var(--yellow);padding:12px 20px;border-radius:8px}.skip-link:focus{top:20px}
/* The original brand drawing and wordmark form one complete sign. */
.header{position:sticky;top:0;background:var(--powder);z-index:20;transition:box-shadow .2s}.header.is-scrolled{box-shadow:0 6px 22px #173e7112}.header-inner{height:134px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px}
.brand{display:flex;flex-direction:column;align-items:center;width:168px;gap:6px}.brand-wordmark{width:100%;mix-blend-mode:multiply}.brand-description{font-size:.6875rem;letter-spacing:.1em;line-height:1.4}.mascot-crop{display:block;position:relative;width:100%;aspect-ratio:578/434;overflow:hidden}.mascot-crop img{position:absolute;max-width:none;width:124.048%;height:auto;left:-12.457%;top:-30.184%}.brand .mascot-crop{width:80px;transition:transform .4s var(--ease)}.brand:hover .mascot-crop,.brand:focus-visible .mascot-crop{transform:rotate(-9deg)}
.desktop-nav{display:flex;gap:27px;align-items:center}.desktop-nav a{font-size:.8125rem;padding:10px 0}.desktop-nav a:hover{text-decoration:underline}.header-actions{justify-self:end;display:flex;align-items:center;gap:23px}.header-phone{font-size:.8125rem;white-space:nowrap}.header-phone:hover{text-decoration:underline}.menu-toggle{display:none}.mobile-nav{position:absolute;left:20px;right:20px;top:100px;background:var(--cream);padding:14px;border-radius:12px;display:flex;flex-direction:column;gap:4px;box-shadow:0 14px 30px #18263118}.mobile-nav a{padding:10px 15px}.mobile-nav a:hover{background:var(--powder)}
/* A portrait at full scale, with a clean baseline and space to breathe. */
.hero{background:var(--powder);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-height:548px;position:relative}.hero-copy{align-self:center;position:relative;z-index:2;padding:85px 0 58px}.hero h1{font-size:clamp(3.6rem,5.7vw,5rem);line-height:.99;letter-spacing:-.025em}.hero-copy>p{font-size:.9375rem;line-height:1.9;margin-top:25px;max-width:470px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.hero-picture{position:relative;align-self:stretch;min-width:0}.hero-dog{position:absolute;max-width:none;width:610px;right:-22px;top:-13px;height:auto}.hero-picture figcaption{position:absolute;z-index:2;bottom:10px;right:0;font-size:.6875rem;color:var(--ink);padding:2px 8px;border-radius:20px;background:var(--cream)}
.hero-after{position:relative;display:flex;justify-content:space-between;align-items:center;min-height:115px;padding-top:10px}.hero-location{display:inline-flex;align-items:center;gap:9px;min-height:36px;font-size:.8125rem}.hero-location svg{width:17px;height:17px}.hero-location:hover{text-decoration:underline}.hero-after p{font-size:.75rem;color:var(--muted);margin-top:1px}.hero-mascot{position:absolute;left:49%;top:-58px;width:154px;transform:rotate(-12deg);pointer-events:none}.hero-mascot>span:last-child{display:block;font:400 2rem/1 Allura,cursive;text-align:center;margin-top:7px}.scroll-note{display:flex;align-items:center;gap:14px;font-size:.75rem;min-height:44px}.scroll-note:hover{text-decoration:underline}
/* A personal, photographic introduction. */
.about-section{padding-top:80px;padding-bottom:100px}.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px;align-items:center}.about-photo{position:relative;max-width:465px;width:100%;padding:0 20px}.about-photo-frame{overflow:hidden;border-radius:48% 48% 44% 44% / 36% 36% 24% 24%;background:var(--powder);transform:rotate(-4deg)}.about-photo-frame img{width:100%;height:490px;object-fit:cover;transform:rotate(4deg) scale(1.075)}figcaption{font-size:.6875rem;color:var(--muted);line-height:1.6}.about-photo figcaption{margin-top:22px;text-align:center}.photo-sun{position:absolute;left:-13px;top:46px;width:70px;height:70px;transform:rotate(-13deg)}.photo-sun i{position:absolute;display:block;width:10px;height:37px;border-radius:100%;background:var(--yellow);transform:rotate(-48deg);left:7px;top:23px}.photo-sun i:nth-child(2){transform:rotate(-15deg);left:32px;top:-2px}.photo-sun i:nth-child(3){transform:rotate(-79deg);left:-3px;top:52px;height:27px}.about-copy h2{margin-bottom:25px}.about-copy h3{margin-bottom:15px}.about-copy p{font-size:.875rem;line-height:1.9;margin-top:15px;max-width:510px}.signature{font:400 3.4rem/1 Allura,cursive;margin-top:20px;transform:rotate(-4deg);transform-origin:left center}
/* The service overview borrows the reference's simple illustrated rhythm. */
.care-section{padding-top:37px;padding-bottom:100px}.section-heading{text-align:center;margin-bottom:39px}.section-heading>p{font-size:.875rem;color:var(--muted);margin-top:19px;line-height:1.85}.service-shortcuts{display:grid;grid-template-columns:repeat(5,1fr);gap:28px;margin:0 auto 66px;max-width:1000px}.service-shortcuts a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px;font-size:.8125rem;line-height:1.5}.service-shortcuts a>span{width:88px;height:86px;display:grid;place-items:center;background:var(--powder);border-radius:28px 32px 28px 34px;transition:background .2s}.service-shortcuts a:hover>span,.service-shortcuts a:focus-visible>span{background:var(--yellow)}.service-shortcuts svg{width:41px;height:41px}.care-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.care-photo{position:relative;align-self:start;margin-top:9px}.care-photo-frame{height:423px;overflow:hidden;border-radius:160px 160px 22px 22px;background:var(--powder)}.care-photo-frame>img{width:100%;height:100%;object-fit:cover;object-position:42% center}.photo-note{position:absolute;right:-25px;bottom:45px;background:var(--yellow);padding:22px 28px;font:400 2.2rem/1 Allura,cursive;transform:rotate(-9deg);text-align:center;border-radius:50% 44% 43% 48%}.care-photo figcaption{margin-top:12px;text-align:center}.service-menu{min-width:0}.service-item{border-bottom:1px solid var(--line);scroll-margin-top:35px}.service-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.service-item summary::-webkit-details-marker{display:none}.service-item h3{font-size:1.45rem;font-weight:700}.service-item summary:hover h3{color:var(--blue)}.plus{position:relative;width:16px;height:16px;flex:none}.plus::before,.plus::after{content:'';position:absolute;left:0;top:7px;width:16px;height:1.5px;background:var(--blue)}.plus::after{transform:rotate(90deg);transition:transform .2s}.service-item[open] .plus::after{transform:rotate(0)}.service-item>div{padding:0 29px 23px 0;color:var(--muted);font-size:.8125rem;line-height:1.9}.service-scope{display:block;font-size:.6875rem;margin-top:16px;color:var(--ink)}.service-menu>.text-link{font-size:.8125rem;margin-top:24px}
/* Practical information retains the same warm voice. */
.pricing{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-block:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pricing-heading>p,.visit-heading>p{margin-top:21px;color:var(--muted);font-size:.875rem}.pricing-content p{font-size:.875rem;color:var(--muted);margin-top:17px}.pricing-content .text-link{margin-top:18px}.pricing-table{width:100%;border-collapse:collapse;font-size:.875rem;font-variant-numeric:tabular-nums}.pricing-table caption{text-align:left;font:700 1.5rem/1.3 var(--heading);padding-bottom:20px}.pricing-table th{font-weight:400;font-size:.75rem;text-align:left;line-height:1.5}.pricing-table th,.pricing-table td{padding:14px 8px;border-bottom:1px solid var(--line)}.pricing-table th:first-child{padding-left:0}.pricing-table td{white-space:nowrap}#pricing-table-wrap{max-width:100%;overflow:auto}.visit{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start;padding-top:85px;padding-bottom:20px}.visit-heading>img{width:260px;margin-top:28px}.faq{min-width:0}.faq details{border-bottom:1px solid var(--line)}.faq summary{position:relative;list-style:none;padding:19px 38px 19px 0;font:700 1.3rem/1.35 var(--heading);letter-spacing:-.015em;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary::before,.faq summary::after{content:'';position:absolute;right:3px;top:50%;width:15px;height:1.5px;background:var(--blue)}.faq summary::after{transform:rotate(90deg);transition:transform .2s}.faq details[open] summary::after{transform:rotate(0)}.faq details>div{font-size:.8125rem;color:var(--muted);line-height:1.9;padding:0 32px 20px 0}.faq-contact{font-size:.8125rem;margin-top:24px;color:var(--muted)}.footsteps{height:122px;position:relative;pointer-events:none}.footsteps img{position:absolute;width:34px;left:40%;top:6px;transform:rotate(150deg)}.footsteps img+img{width:43px;left:47%;top:52px;transform:rotate(158deg)}
.booking-section{background:var(--powder);padding:80px 0 86px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact-copy{position:relative}.contact-mascot{position:absolute;width:135px;right:10px;top:0;transform:rotate(12deg)}.contact-phone{display:inline-block;font:700 clamp(1.9rem,2.8vw,2.7rem)/1.3 var(--heading);letter-spacing:-.015em;margin:25px 0 20px}.contact-phone:hover{text-decoration:underline}address{font-style:normal;font-size:.9375rem}address strong{font-weight:400}.directions{max-width:355px;font-size:.8125rem;margin:18px 0;color:var(--muted)}.contact-copy .inline-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.875rem}.contact-copy .arrow{width:18px;height:18px}.hours{font-size:.875rem;margin-top:18px}.hours span{font-size:.75rem;color:var(--muted)}.booking-panel{position:relative;isolation:isolate;margin-right:16px}.booking-panel::before{content:'';position:absolute;inset:8px -16px -16px 8px;background:var(--yellow);border:1.5px solid var(--blue);border-radius:150px 150px 12px 12px;transform:rotate(3deg);z-index:-1}.booking-card{background:var(--cream);border:1.5px solid var(--blue);border-radius:150px 150px 12px 12px;padding:58px 35px 38px;text-align:center}.booking-brand{font:700 1.6rem/1.3 var(--heading);margin-bottom:20px}.booking-card h3{margin-bottom:19px}.booking-card>p:not(.booking-brand):not(.booking-footnote){font-size:.875rem;max-width:350px;margin-inline:auto}.booking-card .button{margin-top:26px;gap:16px;max-width:100%;padding:15px 21px;background:var(--blue);color:var(--cream)}.booking-card .button:hover{background:var(--ink)}.booking-action-label{font-size:.8125rem}.booking-footnote{font-size:.75rem;margin-top:16px}.footer{display:flex;align-items:center;gap:32px;padding-block:33px;font-size:.8125rem}.footer-brand{width:180px;flex-direction:row;gap:13px}.footer-brand .mascot-crop{width:54px;flex:none}.footer-brand .brand-wordmark{width:113px}.footer>span{margin-left:auto;color:var(--muted);font-family:var(--heading);font-size:1.2rem;font-weight:600}.back-top{display:flex;align-items:center;gap:12px;margin-left:38px;min-height:44px}.back-top .arrow{width:17px;height:17px;transform:rotate(-90deg)}.back-top:hover{text-decoration:underline}
@media(min-width:1441px){.hero-dog{right:-30px;width:635px}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.header-inner{gap:22px;height:126px}.desktop-nav{gap:20px}.header-actions{gap:14px}.header-phone{font-size:.75rem}.brand{width:148px}.brand .mascot-crop{width:71px}.hero-inner{min-height:515px;grid-template-columns:1.1fr 1fr}.hero h1{font-size:6.6vw}.hero-dog{width:550px;right:-65px;top:0}.hero-copy>p{font-size:.8125rem;max-width:390px}.hero-actions{gap:9px}.hero-actions .button{padding-inline:20px;font-size:.8125rem}.hero-mascot{left:46%;width:136px}.section{padding-block:80px}.about-grid,.care-layout,.pricing,.visit,.booking-grid{gap:64px}.about-photo-frame img{height:450px}.about-copy p{font-size:.8125rem}.care-section{padding-top:30px}.care-photo-frame{height:390px}.service-item h3{font-size:1.25rem}.service-shortcuts{gap:20px}.contact-mascot{width:108px;right:0}.booking-card{padding-inline:25px}.booking-card .button{padding-inline:17px;gap:10px}.booking-action-label{font-size:.75rem}.pricing{padding-block:60px}.visit{padding-bottom:20px}}
@media(max-width:850px) and (min-width:701px){.wrap{width:calc(100% - 48px)}.desktop-nav{gap:14px}.desktop-nav a{font-size:.75rem}.header-phone{display:none}.header-inner{height:116px}.hero-inner{min-height:460px}.hero h1{font-size:6.7vw}.hero-dog{width:460px;right:-60px;top:0}.hero-copy{padding:55px 0}.hero-copy>p{font-size:.75rem;max-width:330px}.hero-actions .button{font-size:.75rem;padding-inline:15px;min-height:46px}.hero-actions .arrow{width:17px}.hero-mascot{left:45%;width:123px;top:-46px}.hero-after p{max-width:290px}.about-grid,.care-layout,.pricing,.visit,.booking-grid{gap:40px}.about-photo{padding-inline:12px}.about-photo-frame img{height:420px}.about-copy p{font-size:.75rem}.service-shortcuts{gap:15px}.service-shortcuts a{font-size:.75rem}.care-photo-frame{height:360px}.photo-note{font-size:1.8rem;right:-16px;padding:20px}.service-item h3{font-size:1.16rem}.service-item>div{font-size:.75rem}.service-scope{font-size:.6875rem}.contact-mascot{width:80px;right:0}.booking-card{padding:48px 20px 32px;border-radius:110px 110px 12px 12px}.booking-panel::before{border-radius:110px 110px 12px 12px}.booking-card .button{padding-inline:13px}.booking-action-label{font-size:.6875rem}}
@media(max-width:700px){
 .wrap{width:calc(100% - 40px)}.header-inner{height:108px;display:flex;justify-content:space-between;gap:15px}.brand{width:145px;flex-direction:column;flex-wrap:nowrap;gap:4px}.brand .mascot-crop{width:55px;flex:none}.brand .brand-wordmark{width:145px}.brand-description{width:100%;text-align:center;font-size:.6875rem;letter-spacing:.04em}.desktop-nav,.header-actions{display:none}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:44px;height:44px;border:1px solid var(--line);background:none;border-radius:50%}.menu-toggle span{width:18px;height:1.5px;background:var(--blue);transition:transform .2s}
 .hero-inner{grid-template-columns:1fr;gap:0;min-height:0}.hero-copy{text-align:center;padding:22px 0 0}.hero h1{font-size:clamp(2.6rem,12.3vw,4.8rem);line-height:1.01}.hero-copy>p{font-size:.8125rem;line-height:1.8;margin:19px auto 0;max-width:345px}.hero-actions{justify-content:center;margin-top:23px;gap:9px}.hero-actions .button{font-size:.75rem;min-height:46px;padding:12px 19px;gap:12px}.hero-actions .arrow{width:18px;height:18px}.hero-picture{width:100%;max-width:430px;justify-self:center;height:365px;margin-top:27px}.hero-dog{width:330px;left:50%;right:auto;top:0;transform:translateX(-50%)}.hero-picture figcaption{left:0;right:auto;bottom:10px;font-size:.6875rem}.hero-after{align-items:flex-start;min-height:111px;padding-top:17px}.hero-location{font-size:.75rem;gap:7px}.hero-location svg{width:15px;height:15px}.hero-after p{font-size:.6875rem;max-width:225px;line-height:1.8;margin-top:4px}.hero-mascot{left:auto;right:0;width:97px;top:-28px;transform:rotate(-13deg)}.hero-mascot>span:last-child{font-size:1.6rem;margin-top:4px}.scroll-note{display:none}
 .section{padding-block:60px}.about-section{padding-top:43px}.about-grid{grid-template-columns:1fr;gap:29px}.about-photo{width:86%;max-width:380px;justify-self:center;padding:0 8px}.about-photo-frame img{height:350px}.about-photo figcaption{font-size:.6875rem;margin-top:17px}.photo-sun{left:-26px;top:30px;transform:scale(.8) rotate(-13deg)}.about-copy h2{margin-bottom:23px}.about-copy p{font-size:.8125rem;line-height:1.9;margin-top:15px}.signature{font-size:3.2rem;margin-top:18px}.care-section{padding-top:17px}.section-heading{margin-bottom:30px}.section-heading>p{font-size:.8125rem;line-height:1.8;margin-top:17px}.service-shortcuts{grid-template-columns:repeat(6,1fr);gap:24px 13px;margin-bottom:40px}.service-shortcuts a{grid-column:span 2;font-size:.6875rem;gap:10px}.service-shortcuts a:nth-child(4){grid-column:2 / span 2}.service-shortcuts a>span{width:72px;height:70px;border-radius:25px}.service-shortcuts svg{width:34px;height:34px}.care-layout{grid-template-columns:1fr;gap:26px}.care-photo{width:93%;max-width:440px;justify-self:center;margin-top:0}.care-photo-frame{height:305px;border-radius:120px 120px 18px 18px}.photo-note{font-size:1.9rem;bottom:35px;right:-10px;padding:19px 22px}.care-photo figcaption{font-size:.6875rem;margin-top:10px}.service-item summary{padding:17px 0;gap:17px}.service-item h3{font-size:1.35rem}.service-item>div{font-size:.8125rem;padding-right:24px;padding-bottom:20px}.service-scope{font-size:.6875rem;line-height:1.8;margin-top:13px}.service-menu>.text-link{font-size:.75rem;margin-top:21px}
 .pricing{grid-template-columns:1fr;gap:26px;padding-block:45px}.pricing-heading>p,.visit-heading>p{font-size:.8125rem;margin-top:19px}.pricing-content p{font-size:.8125rem;margin-top:12px}.pricing-content .text-link{font-size:.8125rem;margin-top:15px}.pricing-table{font-size:.75rem}.pricing-table caption{font-size:1.5rem}.pricing-table th{font-size:.6875rem}.pricing-table th,.pricing-table td{padding:12px 6px}.visit{grid-template-columns:1fr;gap:20px;padding-top:50px;padding-bottom:15px}.visit-heading>img{display:none}.faq summary{font-size:1.23rem;line-height:1.35;padding:17px 34px 17px 0}.faq details>div{font-size:.8125rem;padding-right:24px;padding-bottom:18px}.faq-contact{font-size:.75rem;margin-top:20px}.footsteps{height:106px}.footsteps img{width:32px;left:33%;top:7px}.footsteps img+img{width:40px;left:52%;top:49px}
 .booking-section{padding:51px 0 62px}.booking-grid{grid-template-columns:1fr;gap:36px}.contact-mascot{width:106px;right:5px;top:8px}.contact-phone{font-size:2.1rem;margin:22px 0 18px}address{font-size:.875rem}.directions{font-size:.8125rem;max-width:340px;margin:17px 0}.contact-copy .inline-link{font-size:.8125rem}.hours{font-size:.8125rem;margin-top:19px}.hours span{font-size:.75rem}.booking-panel{margin-inline:2px 12px;max-width:470px;justify-self:center;width:calc(100% - 14px)}.booking-panel::before{inset:8px -8px -12px 8px;border-radius:100px 100px 12px 12px;transform:rotate(2deg)}.booking-card{padding:44px 23px 30px;border-radius:100px 100px 12px 12px}.booking-brand{font-size:1.5rem;margin-bottom:18px}.booking-card h3{margin-bottom:16px}.booking-card>p:not(.booking-brand):not(.booking-footnote){font-size:.8125rem}.booking-card .button{padding:14px 17px;gap:12px}.booking-action-label{font-size:.75rem}.booking-footnote{font-size:.6875rem}.footer{flex-wrap:wrap;gap:17px;padding-block:25px}.footer-brand{width:179px;gap:12px;flex-wrap:nowrap}.footer-brand .mascot-crop{width:49px}.footer-brand .brand-wordmark{width:118px}.footer>span{width:100%;order:3;margin:0;font-size:1.05rem}.back-top{margin-left:auto;font-size:.6875rem;gap:7px}
}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:12.2vw}.hero-copy>p{font-size:.75rem}.hero-actions .button{font-size:.6875rem;padding-inline:15px;gap:8px}.hero-dog{width:290px}.hero-picture{height:323px}.hero-mascot{width:79px}.hero-after p{max-width:203px}.hero-location{font-size:.6875rem}.service-item h3{font-size:1.22rem}.contact-mascot{width:83px}.booking-card{padding-inline:18px}.booking-card .button{padding-inline:12px;gap:8px}.booking-action-label{font-size:.6875rem}.footer-brand{width:159px}.footer-brand .brand-wordmark{width:98px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.brand:hover .mascot-crop,.brand:focus-visible .mascot-crop{transform:none}}

/* v3: expressive compositions and a single service scene per selection. */
main{overflow:clip}
.header-inner{height:112px;gap:28px}.header .brand{width:143px;gap:4px}.header .brand .mascot-crop{width:64px}.header .brand-description{font-size:.625rem;letter-spacing:.04em}
.desktop-nav{gap:5px;white-space:nowrap}.desktop-nav>a,.nav-dropdown>summary{display:flex;align-items:center;gap:6px;min-height:40px;padding:8px 13px;border-radius:100px;font-size:.8125rem;line-height:1.5;cursor:pointer;transition:background .18s}.desktop-nav>a:hover,.nav-dropdown>summary:hover,.nav-dropdown[open]>summary{background:#fffbed90;text-decoration:none}.desktop-nav .is-active{background:var(--cream)}.nav-dropdown{position:relative}.nav-dropdown>summary{list-style:none}.nav-dropdown>summary::-webkit-details-marker{display:none}.nav-chevron{width:12px;height:12px;stroke-width:1.9;transition:transform .2s}.nav-dropdown[open] .nav-chevron{transform:rotate(180deg)}.nav-popover{position:absolute;left:0;top:calc(100% + 10px);width:268px;display:flex;flex-direction:column;gap:3px;padding:13px;background:var(--cream);border-radius:19px;box-shadow:0 15px 32px #173e711b}.nav-popover a{font-size:.8125rem;line-height:1.45;padding:12px 13px;white-space:normal;border-radius:11px}.nav-popover a:hover{background:var(--powder);text-decoration:none}.nav-popover .nav-extra{color:var(--muted);font-size:.75rem;margin-top:4px}.header-actions{gap:18px}
.hero-inner{min-height:565px}.hero-copy{padding-top:83px}.hero-groomer{position:absolute;width:272px;height:auto;left:43%;top:-166px;z-index:3;pointer-events:none}.hero-after{min-height:130px}.scroll-note{align-self:flex-end;margin-bottom:32px}
.about-section{padding-top:70px;padding-bottom:117px}.about-grid{grid-template-columns:1fr 1.02fr;gap:96px;align-items:center}.about-photo{padding:0;max-width:540px;isolation:isolate}.about-patch{position:absolute;z-index:-1;left:5%;right:9%;top:10%;bottom:8%;background:var(--powder);border-radius:45% 55% 50% 44% / 43% 41% 59% 57%;transform:rotate(-14deg)}.about-cutout{width:100%;height:560px;object-fit:contain;object-position:center bottom}.about-photo .photo-sun{top:60px;left:-12px;transform:rotate(-24deg) scale(1.16)}.about-photo figcaption{margin-top:18px;font-size:.6875rem}.about-copy h2{margin-bottom:29px}.about-copy p{font-size:.875rem;line-height:1.85}.about-copy .signature{margin-top:23px}
.care-section{position:relative;padding-top:18px;padding-bottom:100px}.care-paw{position:absolute;width:280px;max-width:none;right:calc((100% - 100vw) / 2 - 110px);top:-88px;transform:rotate(-8deg);pointer-events:none;z-index:0}.care-section .section-heading{position:relative;margin-bottom:44px}.service-shortcuts{position:relative;max-width:1010px;margin-bottom:72px;gap:25px}.service-shortcuts a{border:0;font-size:.8125rem;gap:14px}.service-shortcuts a>span{width:95px;height:93px;border-radius:32px 29px 35px 30px;transition:background .2s,transform .3s var(--ease)}.service-shortcuts a[aria-selected=true]>span{background:var(--yellow);transform:rotate(-6deg)}.service-shortcuts a[aria-selected=true]{font-weight:700}.service-shortcuts a[aria-selected=true] svg{transform:rotate(6deg)}.service-shortcuts a:hover>span{transform:translateY(-4px)}.service-shortcuts a[aria-selected=true]:hover>span{transform:rotate(-6deg) translateY(-4px)}.service-shortcuts a:focus-visible{border-radius:12px}
.service-stage{position:relative}.service-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:105px;scroll-margin-top:32px}.service-panel+.service-panel{margin-top:70px}.service-stage.is-enhanced .service-panel{margin-top:0}.service-visual{position:relative;padding:0 27px 0 9px;isolation:isolate}.service-photo-patch{position:absolute;z-index:-1;inset:18px 12px 24px -10px;background:var(--powder);border-radius:45% 44% 30% 32%;transform:rotate(-8deg)}.service-photo{width:100%;height:452px;object-fit:cover;object-position:50% 40%;border-radius:44% 44% 18px 18px;transform:rotate(3deg)}.service-photo-note{position:absolute;right:-23px;bottom:54px;font:400 2.25rem/1.04 Allura,cursive;text-align:center;background:var(--yellow);border-radius:49% 45% 51% 44%;padding:24px 27px;transform:rotate(-9deg)}.service-visual figcaption{font-size:.6875rem;margin-top:24px;text-align:center}.service-content h3{max-width:490px;margin-bottom:23px}.service-description{color:var(--muted);font-size:.9375rem;line-height:1.85;max-width:510px}.service-includes{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px;margin:29px 0 31px;padding:0;list-style:none}.service-includes li{display:flex;align-items:flex-start;gap:10px;font-size:.8125rem;line-height:1.65}.service-includes img{width:18px;height:19px;object-fit:contain;flex:none;margin-top:1px}.service-content .button{background:var(--blue);color:var(--cream);font-size:.875rem;padding-inline:25px}.service-content .button:hover{background:var(--ink)}.service-personal{font-size:.6875rem;color:var(--muted);margin-top:15px}.service-panel.is-arriving .service-content{animation:service-arrive .35s var(--ease) both}@keyframes service-arrive{from{opacity:.45;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
.pricing{border:0;padding-top:75px;padding-bottom:65px;gap:105px}.pricing-heading{position:relative}.pricing-mascot{width:100px;margin-bottom:26px;transform:rotate(-10deg)}.pricing-content{align-self:center}.pricing-table th,.pricing-table td{border:0}.pricing-table tbody tr:nth-child(even){background:var(--powder)}.visit{padding-top:69px;padding-bottom:18px}.faq details{border:0;padding:0 22px;margin-bottom:11px;border-radius:19px}.faq details[open]{background:var(--powder);padding-block:3px}.faq summary{padding:20px 30px 20px 0;font-size:1.25rem}.faq details>div{padding:0 19px 21px 0;font-size:.875rem}.faq-contact{padding-inline:22px;margin-top:22px}.visit-heading>img{width:260px;margin-top:26px}.footsteps{height:111px}.booking-card{border:0}.booking-panel::before{border:0}
@media(max-width:1100px){.header-inner{gap:18px}.header .brand{width:133px}.header .brand .mascot-crop{width:59px}.desktop-nav>a,.nav-dropdown>summary{font-size:.75rem;padding:8px 10px}.header-phone{font-size:.75rem}.header-actions .button{font-size:.75rem;padding-inline:19px}.hero-inner{min-height:525px}.hero-groomer{width:245px;left:40%;top:-153px}.about-grid{gap:65px}.about-cutout{height:500px}.about-copy p{font-size:.8125rem}.care-paw{width:250px;right:-154px;top:-75px}.service-panel{gap:70px}.service-photo{height:417px}.service-description{font-size:.875rem}.service-includes{gap:15px;font-size:.75rem}.service-includes li{font-size:.75rem}.service-photo-note{font-size:2rem;padding:22px}.pricing{gap:70px}}
@media(max-width:950px) and (min-width:701px){:root{--header-height:108px}.desktop-nav>[data-section=kontakt]{display:none}.header-phone{display:none}.header-actions .button{font-size:.75rem}.header-inner{height:108px}.hero-groomer{width:218px;left:39%;top:-133px}.about-grid{gap:40px}.about-cutout{height:450px}.about-copy p{font-size:.8125rem}.service-panel{gap:43px}.service-shortcuts{gap:19px}.service-shortcuts a>span{width:82px;height:80px}.service-photo{height:390px}.service-includes{grid-template-columns:1fr;gap:9px;margin:20px 0 24px}.service-includes li{font-size:.75rem}.service-content .button{font-size:.75rem;padding-inline:18px;gap:10px}.care-paw{width:218px;right:-147px;top:-53px}.pricing{gap:43px}.faq summary{font-size:1.15rem}.faq details{padding-inline:17px}.faq details>div{font-size:.8125rem}}
@media(max-width:700px){
 :root{--header-height:103px}.header-inner{height:var(--header-height)}.header .brand{width:142px;gap:4px}.header .brand .mascot-crop{width:52px}.header .brand .brand-wordmark{width:142px}.header .brand-description{font-size:.625rem}.mobile-nav{top:96px;z-index:10;padding:15px;box-shadow:0 16px 35px #173e7120}.mobile-nav a{padding:13px 15px;border-radius:10px}.hero-inner{min-height:0}.hero-copy{padding-top:23px}.hero-after{min-height:143px;align-items:flex-start;padding-top:20px}.hero-after>div:first-child{position:relative;z-index:1}.hero-after p{max-width:211px;font-size:.6875rem}.hero-groomer{width:154px;left:auto;right:-27px;top:-80px}.hero-picture figcaption{left:0;right:auto;bottom:10px}
 .about-section{padding-top:28px;padding-bottom:73px}.about-grid{grid-template-columns:1fr;gap:35px}.about-photo{width:100%;max-width:410px;padding:0}.about-cutout{height:440px}.about-patch{left:5%;right:8%;top:12%;bottom:10%}.about-photo .photo-sun{left:-6px;top:68px;transform:rotate(-24deg) scale(.78)}.about-photo figcaption{font-size:.625rem;margin-top:15px}.about-copy h2{margin-bottom:25px}.about-copy p{font-size:.875rem;line-height:1.85}.about-copy .signature{margin-top:22px}
 .care-section{padding-top:24px;padding-bottom:61px}.care-section .section-heading{margin-bottom:31px}.care-section .section-heading>p{font-size:.8125rem;max-width:300px;margin-inline:auto}.care-paw{width:139px;right:-85px;top:-31px;transform:rotate(8deg)}.service-shortcuts{gap:24px 13px;margin-bottom:43px}.service-shortcuts a{font-size:.6875rem;gap:12px}.service-shortcuts a>span{width:75px;height:73px;border-radius:27px 25px 29px 25px}.service-panel{grid-template-columns:1fr;gap:31px}.service-visual{width:91%;max-width:410px;justify-self:center;padding:0 9px 0 3px}.service-photo{height:333px;object-position:50% 36%;border-radius:42% 42% 16px 16px}.service-photo-patch{inset:15px 0 22px -11px}.service-photo-note{right:-18px;bottom:43px;font-size:1.85rem;padding:20px 22px}.service-visual figcaption{margin-top:20px}.service-content h3{margin-bottom:20px;max-width:390px}.service-description{font-size:.875rem;line-height:1.85}.service-includes{gap:17px 18px;margin:24px 0 28px}.service-includes li{font-size:.75rem;gap:9px}.service-includes img{width:16px;height:17px}.service-content .button{font-size:.8125rem;min-height:50px;padding-inline:20px;gap:15px}.service-personal{font-size:.6875rem;margin-top:14px}
 .pricing{padding-top:36px;padding-bottom:36px;gap:27px}.pricing-mascot{width:82px;margin-bottom:23px}.visit{padding-top:37px;gap:22px}.faq details{padding:0 17px;margin-bottom:10px}.faq summary{font-size:1.22rem;line-height:1.35;padding-block:18px}.faq details>div{font-size:.8125rem;padding-bottom:20px;padding-right:14px}.faq-contact{padding-inline:17px;font-size:.75rem}.booking-card,.booking-panel::before{border:0}
}
@media(max-width:360px){.hero-after p{max-width:182px}.hero-groomer{width:140px;right:-22px;top:-73px}.about-cutout{height:375px}.about-photo figcaption{font-size:.625rem}.about-copy p{font-size:.8125rem}.service-shortcuts a{font-size:.6875rem}.service-photo{height:303px}.service-photo-note{font-size:1.7rem;padding:18px}.service-includes{gap:15px 10px}.service-includes li{font-size:.6875rem}.service-content .button{font-size:.75rem;padding-inline:16px;gap:10px}.faq summary{font-size:1.15rem}}
@media(prefers-reduced-motion:reduce){.service-panel.is-arriving .service-content{animation:none}.service-shortcuts a:hover>span{transform:none}.service-shortcuts a[aria-selected=true]:hover>span{transform:rotate(-6deg)}}
/* Clipping must not create an inner scroll area when an anchor receives focus. */
.hero{overflow:clip}
@media(max-width:700px){.header .brand-description,.about-photo figcaption{font-size:.6875rem}}

/* Mobile navigation carries the same lettering, surfaces and pill controls. */
.about-copy .signature{font-size:2.45rem;text-align:right;max-width:510px;transform-origin:right center;margin-top:20px}
@media(max-width:700px){
 .menu-toggle{flex-direction:row;gap:11px;width:auto;min-width:101px;height:46px;padding:10px 17px;border:0;background:var(--cream);border-radius:100px}
 .menu-toggle .menu-label{display:block;width:auto;height:auto;background:none;font:700 .8125rem/1.4 var(--body);transform:none}
 .menu-toggle .menu-lines{display:flex;flex-direction:column;justify-content:center;gap:6px;width:18px;height:18px;background:none;transform:none}
 .menu-lines i{display:block;width:18px;height:2px;background:var(--blue);border-radius:2px;transition:transform .2s}
 .menu-toggle[aria-expanded=true] .menu-lines i:first-child{transform:translateY(4px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] .menu-lines i:last-child{transform:translateY(-4px) rotate(-45deg)}
 .mobile-nav{left:0;right:0;top:100%;gap:17px;padding:13px 24px 26px;background:var(--powder);border-radius:0 0 30px 30px;box-shadow:0 18px 25px #173e711c;max-height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain}
 .mobile-primary{display:flex;flex-direction:column;gap:3px}
 .mobile-primary a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:8px 16px;border-radius:100px;font:800 1.8rem/1.25 var(--heading);letter-spacing:-.025em}
 .mobile-primary a svg{width:22px;height:22px;stroke-width:1.6}
 .mobile-primary a.is-active,.mobile-primary a:hover{background:var(--cream)}
 .mobile-secondary{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
 .mobile-secondary a{padding:10px 16px;font-size:.8125rem;min-height:44px;border-radius:100px}
 .mobile-secondary a:hover{background:var(--cream)}
 .mobile-nav .mobile-booking{padding:13px 23px;border-radius:100px;min-height:49px;background:var(--yellow);font-size:.875rem;justify-content:space-between}
 .mobile-nav .mobile-booking:hover{background:var(--butter)}
 .mobile-nav .mobile-phone{text-align:center;min-height:44px;padding:9px 15px;font-size:.875rem}
 .about-copy .signature{font-size:2.25rem;margin-top:20px}
}
@media(max-width:360px){.mobile-nav{padding-inline:16px}}

/* Shared heading hierarchy. Section and service titles use the same scale. */
:root{--text-h1:clamp(3rem,5.3vw,4.8rem);--text-h2:clamp(2.5rem,4vw,3.5rem);--text-h3:clamp(1.5rem,2.4vw,2.1rem)}
.hero h1{font-size:var(--text-h1);line-height:1.04}
h2{font-size:var(--text-h2);line-height:1.1}
h3{font-size:var(--text-h3);line-height:1.2}
.hero-copy,.service-content,.pricing-content,.contact-copy,.about-copy{min-width:0}
.contact-invitation{margin:18px 0;font-size:1rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.mobile-nav{display:none}
.footer-legal{padding-block:8px 32px;font-size:.8125rem;color:var(--muted);overflow-wrap:anywhere}
.footer-legal nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:12px}
.footer-legal nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
.footer-legal p a{text-decoration:underline}
.draft-note{padding:12px 16px;background:var(--yellow);color:var(--ink);border-radius:8px;margin-bottom:16px}
.document-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:28px}
.document-header img{width:180px;height:auto}
.document-main{max-width:780px;padding-block:36px 64px;overflow-wrap:anywhere}
.document-main h1{font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;margin-bottom:24px}
.document-main h2{font-size:clamp(1.6rem,3vw,2.1rem);margin:36px 0 16px}
.document-main p,.document-main ul{margin-block:16px}
.document-main a{text-decoration:underline}
.document-main .button{text-decoration:none}
@media(max-width:700px){
 :root{--text-h1:clamp(2.35rem,10.6vw,4.2rem);--text-h2:clamp(2.15rem,9vw,3.2rem);--text-h3:clamp(1.55rem,6.5vw,2rem)}
 .menu-enhanced .mobile-nav{display:flex}
 html:not(.menu-enhanced) .header{position:relative}
 html:not(.menu-enhanced) .mobile-nav{display:flex;position:static;max-height:none;border-radius:0;box-shadow:none}
 .hero-copy>p,.about-copy p,.service-description,.pricing-content p,.faq details>div{font-size:1rem;line-height:1.75}
 .document-header{flex-wrap:wrap;gap:8px;padding-block:20px}
 .document-header img{width:155px}
}
@media(forced-colors:active){
 .button,.menu-toggle{border:1px solid ButtonText}
 .service-shortcuts [aria-selected=true]>span{outline:3px solid Highlight}
}
