.service-card { position: relative; min-height: 230px; border: 1px solid $border-color; overflow: hidden; border-radius: 3px; .body { padding: 10px; img.icon { margin-top: 40px; width: 55px; margin-bottom: 25px; @include transition(all,.3s); } .title { } .subtitle { position: absolute; bottom: -100%; opacity: 0; visibility: hidden; @include transition(all,.3s); } } &:hover { .body { img.icon { margin-top: 5px; width: 45px; margin-bottom: 15px; } .subtitle { bottom: 7px; opacity: 1; visibility: visible; } } } } /*/ portfolio wrapper */ .portfolio-card { display: block; position: relative; overflow: hidden; .portfolio-card-img { width: 100%; } .portfolio-card-overlay { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); text-align: center; visibility: hidden; opacity: 0; background-image: linear-gradient(to top, lighten($primary, 40%) 0%, rgba(lighten($primary, 40%), .7) 99%, rgba(lighten($primary, 40%), .8) 100%); @include transition(all, .3s); width: 0; height: 0; border-radius: 50%; overflow: hidden; .portfolio-card-caption { display: block; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); width: 100%; } } &:hover { .portfolio-card-overlay { opacity: 1; visibility: visible; width: 100%; height: 100%; border-radius: 0; } } } @include media-breakpoint-down(sm){ .portfolio-card { margin-bottom: 30px; } .service-card { margin-bottom: 30px; } } /* Pricing card */ .pricing-wrapper { @include flex; .pricing-card { display: block; border: 1px solid $border-color; padding: 30px 15px; flex-grow: 1; flex-basis: 0; background: $white; @include transition(all,.3s); &-header { .pricing-card-icon { width: 70px; margin-bottom: 25px; } } &-footer { margin: 15px 0; span { font-size: calc(18px + (35 - 18) * ((100vw - 300px) / (1300 - 300))); font-weight: 600; opacity: .8; &:first-child { position: relative; right: -6px; top: -6px; font-size: calc(15px + (25 - 15) * ((100vw - 300px) / (1300 - 300))); } } } &-title { margin-bottom: 15px; font-size: calc(18px + (35 - 18) * ((100vw - 300px) / (1300 - 300))); } &-list { p { margin-bottom: 12px; font-weight: 500; opacity: .6; i { color: $red; } } } &:hover { transform: translateY(-5px); border-radius: $card-border-radius !important; } &:first-child { border-radius: $card-border-radius 0 0 $card-border-radius; } &:nth-child(2) { margin-left: -1px; margin-right: -1px; } &:last-child { border-radius: 0 $card-border-radius $card-border-radius 0; } } } @include media-breakpoint-down(sm) { .pricing-wrapper { flex-direction: column; } .pricing-card { border-radius: $card-border-radius !important; margin: 0 0 15px 0 !important; width: 100%; } } /* testmonial card */ .testimonial-card { @include flex; align-items: center; margin-bottom: 30px; &-img-holder { min-width: 45px; max-width: 45px; z-index: 999; } &-img { background: $white; padding: 4px; width: 90px; height: 90px; border-radius: 50%; } &-body { text-align: left; border: 1px solid $border-color; background: $white; padding: 20px 20px 20px 60px; border-radius: $card-border-radius; } &-title { margin-top: 20px; font-size: calc(14px + (18 - 14) * ((100vw - 300px) / (1300 - 300))); } } /* blog wrapper */ .blog-card { @include flex; text-align: left; border: 1px solid $border-color; margin-bottom: 30px; border-radius: $card-border-radius; overflow: hidden; &-header { min-width: 350px; max-width: 350px; } &-img { border-radius: $card-border-radius 0 0 $card-border-radius; width: 100%; height: 100%; object-fit: cover; } &-body { padding: 30px 20px 30px 30px; } &-title { font-weight: 100; } &-caption { margin: 15px 0 15px !important; i { display: inline-block; width: 15px; } a { margin-right: 10px;; color: #444; text-decoration: none; display: inline-block; font-weight: 600; opacity: .7; font-size: 13px; } } &-link { text-decoration: none; margin-top: 20px; display: block; font-size: 13px; i { position: relative; top: 1px; } } } @include media-breakpoint-down (md) { .blog-card { flex-direction: column; .blog-card-header { width: 100%; max-width: 100%; min-width: 100%; } } }