/* Estilos de las páginas de categoría, producto, catálogo y empresa */
    .page { max-width: 1100px; margin: 0 auto; padding: 1.5rem 1rem 3rem; }
    .crumbs { font-size: .85rem; color: #64748b; margin-bottom: 1rem; }
    .crumbs a { color: #17743a; text-decoration: none; }
    .grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 1.2rem; margin-top: 1.2rem; }
    .card { background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; overflow: hidden; text-decoration: none; color: inherit; display: flex; flex-direction: column; }
    .card img { width: 100%; aspect-ratio: 1/1; object-fit: contain; background: #f8fafc; }
    .card div { padding: .9rem; display: flex; flex-direction: column; gap: .35rem; }
    .card strong { color: #0f172a; }
    .price { color: #17743a; font-weight: 700; font-size: 1.1rem; }
    .old { color: #94a3b8; font-weight: 600; font-size: .85rem; margin-left: .4rem; }
    .off { display: inline-block; background: #d01b1c; color: #fff; font-size: .75rem; font-weight: 700; padding: .1rem .45rem; border-radius: 6px; width: fit-content; margin-left: .4rem; }
    .detail { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start; }
    @media (max-width: 760px) { .detail { grid-template-columns: 1fr; } }
    .detail .main-img { width: 100%; border-radius: 14px; background: #f8fafc; object-fit: contain; max-height: 520px; }
    .thumbs { display: flex; gap: .5rem; margin-top: .6rem; flex-wrap: wrap; }
    .thumbs img { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; border: 1px solid #e2e8f0; }
    table.tiers { border-collapse: collapse; margin: 1rem 0; width: 100%; }
    table.tiers td, table.tiers th { padding: .5rem .6rem; border-bottom: 1px solid #e2e8f0; text-align: left; font-size: .95rem; }
    .cta { display: inline-block; background: #17743a; color: #fff; padding: .85rem 1.6rem; border-radius: 10px; font-weight: 700; text-decoration: none; margin-top: .5rem; }
    .cta:hover { background: #125c2e; }
    .desc { margin-top: 1.5rem; line-height: 1.6; }
    .desc h2 { font-family: Georgia, 'Times New Roman', serif; font-size: 1.3rem; }
    .desc img { max-width: 100%; height: auto; }
    h1.title { font-family: Georgia, 'Times New Roman', serif; color: #0f172a; margin: 0 0 .3rem; }
  
.top-links { display: flex; align-items: center; gap: 1rem; }
.top-links a:not(.cart-btn) { color: #17743a; font-weight: 700; text-decoration: none; font-size: .95rem; }
@media (max-width: 600px) { .top-links a:not(.cart-btn) { display: none; } }
.company-line { font-size: .8rem; }
.filter { width: 100%; max-width: 420px; padding: .7rem 1rem; border: 1px solid #cbd5e1; border-radius: 10px; font-size: 1rem; margin: .8rem 0; }
table.company { border-collapse: collapse; width: 100%; max-width: 640px; margin: 1rem 0; }
table.company th, table.company td { text-align: left; padding: .65rem .8rem; border-bottom: 1px solid #e2e8f0; vertical-align: top; }
table.company th { width: 38%; color: #475569; font-weight: 600; }
