:root{
  --ph-sky:#72c6ed;
  --ph-sky-soft:#dff4ff;
  --ph-amber:#f8ad3f;
  --ph-amber-dark:#c66f12;
  --ph-plum:#331a2f;
  --ph-plum-2:#241120;
  --ph-cream:#fff7eb;
  --ph-paper:#ffffff;
  --ph-ink:#281d22;
  --ph-muted:#685f62;
  --ph-green:#51724f;
  --ph-border:rgba(51,26,47,.14);
  --ph-shadow:0 18px 42px rgba(45,25,25,.16);
  --ph-radius:20px;
  --ph-shell:min(1120px, calc(100vw - 42px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ph-cream);color:var(--ph-ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}
img,svg{max-width:100%;height:auto}
a{color:inherit}.skip-link{position:absolute;left:-999px;top:10px;background:#fff;color:#000;padding:10px;z-index:999}.skip-link:focus{left:10px}.ph-shell{width:var(--ph-shell);margin-inline:auto}
.ph-site-header{position:relative;z-index:40;background:var(--ph-sky)}
.ph-logo-band{background:var(--ph-sky);padding:28px 0 22px}.ph-logo-band-inner{display:flex;justify-content:center}.ph-logo{display:inline-flex;align-items:center;text-decoration:none}.ph-logo__svg{width:230px;display:block}.ph-logo__img{max-width:230px;display:block}
.ph-nav-band{background:var(--ph-plum);color:#fff}.ph-nav-inner{min-height:46px;display:flex;align-items:center;justify-content:center;gap:18px}.ph-nav{display:flex;justify-content:center}.ph-menu{display:flex;align-items:center;justify-content:center;gap:0;list-style:none;margin:0;padding:0}.ph-menu a{display:block;padding:14px 16px;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:.88rem;letter-spacing:.04em;color:#fff}.ph-menu a:hover,.ph-menu .current-menu-item>a{color:var(--ph-amber)}.ph-header-cta{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 15px;border-radius:7px;background:var(--ph-amber);color:#1b1116;text-decoration:none;font-weight:800;text-transform:uppercase;font-size:.82rem}.ph-menu-toggle{display:none;background:transparent;border:0;padding:8px;color:#fff}.ph-menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;border-radius:2px}.ph-menu-toggle strong{font-size:0;position:absolute}
.ph-main{background:var(--ph-paper)}
.ph-photo-hero{min-height:520px;background-image:linear-gradient(90deg,rgba(0,0,0,.53),rgba(0,0,0,.28) 45%,rgba(0,0,0,.08)),var(--hero-image);background-size:cover;background-position:center;display:flex;align-items:center;color:#fff}.ph-photo-hero-inner{display:flex;align-items:center}.ph-hero-panel{max-width:610px;padding:48px 0}.ph-kicker{margin:0 0 10px;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:900;color:var(--ph-amber-dark)}.ph-photo-hero .ph-kicker{color:var(--ph-amber)}h1,h2,h3,p{margin-top:0}.ph-hero-panel h1,.ph-section h2,.ph-page-hero h1{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-.045em;line-height:.98}.ph-hero-panel h1{font-size:clamp(2.7rem,5.4vw,5rem);max-width:720px;margin-bottom:20px;text-shadow:0 3px 12px rgba(0,0,0,.3)}.ph-hero-panel p:not(.ph-kicker){font-size:1.16rem;max-width:560px;text-shadow:0 2px 8px rgba(0,0,0,.35)}.ph-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.ph-btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 20px;border-radius:8px;text-decoration:none;font-weight:900;text-transform:uppercase;font-size:.85rem;letter-spacing:.035em;border:2px solid transparent;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.ph-btn:hover{transform:translateY(-2px)}.ph-btn--primary{background:var(--ph-amber);color:#201116;box-shadow:0 12px 26px rgba(0,0,0,.18)}.ph-btn--secondary{background:var(--ph-plum);color:#fff}.ph-btn--light{background:#fff;color:var(--ph-plum)}.ph-btn--ghost,.ph-btn--ghost-light{background:rgba(255,255,255,.9);color:#22151d}.ph-quick-contact{background:var(--ph-amber);text-align:center;padding:30px 0;font-weight:800}.ph-quick-contact a{text-decoration:none;color:#1f1218}.ph-section{padding:76px 0}.ph-section--cream{background:var(--ph-cream)}.ph-section--white{background:#fff}.ph-section--blue{background:var(--ph-sky-soft)}.ph-section-head{max-width:760px;margin-bottom:32px}.ph-section-head--center{text-align:center;margin-inline:auto}.ph-section h2{font-size:clamp(2rem,4vw,3.7rem);margin-bottom:14px}.ph-section-head p:not(.ph-kicker){font-size:1.1rem;color:var(--ph-muted)}.ph-card-grid{display:grid;gap:24px}.ph-card-grid--3{grid-template-columns:repeat(3,1fr)}.ph-service-card{background:#fff;border:1px solid var(--ph-border);border-radius:var(--ph-radius);overflow:hidden;box-shadow:0 12px 28px rgba(45,25,25,.08);display:flex;flex-direction:column}.ph-card-media{min-height:220px;background-size:cover;background-position:center}.ph-card-body{padding:22px}.ph-card-body h3{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:1.45rem;line-height:1.05;letter-spacing:-.035em;margin-bottom:10px}.ph-card-body p{color:var(--ph-muted);margin-bottom:14px}.ph-card-body strong{display:block;font-size:1.35rem;margin-bottom:12px;color:var(--ph-plum)}.ph-card-body a{display:inline-flex;font-weight:900;color:var(--ph-amber-dark);text-decoration:none}.ph-split{display:grid;grid-template-columns:1fr .86fr;gap:52px;align-items:center}.ph-split-copy p{color:var(--ph-muted);font-size:1.08rem}.ph-tick-list{display:grid;gap:10px;list-style:none;margin:24px 0 28px;padding:0}.ph-tick-list li{position:relative;padding-left:32px;font-weight:700}.ph-tick-list li:before{content:"✓";position:absolute;left:0;top:0;width:23px;height:23px;border-radius:50%;background:var(--ph-amber);display:grid;place-items:center;color:#241116;font-weight:900}.ph-rounded-photo{min-height:430px;margin:0;border-radius:28px;background-size:cover;background-position:center;box-shadow:var(--ph-shadow)}.ph-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.ph-steps article{background:#fff;border:1px solid var(--ph-border);border-radius:20px;padding:24px;box-shadow:0 10px 24px rgba(45,25,25,.06)}.ph-steps span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ph-amber);font-weight:900;margin-bottom:14px}.ph-steps h3{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:1.35rem;letter-spacing:-.03em}.ph-steps p{color:var(--ph-muted);margin-bottom:0}.ph-price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ph-price-card{background:#fff;border:1px solid var(--ph-border);border-radius:18px;padding:22px;box-shadow:0 10px 24px rgba(45,25,25,.06)}.ph-price-card span{display:inline-flex;border-radius:999px;background:var(--ph-sky-soft);padding:5px 10px;color:var(--ph-plum);font-weight:900;font-size:.75rem}.ph-price-card h3{font-size:1.05rem;margin:16px 0 8px}.ph-price-card strong{display:block;font-size:2rem;font-weight:900;letter-spacing:-.04em}.ph-price-card p{color:var(--ph-muted);margin:8px 0 0}.ph-center-action{text-align:center;margin-top:28px}.ph-cta-band{background:var(--ph-green);color:#fff;padding:45px 0}.ph-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.ph-cta-inner .ph-kicker{color:#ffe0a9}.ph-cta-inner h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:clamp(1.7rem,3vw,3.2rem);letter-spacing:-.04em;line-height:1;margin:0}.ph-page-hero{min-height:330px;background-image:linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.18)),var(--page-hero-image, var(--hero-image));background-size:cover;background-position:center;display:flex;align-items:center;color:#fff;text-align:center}.ph-page-hero .ph-shell{max-width:760px}.ph-page-hero h1{font-size:clamp(2.5rem,5vw,4.7rem);margin-bottom:12px;text-shadow:0 3px 12px rgba(0,0,0,.28)}.ph-page-hero p{font-size:1.12rem;text-shadow:0 2px 8px rgba(0,0,0,.32)}.ph-page-hero .ph-kicker{color:var(--ph-amber)}.ph-content{max-width:840px}.ph-content h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:2rem;letter-spacing:-.03em}.ph-content a{color:var(--ph-amber-dark);font-weight:800}.ph-text-columns{display:grid;grid-template-columns:1fr 1fr;gap:42px;max-width:860px;margin-inline:auto}.ph-text-card{background:#fff;border:1px solid var(--ph-border);border-radius:20px;padding:28px;box-shadow:0 10px 24px rgba(45,25,25,.06)}.ph-text-card h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:1.7rem}.ph-list-clean{padding-left:18px}.ph-list-clean li{margin:8px 0}.ph-booking-wrap{max-width:860px}.ph-admin-message{background:#fff;border:1px solid var(--ph-border);border-radius:20px;padding:26px}.ph-footer{background:var(--ph-plum);color:#fff;padding:56px 0 22px}.ph-footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:34px}.ph-footer-logo__svg{width:138px;background:#fff;border-radius:12px;padding:8px}.ph-footer p{color:rgba(255,255,255,.76)}.ph-footer h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:1.05rem;color:var(--ph-amber);margin-bottom:12px}.ph-footer a{display:block;text-decoration:none;color:rgba(255,255,255,.86);margin:7px 0}.ph-footer a:hover{color:#fff}.ph-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.16);margin-top:38px;padding-top:18px;font-size:.9rem;color:rgba(255,255,255,.72)}.ph-footer-menu{display:flex;gap:14px;list-style:none;margin:0;padding:0}.poundhill-intake,.php-intake-form,.poundhill-pets-intake{background:#fff!important;border:1px solid var(--ph-border)!important;border-radius:20px!important;padding:clamp(18px,4vw,34px)!important;box-shadow:0 16px 38px rgba(45,25,25,.10)!important}.poundhill-intake input,.poundhill-intake select,.poundhill-intake textarea,.php-intake-form input,.php-intake-form select,.php-intake-form textarea,.poundhill-pets-intake input,.poundhill-pets-intake select,.poundhill-pets-intake textarea{border-radius:8px!important;border:1px solid rgba(51,26,47,.22)!important;min-height:44px!important}.poundhill-intake button,.php-intake-form button,.poundhill-pets-intake button{background:var(--ph-plum)!important;color:#fff!important;border-radius:8px!important;border:0!important;padding:13px 20px!important;font-weight:900!important;text-transform:uppercase!important}
@media (max-width:980px){.ph-logo-band{padding:22px 0 17px}.ph-logo__svg,.ph-logo__img{width:190px}.ph-nav-inner{justify-content:space-between}.ph-menu-toggle{display:block}.ph-nav{position:absolute;left:20px;right:20px;top:100%;background:var(--ph-plum);border-radius:0 0 18px 18px;box-shadow:0 18px 35px rgba(0,0,0,.22);display:none}.ph-nav.is-open{display:block}.ph-menu{display:grid}.ph-menu a{text-align:center}.ph-header-cta{margin-left:0}.ph-photo-hero{min-height:470px}.ph-card-grid--3,.ph-steps,.ph-price-grid,.ph-footer-grid{grid-template-columns:1fr 1fr}.ph-split{grid-template-columns:1fr}.ph-cta-inner{align-items:flex-start;flex-direction:column}.ph-text-columns{grid-template-columns:1fr}}
@media (max-width:640px){:root{--ph-shell:min(100vw - 28px,1120px)}.ph-logo__svg,.ph-logo__img{width:165px}.ph-nav-inner{min-height:44px}.ph-header-cta{min-height:31px;padding-inline:12px;font-size:.75rem}.ph-photo-hero{min-height:430px;background-position:center}.ph-hero-panel{padding:36px 0}.ph-hero-panel h1{font-size:2.7rem}.ph-section{padding:56px 0}.ph-card-grid--3,.ph-steps,.ph-price-grid,.ph-footer-grid{grid-template-columns:1fr}.ph-rounded-photo{min-height:320px}.ph-cta-band{padding:34px 0}.ph-footer-bottom{flex-direction:column}.ph-footer-menu{flex-wrap:wrap}.ph-page-hero{min-height:260px}.ph-quick-contact{padding:22px 0}}


/* v0.3 booking page polish */
.ph-page-hero--booking{min-height:360px;background-position:center 42%;}
.ph-booking-section{padding-top:64px;}
.ph-booking-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:42px;align-items:start;}
.ph-booking-aside{position:sticky;top:24px;background:#fff;border:1px solid var(--ph-border);border-radius:24px;padding:28px;box-shadow:0 16px 38px rgba(45,25,25,.08);}
.ph-booking-aside h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:clamp(2rem,3vw,2.75rem);line-height:1;letter-spacing:-.045em;margin-bottom:14px;}
.ph-booking-aside p{color:var(--ph-muted);}
.ph-tick-list--compact{gap:8px;margin:20px 0;}
.ph-tick-list--compact li{font-size:.96rem;line-height:1.35;}
.ph-contact-card{margin-top:22px;background:var(--ph-sky-soft);border-radius:16px;padding:18px;}
.ph-contact-card strong{display:block;margin-bottom:6px;}
.ph-contact-card a{font-weight:900;color:var(--ph-plum);text-decoration:none;}
.ph-booking-form-panel{min-width:0;}

/* Pound Hill Pets Toolkit form styling */
.ph-booking-form-panel .phpets-intake-wrap{max-width:none;margin:0;}
.ph-booking-form-panel .phpets-intake-form{display:grid;gap:22px;}
.ph-booking-form-panel .phpets-card{background:#fff!important;border:1px solid var(--ph-border)!important;border-radius:22px!important;padding:clamp(20px,3vw,30px)!important;margin:0!important;box-shadow:0 14px 34px rgba(45,25,25,.07)!important;}
.ph-booking-form-panel .phpets-card h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif!important;font-size:1.65rem!important;letter-spacing:-.035em!important;color:var(--ph-plum)!important;margin:0 0 18px!important;}
.ph-booking-form-panel .phpets-card h3{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif!important;color:var(--ph-plum)!important;}
.ph-booking-form-panel .phpets-card p{color:var(--ph-muted)!important;}
.ph-booking-form-panel .phpets-grid{gap:16px!important;}
.ph-booking-form-panel .phpets-intake-form label{display:grid!important;gap:7px!important;font-weight:800!important;color:var(--ph-ink)!important;font-size:.94rem!important;}
.ph-booking-form-panel .phpets-intake-form input,
.ph-booking-form-panel .phpets-intake-form select,
.ph-booking-form-panel .phpets-intake-form textarea{width:100%!important;min-height:48px!important;border:1px solid rgba(51,26,47,.18)!important;border-radius:12px!important;background:#fff!important;padding:12px 14px!important;font:inherit!important;color:var(--ph-ink)!important;box-shadow:none!important;outline:none!important;}
.ph-booking-form-panel .phpets-intake-form textarea{min-height:105px!important;resize:vertical!important;}
.ph-booking-form-panel .phpets-intake-form input:focus,
.ph-booking-form-panel .phpets-intake-form select:focus,
.ph-booking-form-panel .phpets-intake-form textarea:focus{border-color:var(--ph-amber)!important;box-shadow:0 0 0 4px rgba(248,173,63,.18)!important;}
.ph-booking-form-panel .phpets-pet{background:var(--ph-cream)!important;border:1px dashed rgba(51,26,47,.22)!important;border-radius:18px!important;padding:20px!important;margin-top:18px!important;}
.ph-booking-form-panel .phpets-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;border:0!important;border-radius:999px!important;padding:0 22px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.035em!important;cursor:pointer!important;text-decoration:none!important;}
.ph-booking-form-panel .phpets-button-primary{background:var(--ph-amber)!important;color:#211217!important;box-shadow:0 10px 22px rgba(45,25,25,.13)!important;justify-self:start!important;}
.ph-booking-form-panel .phpets-button-secondary{background:var(--ph-plum)!important;color:#fff!important;}
.ph-booking-form-panel .phpets-remove{background:transparent!important;border:0!important;color:#a33!important;font-weight:900!important;}
.ph-booking-form-panel .phpets-notice-success{background:#e9f7ec!important;border:1px solid #b9dfc0!important;border-radius:16px!important;color:#1d4b2c!important;}

@media (max-width:980px){.ph-booking-layout{grid-template-columns:1fr}.ph-booking-aside{position:static}.ph-page-hero--booking{min-height:300px}}
@media (max-width:720px){.ph-booking-form-panel .phpets-grid-2{grid-template-columns:1fr!important}.ph-booking-form-panel .phpets-span-2{grid-column:auto!important}.ph-booking-section{padding-top:42px}.ph-booking-aside{padding:22px}.ph-booking-layout{gap:24px}}

/* v0.3.1 About Kate photo section */
.ph-about-kate{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center;max-width:1040px}.ph-about-kate__photo{margin:0;border-radius:28px;overflow:hidden;box-shadow:0 18px 42px rgba(45,25,25,.16);background:#fff}.ph-about-kate__photo img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}.ph-about-kate__copy h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:clamp(2rem,3.8vw,3.4rem);letter-spacing:-.045em;line-height:1;margin-bottom:18px}.ph-about-kate__copy p:not(.ph-kicker){font-size:1.08rem;color:var(--ph-muted);line-height:1.7}.ph-about-kate-section{padding-top:84px;padding-bottom:84px}.ph-page-hero[style*="about-kate"]{background-position:center 38%}
@media (max-width:980px){.ph-about-kate{grid-template-columns:1fr;gap:28px}.ph-about-kate__photo{max-width:520px}.ph-about-kate-section{padding-top:62px;padding-bottom:62px}}

/* v0.3.2 hero visibility tuning */
@media (min-width:981px){
  .ph-photo-hero{min-height:650px;background-position:center 44%;}
  .ph-page-hero{min-height:460px;background-position:center 42%;}
  .ph-page-hero--booking{min-height:460px;background-position:center 36%;}
  body.page-slug-about .ph-page-hero,
  .ph-page-hero[style*="about-kate"]{min-height:500px;background-position:center 32%;}
  body.page-slug-price-list .ph-page-hero{min-height:460px;background-position:center 32%;}
}
@media (max-width:980px){
  .ph-page-hero{min-height:360px;}
  .ph-page-hero--booking{min-height:360px;background-position:center 35%;}
}


/* v0.3.3 bottom-page polish */
.ph-prices-home{padding-top:88px;padding-bottom:72px;}
.ph-prices-home .ph-section-head{margin-bottom:34px;}
.ph-prices-home .ph-section-head h2{max-width:720px;}
.ph-price-grid{align-items:stretch;}
.ph-price-card{min-height:178px;display:flex;flex-direction:column;justify-content:flex-start;}
.ph-price-card h3{line-height:1.25;}
.ph-price-card strong{margin-top:auto;padding-top:10px;}
.ph-center-action{margin-top:34px;}
.ph-final-cta{background:linear-gradient(180deg,var(--ph-cream),#fff);padding:54px 0 66px;}
.ph-final-cta-card{background:var(--ph-sky-soft);border:1px solid rgba(51,26,47,.12);border-radius:28px;padding:clamp(26px,4vw,44px);display:flex;align-items:center;justify-content:space-between;gap:28px;box-shadow:0 18px 42px rgba(45,25,25,.08);}
.ph-final-cta-card h2{font-family:"Arial Rounded MT Bold",Arial,Helvetica,sans-serif;font-size:clamp(2rem,3.8vw,3.6rem);letter-spacing:-.045em;line-height:1;margin:0 0 10px;color:var(--ph-plum);}
.ph-final-cta-card p:not(.ph-kicker){max-width:640px;color:var(--ph-muted);font-size:1.08rem;margin:0;}
.ph-footer{padding-top:48px;}
.ph-footer-grid{grid-template-columns:1.35fr .8fr .9fr 1fr;align-items:start;}
.ph-footer .ph-footer-cta{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:40px;margin-top:12px;padding:0 16px;border-radius:999px;background:var(--ph-amber);color:#211217;font-weight:900;text-transform:uppercase;font-size:.82rem;letter-spacing:.035em;box-shadow:0 8px 20px rgba(0,0,0,.14);}
.ph-footer .ph-footer-cta:hover{color:#211217;background:#ffc163;}
.ph-footer-brand p{max-width:280px;}
.ph-protectivity-seal{display:inline-flex!important;margin-top:16px!important;line-height:0;text-decoration:none!important;}
.ph-protectivity-seal img{display:block;width:190px;max-width:100%;height:auto;border-radius:8px;box-shadow:0 10px 24px rgba(0,0,0,.14);}

body.admin-bar .ph-site-header{top:0;}
@media (min-width:981px){
  .ph-prices-home .ph-section-head{padding-top:6px;}
}
@media (max-width:980px){
  .ph-final-cta-card{flex-direction:column;align-items:flex-start;}
  .ph-footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:640px){
  .ph-prices-home{padding-top:56px;padding-bottom:54px;}
  .ph-final-cta{padding:38px 0 46px;}
  .ph-final-cta-card{border-radius:22px;}
  .ph-footer-grid{grid-template-columns:1fr;gap:24px;}
}


/* v0.3.5 — consistent button system */
:root{
  --ph-button-radius:999px;
  --ph-button-height:46px;
  --ph-button-pad:0 22px;
}

.ph-btn,
.ph-header-cta,
.ph-footer .ph-footer-cta,
.poundhill-intake button,
.php-intake-form button,
.poundhill-pets-intake button,
.ph-booking-form-panel .phpets-button,
button.phpets-button,
a.phpets-button,
input[type="submit"].phpets-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:var(--ph-button-height)!important;
  padding:var(--ph-button-pad)!important;
  border-radius:var(--ph-button-radius)!important;
  border:0!important;
  text-decoration:none!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
  font-size:.84rem!important;
  line-height:1!important;
  cursor:pointer!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease!important;
}

.ph-btn:hover,
.ph-header-cta:hover,
.ph-footer .ph-footer-cta:hover,
.ph-booking-form-panel .phpets-button:hover,
button.phpets-button:hover,
a.phpets-button:hover,
input[type="submit"].phpets-button:hover{
  transform:translateY(-2px)!important;
}

.ph-btn--primary,
.ph-header-cta,
.ph-footer .ph-footer-cta,
.ph-booking-form-panel .phpets-button-primary,
button.phpets-button-primary,
a.phpets-button-primary,
input[type="submit"].phpets-button-primary{
  background:var(--ph-amber)!important;
  color:#211217!important;
  box-shadow:0 10px 22px rgba(45,25,25,.13)!important;
}

.ph-btn--primary:hover,
.ph-header-cta:hover,
.ph-footer .ph-footer-cta:hover,
.ph-booking-form-panel .phpets-button-primary:hover,
button.phpets-button-primary:hover,
a.phpets-button-primary:hover,
input[type="submit"].phpets-button-primary:hover{
  background:#ffc163!important;
  color:#211217!important;
  box-shadow:0 14px 28px rgba(45,25,25,.16)!important;
}

.ph-btn--secondary,
.poundhill-intake button:not(.phpets-button-primary),
.php-intake-form button:not(.phpets-button-primary),
.poundhill-pets-intake button:not(.phpets-button-primary),
.ph-booking-form-panel .phpets-button-secondary,
button.phpets-button-secondary,
a.phpets-button-secondary{
  background:var(--ph-plum)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(45,25,25,.13)!important;
}

.ph-btn--secondary:hover,
.ph-booking-form-panel .phpets-button-secondary:hover,
button.phpets-button-secondary:hover,
a.phpets-button-secondary:hover{
  background:#4a203d!important;
  color:#fff!important;
}

.ph-btn--light,
.ph-btn--ghost,
.ph-btn--ghost-light{
  background:#fff!important;
  color:var(--ph-plum)!important;
  box-shadow:0 8px 18px rgba(45,25,25,.10)!important;
}

.ph-header-cta{
  min-height:36px!important;
  padding:0 18px!important;
  font-size:.78rem!important;
}

.ph-final-cta-card .ph-btn,
.ph-center-action .ph-btn,
.ph-footer .ph-footer-cta{
  min-width:154px!important;
}

@media (max-width:640px){
  :root{--ph-button-height:44px;--ph-button-pad:0 18px;}
  .ph-header-cta{min-height:34px!important;padding:0 14px!important;font-size:.74rem!important;}
  .ph-final-cta-card .ph-btn,
  .ph-center-action .ph-btn,
  .ph-footer .ph-footer-cta{min-width:0!important;}
}


/* v0.3.6 — restore green final CTA and reinforce Protectivity seal link area */
.ph-final-cta{
  background:var(--ph-cream)!important;
  padding:62px 0 66px!important;
}
.ph-final-cta-card{
  background:var(--ph-green)!important;
  color:#fff!important;
  border:0!important;
  border-radius:30px!important;
  box-shadow:0 22px 48px rgba(45,25,25,.16)!important;
}
.ph-final-cta-card .ph-kicker{
  color:#ffe2ad!important;
}
.ph-final-cta-card h2{
  color:#fff!important;
}
.ph-final-cta-card p:not(.ph-kicker){
  color:rgba(255,255,255,.86)!important;
}
.ph-final-cta-card .ph-btn{
  background:#fff!important;
  color:var(--ph-plum)!important;
  box-shadow:0 12px 26px rgba(0,0,0,.14)!important;
}
.ph-final-cta-card .ph-btn:hover{
  background:var(--ph-amber)!important;
  color:#211217!important;
}
.ph-protectivity-seal{
  display:inline-flex!important;
  width:max-content!important;
  border-radius:10px!important;
}
.ph-protectivity-seal:focus-visible{
  outline:3px solid var(--ph-amber)!important;
  outline-offset:4px!important;
}
@media (max-width:640px){
  .ph-final-cta{padding:44px 0 48px!important;}
  .ph-final-cta-card{border-radius:24px!important;}
}


/* v0.3.7 — sticky menu with compact paw mark */
:root{
  --ph-sticky-offset:0px;
}
.admin-bar{
  --ph-sticky-offset:32px;
}
.ph-site-header{
  z-index:900!important;
}
.ph-nav-band{
  position:sticky!important;
  top:var(--ph-sticky-offset)!important;
  z-index:920!important;
  box-shadow:0 0 0 rgba(0,0,0,0);
  transition:box-shadow .22s ease, background .22s ease;
}
.ph-nav-inner{
  position:relative;
}
.ph-site-header.is-stuck .ph-nav-band{
  box-shadow:0 10px 26px rgba(25,10,22,.20);
}
.ph-sticky-logo{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%) translateX(-8px);
  display:inline-flex!important;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:4px 10px 4px 5px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.035em;
  font-size:.72rem;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease, background .2s ease;
}
.ph-sticky-logo img{
  width:26px;
  height:26px;
  object-fit:contain;
  display:block;
}
.ph-sticky-logo:hover{
  background:rgba(255,255,255,.14);
}
.ph-site-header.is-stuck .ph-sticky-logo{
  opacity:1;
  pointer-events:auto;
  transform:translateY(-50%) translateX(0);
}
@media (min-width:981px){
  .ph-site-header.is-stuck .ph-nav{
    padding-left:120px;
    padding-right:120px;
  }
}
@media (max-width:782px){
  .admin-bar{
    --ph-sticky-offset:46px;
  }
}
@media (max-width:980px){
  .ph-sticky-logo{
    position:static;
    transform:none;
    opacity:1;
    pointer-events:auto;
    margin-right:auto;
    background:rgba(255,255,255,.08);
  }
  .ph-sticky-logo span{
    display:none;
  }
  .ph-sticky-logo img{
    width:28px;
    height:28px;
  }
  .ph-nav-inner{
    gap:10px;
  }
  .ph-menu-toggle{
    order:2;
  }
  .ph-header-cta{
    order:3;
  }
  .ph-nav{
    top:100%!important;
  }
}


/* v0.3.8 — final CTA uses green section background, not a green card */
.ph-final-cta{
  background:var(--ph-green)!important;
  padding:64px 0!important;
}
.ph-final-cta-card{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  padding:0!important;
}
.ph-final-cta-card .ph-kicker{
  color:#ffe2ad!important;
}
.ph-final-cta-card h2{
  color:#fff!important;
}
.ph-final-cta-card p:not(.ph-kicker){
  color:rgba(255,255,255,.9)!important;
}
.ph-final-cta-card .ph-btn{
  background:#fff!important;
  color:var(--ph-plum)!important;
  box-shadow:0 12px 26px rgba(0,0,0,.14)!important;
}
.ph-final-cta-card .ph-btn:hover{
  background:var(--ph-amber)!important;
  color:#211217!important;
}
@media (max-width:640px){
  .ph-final-cta{padding:46px 0!important;}
}


/* v0.3.9 — service card photo crops */
.ph-card-media--walk{background-position:center 64%}
.ph-card-media--puppy{background-position:center 72%}
.ph-card-media--smallpets{background-position:center 54%}
@media (max-width: 760px){
  .ph-card-media--walk{background-position:center 60%}
  .ph-card-media--puppy{background-position:center 70%}
}

/* v0.3.10 booking hero centering fix */
.ph-page-hero--booking{background-position:center 72%;}
@media (min-width:981px){.ph-page-hero--booking{min-height:460px;background-position:center 72%;}}
@media (max-width:980px){.ph-page-hero--booking{min-height:300px;background-position:center 68%;}}
@media (max-width:640px){.ph-page-hero--booking{min-height:260px;background-position:center 66%;}}

/* v0.3.11 price hero panoramic image tuning */
.ph-page-hero--price{background-position:62% 58%;}
@media (min-width:981px){.ph-page-hero--price{min-height:420px;background-position:62% 58%;}}
@media (max-width:980px){.ph-page-hero--price{min-height:320px;background-position:68% 56%;}}
@media (max-width:640px){.ph-page-hero--price{min-height:260px;background-position:72% 58%;}}


/* v0.3.12 reliable sticky menu */
.ph-main-nav{
  position:sticky;
  top:0;
  z-index:9990;
}
body.admin-bar .ph-main-nav{
  top:32px;
}
@media (max-width:782px){
  body.admin-bar .ph-main-nav{
    top:46px;
  }
}
.ph-main-nav.is-sticky,
.ph-main-nav{
  box-shadow:0 6px 18px rgba(0,0,0,.16);
}
.ph-main-nav .ph-sticky-paw{
  opacity:0;
  transform:translateY(-2px);
  transition:opacity .18s ease, transform .18s ease;
}
.ph-main-nav.is-sticky .ph-sticky-paw{
  opacity:1;
  transform:translateY(0);
}
@media (max-width:980px){
  .ph-main-nav .ph-sticky-paw{
    opacity:1;
    transform:none;
  }
}


/* v0.3.12 actual header sticky fix */
.ph-nav-band{
  position:sticky;
  top:0;
  z-index:9990;
  box-shadow:0 6px 18px rgba(0,0,0,.16);
}
body.admin-bar .ph-nav-band{
  top:32px;
}
@media (max-width:782px){
  body.admin-bar .ph-nav-band{
    top:46px;
  }
}
.ph-sticky-logo{
  opacity:0;
  pointer-events:none;
  transform:translateY(-2px);
  transition:opacity .18s ease, transform .18s ease;
}
.ph-site-header.is-sticky .ph-sticky-logo,
body.is-scrolled .ph-sticky-logo{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
@media (max-width:980px){
  .ph-sticky-logo{
    opacity:1;
    pointer-events:auto;
    transform:none;
  }
}


/* v0.3.13 robust fixed-on-scroll menu */
.ph-site-header{
  position:relative;
  z-index:9990;
}
.ph-nav-band{
  position:relative !important;
  top:auto !important;
  left:auto;
  right:auto;
  width:100%;
  z-index:9995;
}
.ph-nav-spacer{
  display:none;
  height:0;
}
body.ph-nav-is-fixed .ph-nav-band{
  position:fixed !important;
  top:0 !important;
  left:0;
  right:0;
  width:100%;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}
body.admin-bar.ph-nav-is-fixed .ph-nav-band{
  top:32px !important;
}
@media (max-width:782px){
  body.admin-bar.ph-nav-is-fixed .ph-nav-band{
    top:46px !important;
  }
}
body.ph-nav-is-fixed .ph-nav-spacer{
  display:block;
}
body.ph-nav-is-fixed .ph-sticky-logo{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}


/* v0.3.14 sticky logo alignment */
.ph-nav-inner{
  position:relative;
}
.ph-sticky-logo{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  display:inline-flex;
  align-items:center;
  gap:6px;
  height:28px;
  line-height:1;
  margin:0;
  white-space:nowrap;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#fff;
  text-decoration:none;
}
.ph-sticky-logo img{
  width:24px;
  height:24px;
  object-fit:contain;
  display:block;
  flex:0 0 24px;
}
.ph-nav{
  margin-inline:auto;
}
body.ph-nav-is-fixed .ph-sticky-logo{
  opacity:1;
  pointer-events:auto;
  transform:translateY(-50%);
}
@media (min-width:981px){
  body:not(.ph-nav-is-fixed) .ph-sticky-logo{
    opacity:0;
    pointer-events:none;
  }
  body.ph-nav-is-fixed .ph-nav-inner{
    padding-left:118px;
    padding-right:180px;
  }
}
@media (max-width:980px){
  .ph-sticky-logo{
    position:static;
    transform:none;
    height:auto;
    opacity:1;
    pointer-events:auto;
  }
  body.ph-nav-is-fixed .ph-sticky-logo{
    transform:none;
  }
}

/* v0.3.15 sticky paw refinement */
@media (min-width:981px){
  .ph-sticky-logo{gap:0;width:30px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.08);justify-content:center;}
  .ph-sticky-logo span{display:none;}
  .ph-sticky-logo img{width:18px;height:18px;flex:0 0 18px;}
  body.ph-nav-is-fixed .ph-nav-inner{padding-left:48px;padding-right:180px;}
  body:not(.ph-nav-is-fixed) .ph-sticky-logo{opacity:0;pointer-events:none;}
  body.ph-nav-is-fixed .ph-sticky-logo{opacity:1;pointer-events:auto;}
}


/* v0.3.16 clean sticky nav: no desktop logo compensation */
@media (min-width:981px){
  .ph-sticky-logo{
    display:none !important;
  }
  .ph-nav-inner,
  body.ph-nav-is-fixed .ph-nav-inner{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .ph-nav{
    margin-left:auto !important;
    margin-right:auto !important;
  }
}


/* v0.3.17 clean sticky menu alignment */
@media (min-width:981px){
  .ph-sticky-logo{
    display:none !important;
  }

  .ph-nav-inner,
  body.ph-nav-is-fixed .ph-nav-inner{
    display:flex;
    justify-content:flex-start !important;
    align-items:center;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .ph-nav,
  body.ph-nav-is-fixed .ph-nav{
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .ph-menu{
    justify-content:flex-start !important;
  }

  .ph-header-cta{
    margin-left:auto !important;
  }
}


/* v0.3.18 final sticky nav alignment */
@media (min-width:981px){
  .ph-nav-band .ph-sticky-logo{
    display:none !important;
  }

  .ph-nav-band .ph-nav-inner,
  body.ph-nav-is-fixed .ph-nav-band .ph-nav-inner{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    align-items:center !important;
    justify-content:initial !important;
    gap:24px !important;
    min-height:50px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .ph-nav-band .ph-menu-toggle{
    display:none !important;
  }

  .ph-nav-band .ph-nav,
  body.ph-nav-is-fixed .ph-nav-band .ph-nav{
    display:block !important;
    width:auto !important;
    margin:0 !important;
    justify-self:start !important;
  }

  .ph-nav-band .ph-menu,
  body.ph-nav-is-fixed .ph-nav-band .ph-menu{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  .ph-nav-band .ph-menu > li{
    margin:0 !important;
    padding:0 !important;
  }

  .ph-nav-band .ph-menu a{
    display:flex !important;
    align-items:center !important;
    min-height:50px !important;
    padding:0 18px !important;
    line-height:1 !important;
  }

  .ph-nav-band .ph-header-cta{
    justify-self:end !important;
    margin-left:0 !important;
    min-height:34px !important;
    padding:0 22px !important;
  }
}


/* v0.3.19 remove old sticky nav padding */
@media (min-width:981px){
  .ph-site-header.is-stuck .ph-nav,
  .ph-site-header.is-sticky .ph-nav,
  body.is-scrolled .ph-nav,
  body.ph-nav-is-fixed .ph-nav{
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .ph-nav-band .ph-nav-inner,
  .ph-site-header.is-stuck .ph-nav-inner,
  .ph-site-header.is-sticky .ph-nav-inner,
  body.ph-nav-is-fixed .ph-nav-inner{
    padding-left:0 !important;
    padding-right:0 !important;
  }
}


/* v0.3.20 font consistency fix
   Avoid local-only fonts such as Arial Rounded MT Bold, because logged-in/cached/incognito
   views can render different fallback fonts. Use one consistent system stack everywhere. */
:root{
  --ph-font-body: Arial, Helvetica, sans-serif;
  --ph-font-heading: Arial, Helvetica, sans-serif;
}

body,
button,
input,
select,
textarea,
.ph-menu a,
.ph-header-cta,
.ph-btn{
  font-family:var(--ph-font-body) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.ph-hero-panel h1,
.ph-section h2,
.ph-page-hero h1,
.ph-card-body h3,
.ph-steps h3,
.ph-content h2,
.ph-text-card h2,
.ph-footer h2,
.ph-booking-aside h2,
.poundhill-intake h1,
.poundhill-intake h2,
.poundhill-intake h3,
.php-intake-form h1,
.php-intake-form h2,
.php-intake-form h3,
.poundhill-pets-intake h1,
.poundhill-pets-intake h2,
.poundhill-pets-intake h3{
  font-family:var(--ph-font-heading) !important;
  font-weight:900;
}

/* Keep headings friendly without relying on unavailable rounded fonts. */
.ph-page-hero h1,
.ph-hero-panel h1,
.ph-section h2,
.ph-booking-aside h2{
  letter-spacing:-0.045em;
}



/* v0.3.21 top header colour */
.ph-logo-band{
  background:#dff4ff !important;
}


/* v0.3.24 mobile nav cleanup: remove paw icon, burger left */
.ph-sticky-logo{
  display:none !important;
}

@media (max-width:980px){
  .ph-nav-inner{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:12px !important;
  }

  .ph-menu-toggle{
    grid-column:1 !important;
    justify-self:start !important;
    margin:0 !important;
  }

  .ph-header-cta{
    grid-column:3 !important;
    justify-self:end !important;
    margin:0 !important;
  }

  .ph-nav{
    grid-column:1 / -1 !important;
  }
}
