@charset "UTF-8";

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animated.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s
}

@-webkit-keyframes bounce {

    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@keyframes bounce {

    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -webkit-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce
}

@-webkit-keyframes flash {

    0%,
    50%,
    100% {
        opacity: 1
    }

    25%,
    75% {
        opacity: 0
    }
}

@keyframes flash {

    0%,
    50%,
    100% {
        opacity: 1
    }

    25%,
    75% {
        opacity: 0
    }
}

.flash {
    -webkit-animation-name: flash;
    animation-name: flash
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }

    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
}

.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse
}

@-webkit-keyframes shake {

    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px)
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px)
    }
}

@keyframes shake {

    0%,
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px)
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px)
    }
}

.shake {
    -webkit-animation-name: shake;
    animation-name: shake
}

@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }

    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }

    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }

    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    40% {
        -webkit-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }

    60% {
        -webkit-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        transform: rotate(5deg)
    }

    80% {
        -webkit-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }

    100% {
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

.swing {
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing
}

@-webkit-keyframes tada {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    10%,
    20% {
        -webkit-transform: scale(.9) rotate(-3deg);
        transform: scale(.9) rotate(-3deg)
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg)
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg)
    }

    100% {
        -webkit-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0)
    }
}

@keyframes tada {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    10%,
    20% {
        -webkit-transform: scale(.9) rotate(-3deg);
        -ms-transform: scale(.9) rotate(-3deg);
        transform: scale(.9) rotate(-3deg)
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg)
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg)
    }

    100% {
        -webkit-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0)
    }
}

.tada {
    -webkit-animation-name: tada;
    animation-name: tada
}

@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%)
    }

    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg)
    }

    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg)
    }

    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg)
    }

    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg)
    }

    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg)
    }

    100% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%)
    }
}

@keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%)
    }

    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg)
    }

    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg)
    }

    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg)
    }

    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg)
    }

    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg)
    }

    100% {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%)
    }
}

.wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble
}

@-webkit-keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.85, .85, .85);
        transform: scale3d(.85, .85, .85)
    }

    50% {
        opacity: 1
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.85, .85, .85);
        transform: scale3d(.85, .85, .85)
    }

    50% {
        opacity: 1
    }
}

.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn
}

@-webkit-keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown
}

@-webkit-keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft
}

@-webkit-keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight
}

@-webkit-keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1)
    }
}

.zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp
}

@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(.3);
        transform: scale(.3)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        transform: scale(1.05)
    }

    70% {
        -webkit-transform: scale(.9);
        transform: scale(.9)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(.3);
        -ms-transform: scale(.3);
        transform: scale(.3)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05)
    }

    70% {
        -webkit-transform: scale(.9);
        -ms-transform: scale(.9);
        transform: scale(.9)
    }

    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
}

.bounceIn {
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn
}

@-webkit-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }

    80% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px)
    }

    80% {
        -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        transform: translateY(-10px)
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown
}

@-webkit-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        transform: translateX(30px)
    }

    80% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -ms-transform: translateX(30px);
        transform: translateX(30px)
    }

    80% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px)
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft
}

@-webkit-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        transform: translateX(-30px)
    }

    80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        transform: translateX(-30px)
    }

    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px)
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight
}

@-webkit-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    80% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    80% {
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px)
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp
}

@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    25% {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(.3);
        transform: scale(.3)
    }
}

@keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    25% {
        -webkit-transform: scale(.95);
        -ms-transform: scale(.95);
        transform: scale(.95)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(.3);
        -ms-transform: scale(.3);
        transform: scale(.3)
    }
}

.bounceOut {
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut
}

@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

@keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

.bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown
}

@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

.bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft
}

@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

.bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight
}

@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

.bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
}

@keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }
}

.fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown
}

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

.fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig
}

@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }
}

.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft
}

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

.fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig
}

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }
}

.fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight
}

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

.fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig
}

@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
}

@keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }
}

.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp
}

@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

.fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig
}

@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

@keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

.animated.flip {
    -webkit-backface-visibility: visible;
    -ms-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-animation-name: flip;
    animation-name: flip
}

@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg)
    }

    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg)
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1
    }
}

@keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg)
    }

    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg)
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1
    }
}

.flipInX {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX
}

@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg)
    }

    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg)
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1
    }
}

@keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }

    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg)
    }

    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg)
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1
    }
}

.flipInY {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY
}

@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }
}

@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }
}

.flipOutX {
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }
}

@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }
}

.flipOutY {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY
}

@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }

    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1
    }

    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1
    }
}

@keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }

    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1
    }

    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1
    }
}

.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }
}

@keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }
}

.lightSpeedOut {
    -webkit-animation-name: lightSpeedOut;
    animation-name: lightSpeedOut;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in
}

@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

.rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn
}

@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

.rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft
}

@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

.rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight
}

@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

.rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft
}

@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

.rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight
}

@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0
    }
}

@keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0
    }
}

.rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut
}

@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

@keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

.rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft
}

@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

@keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

.rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight
}

@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

.rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft
}

@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

.rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight
}

@-webkit-keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown
}

@-webkit-keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft
}

@-webkit-keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight
}

@-webkit-keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

.slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft
}

@-webkit-keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

.slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight
}

@-webkit-keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

.slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp
}

@-webkit-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%,
    60% {
        -webkit-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40% {
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    100% {
        -webkit-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0
    }
}

@keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    40% {
        -webkit-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }

    100% {
        -webkit-transform: translateY(700px);
        -ms-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0
    }
}

.hinge {
    -webkit-animation-name: hinge;
    animation-name: hinge
}

@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg)
    }
}

@keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg)
    }
}

.rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn
}

@-webkit-keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg)
    }
}

@keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        -ms-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg)
    }
}

.rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut
}

html {
    -webkit-font-smoothing: antialiased;
    position: relative;
    overflow-x: hidden
}

body {
    letter-spacing: .04em
}

body.disable-hover {
    pointer-events: none
}

p {
    margin-bottom: 2rem
}

a {
    transition: all .25s;
    outline: none
}

hr {
    border-color: #eee;
    display: inline-block;
    width: 100%
}

button,
input,
optgroup,
select,
textarea {
    font-family: "Source Sans Pro", "Montserrat", Arial, "Helvetica Neue", sans-serif
}

blockquote {
    padding: 15px 30px;
    border-left: 5px solid #eee;
    margin-bottom: 1.5rem
}

blockquote p:last-child {
    margin-bottom: 0
}

.wp-caption,
.sp-widget-block img,
.sp-blog-block img {
    max-width: 100%;
    height: auto
}

button,
input,
select,
textarea {
    max-width: 100%
}

table {
    margin-bottom: 2rem
}

table tr,
table th,
table td {
    padding: 10px 15px;
    border: 1px solid #eee
}

#sp-wrapper {
    background: #fff;
    position: relative;
    z-index: 10
}

.sp-marg30 {
    margin-top: 30px
}

.sp-marg50 {
    margin-top: 50px
}

@media (max-width:767px) {
    .text-right {
        text-align: center !important
    }

    .text-left {
        text-align: center !important
    }

    [class^=col-],
    [class*=' col-'] {
        padding-top: 15px;
        padding-bottom: 15px
    }

    .sp-marg30,
    .sp-marg50 {
        margin-top: 30px
    }
}

.sp-section {
    position: relative;
    z-index: 992;
    padding-top: 110px;
    padding-bottom: 110px;
    background-color: #fff
}

.sp-section.pt0 {
    padding-top: 0 !important
}

.sp-section.pb0 {
    padding-bottom: 0 !important
}

.sp-section.none {
    padding: 0 !important
}

.sp-section.border {
    border-top: 1px solid #eee
}

.sp-section.white {
    color: #fff
}

.sp-section.white h1,
.sp-section.white h2,
.sp-section.white h3,
.sp-section.white h4,
.sp-section.white h5,
.sp-section.white h6 {
    color: #fff
}

.sp-section.little {
    padding-top: 80px;
    padding-bottom: 80px
}

@media (max-width:767px) {
    .sp-section.little {
        padding-top: 50px;
        padding-bottom: 50px
    }
}

.sp-section.bg-color-light {
    background: #f5f5f5;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee
}

.sp-section.bg-color-dark {
    background: #8e8e8e;
    border-top: 1px solid #444;
    border-bottom: 1px solid #444;
    color: #fff
}

.sp-section img {
    max-width: 100%
}

.sp-section p:last-child {
    margin-bottom: 0
}

@media (max-width:767px) {
    .sp-section {
        padding-top: 80px;
        padding-bottom: 80px;
        text-align: center
    }
}

.sp-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .6)
}

[class^=icon-]:before,
[class*=" icon-"]:before {
    margin: 0
}

.jarallax {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%
}

.sp-btn-container {
    display: inline-block;
    width: 100%;
    margin-top: 15px
}

.sp-btn-container .align_center {
    text-align: center
}

.sp-btn-container .align_left {
    text-align: left
}

.sp-btn-container .align_right {
    text-align: right
}

.sp-color-swarm {
    position: relative
}

.sp-color-swarm>.sp-color-swarm-svg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#sp-preloader {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 15000;
    background: #fff
}

#sp-preloader:after {
    content: '';
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -25px;
    margin-left: -25px
}

#sp-preloader:after {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: inline-block;
    background: #a8252d;
    animation: 1.15s infinite ease-in-out;
    animation-name: sp-site-loader
}

#sp-preloader:after:before,
#sp-preloader:after:after {
    animation: 1.15s infinite ease-in-out;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0
}

@keyframes sp-site-loader {
    from {
        transform: scale(0);
        opacity: 1
    }

    to {
        transform: scale(1);
        opacity: 0
    }
}

.sp-scroll-top {
    position: fixed;
    padding: 10px;
    text-align: center;
    right: 30px;
    bottom: 30px;
    color: #fff;
    transform: translate3d(0, 20px, 0);
    transition: all .55s ease;
    z-index: 1000;
    border-radius: 20px;
    background-color: #a8252d;
    opacity: 0;
    line-height: 1;
    visibility: hidden
}

.sp-scroll-top.scroll-top-visible {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    visibility: visible
}

.sp-scroll-top>i {
    width: 20px;
    height: 20px;
    line-height: 20px;
    color: #fff;
    display: inline-block;
    opacity: 1;
    font-size: 20px;
    vertical-align: middle
}

.sp-scroll-top>.anno-text {
    padding-left: 10px;
    padding-right: 5px;
    white-space: nowrap;
    display: none;
    font-size: 14px;
    text-transform: uppercase;
    vertical-align: middle
}

.sp-scroll-top:hover {
    background: #222;
    color: #fff
}

.gallery {
    margin: -5px -5px 2rem;
    font-size: 0;
    line-height: 0
}

.gallery:after {
    display: block;
    content: "";
    clear: both
}

.gallery .gallery-caption {
    color: #636c72;
    padding: 6px 0;
    font-size: 1rem;
    line-height: 1.75;
    font-style: italic
}

.gallery .gallery-item {
    float: left;
    padding: 5px;
    margin: 0;
    overflow: hidden;
    position: relative
}

.gallery .gallery-item a {
    outline: none
}

.gallery .gallery-item img {
    width: 100%;
    height: auto
}

.gallery.gallery-columns-1 .gallery-item {
    width: 100%
}

.gallery.gallery-columns-2 .gallery-item {
    width: 50%
}

.gallery.gallery-columns-3 .gallery-item {
    width: 33.33333%
}

.gallery.gallery-columns-4 .gallery-item {
    width: 25%
}

.gallery.gallery-columns-5 .gallery-item {
    width: 20%
}

.gallery.gallery-columns-6 .gallery-item {
    width: 16.66667%
}

.gallery.gallery-columns-7 .gallery-item {
    width: 14.28571%
}

.gallery.gallery-columns-8 .gallery-item {
    width: 12.5%
}

.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
    display: none
}

@media (max-width:767px) {
    .gallery .gallery-item {
        width: 50% !important
    }
}

@media (max-width:575px) {
    .gallery .gallery-item {
        width: 100% !important
    }
}

.sp-pagination {
    text-align: center;
    font-size: 0
}

.sp-pagination ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-pagination ul li {
    font-weight: 700;
    display: inline
}

.sp-pagination ul li a,
.sp-pagination ul li span {
    display: inline-block;
    font-size: 18px;
    padding: 10px 25px;
    color: #8e8e8e
}

.sp-pagination ul li span {
    color: #a8252d;
    cursor: default
}

.sp-pagination ul li span.dots {
    color: #8c8c8c
}

.sp-pagination ul li.current a,
.sp-pagination ul li:hover a {
    color: #a8252d
}

@media (max-width:767px) {
    .sp-pagination {
        margin-top: 0
    }
}

.sp-comments-area {
    width: 100%
}

.sp-comments-area ol.commentlist-root>li:first-child {
    padding-top: 0
}

.sp-comments-area ol {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    margin-bottom: 2rem
}

.sp-comments-area ol>ol.children {
    padding-left: 30px
}

@media (max-width:767px) {
    .sp-comments-area ol>ol.children {
        padding-left: 15px
    }
}

.sp-comments-area ol>li {
    border-bottom: 5px solid #f2f2f2;
    padding: 30px
}

@media (max-width:767px) {
    .sp-comments-area ol>li {
        padding: 15px
    }
}

.sp-comments-area ol>li .comment-meta:after {
    display: block;
    content: "";
    clear: both
}

@media (max-width:767px) {
    .sp-comments-area ol>li .comment-meta {
        margin-bottom: 15px
    }
}

.sp-comments-area ol>li .comment-meta img.avatar {
    float: left;
    margin-right: 20px;
    margin-bottom: 20px;
    border-radius: 50%
}

@media (max-width:767px) {
    .sp-comments-area ol>li .comment-meta img.avatar {
        float: none;
        margin-right: 0
    }
}

.sp-comments-area ol>li .comment-meta .author-card {
    margin-bottom: .4rem
}

.sp-comments-area ol>li .comment-meta .author-card>a {
    color: inherit
}

