.items {
    display: flex;
    flex-wrap: wrap;
    margin: -20px -20px 0 0;
}

.items-30 {
    margin: -27px -27px 0 0;
}

@media(max-width: 991px) {
    .items {
        justify-content: center;
    }
}

.item {
    margin-top: 20px;
}

.items-30 .item {
    margin-top: 27px;
}

.item-mr {
    height: 100%;
    margin-right: 20px;
}

.items-30 .item-mr {
    margin-right: 27px;
}

.w100 {
    width: 100%;
}

.w2 {
    width: 50%;
}

.w3 {
    width: 33.333%;
}

.w4 {
    width: 25%;
}

.w5 {
    width: 20%;
}

@media(max-width: 1260px) {
    .w4, .w5 {
        width: 33.333%;
    }
}

@media(max-width: 991px) {
    .w2 {
        width: 100%;
    }
    .w3, .w4, .w5 {
        width: 50%;
    }
}

@media(max-width: 767px) {
    .w3, .w4, .w5 {
        width: 100%;
    }
}
/**/
.item-block {
    position: relative;
    height: 100%;
    background-color: #fff;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
    border-radius: 8px;
    padding: 30px 20px;
}

.item-p2 {
    padding: 40px 15px;
}

.item-p3 {
    padding: 50px 15px 40px 15px;
}

@media(max-width: 991px) {
    .item-p2 {
        padding: 35px 15px;
    }
    .item-p3 {
        padding-top: 35px;
        padding-bottom: 32px;
    }
}

.with-icons .item-block {
    padding-left: 15px;
}

@media(max-width: 1260px) {
    .with-icons .item-block {
        padding-left: 0;
    }
}

