/* DIVSA white-label homepage experience layer — scoped to [divsa_home]. */
.tap-home-root.tap-home-exp-service_first{--tap-home-gap:32px}.tap-home-root.tap-home-exp-marketplace{--tap-home-gap:22px}.tap-home-root.tap-home-exp-devotional{--tap-home-gap:42px}.tap-home-root.tap-home-exp-minimal{--tap-home-gap:52px}
.tap-home-root .tap-home-section{scroll-margin-top:72px}.tap-home-root .tap-home-promo{padding:var(--tap-home-gap,32px) 0}.tap-home-promo__head{text-align:center;margin:0 auto 20px;max-width:760px}.tap-home-promo__head h2{margin:0 0 6px;font-family:var(--tap-font-heading,inherit)}.tap-home-promo__head p{margin:0;color:var(--tap-muted,#6b5b78)}
.tap-home-promo__grid{display:grid;grid-template-columns:repeat(var(--tap-promo-cols,4),minmax(0,1fr));gap:var(--tap-promo-gap,16px)}.tap-home-promo__card{position:relative;display:flex;min-height:var(--tap-promo-height,220px);border-radius:var(--tap-card-radius,18px);overflow:hidden;background:var(--tap-surface,#fff);border:1px solid var(--tap-line,#ece6f2);color:inherit;text-decoration:none;box-shadow:var(--tap-shadow-sm,0 8px 24px rgba(28,20,40,.07));text-align:var(--tap-promo-align,left)}.tap-home-promo__media{position:absolute;inset:0}.tap-home-promo__media img{width:100%;height:100%;object-fit:var(--tap-promo-fit,cover);display:block}.tap-home-promo__shade{position:absolute;inset:30% 0 0;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--tap-promo-shade-color,#160d23) var(--tap-promo-shade-strength,78%),transparent))}.tap-home-promo__body{position:relative;z-index:1;margin-top:auto;padding:18px;color:var(--tap-promo-on-media,#fff);width:100%}.tap-home-promo__card:not(.has-image) .tap-home-promo__body{color:var(--tap-ink,#271e2f);margin-top:0}.tap-home-promo__badge{display:inline-flex;border-radius:999px;padding:4px 8px;background:var(--tap-accent,#ff9500);color:var(--tap-accent-contrast,#1e1404);font-size:11px;font-weight:800;margin-bottom:8px}.tap-home-promo__body h3{margin:0 0 5px;font-size:18px}.tap-home-promo__body p{margin:0 0 10px;font-size:13px;opacity:.9}.tap-home-promo__cta{font-weight:800;font-size:13px}
/* Image-top variant keeps the same card component but changes composition. */
.tap-home-promo--image_top .tap-home-promo__card{display:grid;grid-template-rows:minmax(110px,55%) 1fr}.tap-home-promo--image_top .tap-home-promo__media{position:relative;inset:auto;grid-row:1}.tap-home-promo--image_top .tap-home-promo__shade{display:none}.tap-home-promo--image_top .tap-home-promo__body{grid-row:2;margin:0;color:var(--tap-ink,#271e2f);padding:15px}.tap-home-promo--image_top .tap-home-promo__body p{color:var(--tap-muted,#6b5b78)}
/* Clean variant is useful for categories / lightweight tenant navigation. */
.tap-home-promo--clean .tap-home-promo__card{min-height:auto;display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center}.tap-home-promo--clean .tap-home-promo__media{position:relative;inset:auto;width:88px;height:88px;margin:12px;border-radius:14px;overflow:hidden;background:var(--tap-surface-2,#f7f3fa)}.tap-home-promo--clean .tap-home-promo__shade{display:none}.tap-home-promo--clean .tap-home-promo__body{margin:0;color:var(--tap-ink,#271e2f);padding:14px}.tap-home-promo--clean .tap-home-promo__body p{color:var(--tap-muted,#6b5b78)}.tap-home-promo--clean .tap-home-promo__card:not(.has-image){grid-template-columns:1fr}
.tap-home-exp-minimal .tap-home-promo__grid{max-width:1080px;margin:auto}
@media(max-width:1023px){.tap-home-promo__grid{grid-template-columns:repeat(var(--tap-promo-cols-tab,2),minmax(0,1fr))}}
@media(max-width:600px){.tap-home-promo{padding:24px 0}.tap-home-promo--mobile-scroll .tap-home-promo__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}.tap-home-promo--mobile-scroll .tap-home-promo__card{flex:0 0 78vw;max-width:320px;scroll-snap-align:start}.tap-home-promo--mobile-grid .tap-home-promo__grid{grid-template-columns:repeat(var(--tap-promo-cols-mob,1),minmax(0,1fr));gap:12px}.tap-home-promo--clean .tap-home-promo__card{grid-template-columns:72px minmax(0,1fr)}.tap-home-promo--clean .tap-home-promo__media{width:72px;height:72px;margin:10px}}