.sp-comments-area ol>li .comment-meta .comment-time {
    font-size: 14px
}

.sp-comments-area ol>li .comment-content {
    width: 100%;
    margin-bottom: 1rem
}

.sp-comments-area ol>li .comment-content:after {
    display: block;
    content: "";
    clear: both
}

.sp-comments-area ol>li .comment-content p {
    margin-bottom: 1rem
}

.sp-comments-area ol>li .comment-content ol {
    padding-left: 40px;
    list-style-type: decimal;
    margin: 0
}

.sp-comments-area ol>li .comment-content ol li {
    border: none;
    padding: 0
}

.sp-comments-area ol>li .comment-content img {
    max-width: 100%;
    height: auto
}

.sp-comments-area ol>li .comment-content select {
    max-width: 100%
}

.sp-comments-area ol>li .comment-awaiting-moderation {
    color: #636c72;
    font-style: italic;
    margin-bottom: 1rem
}

.sp-comments-area ol>li .comment-respond {
    margin-top: 1rem
}

.sp-comments-area ol>li .comment-respond .comment-reply-title {
    font-size: 1.25rem
}

.sp-comments-area ol>li .comment-respond .comment-reply-title>small {
    margin-left: 1rem;
    font-size: 60%;
    vertical-align: bottom
}

.sp-comments-area ol>li .comment-respond .comment-notes {
    margin-bottom: 1.5rem
}

.sp-comments-area p.form-submit {
    margin-bottom: 0;
    margin-top: .75rem;
    display: inline-block
}

.sp-comments-area .comment-reply-title {
    margin-bottom: 1rem
}

.sp-comments-area .logged-in-as {
    margin-bottom: 1rem
}

.sp-comments-area .navigation {
    margin-top: 30px;
    display: inline-block;
    width: 100%
}

.sp-comments-area .navigation .nav-previous {
    float: left
}

.sp-comments-area .navigation .nav-next {
    float: right
}

.sp-password-post {
    position: relative;
    text-align: center
}

.sp-password-post form.password-protected {
    max-width: 350px;
    margin: 0 auto
}

.sp-password-post label {
    width: 100%;
    margin-bottom: 0
}

.sp-password-post .screen-reader-text {
    display: none
}

.sp-password-post input[name=post_password] {
    width: 100%;
    padding: 6px 85px 6px 15px;
    border: 1px solid #eee;
    border-radius: 30px;
    outline: none;
    transition: border .25s linear
}

.sp-password-post input[name=post_password]:focus {
    border: 1px solid #ddd;
    transition: border .25s linear
}

.sp-password-post input[type=submit] {
    position: relative;
    float: right;
    margin-top: -42px;
    background: #a8252d;
    border: none;
    padding: 7px 25px;
    color: #fff;
    border-radius: 30px;
    z-index: 6;
    outline: none
}

.sp-password-post input[type=submit]:hover {
    cursor: pointer
}

.row {
    max-width: none !important
}

.btn {
    cursor: pointer
}

.btn-lg {
    font-size: 15px;
    font-weight: 400
}

.btn-white {
    color: #8e8e8e;
    background-color: #fff;
    border-color: #fff;
    transition: all .25s linear
}

.btn-white:hover {
    background: rgba(255, 255, 255, .6);
    transition: all .25s linear
}

.btn-border {
    color: #8e8e8e;
    background-color: transparent;
    border: 2px solid #8e8e8e;
    transition: all .25s linear
}

.btn-border:hover {
    background: #fff;
    transition: all .25s linear
}

.form-control {
    letter-spacing: .04em;
    color: #8e8e8e
}

.form-control:focus {
    color: #8e8e8e
}

.form-control:-webkit-autofill {
    -webkit-transition: none;
    -webkit-box-shadow: 0 0 0 30px #fff inset
}

.progress {
    background-color: #ddd;
    border-radius: 0
}

.progress .progress-bar {
    background-color: #222;
    height: 5px
}

.input-group .form-control:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child)>.btn,
.input-group-btn:not(:first-child)>.btn-group>.btn,
.input-group-btn:not(:first-child)>.dropdown-toggle,
.input-group-btn:not(:last-child)>.btn:not(:first-child),
.input-group-btn:not(:last-child)>.btn-group:not(:first-child)>.btn {
    border-radius: 0
}

.input-group .font-size,
.input-group .input-group-addon,
.input-group .input-group-btn {
    z-index: 10
}

div.wpcf7-mail-sent-ok {
    border: none;
    color: #4caf50
}

div.wpcf7-mail-sent-ng {
    border: none;
    color: #f44336
}

div.wpcf7-spam-blocked {
    border: none;
    color: #ff9800
}

div.wpcf7-validation-errors {
    border: none;
    color: #a8252d
}

div.wpcf7-response-output {
    margin: 1rem 0 0;
    padding: 0
}

span.wpcf7-not-valid-tip {
    color: #f44336;
    padding-top: .5rem;
    font-size: 14px
}

.use-floating-validation-tip span.wpcf7-not-valid-tip {
    border: none;
    color: #f44336
}

div.wpcf7 .ajax-loader {
    margin-left: 10px
}

.wpcf7 p:last-child {
    margin-bottom: 0
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-slider:hover .slick-arrow.circle.slick-next {
    right: 15px;
    opacity: 1
}

.slick-slider:hover .slick-arrow.circle.slick-prev {
    left: 15px;
    opacity: 1
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block
}

.slick-track:before,
.slick-track:after {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: inline-block;
    max-width: 100%;
    height: auto
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-arrow {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 15%;
    opacity: .6;
    color: inherit;
    border: 0;
    outline: none !important;
    background: 0 0;
    -webkit-appearance: none;
    font-size: 0;
    display: inline-block;
    padding: 0;
    line-height: 1;
    z-index: 100
}

.slick-arrow:hover {
    opacity: 1
}

.slick-arrow:before {
    font-family: "sp-theme-icons";
    content: "\f3d2";
    font-size: 40px
}

.slick-arrow.slick-next {
    left: auto;
    right: 0
}

.slick-arrow.slick-next:before {
    content: '\f3d3'
}

.slick-arrow.slick-disabled {
    opacity: .2;
    pointer-events: none
}

.slick-arrow.circle {
    font-size: 18px;
    background: #fff;
    cursor: pointer;
    position: absolute;
    top: 50%;
    text-align: center;
    margin-top: -18px;
    transition: all .25s;
    text-decoration: none;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    line-height: 36px
}

.slick-arrow.circle:before {
    content: none
}

.slick-arrow.circle>i {
    position: relative;
    color: #8e8e8e
}

.slick-arrow.circle:hover {
    background: #a8252d
}

.slick-arrow.circle:hover i {
    color: #fff
}

.slick-arrow.circle.slick-next {
    right: 0;
    opacity: 0
}

.slick-arrow.circle.slick-prev {
    left: 0;
    opacity: 0
}

.slick-dots {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    margin-top: 30px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 150;
    line-height: 1;
    font-size: 0
}

.slick-dots>li {
    display: inline-block
}

.slick-dots button {
    color: transparent;
    text-indent: -9999px;
    -webkit-appearance: none;
    display: inline-block;
    height: 1em;
    width: 1em;
    margin-right: .4em;
    margin-left: .4em;
    padding: 0;
    border: 0;
    outline: none !important;
    border-radius: 50%;
    background: #ddd;
    transition: background-color .25s;
    font-size: .9375rem
}

.slick-dots>li:hover button,
.slick-dots>li.slick-active button {
    background-color: #a8252d
}

.slick-dots-inside .slick-dots {
    position: absolute;
    bottom: 2.625rem;
    margin-top: 0
}

.slick-dots-inside .slick-dots button {
    background: #fff;
    font-size: 1rem
}

.sp-text-rotate {
    display: inline-block;
    white-space: nowrap
}

@media (max-width:767px) {
    .sp-text-rotate {
        white-space: normal
    }
}

.rotating {
    display: inline-block;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform: rotateX(0) rotateY(0) rotateZ(0);
    -moz-transform: rotateX(0) rotateY(0) rotateZ(0);
    transform: rotateX(0) rotateY(0) rotateZ(0);
    -webkit-transition: .5s;
    -moz-transition: .5s;
    transition: .5s;
    -webkit-transform-origin-x: 50%
}

.rotating.flip {
    position: relative
}

.rotating .front,
.rotating .back {
    left: 0;
    top: 0;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden
}

.rotating .front {
    position: absolute;
    display: inline-block;
    -webkit-transform: translate3d(0, 0, 1px);
    -moz-transform: translate3d(0, 0, 1px);
    transform: translate3d(0, 0, 1px)
}

.rotating.flip .front {
    z-index: 1
}

.rotating .back {
    display: block;
    opacity: 0
}

.rotating.spin {
    -webkit-transform: rotate(360deg) scale(0);
    -moz-transform: rotate(360deg) scale(0);
    transform: rotate(360deg) scale(0)
}

.rotating.flip .back {
    z-index: 2;
    display: block;
    opacity: 1;
    -webkit-transform: rotateY(180deg) translate3d(0, 0, 0);
    -moz-transform: rotateY(180deg) translate3d(0, 0, 0);
    transform: rotateY(180deg) translate3d(0, 0, 0)
}

.rotating.flip.up .back {
    -webkit-transform: rotateX(180deg) translate3d(0, 0, 0);
    -moz-transform: rotateX(180deg) translate3d(0, 0, 0);
    transform: rotateX(180deg) translate3d(0, 0, 0)
}

.rotating.flip.cube .front {
    -webkit-transform: translate3d(0, 0, 100px) scale(.85, .85);
    -moz-transform: translate3d(0, 0, 100px) scale(.85, .85);
    transform: translate3d(0, 0, 100px) scale(.85, .85)
}

.rotating.flip.cube .back {
    -webkit-transform: rotateY(180deg) translate3d(0, 0, 100px) scale(.9, .9);
    -moz-transform: rotateY(180deg) translate3d(0, 0, 100px) scale(.9, .9);
    transform: rotateY(180deg) translate3d(0, 0, 100px) scale(.9, .9)
}

.rotating.flip.cube.up .back {
    -webkit-transform: rotateX(180deg) translate3d(0, 0, 100px) scale(.9, .9);
    -moz-transform: rotateX(180deg) translate3d(0, 0, 100px) scale(.9, .9);
    transform: rotateX(180deg) translate3d(0, 0, 100px) scale(.9, .9)
}

html.swipebox-html.swipebox-touch {
    overflow: hidden !important;
    transition: all .25s linear
}

#swipebox-overlay {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999 !important;
    overflow: hidden;
    user-select: none;
    background: rgba(0, 0, 0, .85);
    transition: background .25s linear
}

#swipebox-container {
    position: relative;
    width: 100%;
    height: 100%
}

#swipebox-slider {
    transition: transform .4s ease;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    white-space: nowrap;
    position: absolute;
    display: none
}

#swipebox-slider .slide {
    height: 100%;
    width: 100%;
    line-height: 1px;
    text-align: center;
    display: inline-block
}

#swipebox-slider .slide:before {
    content: "";
    display: inline-block;
    height: 50%;
    width: 1px;
    margin-right: -1px
}

#swipebox-slider .slide .swipebox-video-container,
#swipebox-slider .slide .swipebox-inline-container {
    display: inline-block;
    max-height: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    width: auto;
    height: auto;
    vertical-align: middle
}

#swipebox-slider .slide .swipebox-video-container {
    background: 0 0;
    max-width: 1140px;
    max-height: 100%;
    width: 100%;
    padding: 20px 150px;
    box-sizing: border-box
}

#swipebox-slider .slide .swipebox-video-container .swipebox-video {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    position: relative
}

#swipebox-slider .slide .swipebox-video-container .swipebox-video iframe {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
    max-height: 100vh;
    max-height: calc(100vh - 40px)
}

#swipebox-slider .slide-loading {
    background: url("/images/loader.gif") no-repeat center center
}

#swipebox-close {
    position: absolute;
    top: 10px;
    right: 30px;
    line-height: 1;
    cursor: pointer;
    transition: opacity .25s
}

#swipebox-close:before {
    color: #fff;
    content: '\f404';
    display: inline-block;
    font-family: "sp-theme-icons";
    font-size: 70px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#swipebox-close:hover {
    opacity: .6
}

@media screen and (max-width:800px) {
    #swipebox-close {
        right: 15px
    }

    #swipebox-close:before {
        font-size: 30px
    }
}

.typed-cursor {
    animation: typed-blink .7s infinite;
    opacity: 1;
    display: inline-block
}

@keyframes typed-blink {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

#sp-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1050;
    background: #fff;
    color: #a8252d;
    padding: 20px 30px;
    border-bottom: 1px solid transparent
}

#sp-header-inner {
    display: flex;
    align-items: center
}

#sp-header-inner>.brand-logo {
    user-select: none;
    color: inherit;
    font-size: 2.1rem;
    margin-right: auto;
    min-width: 0;
    line-height: 1
}

#sp-header-inner>.brand-logo>h1 {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: inherit;
    color: inherit
}

#sp-header-inner>.brand-logo>h1>span {
    color: #a8252d
}

#sp-header-inner>.brand-logo img {
    max-width: 100%;
    height: auto
}

#sp-header-inner>.brand-logo img.logo-dark {
    display: none
}

#sp-header-inner>.header-extras {
    font-size: 0;
    line-height: 1;
    margin-left: 30px;
    margin-right: -10px;
    border-left: 1px solid currentColor;
    padding-left: 20px
}

#sp-header-inner>.header-extras>* {
    vertical-align: middle
}

#sp-header-inner>.header-extras>a {
    padding: 5px 10px;
    font-size: 22px;
    color: inherit
}

#sp-header-inner>.header-extras>a:hover {
    opacity: .6
}

#sp-header-inner>.header-extras>.v-separator {
    display: inline-block;
    width: 1px;
    height: 22px;
    background: currentColor;
    margin: 0 30px
}

#sp-primary-nav {
    text-align: right;
    line-height: 1
}

#sp-primary-nav>.nav_menu {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    margin: 0 -17px;
    font-size: 0
}

#sp-primary-nav>.nav_menu:after {
    display: block;
    content: "";
    clear: both
}

