.px-middle,
.px-pos-abs {
    position: absolute
}

.px-over-h,
.px-txt-ellips {
    overflow: hidden
}

.px-full-h,
.px-table {
    height: 100%
}

.px-full-w,
.px-middle,
.px-table {
    width: 100%
}

.px-cell,
.px-icon i {
    vertical-align: middle
}

.px-clear {
    clear: both
}

.px-txt-ellips {
    white-space: nowrap;
    text-overflow: ellipsis
}

.px-txt-center {
    text-align: center
}

.px-txt-left {
    text-align: left
}

.px-txt-right {
    text-align: right
}

.px-txt-justy {
    text-align: justify
}

.px-txt-upp {
    text-transform: uppercase
}

.px-txt-cap {
    text-transform: capitalize
}

.px-txt-low {
    text-transform: lowercase
}

.px-letter-1 {
    letter-spacing: 1px
}

.px-letter-2 {
    letter-spacing: 2px
}

.px-letter-3 {
    letter-spacing: 3px
}

.px-letter-4 {
    letter-spacing: 4px
}

.px-letter-5 {
    letter-spacing: 5px
}

.px-letter-6 {
    letter-spacing: 6px
}

.px-letter-7 {
    letter-spacing: 7px
}

.px-letter-8 {
    letter-spacing: 8px
}

.px-letter-9 {
    letter-spacing: 9px
}

.px-hide {
    visibility: hidden
}

.px-none {
    display: none
}

.px-block {
    display: block
}

.px-table {
    display: table
}

.px-cell {
    display: table-cell
}

.px-flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.px-middle {
    transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    top: 50%;
    left: 0
}

.px-center-top {
    transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%)
}

.px-center-bott {
    transform: translateY(50%);
    -moz-transform: translateY(50%);
    -ms-transform: translateY(50%);
    -o-transform: translateY(50%);
    -webkit-transform: translateY(50%)
}

.px-center {
    transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    top: 50%
}

.px-center-image img {
    margin: 0 auto
}

.px-inline {
    display: inline
}

.px-inline-b {
    display: inline-block
}

.px-float-l {
    float: left
}

.px-float-r {
    float: right
}

.px-float-n {
    float: none
}

.px-pos-rel {
    position: relative
}

.px-pos-fix {
    position: fixed
}

.px-pos-stc {
    position: static
}

.px-over-v {
    overflow: visible
}

.px-pos-top {
    top: 0
}

.px-pos-bott {
    bottom: 0
}

.px-pos-top-l {
    top: 0;
    left: 0
}

.px-pos-top-r {
    top: 0;
    right: 0
}

.px-pos-bott-l {
    bottom: 0;
    left: 0
}

.px-pos-bott-r {
    bottom: 0;
    right: 0
}

.px-radius {
    border-radius: 100%
}

.px-round {
    border-radius: 10px
}

.px-square {
    border-radius: 0
}

.px-opacity {
    opacity: 0
}

.px-opacity-1 {
    opacity: .1
}

.px-opacity-2 {
    opacity: .2
}

.px-opacity-3 {
    opacity: .3
}

.px-opacity-4 {
    opacity: .4
}

.px-opacity-5 {
    opacity: .5
}

.px-opacity-6 {
    opacity: .6
}

.px-opacity-7 {
    opacity: .7
}

.px-opacity-8 {
    opacity: .8
}

.px-opacity-9 {
    opacity: .9
}

.px-greyscale-100 {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%)
}

.px-greyscale-90 {
    -webkit-filter: grayscale(90%);
    filter: grayscale(90%)
}

.px-greyscale-80 {
    -webkit-filter: grayscale(80%);
    filter: grayscale(80%)
}

.px-greyscale-70 {
    -webkit-filter: grayscale(70%);
    filter: grayscale(70%)
}

.px-greyscale-60 {
    -webkit-filter: grayscale(60%);
    filter: grayscale(60%)
}

.px-greyscale-50 {
    -webkit-filter: grayscale(50%);
    filter: grayscale(50%)
}

.px-greyscale-40 {
    -webkit-filter: grayscale(40%);
    filter: grayscale(40%)
}

.px-greyscale-30 {
    -webkit-filter: grayscale(30%);
    filter: grayscale(30%)
}

