:root {
    --Primary: rgb(75, 45, 130);
    --Secondary: rgb(25, 70, 90);
    --White: rgb(255, 255, 255);
    --Black: rgb(0, 0, 0)
}

@font-face {
    font-family: 'Inter';
    font-weight: 400;
    src: url('fonts/Inter-Regular.ttf')
}

@font-face {
    font-family: 'Inter';
    font-weight: 500;
    src: url('fonts/Inter-Medium.ttf')
}

@font-face {
    font-family: 'Inter';
    font-weight: 700;
    src: url('fonts/Inter-Bold.ttf')
}

@font-face {
    font-family: 'Inter';
    font-weight: 800;
    src: url('fonts/Inter-Black.ttf')
}

*,
::after,
::before {
    box-sizing: border-box
}

@media (prefers-reduced-motion:no-preference) {
    :root {
        scroll-behavior: smooth
    }
}

body {
    font-family: 'Inter';
    font-size: 1rem;
    font-weight: 400;
    color: var(--Black);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent
}

input,
select,
textarea,
button {
    font-family: 'Inter';
    font-size: 1rem
}

button {
    cursor: pointer
}

html,
body {
    height: 100%
}

ul,
ol {
    margin: 0;
    padding: 0
}

a {
    transition: all 0.25s ease-in-out;
    text-decoration: none
}

hr {
    margin: 15px 0;
    opacity: .25
}

p {
    margin: 0 0 15px
}

figure {
    margin: 0
}

.zo-input {
    width: 100%;
    position: relative
}

.zo-input input,
.zo-textarea textarea {
    width: 100%;
    height: 45px;
    padding: 0 10px;
    border: 0;
    border-bottom: 1px solid var(--Primary);
    border-radius: .5rem
}

.zo-textarea textarea {
    height: 150px;
    padding: 15px 10px;
    resize: none
}

.zo-input input:focus,
.zo-textarea textarea:focus {
    outline: 0;
    border-bottom-width: 2px
}

.zo-button input {
    padding: 10px 30px;
    background: var(--Primary);
    color: var(--White);
    border: 0;
    border-radius: 300px
}

.zo-button input:hover {
    background: var(--Primary);
    opacity: .90
}

.zo-button input:focus {
    outline: 0
}

.zo-radios {
    display: flex;
    justify-content: flex-end;
    gap: 10px
}

.zo-radios .zo-radio {
    width: 125px;
    height: 30px;
    display: inline-block;
    position: relative
}

.zo-radios .zo-radio input {
    opacity: 0;
    visibility: hidden;
    appearance: none
}

.zo-radios .zo-radio label {
    width: 100%;
    padding: 7.5px 20px;
    position: absolute;
    top: 0;
    right: 0;
    background: rgb(225, 225, 225);
    color: rgb(95, 95, 95);
    border-radius: 300px;
    text-align: center;
    cursor: pointer;
}

.zo-radios .zo-radio input:checked+label {
    background: var(--Primary);
    color: var(--White)
}

@media (max-width: 575px) {

    .zo-button input {
        width: 100%
    }
}

.zo-vert {
    height: 125px;
    display: block;
    margin: 0 5px;
    position: relative
}

.zo-vert:before {
    content: '';
    width: 1px;
    height: 125px;
    position: absolute;
    top: 0;
    left: 0;
    background: var(--Black)
}

.zo-vert:after {
    content: '';
    width: 10px;
    height: 10px;
    position: absolute;
    bottom: 0;
    left: -5px;
    background: var(--Black);
    border-radius: 50%
}

.zo-title {
    width: 100%;
    margin: 0 0 15px;
    padding: 15px 0;
    position: relative
}

.zo-title strong {
    font-size: 1.5rem
}

@media (max-width: 1140px) {

    .zo-title {
        text-align: center
    }

    .zo-vert,
    .zo-vert:before,
    .zo-vert:after {
        display: none
    }
}

.container-fluid {
    padding: 0 60px
}

@media (max-width: 1140px) {

    .container-fluid {
        padding: 0 15px
    }
}