#sp-primary-nav>.nav_menu>li {
    position: relative;
    display: inline-block
}

#sp-primary-nav>.nav_menu>li>a {
    display: inline-block;
    font-size: 16px;
    white-space: nowrap;
    padding: 15px 17px;
    font-weight: 400;
    color: inherit;
    text-transform: uppercase;
    transition-property: opacity, color, background
}

#sp-primary-nav>.nav_menu>li.menu-item-has-children>a:after {
    padding-left: 7px;
    content: '\e821';
    font-size: 14px;
    font-family: "sp-theme-icons"
}

#sp-primary-nav>.nav_menu>li:hover>a {
    opacity: .6
}

#sp-primary-nav>.nav_menu>li.menu-item-has-children:hover>a {
    opacity: 1;
    background: #fff;
    color: #a8252d
}

#sp-primary-nav>.nav_menu .sub-menu {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    transform: translate3d(0, -10px, 0);
    transition: transform .35s, opacity .25s, visibility .35s;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
    background: #fff;
    text-align: left
}

#sp-primary-nav>.nav_menu .sub-menu.invert-attach-point {
    left: auto;
    right: 0
}

#sp-primary-nav>.nav_menu .sub-menu>li {
    display: inline-block;
    position: relative
}

#sp-primary-nav>.nav_menu .sub-menu>li>a {
    position: relative;
    display: inline-block;
    padding: 10px 20px;
    font-size: 15px;
    color: #8e8e8e;
    width: 220px;
    line-height: 1.75;
    white-space: normal;
    transition-property: background;
    text-transform: capitalize;
    border-top: 1px solid #eee
}

#sp-primary-nav>.nav_menu .sub-menu>li.menu-item-has-children>a:after {
    right: 20px;
    position: absolute;
    padding-left: 7px;
    content: '\e81f';
    font-size: 14px;
    font-family: "sp-theme-icons"
}

#sp-primary-nav>.nav_menu .sub-menu>li:hover>a {
    background: #f5f5f5
}

#sp-primary-nav>.nav_menu .sub-menu .sub-menu {
    transform: translate3d(-10px, 0, 0);
    left: 100%;
    top: 0
}

#sp-primary-nav>.nav_menu .sub-menu .sub-menu.invert-attach-point {
    transform: translate3d(10px, 0, 0);
    right: 100%;
    left: auto
}

#sp-primary-nav>.nav_menu>li.sp-mega-menu>ul {
    border-top: 1px solid #eee
}

#sp-primary-nav>.nav_menu>li.sp-mega-menu>ul>li>a {
    width: 200px;
    border-top: 0;
    border-bottom: 1px solid #eee;
    border-right: 1px solid #eee
}

#sp-primary-nav>.nav_menu>li.sp-mega-menu.mega-2-columns>ul {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2
}

#sp-primary-nav>.nav_menu>li.sp-mega-menu.mega-3-columns>ul {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3
}

#sp-primary-nav>.nav_menu li.menu-item-has-children:hover>.sub-menu {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    visibility: visible
}

#sp-mobile-nav-bg,
#sp-mobile-nav-container {
    transition: opacity .3s, visibility .3s;
    opacity: 0;
    visibility: hidden
}

#sp-mobile-nav-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1030;
    background: rgba(0, 0, 0, .85)
}

#sp-mobile-nav-container {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1040;
    border-top: 0 solid transparent;
    border-bottom: 25px solid transparent;
    overflow: hidden
}

#sp-mobile-nav-container>.overlay-inner-wrap {
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 50%;
    margin-left: -200px;
    width: 400px;
    max-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    text-align: center
}

#sp-primary-nav #sp-mobile-nav-trigger {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    font-size: 18px;
    z-index: 1040;
    margin: 15px 0;
    width: 1.5em;
    height: 1em;
    color: inherit;
    transition: none
}

#sp-primary-nav #sp-mobile-nav-trigger>span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: currentColor;
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: all .3s ease-in-out, color .25s
}

#sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(1) {
    top: 0
}

#sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(2),
#sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(3) {
    top: 50%;
    margin-top: -1px
}

#sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(4) {
    bottom: 0
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(1) {
    top: 50%;
    width: 0;
    left: 50%
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(2) {
    transform: rotate(45deg)
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(3) {
    transform: rotate(-45deg)
}

.sp-active-burger-menu #sp-primary-nav #sp-mobile-nav-trigger>span:nth-child(4) {
    bottom: 50%;
    width: 0;
    left: 50%
}

#sp-mobile-nav-container .sp-soc-icons {
    margin-top: 15px;
    font-size: 0;
    opacity: 0
}

#sp-mobile-nav-container .sp-soc-icons>a {
    display: inline-block;
    color: #a8252d;
    padding: 0 15px;
    opacity: 1;
    font-size: 23px
}

#sp-mobile-nav-container .sp-soc-icons>a:hover {
    color: #fff
}

#sp-mobile-nav-container .nav_menu {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

#sp-mobile-nav-container .nav_menu li>a.sub-active {
    color: #a8252d
}

#sp-mobile-nav-container .nav_menu li.menu-item-has-children>a {
    position: relative
}

#sp-mobile-nav-container .nav_menu li.menu-item-has-children>a:after {
    content: '\f3d0';
    font-family: "sp-theme-icons";
    margin-left: 5px;
    font-size: 12px;
    position: absolute;
    top: 50%;
    margin-top: 2px;
    line-height: 1;
    transform: translateY(-50%)
}

#sp-mobile-nav-container .nav_menu>li {
    position: relative;
    opacity: 0
}

#sp-mobile-nav-container .nav_menu>li>a {
    font-size: 20px;
    line-height: 35px;
    text-transform: uppercase;
    margin-bottom: 15px;
    display: block;
    color: #fff;
    font-weight: 400
}

#sp-mobile-nav-container .nav_menu>li>a:hover {
    color: #a8252d
}

#sp-mobile-nav-container .nav_menu .sub-menu {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    padding: 0 0 15px;
    display: none
}

#sp-mobile-nav-container .nav_menu .sub-menu a {
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 10px;
    color: #fff;
    text-transform: none;
    display: block
}

#sp-mobile-nav-container .nav_menu .sub-menu a:hover {
    color: #a8252d
}

#sp-mobile-nav-container .nav_menu .sub-menu .sub-menu {
    padding-top: 5px
}

html.sp-active-burger-menu,
html.sp-active-burger-menu>body {
    position: relative;
    height: 100%;
    overflow: hidden
}

html.sp-active-burger-menu #sp-mobile-nav-bg,
html.sp-active-burger-menu #sp-mobile-nav-container {
    opacity: 1;
    visibility: visible
}

html.sp-active-burger-menu #sp-mobile-nav-container .nav_menu>li,
html.sp-active-burger-menu #sp-mobile-nav-container .sp-soc-icons {
    -webkit-animation: sp-menu-effect .4s linear forwards;
    animation: sp-menu-effect .4s linear forwards
}

html.sp-active-burger-menu #sp-header.header-stuck .brand-logo .logo-dark {
    display: none
}

html.sp-active-burger-menu #sp-header.header-stuck .brand-logo .logo-white {
    display: block
}

@keyframes sp-menu-effect {
    from {
        opacity: 0;
        visibility: hidden;
        transform: translateY(15px)
    }

    to {
        opacity: 1;
        visibility: visible;
        transform: translateY(0)
    }
}

#sp-search-block-container {
    margin: 0;
    padding: 0;
    border: 0;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: rgba(0, 0, 0, .85);
    visibility: hidden;
    transition: all .25s linear;
    z-index: 10000;
    display: flex;
    justify-content: center;
    align-items: center
}

#sp-search-block-container>.search-block-inner {
    padding: 0 30px;
    transform: translate3d(0, 20px, 0);
    width: 600px;
    transition: opacity .5s, transform .5s;
    transition-delay: .25s;
    text-align: center;
    opacity: 0
}

#sp-search-block-container>.search-block-inner>form {
    position: relative
}

#sp-search-block-container .search-input {
    position: relative;
    z-index: 10005;
    -webkit-appearance: none;
    background: 0 0;
    padding: 15px 45px 15px 0;
    border: none;
    font-size: 30px;
    width: 100%;
    border-bottom: 1px solid #fff;
    outline: none;
    color: #fff
}

#sp-search-block-container .search-input::-webkit-input-placeholder {
    color: #fff
}

#sp-search-block-container .search-input::-moz-placeholder {
    color: #fff
}

#sp-search-block-container .search-input:-moz-placeholder {
    color: #fff
}

#sp-search-block-container .search-input:-ms-input-placeholder {
    color: #fff
}

#sp-search-block-container .search-btn {
    -webkit-appearance: none;
    border: none;
    background: 0 0;
    outline: 0;
    cursor: pointer;
    font-size: 35px;
    color: #fff;
    transition: opacity .25s;
    opacity: .85;
    padding: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 45px;
    text-align: right;
    z-index: 10010
}

#sp-search-block-container .search-btn:hover {
    opacity: 1
}

#sp-search-block-container .close-search {
    position: absolute;
    top: 10px;
    right: 30px;
    line-height: 1;
    transition: opacity .25s
}

#sp-search-block-container .close-search i {
    font-size: 70px;
    color: #fff
}

#sp-search-block-container .close-search:hover {
    opacity: .6
}

#sp-search-block-container.open {
    opacity: 1;
    visibility: visible
}

#sp-search-block-container.open>.search-block-inner {
    transform: translate3d(0, 0, 0);
    opacity: 1
}

#sp-header {
    position: fixed;
    transition: all .25s linear
}

#sp-header a {
    transition-duration: .25s
}

body.admin-bar #sp-header {
    top: 32px
}

@media (max-width:782px) {
    body.admin-bar #sp-header {
        top: 46px
    }
}

#sp-header.header-stuck {
    position: fixed;
    padding-top: 15px;
    padding-bottom: 15px
}

#sp-header.header-stuck .brand-logo {
    font-size: 2rem
}

#sp-header.header-stuck .brand-logo .logo-dark {
    display: block
}

#sp-header.header-stuck .brand-logo .logo-white {
    display: none
}

#sp-header.stuck-slidein {
    position: absolute;
    transition: none
}

#sp-header.stuck-slidein:not(.header-stuck) {
    top: 0
}

#sp-header.stuck-slidein.header-stuck {
    position: fixed;
    animation: sp-header-stuck-slidein .5s 1 forwards
}

@keyframes sp-header-stuck-slidein {
    from {
        transform: translate3d(0, -100%, 0);
        opacity: 0
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

body:not(.sp-active-burger-menu) #sp-header.header-stuck {
    background: #fff;
    border-bottom-color: #eee;
    color: #8e8e8e;
    box-shadow: 0 3px 20px 5px rgba(0, 0, 0, .1)
}

@media (max-width:1199px) {
    #sp-primary-nav>.nav_menu {
        display: none
    }
}

@media (min-width:1200px) {
    #sp-primary-nav>#sp-mobile-nav-trigger {
        display: none
    }
}

@media (max-width:575px) {
    #sp-header {
        padding: 10px 15px !important
    }

    #sp-header-inner>.brand-logo {
        font-size: 1.6rem !important;
        padding-right: 30px
    }

    #sp-header-inner>.header-extras {
        display: none
    }
}

#sp-footer-sizing-helper {
    display: none
}

#sp-footer {
    background: #222;
    width: 100%
}

#sp-footer.sp-footer-fixed {
    position: fixed;
    bottom: 0;
    left: 0
}

#sp-footer.sp-footer-fixed+#sp-footer-sizing-helper {
    display: block
}

#sp-footer .container {
    padding-left: 25px;
    padding-right: 25px
}

@media (min-width:1200px) {
    #sp-footer .container {
        width: 1160px
    }
}

#sp-footer .container .row {
    margin-left: -25px;
    margin-right: -25px
}

#sp-footer .container .row [class^=col-],
#sp-footer .container .row [class*=' col-'] {
    padding-left: 25px;
    padding-right: 25px
}

@media (max-width:767px) {

    #sp-footer .container .row [class^=col-],
    #sp-footer .container .row [class*=' col-'] {
        padding-top: 25px;
        padding-bottom: 25px
    }
}

#sp-footer>.sp-main-footer {
    position: relative;
    padding-top: 100px;
    padding-bottom: 70px;
    border-bottom: 1px solid #2f2f2f;
    color: #fff
}

@media (max-width:767px) {
    #sp-footer>.sp-main-footer {
        padding-top: 40px;
        padding-bottom: 40px;
        text-align: center
    }
}

#sp-footer>.sp-main-footer .sp-footer-widget {
    margin-bottom: 30px
}

@media (max-width:767px) {
    #sp-footer>.sp-main-footer .sp-footer-widget {
        margin-bottom: 0
    }
}

#sp-footer>.sp-main-footer .sp-footer-widget .title-block h4 {
    color: #fff
}

#sp-footer>.sp-main-footer .sp-footer-widget .soclink-block ul {
    padding: 0;
    margin-top: 2rem;
    margin-bottom: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget .soclink-block ul li {
    display: inline-block;
    list-style: none;
    padding-right: 20px
}

#sp-footer>.sp-main-footer .sp-footer-widget .soclink-block ul li a {
    color: #a8252d;
    border-radius: 50%;
    font-size: 23px;
    display: inline-block;
    text-align: center;
    transition: all .3s linear
}

#sp-footer>.sp-main-footer .sp-footer-widget .soclink-block ul li a:hover {
    color: #fff
}

#sp-footer>.sp-main-footer .sp-footer-widget .twitter-block ul {
    padding-left: 50px;
    margin: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget .twitter-block ul li {
    list-style: none;
    padding-bottom: 1.3rem
}

#sp-footer>.sp-main-footer .sp-footer-widget .twitter-block ul li:last-child {
    padding-bottom: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget .twitter-block ul li:before {
    content: '\f242';
    font-family: "sp-theme-icons";
    color: #a8252d;
    font-size: 30px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    top: 5px;
    display: inline-block;
    position: relative;
    margin-right: 22px;
    line-height: 1;
    height: 100%;
    margin-left: -50px
}

#sp-footer>.sp-main-footer .sp-footer-widget ul.instagram-pics {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

