.pp-icon {
    display: inline-block;
    line-height: 1;
    text-align: center;
    -webkit-transition: all .3s;
    transition: all .3s
}

.pp-icon i,
.pp-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block;
    -webkit-transition: all .3s;
    transition: all .3s
}

.pp-buttons-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
    flex-flow: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.pp-buttons-group a,
.pp-buttons-group a:hover {
    text-decoration: none;
    -webkit-transition: all .3s;
    transition: all .3s
}

.pp-buttons-group .pp-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.pp-button-content-wrapper .pp-button-content-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.pp-button-content-wrapper .pp-button-content-inner.pp-icon-before {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
}

.pp-button-content-wrapper .pp-button-content-inner.pp-icon-after {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.pp-button-content-wrapper .pp-button-content-inner.pp-icon-top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.pp-button-content-wrapper .pp-button-content-inner.pp-icon-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

.pp-button-icon-image img {
    width: 40px
}

.pp-button-content-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.pp-buttons-valign-top .pp-buttons-group {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.pp-buttons-valign-middle .pp-buttons-group {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.pp-buttons-valign-bottom .pp-buttons-group {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.pp-buttons-valign-stretch .pp-buttons-group {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.pp-buttons-valign-stretch .pp-buttons-group .pp-button-content-wrapper {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.pp-buttons-halign-left .pp-buttons-group {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.pp-buttons-halign-center .pp-buttons-group {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.pp-buttons-halign-right .pp-buttons-group {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.pp-buttons-halign-stretch .pp-buttons-group {
    -webkit-box-pack: stretch;
    -ms-flex-pack: stretch;
    justify-content: stretch
}

.pp-buttons-halign-stretch .pp-button {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.pp-buttons-stack-desktop .pp-buttons-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.pp-buttons-stack-desktop.pp-buttons-halign-left .pp-buttons-group {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.pp-buttons-stack-desktop.pp-buttons-halign-center .pp-buttons-group {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.pp-buttons-stack-desktop.pp-buttons-halign-right .pp-buttons-group {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.pp-buttons-stack-desktop.pp-buttons-halign-stretch .pp-buttons-group {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.pp-buttons-stack-desktop.pp-buttons-halign-stretch .pp-button {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

@media (max-width:1024px) {
    .pp-buttons-valign-tablet-top .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-valign-tablet-middle .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-valign-tablet-bottom .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-valign-tablet-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-valign-tablet-stretch .pp-buttons-group .pp-button-content-wrapper {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-left .pp-buttons-group,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-left .pp-buttons-group {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-left .pp-button,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-left .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-center .pp-buttons-group,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-center .pp-buttons-group {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-center .pp-button,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-center .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-right .pp-buttons-group,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-right .pp-buttons-group {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-right .pp-button,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-right .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-stretch .pp-buttons-group,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-stretch .pp-buttons-group {
        -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
        justify-content: stretch
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-stretch .pp-button,
    .pp-buttons-stack-none.pp-buttons-halign-tablet-stretch .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-buttons-stack-tablet .pp-buttons-group {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .pp-buttons-stack-tablet.pp-buttons-halign-left .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-stack-tablet.pp-buttons-halign-center .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-tablet.pp-buttons-halign-right .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-stack-tablet.pp-buttons-halign-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-stack-tablet.pp-buttons-halign-stretch .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-buttons-stack-desktop .pp-buttons-group,
    .pp-buttons-stack-tablet .pp-buttons-group {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-left .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-left .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-left .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-left .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-center .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-center .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-center .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-center .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-right .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-right .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-right .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-right .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-stretch .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-tablet-stretch .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-tablet-stretch .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-before-tablet {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-after-tablet {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-top-tablet {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-bottom-tablet {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

@media only screen and (max-width:767px) {
    .pp-buttons-valign-mobile-top .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-valign-mobile-middle .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-valign-mobile-bottom .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-valign-mobile-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-valign-mobile-stretch .pp-buttons-group .pp-button-content-wrapper {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-left .pp-buttons-group {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-left .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-center .pp-buttons-group {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-center .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-right .pp-buttons-group {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-right .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-stack-none.pp-buttons-halign-mobile-stretch .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-buttons-stack-mobile .pp-buttons-group {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-left .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-center .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-right .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-stretch .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-left .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-center .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-right .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-stack-mobile.pp-buttons-halign-tablet-stretch .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-buttons-stack-desktop .pp-buttons-group,
    .pp-buttons-stack-mobile .pp-buttons-group,
    .pp-buttons-stack-tablet .pp-buttons-group {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-left .pp-buttons-group,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-left .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-left .pp-buttons-group {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-left .pp-button,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-left .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-left .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-center .pp-buttons-group,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-center .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-center .pp-buttons-group {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-center .pp-button,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-center .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-center .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-right .pp-buttons-group,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-right .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-right .pp-buttons-group {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-right .pp-button,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-right .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-right .pp-button {
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-stretch .pp-buttons-group,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-stretch .pp-buttons-group,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-stretch .pp-buttons-group {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch
    }
    .pp-buttons-stack-desktop.pp-buttons-halign-mobile-stretch .pp-buttons-group .pp-button,
    .pp-buttons-stack-mobile.pp-buttons-halign-mobile-stretch .pp-buttons-group .pp-button,
    .pp-buttons-stack-tablet.pp-buttons-halign-mobile-stretch .pp-buttons-group .pp-button {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-before-mobile {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-after-mobile {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-top-mobile {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .pp-button-content-wrapper .pp-button-content-inner.pp-icon-bottom-mobile {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}