.px-greyscale-20 {
    -webkit-filter: grayscale(20%);
    filter: grayscale(20%)
}

.px-greyscale-10 {
    -webkit-filter: grayscale(10%);
    filter: grayscale(10%)
}

.px-blur-5 {
    -webkit-filter: blur(5px);
    filter: blur(5px)
}

.px-blur-4 {
    -webkit-filter: blur(4px);
    filter: blur(4px)
}

.px-blur-3 {
    -webkit-filter: blur(3px);
    filter: blur(3px)
}

.px-blur-2 {
    -webkit-filter: blur(2px);
    filter: blur(2px)
}

.px-blur-1 {
    -webkit-filter: blur(1px);
    filter: blur(1px)
}

.px-brightness-200 {
    -webkit-filter: brightness(200%);
    filter: brightness(200%)
}

.px-brightness-150 {
    -webkit-filter: brightness(150%);
    filter: brightness(150%)
}

.px-brightness-100 {
    -webkit-filter: brightness(100%);
    filter: brightness(100%)
}

.px-brightness-50 {
    -webkit-filter: brightness(50%);
    filter: brightness(50%)
}

.px-contrast-200 {
    -webkit-filter: contrast(200%);
    filter: contrast(200%)
}

.px-contrast-150 {
    -webkit-filter: contrast(150%);
    filter: contrast(150%)
}

.px-contrast-100 {
    -webkit-filter: contrast(100%);
    filter: contrast(100%)
}

.px-contrast-50 {
    -webkit-filter: contrast(50%);
    filter: contrast(50%)
}

.px-hue-rotate-90 {
    -webkit-filter: hue-rotate(90deg);
    filter: hue-rotate(90deg)
}

.px-hue-rotate-80 {
    -webkit-filter: hue-rotate(80deg);
    filter: hue-rotate(80deg)
}

.px-hue-rotate-70 {
    -webkit-filter: hue-rotate(70deg);
    filter: hue-rotate(70deg)
}

.px-hue-rotate-60 {
    -webkit-filter: hue-rotate(60deg);
    filter: hue-rotate(60deg)
}

.px-hue-rotate-50 {
    -webkit-filter: hue-rotate(50deg);
    filter: hue-rotate(50deg)
}

.px-hue-rotate-40 {
    -webkit-filter: hue-rotate(40deg);
    filter: hue-rotate(40deg)
}

.px-hue-rotate-30 {
    -webkit-filter: hue-rotate(30deg);
    filter: hue-rotate(30deg)
}

.px-hue-rotate-20 {
    -webkit-filter: hue-rotate(20deg);
    filter: hue-rotate(20deg)
}

.px-hue-rotate-10 {
    -webkit-filter: hue-rotate(10deg);
    filter: hue-rotate(10deg)
}

.px-invert-100 {
    -webkit-filter: invert(100%);
    filter: invert(100%)
}

.px-invert-90 {
    -webkit-filter: invert(90%);
    filter: invert(90%)
}

.px-invert-80 {
    -webkit-filter: invert(80%);
    filter: invert(80%)
}

.px-invert-70 {
    -webkit-filter: invert(70%);
    filter: invert(70%)
}

.px-invert-60 {
    -webkit-filter: invert(60%);
    filter: invert(60%)
}

.px-invert-50 {
    -webkit-filter: invert(50%);
    filter: invert(50%)
}

.px-invert-40 {
    -webkit-filter: invert(40%);
    filter: invert(40%)
}

.px-invert-30 {
    -webkit-filter: invert(30%);
    filter: invert(30%)
}

.px-invert-20 {
    -webkit-filter: invert(20%);
    filter: invert(20%)
}

.px-invert-10 {
    -webkit-filter: invert(10%);
    filter: invert(10%)
}

.px-saturate-200 {
    -webkit-filter: saturate(200%);
    filter: saturate(200%)
}

.px-saturate-150 {
    -webkit-filter: saturate(150%);
    filter: saturate(150%)
}

.px-saturate-100 {
    -webkit-filter: saturate(100%);
    filter: saturate(100%)
}

.px-saturate-50 {
    -webkit-filter: saturate(50%);
    filter: saturate(50%)
}

.px-sepia-100 {
    -webkit-filter: sepia(100%);
    filter: sepia(100%)
}