#sp-footer>.sp-main-footer .sp-footer-widget ul.instagram-pics li {
    float: left;
    width: 25%;
    padding: 5px
}

#sp-footer>.sp-main-footer .sp-footer-widget ul.instagram-pics li img {
    width: 100%;
    height: auto
}

#sp-footer>.sp-main-footer .sp-footer-widget ul.instagram-pics a {
    display: inline-block;
    transition-property: opacity
}

#sp-footer>.sp-main-footer .sp-footer-widget ul.instagram-pics a:hover {
    opacity: .6
}

@media (max-width:767px) {
    #sp-footer>.sp-main-footer .sp-footer-widget ul.instagram-pics li {
        width: 50%
    }
}

#sp-footer>.sp-main-footer .sp-footer-widget ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

#sp-footer>.sp-main-footer .sp-footer-widget ul li {
    padding-bottom: 15px;
    text-align: left !important
}

#sp-footer>.sp-main-footer .sp-footer-widget ul li>ul.children li {
    padding: 15px 0 0 15px
}

#sp-footer>.sp-main-footer .sp-footer-widget ul li span.cat {
    float: right;
    background: #2f2f2f;
    width: 30px;
    font-size: 14px;
    padding: 1px 0;
    text-align: center
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li {
    list-style: none;
    margin-bottom: 20px;
    transition: opacity .2s linear
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li:hover {
    opacity: .7
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li:last-child {
    margin-bottom: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li>.post-link {
    display: flex
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li>.post-link>.image {
    flex: 0 0 100px
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li>.post-link>.content {
    flex: 1
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li .image {
    padding-right: 15px;
    min-width: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li .image>img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    width: 100%;
    height: 65px
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li .content {
    text-align: left !important
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li .content h5 {
    font-size: .92rem;
    margin-bottom: 0;
    line-height: 1.3;
    color: #a8252d
}

#sp-footer>.sp-main-footer .sp-footer-widget .sp-popular-posts>li .content span {
    color: #fff;
    font-size: 15px
}

#sp-footer>.sp-main-footer .sp-footer-widget.widget_nav_menu ul.menu {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

#sp-footer>.sp-main-footer .sp-footer-widget.widget_nav_menu ul.menu li {
    padding-bottom: 15px;
    text-align: left !important
}

#sp-footer>.sp-main-footer .sp-footer-widget.widget_nav_menu ul.menu li>ul.sub-menu li {
    padding: 15px 0 0 15px
}

#sp-footer>.sp-main-footer .sp-footer-widget img {
    max-width: 100%;
    height: auto
}

#sp-footer>.sp-main-footer .sp-footer-widget select {
    width: 100%;
    border: 1px solid #3c3c3c;
    background: #2f2f2f;
    color: #fff;
    height: 36px
}

#sp-footer>.sp-main-footer .sp-footer-widget table {
    width: 100%;
    margin: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget table caption {
    text-align: right;
    font-size: 13px;
    padding-top: 10px;
    color: #f2f2f2
}

#sp-footer>.sp-main-footer .sp-footer-widget table tbody td {
    text-align: center;
    height: 30px;
    padding: 7px;
    border-color: #2f2f2f
}

#sp-footer>.sp-main-footer .sp-footer-widget table tbody .pad {
    background: 0 0
}

#sp-footer>.sp-main-footer .sp-footer-widget table thead th {
    background: #2f2f2f;
    text-align: center;
    font-weight: 600;
    color: #fff;
    padding: 7px;
    border-color: #2f2f2f
}

#sp-footer>.sp-main-footer .sp-footer-widget table tfoot tr {
    border-color: #2f2f2f
}

#sp-footer>.sp-main-footer .sp-footer-widget table #next {
    padding-right: 24px;
    text-align: right
}

#sp-footer>.sp-main-footer .sp-footer-widget table tfoot td,
#sp-footer>.sp-main-footer .sp-footer-widget table tfoot th {
    padding: 7px;
    border: none;
    border-color: #2f2f2f
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form {
    position: relative
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form label {
    width: 100%;
    margin-bottom: 0
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form .screen-reader-text {
    display: none
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form input[name="s"] {
    width: 100%;
    padding: 6px 85px 6px 15px;
    border: 1px solid #3c3c3c;
    border-radius: 30px;
    outline: none;
    background: #2f2f2f;
    color: #fff;
    transition: border .25s linear
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form input[name="s"]:focus {
    border: 1px solid #484848;
    transition: border .25s linear
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form input[type=submit] {
    position: relative;
    float: right;
    margin-top: -42px;
    background: #a8252d;
    border: none;
    padding: 7px 15px;
    color: #fff;
    border-radius: 30px;
    z-index: 6;
    outline: none
}

#sp-footer>.sp-main-footer .sp-footer-widget form.search-form input[type=submit]:hover {
    cursor: pointer
}

#sp-footer>.sp-end-footer {
    position: relative;
    padding: 25px 0;
    color: #fff;
    font-size: .9rem;
    line-height: 1
}

#sp-footer>.sp-end-footer>.container {
    display: flex;
    align-items: center
}

#sp-footer>.sp-end-footer a {
    color: #fff
}

#sp-footer>.sp-end-footer a:hover {
    color: #a8252d
}

#sp-footer>.sp-end-footer .menu-block {
    margin-left: auto
}

#sp-footer>.sp-end-footer .menu-block ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

#sp-footer>.sp-end-footer .menu-block ul li {
    display: inline
}

#sp-footer>.sp-end-footer .menu-block ul li:after {
    content: '|';
    padding: 0 10px
}

#sp-footer>.sp-end-footer .menu-block ul li:last-child:after {
    display: none
}

@media (max-width:991px) {
    #sp-footer>.sp-end-footer {
        text-align: center;
        line-height: 1.75
    }

    #sp-footer>.sp-end-footer>.container {
        flex-wrap: wrap
    }

    #sp-footer>.sp-end-footer .end-footer-block {
        flex-basis: 100%
    }

    #sp-footer>.sp-end-footer .end-footer-block+.end-footer-block {
        padding-top: 20px
    }
}

.sp-title-block {
    width: 100%;
    margin-bottom: 2rem;
    text-transform: capitalize
}

.sp-title-block.line h3 {
    margin-bottom: 1.4rem
}

.sp-title-block.line span {
    margin-bottom: 1.4rem;
    display: block
}

.sp-title-block.line:after {
    content: '';
    height: 25px;
    width: 2px;
    background: #a8252d;
    display: inline-block;
    text-align: center
}

.sp-text-widget {
    line-height: 1.75;
    font-size: 1rem;
    font-family: "Source Sans Pro", "Montserrat", Arial, "Helvetica Neue", sans-serif;
    color: #8e8e8e
}

.sp-text-widget.primary-font {
    font-family: "Source Sans Pro", "Montserrat", Arial, "Helvetica Neue", sans-serif
}

.sp-text-widget.headings-font {
    font-family: "Montserrat", "Source Sans Pro", Arial, "Helvetica Neue", sans-serif
}

.sp-text-widget>p {
    line-height: inherit;
    font-size: inherit;
    color: inherit
}

.sp-text-widget>p:last-of-type {
    margin-bottom: 0
}

.sp-text-widget>.sp-signature {
    width: 100%;
    font-size: 23px;
    display: block;
    margin-top: 20px;
    font-family: 'Shadows Into Light', cursive;
    font-style: italic;
    letter-spacing: 2px;
    -webkit-transform: rotate(-3deg);
    transform: rotate(-3deg)
}

.sp-archive-loop>.sp-intro {
    height: 475px
}

.sp-static-page>.sp-intro {
    height: 450px
}

.sp-single-post-page>.sp-intro {
    height: 475px
}

.sp-intro {
    position: relative;
    overflow: hidden;
    text-align: center;
    width: 100%;
    color: #fff;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
    user-select: none
}

.sp-intro .intro-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 10
}

.sp-intro .intro-bg:before {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .55;
    content: '';
    z-index: 15
}

.sp-intro .intro-bg.no-overlay:before {
    display: none
}

.sp-intro .intro-bg>img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    width: 100%;
    height: 100%
}

.sp-intro .intro-dotted-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("/images/dotted-bg-pattern.png");
    z-index: 17
}

.sp-intro .intro-body {
    position: relative;
    z-index: 20;
    padding: 50px 25px
}

@media (max-width:575px) {
    .sp-intro .intro-body {
        padding: 50px 15px
    }
}

.sp-intro .intro-body h1,
.sp-intro .intro-body h2,
.sp-intro .intro-body h3,
.sp-intro .intro-body h4,
.sp-intro .intro-body h5,
.sp-intro .intro-body h6,
.sp-intro .intro-body p,
.sp-intro .intro-body a {
    color: #fff
}

.sp-intro .intro-body .btn-white {
    color: #a8252d
}

.sp-intro .intro-body .btn-border {
    border: 2px solid #fff
}

.sp-intro .intro-body .btn-border:hover {
    color: #8e8e8e
}

.sp-intro .intro-body .list-inline {
    margin: 0 -10px -20px
}

.sp-intro .intro-body .list-inline li {
    display: inline-block;
    margin: 0 10px 20px
}

.sp-intro .intro-body p {
    width: 100%;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto
}

.sp-intro .intro-body p:last-child {
    margin-bottom: 0
}

.sp-intro .intro-body .btn {
    text-shadow: none;
    border-radius: 30px;
    padding: 8px 22px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .5)
}

.sp-intro .intro-body .sp-intro-image-icon {
    margin-bottom: 2.5rem
}

.sp-intro .intro-body .icon-big {
    font-size: 90px;
    line-height: 90px
}

.sp-intro.fullscreen {
    height: 100vh;
    min-height: 450px
}

.sp-intro.fullscreen .intro-body {
    padding: 75px 25px
}

.sp-intro.kenburns .intro-bg {
    animation: sp-intro-kenburns 30s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards
}

.sp-intro:not(.fullscreen):first-child {
    padding-top: 50px
}

@keyframes sp-intro-kenburns {
    0% {
        transform: scale(1)
    }

    100% {
        transform: scale(1.15)
    }
}

.sp-intro .intro-title {
    line-height: 1;
    font-family: "Montserrat", "Source Sans Pro", Arial, "Helvetica Neue", sans-serif;
    font-weight: 400;
    /* text-transform: capitalize; */
    margin-bottom: 2.5rem
}

.sp-intro .intro-title:last-child {
    margin-bottom: 0
}

.sp-intro .intro-title.intro-title-1 {
    font-size: 4.3rem
}

.sp-intro .intro-title.intro-title-2 {
    font-size: 2.15rem
}

.sp-intro .intro-title.intro-title-3 {
    font-size: 1.43333rem
}

.sp-intro .intro-title.intro-title-4 {
    font-size: 1.075rem
}

.sp-intro .intro-title.intro-title-5 {
    font-size: .86rem
}

.sp-intro .intro-title.intro-title-6 {
    font-size: .71667rem
}

@media (max-width:767px) {
    .sp-intro .intro-title.intro-title-1 {
        font-size: 3.2rem
    }

    .sp-intro .intro-title.intro-title-2 {
        font-size: 1.6rem
    }

    .sp-intro .intro-title.intro-title-3 {
        font-size: 1.06667rem
    }

    .sp-intro .intro-title.intro-title-4 {
        font-size: .8rem
    }

    .sp-intro .intro-title.intro-title-5 {
        font-size: .64rem
    }

    .sp-intro .intro-title.intro-title-6 {
        font-size: .53333rem
    }
}

@media (max-width:575px) {
    .sp-intro .intro-title.intro-title-1 {
        font-size: 3rem
    }

    .sp-intro .intro-title.intro-title-2 {
        font-size: 1.5rem
    }

    .sp-intro .intro-title.intro-title-3 {
        font-size: 1rem
    }

    .sp-intro .intro-title.intro-title-4 {
        font-size: .75rem
    }

    .sp-intro .intro-title.intro-title-5 {
        font-size: .6rem
    }

    .sp-intro .intro-title.intro-title-6 {
        font-size: .5rem
    }
}

.sp-intro .intro-regular-text {
    line-height: 1.75;
    text-transform: inherit;
    margin-bottom: 2.5rem
}

.sp-intro .sp-scroll-down-cta {
    position: relative;
    display: inline-block;
    height: 40px;
    width: 30px;
    margin-top: 2rem
}

.sp-intro .sp-scroll-down-cta i {
    font-size: 40px;
    line-height: 1
}

.sp-intro .sp-scroll-down-cta>span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    animation: sp-scrolldown-arrow 2.5s infinite
}

@media (max-width:575px) {
    .sp-intro .sp-scroll-down-cta {
        margin-top: 1rem
    }
}

@keyframes sp-scrolldown-arrow {
    0% {
        transform: translate(0, 0);
        opacity: 0
    }

    50% {
        opacity: 1
    }

    100% {
        transform: translate(0, 30px);
        opacity: 0
    }
}

.sp-intro.sp-intro-image {
    display: flex;
    align-items: center;
    justify-content: center
}

.sp-intro.sp-intro-carousel .slider-item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.sp-intro.sp-intro-carousel.fullscreen .slider-item {
    height: 100vh;
    min-height: 450px
}

.sp-intro.sp-intro-carousel .slick-arrow {
    transition: opacity .25s
}

@media (max-width:991px) {
    .sp-intro.sp-intro-carousel .slick-arrow {
        display: none !important
    }
}

@media (max-width:767px) {
    .sp-intro.sp-intro-carousel .slick-dots {
        display: none !important
    }
}

