.banner-section,
.zw-template-inner {
    overflow: hidden;
}
.zw-product-header .product-title .product-icon {
    filter: brightness(100);
    -webkit-filter: brightness(100);
}
a.act-btn.cta-btn {
    padding: 12px 20px;
    border-radius: 3px;
}
img{
    display: block;
    position: relative;
    width: 100%;
}
h1 {
    font-size: 55px;
    line-height: 1.1;
}
h1 strong {
    font-family: var(--primaryfont-bold);
    color: #09a254;
}
p {
    margin: 0 0 15px;
    font-size: 18px;
}
body h2 {
    font-size: 42px;
    line-height: 1.1;
    font-family: var(--primaryfont-bold);
}
h2 strong {
    font-family: var(--primaryfont-bold);
    display: block;
    font-size: 55px;
}
.rows {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.zw-product-header, .banner-section {
    background: url(/sites/zweb/images/forms/zf-header-bg.jpg) repeat;
    background-size: 45px auto;
}
h2 span {
    color: #fd4a47;
}
.zf-feature-content h4 {
    line-height: 1.2;
    font-family: var(--secondaryfont-bold);
    font-size: 32px;
}
.img-shadow img {
    box-shadow: 0 0 30px rgb(0 0 0 / 5%);
    border-radius: 8px;
}
/********* Banner *************/

.banner-section {
    padding: 3em 0 6em;
    position: relative;
}
.banner-content {
    max-width: 750px;
    margin: 0 auto;
    color: #fff;
    text-align: center;
}
.banner-section .rows {
    justify-content: space-between;
    align-items: center;
}
.col-1{
    flex: 0 0 50%;
    max-width: 45%;
    padding: 0 20px;
}
.col-2{
    flex: 0 0 50%;
    max-width: 50%;
    margin: 0 auto;
}
.zf-feature-img {
    border-radius: 30px;
    max-width: 390px;
    margin: 0 auto;
    padding: 25px;
}
.zf-feature-img img {
    border-radius: 30px;
    max-width: 340px;
    margin: 0 auto;
    border: 5px solid #000;
}
.bottom-image .col-1,.bottom-image .col-2 {
    flex: 0 0 100%;
    max-width: 100%;
}
.bottom-image  .zf-feature-content {
    max-width: 500px;
    text-align: center;
    margin: 0 auto 40px;
}
.zf-feature-section .rows {
    max-width: 1000px;
    margin: 0 auto;
}
.zf-feature-section {
    padding: 6em 0 0;
}
.left-image .rows {
    flex-direction: row-reverse;
}
.zf-feature-wrapper {
    padding-bottom: 5em;
}
.left-image .col-2 {
    margin: 0;
}
.zf-feature-section {
    position: relative;
}

/* First part */
/* 
.zf-feature-section:before {
    content: "";
    position: absolute;
    right: 0px;
    top: 20px;
    bottom: 20px;
    width: 50%;
    background: red;
    border-radius: 20px 0 0 20px;
}
.zf-feature-section.left-image:before{
    right: auto;
    left: 0;
    border-radius: 0 10px 10px 0;
}
.zf-feature-section:nth-child(1n+1):before {
    background: #e4fee4;
}
.zf-feature-section:nth-child(2n+1):before {
    background: #cffcff;
}
.zf-feature-section:nth-child(3n+1):before {
    background: #fff1d5;
}
.zf-feature-section:nth-child(4n+1):before {
    background: #d5ecff;
}
.zf-feature-section.bottom-image:before {
    left: 0;
    right: 0;
    width: 100%;
    bottom: 0;
    top: 0;
} */

/* Second part */

.zf-feature-section .zf-feature-img:before {
    content: "";
    position: absolute;
    right: 0px;
    left: 0;
    top: 35%;
    bottom: 0px;
    background: red;
    border-radius: 20px 20px 0 0;
    display: none;
}
.zf-feature-section:nth-child(1n+1) .zf-feature-img {
    background: #e4fee4;
}
.zf-feature-section:nth-child(2n+1) .zf-feature-img {
    background: #cffcff;
}
.zf-feature-section:nth-child(3n+1) .zf-feature-img {
    background: #fff1d5;
}
.zf-feature-section:nth-child(4n+1) .zf-feature-img {
    background: #d5ecff;
}
/*** new ****/


.zf-feature-section.left-image:first-child {
    background: #f5fafd;
    position: relative;
}
.zf-feature-section.left-image:first-child .zf-feature-img {
    background: #d7eaf5;
    z-index: 1;
    position: relative;
}
.zf-feature-section.left-image:first-child::after {
    background: #fff;
    width: 100%;
    height: 160px;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
}
.zf-feature-section.left-image:first-child .zf-feature-content {
    margin-top: -100px;
}

.zf-feature-section.bottom-image .rows {
    background: #ffe3e3;
    padding: 4em 0;
    border-radius: 20px;
}
.zf-feature-section.bottom-image .zf-feature-img{
    background: none;
    padding: 0;
}
.zf-feature-img .col-2 {
    position: relative;
}
.col-2 {
    position: relative;
}


/********* story-section **********/

.story-section {
    padding: 4em 0;
}
.story-section h2 {
    /* font-family: var(--zf-secondary-light); */
    font-size: 45px;
    line-height: 1.1;
    text-align: center;
    margin-bottom: 50px;
}

.story-section h2 span {
    font-family: var(--primaryfont-bold);
}

.story-slider-1 .item p, .name {
    font-size: 18px;
    line-height: 2;
}

.story-slider-1 {
    max-width: 700px;
    margin: 0 auto;
}

.name {
    font-family: var(--secondaryfont-semibold);
    margin-bottom: 40px;
}

.name small {
    font-family: var(--secondaryfont-regular);
}

.story-section .col-1 {
    flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}

.story-section .col-2 {
    flex: 0 0 60%;
    -ms-flex: 0 0 60%;
    max-width: 60%;
    position: relative;
}

.story-section .story-slider-2 .item {
    padding: 2px;
    margin-right: 0;
    float: none;
    height: 74px;
    width: 74px !important;
    position: relative;
    cursor: pointer;
    border: 2px solid #fd4947;
    border-radius: 50%;
    transform: scale(0.8);
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    padding: 0;
}

.story-section .story-slider-2 .slick-track {
    display: flex;
    display: -ms-flexbox;
    justify-content: center;
    -ms-flexpack: center;
}

.story-slider-2 {
    margin: 0 0 20px;
    text-align: center;
}
.story-slider-2 img {
    max-width: 70px;
    border-radius: 50%;
    transition: all .5s ease-in-out;
    transform: scale(0.8);
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
}
.story-section span.icons {
    background: url(/sites/zweb/images/forms/zf-fbuilder-sprite.png);
    display: block;
    background-size: 105px auto;
    background-repeat: no-repeat;
    width: 50px;
    height: 50px;
    background-position: 0 0;
    position: absolute;
    z-index: 1;
}
.story-section span.icons.icons-1 {
    top: -15px;
    left: -22px;
    border-radius: 50%;
    transform: scale(0.2);
    opacity: 0;
    transition: all .5s ease;
}


.story-section .story-slider-2 .item.slick-current.slick-active,
.slick-current img {
    transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
}


.story-slider-2 .item:first-child img {
    background: #e3e3f2;
}
.story-slider-2 .item:nth-child(2) img {
    background: #e0fde0;
}
.story-slider-2 .item:last-child img {
    background: #d6eefd;
}

.story-section .slick-current span.icons.icons-1 {
    opacity: 1;
    transform: scale(0.5);
    -webkit-transform: scale(0.5);
    -ms-transform: scale(0.5);
    display: block;
}
.story-section .slick-prev {
    left: 150px;
}
.story-section .slick-next {
    right: 150px;
}
.story-slider-2 .item:nth-child(1) {
    border-color: #eeb4d3;
}
.story-slider-2 .item:nth-child(2) {
    border-color: #aee8ae;
}
.story-slider-2 .item:nth-child(3) {
    border-color: #88cdf7;
}
.story-section .story-slider-2 .slick-track {
    transform: none !important;
    width: 100% !important;
}

.story-slider-1 .item.slick-current {
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    opacity: 1;
}
.story-slider-1 .item {
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transition: all .8s!important;
    -webkit-transition: all .8s!important;
    opacity: 0;
}
.story-section .slick-next:before,.story-section .slick-prev:before {
    border-right: 2px solid #000;
    border-top: 2px solid #000;
    width: 9px;
    height: 9px;
    background: no-repeat;
    transform: rotate(45deg) translate(-50%,-50%);
    top: 58%;
    right: 28%;
    transition: none
}
.story-section .slick-next:after,.story-section .slick-prev:after {
    background: #000;
    transform: rotate(90deg);
    left: 13px;
    top: 29%;
    right: auto;
    height: 13px;
    width: 2px;
    transition: none
}
.story-section .slick-prev:hover:before,.story-section .slick-next:hover:before {
    background: 0
}
.story-section .slick-prev:after {
    left: 13px;
    top: 9px
}
.story-section .slick-prev:before {
    left: 12px
}
.story-section .slick-prev:hover,
.story-section .slick-next:hover {
    background: #ff5858
}

.story-section .slick-prev:hover:after {
    background: #fff
}
.story-section .slick-next:hover:after,.story-section .slick-next:hover:before,.story-section .slick-prev:hover:after,.story-section .slick-prev:hover:before {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff
}
.story-section .slick-prev {
    left: -90px;
    right: auto;
    transform: rotate(-180deg)
}
.story-section .slick-next,.story-section .slick-prev {
    right: -90px;
    background: #e2e2e2;
    border-radius: 100%;
    top: 90px
}

/**** rating *****/

.rating-section {
    padding: 5em 0;
    background: #f6f9ff;
}
.rating-section ul {
    max-width: 740px;
    margin: 35px auto 0;
    display: flex;
    display: -ms-flexbox;
    justify-content: space-between;
    -ms-flex-pack: space-between;
}
.rating-section ul li .img-leads {
    height: 70px;
    width: 160px;
    background-image: url(/sites/zweb/images/forms/form-home-sprites.png);
    background-size: 665px auto;
    background-repeat: no-repeat;
    background-position: left 0;
    display: block;
    margin: 0 auto 15px;
}
.rating-section ul li:nth-child(2) .img-leads {
    background-position: -165px -3px;
    width: 185px;
}
.rating-section ul li:nth-child(3) .img-leads {
    background-position: -490px -16px;
    width: 70px;
    height: 70px;
    background-size: 900px;
}
.rating-section ul li:nth-child(4) .img-leads {
    background-position: -425px -4px;
    width: 55px;
}
.rating-main {
    text-align: center;
}
.rating-main p {
    border-bottom: 1px solid #333;
    display: inline-block;
}


.stars-container {
    position: relative;
    display: inline-block;
    color: transparent;
    font-size: 21px;
    letter-spacing: 2px;
}
.stars-container:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '\2605\2605\2605\2605\2605';
    color: #d0d0d0;
}
.stars-container:after {
    position: absolute;
    top: 0;
    left: 0;
    content: '\2605\2605\2605\2605\2605';
    color: #f9a826;
    overflow: hidden;
    transition: ease all 3s;
    -webkit-transition: ease all 3s;
    width: 0%;
}
.counter-star {
    display: block;
    text-align: center;
    font-weight: 300;
    color: #888;
}
.current-value {
    font-size: 25px;
    color: #000;
}

