.home-section { max-width:1280px; margin:42px auto; padding:0 24px; }
#categorias-inicio { margin-top:30px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:22px; }
.section-heading small { display:block; color:var(--vino); font-weight:800; text-transform:uppercase; letter-spacing:1px; margin-bottom:6px; }
.section-heading h1,.section-heading h2 { margin:0; font:800 clamp(24px,3vw,32px) Manrope,sans-serif; letter-spacing:-.7px; }
.section-heading p { color:var(--texto); }
.section-link { color:var(--vino); text-decoration:none; font-weight:800; white-space:nowrap; }
.grid-categorias { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; align-items:stretch; }
.categoria-card { min-width:0; border-radius:18px; overflow:hidden; position:relative; text-decoration:none; background:#fff; border:1px solid var(--borde); }
.categoria-card img { display:block; width:100%; aspect-ratio:1.3; object-fit:contain; background:#f5f1ef; transition:transform .25s; }
.categoria-card:hover img { transform:scale(1.055); }
.categoria-card:hover { box-shadow:0 14px 32px rgba(47,16,24,.14); }
.categoria-card-info { padding:14px; color:var(--vino); }
.categoria-card strong { display:block; font-size:16px; line-height:1.35; overflow-wrap:break-word; }
.categoria-card-info::after { content:"Ver productos →"; display:block; margin-top:10px; font-size:13px; font-weight:700; }
.categoria-card span { display:block; margin-top:5px; font-size:12px; color:#655a5e; }
.categoria-card.destacada { grid-column:auto; }
.category-skeleton { min-height:210px; position:relative; overflow:hidden; border-radius:var(--radio); background:#e8e3e0; }
.category-skeleton.destacada { grid-column:auto; }
.category-skeleton::before { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.65) 48%,transparent 76%); animation:category-loading 1.35s ease-in-out infinite; }
.category-skeleton span,.category-skeleton small { position:absolute; left:20px; z-index:1; display:block; border-radius:99px; background:#d4cdca; }
.category-skeleton span { bottom:47px; width:min(52%,180px); height:19px; }.category-skeleton small { bottom:24px; width:min(70%,240px); height:10px; }
@keyframes category-loading { to { transform:translateX(100%); } }
@media(prefers-reduced-motion:reduce){.category-skeleton::before{animation:none}}
.home-catalog-empty { grid-column:1/-1; min-height:260px; padding:42px; border:1px solid var(--borde); border-radius:22px; background:#fff; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.home-catalog-empty span { color:var(--vino); font-size:12px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }
.home-catalog-empty h3 { margin:7px 0; font:800 clamp(24px,3vw,34px) Manrope,sans-serif; }
.home-catalog-empty p { max-width:620px; margin-bottom:20px; color:var(--texto); }
[hidden] { display:none !important; }
.section-link { display:inline-flex; align-items:center; min-height:44px; }
.home-section a:focus-visible { outline:3px solid var(--vino); outline-offset:4px; }
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; counter-reset:pasos; }
.step { counter-increment:pasos; background:#fff; border:1px solid var(--borde); padding:27px; border-radius:var(--radio); }
.step::before { content:counter(pasos); display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:#f6e9ed; color:var(--vino); font-weight:800; margin-bottom:20px; }
.step h3 { margin-bottom:7px; }
.step p { color:var(--texto); font-size:14px; }

@media(max-width:1100px){.grid-categorias{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}
@media(max-width:900px){.grid-categorias{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}
@media(max-width:600px){.grid-categorias{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.marketplace-header{grid-template-columns:1fr auto}.marketplace-header .header-category-trigger{grid-column:2;grid-row:1;min-height:44px}.marketplace-header .marketplace-menu{display:none}.marketplace-header .busqueda{grid-column:1/-1;grid-row:2}}
@media(max-width:720px){.home-section{margin:28px auto;padding:0 14px}#categorias-inicio{margin-top:22px}.section-heading{align-items:center;gap:10px;margin-bottom:14px}.section-heading h1,.section-heading h2{font-size:23px;line-height:1.2}.section-heading p{font-size:13px;margin-top:6px}.section-link{font-size:12px}.grid-categorias{gap:9px}.categoria-card{border-radius:12px}.categoria-card-info{padding:9px 8px}.categoria-card strong{font-size:13px}.categoria-card span{font-size:11px}.category-skeleton{min-height:155px}.steps{grid-template-columns:1fr;gap:10px}.step{padding:18px 18px 18px 66px;position:relative}.step::before{position:absolute;left:14px;top:18px;width:36px;height:36px;margin:0}}
/* Keep mobile labels readable, even when a category name takes several lines. */
@media(max-width:720px){.categoria-card-info{padding:12px 10px}.categoria-card strong{font-size:15px}.categoria-card span{font-size:12px}.categoria-card-info::after{font-size:12px}.section-heading{flex-wrap:wrap}.section-link{font-size:14px}.home-catalog-empty{padding:24px}}
@media(prefers-reduced-motion:reduce){.categoria-card img{transition:none}.categoria-card:hover img{transform:none}}
