/* Catálogo: una superficie editorial clara y enfocada en el producto. */
body[data-page="catalogo"] { background-image: none; }
body[data-page="catalogo"] .halloween-banner { display: flex; }
/* Al entrar a una categoría, el contenido visual aparece primero. */
body[data-page="catalogo"] .cat-head { display: none; }
body.catalog-landing .filters,body.catalog-landing .results-bar,body.catalog-landing .grid-products,body.catalog-landing .empty,body.catalog-landing .more,body.catalog-landing .escena{display:none!important}
.catalog-chooser{max-width:900px;margin:34px auto 70px;background:#fff;color:#1b181d;border:1px solid #d8d5d8}
.catalog-chooser__back{width:100%;height:48px;padding-inline:24px;text-align:left;border-bottom:1px solid #aaa5aa;font:700 .8rem var(--f-body);letter-spacing:.08em;color:#28242a}
.catalog-chooser a{min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid #e8e5e8;color:#28242a;font:700 .9rem var(--f-body);letter-spacing:.16em;text-transform:uppercase}.catalog-chooser a:last-child{border-bottom:0}.catalog-chooser a span{font-size:1.2rem;font-weight:400}
@media(min-width:980px){.catalog-chooser{margin-top:56px;max-width:1120px}.catalog-chooser a{min-height:68px;padding-inline:32px}}
body[data-page="catalogo"] .cat-head .crumbs { font-size: .78rem; margin: 0 0 2px; }
body[data-page="catalogo"] .cat-head h1 { margin: 0; font-size: clamp(3.15rem, 6.4vw, 5.2rem); line-height: .92; letter-spacing: -.065em; }
body[data-page="catalogo"] .cat-head .lead { margin: 4px 0 0; font-size: .98rem; max-width: 44ch; color: var(--muted); }

body[data-page="catalogo"] .filters { top: calc(var(--header-h) + 12px); gap: 14px; padding: 16px 18px 14px; border: 1px solid var(--line); border-radius: 14px; background: color-mix(in srgb, var(--surface) 98%, transparent); box-shadow: 0 20px 50px rgb(0 0 0 / .12); }
body[data-page="catalogo"] .filters__row { gap: 18px; }
body[data-page="catalogo"] .filters label { font-size: .64rem; font-weight: 700; letter-spacing: .12em; }
body[data-page="catalogo"] .filters .input,
body[data-page="catalogo"] .filters .select { min-height: 44px; border-width: 1px; background: color-mix(in srgb, var(--bg) 76%, var(--surface)); }
body[data-page="catalogo"] .filters .chips { gap: 7px; }
body[data-page="catalogo"] .filters .chip { min-height: 32px; padding-inline: 12px; border-color: color-mix(in srgb, var(--line-2) 72%, transparent); font-size: .78rem; }
body[data-page="catalogo"] .filters .chip small { display: none; }
body[data-page="catalogo"] .filters .chip[aria-pressed="true"] { box-shadow: 0 7px 16px rgb(255 152 62 / .14); }
body[data-page="catalogo"] .results-bar { padding: 18px 0 16px; font-size: .82rem; }
body[data-page="catalogo"] .grid-products { gap: 34px 18px; }
body[data-page="catalogo"] .pcard__frame { border: 0; border-radius: 10px; background: #f1f0ed; }
body[data-page="catalogo"] .pcard__body { gap: 8px; padding: 13px 2px 0; }
body[data-page="catalogo"] .pcard__name { font-size: .82rem; letter-spacing: .065em; }
body[data-page="catalogo"] .pcard__brand,
body[data-page="catalogo"] .pcard__cat { font-size: .66rem; letter-spacing: .13em; }
body[data-page="catalogo"] .pcard__price { font-size: 1rem; }

@media (min-width: 900px) {
  body[data-page="catalogo"] .cat-head { grid-template-columns: minmax(0, 1fr) minmax(280px, 34%); align-items: end; column-gap: 72px; padding-block: 36px 28px; }
  body[data-page="catalogo"] .cat-head .crumbs,
  body[data-page="catalogo"] .cat-head h1 { grid-column: 1; }
  body[data-page="catalogo"] .cat-head .lead { grid-column: 2; grid-row: 1 / span 2; margin-bottom: 6px; }
  body[data-page="catalogo"] .filters__row { grid-template-columns: minmax(0, 1fr) auto; }
  body[data-page="catalogo"] .filters__selects { grid-template-columns: 140px 180px; }
  body[data-page="catalogo"] .grid-products { gap: 44px 24px; }
}

@media (min-width: 1100px) {
  body[data-page="catalogo"] .grid-products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 28px; }
}

@media (max-width: 600px) {
  body[data-page="catalogo"] .cat-head { padding-block: 20px 18px; }
  body[data-page="catalogo"] .cat-head h1 { font-size: 3.3rem; }
  body[data-page="catalogo"] .filters { top: calc(var(--header-h) + 8px); margin-inline: 0; padding: 13px; border-radius: 10px; }
  body[data-page="catalogo"] .filters .chips { margin-inline: -13px; padding-inline: 13px; }
}