.sp-intro.sp-intro-video {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.sp-intro.sp-intro-video>.intro-body {
    z-index: 30
}

.sp-intro.sp-intro-video>.video-container,
.sp-intro.sp-intro-video>.video-container:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.sp-intro.sp-intro-video>.video-container:after {
    background: #000;
    opacity: .5;
    content: '';
    z-index: 15
}

.sp-intro.sp-intro-video>.video-container>.video-placeholder {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 10
}

.sp-intro.sp-intro-video>.video-container>.video-controls {
    position: absolute;
    bottom: 25px;
    right: 30px;
    margin: 0 -10px;
    line-height: 1;
    z-index: 20;
    display: none
}

.sp-intro.sp-intro-video>.video-container>.video-controls>a {
    display: inline-block;
    min-width: 46px;
    color: inherit;
    opacity: .5;
    font-size: 28px;
    padding: 5px 10px
}

.sp-intro.sp-intro-video>.video-container>.video-controls>a:hover {
    opacity: 1
}

@media (max-width:767px) {
    .sp-intro.sp-intro-video>.video-container>.video-controls {
        display: none
    }
}

.sp-site-socials {
    margin: 0 -12px;
    font-size: 0;
    color: #a8252d
}

.sp-site-socials>a {
    transition: opacity .25s;
    opacity: 1;
    display: inline-block;
    color: inherit;
    font-size: 23px;
    padding: 0 12px
}

.sp-site-socials>a:hover {
    opacity: .6
}

.sp-site-socials.align_center {
    text-align: center
}

.sp-site-socials.align_left {
    text-align: left
}

.sp-site-socials.align_right {
    text-align: right
}

@media (max-width:767px) {
    .sp-site-socials {
        text-align: center !important
    }
}

.sp-slick-clients .item {
    opacity: .65;
    transition: opacity .25s linear;
    padding: 0 15px;
    text-align: center
}

.sp-slick-clients .item img {
    max-width: 100%;
    height: auto
}

.sp-slick-clients .item:hover {
    opacity: 1
}

@media (max-width:767px) {
    .sp-slick-clients .item {
        opacity: 1
    }
}

.sp-services-container {
    margin-bottom: -50px
}

.sp-services-container .sp-services-block {
    margin-bottom: 50px
}

@media (max-width:767px) {
    .sp-services-container {
        margin-bottom: -30px
    }

    .sp-services-container .sp-services-block {
        margin-bottom: 30px
    }
}

.sp-services-block .icon {
    font-size: 65px;
    margin-bottom: 1rem;
    color: #8e8e8e
}

.sp-services-block .title h4 {
    font-size: 19px;
    margin-bottom: 1rem
}

.sp-services-block .text {
    margin-bottom: 0
}

.sp-team-block {
    margin-top: 10px
}

.sp-team-block .image {
    position: relative;
    margin-bottom: 1rem
}

.sp-team-block .image:before {
    content: '';
    background: rgba(0, 0, 0, .15);
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    transition: background .25s linear
}

.sp-team-block .image img {
    width: 100%;
    height: auto
}

.sp-team-block .image .soc-links {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%
}

.sp-team-block .image .soc-links ul {
    display: inline-block;
    text-align: center;
    padding: 0;
    margin: 0
}

.sp-team-block .image .soc-links ul li {
    float: left;
    opacity: 0;
    visibility: hidden;
    list-style: none;
    margin: 0 10px;
    text-align: center;
    font-size: 25px;
    transition: all .25s linear;
    transform: translate3d(0, 20px, 0);
    transition-delay: 0s
}

.sp-team-block .image .soc-links ul li a {
    color: #fff
}

.sp-team-block .image .soc-links ul li a:hover {
    opacity: .75
}

.sp-team-block .title h4 {
    font-size: 21px;
    margin-bottom: .5rem
}

.sp-team-block .type {
    color: #999
}

.sp-team-block:hover .image ul li {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    visibility: visible;
    transition: opacity .5s, transform .5s
}

.sp-team-block:hover .image ul li:first-child {
    transition-delay: .15s
}

.sp-team-block:hover .image ul li:nth-child(2) {
    transition-delay: .2s
}

.sp-team-block:hover .image ul li:nth-child(3) {
    transition-delay: .25s
}

.sp-team-block:hover .image ul li:nth-child(4) {
    transition-delay: .3s
}

.sp-team-block:hover .image:before {
    background: rgba(0, 0, 0, .5)
}

.sp-animate-numbers.color-light h1 {
    color: #fff
}

.sp-animate-numbers.color-light p {
    color: #fff
}

.sp-animate-numbers h1 {
    font-size: 55px;
    line-height: 90px;
    letter-spacing: 7px;
    margin-bottom: 0
}

.sp-animate-numbers p {
    font-size: 21px;
    margin-bottom: 0
}

.sp-portfolio-block {
    overflow: hidden;
    width: 100%
}

.sp-portfolio-block .sp-portfolio-sorting {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    margin-bottom: 50px
}

.sp-portfolio-block .sp-portfolio-sorting li {
    display: inline-block
}

.sp-portfolio-block .sp-portfolio-sorting li:after {
    content: '/';
    padding: 0 1rem;
    font-size: 15px
}

.sp-portfolio-block .sp-portfolio-sorting li:last-child:after {
    content: none
}

.sp-portfolio-block .sp-portfolio-sorting li a {
    color: #8e8e8e
}

.sp-portfolio-block .sp-portfolio-sorting li.active>a {
    color: #a8252d
}

@media (max-width:575px) {
    .sp-portfolio-block .sp-portfolio-sorting {
        padding-left: .5rem;
        padding-right: .5rem
    }

    .sp-portfolio-block .sp-portfolio-sorting li:after {
        display: none
    }

    .sp-portfolio-block .sp-portfolio-sorting li {
        padding: 0 .5rem
    }
}

.sp-portfolio-block .sp-portfolio-sorting.button-filters {
    margin-bottom: 90px
}

.sp-portfolio-block .sp-portfolio-sorting.button-filters li {
    padding: 0 10px 20px
}

.sp-portfolio-block .sp-portfolio-sorting.button-filters li>a {
    display: inline-block;
    border-radius: 4px;
    background: #eee;
    transition: background .25s linear;
    padding: 6px 18px
}

.sp-portfolio-block .sp-portfolio-sorting.button-filters li:hover>a,
.sp-portfolio-block .sp-portfolio-sorting.button-filters li.active>a {
    background: #a8252d;
    color: #fff
}

.sp-portfolio-block .sp-portfolio-sorting.button-filters li:after {
    content: none
}

@media (max-width:991px) {
    .sp-portfolio-block .sp-portfolio-sorting.button-filters li {
        padding: 0 5px 10px
    }
}

.sp-portfolio-items {
    margin: 0 -15px -30px
}

.sp-portfolio-items:after {
    display: block;
    content: "";
    clear: both
}

.sp-portfolio-items>.sp-portfolio-item-wrap {
    width: 50%;
    float: left;
    padding: 0 15px 30px
}

.sp-portfolio-items>.sp-portfolio-item-wrap.wide-2x>.sp-portfolio-item .entry-excerpt {
    width: 85%
}

.sp-portfolio-items>.sp-portfolio-item-wrap>.sp-portfolio-item {
    height: 340px
}

.sp-portfolio-items>.sp-portfolio-item-wrap.tall-2x>.sp-portfolio-item {
    height: 710px
}

@media (min-width:1920px) {
    .sp-portfolio-items>.sp-portfolio-item-wrap>.sp-portfolio-item {
        height: 440px
    }

    .sp-portfolio-items>.sp-portfolio-item-wrap.tall-2x>.sp-portfolio-item {
        height: 910px
    }
}

.sp-portfolio-items>.sp-portfolio-sizer {
    width: 50%;
    float: left
}

.sp-portfolio-items.small-gutters {
    margin: 0 -2px -4px
}

.sp-portfolio-items.small-gutters>.sp-portfolio-item-wrap {
    padding: 0 2px 4px
}

.sp-portfolio-items.small-gutters>.sp-portfolio-item-wrap.tall-2x>.sp-portfolio-item {
    height: 684px
}

@media (min-width:1920px) {
    .sp-portfolio-items.small-gutters>.sp-portfolio-item-wrap>.sp-portfolio-item {
        height: 440px
    }

    .sp-portfolio-items.small-gutters>.sp-portfolio-item-wrap.tall-2x>.sp-portfolio-item {
        height: 884px
    }
}

.sp-portfolio-items.no-gutters {
    margin: 0
}

.sp-portfolio-items.no-gutters>.sp-portfolio-item-wrap {
    padding: 0
}

.sp-portfolio-items.no-gutters>.sp-portfolio-item-wrap.tall-2x>.sp-portfolio-item {
    height: 680px
}

@media (min-width:1920px) {
    .sp-portfolio-items.no-gutters>.sp-portfolio-item-wrap>.sp-portfolio-item {
        height: 440px
    }

    .sp-portfolio-items.no-gutters>.sp-portfolio-item-wrap.tall-2x>.sp-portfolio-item {
        height: 880px
    }
}

.sp-portfolio-items.layout-2cols>.sp-portfolio-item-wrap,
.sp-portfolio-items.layout-2cols>.sp-portfolio-sizer {
    width: 50%
}

.sp-portfolio-items.layout-2cols>.sp-portfolio-item-wrap.wide-2x,
.sp-portfolio-items.layout-2cols>.sp-portfolio-sizer.wide-2x {
    width: 100%
}

.sp-portfolio-items.layout-3cols>.sp-portfolio-item-wrap,
.sp-portfolio-items.layout-3cols>.sp-portfolio-sizer {
    width: 33.33333%
}

.sp-portfolio-items.layout-3cols>.sp-portfolio-item-wrap.wide-2x,
.sp-portfolio-items.layout-3cols>.sp-portfolio-sizer.wide-2x {
    width: 66.66667%
}

.sp-portfolio-items.layout-4cols>.sp-portfolio-item-wrap,
.sp-portfolio-items.layout-4cols>.sp-portfolio-sizer {
    width: 25%
}

.sp-portfolio-items.layout-4cols>.sp-portfolio-item-wrap.wide-2x,
.sp-portfolio-items.layout-4cols>.sp-portfolio-sizer.wide-2x {
    width: 50%
}

@media (max-width:991px) {

    .sp-portfolio-items>.sp-portfolio-item-wrap,
    .sp-portfolio-items>.sp-portfolio-sizer {
        width: 50% !important
    }

    .sp-portfolio-items>.sp-portfolio-item-wrap>.sp-portfolio-item,
    .sp-portfolio-items>.sp-portfolio-sizer>.sp-portfolio-item {
        height: 340px !important
    }
}

@media (max-width:767px) {

    .sp-portfolio-items>.sp-portfolio-item-wrap,
    .sp-portfolio-items>.sp-portfolio-sizer {
        width: 100% !important
    }

    .sp-portfolio-items>.sp-portfolio-item-wrap>.sp-portfolio-item,
    .sp-portfolio-items>.sp-portfolio-sizer>.sp-portfolio-item {
        height: 340px !important
    }
}

.sp-portfolio-items .sp-portfolio-item {
    overflow: hidden;
    position: relative
}

.sp-portfolio-items .sp-portfolio-item>.portfolio-bg-image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10
}

.sp-portfolio-items .sp-portfolio-item>.portfolio-bg-image>img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    width: 100%;
    height: 100%
}

.sp-portfolio-items .sp-portfolio-item>.link-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;
    z-index: 20
}

.sp-portfolio-items .sp-portfolio-item>.portfolio-hover {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 15;
    background: rgba(0, 0, 0, .2);
    transition: background .25s;
    padding: 50px 50px 0
}

.sp-portfolio-items .sp-portfolio-item>.portfolio-hover>.entry-title {
    color: #fff;
    font-size: 1.4rem;
    margin-bottom: 0;
    text-align: left;
    position: relative;
    transform: translate3d(-20px, 0, 0);
    transition: all .5s;
    opacity: 0
}

.sp-portfolio-items .sp-portfolio-item>.portfolio-hover>.entry-excerpt {
    color: #fff;
    text-align: left;
    position: relative;
    display: block;
    padding: 20px 0;
    width: 70%;
    transform: translate3d(-20px, 0, 0);
    transition: all .65s;
    opacity: 0
}

.sp-portfolio-items .sp-portfolio-item>.portfolio-hover>.link-icon {
    color: #fff;
    font-size: 3.3rem;
    text-align: left;
    position: absolute;
    bottom: 30px;
    left: 50px;
    line-height: 1;
    transform: translate3d(-20px, 0, 0);
    transition: all .75s;
    opacity: 0
}

.sp-portfolio-items .sp-portfolio-item:hover .portfolio-hover {
    background: rgba(0, 0, 0, .65)
}

.sp-portfolio-items .sp-portfolio-item:hover .portfolio-hover>.entry-title {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition-delay: 0s
}

.sp-portfolio-items .sp-portfolio-item:hover .portfolio-hover>.entry-excerpt {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition-delay: .2s
}

.sp-portfolio-items .sp-portfolio-item:hover .portfolio-hover>.link-icon {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition-delay: .4s
}

.sp-portfolio-list.unlist {
    margin-bottom: 3rem
}

.sp-portfolio-list.unlist li {
    display: inline-block;
    margin: 0 20px
}

.sp-portfolio-list.unlist li:last-child {
    margin: 0 20px
}

.sp-portfolio-list ul {
    padding: 0;
    margin: 0
}

.sp-portfolio-list ul li {
    list-style: none;
    line-height: 1;
    margin-bottom: 1rem
}

.sp-portfolio-list ul li:last-child {
    margin: 0
}

.sp-portfolio-list ul li i {
    font-size: 30px;
    padding-right: 8px;
    position: relative;
    top: 5px
}

.sp-portfolio-bar-left a,
.sp-portfolio-bar-center a,
.sp-portfolio-bar-right a {
    color: #8e8e8e;
    transition: color .25s
}

.sp-portfolio-bar-left a:hover,
.sp-portfolio-bar-center a:hover,
.sp-portfolio-bar-right a:hover {
    color: #a8252d
}

.sp-portfolio-bar-left a:before,
.sp-portfolio-bar-center a:before,
.sp-portfolio-bar-right a:before,
.sp-portfolio-bar-left a:after,
.sp-portfolio-bar-center a:after,
.sp-portfolio-bar-right a:after {
    font-family: "sp-theme-icons";
    font-size: 21px;
    color: currentColor;
    content: none;
    top: 2px;
    position: relative
}

.sp-portfolio-bar-left a:before,
.sp-portfolio-bar-center a:before,
.sp-portfolio-bar-right a:before {
    margin-right: 10px
}

.sp-portfolio-bar-left a:after,
.sp-portfolio-bar-center a:after,
.sp-portfolio-bar-right a:after {
    margin-left: 10px
}

