body { background:linear-gradient(180deg,#fffaf5 0,#fbefe5 540px,#fff 540px); }
.homeBannerSlide h1 { font-size:clamp(32px,4vw,58px);line-height:1.1;max-width:660px;margin:20px 0;letter-spacing:-1.4px; }
.homeBannerShade { background:linear-gradient(90deg,rgba(255,250,245,.98),rgba(255,250,245,.94) 45%,rgba(255,250,245,.20)); }
.homeBannerContent { color:var(--ink); }
.homeBannerBrand img { background:#fffaf5;border-radius:14px;padding:5px; }
.brandLogoImage { border-radius:14px;background:#fffaf5; }
.contentHtmlBody { line-height:1.85; }
.contentHtmlBody section { margin:26px 0; }
.contentHtmlBody h2 { margin:30px 0 14px;color:var(--primary-dark);font-size:26px; }
.contentHtmlBody h3 { margin:22px 0 10px; }
.contentHtmlBody p { margin:12px 0; }
.contentHtmlBody ul,.contentHtmlBody ol { padding-left:24px; }
.contentHtmlBody table { width:100%;border-collapse:collapse;display:block;overflow-x:auto; }
.contentHtmlBody th,.contentHtmlBody td { padding:12px;border:1px solid var(--line); }
.contentHtmlBody a { color:var(--primary-dark);text-decoration:underline; }
.contentHeroImage { background:#fffaf5; }
.articleSidebar a,.footerContact a { display:block;margin:12px 0; }
.contactPageGrid { grid-template-columns:1fr; }
.contactMapPanel { display:none; }
.contactInfoPanel dl div:has(dd:empty),.contactInfoPanel dl div:has(a[href="tel:"]),.contactInfoPanel dl div:has(a[href="mailto:"]) { display:none; }
#seoPrerender { padding:24px;max-width:1000px;margin:auto;line-height:1.7; }
#seoPrerender img { max-width:100%; }
@media(max-width:700px){.homeBannerSlide h1{font-size:34px;letter-spacing:-.7px}.contentHtmlBody h2{font-size:22px}.homeBannerShade{background:rgba(255,250,245,.94)}}
.trustGrid { display:grid; }
.categoryVisualCard::before { content:'PetLife' !important; }
.catalogLanding { background:linear-gradient(180deg,#fffaf5,#fbefe5 450px,#fff 450px); }
.litterCostTool { padding:24px;background:var(--soft);border:1px solid var(--line);border-radius:18px;margin:28px 0; }
.litterCostTool label { display:grid;gap:8px;margin:16px 0;font-weight:600; }
.litterCostTool input { width:100%;max-width:360px;padding:12px;border:1px solid var(--line);border-radius:8px;font:inherit; }
.litterCostTool output { display:block;color:var(--primary-dark);font-size:22px;font-weight:700; }

/* Warm ivory and peach: keep text and actions clear on the light hero. */
.homeBannerSlider { background:var(--soft);box-shadow:0 18px 45px rgba(81,59,50,.08); }
.homeBannerContent > span { color:var(--primary); }
.homeBannerContent p { color:var(--muted); }
.homeBannerActions .primaryAction { background:var(--primary);color:#fff;box-shadow:0 8px 20px rgba(162,93,69,.16); }
.homeBannerActions .primaryAction:hover,.homeBannerActions .primaryAction:focus-visible { background:var(--primary-dark);box-shadow:0 10px 24px rgba(81,59,50,.18); }
.homeBannerActions .secondaryAction { background:rgba(255,255,255,.75);color:var(--primary-dark);border-color:var(--line); }
.homeBannerActions .secondaryAction:hover,.homeBannerActions .secondaryAction:focus-visible { background:var(--soft);border-color:var(--primary); }
.homeBannerProductLine span { background:var(--soft);color:var(--primary-dark);border-color:var(--line); }
.footer { background:var(--soft);color:var(--ink);border-top:1px solid var(--line); }
.footerBrand strong,.footer h3 { color:var(--primary-dark); }
.footerBrand small,.footer p,.footer a,.footer span,.footerBottom { color:var(--muted); }
.footerBottom { border-top-color:var(--line); }
.homeBannerSlider { border-color:var(--line); }
.navInner a.active,.navInner a:hover,.heroVisual small,.sectionHead span,.categoryStrip span,.homeImageTextCopy > span,.articleHubHero span,.contentHero span,.articleListHead span,.priceCatalogHead span,.quoteFormHead span,.checkoutTitleRow span,.checkoutTotals div:last-child dd,.productDetailSupport span { color:var(--primary); }
/* Lifestyle photo: retain its natural light and show the subject on phones. */
.homeBannerSlide > img { filter:none;object-position:75% center; }
.homeBannerShade { background:linear-gradient(90deg,rgba(255,250,245,.94),rgba(255,250,245,.82) 43%,rgba(255,250,245,.05) 68%); }
@media(max-width:700px){
 .homeBannerSlider { min-height:850px; }
 .homeBannerSlide > img { height:265px;object-position:85% center; }
 .homeBannerShade { background:linear-gradient(180deg,rgba(255,250,245,0) 190px,var(--background) 270px); }
 .homeBannerContent { padding:290px 24px 28px; }
}
