/* Published homepage categories: isolated from existing menu navigation tiles. */
#siteHomeCategories[hidden]{display:none!important}
#siteHomeCategories{margin:24px 0 32px}
#siteHomeCategories>h2{margin:0 0 14px}
.home-category-grid{display:grid;grid-template-columns:repeat(var(--hc-desktop-cols,4),minmax(0,1fr));gap:var(--hc-gap,12px)}
.home-category-card{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;min-width:0;min-height:0;
 padding:var(--hc-padding,8px);gap:var(--hc-title-gap,8px);border:var(--hc-border,1px solid #ddd);
 border-radius:var(--hc-card-radius,12px);background:var(--hc-card-background,transparent);
 box-shadow:var(--hc-shadow,none);overflow:hidden;text-decoration:none;color:inherit;transform:translateY(0) scale(1);
 transition:transform .2s ease,box-shadow .2s ease}
.home-category-photo{position:relative;display:grid;place-items:center;aspect-ratio:var(--hc-image-ratio,1 / 1);
 min-height:0;min-width:0;overflow:hidden;border-radius:var(--hc-photo-radius,8px);
 background:linear-gradient(135deg,#47352a,#b77938)}
.home-category-photo picture{display:block;position:absolute;inset:0;width:100%;height:100%}
.home-category-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:var(--hc-photo-x,50%) var(--hc-photo-y,50%)}
.home-category-no-image span{padding:12px;color:#fff;font-size:12px;text-align:center}
.home-category-name{display:block;overflow-wrap:anywhere;text-align:var(--hc-title-align,center);
 color:var(--hc-title-color,#222);font-size:var(--hc-title-size,15px);font-weight:var(--hc-title-weight,700);
 line-height:1.25;margin:0;min-width:0}
.home-category-overlay .home-category-name{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:22px 8px 10px;
 background:linear-gradient(transparent,rgba(0,0,0,.82));text-shadow:0 1px 2px #000}
.home-category-card:focus-visible{outline:3px solid #f58b25;outline-offset:2px}
@media(hover:hover) and (pointer:fine){
 #siteHomeCategories.hc-hover-lift .home-category-card:hover{transform:translateY(-5px)}
 #siteHomeCategories.hc-hover-zoom .home-category-card:hover{transform:scale(1.04)}
}
@media(max-width:600px){.home-category-grid{grid-template-columns:repeat(var(--hc-mobile-cols,2),minmax(0,1fr))}.home-category-photo img{object-position:var(--hc-mobile-photo-x,50%) var(--hc-mobile-photo-y,50%)}}
@media(prefers-reduced-motion:reduce){.home-category-card{transition:none}}