.px-sepia-90 {
    -webkit-filter: sepia(90%);
    filter: sepia(90%)
}

.px-sepia-80 {
    -webkit-filter: sepia(80%);
    filter: sepia(80%)
}

.px-sepia-70 {
    -webkit-filter: sepia(70%);
    filter: sepia(70%)
}

.px-sepia-60 {
    -webkit-filter: sepia(60%);
    filter: sepia(60%)
}

.px-sepia-50 {
    -webkit-filter: sepia(50%);
    filter: sepia(50%)
}

.px-sepia-40 {
    -webkit-filter: sepia(40%);
    filter: sepia(40%)
}

.px-sepia-30 {
    -webkit-filter: sepia(30%);
    filter: sepia(30%)
}

.px-sepia-20 {
    -webkit-filter: sepia(20%);
    filter: sepia(20%)
}

.px-sepia-10 {
    -webkit-filter: sepia(10%);
    filter: sepia(10%)
}

.px-bg-center {
    background-position: center center
}

.px-bg-top {
    background-position: top center
}

.px-bg-bottom {
    background-position: bottom center
}

.px-bg-cover {
    background-size: cover
}

.px-bg-contain {
    background-size: contain
}

.px-bg-attach-s {
    background-attachment: scroll
}

.px-bg-attach-f {
    background-attachment: fixed
}

.px-no-padd {
    padding: 0
}

.px-no-marg {
    margin: 0
}

.px-full-vh {
    height: 100vh
}

.px-no-brd {
    border: none important
}

.px-dotted {
    border-style: dotted
}

.px-solid {
    border-style: solid
}

.px-dashed {
    border-style: dashed
}

.px-brd-thin {
    border-width: 1px 0 0
}

.px-brd-med {
    border-width: 2px 0 0
}

.px-brd-thick {
    border-width: 10px 0 0
}

.px-btn,
.px-icon {
    text-align: center;
    display: inline-block;
    border-width: 1px;
    border-style: solid
}

.px-shadow {
    box-shadow: 10px 10px 0 #f0f0f0
}

.px-frame {
    border: 1px solid #F0F0F0;
    padding: 10px;
}

.px-btn.px-shadow,
.px-icon.px-shadow {
    box-shadow: 8px 8px 0 #f0f0f0
}

.px-bg-fb {
    background: #3b5998
}

.px-bg-tw {
    background: #55acee
}

.px-bg-gp {
    background: #dd4b39
}

.px-bg-pn {
    background: #cb2027
}

.px-bg-rd {
    background: #5f99cf
}

.px-bg-in {
    background: #007bb5
}

.px-bg-ma {
    background: #f60
}

.px-bg-st {
    background: #EB4823
}

.px-bg-ig {
    background: #8a3ab9
}

.px-brd-black {
    border-color: #222
}

.px-brd-white,
.px-btn-1 {
    border-color: #fff
}

.px-bg-black-10 {
    background: rgba(0, 0, 0, .1)
}

.px-bg-black-20 {
    background: rgba(0, 0, 0, .2)
}

.px-bg-black-30 {
    background: rgba(0, 0, 0, .3)
}

.px-bg-black-40 {
    background: rgba(0, 0, 0, .4)
}

.px-bg-black-50 {
    background: rgba(0, 0, 0, .5)
}

.px-bg-black-60 {
    background: rgba(0, 0, 0, .6)
}

.px-bg-black-70 {
    background: rgba(0, 0, 0, .7)
}

.px-bg-black-80,
.px-bg-black-90 {
    background: rgba(0, 0, 0, .8)
}

.px-bg-white-10 {
    background: rgba(255, 255, 255, .1)
}

.px-bg-white-20 {
    background: rgba(255, 255, 255, .2)
}

.px-bg-white-30 {
    background: rgba(255, 255, 255, .3)
}

.px-bg-white-40 {
    background: rgba(255, 255, 255, .4)
}

.px-bg-white-50 {
    background: rgba(255, 255, 255, .5)
}

.px-bg-white-60 {
    background: rgba(255, 255, 255, .6)
}

.px-bg-white-70 {
    background: rgba(255, 255, 255, .7)
}

.px-bg-white-80 {
    background: rgba(255, 255, 255, .8)
}

.px-bg-white-90 {
    background: rgba(255, 255, 255, .9)
}