.zo-offcanvas-section .zo-offcanvas {
    width: 100%;
    background: var(--Primary);
    border: 0;
    z-index: 1095
}

.zo-offcanvas-section .zo-offcanvas .zo-logo img {
    max-width: 125px
}

.zo-offcanvas-section .zo-offcanvas button {
    position: absolute;
    right: 10px;
    background: transparent;
    border: 0
}

.zo-offcanvas-section .zo-offcanvas button:focus {
    box-shadow: none
}

.zo-offcanvas-section .zo-offcanvas button img {
    max-width: 30px
}

.zo-offcanvas-section nav ul li {
    width: 100%;
    display: inline-block;
    position: relative
}

.zo-offcanvas-section nav ul li a {
    display: block;
    padding: 10px;
    position: relative;
    color: var(--White)
}

.zo-offcanvas-section nav ul li ul {
    display: none;
    margin: 15px 0;
    padding: 0 0 0 15px;
    position: relative;
    font-size: .95rem
}

.zo-header-section {
    position: absolute;
    top: 30px;
    right: 0;
    left: 0;
    color: var(--White);
    z-index: 15
}

.zo-header-section .zo-logo img {
    max-width: 150px
}

.zo-header-section nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 15px
}

.zo-header-section nav ul li {
    display: inline-block
}

.zo-header-section nav ul li a {
    display: block;
    padding: 5px 10px;
    color: var(--White)
}

.zo-header-section .zo-responsive {
    display: none;
    cursor: pointer
}

.zo-header-section .zo-responsive img {
    max-width: 60px;
    opacity: .75
}

.zo-header-section.zo-page {
    position: relative;
    top: 0;
    background: rgb(20, 15, 40);
    color: var(--White)
}

@media (max-width: 1140px) {

    .zo-header-section .zo-responsive {
        display: flex;
        align-items: center;
        justify-content: flex-end
    }
}

.zo-slider-section {
    height: 115vh;
    padding: 120px 0 0;
    position: relative;
    background: url(../img/cover-slider.svg) no-repeat;
    background-position: center bottom;
    background-size: cover;
}

.zo-slider-section .zo-content {
    padding: 0 60px 0 0
}

.zo-slider-section .zo-content h2 {
    font-size: 2rem;
    color: rgb(35, 35, 35)
}

.zo-slider-section .zo-content p {
    display: block;
    margin: 30px 0;
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--White)
}

.zo-slider-section .zo-content a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 30px;
    background: var(--Black);
    color: var(--White);
    border-radius: 300px
}

.zo-slider-section .zo-content a:hover {
    opacity: .90
}

@media (max-width: 1140px) {

    .zo-slider-section {
        height: 100vh
    }

    .zo-slider-section .zo-content {
        padding: 0;
        text-align: center
    }

    .zo-slider-section .zo-content h2 {
        font-size: 1.5rem
    }

    .zo-slider-section .zo-content p {
        margin: 15px 0;
        font-size: 1.25rem
    }

    .zo-slider-section figure img {
        max-width: 300px;
        display: block;
        margin: 30px auto 0
    }
}

.zo-services-section {
    width: 100%;
    display: inline-block;
    padding: 0 0 90px;
    position: relative;
    z-index: 15;
}

.zo-services-section ul li {
    display: inline-block;
}

.zo-services-section ul li .zo-service {
    width: 100%;
    display: inline-block;
    position: relative
}

.zo-services-section ul li .zo-service:before {
    content: '';
    width: 80px;
    height: 40px;
    position: absolute;
    top: 45px;
    right: -30px;
    background: url(../img/path.svg) no-repeat;
}

.zo-services-section ul li .zo-service .zo-icon {
    width: 150px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgb(160, 160, 160);
    border: 10px solid rgb(225, 225, 225);
    border-radius: 50%;
    box-shadow: 0 5px 5px 0 rgb(0, 0, 0, .25);
    transition: all 0.25s ease-in-out
}

.zo-services-section ul li .zo-service:hover .zo-icon {
    background: var(--Primary)
}

