/* Phase 4 home only; approved Design System tokens/components remain unchanged. */
body.sh-home-enabled { background: #f7f8fa; }
.sh-home { display: grid; gap: 1.75rem; min-inline-size: 0; }
.sh-home :is(h1,h2,h3,p,a) { overflow-wrap: anywhere; }
.sh-home .sh-home-page-title { font-size: 1.75rem; }
.sh-home .sh-home-hero { display: grid; gap: 1rem; padding: 1.5rem; border-radius: var(--sh-radius-xl); background: var(--sh-brand); color: var(--sh-on-color); }
.sh-home .sh-home-hero-copy { display: flex; flex-direction: column; align-items: flex-start; gap: .875rem; }
.sh-home .sh-home-eyebrow { font-size: .875rem; font-weight: 700; }
.sh-home .sh-home-hero h1 { font-size: clamp(1.6rem, 5vw, 2.65rem); max-inline-size: 18ch; }
.sh-home .sh-home-hero-copy > p:not(.sh-home-eyebrow) { font-size: .9375rem; max-inline-size: 45ch; }
.sh-home .sh-home-hero-cta { border-color: white; background: var(--sh-brand-hover); color: white; margin-block-start: .25rem; text-align: start; }
.sh-home .sh-home-hero-cta:focus-visible { outline-color: white; }
.sh-home .sh-home-section { min-inline-size: 0; }
.sh-home .sh-home-section-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem; margin-block-end: .625rem; }
.sh-home .sh-home-section-heading h2 { font-size: 1.125rem; }
.sh-home .sh-home-all { display: inline-flex; gap: .35rem; align-items: center; min-block-size: 44px; min-inline-size: 44px; color: var(--sh-brand-hover); font-size: .8125rem; font-weight: 600; text-decoration: none; }
.sh-home .sh-home-all .sh-icon { inline-size: 1rem; block-size: 1rem; }
.sh-home :is(ul,li) { list-style: none; margin: 0; padding: 0; }
.sh-home .sh-home-categories { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,9rem),1fr)); gap: .5rem; }
.sh-home .sh-home-categories a { display: flex; align-items: center; gap: .6rem; border: 1px solid var(--sh-line); background: var(--sh-surface); border-radius: var(--sh-radius-md); padding: .625rem; text-decoration: none; color: var(--sh-ink); min-block-size: 64px; }
.sh-home .sh-home-categories .sh-category-label { flex: 1; font-size: .8125rem; font-weight: 600; }
.sh-home .sh-home-categories a > .sh-icon { inline-size: 1rem; block-size: 1rem; flex: none; color: var(--sh-brand); }
.sh-home .sh-home-category-media { position: relative; display: block; background: var(--sh-media); inline-size: 2.25rem; block-size: 2.25rem; border-radius: .5rem; flex: none; overflow: hidden; }
.sh-home .sh-home-state { display: grid; gap: .75rem; justify-items: start; padding: 1.25rem; }
.sh-home .sh-home-state > .sh-icon { color: var(--sh-brand); inline-size: 2rem; block-size: 2rem; }
.sh-home .sh-home-state h2 { font-size: 1.125rem; }
.sh-home .sh-home-state p { font-size: .9375rem; color: var(--sh-muted); }
.sh-home .sh-home-state-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-block-start: .25rem; }
.sh-home .sh-home-preview { font-size: .875rem; }
.sh-home:lang(ar), .sh-home:lang(ar) :is(a,button,h1,h2,h3,p,span) { font-family: var(--sh-font-ar) !important; }
.sh-home:lang(ar) :is(h1,h2,h3) { letter-spacing: 0; }
@media (min-width: 760px) {
 .sh-home { gap: 2rem; }
 .sh-home .sh-home-hero { padding: 2rem; }
 .sh-home .sh-home-hero:has(.sh-product-card--spotlight) { grid-template-columns: 1.3fr 1fr; align-items: center; }
}