.sp-portfolio-bar-left.disabled>a,
.sp-portfolio-bar-center.disabled>a,
.sp-portfolio-bar-right.disabled>a {
    color: #636c72;
    cursor: default;
    pointer-events: none
}

.sp-portfolio-bar-left {
    text-align: left
}

.sp-portfolio-bar-left a:before {
    content: '\f3d2'
}

.sp-portfolio-bar-right {
    text-align: right
}

.sp-portfolio-bar-right a:after {
    content: '\f3d3'
}

.sp-portfolio-bar-center {
    margin-top: 5px;
    text-align: center
}

.sp-portfolio-bar-center>a {
    line-height: 1;
    font-size: 30px
}

#sp-single-portfolio .sp-single-heading {
    position: relative
}

#sp-single-portfolio .sp-single-heading h1 {
    position: absolute;
    top: 0;
    line-height: 1;
    font-weight: 700
}

#sp-single-portfolio .sp-single-heading h1:after {
    font-family: "sp-theme-icons";
    font-size: 50px;
    color: #8e8e8e;
    content: '\f3d6';
    padding-left: 30px;
    line-height: 1;
    position: relative;
    top: 3px
}

#sp-single-portfolio h3 {
    margin-top: 5px
}

#sp-single-portfolio .sp-single-portfolio-soc {
    margin-top: 2rem
}

#sp-single-portfolio .sp-single-portfolio-soc ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    font-size: 0;
    max-width: none
}

#sp-single-portfolio .sp-single-portfolio-soc ul li {
    display: inline
}

#sp-single-portfolio .sp-single-portfolio-soc ul li a {
    display: inline-block;
    font-size: 18px;
    color: #8e8e8e;
    padding: 5px 14px
}

#sp-single-portfolio .sp-single-portfolio-soc ul li a:hover {
    color: #a8252d
}

.sp-circle {
    position: relative;
    display: inline-block;
    margin: 0 15px;
    vertical-align: top;
    text-align: center;
    width: 125px;
    padding-top: 42px;
    height: 125px
}

.sp-circle canvas {
    display: block;
    position: absolute;
    left: 0;
    top: 0
}

.sp-circle span {
    font-weight: 700;
    font-size: 17px
}

.sp-circle span:after {
    content: '%';
    margin-left: .1em
}

@media (max-width:575px) {
    .sp-circle {
        margin-top: 15px;
        margin-bottom: 0
    }
}

@media (max-width:991px) {
    .sp-circle {
        margin-bottom: 15px
    }
}

.sp-circle-text {
    margin-top: -5px;
    font-size: 14px
}

@media (max-width:991px) {
    #sp-magic .text-right {
        text-align: center !important
    }
}

.sp-slick-testimonials .slick-dots {
    margin-top: 15px
}

.sp-testimonials-block {
    text-align: center
}

.sp-testimonials-block .text {
    margin-bottom: 0
}

.sp-testimonials-block .photo img {
    border-radius: 50%;
    width: 80px;
    height: 80px;
    margin-top: 2rem
}

.sp-testimonials-block .name {
    margin-bottom: 1rem;
    margin-top: 2rem
}

.sp-testimonials-block .name:empty {
    display: none
}

.sp-contacts-list ul {
    padding: 0;
    margin: 0
}

.sp-contacts-list ul li {
    list-style: none;
    margin-bottom: .45rem
}

.sp-contacts-list ul li i {
    font-size: 30px;
    padding-right: 8px;
    position: relative;
    top: 5px
}

.sp-quote-widget .sp-signature {
    width: 100%;
    font-size: 30px;
    display: block;
    margin-top: 20px;
    font-family: 'Shadows Into Light', cursive;
    font-style: italic;
    letter-spacing: 2px;
    -webkit-transform: rotate(-3deg);
    transform: rotate(-3deg)
}

.sp-quote-widget .sp-quote {
    font-size: 19px
}

.sp-quote-widget .sp-quote>p:first-of-type:before,
.sp-quote-widget .sp-quote>p:last-of-type:after {
    font-family: "sp-theme-icons";
    font-size: 23px;
    display: inline-block
}

.sp-quote-widget .sp-quote>p:first-of-type:before {
    content: '\e80e';
    margin-right: 10px
}

.sp-quote-widget .sp-quote>p:last-of-type {
    margin-bottom: 0
}

.sp-quote-widget .sp-quote>p:last-of-type:after {
    content: '\e80f';
    margin-left: 10px;
    vertical-align: top
}

@media (max-width:767px) {
    .sp-quote-widget .sp-quote {
        font-size: 16px
    }

    .sp-quote-widget .sp-quote>p:first-of-type:before,
    .sp-quote-widget>p:last-of-type:after {
        font-size: 20px
    }

    .sp-quote-widget .sp-signature {
        font-size: 25px
    }
}

.sp-progress-bar {
    margin: 1rem 0 2rem
}

.sp-progress-bar .title {
    display: inline-block;
    width: 100%;
    margin-bottom: .5rem
}

.sp-progress-bar .title span {
    float: right;
    font-size: 15px;
    position: relative;
    top: 2px
}

.sp-progress-bar .progress-bar {
    transition: none
}

.pricing_tables_wrap {
    background: #fff;
    text-align: center;
    border: 1px solid #eee;
    position: relative;
    overflow: hidden;
    transition: box-shadow .5s ease
}

.pricing_tables_wrap>.pricing_tables_name {
    text-align: center;
    font-size: 29px;
    color: #a8252d;
    padding: 1rem 0;
    font-weight: 600;
    border-bottom: 1px solid #eee
}

.pricing_tables_wrap>.pricing_tables_price {
    text-align: center;
    font-size: 65px;
    padding: 1rem 0;
    border-bottom: 1px solid #eee;
    margin-bottom: 0
}

.pricing_tables_wrap>.pricing_tables_price span {
    color: #888;
    font-size: 27px;
    position: relative;
    left: -7px;
    top: -29px
}

.pricing_tables_wrap>.pricing_tables_price i {
    color: #888;
    font-size: 14px;
    position: relative;
    top: 0;
    font-weight: 300
}

.pricing_tables_wrap>.pricing_tables_desc {
    padding: 20px 30px;
    border-bottom: 1px solid #eee;
    text-align: center
}

.pricing_tables_wrap>.pricing_tables_desc ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.pricing_tables_wrap>.pricing_tables_desc ul li {
    display: block;
    padding: 10px 0;
    color: #888
}

.pricing_tables_wrap>.pricing_tables_buttons {
    text-align: center;
    padding: 20px 30px;
    margin: 0 -10px
}

.pricing_tables_wrap>.pricing_tables_buttons>a,
.pricing_tables_wrap>.pricing_tables_buttons>.btn,
.pricing_tables_wrap>.pricing_tables_buttons>.btn-group {
    vertical-align: middle;
    margin: 10px
}

.pricing_tables_wrap.featured {
    box-shadow: 0 15px 50px -5px rgba(0, 0, 0, .25)
}

.pricing_tables_wrap.featured>.pricing_tables_name {
    color: #8e8e8e
}

.pricing_tables_wrap.featured>.pricing_tables_price {
    color: #a8252d
}

#sp-pricing-tables-faq h4 {
    margin-bottom: 1.5rem
}

#sp-pricing-tables-faq p {
    margin-bottom: 4rem
}

#sp-pricing-tables-faq p:last-child {
    margin-bottom: 0
}

.sp-latest-news-widget:after {
    display: block;
    content: "";
    clear: both
}

.sp-latest-news-widget>.post-item-wrapper {
    float: left;
    width: 100%
}

.sp-latest-news-widget>.post-item-wrapper>.sp-blog-block {
    margin-bottom: 0
}

.sp-latest-news-widget.layout-4cols>.post-item-wrapper {
    width: 25%
}

.sp-latest-news-widget.layout-3cols>.post-item-wrapper {
    width: 33.33333%
}

.sp-latest-news-widget.layout-2cols>.post-item-wrapper {
    width: 50%
}

.sp-latest-news-widget.regular-gutters {
    margin: 0 -15px -50px
}

.sp-latest-news-widget.regular-gutters>.post-item-wrapper {
    padding: 0 15px 50px
}

.sp-latest-news-widget.small-gutters {
    margin: 0 -2px -10px
}

.sp-latest-news-widget.small-gutters>.post-item-wrapper {
    padding: 0 2px 10px
}

.sp-latest-news-widget.no-gutters {
    margin: 0
}

.sp-latest-news-widget.no-gutters>.post-item-wrapper {
    padding: 0
}

@media (max-width:991px) {
    .sp-latest-news-widget>.post-item-wrapper {
        width: 50% !important
    }
}

@media (max-width:767px) {
    .sp-latest-news-widget>.post-item-wrapper {
        width: 100% !important
    }
}

.card.sp-faq-card {
    border: 1px solid #eee;
    border-radius: 0;
    text-align: left
}

.card.sp-faq-card+.sp-faq-card {
    margin-top: 15px
}

.card.sp-faq-card>.card-header {
    padding: .5rem 1.5rem;
    background-color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    border-bottom: none
}

.card.sp-faq-card>.card-header>.card-title {
    font-size: 1.1rem;
    color: #8e8e8e;
    flex: 1 1 auto;
    min-width: 0;
    transition: color .25s;
    margin: 10px 0
}

.card.sp-faq-card>.card-header>.toggle-icon {
    flex: 0 0 auto;
    margin-left: 20px;
    color: #a8252d;
    line-height: 1;
    font-size: 40px;
    will-change: transform;
    transition: transform .25s
}

.card.sp-faq-card>.card-header:hover>.card-title {
    color: #a8252d
}

.card.sp-faq-card>.card-contents>.card-contents-inner {
    border-top: 1px solid #eee;
    padding: 1rem 1.5rem
}

.card.sp-faq-card>.card-contents p {
    margin-bottom: 1rem
}

.card.sp-faq-card>.card-contents p:last-child {
    margin-bottom: 0
}

.card.sp-faq-card.card-open>.card-header>.card-title {
    color: #a8252d
}

.card.sp-faq-card.card-open>.card-header>.toggle-icon {
    transform: rotate(45deg)
}

.sp-faq-articles.border-top {
    border-top: 1px solid #ddd;
    padding-top: 2rem
}

.sp-faq-articles.border-bottom {
    border-bottom: 1px solid #ddd;
    padding-bottom: 2rem
}

.sp-faq-articles ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-faq-articles ul li {
    margin-bottom: 15px
}

.sp-faq-articles ul li:last-child {
    margin-bottom: 0
}

.sp-faq-articles ul li:before {
    content: '\f3d3';
    font-family: "sp-theme-icons";
    font-size: 18px;
    padding-right: 10px;
    color: #a8252d
}

.sp-faq-articles ul li a {
    color: #8e8e8e
}

.sp-faq-articles ul li a:hover {
    color: #a8252d
}

.sp-clients-grid .sp-clients-block {
    background: #fff;
    padding: 2rem;
    margin-bottom: 30px;
    transition: box-shadow .5s;
    will-change: box-shadow
}

.sp-clients-grid .sp-clients-block>img {
    padding-bottom: 1.5rem;
    display: inline-block;
    max-width: 100%;
    opacity: .85;
    transition: opacity .25s;
    will-change: opacity
}

.sp-clients-grid .sp-clients-block:hover {
    box-shadow: 0 0 25px 1px rgba(0, 0, 0, .075)
}

.sp-clients-grid .sp-clients-block:hover>img {
    opacity: 1
}

.sp-clients-grid .sp-clients-block>.client-title {
    margin-bottom: 1.5rem
}

.sp-clients-grid .sp-clients-block .btn {
    transition-property: background, border
}

.sp-subscribe-form {
    position: relative;
    max-width: 570px;
    padding: 0 15px;
    margin: 0 auto;
    text-align: center
}

.sp-subscribe-form>.form-inner-wrap {
    position: relative;
    z-index: 50;
    transition: opacity .25s, transform .25s
}

.sp-subscribe-form>.form-inner-wrap img {
    max-width: 130px;
    opacity: .2;
    margin-top: 2rem
}

.sp-subscribe-form>.form-inner-wrap p.appear-message {
    margin-top: 1rem;
    margin-bottom: 0
}

.sp-subscribe-form>.form-inner-wrap .input-group {
    width: 350px;
    max-width: 100%;
    margin: auto
}

.sp-subscribe-form>.form-output {
    position: absolute;
    top: 50%;
    left: 0;
    padding: 0 15px;
    width: 100%;
    min-height: 118px;
    z-index: 100;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-50%) scale(.8);
    background: inherit;
    transition: all .25s
}

.sp-subscribe-form>.form-output:before {
    font-family: "sp-theme-icons";
    font-size: 70px;
    line-height: 70px;
    display: block;
    margin: 0 auto 20px;
    animation-duration: .5s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards
}

.sp-subscribe-form.mc-loading>.form-inner-wrap,
.sp-subscribe-form.mc-invalid>.form-inner-wrap,
.sp-subscribe-form.mc-valid>.form-inner-wrap {
    opacity: 0;
    transform: scale(.8)
}

.sp-subscribe-form.mc-loading>.form-output,
.sp-subscribe-form.mc-invalid>.form-output,
.sp-subscribe-form.mc-valid>.form-output {
    visibility: visible;
    opacity: 1;
    transform: translateY(-50%) scale(1)
}

.sp-subscribe-form.mc-loading>.form-output:before,
.sp-subscribe-form.mc-invalid>.form-output:before,
.sp-subscribe-form.mc-valid>.form-output:before {
    animation-name: sp-mc-form-output-icon
}

.sp-subscribe-form>.form-output.valid:before {
    content: '\f3fd';
    color: #5cb85c
}

.sp-subscribe-form>.form-output.error:before {
    content: '\f404';
    color: #d9534f
}

.sp-subscribe-form.mc-loading>.form-output:before {
    content: '\f45a';
    color: inherit;
    font-size: 55px;
    animation: sp-mc-loading-icon 1s linear infinite
}

@keyframes sp-mc-loading-icon {
    from {
        transform: rotate(-360deg)
    }

    to {
        transform: rotate(0deg)
    }
}