.zo-services-section ul li .zo-service .zo-text {
    width: 450px;
    padding: 30px;
    display: none;
    position: absolute;
    top: 115%;
    left: 0;
    background: var(--White);
    border-radius: 10px;
    box-shadow: 0 0 15px rgb(0, 0, 0, .15);
    opacity: 0;
    visibility: hidden
}

.zo-services-section ul li .zo-service:hover .zo-text {
    display: block;
    opacity: 1;
    visibility: visible
}

.zo-services-section ul li .zo-service .zo-text strong {
    display: block;
    margin: 0 0 5px
}

.zo-services-section ul li .zo-service .zo-text p {
    margin: 0;
    padding: 0 0 0 20px;
    position: relative
}

.zo-services-section ul li .zo-service .zo-text p:before {
    content: '';
    width: 7.5px;
    height: 7.5px;
    position: absolute;
    top: 7.5px;
    left: 0;
    background: var(--Primary);
    transform: rotate(45deg)
}

.zo-services-section ul li:last-child .zo-service .zo-text {
    right: 0;
    left: auto;
}

.zo-services-section ul li:last-child .zo-service:before {
    display: none
}

@media (max-width: 990px) {

    .zo-services-section ul li .zo-service:before {
        display: none
    }

    .zo-services-section ul li .zo-service .zo-icon {
        background: var(--Primary)
    }

    .zo-services-section ul li .zo-service .zo-icon {
        margin: 0 auto
    }

    .zo-services-section ul li .zo-service .zo-text {
        width: 100%;
        display: block;
        margin: 15px 0 30px;
        position: relative;
        opacity: 1;
        visibility: visible
    }
}

.zo-why-us-section {
    width: 100%;
    display: inline-block;
    padding: 90px 0;
    position: relative
}

.zo-why-us-section:before {
    content: '';
    width: 100%;
    height: 450px;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    background: url(../img/cover-why-us.svg) no-repeat;
    background-size: cover;
    background-position: center
}

@media (max-width: 1140px) {

    .zo-why-us-section:before {
        height: 115vh
    }

    .zo-why-us-section .zo-title {
        margin: 195px 0 0
    }
}

.zo-why-us-section figure {
    position: relative
}

.zo-why-us-section p {
    position: relative;
    text-align: justify
}

.zo-features-section {
    width: 100%;
    display: inline-block;
}

.zo-features-section .col {
    width: 25%
}

.zo-features-section .zo-feature {
    width: 100%;
    display: inline-block;
    padding: 30px 0;
    text-align: center
}

.zo-features-section .zo-feature img {
    display: block;
    margin: 0 auto
}

.zo-features-section .zo-feature strong {
    display: block;
    padding: 10px
}

.zo-features-section .zo-feature p {
    color: rgb(70, 70, 70)
}

@media (max-width: 1140px) {

    .zo-why-us-section .row {
        flex-direction: column-reverse
    }

    .zo-why-us-section p,
    .zo-why-us-section figure {
        text-align: center
    }
}

@media (max-width: 990px) {

    .zo-features-section .col {
        flex: 50% 0 0
    }

    .zo-features-section .zo-feature {
        padding: 10px 0
    }
}

@media (max-width: 575px) {

    .zo-features-section .col {
        flex: 100% 0 0
    }
}

.zo-process-section {
    width: 100%;
    display: inline-block;
    padding: 90px 0
}

.zo-process-section .zo-process {
    width: 100%;
    display: inline-block;
    margin: 30px 0 120px;
    padding: 0 45px;
    position: relative
}

.zo-process-section .zo-process i {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700
}

.zo-process-section .zo-process .zo-content {
    padding: 0 0 0 25px
}

.zo-process-section .zo-process .zo-content strong {
    display: block;
    padding: 0 0 15px;
    font-size: 1.25rem
}

.zo-process-section .zo-process .zo-content p {
    text-align: justify
}

@media (max-width: 1140px) {

    .zo-process-section {
        padding: 60px 0
    }

    .zo-process-section .zo-process {
        margin: 15px 0;
        padding: 0 0 0 15px
    }

    .zo-process-section .zo-process .zo-content strong {
        margin: 0 0 15px;
        padding: 10px 15px;
        font-size: 1rem;
        font-weight: 500;
        background: var(--Primary);
        color: var(--White);
        border-radius: .25rem
    }
}

