/* Home category navigation. Scope does not affect catalogue product cards. */
.oss-home-categories { --oss-card-ink:#222529; --oss-card-muted:#5d636c; --oss-card-line:#e4e6e9; --oss-card-accent:#dd292b; color:var(--oss-card-ink); }
.oss-home-categories__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.oss-home-categories__eyebrow { margin:0 0 8px; color:var(--oss-card-muted); font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.oss-home-categories h2 { margin:0; font-size:clamp(26px,2.4vw,36px); line-height:1.2; letter-spacing:-.025em; font-weight:650; }
.oss-home-categories__all { flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:44px; color:var(--oss-card-ink); font-size:14px; text-decoration:none; }
.oss-home-categories__all span { font-size:22px; color:var(--oss-card-accent); }
.oss-home-categories__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.oss-home-category { display:flex; flex-direction:column; min-width:0; border:1px solid var(--oss-card-line); border-radius:18px; background:#fff; overflow:hidden; transition:border-color .18s ease,box-shadow .18s ease; }
.oss-home-category__visual { position:relative; display:flex; align-items:center; justify-content:center; background:#f5f6f7; height:176px; flex-shrink:0; padding:12px 32px; overflow:hidden; }
.oss-home-category__visual img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .25s ease; }
.oss-home-category__arrow { position:absolute; top:14px; right:14px; display:grid; place-items:center; width:32px; height:32px; border-radius:50%; border:1px solid #e1e4e7; background:#fff; color:var(--oss-card-ink); font-size:20px; }
.oss-home-category__body { display:flex; flex-direction:column; flex:1; padding:22px; }
.oss-home-category h3 { margin:0 0 10px; font-size:22px; line-height:1.25; font-weight:650; letter-spacing:-.02em; }
.oss-home-category h3 a { color:var(--oss-card-ink); text-decoration:none; }
.oss-home-category__description { margin:0 0 18px; font-size:14px; line-height:1.55; color:var(--oss-card-muted); overflow-wrap:break-word; }
.oss-home-category__types { display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:0 0 20px; }
.oss-home-category__types li { padding:0; margin:0; max-width:100%; }
.oss-home-category__types li::before { display:none; }
.oss-home-category__types a { display:flex; align-items:center; min-height:40px; padding:8px 10px; background:#f5f6f7; border:1px solid #eceef0; border-radius:8px; color:#353a40; font-size:12px; line-height:1.4; text-decoration:none; overflow-wrap:break-word; }
.oss-home-category__cta { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; border-top:1px solid var(--oss-card-line); padding-top:14px; margin-top:auto; color:var(--oss-card-accent); font-weight:600; font-size:14px; line-height:1.4; text-decoration:none; }
.oss-home-category__cta span { font-size:22px; }
.oss-home-categories a:focus-visible { outline:2px solid var(--oss-card-accent); outline-offset:3px; border-radius:4px; }
@media (hover:hover) { .oss-home-category:hover { border-color:#c6cbd0; box-shadow:0 8px 24px #24272c0b; } .oss-home-category:hover .oss-home-category__visual img { transform:scale(1.035); } .oss-home-category__types a:hover { background:#fff0f0; border-color:#efb9ba; color:#a8191b; } .oss-home-category h3 a:hover,.oss-home-categories__all:hover { color:var(--oss-card-accent); } }
@media (max-width:1559px) { .oss-home-categories__grid { gap:16px; } .oss-home-category__visual { height:156px; padding:12px 20px; } .oss-home-category__body { padding:16px; } .oss-home-category h3 { font-size:20px; } .oss-home-category__description { font-size:13px; } }
@media (max-width:991px) { .oss-home-categories__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) {
 .oss-home-categories__heading { align-items:flex-start; gap:12px; margin-bottom:20px; }
 .oss-home-categories h2 { font-size:26px; }
 .oss-home-categories__all { font-size:12px; gap:8px; }
 .oss-home-categories__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .oss-home-category { border-radius:14px; }
 .oss-home-category__visual { height:112px; padding:8px 12px; }
 .oss-home-category__arrow { top:8px; right:8px; width:26px; height:26px; font-size:17px; }
 .oss-home-category__body { padding:12px; }
 .oss-home-category h3 { font-size:16px; line-height:1.3; min-height:2.6em; margin-bottom:10px; overflow-wrap:anywhere; }
 .oss-home-category__description { display:none; }
 .oss-home-category__types { gap:6px; margin-bottom:12px; }
 .oss-home-category__types a { min-height:44px; padding:7px 6px; font-size:12px; }
 .oss-home-category__cta { min-height:48px; padding-top:10px; gap:4px; font-size:12px; line-height:1.4; }
 .oss-home-category__cta span { font-size:18px; }
}
@media (prefers-reduced-motion:reduce) { .oss-home-category,.oss-home-category__visual img { transition:none; } }

.oss-home-categories a { text-decoration:none !important; }
