/****** Root Variables ******/

:root {
    --lightgreen-patten-bg: url("/sites/zweb/images/qengine/lightgreen-patten-bg.jpg") no-repeat;
    --blue-patten-bg: url("/sites/zweb/images/qengine/blue-patten-bg.jpg") no-repeat;
    --link-arrow-icon: url("/sites/zweb/images/qengine/link-arrow.svg");
    --bluelink-arrow-icon: url("/sites/zweb/images/qengine/bluelink-arrow.svg");
    --secondary-cta-color: #0a55eb;
    --white: #FFFFFF;
    --black: #000000;
    --top-postion: 68px;
}

/****** Base Styles & Typography ******/

.pagewrapper {
    --h1-font-1: 68px;
    --h2-font-1: 72px;
    --h2-font-2: 64px;
    --h2-font-3: 48px;
    --h2-font-4: 40px;
    --h2-font-5: 32px;
    --h3-font-1: 24px;
    --h3-font-2: 20px;
    --h4-font-1: 20px;
    --h4-font-2: 22px;
    --p-font-1: 20px;
    --p-font-2: 18px;
    --p-font-3: 16px;
    --a-font-1: 16px;
    --a-font-2: 24px;
    --a-font-3: 20px;
    --spl-font: 56px;
    max-width: 1920px;
    margin: 0 auto
}

.pagewrapper h1,
.pagewrapper h2,
.pagewrapper h3 {
    font-family: var(--primaryfont-semibold)
}

.pagewrapper h1,
.pagewrapper h2,
.pagewrapper h3,
.pagewrapper h4 {
    line-height: 1.1
}

.pagewrapper h1 {
    font-size: var(--h1-font-1);
    letter-spacing: -1.44px;
    margin-block-end: 0
}

.pagewrapper h2 {
    font-size: var(--h2-font-2);
    letter-spacing: -1.12px
}

.pagewrapper h3 {
    font-size: var(--h2-font-2);
    letter-spacing: -0.8px
}

.pagewrapper p,
.pagewrapper a,
.pagewrapper span,
.pagewrapper button {
    letter-spacing: -0.32px
}

.pagewrapper p,
.pagewrapper ul li {
    font-size: var(--p-font-2);
    line-height: 1.8;
    margin: 0 0 24px
}

.pagewrapper p a {
    color: var(--zwc-link-clr)
}

.pagewrapper img {
    vertical-align: top
}

.pagewrapper .content-wrap {
    padding-block: 100px
}

.pagewrapper .zwc-sec-title h2 {
    max-width: 1020px;
    margin-block-end: 60px;
    margin-inline: auto;
    text-align: center
}

/****** Flex Layout Utilities ******/

.zwc-flx-cnt {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.zwc-flx-cnt-cntralign {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.zwc-flex-one-col {
    width: 100%
}

.zwc-flex-two-col {
    width: 50%
}

.zwc-flex-three-col {
    width: 33.33%
}

.zwc-flex-row-reverse-lg {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}


/****** Focus Styles ******/

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid #0047ff;
    -webkit-box-shadow: none;
    box-shadow: none
}

/****** CTA Buttons & Links ******/

.zwc-cta-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px;
    margin-block-start: 30px
}

[class|="zwc-cta-btn"] {
    position: relative;
    z-index: 1;
    display: inline-block;
    text-align: center;
    font-family: var(--primaryfont-semibold);
    font-size: var(--a-font-1);
    border-radius: 4px;
    padding: 16px 60px 16px 24px;
    cursor: pointer;
    text-transform: uppercase;
    color: var(--white);
    -webkit-transition: all ease .3s;
    transition: all ease .3s;
    line-height: normal;
    border: 1px solid transparent;
    margin: 0
}