.zo-stats-section {
    width: 100%;
    display: inline-block;
    margin: -30px 0 30px;
    padding: 120px 0;
    background-size: cover;
    background-position: center;
    color: var(--White);
    text-align: center
}

.zo-stats-section .zo-stat img {
    display: block;
    margin: 0 auto
}

.zo-stats-section .zo-stat span {
    display: block;
    padding: 15px 0;
    font-size: 1.25rem
}

.zo-stats-section .zo-stat strong {
    display: block;
    font-size: 1.5rem
}

@media (max-width: 1140px) {

    .zo-stats-section {
        padding: 60px 0
    }

    .zo-stats-section .zo-stat {
        margin: 15px 0
    }
}

@media (max-width: 575px) {

    .zo-stats-section .zo-stat span {
        font-size: 1rem
    }
}

.zo-contact-section {
    width: 100%;
    display: inline-block;
    margin: 90px 0;
    padding: 45px;
    background: rgb(240, 230, 245);
    border-radius: .5rem
}

.zo-contact-section h2 {
    display: block;
    font-size: 1.75rem;
    line-height: 1.25;
    color: rgb(35, 35, 35)
}

.zo-contact-section strong {
    display: block;
    font-size: 1.5rem;
    color: rgb(65, 65, 65)
}

.zo-contact-section form {
    margin: 30px 0 0
}

.zo-contact-section figure {
    padding: 0 0 0 30px
}

.zo-contact-section figure img {
    width: 100%;
    border-radius: .5rem
}

.zo-contact-section .zo-button {
    margin: 30px 0 0;
}

@media (max-width: 1140px) {

    .zo-contact-section {
        margin: 60px 0;
        padding: 30px
    }

    .zo-contact-section>.row {
        flex-direction: column-reverse
    }

    .zo-contact-section .zo-content {
        margin: 15px 0 0
    }

    .zo-contact-section figure {
        padding: 0
    }
}

.zo-testimonial-section {
    width: 100%;
    display: inline-block;
    padding: 60px 0
}

.zo-testimonial-section .zo-testimonial {
    width: 100%;
    display: inline-block;
    padding: 160px 0;
    position: relative
}

.zo-testimonial-section .zo-testimonial:before {
    content: '';
    width: 375px;
    height: 375px;
    position: absolute;
    right: 0;
    bottom: 0;
    background: url(../img/cover-testimonial-right.svg) no-repeat;
    z-index: -1;
}

.zo-testimonial-section .zo-testimonial:after {
    content: '';
    width: 590px;
    height: 590px;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/cover-testimonial-left.svg) no-repeat;
    z-index: -1;
}

.zo-testimonial-section .zo-testimonial .zo-section {
    width: 100%;
    display: inline-block;
    padding: 30px;
    background: var(--White);
    border-radius: .5rem;
    box-shadow: 0 5px 5px 0 rgb(0, 0, 0, 0.25)
}

.zo-testimonial-section .zo-testimonial .zo-section strong {
    display: block;
    margin: 0 0 15px
}

.zo-testimonial-section .zo-testimonial .zo-section p {
    margin: 0
}

.zo-testimonial-section .zo-testimonial .zo-section .splide__pagination {
    bottom: -60px
}

.zo-testimonial-section .zo-testimonial .zo-section .splide__pagination .splide__pagination__page {
    width: 10px;
    height: 10px;
    background: rgb(205, 205, 205);
    border-radius: 300px
}

.zo-testimonial-section .zo-testimonial .zo-section .splide__pagination .splide__pagination__page.is-active {
    width: 25px;
    background: var(--Primary);
    transform: scale(1)
}

@media (max-width: 1140px) {

    .zo-testimonial-section {
        padding: 0;
        overflow: hidden
    }

    .zo-testimonial-section .zo-testimonial:before,
    .zo-testimonial-section .zo-testimonial:after {
        width: 175px;
        height: 175px
    }
}

.zo-posts-section {
    width: 100%;
    display: inline-block;
    margin: 0 0 90px;
    padding: 90px 0
}

