.catalog {
	overflow: hidden;
    display: inline-flex;
    flex-wrap: wrap;
}

.catalog .catalog_page {
    max-height: 0vw;
    overflow-y: hidden;
    overflow-x: hidden;
    width: 90vw;
    padding: 5vw;
    display: inline-block;
	position: relative;
}

.catalog .catalog_page.active {
    max-height: 1000000vw;
    height: 100%;
    min-height: calc(100vh - 10vw);
}

.catalog .redeemed {
    overflow-x: scroll;
    margin-left: -5vw;
    width: 100vw;
}

.catalog .redeemed .slide {
    padding-left: 5vw;
    position: relative;
    display: inline-flex;
    flex-wrap: wrap;
}

.catalog .redeemed .slide .more {
    width: 20.025vw;
    overflow: hidden;
    place-items: center;
    display: inline-grid;
    text-align: center;
    color: var(--words-color);
    font-size: var(--fs);
    border-radius: 3vw;
}

.catalog .redeemed .slide .more img {
    width: 6vw;
    opacity: 0.75;
    filter: invert(var(--invert));
    margin-bottom: 8vw;
}

.catalog .product {
    display: inline-block;
    margin-right: 3vw;
    margin-bottom: 4vw;
    width: 46vw;
}

.catalog .product .img {
    width: 46vw;
    height: 26vw;
    overflow: hidden;
    border-radius: 3vw;
    position: relative;
}

.catalog .product .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.catalog .product .data {
    margin-top: 3vw;
}

.catalog .product .data span {
    color: var(--words-color);
    font-size: var(--fs);
    margin-top: 2vw;
    padding-top: 2vw;
    border-top: 0.5vw dashed var(--bgt-color);
    width: 100%;
    display: inline-block;
}

.catalog .product .data b {
    color: var(--main-color);
    font-size: var(--font-size);
}

/*Table desing*/
.catalog .product_table {
    display: block;
    margin-bottom: 6vw;
    position: relative;
    width: 90vw;
}

.catalog .product_table .img {
    width: 18vw;
    height: 18vw;
    overflow: hidden;
    border-radius: 3vw;
    position: relative;
    display: inline-block;
}

.catalog .product_table .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.catalog .product_table .data {
    display: inline-grid;
    place-items: center;
    vertical-align: top;
    min-height: 18vw;
    width: 57vw;
    margin-left: 3vw;
}

.catalog .product_table .data div {
    width: 100%;
}

.catalog .product_table .data span {
    color: var(--words-color);
    font-size: var(--fs);
    margin-top: 3vw;
    width: 100%;
    display: inline-block;
}

.catalog .product_table .data span b {
    background: var(--main-color);
    color: white;
    padding: 1vw;
    padding-left: 4vw;
    padding-right: 4vw;
    display: inline-block;
    border-radius: 10vw;
}

.catalog .product_table .arrow {
    width: 10vw;
    position: absolute;
    display: inline-grid;
    place-items: center;
    right: 0vw;
    bottom: 0vw;
    height: 100%;
    opacity: 0.5;
}

.catalog .product_table .arrow img {
    width: 4vw;
    filter: invert(var(--invert));
}

/*Productos reclamados*/
.catalog .product_redemeed {
    background: var(--bgs-color);
    padding: 4vw;
    border-radius: 3vw;
    width: 82vw;
    display: block;
    margin-bottom: 6vw;
    position: relative;
}

.catalog .product_redemeed .img {
    width: 18vw;
    height: 18vw;
    overflow: hidden;
    border-radius: 3vw;
    position: relative;
    display: inline-block;
}

.catalog .product_redemeed .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.catalog .product_redemeed .data {
    display: inline-grid;
    place-items: center;
    vertical-align: top;
    min-height: 18vw;
    width: 57vw;
    margin-left: 3vw;
}

.catalog .product_redemeed .data div {
    width: 100%;
}

.catalog .product_redemeed .data div b {
    margin-bottom: 2vw;
    display: block;
}

.catalog .product_redemeed .data p {
    color: var(--words-color);
    font-size: var(--fs);
    margin-top: 1vw;
}

.catalog .product_redemeed .points {
    position: relative;
    background: var(--dark-color);
    padding: 2vw;
    padding-left: 3vw;
    padding-right: 3vw;
    width: calc(100% - 6vw);
    margin-top: 4vw;
    border-radius: 10vw;
    color: white;
}

.catalog .product_redemeed .points p {
    opacity: 0.8;
}

.catalog .product_redemeed .points b {
    position: absolute;
    right: 4vw;
    top: 2vw;
}

/*Todos los productos*/
.catalog .products {
    width: 93vw;
    display: inline-flex;
    flex-wrap: wrap;
}

.catalog .products .circle_loader {
    width: 8vw;
    height: 8vw;
    border: 1.75vw solid var(--bgs-color);
    border-top: 1.75vw solid var(--main-color);
    display: inline-block;
    border-radius: 50%;
    margin-top: 18vw;
    margin-bottom: 18vw;
    margin-left: 41vw;
    animation: circle_loader 0.5s infinite linear;
}

@keyframes circle_loader {
    0% {
        rotate: 0deg;
    }

    100% {
        rotate: 360deg;
    }
}

.redeem {
    overflow-y: hidden;
    overflow-x: hidden;
    width: 90vw;
    padding: 5vw;
    display: inline-block;
	position: relative;
    max-height: 1000000vw;
    height: 100%;
    min-height: calc(100vh - 10vw);
    text-align: center;
}

.redeem .notfound img {
    width: 30vw;
}

.redeem .notfound p {
    margin-top: 20vw;
    color: var(--words-color);
}

.redeem .product .img {
    width: 40vw;
    height: 40vw;
    overflow: hidden;
    display: inline-block;
    border-radius: 100%;
    margin-bottom: 12vw;
}

.redeem .product .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.redeem .product .data span {
    background: var(--bgs-color);
    padding: 1.5vw;
    padding-left: 4vw;
    padding-right: 4vw;
    border-radius: 10vw;
    display: inline-block;
    margin-top: 3vw;
}

.redeem .msg {
    margin-top: 8vw;
    color: var(--words-color);
}

.redeem .buttons {
    margin-top: 12vw;
}

.redeem .exchanged img {
    width: 30vw;
}

.redeem .exchanged p {
    margin-top: 20vw;
    color: var(--words-color);
}

.redeem .exchanged {
    display: none;
}