[class|="zwc-cta-btn"]:after {
    content: "";
    background: var(--link-arrow-icon) 0 0 / 10px auto no-repeat;
    display: block;
    width: 15px;
    height: 15px;
    right: 28px;
    top: calc(50% - 8px);
    position: absolute;
    z-index: 1;
    -webkit-transition: all ease .3s;
    transition: all ease .3s;
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

[class|="zwc-cta-btn"]:hover:after {
    right: 23px
}

.zwc-cta-btn-demo {
    color: var(--secondary-cta-color);
    border-color: var(--secondary-cta-color)
}

.zwc-cta-btn-demo:after {
    background-image: var(--bluelink-arrow-icon)
}

.zwc-cta-btn-demo:hover {
    background: var(--secondary-cta-color);
    color: var(--white)
}

.zwc-cta-btn-demo:hover:after {
    background-image: var(--link-arrow-icon)
}

/****** Ticked Content List ******/

ul.zwc-cnt-list {
    margin-block-start: 30px
}

ul.zwc-cnt-list li {
    letter-spacing: -0.4px;
    padding-inline-start: 28px;
    position: relative;
    text-align: left;
    margin-block-end: 15px
}

ul.zwc-cnt-list li:last-child {
    margin-block-end: unset
}

ul.zwc-cnt-list li:before,
ul.zwc-cnt-list li:after {
    position: absolute;
    content: "";
    z-index: 1
}

ul.zwc-cnt-list li:before {
    width: 18px;
    height: 18px;
    left: 0;
    top: 8px;
    border-radius: 50%;
    border: 2px solid var(--zqe-text-green)
}

ul.zwc-cnt-list li:after {
    top: 15px;
    left: 5px;
    width: 8px;
    border-left: 2px solid var(--zqe-text-green);
    height: 4px;
    border-bottom: 2px solid var(--zqe-text-green);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.zwc-img-box{
    border-radius: 12px;
    position: relative;
    text-align: center;
    background: var(--blue-patten-bg);
    background-size: cover;
    background-position: center left;
    padding: 20px;
    border-radius: 12px;
}

/****** Banner Section ******/

.zwc-banner-section {
    background: var(--lightgreen-patten-bg) bottom center / cover;
    padding-top: var(--top-postion);
    margin-top: calc(-1 * var(--top-postion))
}

.zwc-banner-section .zwc-bnr-wrap {
    /*! justify-content: space-between; */
    gap: 0px 50px;
}

.zwc-banner-section .zwc-bnr-content {
    width: calc(58% - 25px);
}

.zwc-banner-section .zwc-bnr-content-list {
    width: calc(42% - 25px);
}

.zwc-banner-section .zwc-bnr-content-list ul.zwc-cnt-list {
    margin-block-start: 0
}

.zwc-banner-section .zwc-bnr-content-list ul.zwc-cnt-list li {
    /*! font-family: var(--zf-primary-medium); */
    font-size: var(--p-font-1);
    line-height: 1.5
}

/****** Intro Section ******/

.zwc-intro-section .zwc-intro-wrap {
    max-width: 680px;
    margin-inline: auto;
    text-align: center
}

.zwc-intro-section .zwc-intro-wrap h2 {
    margin-block-end: 24px
}

.zwc-intro-section .zwc-intro-wrap p {
    margin-block-end: 0
}

/****** Overview & Flowchart Sections ******/

.zwc-overview-section {
    background: var(--zqe-gray-bg)
}

.zwc-overview-section .zwc-overview-title,
.zwc-flowchart-section .zwc-flowchart-title {
    max-width: 800px;
    margin-inline: auto;
    margin-block-end: 60px;
    text-align: center
}

.zwc-overview-section .zwc-overview-title h2,
.zwc-flowchart-section .zwc-flowchart-title h2 {
    margin-block-end: 24px
}

.zwc-overview-section .zwc-overview-title p,
.zwc-flowchart-section .zwc-flowchart-title p {
    margin-block-end: 0
}

.zwc-overview-section .zwc-overview-img,
.zwc-flowchart-section .zwc-flowchart-img {
    max-width: 1080px;
    margin-inline: auto
}

.zwc-overview-section .zwc-overview-img img,
.zwc-flowchart-section .zwc-flowchart-img img {
    width: 100%;
    height: auto;
    border-radius: 12px
}

/****** Feature Section ******/

.zwc-feature-section .zwc-feature-box {
    gap: 40px 70px;
}

.zwc-feature-section .zwc-feature-box:not(:last-child) {
    margin-block-end: 80px
}

.zwc-feature-section .zwc-feature-content {
    width: calc(50% - 35px)
}

.zwc-feature-section .zwc-feature-content p:last-child {
    margin-block-end: 0
}

.zwc-feature-section .zwc-feature-img {
    width: calc(50% - 35px);
}
.zwc-feature-section .zwc-feature-img .zwc-feaimg-box{
    padding: 20px 25px;
    background: var(--zqe-gray-bg);
    border-radius: 12px;
    max-width: 575px;
}

.zwc-feature-section .zwc-feature-img .zwc-img-box{
    padding: 60px 35px;
    min-height: 560px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/****** Bottom CTA Section ******/

.zwc-bottom-cta-section {
    background: var(--green-patten-bg) top center / cover;
}

.zwc-bottom-cta-section h2 {
    margin-block-end: 30px
}

.zwc-bottom-cta-section .zwc-bottom-cta-wrap {
    text-align: center;
    max-width: 950px;
    margin: 0 auto
}

.zwc-bottom-cta-section .zwc-cta-wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

/****** FAQ Section ******/

.zwc-faq-section {
    background: var(--black);
    color: var(--white)
}

.zwc-faq-section .zwc-faq-block {
    gap: 30px
}

.zwc-faq-section .zwc-faq-heading,
.zwc-faq-section .zwc-faq-item,
.zwc-faq-section .zwc-faq-cnt h3,
.zwc-faq-section .zwc-faq-cnt h3 button {
    position: relative
}

.zwc-faq-section .zwc-faq-heading {
    width: calc(45% - 15px)
}

.zwc-faq-section .zwc-faq-heading div {
    position: -webkit-sticky;
    position: sticky;
    top: 90px
}

.zwc-faq-section .zwc-faq-heading h2 {
    font-size: var(--h2-font-3);
    color: var(--white)
}

.zwc-faq-section .zwc-faq-cnt {
    width: calc(55% - 15px)
}

.zwc-faq-section .zwc-faq-item {
    margin-block-end: 16px;
    background: #262626;
    border-radius: 8px
}

.zwc-faq-section .zwc-faq-item:last-child {
    margin-block-end: 0
}

.zwc-faq-section .zwc-faq-item.active h3 span:after {
    display: none
}

.zwc-faq-section .zwc-faq-cnt h3 {
    margin-block-end: 0;
    z-index: 2;
    color: #d1d1d1;
    line-height: 0;
}

.zwc-faq-section .zwc-faq-cnt h3 button {
    font-family: var(--primaryfont-semibold);
    font-size: var(--h3-font-2);
    line-height: 1.5;
    letter-spacing: -0.4px;
    margin-block-end: 0;
    cursor: pointer;
    padding: 24px 56px 24px 24px;
    background: transparent;
    border: inherit;
    width: 100%;
    text-align: left;
    z-index: 2;
    color: var(--white)
}

.zwc-faq-section .zwc-faq-cnt h3 span,
.zwc-faq-section .zwc-faq-cnt h3 span:before,
.zwc-faq-section .zwc-faq-cnt h3 span:after {
    content: "";
    position: absolute;
    cursor: pointer
}

.zwc-faq-section .zwc-faq-cnt h3 span {
    right: 26px;
    top: 26px;
    z-index: 1;
    width: 24px;
    height: 24px;
    background-color: var(--white);
    border-radius: 100px
}

.zwc-faq-section .zwc-faq-cnt h3 span:before,
.zwc-faq-section .zwc-faq-cnt h3 span:after {
    background: var(--black);
    z-index: 2;
    border-radius: 8px;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.zwc-faq-section .zwc-faq-cnt h3 span:before {
    height: 2px;
    width: 14px
}

.zwc-faq-section .zwc-faq-cnt h3 span:after {
    width: 2px;
    height: 14px
}

.zwc-faq-section .zwc-faq-ans {
    display: none;
    padding: 0 24px 24px
}

.zwc-faq-section .zwc-faq-item:first-child .zwc-faq-ans {
    display: block
}

.zwc-faq-section .zwc-faq-ans p,
.zwc-faq-section .zwc-faq-ans li {
    color: #d1d1d1;
    margin-block-end: 0
}

.zwc-faq-section .zwc-faq-ans a {
    color: var(--white);
    text-decoration: underline
}

/****** Media Queries ******/

@media screen and (max-width: 1440px) {
    .pagewrapper {
        --h1-font-1: 62px;
        --h2-font-1: 60px;
        --h2-font-2: 56px;
        --h2-font-3: 40px;
        --h3-font-1: 22px;
        --h2-font-4: 32px
    }

    .pagewrapper h2 {
        letter-spacing: -1.28px
    }
}

@media screen and (max-width: 1199px) {
    .pagewrapper {
        --h2-font-4: 26px;
        --h2-font-5: 24px
    }

    .pagewrapper .content-wrap {
        padding-block: 80px
    }

}

@media screen and (max-width: 991px) {
    .pagewrapper {
        --h2-font-1: 54px;
        --h2-font-2: 54px;
        --h2-font-3: 40px;
        --a-font-3: 16px;
        --spl-font: 46px
    }

    .zwc-banner-section .zwc-bnr-content,
    .zwc-banner-section .zwc-bnr-content-list,
    .zwc-feature-section .zwc-feature-content,
    .zwc-feature-section .zwc-feature-img,
    .zwc-faq-section .zwc-faq-heading,
    .zwc-faq-section .zwc-faq-cnt {
        width: 100%
    }

    .zwc-banner-section .zwc-bnr-content-list ul.zwc-cnt-list {
        margin-block-start: 30px
    }


    .zwc-feature-section .zwc-feature-box:not(:last-child) {
        margin-block-end: 50px
    }

    .zwc-faq-section .zwc-faq-heading div {
        position: static;
        top: 0
    }
}

@media screen and (max-width: 767px) {
    .pagewrapper .content-wrap {
        padding-block: 60px;
        max-width: 600px
    }


    .pagewrapper {
        --h1-font-1: 56px;
        --h2-font-1: 52px;
        --h2-font-2: 52px;
        --h2-font-3: 40px;
        --h2-font-4: 28px;
        --a-font-2: 20px;
        --spl-font: 40px;
        overflow: hidden
    }

    .pagewrapper ul li {
        line-height: 1.8
    }

    .pagewrapper .zwc-cta-wrap {
        -webkit-box-pack: unset;
        -ms-flex-pack: unset;
        justify-content: unset
    }

    [class|="zwc-sprite-feaicon"] {
        -webkit-transform: scale(0.7) translateX(-17%);
        transform: scale(0.7) translateX(-17%);
        margin-block-end:0
    }

    .zwc-watch-btn {
        text-indent: -9999px;
        padding: 0;
        background: var(--black);
        position: absolute;
        left: 50%;
        top: 50%;
        margin: auto;
        width: 44px;
        height: 44px;
        border-radius: 25px;
        cursor: pointer
    }

    .zwc-watch-btn:before {
        position: absolute;
        content: "";
        width: 42px;
        height: 42px;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        background: var(--black);
        border-color: var(--black);
        -webkit-animation: wave 2s forwards infinite;
        animation: wave 2s forwards infinite;
        border-radius: 100%
    }

    .zwc-watch-btn:after {
        content: "";
        position: absolute;
        left: 4px;
        top: 0;
        right: 0;
        bottom: 0;
        width: 0;
        height: 0;
        border-top: 8px solid transparent;
        border-bottom: 8px solid transparent;
        border-left: 13px solid var(--white);
        margin: auto
    }

    .zwc-flex-one-col,
    .zwc-flex-two-col,
    .zwc-flex-three-col {
        width: 100%
    }

    .zwc-feature-section .zwc-feature-img .zwc-img-box{
        min-height: auto;
    }
    
    .zwc-intro-section .zwc-intro-wrap,
    .zwc-overview-section .zwc-overview-title,
    .zwc-flowchart-section .zwc-flowchart-title,
    .zwc-bottom-cta-section .zwc-bottom-cta-wrap {
        text-align: unset;
        max-width: unset;
        margin-inline: unset
    }

    .zwc-faq-section .content-wrap {
        padding-inline: 0
    }
}

@media screen and (max-width: 480px) {
    .pagewrapper {
        --h1-font-1: 40px;
        --h2-font-1: 36px;
        --h2-font-2: 36px;
        --h2-font-3: 36px;
        --h2-font-5: 28px
    }

    .zwc-trusted-brands-section .zwc-heading-tag {
        font-family: var(--primaryfont-semibold);
        font-size: var(--h4-font-1);
        padding: unset;
        border: unset;
        margin-block-end: 0;
        border-radius: unset;
        text-transform: unset;
        background: unset
    }
}