.zo-posts-section .zo-post {
    width: 100%;
    display: inline-block;
    padding: 100px 30px 30px;
    position: relative;
    border-radius: 10px;
    box-shadow: 0 5px 5px 0 rgb(0, 0, 0, .25);
}

.zo-posts-section .zo-post:before {
    content: '';
    width: 50px;
    height: 50px;
    position: absolute;
    top: 25px;
    left: 25px;
    background: url(../img/icons/sync.svg);
}

.zo-posts-section .zo-post:hover:before {
    background: url(../img/icons/sync-hover.svg);
}

.zo-posts-section .zo-post h2 {
    font-size: 1.25rem;
    font-weight: 600;
    color: rgb(35, 35, 35)
}

.zo-posts-section .zo-post p {
    display: block;
    margin: 15px 0;
    color: rgb(65, 65, 65);
    font-weight: 500
}

.zo-posts-section .zo-post div {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 30px 0 0
}

.zo-posts-section .zo-post div span {
    font-size: .95rem;
    color: var(--Primary)
}

.zo-posts-section .zo-post:hover {
    background: rgb(225, 195, 230);
    box-shadow: none
}

@media (max-width: 1140px) {

    .zo-posts-section {
        padding: 30px 0
    }

    .zo-posts-section .zo-post {
        margin: 0 0 25px
    }
}

.zo-footer-section {
    width: 100%;
    display: inline-block;
    padding: 90px 0 60px;
    background: rgb(20, 15, 40);
    color: var(--White)
}

.zo-footer-section .zo-menus {
    width: 100%;
    display: inline-block
}

.zo-footer-section .zo-menus .zo-menu {
    position: relative
}

.zo-footer-section .zo-menus ul li {
    display: inline-block
}

.zo-footer-section .zo-menus ul li .zo-menu:before {
    content: '';
    width: 1px;
    height: 200px;
    position: absolute;
    top: 0;
    right: 90px;
    background: rgb(60, 80, 150)
}

.zo-footer-section .zo-menus ul li:last-child .zo-menu:before {
    display: none
}

.zo-footer-section .zo-menus ul li .zo-menu strong {
    display: block;
    margin: 0 0 15px;
    font-size: 1.25rem;
    font-weight: 600
}

.zo-footer-section .zo-menus ul li .zo-menu ul li {
    width: 100%;
    display: inline-block;
}

.zo-footer-section .zo-menus ul li .zo-menu ul li a {
    display: block;
    padding: 7.5px 0;
    color: var(--White);
}

.zo-footer-section .zo-menus ul li .zo-menu ul li a:hover {
    color: rgb(60, 80, 150);
}

.zo-footer-section hr {
    border-color: rgb(60, 80, 150);
    opacity: 1
}

.zo-footer-section .zo-social ul {
    display: flex;
    justify-content: flex-end;
    gap: 30px
}

.zo-footer-section .zo-social ul li {
    display: inline-block
}

.zo-footer-section .zo-social ul li a {
    display: flex;
    opacity: .75
}

.zo-footer-section .zo-social ul li a:hover {
    opacity: 1
}

.zo-footer-section .zo-social ul li a img {
    max-width: 30px
}

.zo-footer-section .zo-policy ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 30px
}

.zo-footer-section .zo-policy ul li {
    display: inline-block
}

.zo-footer-section .zo-policy ul li a {
    display: block;
    color: var(--White);
    text-decoration: underline;
    text-underline-offset: 5px
}

.zo-footer-section .zo-policy ul li a:hover {
    color: rgb(60, 80, 150);
}

@media (max-width: 1140px) {

    .zo-footer-section {
        padding: 60px 0 30px;
        text-align: center
    }

    .zo-footer-section .zo-brand {
        margin: 0 0 30px;
        text-align: center
    }

    .zo-footer-section .zo-brand img {
        max-width: 250px
    }

    .zo-footer-section .zo-menus ul li .zo-menu {
        margin: 0 0 15px
    }

    .zo-footer-section .zo-menus ul li .zo-menu strong {
        margin: 0 0 10px
    }

    .zo-footer-section .zo-menus ul li .zo-menu:before {
        display: none
    }

    .zo-footer-section hr {
        display: none
    }

    .zo-footer-section .zo-copyright {
        text-align: center
    }

    .zo-footer-section .zo-social ul {
        justify-content: center
    }

    .zo-footer-section .zo-policy {
        margin: 30px 0 0
    }

    .zo-footer-section .zo-policy ul {
        justify-content: center;
        gap: 15px
    }
}

