#cardAlt012 {
    padding:50px 20px
}
#cardAlt012 .headerCon {
    text-align:center
}
#cardAlt012 h2 {
    text-align:center;
    text-transform:none;
    margin-bottom:10px;
}
#cardAlt012 .subtitle {
    font-weight:600
}
#cardAlt012 .flexCon {
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 0;
    max-width:350px;
    margin:0 auto
}
#cardAlt012 .flexCon > div {
    text-align:center;
    padding:20px 30px 0 30px
}
#cardAlt012 .imgCon {
    position:relative;
}
#cardAlt012 .imgCon img {
    width:100%;
}

#cardAlt012 .imgCon .cardTitle {
    position:absolute;
    bottom:10px;
    text-align:center;
    width:100%;
    padding:0 40px;
    font-weight:bold;
    font-size:22px;
    line-height:1.3;
    color:#fff
}
#cardAlt012 .c2 .imgCon .cardTitle {
    color:#000
}
#cardAlt012 .flexCon > div p {
    margin-top:20px
}

@media (min-width:576px) {
    #cardAlt012 {
        padding:50px 0 0 0
    }
    #cardAlt012 .flexCon {
        display:flex;
        flex-wrap:wrap;
        flex-direction: row;
        justify-content: center;
        align-items:normal; 
        padding: 10px 0;
        max-width:none
    }
    #cardAlt012 .flexCon > div {
        flex: 0 0 50%;
        padding:0 15px 20px 15px;
        max-width:270px;
    }
    #cardAlt012 .imgCon {
        position:relative;
    }
    #cardAlt012 .imgCon .cardTitle {
        padding:0 15px;
        margin:0;
        bottom:2vh;
        left: 50%;
        transform: translateX(-50%);
        max-width:230px;
        font-size:20px
    }
}

@media (min-width:992px) {

}

@media (min-width:1279px) {
    #cardAlt012 .subtitle {
        font-size:21px
    }
    #cardAlt012 .flexCon > div {
        flex: 0 0 28%;
        padding: 0 25px 0px 25px;
        max-width: none;
    }
    #cardAlt012 .imgCon .cardTitle {
        bottom:30px;
        padding:0;
        max-width: 235px;
        font-size: 24px;
    }
}
