.ap-fullwidth {
    width: 100%;
}

.ap-height-550 {
    height: 550px;
}

.ap-hero {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.ap-hero-text {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    width: 100%;
}

.ap-hero .sub-title h2 {
    display: inline-block;
    color: white;
}

.ap-hero .sub-title .divider {
    margin-left: 32px;
    margin-right: 32px;

    background-color: white;
    width: 12px;
    height: 12px;
    border-radius: 12px;

    display: inline-block;

    position: relative;
    top: -3px;
}

.ap-service-box {
    border-radius: 5px;
    background-color: #F3FAEC;
    -webkit-box-shadow: 0 2px 2px 0 rgba(150, 150, 150, 0.20), 0 0 2px 0 rgba(20, 20, 20, 0.10);
    box-shadow: 0 2px 2px 0 rgba(150, 150, 150, 0.20), 0 0 2px 0 rgba(20, 20, 20, 0.10);
}

.ap-service-box-image{
    width: 100%;
    height: 300px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.ap-service-box-content{
    padding: 32px;
}

.ap-service-box-content-title{
    margin-bottom: 32px;
}

.ap-button{
    display: inline-block;
    text-align: Center;
    text-decoration: none;
    width: 150px;
    height: 40px;
    line-height: 40px;
    border-radius: 3px;
    background-color: #EEE;
    float: right;
    color: black;
    -webkit-box-shadow: 0 2px 2px 0 rgba(150, 150, 150, 0.20), 0 0 2px 0 rgba(20, 20, 20, 0.10);
    box-shadow: 0 2px 2px 0 rgba(150, 150, 150, 0.20), 0 0 2px 0 rgba(20, 20, 20, 0.10);
}

.ap-button:hover{
    background-color: #DDD;
    color: black;
}

.ap-company-logo {
    height: 100px;
    width: 100%;
}

.ap-company-logo img{
    max-height: 100px;
    width: auto;

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ap-review{
    padding: 32px 64px;
    font-size: 16px;
    color: #313131;
}

.ap-review .review-quote:after{
    content: '\201D';
    font-size: 72px;
    width: 100%;
    text-align: center;
    display: inline-block;
    color: #5fba01;
}

.ap-review-image{
    height: 100px;
    width: 100px;

    margin: 0 auto;
}

.ap-review-image img{
    border-radius: 50px !important;
    max-height: 100px;
    width: auto;
}

.ap-review .review-line {
    width: 120px;
    display: block;
    height: 1px;
    background-color: #313131;
    margin: 32px auto;
}

.ap-review .name {
    width: 100%;
    text-align: center;
    display: inline-block;
    color: #B9B9B9;
    margin-top: 16px;
}

.elementor-widget-container ul > li {
    list-style-type: disc;
}

.elementor-widget-container ol {
    counter-reset: item
}

.elementor-widget-container ol > li {
    display: block
}

.elementor-widget-container ol > li:before {
    content: counters(item, ".") " ";
    counter-increment: item
}