.px-btn-1,
.px-btn-2,
.px-btn-3 {
    background: 0 0
}

.px-font-hero {
    font-size: 100px;
    line-height: 120px
}

.px-font-xxxl {
    font-size: 84px;
    line-height: 100px
}

.px-font-xxl {
    font-size: 72px;
    line-height: 86px
}

.px-font-xl {
    font-size: 60px;
    line-height: 72px
}

.px-font-l {
    font-size: 48px;
    line-height: 60px
}

.px-font-m {
    font-size: 36px;
    line-height: 48px
}

.px-font-s {
    font-size: 24px;
    line-height: 36px
}

.px-font-xs {
    font-size: 18px;
    line-height: 30px
}

.px-font-xxs {
    font-size: 14px;
    line-height: 24px
}

.px-font-tiny {
    font-weight: 100
}

.px-font-normal {
    font-weight: 300
}

.px-font-medium {
    font-weight: 500
}

.px-font-bold {
    font-weight: 700
}

.px-font-heavy {
    font-weight: 900
}

.px-color-black {
    color: #000
}

.px-btn-1 a,
.px-btn-1 span,
.px-color-white {
    color: #fff
}

[class*=btn],
a,
button:hover,
img,
input[type=button],
input[type=reset],
input[type=submit] {
    transition: all ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    -webkit-transition: all ease-in-out .2s;
    -o-transition: all ease-in-out .2s;
    -ms-transition: all ease-in-out .2s
}

.px-animate-1 {
    transition: all ease-in-out .1s;
    -moz-transition: all ease-in-out .1s;
    -webkit-transition: all ease-in-out .1s;
    -o-transition: all ease-in-out .1s;
    -ms-transition: all ease-in-out .1s
}

.px-animate-2 {
    transition: all ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    -webkit-transition: all ease-in-out .2s;
    -o-transition: all ease-in-out .2s;
    -ms-transition: all ease-in-out .2s
}

.px-animate-3 {
    transition: all ease-in-out .3s;
    -moz-transition: all ease-in-out .3s;
    -webkit-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    -ms-transition: all ease-in-out .3s
}

.px-animate-4 {
    transition: all ease-in-out .4s;
    -moz-transition: all ease-in-out .4s;
    -webkit-transition: all ease-in-out .4s;
    -o-transition: all ease-in-out .4s;
    -ms-transition: all ease-in-out .5s
}

.px-animate-5 {
    transition: all ease-in-out .5s;
    -moz-transition: all ease-in-out .5s;
    -webkit-transition: all ease-in-out .5s;
    -o-transition: all ease-in-out .5s;
    -ms-transition: all ease-in-out .5s
}

.px-animate-6 {
    transition: all ease-in-out .6s;
    -moz-transition: all ease-in-out .6s;
    -webkit-transition: all ease-in-out .6s;
    -o-transition: all ease-in-out .6s;
    -ms-transition: all ease-in-out .6s
}

.px-animate-7 {
    transition: all ease-in-out .7s;
    -moz-transition: all ease-in-out .7s;
    -webkit-transition: all ease-in-out .7s;
    -o-transition: all ease-in-out .7s;
    -ms-transition: all ease-in-out .7s
}

.px-animate-8 {
    transition: all ease-in-out .8s;
    -moz-transition: all ease-in-out .8s;
    -webkit-transition: all ease-in-out .83s;
    -o-transition: all ease-in-out .8s;
    -ms-transition: all ease-in-out .8s
}

.px-animate-9 {
    transition: all ease-in-out .9s;
    -moz-transition: all ease-in-out .9s;
    -webkit-transition: all ease-in-out .9s;
    -o-transition: all ease-in-out .9s;
    -ms-transition: all ease-in-out .9s
}

.px-animate-10 {
    transition: all ease-in-out 1s;
    -moz-transition: all ease-in-out 1s;
    -webkit-transition: all ease-in-out 1s;
    -o-transition: all ease-in-out 1s;
    -ms-transition: all ease-in-out 1s
}

.px-scale-down img {
    -webkit-transform: scale(1.3);
    -moz-transform: scale(1.3);
    -ms-transform: scale(1.3);
    -o-transform: scale(1.3);
    transform: scale(1.3)
}

[class*=px-btn] {
    cursor: pointer
}

