
:root {
	--off-white: #f2f2f2;
    --grey: #737373;
    --light-grey: #939393;
    --white: #fff;
    --intense: #373737;
    --hookah: #ef451b;
    --puff: #df2088;
}
.filters,
.filters2{
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 999;
    background: var(--off-white);
}
.filters .container,
.filters2 .container{
    width: 100vw;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 2rem;
    gap: 2rem;
}
.filters span,
.filters2 span{
    position: absolute;
    top: -1.5rem;
    font-size: 60%;
    text-transform: uppercase;
    font-weight: 700;
}
/* .filters .is-checked,
.filters2 .is-checked{
    background-color: var(--white);
} */
.puffs .is-checked{
    background-color: var(--puff);
    color: var(--white);
    border-radius: .5rem;
}
.puffs span{
    color: var(--puff);
}
.hookah .is-checked{
    background-color: var(--hookah);
    color: var(--white);
    border-radius: .5rem;
}
.hookah span{
    color: var(--hookah);
}
.filters button,
.filters2 button{
    padding: 1rem;
    cursor: pointer;
    border: none;
    background: transparent;
}
.filters button{
    color: var(--puff);
}
.filters2 button{
    color: var(--hookah);
}
.filters .button-group,
.filters2 .button-group{
    border-radius: .5rem;
    position: relative;
}
.filters .button-group{
    border: 1px solid var(--puff);
}
.filters2 .button-group{
    border: 1px solid var(--hookah);
}
.grid-cards,
.grid-cards2{   
    margin: 4rem auto !important;
    display: flex;
    flex-direction: row;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    align-items: stretch;
}
.card{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
    border-width: 1px;
    border-style: solid;
    border-color: var(--white);
    border-radius: 2rem;
    padding: 2rem;
    margin: 2rem;
    row-gap: 1rem;
    box-shadow: 5px 5px 20px #C5C5C5, -5px -5px 20px #fff;
    background-color: var(--off-white);
    float: left;
    width: calc(25% - 4rem);
    /* width: calc(300px - 4rem); */
    transition: all .3s !important;
}
.card:hover{
    background-color: var(--white);
    box-shadow: 25px 25px 41px #969696, -25px -25px 41px #FFFFFF;
    transform: scale(1.01) !important;
}
.card-body > *{
    pointer-events: none;
}
/* .puffs .card{
    height: 672px;
}
.hookah .card{
    height: 380px;
}*/
.accessories .card{
    padding: 0;
} 
.card.intense{
    background-color: var(--intense);
    border-color: var(--intense);
    transition: all .3s;
}
.card.intense:hover{
    background-color: #222;
}
.card.intense .option-2, .card.intense .title, .card.intense .option-1{
    color: var(--off-white);
}
.card-img{
    position: relative;
    text-align: center;
}
.card-img img{
    /* margin: 2rem auto; */
    -o-object-fit: contain;
       object-fit: contain;
    /* width: 100%; */
}
.card-img .option-2{
    position: absolute;
    top: 0;
    font-size: 75%;
    text-transform: capitalize;
    color: var(--light-grey);
    font-weight: 600;
}
.hookah .card-img img{
    height: 100%;
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    margin: 1rem auto;
}
.puff .card-img img{
    height: 100%;
    width: auto;
    -o-object-fit: contain;
       object-fit: contain;
    margin: 1rem auto;
}
.accessories .card-body{
    padding: 0 2rem;
}
.accessories .card-img img{
    height: auto;
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    margin: 1rem auto;
}
/* .card-body{
    margin-top: 1rem;
} */
.card .title{
    font-size: 3rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--grey);
}
.card .title:first-word{
    font-size: 75%;
}
.card .description{
    color: var(--light-grey);
    padding: 1rem 0;
    font-size: 14px;
    line-height: normal;
}
.card .option-1{
    font-weight: 600;
    color: var(--grey);
    text-align: right;
}
.grid:after{
    content: '';
    display: block;
    clear: both;
  }

/* media query */
@media only screen and (max-width: 993px){
    .grid-item {
        width: calc(33% - 4rem);
        height: -webkit-max-content !important;
        height: -moz-max-content !important;
        height: max-content !important;
    }
}
@media only screen and (max-width: 600px){
    /* .puffs{
        width: 100%;
    } */
    .card{
        margin: .5rem;
        padding: 1rem;
    }
    .card.intense:hover,
    .card:hover{
        box-shadow: 5px 5px 20px #C5C5C5, -5px -5px 20px #fff;
        transform: none;
    }
    .grid-item {
        width: calc(50% - 1rem);
        height: -webkit-max-content !important;
        height: -moz-max-content !important;
        height: max-content !important;
        float: left;
    }
    .card .title{
        font-size: 2rem;
    }
    .accessories .card-body{
        padding: 1rem;
    }
    .puffs .card img{
        -o-object-fit: contain;
           object-fit: contain;
        width: 100%;
        height: min-content;
    }
    .puffs .card .title{
        font-size: 2rem;
    }
    .filters button,
    .filters2 button{
        padding: .5rem;
    }
}