:root{
  /* Brand palette (user-specified) */
  --charcoal: #424241; /* rgb(66,66,65) - outlines, dog, banner, text details */
  --mustard: #E0C565; /* rgb(224,197,101) - BUMBUSH text / primary brand yellow */
  --mintgreen: #D8FBDF; /* rgb(216,251,223) - bottles, spoon, food highlights */
  --coral: #FB7477; /* rgb(251,116,119) - dog tongue, cat mouth accents */
  --purple: #8D16E7; /* rgb(141,22,231) - "Pamper Pet Bubbies" tagline */
  --white: #FFFFFF; /* background / animal highlights */
  --lightgray: #BFC2C8; /* rgb(191,194,200) - minor anti-aliased/details */

  /* backwards-compatible aliases used in the stylesheet */
  --ink: var(--charcoal);
  --paper: var(--white);
  --red: var(--coral);
  --mint: var(--mintgreen);
  --yellow: var(--mustard);
  --blue: #8bbdce;
  --cream: #efe0c8;
  --accent-purple: var(--purple);
  --accent-pink: var(--coral);
  --serif:"Fredoka",sans-serif;
  --sans:"DM Sans",sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;border:10px solid var(--paper);z-index:100;pointer-events:none}.noise{position:fixed;inset:0;opacity:.035;pointer-events:none;z-index:90;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}.site-header{position:absolute;top:0;left:0;right:0;height:92px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;color:white;z-index:20}.brand{display:flex;align-items:center;gap:10px;font:700 1.05rem var(--serif);letter-spacing:.08em}.brand img{width:58px;height:58px;object-fit:contain;border-radius:50%;background:#fff}.brand>span{display:flex;flex-direction:column}.brand small{font:600 .48rem var(--sans);letter-spacing:.08em;opacity:.72;margin-top:2px}.site-header .brand img{box-shadow:0 4px 18px #0003}nav{display:flex;gap:32px;font-size:.85rem}nav a{opacity:.8;transition:.2s}nav a:hover{opacity:1}.menu-toggle{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pill{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:16px 22px;background:var(--red);color:#fff;border-radius:4px;font-weight:600;font-size:.88rem;box-shadow:0 12px 30px #3e1d1420;transition:transform .25s,box-shadow .25s}.pill:hover{transform:translateY(-3px);box-shadow:0 16px 35px #3e1d1435}.pill span{font-size:1.2rem}.pill-small{padding:11px 16px;gap:18px;font-size:.78rem}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:#5e5a43}.hero-art,.panel-art{position:absolute;inset:-7%;background-size:cover;background-position:center;will-change:transform}.hero-art{background-image:url("../assets/daycare-cafe.png")}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,25,17,.82) 0%,rgba(28,25,17,.35) 44%,transparent 72%),linear-gradient(0deg,rgba(0,0,0,.25),transparent 40%)}.hero-copy{position:relative;width:min(680px,82vw);margin-left:8vw;color:#fff;padding-top:60px}.kicker{font-size:.69rem;letter-spacing:.2em;font-weight:700;margin:0 0 24px}.kicker span{color:var(--red);margin-right:8px}.kicker.red{color:var(--red)}h1,h2{font:600 clamp(3.4rem,7.2vw,7.8rem)/.88 var(--serif);letter-spacing:-.055em;margin:0}h1 em,h2 em{font-style:normal;color:var(--red)}.hero-copy>p:not(.kicker){max-width:470px;font-size:1.05rem;line-height:1.7;color:#ffffffcf;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:28px}.trust{display:flex;gap:10px;align-items:center}.trust strong{font:600 2rem var(--serif)}.trust span{color:var(--yellow);font-size:.65rem;letter-spacing:.1em}.trust small{display:block;color:#fff;font-size:.64rem;letter-spacing:0;margin-top:4px}.scroll-cue{position:absolute;bottom:35px;right:6vw;color:#fff9;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.scroll-cue span{width:34px;height:34px;border:1px solid #fff8;border-radius:50%;position:relative}.scroll-cue span:after{content:"↓";position:absolute;inset:0;display:grid;place-items:center;animation:bob 1.6s infinite}@keyframes bob{50%{transform:translateY(4px)}}
.section-pad{padding:120px 7vw}.section-number{font-size:.65rem;letter-spacing:.18em;color:#716d65;border-top:1px solid #cbc2b3;padding-top:18px}.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:80px}.sticky-heading{position:sticky;top:100px;align-self:start}.sticky-heading h2,.section-head h2{font-size:clamp(3rem,5vw,5.7rem)}.reasons{border-top:1px solid #c9c0b1}.reason{display:grid;grid-template-columns:54px 1fr;gap:25px;padding:38px 0;border-bottom:1px solid #c9c0b1}.reason>span{font:600 .9rem var(--serif);color:var(--red)}h3{font:600 1.6rem var(--serif);margin:0 0 11px}.reason p,.section-head>p,.cat-copy>p,.story-copy>p,.service-card p{color:#68635a;line-height:1.7;margin:0}
.services{background:#25231e;color:white}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.section-head>p{width:300px;color:#bdb7ab}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:350px;gap:16px}.service-card{position:relative;padding:30px;color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transform-style:preserve-3d;transition:filter .25s}.service-card:hover{filter:brightness(1.04)}.service-card div,.service-card>a{transform:translateZ(24px)}.service-card small{font-weight:700}.service-card h3{font-size:2rem;margin-top:10px}.service-card>a{position:absolute;right:25px;top:25px;width:42px;height:42px;border:1px solid #2b27244a;border-radius:50%;display:grid;place-items:center}.red-card{background:var(--red);color:white}.red-card p{color:#fffbd0}.mint-card{background:var(--mint)}.cream-card{background:var(--cream)}.yellow-card{background:var(--yellow)}.blue-card{background:var(--blue)}.wide-card{grid-column:span 4;height:260px}.wide-card div{max-width:560px}.service-icon{font:600 7rem/1 var(--serif);position:absolute;right:28px;bottom:18px;opacity:.17;transform:rotate(-10deg)}
.regulars{background:#f7f3eb}.regulars .section-head>p{color:#68635a}.pet-gallery{overflow:hidden;margin-inline:-7vw}.pet-track{display:flex;gap:16px;width:max-content;padding-right:16px;animation:pet-scroll 42s linear infinite}.pet-gallery:hover .pet-track{animation-play-state:paused}.pet-card{position:relative;flex:0 0 clamp(210px,20vw,310px);height:330px;margin:0;overflow:hidden;background:var(--cream)}.pet-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.pet-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(20,18,14,.68));pointer-events:none}.pet-card:hover img{transform:scale(1.07)}.pet-card figcaption{position:absolute;z-index:1;bottom:18px;left:18px;right:18px;display:flex;align-items:baseline;gap:9px;color:#fff;font:600 1.35rem var(--serif);letter-spacing:-.02em}.pet-card figcaption span{font:700 .65rem var(--sans);letter-spacing:.08em;color:var(--yellow)}.pet-card figcaption small{font:600 .64rem var(--sans);letter-spacing:.08em;text-transform:uppercase;opacity:.8;margin-left:auto;text-align:right}@keyframes pet-scroll{to{transform:translateX(-50%)}}
.cat-zone{min-height:820px;position:relative;background:#d9c6ed;overflow:hidden;display:flex;align-items:center}.cat-copy{width:min(520px,46vw);margin-left:auto;margin-right:7vw}.cat-copy h2{font-size:clamp(3.5rem,6vw,6.6rem)}.cat-copy>p{margin:28px 0}.text-link{font-weight:700;border-bottom:1px solid;padding-bottom:6px}.paw-trail{position:absolute;inset:0;z-index:2;pointer-events:none}.paw-trail i{--x:0%;--y:78%;position:absolute;left:var(--x);top:var(--y);width:25px;height:22px;border-radius:52% 48% 55% 45%;background:#5c466d66;opacity:0;transform:rotate(-24deg)}.paw-trail i:before{content:"";position:absolute;left:-3px;top:-12px;width:7px;height:9px;border-radius:50%;background:inherit;box-shadow:9px -4px 0 #5c466d66,18px -1px 0 #5c466d66,25px 5px 0 #5c466d66}.cat-zone.in-view .paw-trail i{animation:paw-appear .45s cubic-bezier(.2,.9,.3,1.4) forwards}.paw-trail i:nth-child(1){--x:3%;--y:81%;animation-delay:.05s}.paw-trail i:nth-child(2){--x:10%;--y:74%;animation-delay:.18s;transform:rotate(-8deg)}.paw-trail i:nth-child(3){--x:17%;--y:78%;animation-delay:.31s}.paw-trail i:nth-child(4){--x:24%;--y:68%;animation-delay:.44s;transform:rotate(-8deg)}.paw-trail i:nth-child(5){--x:31%;--y:71%;animation-delay:.57s}.paw-trail i:nth-child(6){--x:38%;--y:60%;animation-delay:.7s;transform:rotate(-8deg)}.paw-trail i:nth-child(7){--x:45%;--y:64%;animation-delay:.83s}.paw-trail i:nth-child(8){--x:52%;--y:52%;animation-delay:.96s;transform:rotate(-8deg)}.paw-trail i:nth-child(9){--x:59%;--y:57%;animation-delay:1.09s}.paw-trail i:nth-child(10){--x:66%;--y:43%;animation-delay:1.22s;transform:rotate(-8deg)}.paw-trail i:nth-child(11){--x:73%;--y:48%;animation-delay:1.35s}.paw-trail i:nth-child(12){--x:80%;--y:34%;animation-delay:1.48s;transform:rotate(-8deg)}.paw-trail i:nth-child(13){--x:87%;--y:39%;animation-delay:1.61s}.paw-trail i:nth-child(14){--x:94%;--y:25%;animation-delay:1.74s;transform:rotate(-8deg)}.paw-trail span{position:absolute;right:4%;top:20%;font:600 .7rem var(--serif);letter-spacing:.1em;color:#5c466d;transform:rotate(-12deg);opacity:0}.cat-zone.in-view .paw-trail span{animation:trail-label .6s 1.9s forwards}@keyframes paw-appear{0%{opacity:0;translate:-15px 15px}70%{opacity:.8;scale:1.16}100%{opacity:.62;translate:0 0;scale:1}}@keyframes trail-label{to{opacity:.75}}
.cat-guide{position:absolute;left:10%;bottom:23%;width:200px;height:170px;z-index:4;will-change:transform}.cat-body{position:absolute;width:118px;height:82px;background:#e88543;border-radius:58% 50% 42% 45%;bottom:28px;left:40px;box-shadow:inset -15px -12px 0 #c9612f}.cat-head{position:absolute;width:72px;height:66px;border-radius:50%;background:#ef9551;left:-25px;top:-20px}.ear{position:absolute;width:30px;height:34px;background:#d86e38;clip-path:polygon(50% 0,100% 100%,0 100%);top:-17px}.ear.left{left:3px;transform:rotate(-12deg)}.ear.right{right:3px;transform:rotate(12deg)}.eye{position:absolute;width:7px;height:10px;background:#28251f;border-radius:50%;top:25px}.eye.left{left:18px}.eye.right{right:18px}.nose{position:absolute;width:8px;height:6px;background:#854b45;border-radius:50%;left:32px;top:41px}.cat-tail{position:absolute;width:88px;height:75px;border:15px solid #dc753b;border-left:0;border-bottom-color:transparent;border-radius:0 80% 0 0;right:6px;bottom:55px;transform-origin:bottom left;animation:tail 1.2s ease-in-out infinite alternate}.leg{position:absolute;width:18px;height:48px;background:#de783d;border-radius:0 0 10px 10px;bottom:-28px;transform-origin:top}.l1{left:14px}.l2{left:39px;animation-delay:-.3s}.l3{right:30px;animation-delay:-.3s}.l4{right:7px}.cat-zone.in-view .leg{animation:walk .55s ease-in-out infinite alternate}.cat-shadow{position:absolute;width:140px;height:22px;border-radius:50%;background:#3b294133;bottom:4px;left:30px;animation:shadow .55s ease-in-out infinite alternate}@keyframes walk{to{transform:rotate(24deg)}}@keyframes tail{to{transform:rotate(-14deg)}}@keyframes shadow{to{transform:scaleX(.85)}}
.story-panel{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden}.daycare .panel-art{background-image:url("../assets/daycare.png")}.panel-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,23,15,.8),transparent 64%)}.story-copy{position:relative;width:min(540px,43vw);z-index:2}.story-copy.light{color:white;margin-left:8vw}.story-copy.dark{color:var(--ink);margin-left:auto;margin-right:8vw}.story-copy h2{font-size:clamp(3.6rem,6vw,6.7rem)}.story-copy.light>p{color:#fffbd0;margin:28px 0}.story-copy.dark>p{color:#5e594e;margin:28px 0}.facts{display:flex;gap:28px;border-top:1px solid #ffffff55;padding-top:20px}.facts span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.facts strong{display:block;font:600 1.5rem var(--serif);margin-bottom:2px}.grooming .panel-art{background-image:url("../assets/grooming-splash.png");background-position:center}.grooming:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 52%,rgba(246,237,220,.22))}.dark-pill{background:var(--ink)}.splash-layer{position:absolute;inset:0;z-index:4;pointer-events:none}.drop{position:absolute;border-radius:50% 45% 55% 50%;background:#dffaff99;box-shadow:inset 3px 3px 5px #fff,0 3px 8px #4f9ebd44;animation:splash .9s cubic-bezier(.17,.67,.2,1) both}@keyframes splash{0%{transform:translate(-50px,60px) scale(.15);opacity:0}45%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(1);opacity:.8}}
.menu{background:var(--paper)}.menu .section-head>p{color:#68635a}.menu-list{border-top:1px solid #bfb5a6}.menu-list article{display:grid;grid-template-columns:70px 1.1fr 1fr auto;align-items:center;gap:20px;padding:25px 0;border-bottom:1px solid #bfb5a6;transition:padding .25s,background .25s}.menu-list article:hover{padding-left:15px;background:#ffffff45}.menu-list span{color:var(--red);font:600 .8rem var(--serif)}.menu-list h3{margin:0}.menu-list p{color:#766f64}.menu-list b{font:600 1.1rem var(--serif)}.menu-note{font-size:.72rem;color:#766f64;margin-top:18px}
.visit{background:var(--red)}.visit-card{position:relative;text-align:center;padding:100px 20px;border:1px solid #ffd5c04a;color:white;overflow:hidden}.visit-card h2 em{color:var(--yellow)}.visit-card>p:not(.kicker){line-height:1.8;margin:28px 0}.visit-card .pill{background:var(--paper);color:var(--ink)}.visit-paws{position:absolute;right:7%;top:14%;font-size:5rem;line-height:.65;opacity:.12;transform:rotate(20deg)}
.form-trigger{border:0;cursor:pointer}.form-modal[hidden]{display:none}.form-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px}.form-backdrop{position:absolute;inset:0;background:rgba(34,31,25,.66);backdrop-filter:blur(6px)}.inquiry-form-wrap{position:relative;z-index:1;width:min(650px,100%);max-height:calc(100svh - 48px);overflow:auto;padding:48px;background:var(--paper);box-shadow:0 24px 80px #1e19124d}.inquiry-form-wrap h2{font-size:clamp(2.6rem,5vw,4.8rem)}.form-intro{color:#68635a;line-height:1.6;margin:20px 0 28px}.form-feedback{margin:20px 0 28px;padding:14px 16px;background:var(--mint);color:var(--ink);line-height:1.5}.form-feedback.error{background:#ffe1d4}.form-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:1px solid #c9c0b1;background:transparent;border-radius:50%;color:var(--ink);font-size:1.8rem;line-height:1;cursor:pointer}.inquiry-form{display:grid;gap:16px}.inquiry-form label{display:grid;gap:7px;color:var(--ink);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:1px solid #c9c0b1;border-radius:0;background:#fff;padding:13px;font:400 .95rem var(--sans);color:var(--ink);outline:0}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px #fb747726}.inquiry-form textarea{resize:vertical}.honeypot{position:absolute!important;left:-9999px}.form-submit{justify-self:start;border:0;cursor:pointer;margin-top:8px}
footer{background:#25231e;color:white;padding:36px 7vw;display:flex;align-items:center;justify-content:space-between;font-size:.72rem}footer p{color:#aaa397}footer .brand img{width:72px;height:72px}
.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){nav{display:none}.hero-copy{margin-left:7vw}.manifesto-grid{grid-template-columns:1fr}.sticky-heading{position:relative;top:0}.service-grid{grid-template-columns:1fr 1fr}.wide-card{grid-column:span 2}.cat-copy{width:55vw;margin-right:5vw}.story-copy{width:60vw}.grooming .panel-art{background-position:35% center}.menu-list article{grid-template-columns:40px 1fr auto}.menu-list article p{display:none}}
@media(max-width:620px){body:before{border-width:5px}.site-header{height:75px;padding:0 22px}.site-header .pill{display:none}.hero{min-height:820px}.hero-art{background-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(25,20,14,.88) 12%,rgba(25,20,14,.1) 90%)}.hero-copy{align-self:flex-end;margin:0 22px 105px;width:auto}.hero-copy h1{font-size:3.8rem}.hero-actions{align-items:flex-start;flex-direction:column}.trust{display:none}.scroll-cue{right:22px}.section-pad{padding:85px 24px}.manifesto-grid{margin-top:50px}.service-grid{grid-template-columns:1fr;grid-auto-rows:300px}.wide-card{grid-column:auto;height:auto}.section-head{display:block}.section-head>p{width:auto;margin-top:22px}.cat-zone{min-height:780px;display:block;padding-top:85px}.cat-copy{width:auto;margin:0}.cat-copy h2{font-size:3.9rem}.cat-guide{left:8%;bottom:17%;transform:scale(.8)}.paw-trail i{width:18px;height:16px}.story-panel{min-height:800px;align-items:flex-end}.story-copy,.story-copy.light,.story-copy.dark{width:auto;margin:0 24px 70px}.story-copy h2{font-size:4rem}.daycare .panel-art{background-position:70% center}.grooming .panel-art{background-position:30% center}.grooming:after{background:linear-gradient(0deg,rgba(245,236,218,.94),transparent 65%)}.facts{gap:15px}.menu-list h3{font-size:1.2rem}footer{gap:18px;flex-direction:column;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.parallax,.cat-guide{transform:none!important}.cat-tail,.leg,.cat-shadow,.drop,.pet-track{animation:none!important}}

/* Camera-lens water impact */
.splash-layer{z-index:8;overflow:hidden}
.splash-flash{position:absolute;left:34%;top:54%;width:12vmin;height:12vmin;border-radius:50%;background:#e9fbffcc;box-shadow:0 0 0 3vmin #dff8ff66,0 0 0 9vmin #dff8ff25,0 0 80px 50px #e7fbffb5;filter:blur(1px);animation:impact-flash .72s ease-out both}
.splash-layer .drop{border:1px solid #efffffdd;border-radius:62% 38% 55% 45%/48% 56% 44% 52%;background:linear-gradient(145deg,#fff9 0 12%,#a4e6f233 35%,#f6ffff88 78%,#74c7df55);box-shadow:inset 5px 5px 9px #fff,inset -5px -7px 12px #5cb5d455,0 6px 13px #246a8444;backdrop-filter:blur(2px) saturate(1.35);animation:splash-impact 1.05s cubic-bezier(.08,.72,.18,1) both}
.splash-layer .drop.lens{animation:hit-lens .68s cubic-bezier(.08,.8,.2,1) both,cling 3.8s .68s ease-in forwards}
.splash-layer .drop.streak{border-radius:50% 50% 65% 35%/80% 80% 20% 20%;transform-origin:50% 0;filter:blur(.3px)}
.water-smear{position:absolute;border:2px solid #eaffff88;border-radius:50%;background:radial-gradient(circle at 38% 32%,#fff8 0 3%,#d9f8ff3d 8%,transparent 55%),conic-gradient(from 10deg,transparent,#ccefff48,transparent 38%);box-shadow:inset 9px 5px 20px #fff8,inset -12px -10px 25px #78c9df38,0 8px 25px #286d8030;backdrop-filter:blur(3px) brightness(1.08);animation:smear-hit .75s cubic-bezier(.05,.75,.1,1) both,smear-drip 4s .75s ease-in forwards}
.water-smear:after{content:"";position:absolute;width:12%;height:65%;left:47%;top:82%;border-radius:0 0 100% 100%;background:linear-gradient(#dffaff88,transparent);filter:blur(2px)}
@keyframes impact-flash{0%{opacity:0;transform:translate(-50%,-50%) scale(.08)}30%{opacity:.95}100%{opacity:0;transform:translate(-50%,-50%) scale(4)}}
@keyframes splash-impact{0%{transform:translate(var(--ox),var(--oy)) scale(.08) rotate(var(--rot));opacity:0}18%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(1) rotate(var(--endrot));opacity:.95}}
@keyframes hit-lens{0%{transform:translate(var(--ox),var(--oy)) scale(.05);opacity:0}45%{opacity:1}75%{transform:translate(var(--dx),var(--dy)) scale(1.18)}100%{transform:translate(var(--dx),var(--dy)) scale(1)}}
@keyframes cling{0%,55%{opacity:.94;translate:0 0}100%{opacity:0;translate:0 22vh}}
@keyframes smear-hit{0%{opacity:0;transform:translate(-50%,-50%) scale(.05) rotate(-14deg)}55%{opacity:1;transform:translate(-50%,-50%) scale(1.12) rotate(4deg)}100%{opacity:.9;transform:translate(-50%,-50%) scale(1)}}
@keyframes smear-drip{0%,50%{opacity:.9;translate:0 0}100%{opacity:0;translate:0 13vh}}
@media(prefers-reduced-motion:reduce){.splash-layer{display:none}}

/* Responsive layout refinements */
@media(max-width:1280px){
  .site-header{padding-inline:4vw}
  nav{gap:22px}
  .section-pad{padding:100px 5vw}
  .hero-copy{margin-left:6vw}
  .service-grid{grid-auto-rows:320px}
  .story-copy.light{margin-left:6vw}
  .story-copy.dark{margin-right:6vw}
}

@media(max-width:1024px){
  .site-header{height:82px;padding-inline:28px}
  .brand img{width:52px;height:52px}
  .site-header nav{display:flex;gap:18px}
  .site-header nav a:nth-child(3){display:none}
  .hero{min-height:760px}
  .hero-copy{margin-left:6vw;width:min(620px,72vw)}
  .hero-copy h1{font-size:clamp(4rem,8vw,6.4rem)}
  .manifesto-grid{gap:6vw}
  .sticky-heading h2,.section-head h2{font-size:clamp(3rem,6vw,4.8rem)}
  .service-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:300px}
  .wide-card{grid-column:span 2}
  .pet-card{height:290px}
  .cat-zone{min-height:740px}
  .cat-copy{width:52vw;margin-right:5vw}
  .cat-guide{left:4%;transform:scale(.85)}
  .story-panel{min-height:720px}
  .story-copy{width:49vw}
  .story-copy h2{font-size:clamp(3.5rem,7vw,5.6rem)}
}

@media(max-width:768px){
  .site-header{padding-inline:22px}
  .site-header nav{position:absolute;top:calc(100% + 10px);left:0;right:0;display:none;flex-direction:column;gap:0;padding:8px 18px;background:var(--mustard);border:1px solid rgba(66,66,65,.14);border-radius:18px;box-shadow:0 16px 40px rgba(35,31,20,.18);font-size:.86rem}
  .site-header.nav-open nav{display:flex}
  .site-header nav a{padding:12px 4px;border-bottom:1px solid rgba(66,66,65,.13)}
  .site-header nav a:last-child{border-bottom:0}
  .menu-toggle{width:42px;height:42px;margin-left:auto;padding:0;display:grid;place-content:center;gap:5px;background:var(--charcoal);border:0;border-radius:12px;cursor:pointer}
  .menu-toggle>span:not(.sr-only){display:block;width:18px;height:2px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}
  .site-header.nav-open .menu-toggle>span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .site-header.nav-open .menu-toggle>span:nth-child(2){opacity:0}
  .site-header.nav-open .menu-toggle>span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .site-header .pill-small{display:none}
  .hero{min-height:780px}
  .hero-art{background-position:64% center}
  .hero-shade{background:linear-gradient(0deg,rgba(26,21,14,.9) 5%,rgba(26,21,14,.28) 72%,rgba(26,21,14,.1))}
  .hero-copy{align-self:flex-end;width:auto;margin:0 7vw 92px;padding:0}
  .hero-copy>p:not(.kicker){max-width:520px}
  .scroll-cue{bottom:25px}
  .section-pad{padding:82px 6vw}
  .manifesto-grid{grid-template-columns:1fr;margin-top:55px}
  .sticky-heading{position:static;max-width:600px}
  .reasons{margin-top:25px}
  .section-head{display:block}
  .section-head>p{width:auto;max-width:520px;margin-top:22px}
  .pet-gallery{margin-inline:-6vw}
  .pet-card{flex-basis:250px;height:300px}
  .cat-zone{min-height:820px;display:block;padding-top:85px}
  .cat-copy{width:auto;max-width:600px;margin:0;position:relative;z-index:3}
  .cat-guide{left:2%;bottom:14%;transform:scale(.75)}
  .paw-trail i:nth-child(n+12){display:none}
  .paw-trail span{right:8%;top:auto;bottom:20%}
  .story-panel{min-height:780px;align-items:flex-end}
  .story-copy,.story-copy.light,.story-copy.dark{width:auto;max-width:620px;margin:0 6vw 65px}
  .daycare .panel-art{background-image:url("../assets/daycare_mobile.png");background-position:68% center}
  .daycare .panel-overlay{background:linear-gradient(0deg,rgba(30,23,15,.9),transparent 76%)}
  .grooming .panel-art{background-position:28% center}
  .grooming:after{background:linear-gradient(0deg,rgba(245,236,218,.96),transparent 70%)}
  .menu-list article{grid-template-columns:45px 1fr auto}
  .menu-list article p{display:none}
  footer{padding-inline:6vw}
}

@media(max-width:480px){
  .site-header{height:70px;padding-inline:17px}
  .brand{font-size:.92rem}
  .brand img{width:46px;height:46px}
  .brand small{font-size:.42rem}
  .site-header nav{left:0;right:0;font-size:.82rem}
  .hero{min-height:740px}
  .hero-copy{margin:0 22px 80px}
  .hero-copy h1{font-size:clamp(3.25rem,16vw,4.25rem)}
  .hero-copy>p:not(.kicker){font-size:.95rem;line-height:1.55;margin:22px 0}
  .hero-actions .pill{width:100%}
  .scroll-cue{font-size:.58rem}
  .section-pad{padding:70px 20px}
  h2,.sticky-heading h2,.section-head h2{font-size:clamp(2.9rem,14vw,4rem)}
  .reason{grid-template-columns:35px 1fr;gap:12px;padding:28px 0}
  .reason h3{font-size:1.35rem}
  .reason p{font-size:.92rem}
  .service-grid{grid-template-columns:1fr;grid-auto-rows:280px}
  .wide-card{grid-column:auto;height:auto}
  .service-card{padding:24px}
  .service-card h3{font-size:1.75rem}
  .pet-gallery{margin-inline:-20px}
  .pet-track{gap:12px;padding-right:12px;animation-duration:34s}
  .pet-card{flex-basis:230px;height:300px}
  .pet-card figcaption{bottom:16px;left:16px;right:16px}
  .cat-zone{min-height:760px;padding:68px 20px}
  .cat-copy h2{font-size:clamp(3rem,15vw,4rem)}
  .cat-copy>p{font-size:.93rem}
  .cat-guide{left:-25px;bottom:11%;scale:.72}
  .paw-trail i{width:16px;height:14px}
  .paw-trail i:nth-child(n+10){display:none}
  .paw-trail span{display:none}
  .story-panel{min-height:740px}
  .story-copy,.story-copy.light,.story-copy.dark{margin:0 20px 50px}
  .story-copy h2{font-size:clamp(3.1rem,15vw,4.15rem)}
  .story-copy>p{font-size:.92rem;line-height:1.55}
  .facts{gap:12px;justify-content:space-between}
  .facts span{font-size:.57rem}
  .facts strong{font-size:1.2rem}
  .grooming .panel-art{background-position:24% center}
  .water-smear{max-width:150px;max-height:150px}
  .menu-list article{grid-template-columns:28px 1fr auto;gap:10px;padding:20px 0}
  .menu-list h3{font-size:1.08rem}
  .visit-card{padding:72px 10px}
  .visit-card h2{font-size:clamp(3.2rem,15vw,4.2rem)}
  .form-modal{padding:12px}
  .inquiry-form-wrap{max-height:calc(100svh - 24px);padding:42px 22px 26px}
  .form-row{grid-template-columns:1fr}
  .form-submit{width:100%}
  footer{padding:35px 20px;gap:20px;flex-direction:column;text-align:center}
  footer .brand img{width:64px;height:64px}
}

@media(max-width:360px){
  .hero-copy h1{font-size:3rem}
  .section-pad{padding-inline:16px}
  .cat-zone{padding-inline:16px}
  .facts{flex-wrap:wrap}
  .facts span{width:45%}
}