@keyframes sp-mc-form-output-icon {
    from {
        transform: rotate(-360deg) scale(.7);
        opacity: .3
    }

    to {
        transform: rotate(0deg) scale(1);
        opacity: 1
    }
}

.sp-countdown-block {
    text-transform: uppercase;
    letter-spacing: 2px
}

.sp-countdown-block.color-light {
    color: #fff
}

.sp-countdown-block.color-dark {
    color: #8e8e8e
}

.sp-countdown-block .remaining-timer {
    display: inline-block;
    width: 105px;
    margin: 0 20px;
    text-align: center
}

.sp-countdown-block .remaining-timer>.count {
    position: relative;
    color: inherit;
    font-size: 5rem;
    font-weight: 300;
    font-family: "Montserrat", "Source Sans Pro", Arial, "Helvetica Neue", sans-serif;
    line-height: 1;
    padding-bottom: 1rem;
    margin-bottom: 1rem
}

.sp-countdown-block .remaining-timer>.count:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    background: currentColor;
    opacity: .5
}

#sp-blog-inner {
    display: flex;
    flex-wrap: nowrap
}

#sp-blog-inner>.content-column {
    flex: 1 1 auto;
    min-width: 0;
    order: 2
}

#sp-blog-inner>.sidebar-column {
    flex: 0 0 360px;
    min-width: 0;
    margin-bottom: -50px;
    order: 3
}

#sp-blog-inner>.sidebar-column.left {
    padding-right: 60px;
    order: 1
}

#sp-blog-inner>.sidebar-column.right {
    padding-left: 60px
}

#sp-blog-inner>.sidebar-column:empty {
    display: none
}

@media (max-width:767px) {
    #sp-blog-inner {
        flex-wrap: wrap
    }

    #sp-blog-inner>.sidebar-column,
    #sp-blog-inner>.content-column {
        flex-basis: 100%
    }

    #sp-blog-inner>.content-column {
        order: 1
    }

    #sp-blog-inner>.sidebar-column {
        margin-top: 80px;
        order: 2
    }

    #sp-blog-inner>.sidebar-column.left {
        padding-right: 0
    }

    #sp-blog-inner>.sidebar-column.right {
        padding-left: 0
    }
}

.sp-blog-block:after {
    display: block;
    content: "";
    clear: both
}

.sp-blog-block p {
    margin-bottom: 1.5rem
}

.sp-blog-block p:last-child {
    margin-bottom: 0
}

.sp-blog-block .entry-excerpt {
    margin-bottom: 1.5rem
}

.sp-blog-block .entry-excerpt:after,
.sp-blog-block .entry-content:after {
    display: block;
    content: "";
    clear: both
}

.sp-blog-block .gallery {
    margin-bottom: 1.5rem;
    margin-bottom: calc(1.5rem - 5px)
}

.sp-blog-block .gallery:last-child {
    margin-bottom: 0
}

.sp-blog-block .sp-blog-image {
    position: relative;
    margin-bottom: 1.5rem;
    opacity: 1;
    transition: opacity .2s linear
}

.sp-blog-block .sp-blog-image a {
    width: 100%;
    position: relative;
    display: block
}

.sp-blog-block .sp-blog-image img {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;"
}

.sp-blog-block .sp-blog-image:hover {
    opacity: .7
}

.sp-blog-block .entry-title {
    margin-bottom: 1rem;
    font-size: 1.5rem
}

.sp-blog-block .entry-title a {
    color: #8e8e8e
}

.sp-blog-block .entry-title a:hover {
    color: #a8252d
}

.sp-blog-block .sp-blog-meta {
    margin-bottom: 1rem;
    width: 100%
}

.sp-blog-block .sp-blog-meta ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    display: block;
    font-size: 0
}

.sp-blog-block .sp-blog-meta ul li {
    display: inline;
    font-size: 14px;
    text-transform: capitalize
}

.sp-blog-block .sp-blog-meta ul li:after {
    display: inline-block;
    content: '/';
    padding: 0 10px;
    color: #999
}

.sp-blog-block .sp-blog-meta ul li:last-child:after {
    content: none
}

.sp-blog-block .sp-blog-meta ul li a,
.sp-blog-block .sp-blog-meta ul li {
    color: #999
}

.sp-blog-block .sp-blog-meta ul li:empty {
    display: none
}

.sp-blog-block.chess {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    background-color: #f7f7f7;
    margin-bottom: 60px
}

.sp-blog-block.chess .meta-column {
    padding: 50px;
    flex: 1 1 auto;
    min-width: 0
}

.sp-blog-block.chess .meta-column h4 {
    font-size: 1.5rem
}

.sp-blog-block.chess .image-column {
    flex: 0 0 50%;
    min-width: 0;
    position: relative;
    overflow: hidden;
    margin-bottom: 0;
    min-height: 400px
}

.sp-blog-block.chess:nth-child(even) .meta-column {
    order: 1
}

.sp-blog-block.chess:nth-child(even) .image-column {
    order: 2
}

.sp-blog-block.chess:nth-child(even).sticky .sp-blog-image:after {
    right: 30px;
    left: auto
}

.sp-blog-block.chess:nth-child(even).sticky .sp-blog-image:before {
    right: 30px;
    left: auto
}

.sp-blog-block.chess.no-thumbnail.sticky .entry-title {
    padding-right: 45px
}

.sp-blog-block.chess.no-thumbnail.sticky:after {
    right: 30px;
    left: auto
}

.sp-blog-block.chess.no-thumbnail.sticky:before {
    right: 30px;
    left: auto
}

@media (max-width:991px) {
    .sp-blog-block.chess {
        flex-wrap: wrap
    }

    .sp-blog-block.chess .meta-column,
    .sp-blog-block.chess .image-column {
        flex-basis: 100%;
        order: initial
    }

    .sp-blog-block.chess.no-thumbnail.sticky .entry-title {
        padding-right: 0
    }

    .sp-blog-block.chess.no-thumbnail.sticky:before,
    .sp-blog-block.chess.no-thumbnail.sticky:after {
        display: none
    }
}

.sp-blog-block.classic {
    margin-bottom: 80px;
    display: flex;
    flex-wrap: nowrap
}

.sp-blog-block.classic .sp-blog-meta-classic {
    flex: 0 0 90px;
    padding-right: 30px;
    text-align: right
}

.sp-blog-block.classic .sp-blog-meta-classic .date {
    font-family: "Montserrat", "Source Sans Pro", Arial, "Helvetica Neue", sans-serif;
    font-weight: 500;
    line-height: 1.5;
    font-size: 1.4rem;
    margin-bottom: .5rem
}

.sp-blog-block.classic .sp-blog-meta-classic .year {
    color: #999
}

.sp-blog-block.classic .sp-blog-image img {
    -o-object-fit: none;
    object-fit: none;
    font-family: inherit;
    position: static;
    height: auto;
    width: 100%
}

.sp-blog-block.classic.no-thumbnail.sticky .entry-title {
    padding-right: 50px
}

.sp-blog-block.classic.no-thumbnail.sticky:after {
    right: 0;
    left: auto
}

.sp-blog-block.classic.no-thumbnail.sticky:before {
    right: 0;
    left: auto
}

@media (max-width:991px) {
    .sp-blog-block.classic.no-thumbnail.sticky .entry-title {
        padding-right: 0
    }

    .sp-blog-block.classic.no-thumbnail.sticky:before,
    .sp-blog-block.classic.no-thumbnail.sticky:after {
        display: none
    }
}

.sp-blog-block.medium {
    margin-bottom: 80px;
    display: flex;
    flex-wrap: nowrap
}

.sp-blog-block.medium .sp-blog-image {
    flex: 0 0 360px;
    margin-right: 30px;
    margin-bottom: 0;
    min-height: 240px
}

.sp-blog-block.medium .sp-blog-block-medium h3 {
    font-size: 1.3rem
}

.sp-blog-block.medium.no-thumbnail.sticky {
    padding: 50px;
    background: #f7f7f7
}

.sp-blog-block.medium.no-thumbnail.sticky:after,
.sp-blog-block.medium.no-thumbnail.sticky:before {
    display: none
}

@media (max-width:1199px) {
    .sp-blog-block.medium {
        flex-wrap: wrap
    }

    .sp-blog-block.medium .sp-blog-image,
    .sp-blog-block.medium .sp-blog-block-medium {
        flex-basis: 100%
    }

    .sp-blog-block.medium .sp-blog-image {
        padding-right: 0
    }

    .sp-blog-block.medium .sp-blog-image img {
        -o-object-fit: none;
        object-fit: none;
        font-family: inherit;
        position: static;
        height: auto
    }

    .sp-blog-block.medium .sp-blog-block-medium {
        margin-top: 1rem
    }
}

.sp-blog-block.masonry {
    margin-bottom: 55px
}

.sp-blog-block.masonry .sp-blog-image img {
    -o-object-fit: none;
    object-fit: none;
    font-family: inherit;
    position: static;
    width: 100%;
    height: auto
}

.sp-blog-block.masonry.no-thumbnail.sticky {
    padding: 50px;
    background: #f7f7f7
}

.sp-blog-block.masonry.no-thumbnail.sticky:after,
.sp-blog-block.masonry.no-thumbnail.sticky:before {
    display: none
}

.sp-blog-block.sticky .sp-blog-image,
.sp-blog-block.no-thumbnail.sticky {
    position: relative
}

.sp-blog-block.sticky .sp-blog-image:after,
.sp-blog-block.no-thumbnail.sticky:after {
    width: 32px;
    height: 48px;
    content: '';
    position: absolute;
    left: 30px;
    top: 0;
    border-bottom: 16px solid transparent;
    border-left: 16px solid #a8252d;
    border-right: 16px solid #a8252d
}

.sp-blog-block.sticky .sp-blog-image:before,
.sp-blog-block.no-thumbnail.sticky:before {
    content: 'S';
    font-weight: 700;
    font-size: 19px;
    color: #fff;
    left: 30px;
    position: absolute;
    z-index: 9;
    width: 32px;
    text-align: center;
    top: 0
}

#sp-blog-inner .sp-loop-noposts {
    width: 100%;
    text-align: center
}

#sp-blog-inner .sp-loop-noposts form.search-form {
    position: relative;
    width: 400px;
    margin: auto
}

#sp-blog-inner .sp-loop-noposts form.search-form label {
    width: 100%;
    margin-bottom: 0
}

#sp-blog-inner .sp-loop-noposts form.search-form .screen-reader-text {
    display: none
}

#sp-blog-inner .sp-loop-noposts form.search-form input[name="s"] {
    width: 100%;
    padding: 6px 85px 6px 15px;
    border: 1px solid #eee;
    border-radius: 30px;
    outline: none;
    transition: border .25s linear
}

#sp-blog-inner .sp-loop-noposts form.search-form input[name="s"]:focus {
    border: 1px solid #ddd;
    transition: border .25s linear
}

#sp-blog-inner .sp-loop-noposts form.search-form input[type=submit] {
    position: relative;
    float: right;
    margin-top: -42px;
    background: #a8252d;
    border: none;
    padding: 7px 15px;
    color: #fff;
    border-radius: 30px;
    z-index: 6;
    outline: none
}

#sp-blog-inner .sp-loop-noposts form.search-form input[type=submit]:hover {
    cursor: pointer
}

.sp-blog-block .sp-blog-quote {
    display: flex;
    border: 4px solid #eee;
    padding: 30px;
    margin-bottom: 2rem
}

.sp-blog-block .sp-blog-quote>.quote-icon {
    flex: 0 0 auto;
    font-size: 73px;
    color: #a8252d;
    padding-right: 30px;
    line-height: 1;
    min-width: 0
}

.sp-blog-block .sp-blog-quote>.quote-inner {
    flex: 1 1 auto;
    min-width: 0
}

.sp-blog-block .sp-blog-quote>.quote-inner p {
    font-size: 1.25rem;
    font-style: italic;
    font-weight: 600
}

.sp-blog-block .sp-blog-quote>.quote-inner .blockquote-footer {
    font-size: 100%
}

.sp-blog-block .sp-blog-quote>.quote-inner .blockquote-footer cite {
    font-style: normal
}

.sp-blog-block .sp-blog-quote>.quote-inner .blockquote-footer:empty {
    display: none
}

.sp-blog-block .sp-blog-quote>.quote-inner p:last-child {
    margin-bottom: 0
}

@media (max-width:991px) {
    .sp-blog-block .sp-blog-quote {
        flex-wrap: wrap;
        text-align: center
    }

    .sp-blog-block .sp-blog-quote>.quote-icon {
        padding: 0 0 1rem
    }

    .sp-blog-block .sp-blog-quote>.quote-icon,
    .sp-blog-block .sp-blog-quote>.quote-inner {
        flex: 0 0 100%
    }

    .sp-blog-block .sp-blog-quote>.quote-inner p {
        font-size: 1rem
    }
}

.sp-blog-block .sp-blog-link {
    display: flex;
    border: 4px solid #eee;
    padding: 30px;
    margin-bottom: 2rem;
    width: 100%;
    white-space: nowrap;
    align-items: center
}

.sp-blog-block .sp-blog-link:before {
    flex: 0 0 auto;
    content: '\f3d9';
    font-family: "sp-theme-icons";
    font-size: 70px;
    color: #a8252d;
    margin-right: 30px;
    padding-right: 30px;
    line-height: 1;
    border-right: 1px solid #eee
}