.rating-section ul li {
    opacity: 0;
}
.bottom-animated ul li .stars-container.stars-5:after{
	width: 100%;
} 
.bottom-animated ul li .stars-container.stars-4:after{
	width: 80%;
} 
.bottom-animated ul li .stars-container.stars-4-4:after{	
	width: 88%;
}
.bottom-animated ul li .stars-container.stars-4-5:after{
	width: 90%;
} 
.rating-section .bottom-animated  ul li:nth-child(1) {
   animation: opacity .6s ease-out .2s forwards;
   -webkit-animation: opacity .6s ease-out .2s forwards;
}
.rating-section .bottom-animated ul li:nth-child(2) {
   animation: opacity .6s ease-out .4s forwards;
   -webkit-animation: opacity .6s ease-out .4s forwards;
}
.rating-section .bottom-animated ul li:nth-child(3) {
   animation: opacity .6s ease-out .6s forwards;
   -webkit-animation: opacity .6s ease-out .6s forwards;
}
.rating-section .bottom-animated ul li:nth-child(4) {
   animation: opacity .6s ease-out .8s forwards;
   -webkit-animation: opacity .6s ease-out .8s forwards;
}

@keyframes opacity {
    from {
        visibility: hidden;
        opacity: 0
    }

    to {
        visibility: visible;
        opacity: 1
    }
}