@media(max-width: 450px) {
    .item-block, .with-icons .item-block {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.title-mt {
    margin-top: 35px;
}

@media(max-width: 991px) {
    .title-mt {
        margin-top: 30px;
    }
}

@media(max-width: 450px) {
    .title-mt {
        margin-top: 22px;
    }
}

.break-all {
    word-break: break-all;
}

@media(max-width: 1260px) {
    .break-all {
        word-break: normal;
    }
}

.title-line3 {
    min-height: 106px;
}

.item-icon {
    width: 150px;
    padding: 0 15px;
}

@media(max-width: 1260px) {
    .item-block h5 {
        min-height: auto;
    }
    .item-icon {
        width: 130px;
    }
}

.item-icon img {
    margin: 0 auto;
}

.icon-desc {
    width: 100%;
    flex: 1 1;
}

@media(max-width: 450px) {
    .item-icon {
        width: 100%;
    }
    .icon-desc {
        flex: none;
        text-align: center;
        padding-top: 20px;
    }
}

.item-vert-icon, .item-vert-icon2, .item-vert-icon3,
.item-vert-icon4 {
  display: flex;
  align-items: center;
  justify-content: center;
}

.item-vert-icon {
  height: 65px;
} 

.item-vert-icon img {
    max-height: 65px;
}

.item-vert-icon4 {
    height: 94px;
}

.item-vert-icon4 img {
    max-height: 94px;
}

@media(max-width: 450px) {
    .item-vert-icon4 {
        height: 75px;
    }
    .item-vert-icon4 img {
        max-height: 75px;
    }
}

.item-vert-icon2 {
  height: 134px;
  margin: 30px 0;
} 

.item-vert-icon2 img {
    max-height: 134px;
}

@media(max-width: 991px) {
    .item-vert-icon2 {
        height: 100px;
        margin: 25px 0;
    } 
    .item-vert-icon2 img {
        max-height: 100px;
    }
}

@media(max-width: 767px) {
    .item-vert-icon2 {
        height: 90px;
    } 
    .item-vert-icon2 img {
        max-height: 90px;
    }
}

.item-vert-icon3 {
    height: 101px;
    margin: 30px 0;
} 

.item-vert-icon3 img {
    max-height: 101px;
}

@media(max-width: 1260px) {
    .item-vert-icon3 {
        height: 80px;
        margin: 25px 0;
    } 
    .item-vert-icon3 img {
        max-height: 80px;
    }
}

/**/
.item-cont {
    position: relative;
    height: 100%;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 0 7px rgba(0,0,0,0.1);
    overflow: hidden;
}

.hauto {
    height: auto;
}

.item-image {
    position: relative;
    width: 100%;
    height: 255px;
    background-color: #47aee1;
    overflow: hidden;
}

.h2 {
    height: 290px;
    border-radius: 6px;
}

.h3 {
    height: 710px;
    border-radius: 6px;
}

.h4 {
    height: 450px;
}

@media(min-width: 991px) and (max-width: 1260px) {
    .h4 {
        height: 390px;
    }
}

@media(max-width: 1260px) {
    .h3 {
        height: 500px;
    }
}

@media(max-width: 767px) {
    .h3 {
        height: 350px;
    }
}

.item-image-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    opacity: 1;
    transition: .3s;
}

.item:hover .item-image-bg, .hover-img .item:hover .item-image-bg {
    transform: translateX(-50%) translateY(-50%) scale(1.15);
    opacity: 0.9;
    transition: .3s;
}

.w2 .item-image {
    height: 305px;
}

@media(max-width: 991px) {
    .w2 .item-image {
        height: 240px;
    }
}

.item-image-desc {
    text-align: center;
    padding: 35px;
    padding-bottom: 40px;
}

@media(min-width: 991px) and (max-width: 1260px), (max-width: 767px) {
    .item-image-desc {
        padding-top: 20px;
        padding-bottom: 30px;
    }
    .article .item-image-desc {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

.desc-left p, .desc-left h1, .desc-left h2, .desc-left h3,
.desc-left h4, .desc-left h5, .desc-left h6, .desc-left li {
    text-align: left;
}

@media(max-width: 767px) {
    .desc-left h1, .desc-left h2, .desc-left h3,
    .desc-left h4, .desc-left h5, .desc-left h6 {
        text-align: center;
    }
}

.item-image-desc h4 {
    line-height: 1.22;
}

@media(max-width: 1260px) {
    .item-image-desc {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.item-top-title {
    text-align: center;
    padding: 40px 30px 35px 30px;
}

@media(max-width: 991px) {
    .item-top-title {
        padding: 35px 15px 30px 15px;
    }
}

.item-line {
    border-top: 1px solid rgba(0,0,0,0.3);
    border-bottom: 1px solid rgba(0,0,0,0.3);
    padding: 17px 0;
    margin-top: 20px;
}

.with-btns .btn-block, .with-btns2 .btn-block {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 32px;
}

.with-btns .btn-block {
    padding: 0 15px;
}

.with-btns .item-image-desc {
    padding-bottom: 0;
}

.with-btns .item-cont {
    padding-bottom: 112px;
}
/**/
.with-btns2 .btn {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
}

.with-btns2 .btn-block {
    padding: 0 30px;
}

.with-btns2 .item-block {
    padding-bottom: 112px;
}

@media(max-width: 450px) {
    .with-btns2 .btn-block {
        padding: 0 15px;
    }
}

/*blog*/
.main-post .item-image-desc-p {
    width: 100%;
    flex: 1 1;
    padding-right: 50px;
}

@media(min-width: 991px) and (max-width: 1260px) {
    .main-post .item-image-desc-p {
        padding-right: 25px;
    }
}

@media(min-width: 991px) and (max-width: 1260px), (max-width: 767px) {
    .main-post .item-image-desc-p {
        flex: none;
        padding-right: 0;
    }
    .main-post .btn-block {
        width: 100%;
        margin-top: 20px;
    }
}

.main-post .item-image-desc .btn {
    min-width: auto;
    padding-left: 28px;
    padding-right: 28px;
}

@media(max-width: 767px) {
    .main-post .item-image-desc .btn {
        min-width: 50%;
    }
}

.image-info {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.5);
    padding: 0 35px;
}

.blog .image-info {
    padding: 0 30px;
}

@media(min-width: 991px) and (max-width: 1260px), (max-width: 991px) {
    .image-info, .blog .image-info {
        padding: 0 15px;
    }
}

.image-info h5 {
    color: #fff;
    border-bottom: 1px solid rgba(255,255,255,0.5);
    padding: 18px 0 15px 0;
}

.image-info-line {
    padding: 18px 0;
}

.image-info p {
    position: relative;
    color: #fff;
    margin-top: 0;
}

.info-name {
    padding-left: 12px;
}
