.bg-auto-catalog-page { max-width: 1320px; margin: 0 auto; padding: 20px; }
.bg-product-rotator { position: relative; width: 100%; min-height: 70vh; overflow: hidden; background: #111; color: #fff; border-radius: 18px; }
.bg-product-slide { display: none; min-height: 70vh; align-items: stretch; grid-template-columns: minmax(55%, 1fr) minmax(320px, 42%); }
.bg-product-slide.is-active { display: grid; }
.bg-product-image-wrap { display: block; width: 100%; height: 100%; min-height: 70vh; background: #000; }
.bg-product-image { width: 100%; height: 100%; min-height: 70vh; object-fit: cover; display: block; }
.bg-product-info { display: flex; flex-direction: column; justify-content: center; gap: 18px; padding: clamp(28px, 5vw, 70px); background: linear-gradient(135deg, #181818, #262626); }
.bg-product-promo, .bg-catalog-promo { display: inline-block; width: fit-content; padding: 10px 16px; border-radius: 999px; background: #ffcc00; color: #111; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.bg-product-title { margin: 0; font-size: clamp(32px, 5vw, 68px); line-height: 1.02; color: #fff; }
.bg-product-sku, .bg-catalog-sku { font-size: clamp(18px, 2vw, 26px); opacity: 1; }
.bg-sku-label { color: #e60000; font-weight: 900; }
.bg-product-sku strong, .bg-catalog-sku strong { color: #005bea; font-weight: 900; }
.bg-product-prices { display: grid; gap: 10px; font-size: clamp(20px, 2.5vw, 34px); }
.bg-product-regular, .bg-price-installed { color: #e60000; font-weight: 900; }
.bg-product-sale, .bg-price-sale { color: #000; font-weight: 900; }
.bg-product-sale { color: #fff; }
.bg-product-sale .bg-price-label, .bg-product-sale .bg-price-amount { color: #fff; }
.bg-product-regular .amount, .bg-price-installed .amount { color: #e60000; font-weight: 900; }
.bg-product-sale .amount { color: #fff; font-weight: 900; }
.bg-price-sale .amount { color: #000; font-weight: 900; }
.bg-product-button, .bg-buy-button { display: inline-flex; align-items: center; justify-content: center; width: fit-content; padding: 15px 35px; border-radius: 10px; background: #ff7a00; color: #fff !important; text-decoration: none !important; font-weight: 900; border: 0; text-transform: uppercase; letter-spacing: .03em; box-shadow: 0 8px 18px rgba(255,122,0,.28); }
.bg-product-button:hover, .bg-buy-button:hover { background: #e86d00; color: #fff !important; opacity: 1; }

.bg-product-catalog { width: 100%; margin: 0 auto; padding: clamp(18px, 3vw, 44px) 0; }
.bg-catalog-header { margin-bottom: 28px; display: grid; gap: 12px; }
.bg-catalog-header h1 { margin: 0; font-size: clamp(30px, 4vw, 56px); line-height: 1.05; color: #111; }
.bg-catalog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 2.5vw, 34px); }
.bg-columns-1 .bg-catalog-grid { grid-template-columns: 1fr; }
.bg-columns-2 .bg-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bg-columns-3 .bg-catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bg-columns-4 .bg-catalog-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bg-catalog-card { background: #fff; border: 1px solid #e7e7e7; border-radius: 20px; overflow: hidden; box-shadow: 0 12px 35px rgba(0,0,0,.08); display: flex; flex-direction: column; }
.bg-catalog-image-link { display: block; background: #f6f6f6; aspect-ratio: 4 / 3; overflow: hidden; }
.bg-catalog-image-link img { width: 100%; height: 100%; object-fit: contain; display: block; padding: 14px; transition: transform .25s ease; }
.bg-catalog-card:hover .bg-catalog-image-link img { transform: scale(1.04); }
.bg-catalog-body { padding: clamp(18px, 2.4vw, 28px); display: flex; flex-direction: column; gap: 12px; flex: 1; }
.bg-catalog-body h2 { margin: 0; color: #111; font-size: clamp(21px, 2vw, 30px); line-height: 1.15; }
.bg-catalog-prices { display: grid; gap: 8px; margin-top: 4px; }
.bg-price-installed { font-size: clamp(20px, 1.9vw, 28px); }
.bg-price-installed .bg-price-amount { display: block; font-size: clamp(30px, 3vw, 42px); line-height: 1; }
.bg-price-sale { font-size: clamp(19px, 1.7vw, 26px); }
.bg-price-sale .bg-price-amount { display: block; font-size: clamp(25px, 2.4vw, 34px); line-height: 1; }
.bg-catalog-desc { color: #333; font-size: 15px; line-height: 1.45; }
.bg-catalog-desc p { margin: 0 0 8px; }
.bg-buy-button { margin-top: auto; width: 100%; min-height: 54px; font-size: 17px; }

@media (max-width: 1024px) {
    .bg-columns-3 .bg-catalog-grid, .bg-columns-4 .bg-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 850px) {
    .bg-product-slide.is-active { display: block; }
    .bg-product-image-wrap, .bg-product-image { min-height: 42vh; }
    .bg-product-info { padding: 28px; }
}
@media (max-width: 640px) {
    .bg-auto-catalog-page { padding: 12px; }
    .bg-catalog-grid, .bg-columns-2 .bg-catalog-grid, .bg-columns-3 .bg-catalog-grid, .bg-columns-4 .bg-catalog-grid { grid-template-columns: 1fr; }
}


/* Buho Guardianes - estilos reforzados v1.3 */
.bg-product-catalog .bg-catalog-sku,
.bg-product-catalog .bg-sku-label,
.bg-product-rotator .bg-product-sku,
.bg-product-rotator .bg-sku-label {
    color: #e60000 !important;
    font-weight: 900 !important;
}

.bg-product-catalog .bg-catalog-sku strong,
.bg-product-rotator .bg-product-sku strong {
    color: #005bea !important;
    font-weight: 900 !important;
}

.bg-product-catalog .bg-price-installed,
.bg-product-catalog .bg-price-installed .bg-price-label,
.bg-product-catalog .bg-price-installed .bg-price-amount,
.bg-product-catalog .bg-price-installed .amount,
.bg-product-catalog .bg-price-installed bdi,
.bg-product-catalog .bg-price-installed span,
.bg-product-rotator .bg-product-regular,
.bg-product-rotator .bg-product-regular .amount,
.bg-product-rotator .bg-product-regular bdi,
.bg-product-rotator .bg-product-regular span {
    color: #e60000 !important;
    font-weight: 900 !important;
}

.bg-product-catalog .bg-price-sale,
.bg-product-catalog .bg-price-sale .bg-price-label,
.bg-product-catalog .bg-price-sale .bg-price-amount,
.bg-product-catalog .bg-price-sale .amount,
.bg-product-catalog .bg-price-sale bdi,
.bg-product-catalog .bg-price-sale span {
    color: #000000 !important;
    font-weight: 900 !important;
}

.bg-product-catalog .bg-buy-button,
.bg-product-catalog a.bg-buy-button,
.bg-product-rotator .bg-product-button,
.bg-product-rotator a.bg-product-button {
    background: #ff7a00 !important;
    background-color: #ff7a00 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 18px rgba(255,122,0,.28) !important;
}

.bg-product-catalog .bg-buy-button:hover,
.bg-product-catalog a.bg-buy-button:hover,
.bg-product-rotator .bg-product-button:hover,
.bg-product-rotator a.bg-product-button:hover {
    background: #e86d00 !important;
    background-color: #e86d00 !important;
    color: #ffffff !important;
}

/* Buho Guardianes - catalogo compacto v1.5
   Imagen grande, precios horizontales, SKU centrado debajo y boton naranja. */
.bg-product-catalog .bg-catalog-card {
    border-radius: 18px !important;
}
.bg-product-catalog .bg-catalog-image-link {
    aspect-ratio: 16 / 10 !important;
    background: #ffffff !important;
}
.bg-product-catalog .bg-catalog-image-link img {
    object-fit: contain !important;
    padding: 10px !important;
}
.bg-product-catalog .bg-catalog-body-compact {
    padding: 12px 16px 16px !important;
    gap: 8px !important;
}
.bg-product-catalog .bg-catalog-price-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
}
.bg-product-catalog .bg-catalog-price-row > div {
    min-width: 0 !important;
    line-height: 1.12 !important;
}
.bg-product-catalog .bg-catalog-price-row .bg-price-sale {
    text-align: left !important;
}
.bg-product-catalog .bg-catalog-price-row .bg-price-installed {
    text-align: right !important;
}
.bg-product-catalog .bg-catalog-price-row .bg-price-label,
.bg-product-catalog .bg-catalog-price-row .bg-price-amount {
    display: block !important;
}
.bg-product-catalog .bg-catalog-price-row .bg-price-sale,
.bg-product-catalog .bg-catalog-price-row .bg-price-installed {
    font-size: 14px !important;
}
.bg-product-catalog .bg-catalog-price-row .bg-price-sale .bg-price-amount,
.bg-product-catalog .bg-catalog-price-row .bg-price-installed .bg-price-amount,
.bg-product-catalog .bg-catalog-price-row .bg-price-sale .amount,
.bg-product-catalog .bg-catalog-price-row .bg-price-installed .amount {
    font-size: 20px !important;
    line-height: 1.08 !important;
}
.bg-product-catalog .bg-catalog-sku {
    text-align: center !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    margin: 2px 0 6px !important;
}
.bg-product-catalog .bg-catalog-sku .bg-sku-label,
.bg-product-catalog .bg-catalog-sku strong {
    display: inline !important;
}
.bg-product-catalog .bg-buy-button {
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 18px !important;
    font-size: 16px !important;
}
@media (max-width: 520px) {
    .bg-product-catalog .bg-catalog-price-row {
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }
    .bg-product-catalog .bg-catalog-price-row .bg-price-sale,
    .bg-product-catalog .bg-catalog-price-row .bg-price-installed {
        font-size: 13px !important;
    }
    .bg-product-catalog .bg-catalog-price-row .bg-price-sale .amount,
    .bg-product-catalog .bg-catalog-price-row .bg-price-installed .amount {
        font-size: 18px !important;
    }
}
