/* Homepage catalog presentation. Keep the existing product-list category rails scoped separately. */
body[data-zp-design="public"] #app main.zp-home.ap-page > :is(#home-product-categories,#home-featured-products) {
  display:block!important;position:relative;box-sizing:border-box;width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;
  margin:0!important;padding:clamp(28px,2vw,48px) clamp(18px,2.2vw,60px)!important;border:0;border-radius:0;background:#fffdf9!important;color:#103b38;text-align:left!important;
}
body[data-zp-design="public"] #app main.zp-home.ap-page > #home-product-categories {padding-bottom:clamp(20px,1.5vw,34px)!important;}
body[data-zp-design="public"] #app main.zp-home.ap-page > #home-featured-products {padding-top:clamp(16px,1.3vw,30px)!important;padding-bottom:clamp(38px,3vw,68px)!important;}
#app :is(#home-product-categories,#home-featured-products) *,#app :is(#home-product-categories,#home-featured-products) *::before {box-sizing:border-box;}
#app .zp-home-categories-v2 .zp-products-shell,#app .zp-home-featured-v2 .zp-products-shell {display:block!important;grid-template-columns:none!important;width:100%!important;max-width:2240px!important;margin:0 auto!important;padding:0!important;}
#app #home-product-categories .zp-products-heading {display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 clamp(24px,1.8vw,38px);}
#app :is(#home-product-categories,#home-featured-products) h2 {font:700 clamp(30px,2.35vw,46px)/1.14 Arial,Helvetica,sans-serif!important;letter-spacing:-.035em!important;color:#103b38!important;margin:0!important;}
#app #home-product-categories a.zp-products-all {display:inline-flex;align-items:center;gap:12px;flex:none;min-height:44px;padding:4px 0!important;font:500 clamp(14px,1vw,18px)/1.4 Arial,Helvetica,sans-serif!important;color:#123b5b!important;text-decoration:none!important;white-space:nowrap;background:none!important;border:0;border-radius:0;box-shadow:none;}
#app #home-product-categories .zp-products-category-grid {display:grid;grid-template-columns:1fr 1.05fr .9fr 1.35fr 1.05fr 1.15fr 1.2fr;gap:12px;}
#app #home-product-categories a.zp-products-category {display:flex;align-items:center;justify-content:flex-start;gap:clamp(8px,.7vw,16px);min-width:0;min-height:clamp(90px,5.5vw,120px);margin:0;padding:10px 12px!important;border:1px solid #e8dfd4;border-radius:12px;background:#fdfaf5;color:#103b38!important;text-decoration:none!important;box-shadow:none;transform:none!important;}
#app #home-product-categories .zp-products-category-photo {display:block;flex:0 1 34%;min-width:0;width:34%;height:clamp(66px,4.5vw,96px);}
#app #home-product-categories .zp-products-category-label {display:flex;flex:1;align-items:center;justify-content:space-between;gap:7px;min-width:0;font:500 clamp(11px,.78vw,15px)/1.4 Arial,Helvetica,sans-serif!important;letter-spacing:-.025em;color:#103b38!important;}
#app #home-product-categories .zp-products-category-label svg {width:19px;height:19px;flex:none;color:#ed8040;}
#app #home-product-categories .zp-products-all svg {width:24px;height:24px;color:#ed8040;}
#app :is(#home-product-categories,#home-featured-products) .zp-products-photo {display:block;width:100%;height:100%;overflow:hidden;}
#app #home-featured-products .zp-featured-heading {margin:0 0 24px;}
#app #home-featured-products .zp-featured-heading p {font:400 clamp(16px,1.25vw,23px)/1.5 Arial,Helvetica,sans-serif!important;color:#7b8790!important;letter-spacing:-.02em!important;margin:4px 0 0!important;}
#app #home-featured-products .zp-featured-grid {display:grid;grid-template-columns:1.12fr 1.02fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch;}
#app #home-featured-products a.zp-featured-card {display:flex;flex-direction:column;min-width:0;min-height:0;margin:0;padding:0!important;overflow:hidden;border:1px solid #e4dcd1;border-radius:12px;background:#fffdf9;color:#103b38!important;text-decoration:none!important;box-shadow:none;transform:none!important;}
#app #home-featured-products .zp-featured-large {grid-row:span 2;}
#app #home-featured-products .zp-featured-feeding {grid-column:3;grid-row:1;}
#app #home-featured-products .zp-featured-travel {grid-column:3;grid-row:2;}
#app #home-featured-products .zp-featured-photo {display:block;position:relative;flex:none;overflow:hidden;background:radial-gradient(ellipse at 46% 38%,#f3e9dc,#ede1d2);}
#app #home-featured-products .zp-featured-large .zp-featured-photo {aspect-ratio:1.5;}
#app #home-featured-products .zp-featured-litter .zp-featured-photo {aspect-ratio:1.36;}
#app #home-featured-products .zp-featured-cover {position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:contain;opacity:0;transform:none!important;background:#f6eee3;mix-blend-mode:multiply;}
#app #home-featured-products .zp-featured-cover.is-loaded {opacity:1;}
#app #home-featured-products .zp-featured-copy {display:flex;flex:1;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:18px 22px;}
#app #home-featured-products h3 {font:700 clamp(18px,1.25vw,24px)/1.2 Arial,Helvetica,sans-serif!important;letter-spacing:-.03em!important;color:#103b38!important;margin:0 0 5px!important;overflow-wrap:anywhere;}
#app #home-featured-products .zp-featured-copy p {font:400 clamp(13px,.95vw,17px)/1.4 Arial,Helvetica,sans-serif!important;color:#7b8790!important;margin:0!important;}
#app #home-featured-products .zp-featured-details {display:inline-flex;align-items:center;justify-content:flex-start;gap:12px;flex:none;min-height:44px;max-width:100%;padding:4px 0!important;border:0;border-radius:0;background:none!important;color:#123b5b!important;font:500 clamp(14px,1vw,18px)/1.4 Arial,Helvetica,sans-serif!important;white-space:nowrap;}
#app #home-featured-products .zp-featured-details svg {width:24px;height:24px;flex:none;color:#ed8040;}
#app #home-featured-products a.zp-featured-small {display:grid;grid-template-columns:57% 43%;}
#app #home-featured-products .zp-featured-small .zp-featured-copy {flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:20px;}
#app #home-featured-products .zp-featured-small h3 {font-size:clamp(16px,1.05vw,20px)!important;}
#app :is(#home-product-categories,#home-featured-products) a:focus-visible {outline:3px solid #b87a3f;outline-offset:4px;}
#app #home-product-categories a.zp-products-category:hover,#app #home-featured-products a.zp-featured-card:hover {border-color:#c1b299;}
#app #home-featured-products a.zp-featured-card:hover .zp-featured-details,#app #home-product-categories a.zp-products-all:hover {text-decoration:underline!important;text-underline-offset:4px;}
#app:has(:is(#home-product-categories,#home-featured-products)[data-zp-in-view="true"]) .zzfloat-contact {opacity:0!important;visibility:hidden!important;pointer-events:none!important;}
@media(max-width:1500px){
  #app #home-product-categories .zp-products-category-grid {grid-template-columns:repeat(4,minmax(0,1fr));}
  #app #home-product-categories .zp-products-category-label {font-size:14px!important;}
  #app #home-featured-products .zp-featured-copy {padding:16px;gap:12px;}
  #app #home-featured-products .zp-featured-large .zp-featured-copy {flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;}
  #app #home-featured-products .zp-featured-large .zp-featured-details {margin-top:auto;}
  #app #home-featured-products .zp-featured-small .zp-featured-copy {padding:14px;gap:12px;}
}
@media(max-width:1050px){
  #app #home-product-categories .zp-products-category-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:1200px){
  #app #home-featured-products .zp-featured-grid {grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:16px;}
  #app #home-featured-products .zp-featured-large {grid-row:1;}
  #app #home-featured-products .zp-featured-feeding {grid-column:1;grid-row:2;}
  #app #home-featured-products .zp-featured-travel {grid-column:2;grid-row:2;}
  #app #home-featured-products .zp-featured-large .zp-featured-copy {flex:1;}
  #app #home-featured-products a.zp-featured-small {grid-template-columns:1fr;}
  #app #home-featured-products .zp-featured-small .zp-featured-photo {aspect-ratio:1.5;}
  #app #home-featured-products .zp-featured-small .zp-featured-copy {flex-direction:row;justify-content:space-between;align-items:center;padding:16px;}
}
@media(max-width:680px){
  #app #home-product-categories .zp-products-heading {align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:18px;}
  #app #home-product-categories .zp-products-category-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  #app #home-product-categories a.zp-products-category {padding:8px!important;gap:8px;min-height:88px;}
  #app #home-product-categories .zp-products-category-label {font-size:12px!important;gap:4px;}
  #app #home-product-categories .zp-products-category-label svg {width:16px;height:16px;}
  #app #home-featured-products .zp-featured-grid {display:flex;flex-direction:column;gap:16px;}
  #app #home-featured-products .zp-featured-large .zp-featured-copy {flex-direction:row;align-items:center;justify-content:space-between;gap:12px;}
  #app #home-featured-products .zp-featured-large .zp-featured-details {margin-top:0;}
  #app #home-featured-products .zp-featured-small .zp-featured-copy {padding:16px;}
  #app #home-featured-products :is(.zp-featured-large,.zp-featured-small) .zp-featured-copy {flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;}
  #app #home-featured-products h3 {font-size:20px!important;}
  #app #home-featured-products .zp-featured-small h3 {font-size:20px!important;}
}