.px-txt-left .px-btn {
    margin-right: 15px
}

.px-txt-right .px-btn {
    margin-left: 15px
}

.px-btn a,
.px-btn span {
    display: inline-block;
    padding: 0 30px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    font-size: 14px
}

.px-btn-l {
    height: 75px
}

.px-btn-l.px-radius {
    border-radius: 37.5px
}

.px-btn-l a,
.px-btn-l span {
    line-height: 73px
}

.px-btn-m {
    height: 60px
}

.px-btn-m.px-radius {
    border-radius: 30px
}

.px-btn-m a,
.px-btn-m span {
    line-height: 58px
}

.px-btn-xs {
    height: 30px
}

.px-btn-xs.px-radius {
    border-radius: 15px
}

.px-btn-s {
    height: 45px
}

.px-btn-s.px-radius {
    border-radius: 22.5px
}

.px-icon-l.px-radius,
.px-icon-m.px-radius,
.px-icon-s.px-radius {
    border-radius: 100%
}

.px-btn-xs a,
.px-btn-xs span {
    line-height: 28px
}

.px-btn-s a,
.px-btn-s span {
    line-height: 43px
}

.px-btn-2 {
    border-color: #6bb9f0
}

.px-btn-2 a,
.px-btn-2 span {
    color: #6bb9f0
}

.px-btn-3 a,
.px-btn-3 span,
.px-btn-4 a,
.px-btn-4 span {
    color: #222
}

.px-btn-3 {
    border-color: #222
}

.px-btn-4 {
    border-color: #fff;
    background: #fff
}

.px-btn-5 a,
.px-btn-5 span,
.px-btn-6 a,
.px-btn-6 span {
    color: #fff
}

.px-btn-5 {
    border-color: #222;
    background: #222
}

.px-btn-6 {
    border-color: #6bb9f0;
    background: #6bb9f0
}

.px-btn-7 a,
.px-btn-7 span,
.px-btn-8 a,
.px-btn-8 span {
    color: #222
}

.px-btn-7 {
    border-color: #f0f0f0;
    background: #f0f0f0
}

.px-btn-8 {
    border-color: #F0F0F0;
    background: #F0F0F0
}

.px-icon {
    transition: all ease-in-out .3s;
    -moz-transition: all ease-in-out .3s;
    -webkit-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    -ms-transition: all ease-in-out .3s
}

.px-icon i {
    font-size: 32px;
    line-height: 90px
}

.px-icon a {
    display: block
}

.px-icon-l {
    height: 90px;
    width: 90px
}

.px-icon-l i {
    line-height: 90px;
    font-size: 36px
}

.px-icon-m {
    height: 75px;
    width: 75px
}

.px-icon-m i {
    line-height: 75px;
    font-size: 28px
}

.px-icon-s {
    height: 60px;
    width: 60px
}

.px-icon-s i {
    line-height: 62px;
    font-size: 20px
}

.px-icon-1 {
    border-color: #fff;
    background: 0 0
}

.px-icon-1 a,
.px-icon-1 i {
    color: #fff
}

.px-icon-2 {
    border-color: #6bb9f0;
    background: 0 0
}

.px-icon-2 a,
.px-icon-2 i {
    color: #6bb9f0
}

.px-icon-3 a,
.px-icon-3 i,
.px-icon-4 a,
.px-icon-4 i {
    color: #222
}

.px-icon-3 {
    border-color: #222;
    background: 0 0
}

.px-icon-4 {
    border-color: #fff;
    background: #fff
}

.px-icon-5 a,
.px-icon-5 i,
.px-icon-6 a,
.px-icon-6 i {
    color: #fff
}

.px-icon-5 {
    border-color: #222;
    background: #222
}

.px-icon-6 {
    border-color: #6bb9f0;
    background: #6bb9f0
}

.px-icon-7 a,
.px-icon-7 i,
.px-icon-8 a,
.px-icon-8 i {
    color: #222
}

.px-icon-7 {
    border-color: #f0f0f0;
    background: #f0f0f0
}

.px-icon-8 {
    border-color: #F0F0F0;
    background: #F0F0F0
}

.px-icon-no-bg {
    background: 0 0;
    border: none
}

.px-curs-def {
    cursor: default
}

.px-curs-point {
    cursor: pointer
}