.rating-section ul li {
    opacity: 0
}

.rating-section .bottom-animated ul li:nth-child(1) {
    animation:opacity .6s ease-out .2s forwards;
    -webkit-animation:opacity .6s ease-out .2s forwards;
}

.rating-section .bottom-animated ul li:nth-child(2) {
    animation: opacity .6s ease-out .4s forwards;
    -webkit-animation: opacity .6s ease-out .4s forwards
}

.rating-section .bottom-animated ul li:nth-child(3) {
    animation: opacity .6s ease-out .6s forwards;
    -webkit-animation: opacity .6s ease-out .6s forwards
}

.rating-section .bottom-animated ul li:nth-child(4) {
    animation: opacity .6s ease-out .8s forwards;
    -webkit-animation: opacity .6s ease-out .8s forwards
}
.more-customers a {
    color: #03a9f5;
    border: 1px solid #03a9f5;
    display: inline-block;
    padding: 12px 30px;
    font-family: var(--primaryfont-semibold);
    text-transform: uppercase;
}
/*********** FAQ **************/

.faq-section {
    padding: 90px 0
}
.faq-section h2 {
    text-align: center;
    font-family: var(--primaryfont-semibold);
    font-size: 36px
}
.faq-content {
    border: 1px solid #ebebeb;
    transition: all .5s ease;
    border-radius: 5px;
    margin: 30px 0
}
.faq-content.active {
    border-color: #000000;
    padding-bottom: 20px
}
.faq-content h3.active {
    color: #000000;
}
.faq-content h3 {
    position: relative;
    font-size: 21px;
    border-bottom: 1px solid transparent;
    cursor: pointer;
    margin: 0;
    transition: all .5s ease;
    padding: 30px 30px 30px
}
.faq-content h4 {
    font-size: 26px;
    color: #177dfc
}
.faq-content.active h4 {
    color: #177dfc
}
.faq-content .faq-arrow::after,.faq-content .faq-arrow::before {
    content: '';
    position: absolute;
    display: block;
    right: -9px;
    width: 12px;
    height: 2px;
    background: #000;
    border-radius: 2px;
    transition: all .5s
}
.faq-content.active .faq-arrow::after,.faq-content.active .faq-arrow::before {
    background: #000000;
}
.faq-content .faq-arrow::before {
    top: 5px;
    right: 1px
}
.faq-content .faq-arrow::after {
    right: inherit;
    left: 7px;
    transform: rotate(90deg);
    top: 5px
}
.faq-content h3.active span.faq-arrow:before {
    transform: rotate(-90deg)
}
.faq-content h3 span.faq-arrow {
    position: absolute;
    right: -3px;
    top: 50%;
    width: 20px;
    height: 15px;
    transition: all .5s ease;
    transform: translate(-50%,-50%) rotate(-90deg)
}
.accordion {
    margin: 50px auto 0;
    max-width: 780px
}
ul.list ul li::before,ul.list ul li::after {
    display: none
}
ul.list li {
    position: relative;
    padding: 12px 0 0 25px;
    font-size: 17px;
    margin-bottom: 15px;
    line-height: 1.5
}
ul.list li:before {
    content: '';
    position: absolute;
    width: 17px;
    height: 10px;
    box-shadow: 4px -4px 0 0 #000 inset;
    transform: rotate(-45deg) scale(0.5);
    -webkit-transform: rotate(-45deg) scale(0.5);
    -ms-transform: rotate(-45deg) scale(0.5);
    left: 0;
    top: 20px
}
ul.list li:after {
    content: "";
    position: absolute;
    border: 1px solid #000;
    width: 17px;
    height: 17px;
    top: 17px;
    left: 0;
    border-radius: 50%
}
.accord-content {
    display: none;
    padding: 0 30px;
    margin-top: -15px;
}

