/* Merchant-specific contrast: use Paw Hub's warm chocolate/olive and Catfé
   Māo's botanical palette, never a generic cross-tenant paint override.
   Dynamic primary and foreground values are paired by contrast-utils.js. */
body[data-product]{--studio-primary-contrast:#fff;--studio-accent-ink:#36553b}
body[data-product] :is(input,textarea)::placeholder{color:#566657;opacity:1}
body[data-product] :is(a,button,input,select,textarea,summary):focus-visible{
 outline:3px solid #8a4c2b;outline-offset:3px
}
body[data-product] button:disabled{
 opacity:1!important;background:#e6eae3!important;color:#45574b!important;
 border:1px solid #bac9bd!important;box-shadow:none!important;
 filter:none!important;cursor:not-allowed;transform:none!important
}
body[data-product=grooming]{
 --studio-primary:#483126;--studio-accent:#829b40;
 --studio-primary-contrast:#fff;--studio-accent-ink:#4a6124
}
body[data-product=grooming] .site-header .btn-primary,
body[data-product=grooming] .phb-submit .btn-primary,
body[data-product=grooming] .ph-hero-actions .btn-primary,
body[data-product=grooming] .phb-bottom-action .btn-primary,
body[data-product=grooming] .phb-filters button[aria-pressed=true],
body[data-product=grooming] .phfaq-topics button[aria-pressed=true]{
 background:var(--studio-primary,#483126);
 color:var(--studio-primary-contrast,#fff);
 border-color:var(--studio-primary,#483126)
}
body[data-product=grooming] .site-header .btn-primary:hover,
body[data-product=grooming] .phb-submit .btn-primary:hover,
body[data-product=grooming] .ph-hero-actions .btn-primary:hover,
body[data-product=grooming] .phb-bottom-action .btn-primary:hover,
body[data-product=grooming] .phb-filters button[aria-pressed=true]:hover,
body[data-product=grooming] .phfaq-topics button[aria-pressed=true]:hover{
 background:var(--studio-primary,#483126);
 color:var(--studio-primary-contrast,#fff);
 box-shadow:0 7px 21px rgba(34,29,24,.19)
}
body[data-product=grooming] .phfaq-topics button[aria-pressed=true] small{
 color:var(--studio-primary-contrast,#fff)
}
body[data-product=grooming] .site-header .btn-primary,
body[data-product=grooming] .ph-hero-actions .btn-primary{
 outline:1px solid color-mix(in srgb,var(--studio-primary-contrast,#fff) 52%,transparent);
 outline-offset:0
}
body[data-product=grooming] .btn-primary{
 color:#202e10;background:#9aad43
}
body[data-product=grooming] .btn-primary:hover{
 color:#202e10;background:#c0d36b
}
/* Re-apply tailored foreground after the general lime-primary declaration. */
body[data-product=grooming] .site-header .btn-primary,
body[data-product=grooming] .phb-submit .btn-primary,
body[data-product=grooming] .ph-hero-actions .btn-primary,
body[data-product=grooming] .phb-bottom-action .btn-primary{
 color:var(--studio-primary-contrast,#fff)
}
body[data-product=grooming] .site-header .btn-primary:hover,
body[data-product=grooming] .phb-submit .btn-primary:hover,
body[data-product=grooming] .ph-hero-actions .btn-primary:hover,
body[data-product=grooming] .phb-bottom-action .btn-primary:hover{
 color:var(--studio-primary-contrast,#fff);
 background:var(--studio-primary,#483126)
}
body[data-product=grooming] .site-header .btn-outline{
 color:#f9f2e9;background:transparent;border-color:#d4c9ba
}
body[data-product=grooming] .site-header .btn-outline:hover{
 color:#2e231b;background:#f7f4ed;border-color:#f7f4ed
}
body[data-product=grooming] .site-header :is(a,button):focus-visible,
body[data-product=grooming] .ph-hero :is(a,button):focus-visible,
body[data-product=grooming] .cta :is(a,button):focus-visible{
 outline:3px solid #e6f39e;outline-offset:4px;
 box-shadow:0 0 0 6px #483126
}
body[data-product=grooming] .section-head .eyebrow,
body[data-product=grooming] .page-hero .eyebrow,
body[data-product=grooming] .ph-intro-copy>span,
body[data-product=grooming] .ph-section-kicker,
body[data-product=grooming] .phb-eyebrow,
body[data-product=grooming] .phfaq-kicker{
 color:var(--studio-accent-ink,#4a6124)
}
body[data-product=grooming] .service-card a,
body[data-product=grooming] .card-end,
body[data-product=grooming] .phb-price-details summary,
body[data-product=grooming] .phb-size-guide summary,
body[data-product=grooming] .phb-context-faq a,
body[data-product=grooming] .phb-enquiry-link,
body[data-product=grooming] .phb-summary>a{
 color:#405823
}
body[data-product=grooming] .phfaq-topics button:not([aria-pressed=true]) small,
body[data-product=grooming] .phfaq-group-count{
 color:#405b28
}
body[data-product=grooming] .phfaq-empty button{color:#fff;background:#466124}
body[data-product=grooming] .phfaq-empty button:hover{color:#fff;background:#344a19}
body[data-product=grooming] .phb-field input::placeholder,
body[data-product=grooming] .phb-field textarea::placeholder{color:#5e564a;opacity:1}
body[data-product=grooming] :is(.phb-count,.phb-price-note,.phb-summary dt,
 .phb-summary>p,.phb-card-desc){color:#5c554a}
body[data-product=grooming] .ph-home-intro-details span:before{
 color:#4d6624;background:#ecf1d8
}
body[data-product=grooming] .ph-hero-actions .btn-outline,
body[data-product=grooming] .ph-hero-actions .btn-outline:hover{
 color:#fff;border-color:#fff
}
body[data-product=grooming] .ph-hero-actions .btn-outline:hover{background:rgba(255,255,255,.16)}
body[data-product=grooming] .phfaq-topics button,
body[data-product=grooming] .phb-filters button{
 font-weight:800
}
/* Catfé boarding */
body[data-product=boarding]{
 --muted:#506351;
 --studio-primary:#405a41;--studio-accent:#9d896e;
 --studio-primary-contrast:#fff;--studio-accent-ink:#70533e
}
body[data-product=boarding] .btn-primary,
body[data-product=boarding] .cb-faq-filters button[aria-pressed=true]{
 background:var(--studio-primary,#405a41);
 color:var(--studio-primary-contrast,#fff);
 border-color:var(--studio-primary,#405a41)
}
body[data-product=boarding] .btn-primary:hover,
body[data-product=boarding] .cb-faq-filters button[aria-pressed=true]:hover{
 background:var(--studio-primary,#405a41);
 color:var(--studio-primary-contrast,#fff);
 box-shadow:0 7px 20px rgba(30,62,38,.14)
}
body[data-product=boarding] .cb-faq-filters button[aria-pressed=true] small{
 color:var(--studio-primary-contrast,#fff)
}
body[data-product=boarding] .cb-eyebrow,
body[data-product=boarding] .cb-intro-copy h1 em{
 color:var(--studio-accent-ink,#70533e)
}
body[data-product=boarding] .cb-photo-choices button small,
body[data-product=boarding] .cb-faq-filters button:not([aria-pressed=true]) small,
body[data-product=boarding] .cm-care-item span,
body[data-product=boarding] .cb-intro-facts span,
body[data-product=boarding] .cm-hero-facts span,
body[data-product=boarding] .cb-journey-index{color:#456046}
body[data-product=boarding] .cb-photo-choices button[aria-pressed=true]{
 border-color:#426846;background:#e6f0e3
}
body[data-product=boarding] .cb-photo-choices button[aria-pressed=true] span{color:#244f31}
body[data-product=boarding] .cb-home-hero-meta span{
 color:#3b5c42;background:#f6f8f2
}
body[data-product=boarding] .catfe-cafe-showcase .cfc-hero-facts span{
 color:#3e5e41;background:#f7f9f3
}
body[data-product=boarding] :is(.cm-gallery-footer,.cb-photo-caption,.cm-location-tag,
 .cm-hero-mark small,.cm-hero-loc span,.cm-care-item p,.cm-address-strip p){
 color:#4a654e
}
body[data-product=boarding] .cb-destination a,
body[data-product=boarding] .cm-contact-quick a{
 color:#2d5638
}
body[data-product=boarding] .site-header :is(a,button):focus-visible{
 outline-color:#a36d37
}
body[data-product=boarding] .cb-section :is(a,button):focus-visible,
body[data-product=boarding] .cb-form-card :is(a,button,input):focus-visible{
 outline:3px solid #725131;outline-offset:3px
}
@media(max-width:620px){
 body[data-product=grooming] .phb-filters button,
 body[data-product=grooming] .phfaq-topics button,
 body[data-product=boarding] .cb-faq-filters button{font-size:12px;min-height:43px}
 body[data-product=boarding] .cb-photo-choices button small{font-size:11px}
 body[data-product] :is(.btn,.btn-sm){font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 body[data-product] .btn:hover{transform:none!important}
}