.zo-cover-section {
    width: 100%;
    display: inline-block;
    margin: 0 0 60px;
    padding: 45px 0 60px;
    position: relative;
    background: rgb(20, 15, 40);
    color: var(--White);
    border-top: 1px solid rgba(255, 255, 255, .05);
    text-align: center;
    z-index: 15
}

.zo-cover-section a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 15px 0 0;
    padding: 15px 45px;
    background: var(--Primary);
    color: rgb(255, 255, 255);
    border-radius: 300px
}

.zo-cover-section a:hover {
    background: var(--Primary);
    color: rgb(255, 255, 255);
    opacity: .90
}

.zo-cards-section {
    width: 100%;
    display: inline-block;
    padding: 60px 0;
}

.zo-cards-section .zo-card {
    width: 100%;
    display: inline-block;
    margin: 0 0 25px;
    padding: 60px 45px 30px;
    position: relative;
    background: var(--White);
    overflow: hidden;
    border-radius: 15px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15)
}

.zo-cards-section .zo-card h3 {
    font-size: 1.5rem
}

.zo-cards-section .zo-card p {
    color: rgb(70, 70, 70)
}

.zo-cards-section .zo-card:before {
    content: '';
    width: 250px;
    height: 250px;
    display: block;
    position: absolute;
    top: -90px;
    left: -90px;
    background: var(--Primary);
    opacity: .15;
    transform: rotate(45deg);
    border-radius: 50%;
    filter: blur(90px)
}

.zo-cards-section .zo-card a {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px 0 0;
    padding: 15px;
    font-size: .95rem;
    background: rgba(75, 45, 130, .05);
    color: var(--Primary);
    border: 2px solid var(--Primary);
    border-radius: 300px
}

.zo-cards-section .zo-card.zo-active {
    padding: 60px 30px 30px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05)
}

.zo-cards-section .zo-card.zo-active h3 {
    text-align: center
}

.zo-cards-section .zo-card.zo-active .zo-price {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    color: var(--Primary)
}

.zo-cards-section .zo-card.zo-active a {
    padding: 10px 15px;
    background: var(--Primary);
    color: var(--White);
    border-radius: 0.375rem
}

.zo-cards-section .zo-card.zo-active ul {
    margin: 30px 0 0
}

.zo-cards-section .zo-card.zo-active ul li {
    width: 100%;
    display: inline-block;
    padding: 2.5px 0 2.5px 20px;
    position: relative
}

.zo-cards-section .zo-card.zo-active ul li:before {
    content: '✓ ';
    position: absolute;
    left: 0;
    color: var(--Primary)
}

.zo-cards-section .zo-card a:hover {
    opacity: .90
}

.zo-subcards-section {
    width: 100%;
    display: inline-block;
    padding: 0 0 60px
}

.zo-subcards-section .zo-card {
    width: 100%;
    display: inline-block;
    margin: 0 0 60px;
    padding: 30px 10px 30px 15px;
    position: relative;
    background: rgb(255, 255, 255);
    border-radius: 15px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15)
}

.zo-subcards-section .zo-card:before {
    content: '';
    width: 70%;
    height: 50px;
    position: absolute;
    bottom: -15px;
    left: 45px;
    background: var(--Primary);
    border-radius: 20px;
    transform: rotate(-5deg);
    transition: all 0.25s ease-in-out;
    z-index: -1
}

.zo-subcards-section .zo-card:hover:before {
    transform: rotate(5deg)
}

.zo-subcards-section .zo-card img {
    display: block;
    margin: 0 auto;
    padding: 15px 60px
}

.zo-subcards-section .zo-card strong {
    display: block;
    margin: 15px 0;
    position: relative;
    padding: 0 0 0 30px;
    font-size: 1.15rem
}