/************* Cta *************/
.cta-section {
	background: #131418;
	text-align: center;
	color: #fff;
	padding: 5em 0;
}
.cta-section h2 {
    font-family: var(--primaryfont-semibold);
    margin-bottom: 15px;
}
.cta-section .content-wrap {
    max-width: 800px;
}
.zwc-offline-data-section .content-wrap {
    text-align: center;
    max-width: 1000px;
}
.zf-feature-section.zwc-offline-data-section {
    background: #f8f8f8;
    padding: 60px 0;
}
@media screen and (max-width:1440px) {

    h1 {
        font-size: 50px;
    }
    body h2 {
        font-size: 42px;
    }
}
@media screen and (max-width:1280px) {
    h1 {
        font-size: 42px;
    }
    h3 {
        font-size: 30px;
    }
    body h2 {
        font-size: 36px;
    }
    .banner-content {
        max-width: 480px;
    }
    .cta-section {
        padding: 4em 0;
    }
    .cta-content h2 {
        font-size: 36px;
    }
    .cta-section .content-wrap {
        max-width: 600px;
    }
}
@media screen and (max-width:1199px) { 
   
	.story-section {
        padding: 2em 0 4em;
    }
    .story-section h2 {
        font-size: 40px;
        margin-bottom: 50px;
    }
    .story-section .slick-prev {
        left: 0;
    }
    .story-section .slick-next {
        right: 0;
    }

}
@media screen and (max-width:1023px) {
    h1 {
        font-size: 36px;
    }
	body h2 {
	    font-size: 32px;
	}
    p {
        font-size: 16px;
    }
    .rows > div {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .zf-feature-content,.bottom-image .zf-feature-content {
        max-width: 600px;
        margin: 0 auto 30px;
        text-align: center;
    }
    .zf-feature-section {
        padding: 70px 0 0;
    }
    .zf-feature-section {
        padding: 4em 0 0;
    }
    .zf-feature-section.left-image:first-child::after {
        display: none;
    }
    .zf-feature-section.left-image:first-child {
        background: #fff;
    }
    .zf-feature-section.left-image:first-child .zf-feature-content {
        margin: 0 auto 30px;
    }
	.story-slider-1 .item p, .name {
        font-size: 18px;
        line-height: 2;
    }
    .story-slider-1 .item p {
        max-width: 530px;
    }
	.story-section {
        padding: 2em 0 4em;
    }
    .story-section span.icons{
        display: none;
    }
    .story-section .name small {
        display: block;
    }
    .story-section .slick-prev {
        left: 50px;
    }
    .story-section .slick-next {
        right: 50px;
    }
    .faq-section {
        padding: 60px 0;
    }
    .cta-section .content-wrap {
        max-width: 705px;
    }
    .cta-content h2 {
        font-size: 32px;
    }
   
}
@media screen and (max-width:767px) {
    h1 {
        font-size: 30px;
        line-height: 1.2;
        margin-bottom: 10px;
    }
    p,ul.list li {
        font-size: 15px;
    }
    .banner-content {
        max-width: 420px;
    }
    .banner-section {
        padding: 2em 0 3em;
    }
    .zf-feature-content h4 {
        font-size: 28px;
    }
    .zf-feature-img {
        padding: 15px;
        max-width: 320px;
    }
    .zf-feature-img img {
        max-width: 100%;
    }
    .zf-feature-section.bottom-image .rows {
        background: none;
        padding: 0;
    }
    .zf-feature-section.bottom-image .zf-feature-img {
        background: #ffe3e3;
        padding: 30px;
    }
    .cta-section {
        padding: 3em 0;
    }

	.story-section h2 {
        font-size: 34px;
        max-width: 330px;
        margin: 0 auto 40px;
    }
	.story-section .slick-dots li.slick-active {
	    width: 18px;
	    height: 10px;
	}
	.story-section .slick-dots li {
	    border-radius: 10px;
	    width: 10px;
	    height: 10px;
	    border: 0;
	}
    .story-section .slick-dots li.slick-active {
        background: #fd4947;
        border-color: #fd4947;
    }
    .story-section {
        padding: 4em 0;
    }
    .story-section .col-1 {
        max-width: 100%;
    }
    .story-section .more-customers {
        margin-top: 40px;
    }

	.rating-section ul li {
		flex: 0 0 50%;
		-ms-flex: 0 0 50%;
		padding: 0 0 30px;
	}
	.rating-section ul {
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: flex-end;
		-ms-flex-align: flex-end;
	}
	.rating-section {
		padding: 2em 0 2em;
	}
    .faq-section h2 {
        font-size: 30px;
    }
    .faq-content h3 {
        font-size: 18px;
    }      
    .cta-content h2 {
        font-size: 30px;
    }
}
@media screen and (max-width:480px) {
    .rating-section ul li {
		flex: 0 0 100%;
		-ms-flex: 0 0 100%;
		margin: 0 0 30px;
	}
}