.sp-blog-block .sp-blog-link a {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 2rem;
    color: #8e8e8e;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

@media (max-width:991px) {
    .sp-blog-block .sp-blog-link {
        padding: 20px
    }

    .sp-blog-block .sp-blog-link:before {
        font-size: 50px;
        padding-right: 15px;
        margin-right: 15px
    }

    .sp-blog-block .sp-blog-link a {
        font-size: 1rem
    }
}

.sp-blog-block .sp-blog-image .caption {
    display: block;
    margin-top: 5px
}

.sp-blog-block .sp-single-embed {
    margin-bottom: 2rem
}

.sp-blog-image.gallery-format {
    overflow: hidden
}

.sp-blog-block .sp-slick-post-gallery {
    max-width: none !important;
    width: auto;
    margin: 0 -15px
}

.sp-blog-block .sp-slick-post-gallery .slick-slide {
    padding: 0 15px
}

.sp-blog-block .sp-slick-post-gallery .slick-slide>.caption {
    margin-top: 5px;
    display: block;
    opacity: 0;
    transition: opacity .25s
}

.sp-blog-block .sp-slick-post-gallery .slick-slide>.caption:empty {
    display: none
}

.sp-blog-block .sp-slick-post-gallery .slick-slide.slick-animated>.caption {
    opacity: 1
}

.sp-blog-block .sp-slick-post-gallery:hover .slick-arrow.circle.slick-next {
    right: 30px;
    opacity: 1
}

.sp-blog-block .sp-slick-post-gallery:hover .slick-arrow.circle.slick-prev {
    left: 30px;
    opacity: 1
}

.sp-sidebar {
    padding-bottom: 50px;
    z-index: 10
}

.sp-sidebar a {
    color: #8e8e8e
}

.sp-sidebar a:hover {
    color: #a8252d
}

.sp-sidebar .sp-widget-block {
    margin-bottom: 55px;
    width: 100%
}

.sp-sidebar .sp-widget-block:after {
    display: block;
    content: "";
    clear: both
}

.sp-sidebar .sp-widget-block:last-child {
    margin-bottom: 0
}

.sp-sidebar .sp-widget-block>.widget-title {
    margin-bottom: 1.5rem;
    font-size: 1.5rem
}

.sp-sidebar ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-sidebar ul li {
    padding-bottom: 15px;
    text-align: left !important
}

.sp-sidebar ul li>ul.children li {
    padding: 15px 0 0 15px
}

.sp-sidebar ul li span.cat {
    float: right;
    background: #f5f5f5;
    width: 30px;
    font-size: 14px;
    padding: 1px 0;
    text-align: center
}

.sp-sidebar select {
    width: 100%;
    border: 1px solid #eee;
    background: #fff;
    height: 36px
}

.sp-sidebar table {
    width: 100%;
    margin: 0
}

.sp-sidebar table caption {
    text-align: right;
    font-size: 13px;
    padding-top: 10px
}

.sp-sidebar table tbody td {
    text-align: center;
    height: 30px;
    padding: 7px
}

.sp-sidebar table tbody .pad {
    background: 0 0
}

.sp-sidebar table thead th {
    background: #f2f2f2;
    text-align: center;
    font-weight: 600;
    color: #000;
    padding: 7px
}

.sp-sidebar table #next {
    padding-right: 24px;
    text-align: right
}

.sp-sidebar table tfoot td,
.sp-sidebar table tfoot th {
    padding: 7px;
    border: none
}

.sp-sidebar form.search-form {
    position: relative
}

.sp-sidebar form.search-form label {
    width: 100%;
    margin-bottom: 0
}

.sp-sidebar form.search-form .screen-reader-text {
    display: none
}

.sp-sidebar form.search-form input[name="s"] {
    width: 100%;
    padding: 6px 85px 6px 15px;
    border: 1px solid #eee;
    border-radius: 30px;
    outline: none;
    transition: border .25s linear
}

.sp-sidebar form.search-form input[name="s"]:focus {
    border: 1px solid #ddd;
    transition: border .25s linear
}

.sp-sidebar form.search-form input[type=submit] {
    position: relative;
    float: right;
    margin-top: -42px;
    background: #a8252d;
    border: none;
    padding: 7px 15px;
    color: #fff;
    border-radius: 30px;
    z-index: 6;
    outline: none
}

.sp-sidebar form.search-form input[type=submit]:hover {
    cursor: pointer
}

.sp-sidebar .sp-popular-posts {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-sidebar .sp-popular-posts>li {
    list-style: none;
    margin-bottom: 20px;
    transition: opacity .2s linear
}

.sp-sidebar .sp-popular-posts>li:hover {
    opacity: .7
}

.sp-sidebar .sp-popular-posts>li:last-child {
    margin-bottom: 0
}

.sp-sidebar .sp-popular-posts>li>.post-link {
    display: flex
}

.sp-sidebar .sp-popular-posts>li>.post-link>.image {
    flex: 0 0 100px
}

.sp-sidebar .sp-popular-posts>li>.post-link>.content {
    flex: 1
}

.sp-sidebar .sp-popular-posts>li .image {
    padding-right: 15px;
    min-width: 0
}

.sp-sidebar .sp-popular-posts>li .image>img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    width: 100%;
    height: 65px
}

.sp-sidebar .sp-popular-posts>li .content {
    text-align: left !important
}

.sp-sidebar .sp-popular-posts>li .content h5 {
    font-size: .92rem;
    margin-bottom: 0;
    line-height: 1.3
}

.sp-sidebar .sp-popular-posts>li .content span {
    color: #999;
    font-size: 14px
}

.sp-sidebar .twitter-block ul {
    padding-left: 50px;
    margin: 0
}

.sp-sidebar .twitter-block ul li {
    list-style: none;
    padding-bottom: 1.3rem
}

.sp-sidebar .twitter-block ul li a {
    color: #a8252d
}

.sp-sidebar .twitter-block ul li:last-child {
    padding-bottom: 0
}

.sp-sidebar .twitter-block ul li:before {
    content: '\f242';
    font-family: "sp-theme-icons";
    color: #a8252d;
    font-size: 30px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    top: 5px;
    display: inline-block;
    position: relative;
    margin-right: 22px;
    line-height: 1;
    height: 100%;
    margin-left: -50px
}

.sp-sidebar ul.instagram-pics {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-sidebar ul.instagram-pics li {
    float: left;
    width: 25%;
    padding: 5px
}

.sp-sidebar ul.instagram-pics li img {
    width: 100%;
    height: auto
}

.sp-sidebar ul.instagram-pics a {
    display: inline-block;
    transition-property: opacity
}

.sp-sidebar ul.instagram-pics a:hover {
    opacity: .6
}

@media (max-width:767px) {
    .sp-sidebar ul.instagram-pics li {
        width: 50%
    }
}

.sp-sidebar .widget_nav_menu ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-sidebar .widget_nav_menu ul li {
    padding-bottom: 15px;
    text-align: left !important
}

.sp-sidebar .widget_nav_menu ul li>ul.sub-menu li {
    padding: 15px 0 0 15px
}

.sp-intro.single-post {
    text-align: center
}

.sp-intro.single-post .intro-title {
    line-height: 1.3;
    font-size: 3.5rem;
    text-transform: capitalize;
    margin-bottom: 1.5rem
}

@media (max-width:991px) {
    .sp-intro.single-post .intro-title {
        font-size: 2.5rem
    }
}

@media (max-width:767px) {
    .sp-intro.single-post .intro-title {
        font-size: 2rem
    }
}

@media (max-width:575px) {
    .sp-intro.single-post .intro-title {
        font-size: 1.8rem
    }
}

.sp-intro.single-post .sp-single-meta {
    margin-bottom: 0;
    width: 100%;
    font-size: 0
}

.sp-intro.single-post .sp-single-meta ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none
}

.sp-intro.single-post .sp-single-meta ul li {
    display: inline;
    font-size: 18px;
    text-transform: capitalize
}

.sp-intro.single-post .sp-single-meta ul li:after {
    content: '/';
    padding: 0 10px;
    color: #fff
}

.sp-intro.single-post .sp-single-meta ul li:last-child:after {
    content: none
}

.sp-intro.single-post .sp-single-meta ul li a {
    color: #fff
}

.sp-blog-block.single .sp-blog-block {
    margin-bottom: 50px
}

.sp-blog-block.single .sp-blog-image img {
    position: static;
    height: auto
}

.sp-blog-block.single .sp-blog-image:hover {
    opacity: 1
}

.sp-blog-block.single .sp-blog-image .caption {
    color: #999;
    font-size: 14px;
    width: 100%
}

.sp-blog-block.single .sp-blog-image .caption:empty {
    display: none
}

.sp-blog-block.single blockquote {
    padding: 15px 30px;
    border-left: 5px solid #eee;
    margin-bottom: 1.5rem
}

.sp-blog-block.single blockquote p:last-child {
    margin-bottom: 0
}

.sp-blog-block.single .sp-single-tags {
    position: relative;
    font-size: 16px;
    padding-left: 30px;
    margin-top: 2rem
}

.sp-blog-block.single .sp-single-tags:empty {
    display: none
}

.sp-blog-block.single .sp-single-tags:before {
    font-family: "sp-theme-icons";
    content: '\f48e';
    position: absolute;
    top: 0;
    left: 0;
    font-size: 22px;
    color: #8e8e8e;
    line-height: 28px
}

.sp-blog-block.single .sp-single-tags a {
    color: #8e8e8e;
    padding-right: 5px
}

.sp-blog-block.single .sp-single-tags a:hover {
    color: #a8252d
}

.sp-blog-block.single .sp-single-tags a:before {
    content: '#'
}

@media (max-width:767px) {
    .sp-blog-block.single .sp-single-tags {
        padding-left: 0
    }

    .sp-blog-block.single .sp-single-tags:before {
        display: none
    }
}

.sp-blog-block.single .sp-single-soc ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    font-size: 0;
    margin: -5px -15px;
    max-width: none
}

.sp-blog-block.single .sp-single-soc ul li {
    display: inline
}

.sp-blog-block.single .sp-single-soc ul li a {
    display: inline-block;
    font-size: 18px;
    color: #222;
    padding: 5px 15px
}

.sp-blog-block.single .sp-single-soc ul li a:hover {
    color: #a8252d
}

.sp-blog-block.single .sp-link-pages {
    text-align: center
}

.sp-blog-block.single .sp-link-pages a {
    color: #a8252d;
    cursor: default
}

.sp-blog-block.single .sp-link-pages span.page-link {
    display: inline-block;
    font-size: 18px;
    padding: 10px 15px;
    font-weight: 700
}

.sp-related-posts {
    overflow: hidden;
    width: 100%
}

.sp-related-posts .sp-blog-image {
    margin-bottom: 1rem;
    display: block;
    height: 240px
}

.sp-related-posts .sp-blog-image img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    width: 100%;
    height: 100%
}

.sp-related-posts .entry-title {
    margin-bottom: 1rem;
    line-height: 1.4
}

.sp-related-posts .entry-title a {
    color: #8e8e8e
}

.sp-related-posts .sp-blog-meta {
    margin-bottom: 0;
    width: 100%
}

.sp-related-posts .sp-blog-meta ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    display: block;
    font-size: 0
}

.sp-related-posts .sp-blog-meta ul li {
    display: inline;
    font-size: 14px;
    text-transform: capitalize
}

.sp-related-posts .sp-blog-meta ul li:after {
    display: inline-block;
    content: '/';
    padding: 0 10px;
    color: #999
}

.sp-related-posts .sp-blog-meta ul li:last-child:after {
    content: none
}

.sp-related-posts .sp-blog-meta ul li a,
.sp-related-posts .sp-blog-meta ul li {
    color: #999
}

.sp-related-posts .sp-blog-meta ul li:empty {
    display: none
}

.sp-related-posts .sp-slick-related {
    margin: 0 -15px
}

.sp-related-posts .sp-slick-related .item {
    padding: 0 15px
}

.sp-related-posts .sp-slick-related:not(.slick-initialized):after {
    display: block;
    content: "";
    clear: both
}

.sp-related-posts .sp-slick-related:not(.slick-initialized) .item {
    float: left;
    width: 50%
}

#sp-page-inner {
    display: flex;
    flex-wrap: nowrap
}

#sp-page-inner>.content-column {
    flex: 1 1 auto;
    min-width: 0;
    order: 2
}

#sp-page-inner>.sidebar-column {
    flex: 0 0 360px;
    min-width: 0;
    margin-bottom: -50px;
    order: 3
}

#sp-page-inner>.sidebar-column.left {
    padding-right: 60px;
    order: 1
}

#sp-page-inner>.sidebar-column.right {
    padding-left: 60px
}

#sp-page-inner>.sidebar-column:empty {
    display: none
}

@media (max-width:767px) {
    #sp-page-inner {
        flex-wrap: wrap
    }

    #sp-page-inner>.sidebar-column,
    #sp-page-inner>.content-column {
        flex-basis: 100%
    }

    #sp-page-inner>.content-column {
        order: 1
    }

    #sp-page-inner>.sidebar-column {
        margin-top: 80px;
        order: 2
    }

    #sp-page-inner>.sidebar-column.left {
        padding-right: 0
    }

    #sp-page-inner>.sidebar-column.right {
        padding-left: 0
    }
}

#sp-404>.intro-body {
    padding-top: 50px;
    padding-bottom: 50px
}

#sp-404 h1 {
    margin-bottom: 2rem;
    font-size: 5rem;
    line-height: 5rem
}

#sp-404 h3 {
    margin-bottom: 3rem;
    font-size: 3.5rem;
    font-family: 'Shadows Into Light', cursive;
    transform: rotate(-2deg) !important
}

#sp-404 .sp-soc-icons {
    margin-bottom: 2rem;
    font-size: 0
}

#sp-404 .sp-soc-icons>a {
    display: inline-block;
    padding: 0 12px;
    font-size: 26px
}

#sp-404 .sp-soc-icons>a:hover {
    color: #a8252d
}

#sp-404 .sp-404-menu ul {
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
    font-size: 0
}

#sp-404 .sp-404-menu ul li {
    display: inline;
    white-space: nowrap
}

#sp-404 .sp-404-menu ul li:after {
    content: '|';
    display: inline-block;
    margin: 0 10px;
    font-size: 1rem
}

#sp-404 .sp-404-menu ul li:last-child:after {
    content: ''
}

#sp-404 .sp-404-menu ul li a {
    font-size: 1rem
}

#sp-404 .sp-404-menu ul li a:hover {
    color: #a8252d
}

@media (max-width:767px) {
    #sp-404 h1 {
        font-size: 3.8rem;
        line-height: 3.8rem;
        padding: 0 15px
    }

    #sp-404 h3 {
        font-size: 3rem;
        padding: 0 15px;
        margin-bottom: 2rem
    }

    #sp-404 .sp-404-menu ul {
        padding: 0 15px
    }
}

@media (max-width:575px) {
    #sp-404 h1 {
        font-size: 3rem
    }

    #sp-404 h3 {
        font-size: 2rem
    }
}