.zo-subcards-section .zo-card strong:before {
    content: '';
    width: 20px;
    height: 5px;
    position: absolute;
    top: 10px;
    left: 0;
    background: var(--Primary);
    border-radius: 300px
}

.zo-subcards-section .zo-card p {
    font-size: .95rem;
    color: rgb(70, 70, 70)
}

.zo-subcards-section .zo-card span {
    display: inline-block;
    position: absolute;
    bottom: 25px;
    left: 25px;
    font-size: 1.25rem;
    text-align: left;
    color: var(--Primary)
}

.zo-pricing-section {
    width: 100%;
    display: inline-block;
    padding: 60px 0;
    background: rgba(75, 45, 130, .05)
}

.zo-compare-section {
    width: 100%;
    display: inline-block;
    padding: 60px 0
}

.zo-compare-section table {
    width: 100%;
    border: 0
}

.zo-compare-section table caption+thead tr:first-child th,
.zo-compare-section table caption+thead tr:first-child td,
.zo-compare-section table colgroup+thead tr:first-child th,
.zo-compare-section table colgroup+thead tr:first-child td,
.zo-compare-section table thead:first-child tr:first-child th,
.zo-compare-section table thead:first-child tr:first-child td {
    border: 0
}

.zo-compare-section table tbody>tr:nth-child(odd)>td,
.zo-compare-section table tbody>tr:nth-child(odd)>th {
    background: transparent
}

.zo-compare-section table tr th {
    background: var(--Primary);
    color: var(--White);
}

.zo-compare-section table tr th:first-child {
    border-top-left-radius: 10px
}

.zo-compare-section table tr th:last-child {
    border-top-right-radius: 10px
}

.zo-compare-section table tr:last-child td:first-child {
    border-bottom-left-radius: 10px
}

.zo-compare-section table tr:last-child td:last-child {
    border-bottom-right-radius: 10px
}

.zo-compare-section table tr th,
.zo-compare-section table tr td {
    padding: 15px;
    text-align: center;
    border: 0;
    vertical-align: middle
}

.zo-compare-section table tr:nth-child(even) {
    background: rgba(75, 45, 130, .05);
}

.zo-faq-section {
    width: 100%;
    display: inline-block;
    padding: 90px 0
}

.zo-faq-section .zo-faq a {
    width: 100%;
    display: inline-block;
    padding: 15px;
    position: relative;
    background: var(--White);
    color: var(--Black);
    border: 1px solid var(--Primary);
    border-radius: .5rem
}

.zo-faq-section .zo-faq a:before {
    content: '+';
    height: 100%;
    display: flex;
    align-items: center;
    position: absolute;
    top: -2.5px;
    right: 10px;
    font-size: 1.5rem;
}

.zo-faq-section .zo-faq a span {
    display: block
}

.zo-faq-section .zo-faq a i {
    position: absolute;
    top: 15px;
    left: 15px;
    font-size: 1.5rem;
    line-height: 1;
    color: var(--Primary);
    transition: all .25s ease
}

.zo-faq-section .zo-faq a[aria-expanded='true']:before {
    content: '-';
}

.zo-faq-section .zo-faq .zo-content {
    width: 100%;
    display: inline-block;
    margin: 0 0 10px;
    padding: 15px;
    background: rgba(75, 45, 130, .05);
    border: 1px solid var(--Primary);
    border-radius: .5rem
}

.zo-faq-section .zo-faq .zo-content p {
    margin: 0
}

@media (max-width: 1100px) {

    .zo-faq-section {
        padding: 60px 0
    }
}

.zo-call-section {
    width: 100%;
    display: inline-block;
    padding: 60px 0;
    background: rgba(75, 45, 130, .05)
}

.zo-book-section {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin: 0 0 15px;
    padding: 20px 15px;
    position: relative;
    background: var(--Primary);
    color: rgb(255, 255, 255);
    border-radius: 300px;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15)
}

.zo-book-section:hover {
    color: rgb(255, 255, 255);
    opacity: .90
}

.zo-book-section:active {
    transform: scale(.95)
}