@charset "utf-8";
/* 该css中包含 视频弹窗、图片弹窗、视频全屏、投递简历弹窗、animate.css、swiper.min.css */

/* 全站统一思源黑体 */
body { font-family: 'Noto Sans SC', sans-serif; }

:root {
    --color: #1bd629;
}
/*
插件：wow.min.js
版本：
官网：
*/
.wow {
    visibility: hidden;
    animation-name: none;
}
/*
插件：视频弹窗
版本：
官网：
*/
/* 视频弹窗 */
#hi-video-pop {
    color: #1bd629;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-video-pop * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-video-pop .hi-close {
    position: fixed;
    top: 85%;
    left: 50%;
    z-index: 5;
    margin-left: -25px;
    width: 40px;
    height: 40px;
    color: #fff;
    background: #fff;
    border-radius: 50%;
    transition: 0.3s;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
#hi-video-pop .hi-close:after,
#hi-video-pop .hi-close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 5;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 -10px;
    background: #333;
    transition: 0.3s;
}
#hi-video-pop .hi-close:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#hi-video-pop .hi-close:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
#hi-video-pop .hi-close:hover {
    background: #1bd629;
}
#hi-video-pop .hi-close:hover:after,
#hi-video-pop .hi-close:hover:before {
    background: #fff;
}
#hi-video-pop .hi-video-box {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
#hi-video-pop .hi-video-box .hi-video-wrap {
    max-width: 90vh;
    border: 2px solid #fff;
}
@media (max-width: 767px) {
    #hi-video-pop .hi-video-box .hi-video-wrap {
        max-width: 90%;
    }
}
#hi-video-pop .hi-video-box .hi-video-wrap video {
    width: 100%;
    height: 100%;
    vertical-align: top;
}
/* iframe视频弹窗 */
#hi-iframe-video {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-iframe-video * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-iframe-video .hi-close {
    position: fixed;
    top: 85%;
    left: 50%;
    z-index: 5;
    margin-left: -25px;
    width: 40px;
    height: 40px;
    color: #fff;
    background: #fff;
    border-radius: 50%;
    transition: 0.3s;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
#hi-iframe-video .hi-close:after,
#hi-iframe-video .hi-close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 5;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 -10px;
    background: #333;
    transition: 0.3s;
}
#hi-iframe-video .hi-close:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#hi-iframe-video .hi-close:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
#hi-iframe-video .hi-close:hover {
    background: #1bd629;
}
#hi-iframe-video .hi-close:hover:after,
#hi-iframe-video .hi-close:hover:before {
    background: #fff;
}
#hi-iframe-video iframe {
    position: fixed;
    left: 50%;
    top: 50%;
    width: 100vh;
    height: 60vh;
    max-width: 90%;
    max-height: 70%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
@media (max-width: 991px) {
    #hi-iframe-video iframe {
        width: 90vw;
        height: 60vw;
    }
}
/*
插件：视频全屏
版本：
官网：
*/
#hi-video-pop2 {
    display: none;
    height: 0;
    width: 0;
}
/*
插件：图片弹窗
版本：
官网：
*/
#hi-img-pop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-img-pop * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-img-pop .hi-close {
    position: fixed;
    top: 85%;
    left: 50%;
    margin-left: -25px;
    width: 40px;
    height: 40px;
    color: #fff;
    background: #fff;
    border-radius: 50%;
    transition: 0.3s;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
#hi-img-pop .hi-close:after,
#hi-img-pop .hi-close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 5;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 -10px;
    background: #333;
    transition: 0.3s;
}
#hi-img-pop .hi-close:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#hi-img-pop .hi-close:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
#hi-img-pop .hi-close:hover {
    background: #1bd629;
}
#hi-img-pop .hi-close:hover:after,
#hi-img-pop .hi-close:hover:before {
    background: #fff;
}
#hi-img-pop > img {
    position: fixed;
    left: 50%;
    top: 50%;
    max-width: 90%;
    max-height: 65%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
/*
插件：投递简历弹窗
版本：
官网：
*/
#hi-resume-pop {
    display: none;
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-resume-pop * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#hi-resume-pop form {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    max-width: 500px;
    background: #fff;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
@media (max-width: 1580px) {
    #hi-resume-pop form {
        max-width: 400px;
    }
}
#hi-resume-pop form .hi-title-box {
    position: relative;
    padding: 0 0.4rem;
    background: #1bd629;
}
#hi-resume-pop form .hi-title-box .hi-title {
    line-height: 0.8rem;
    font-size: 20px;
    color: #fff;
}
@media (max-width: 1580px) {
    #hi-resume-pop form .hi-title-box .hi-title {
        line-height: 1rem;
        font-size: 0.4rem;
    }
}
#hi-resume-pop form .hi-title-box .hi-close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 5;
    width: 1.05rem;
    height: 0.8rem;
    cursor: pointer;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-title-box .hi-close {
        width: 1.05rem;
        height: 1rem;
    }
}
#hi-resume-pop form .hi-title-box .hi-close:before,
#hi-resume-pop form .hi-title-box .hi-close:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -1px 0 0 -0.13rem;
    width: 0.25rem;
    height: 2px;
    background: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-title-box .hi-close:before,
    #hi-resume-pop form .hi-title-box .hi-close:after {
        margin: -1px 0 0 -0.2rem;
        width: 0.4rem;
    }
}
#hi-resume-pop form .hi-title-box .hi-close:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
#hi-resume-pop form .hi-box {
    padding: 0.4rem;
    line-height: 0.6rem;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box {
        line-height: 0.6rem;
    }
}
#hi-resume-pop form .hi-box input {
    margin-bottom: 0.2rem;
    padding: 0 0.15rem;
    width: 100%;
    height: 0.6rem;
    border: 1px solid #ccc;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box input {
        height: 0.8rem;
    }
}
#hi-resume-pop form .hi-box button {
    width: 100%;
    height: 0.6rem;
    background: #1bd629;
    color: #fff;
    cursor: pointer;
    border: 0;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box button {
        height: 0.8rem;
    }
}
#hi-resume-pop form .hi-box .hi-file-box {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.2rem;
}
#hi-resume-pop form .hi-box .hi-file-box .hi-input-box {
    position: relative;
    display: inline-block;
    margin-right: 0.15rem;
    padding: 0.05rem 0.15rem;
    line-height: 0.3rem;
    background: #1bd629;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box .hi-file-box .hi-input-box {
        padding: 0.1rem 0.15rem;
        line-height: 0.4rem;
    }
}
#hi-resume-pop form .hi-box .hi-file-box .hi-input-box input {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    margin-bottom: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    border: 0;
    cursor: pointer;
}
#hi-resume-pop form .hi-box .hi-file-box .hi-input-box .hi-text {
    color: #fff;
}
#hi-resume-pop form .hi-box .hi-file-box .hi-text2 {
    line-height: 0.4rem;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box .hi-file-box .hi-text2 {
        padding: 0.1rem 0;
    }
}
#hi-resume-pop form .hi-box .hi-code-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.2rem;
}
#hi-resume-pop form .hi-box .hi-code-box input {
    margin-bottom: 0;
    width: calc(100% - 1.4rem) !important;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box .hi-code-box input {
        width: calc(100% - 2.2rem) !important;
    }
}
#hi-resume-pop form .hi-box .hi-code-box img {
    max-width: 1.3rem;
    max-height: 0.6rem;
    cursor: pointer;
}
@media (max-width: 767px) {
    #hi-resume-pop form .hi-box .hi-code-box img {
        max-width: 2rem;
        max-height: 0.8rem;
    }
}
/*
插件：animate动画
版本：3.7.2
官网：https://animate.style/
*/
@-webkit-keyframes bounce {
    0%,
    20%,
    53%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
    }
    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0);
    }
}
@keyframes bounce {
    0%,
    20%,
    53%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
    }
    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0);
    }
}
.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
}
@-webkit-keyframes flash {
    0%,
    50%,
    to {
        opacity: 0;
    }
    25%,
    75% {
        opacity: 0;
    }
}
@keyframes flash {
    0%,
    50%,
    to {
        opacity: 0;
    }
    25%,
    75% {
        opacity: 0;
    }
}
.flash {
    -webkit-animation-name: flash;
    animation-name: flash;
}
@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
@keyframes pulse {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
}
@-webkit-keyframes rubberBand {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
@keyframes rubberBand {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
.rubberBand {
    -webkit-animation-name: rubberBand;
    animation-name: rubberBand;
}
@-webkit-keyframes shake {
    0%,
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
}
@keyframes shake {
    0%,
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
}
.shake {
    -webkit-animation-name: shake;
    animation-name: shake;
}
@-webkit-keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg);
    }
    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg);
    }
    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg);
    }
    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg);
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg);
    }
    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg);
    }
    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg);
    }
    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg);
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
.headShake {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-name: headShake;
    animation-name: headShake;
}
@-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);
    }
    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}
@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);
    }
    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}
.swing {
    -webkit-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing;
}
@-webkit-keyframes tada {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
    10%,
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
    }
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    }
    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
@keyframes tada {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
    10%,
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
    }
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    }
    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
.tada {
    -webkit-animation-name: tada;
    animation-name: tada;
}
@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
        transform: translate3d(-25%, 0, 0) rotate(-5deg);
    }
    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
        transform: translate3d(20%, 0, 0) rotate(3deg);
    }
    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
        transform: translate3d(-15%, 0, 0) rotate(-3deg);
    }
    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
        transform: translate3d(10%, 0, 0) rotate(2deg);
    }
    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
        transform: translate3d(-5%, 0, 0) rotate(-1deg);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes wobble {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
        transform: translate3d(-25%, 0, 0) rotate(-5deg);
    }
    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
        transform: translate3d(20%, 0, 0) rotate(3deg);
    }
    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
        transform: translate3d(-15%, 0, 0) rotate(-3deg);
    }
    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
        transform: translate3d(10%, 0, 0) rotate(2deg);
    }
    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
        transform: translate3d(-5%, 0, 0) rotate(-1deg);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble;
}
@-webkit-keyframes jello {
    0%,
    11.1%,
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
        transform: skewX(0.390625deg) skewY(0.390625deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
        transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    }
}
@keyframes jello {
    0%,
    11.1%,
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
        transform: skewX(0.390625deg) skewY(0.390625deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
        transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    }
}
.jello {
    -webkit-animation-name: jello;
    animation-name: jello;
    -webkit-transform-origin: center;
    transform-origin: center;
}
@-webkit-keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    28% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    28% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
.heartBeat {
    -webkit-animation-name: heartBeat;
    animation-name: heartBeat;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}
@-webkit-keyframes bounceIn {
    0%,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }
    to {
        opacity: 0;
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
@keyframes bounceIn {
    0%,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }
    to {
        opacity: 0;
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}
.bounceIn {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn;
}
@-webkit-keyframes bounceInDown {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes bounceInDown {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown;
}
@-webkit-keyframes bounceInLeft {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0);
        transform: translate3d(-3000px, 0, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(25px, 0, 0);
        transform: translate3d(25px, 0, 0);
    }
    75% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }
    90% {
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes bounceInLeft {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0);
        transform: translate3d(-3000px, 0, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(25px, 0, 0);
        transform: translate3d(25px, 0, 0);
    }
    75% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }
    90% {
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft;
}
@-webkit-keyframes bounceInRight {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0);
        transform: translate3d(3000px, 0, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(-25px, 0, 0);
        transform: translate3d(-25px, 0, 0);
    }
    75% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
    90% {
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes bounceInRight {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0);
        transform: translate3d(3000px, 0, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(-25px, 0, 0);
        transform: translate3d(-25px, 0, 0);
    }
    75% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
    90% {
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight;
}
@-webkit-keyframes bounceInUp {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0);
        transform: translate3d(0, 3000px, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes bounceInUp {
    0%,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0);
        transform: translate3d(0, 3000px, 0);
    }
    60% {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp;
}
@-webkit-keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    50%,
    55% {
        opacity: 0;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
}
@keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    50%,
    55% {
        opacity: 0;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
}
.bounceOut {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut;
}
@-webkit-keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    40%,
    45% {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
}
@keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    40%,
    45% {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
}
.bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown;
}
@-webkit-keyframes bounceOutLeft {
    20% {
        opacity: 0;
        -webkit-transform: translate3d(20px, 0, 0);
        transform: translate3d(20px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
}
@keyframes bounceOutLeft {
    20% {
        opacity: 0;
        -webkit-transform: translate3d(20px, 0, 0);
        transform: translate3d(20px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
}
.bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft;
}
@-webkit-keyframes bounceOutRight {
    20% {
        opacity: 0;
        -webkit-transform: translate3d(-20px, 0, 0);
        transform: translate3d(-20px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
}
@keyframes bounceOutRight {
    20% {
        opacity: 0;
        -webkit-transform: translate3d(-20px, 0, 0);
        transform: translate3d(-20px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
}
.bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight;
}
@-webkit-keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    40%,
    45% {
        opacity: 0;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}
@keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    40%,
    45% {
        opacity: 0;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}
.bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp;
}
@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
    }
}
.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
}
@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}
@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig;
}
.fadeInDownSmall {
    -webkit-animation-name: fadeInDownSmall;
    animation-name: fadeInDownSmall;
}
@keyframes fadeInDownSmall {
    0% {
        opacity: 0;
        transform: translate3d(0, -10px, 0);
    }
    100% {
        opacity: 0;
        transform: none;
    }
}
.fadeInUpimg {
    -webkit-animation-name: fadeInUpimg;
    animation-name: fadeInUpimg;
}
@keyframes fadeInUpimg {
    0% {
        transform: scale(1.5);
    }
    100% {
        transform: none;
    }
}
@-webkit-keyframes fadeOutUpzz {
    0% {
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}
@keyframes fadeOutUpzz {
    0% {
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}
.fadeOutUpzz {
    -webkit-animation-name: fadeOutUpzz;
    animation-name: fadeOutUpzz;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
}
@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}
@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 60px, 0);
        transform: translate3d(0, 60px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 60px, 0);
        transform: translate3d(0, 60px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
}
@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig;
}
@-webkit-keyframes fadeOut {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
    }
}
@keyframes fadeOut {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
    }
}
.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}
@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}
@keyframes fadeOutDown {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}
.fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown;
}
@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
}
@keyframes fadeOutDownBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
}
.fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig;
}
@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}
@keyframes fadeOutLeft {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}
.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft;
}
@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
}
@keyframes fadeOutLeftBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
}
.fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig;
}
@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}
@keyframes fadeOutRight {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}
.fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight;
}
@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
}
@keyframes fadeOutRightBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
}
.fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig;
}
@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}
@keyframes fadeOutUp {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}
.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
}
@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}
@keyframes fadeOutUpBig {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}
.fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig;
}
@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
        transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
        transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
        transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    to {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
        transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}
@keyframes flip {
    0% {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
        transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
        transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
        transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    to {
        -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
        transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}
.animated.flip {
    -webkit-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);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-20deg);
        transform: perspective(400px) rotateX(-20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: perspective(400px) rotateX(-5deg);
        transform: perspective(400px) rotateX(-5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}
@keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-20deg);
        transform: perspective(400px) rotateX(-20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: perspective(400px) rotateX(-5deg);
        transform: perspective(400px) rotateX(-5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}
.flipInX {
    -webkit-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);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-20deg);
        transform: perspective(400px) rotateY(-20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(-5deg);
        transform: perspective(400px) rotateY(-5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}
@keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-20deg);
        transform: perspective(400px) rotateY(-20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(-5deg);
        transform: perspective(400px) rotateY(-5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}
.flipInY {
    -webkit-backface-visibility: visible!important;
    backface-visibility: visible!important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
}
@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotateX(-20deg);
        transform: perspective(400px) rotateX(-20deg);
        opacity: 0;
    }
    to {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}
@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotateX(-20deg);
        transform: perspective(400px) rotateX(-20deg);
        opacity: 0;
    }
    to {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}
.flipOutX {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible!important;
    backface-visibility: visible !important;
}
@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotateY(-15deg);
        transform: perspective(400px) rotateY(-15deg);
        opacity: 0;
    }
    to {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotateY(-15deg);
        transform: perspective(400px) rotateY(-15deg);
        opacity: 0;
    }
    to {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}
.flipOutY {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -webkit-backface-visibility: visible!important;
    backface-visibility: visible!important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY;
}
@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes lightSpeedIn {
    0% {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}
@-webkit-keyframes lightSpeedOut {
    0% {
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0;
    }
}
@keyframes lightSpeedOut {
    0% {
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) 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;
        transform-origin: center;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
@keyframes rotateIn {
    0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
.rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
}
@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
@keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
.rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft;
}
@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
@keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
.rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight;
}
@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
@keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
.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;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
@keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 0;
    }
}
.rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight;
}
@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}
@keyframes rotateOut {
    0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-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;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        opacity: 0;
    }
}
@keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        opacity: 0;
    }
}
.rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft;
}
@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0;
    }
}
@keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0;
    }
}
.rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight;
}
@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0;
    }
}
@keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        opacity: 0;
    }
}
.rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft;
}
@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 0;
    }
    to {
        -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;
        transform-origin: right bottom;
        opacity: 0;
    }
    to {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}
.rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight;
}
@-webkit-keyframes hinge {
    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%,
    80% {
        -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;
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0;
    }
}
@keyframes hinge {
    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%,
    80% {
        -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;
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0;
    }
}
.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-name: hinge;
    animation-name: hinge;
}
@-webkit-keyframes jackInTheBox {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.1) rotate(30deg);
        transform: scale(0.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }
    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes jackInTheBox {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.1) rotate(30deg);
        transform: scale(0.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }
    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
.jackInTheBox {
    -webkit-animation-name: jackInTheBox;
    animation-name: jackInTheBox;
}
@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
        transform: translate3d(-100%, 0, 0) rotate(-120deg);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
        transform: translate3d(-100%, 0, 0) rotate(-120deg);
    }
    to {
        opacity: 0;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn;
}
@-webkit-keyframes rollOut {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
        transform: translate3d(100%, 0, 0) rotate(120deg);
    }
}
@keyframes rollOut {
    0% {
        opacity: 0;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
        transform: translate3d(100%, 0, 0) rotate(120deg);
    }
}
.rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut;
}
@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 0;
    }
}
@keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 0;
    }
}
.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
}
@-webkit-keyframes zoomInDown {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
@keyframes zoomInDown {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown;
}
@-webkit-keyframes zoomInLeft {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
@keyframes zoomInLeft {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft;
}
@-webkit-keyframes zoomInRight {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
@keyframes zoomInRight {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight;
}
@-webkit-keyframes zoomInUp {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
@keyframes zoomInUp {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp;
}
@-webkit-keyframes zoomOut {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    to {
        opacity: 0;
    }
}
@keyframes zoomOut {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    to {
        opacity: 0;
    }
}
.zoomOut {
    -webkit-animation-name: zoomOut;
    animation-name: zoomOut;
}
@-webkit-keyframes zoomOutDown {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
@keyframes zoomOutDown {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.zoomOutDown {
    -webkit-animation-name: zoomOutDown;
    animation-name: zoomOutDown;
}
@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }
}
@keyframes zoomOutLeft {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }
}
.zoomOutLeft {
    -webkit-animation-name: zoomOutLeft;
    animation-name: zoomOutLeft;
}
@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
    }
}
@keyframes zoomOutRight {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
    }
}
.zoomOutRight {
    -webkit-animation-name: zoomOutRight;
    animation-name: zoomOutRight;
}
@-webkit-keyframes zoomOutUp {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
@keyframes zoomOutUp {
    40% {
        opacity: 0;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}
.zoomOutUp {
    -webkit-animation-name: zoomOutUp;
    animation-name: zoomOutUp;
}
@-webkit-keyframes slideInDown {
    0% {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes slideInDown {
    0% {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown;
}
@-webkit-keyframes slideInLeft {
    0% {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes slideInLeft {
    0% {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
}
@-webkit-keyframes slideInRight {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes slideInRight {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight;
}
@-webkit-keyframes slideInUp {
    0% {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
@keyframes slideInUp {
    0% {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}
.slideInUp {
    -webkit-animation-name: slideInUp;
    animation-name: slideInUp;
}
@-webkit-keyframes slideOutDown {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}
@keyframes slideOutDown {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}
.slideOutDown {
    -webkit-animation-name: slideOutDown;
    animation-name: slideOutDown;
}
@-webkit-keyframes slideOutLeft {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}
@keyframes slideOutLeft {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}
.slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft;
}
@-webkit-keyframes slideOutRight {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}
@keyframes slideOutRight {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}
.slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight;
}
@-webkit-keyframes slideOutUp {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}
@keyframes slideOutUp {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}
.slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp;
}
.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.animated.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}
.animated.delay-1s {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}
.animated.delay-2s {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}
.animated.delay-3s {
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
}
.animated.delay-4s {
    -webkit-animation-delay: 4s;
    animation-delay: 4s;
}
.animated.delay-5s {
    -webkit-animation-delay: 5s;
    animation-delay: 5s;
}
.animated.fast {
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
}
.animated.faster {
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
}
.animated.slow {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
}
.animated.slower {
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
}
@media (prefers-reduced-motion: reduce), (print) {
    .animated {
        -webkit-animation-duration: 1ms!important;
        animation-duration: 1ms!important;
        -webkit-transition-duration: 1ms!important;
        transition-duration: 1ms!important;
        -webkit-animation-iteration-count: 1!important;
        animation-iteration-count: 1 !important;
    }
}
/*
插件：swiper轮播swiper.min.css
版本：4.5.0
官网：https://www.swiper.com.cn
*/
.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
.swiper-container-no-flexbox .swiper-slide {
    float: left;
}
.swiper-container-vertical > .swiper-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}
.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.swiper-container-free-mode > .swiper-wrapper {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    margin: 0 auto;
}
.swiper-slide {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
}
.swiper-slide-invisible-blank {
    visibility: hidden;
}
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform,height;
    transition-property: transform,height;
    transition-property: transform, height, -webkit-transform;
}
.swiper-container-3d {
    -webkit-perspective: 1200px;
    perspective: 1200px;
}
.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
}
.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
    -ms-touch-action: pan-x;
    touch-action: pan-x;
}
.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat;
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
    left: 10px;
    right: auto;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
    right: 10px;
    left: auto;
}
.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-lock {
    display: none;
}
.swiper-pagination {
    position: absolute;
    text-align: center;
    -webkit-transition: 0.3s opacity;
    -o-transition: 0.3s opacity;
    transition: 0.3s opacity;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
}
.swiper-container-horizontal > .swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%;
}
.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transform: scale(0.33);
    -ms-transform: scale(0.33);
    transform: scale(0.33);
    position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    -webkit-transform: scale(0.66);
    -ms-transform: scale(0.66);
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    -webkit-transform: scale(0.33);
    -ms-transform: scale(0.33);
    transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    -webkit-transform: scale(0.66);
    -ms-transform: scale(0.66);
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    -webkit-transform: scale(0.33);
    -ms-transform: scale(0.33);
    transform: scale(0.33);
}
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: 0.2;
}
button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}
.swiper-pagination-bullet-active {
    opacity: 1;
    background: #007aff;
}
.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    -webkit-transition: 0.2s top, 0.2s -webkit-transform;
    transition: 0.2s top, 0.2s -webkit-transform;
    -o-transition: 0.2s transform, 0.2s top;
    transition: 0.2s transform, 0.2s top;
    transition: 0.2s transform, 0.2s top, 0.2s -webkit-transform;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: 0.2s left, 0.2s -webkit-transform;
    transition: 0.2s left, 0.2s -webkit-transform;
    -o-transition: 0.2s transform, 0.2s left;
    transition: 0.2s transform, 0.2s left;
    transition: 0.2s transform, 0.2s left, 0.2s -webkit-transform;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: 0.2s right, 0.2s -webkit-transform;
    transition: 0.2s right, 0.2s -webkit-transform;
    -o-transition: 0.2s transform, 0.2s right;
    transition: 0.2s transform, 0.2s right;
    transition: 0.2s transform, 0.2s right, 0.2s -webkit-transform;
}
.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.25);
    position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0;
}
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical > .swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0;
}
.swiper-pagination-white .swiper-pagination-bullet-active {
    background: #fff;
}
.swiper-pagination-progressbar.swiper-pagination-white {
    background: rgba(255, 255, 255, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff;
}
.swiper-pagination-black .swiper-pagination-bullet-active {
    background: #000;
}
.swiper-pagination-progressbar.swiper-pagination-black {
    background: rgba(0, 0, 0, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
    background: #000;
}
.swiper-pagination-lock {
    display: none;
}
.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%;
}
.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    left: 0;
    top: 0;
}
.swiper-scrollbar-cursor-drag {
    cursor: move;
}
.swiper-scrollbar-lock {
    display: none;
}
.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}
.swiper-slide-zoomed {
    cursor: move;
}
.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
    animation: swiper-preloader-spin 1s steps(12, end) infinite;
}
.swiper-lazy-preloader:after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    background-position: 50%;
    background-size: 100%;
    background-repeat: no-repeat;
}
.swiper-lazy-preloader-white:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
@-webkit-keyframes swiper-preloader-spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes swiper-preloader-spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-cube {
    overflow: visible;
}
.swiper-container-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next + .swiper-slide,
.swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.6;
    -webkit-filter: blur(50px);
    filter: blur(50px);
    z-index: 0;
}
.swiper-container-flip {
    overflow: visible;
}
.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.swiper-container-coverflow .swiper-wrapper {
    -ms-perspective: 1200px;
}

.font-run span {
     clip-path: polygon(0 0, 100% 0, 100% 0, 0 50%);
     transition: all 1s;
     transform: translateY(100%);
    position: relative;
    display: inline-block;
    opacity: 0;
}
.font-run.on span {
    opacity: 1;
     clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transform: translateY(0);
}

.img-list{
    margin-top: -1.5rem;
    margin-left: -1.5rem !important;
    margin-right: -1.5rem !important;
}
.img-list .item{
    position: relative;

}
.img-list .item .img-box{
    position: relative;
    overflow: hidden;
    transform-style:preserve-3d;
    height: 400px;
}

.img-list .item .img-box .text{
    position: absolute;
    top:0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    opacity: 0;

    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    background-color: #fc0;
    padding: 20px;
    pointer-events: none;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    text-align: left;
        color: #0c0c0c;
}
@media (min-width: 1200px){
    .img-list .item .img-box .text {
    padding: 24px 29px;
}
}
@media (min-width: 1800px){
   .img-list .item .img-box  .text {
    font-size: 24px;
    line-height: 32px;
}
}


.img-list .item .img-box:hover .text{
    opacity: 1;
}
.img-list .item .img-box .zz {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 3;
    background: #f5f7f9;
}
.img-list .item .img-box img {
    transition: transform 0.65s ease-out, opacity 0.5s ease-out;
    border-radius: 0.1rem;
}
.img-list .item .img-box img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.8s;
}

.img-list .item .img-box video {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    z-index: 2;
}

@media (min-width: 1200px){
.latest-work-listing .text {
    padding: 24px 29px;
}
}

/* 案例区已改用 Modern Agency Swiper 轮播布局 */
@media (min-width: 992px) and (max-width: 1599px) {
    .capabilities{ margin-top: 0; }
    .orisa-sec2{ margin-top: calc(6vw + 50px); }
}
@media (min-width: 1600px) {
    .capabilities{ margin-top: 0; }
    .orisa-sec2{ margin-top: calc(6vw + 150px); }
}

/* 案例副标题（h4内small标签） */
.work-card-sub{
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #303030;
    margin-top: 3px;
}
/* ===== 案例列表页：对标首页2列错落 ===== */
@media (min-width: 992px) and (max-width: 1599px) {
    .caselist-grid{
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 0;
        row-gap: 0;
    }
    .caselist-item{ position: relative; }
    .caselist-item:nth-child(odd){ padding-right: 14.07vw; }  /* 对标首页左右间距 */
    .caselist-item:nth-child(even){ padding-left: 14.07vw; }
    .caselist-item:nth-child(odd){ transform: translateY(40px); }
    .caselist-item:nth-child(6n+1){ transform: translateY(80px); }
    .caselist-item:nth-child(6n+3){ transform: translateY(100px); }
    .caselist-item:nth-child(even){ margin-top: -20px; }
    .caselist-link{ display: block; text-decoration: none; color: inherit; }
    .caselist-img{
        overflow: hidden;
        aspect-ratio: 303 / 378;
        background: #f5f5f5;
    }
    .caselist-img img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.6s ease;
    }
    .caselist-link:hover .caselist-img img{ transform: scale(1.03); }
    .caselist-overlay{
        position: absolute; inset: 0;
        background: rgba(0,0,0,0.4);
        opacity: 0; transition: opacity 0.3s;
        display: flex; align-items: flex-end;
        padding: 20px; color: #fff; font-size: 14px;
    }
    .caselist-link:hover .caselist-overlay{ opacity: 1; }
    .caselist-item h4{ margin: 18px 0 4px; font-size: 17px; font-weight: 600; color: #111; }
    .caselist-sub{ font-size: 13px; color: #303030; }
    .caselist-item:nth-child(odd) h4{ text-align: left; }
    .caselist-item:nth-child(even) h4{ text-align: right; }
}
@media (min-width: 1600px) {
    .caselist-grid{
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 0;
        row-gap: 0;
    }
    .caselist-item{ position: relative; }
    .caselist-item:nth-child(odd){ padding-right: 11.80vw; }
    .caselist-item:nth-child(even){ padding-left: 11.80vw; }
    .caselist-item:nth-child(odd){ transform: translateY(40px); }
    .caselist-item:nth-child(6n+1){ transform: translateY(80px); }
    .caselist-item:nth-child(6n+3){ transform: translateY(100px); }
    .caselist-item:nth-child(even){ margin-top: -20px; }
    .caselist-link{ display: block; text-decoration: none; color: inherit; }
    .caselist-img{
        overflow: hidden;
        aspect-ratio: 402 / 505;
        background: #f5f5f5;
    }
    .caselist-img img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.6s ease;
    }
    .caselist-link:hover .caselist-img img{ transform: scale(1.03); }
    .caselist-overlay{
        position: absolute; inset: 0;
        background: rgba(0,0,0,0.4);
        opacity: 0; transition: opacity 0.3s;
        display: flex; align-items: flex-end;
        padding: 20px; color: #fff; font-size: 14px;
    }
    .caselist-link:hover .caselist-overlay{ opacity: 1; }
    .caselist-item h4{ margin: 18px 0 4px; font-size: 17px; font-weight: 600; color: #111; }
    .caselist-sub{ font-size: 13px; color: #303030; }
    .caselist-item:nth-child(odd) h4{ text-align: left; }
    .caselist-item:nth-child(even) h4{ text-align: right; }
}
@media (max-width: 640px){
    .caselist-grid{ grid-template-columns: 1fr; }
    .caselist-item{ transform: none !important; padding: 0 !important; margin-top: 0 !important; }
    .caselist-item h4{ text-align: left !important; }
}

.custom-cursor {
    left: 0;
    mix-blend-mode: difference;
    pointer-events: none;
    position: fixed;
    top: 0;
    -webkit-transform: translate(-100px,-100px);
    transform: translate(-100px,-100px);
    -webkit-user-select: none;
    user-select: none;
    z-index: 10000;
}
.custom-cursor__point {
    background-color: #fff;
    border-radius: 50%;
    height: 0.625rem;
    transition: background-color .3s ease,width .3s ease,height .3s ease,-webkit-transform .3s ease;
    transition: background-color .3s ease,transform .3s ease,width .3s ease,height .3s ease;
    transition: background-color .3s ease,transform .3s ease,width .3s ease,height .3s ease,-webkit-transform .3s ease;
    width: 0.625rem;
    transition: transform 0.3s ease-out; /* 添加缓动效果 */

}
 .custom-cursor__point {
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
    #banner video{
        object-fit: cover;
        width:100%;
        
    }
     #banner img{
                 object-fit: cover;
        width:100%;
     }
     
     
     body {
    margin: 0;
    height: 100%;
    min-width: 320px;
    font-family: sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 22px;
    color: #0c0c0c;
    font-style: normal;
    background: #fff;
    -webkit-font-smoothing: antialiased;
}
    a {
        -webkit-text-decoration-skip: objects;
        outline: 0;
        text-decoration: none;
        color: inherit;
    }
    a:hover{
        color: unset;
        text-decoration: none;
    }
    .vh-100{
        height: 100vh;
    }
    .latest-work-listing .image img{
        opacity: 0;
    }
    .latest-work-listing .item .image:hover .text{
        opacity: 0;
    }

    .banner-texts{
        position: absolute;
        top: 52vh;
        left: 5%;
        right: 5%;
        margin: auto;
        color: #fff;
    }
    .swiper-pagination-bullet-active {
        background: #FFFFFF;
    }

    .fs-33{
        font-size: 33px;
    }
    
    .fs-17{
        font-size: 17px;
    }
    
    @media (min-width: 992px) { 
        .fs-lg-60{
        font-size: 60px;
    }
    .fs-lg-20{
        font-size: 20px;
    }
        .banner-texts{
        position: absolute;
        top: 42vh;
        left: 15%;
        right: 0;
        margin: auto;
        color: #fff;
    }
    
}

element.style {
}
.scrolled .menu-btn {
    color: #0c0c0c;
}
.header .menu-btn {
    color: #fff;
    position: relative;
}
.header .menu-btn, .main-nav>ul>li>a {
    color: #0c0c0c;
    position: relative;
}
.header .menu-btn {
    top: -6px;
    font-family: inherit;
    font-weight: 600;
    font-size: 14px;
    line-height: 22px;
}
button:focus {

    outline: 0 !important;
}
        @media (min-width: 1200px){

            .main-nav>ul>li>a{
              color: #fff;
            }
            .main-nav>ul>li{
                color: #fff;
            }
            .scrolled ul>li, .scrolled ul>li>a{
                color: #0c0c0c;
            }
            body {
                font-size: 18px;
                line-height: 26px;
            }
       }
       
       
        .header .menu-btn {
            color: #fff;
            position: relative
        }
        
        .scrolled .menu-btn{
            color:#0c0c0c;
        }
        .header .logo_w{
            display: block;
        }
        .header .logo{
            display: none;
        }
        .scrolled .logo{
            display: block;
        }
        .scrolled .logo_w{
            display: none;
        }
/* === Redesign v2: 释放滚动交互 === */
/* html/body overflow 规则移至各服务页 inline <style>——
   放在全局会让 html/body 变成滚动容器，破坏首页"核心服务"sticky */
/* 内页导航黑字（非首页无暗底banner） */
body:not(.home) .main-nav>ul>li,
body:not(.home) .main-nav>ul>li>a,
body:not(.home) .header .menu-btn{color:#0c0c0c!important;}
/* 内页导航下拉展开/悬停时恢复白字 */
body:not(.home) .main-nav>ul>li.expanded,
body:not(.home) .main-nav>ul>li.expanded>a,
body:not(.home) .main-nav>ul>li:hover.with-dropdown,
body:not(.home) .main-nav>ul>li:hover.with-dropdown>a{color:#fff!important;}
body:not(.home) .header .logo_w{display:none;}
body:not(.home) .header .logo{display:block;}

/* ===== 业务范围 - 左栏标题+描述+按钮 / 右栏图片卡片+标签 ===== */
.cap-wrap{display:flex;align-items:flex-start;max-width:1920px;margin:0 auto;padding:80px 60px 0;border-top:1px solid #d0d0d0;}
.cap-left{flex:0 0 40%;position:sticky;top:250px;}
.cap-subtitle{display:block;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#888;margin-bottom:12px;}
.cap-left h2,.cap-title{font-size:72px;font-weight:500;line-height:0.95;margin-top:0;opacity:1!important;color:#0c0c0c;}
.cap-desc{font-size:17px;line-height:1.75;color:#444;margin:20px 0 30px;letter-spacing:-0.03em;max-width:400px;}
.cap-right{flex:1;padding-left:80px;display:flex;flex-direction:column;align-items:flex-end;gap:55px;}
/* --- 卡片 --- */
.cap-card{position:relative;overflow:hidden;border-radius:10px;width:100%;max-width:943px;}
/* --- 缩略图 --- */
.cap-card-thumb{border-radius:10px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.06);background:#f0f0f0;}
.cap-card-thumb img{width:100%;height:auto;display:block;border-radius:10px;transform-origin:center center;aspect-ratio:943/620;object-fit:cover;}
/* --- 内容区 --- */
.cap-card-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:18px 0 0 0;}
.cap-card-title{font-size:28px;font-weight:600;margin:0;letter-spacing:-0.03em;}
.cap-card-title a{color:#0c0c0c;text-decoration:none;transition:color .3s;}
.cap-card-title a:hover{color:#777;}
/* --- 标签胶囊 --- */
.cap-card-tags{display:flex;flex-wrap:wrap;gap:6px;}
.cap-card-tags span{font-size:12px;font-weight:600;text-transform:uppercase;color:#0c0c0c;border:1px solid rgba(27,23,15,.1);border-radius:50px;padding:5px 14px;letter-spacing:-0.02em;transition:all .3s ease;}
.cap-card-tags span:hover{background:#0c0c0c;color:#fff;border-color:#0c0c0c;}
/* --- 融合按钮 --- */
.cap-btn-group{display:flex;align-items:center;margin-top:10px;}
.cap-btn-group>*{transition:transform .4s cubic-bezier(.1,.75,.25,1),margin .4s cubic-bezier(.1,.75,.25,1);}
.cap-btn-circle,.cap-btn-circle:hover{width:50px;height:50px;border-radius:50%;background:#0c0c0c!important;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none;border:none;}
.cap-btn-text,.cap-btn-text:hover{display:inline-flex;align-items:center;justify-content:center;background:#0c0c0c!important;color:#fff!important;border-radius:50px;padding:15px 25px;font-size:16px;font-weight:600;letter-spacing:-.05em;text-decoration:none;z-index:1;position:relative;}
.cap-btn-group a:first-of-type{margin-right:-52px;transform:scale(.5);transform-origin:right center;}
.cap-btn-group a:nth-of-type(2){transform:scale(1);}
.cap-btn-group a:last-of-type{margin-left:0;transform:scale(1);transform-origin:left center;}
.cap-btn-group:hover a:first-of-type{margin-right:0;transform:scale(1);}
.cap-btn-group:hover a:last-of-type{margin-left:-52px;transform:scale(.5);}
/* --- 响应式 --- */
@media(max-width:1199px){.cap-wrap{max-width:960px;}.cap-right{gap:40px;padding-left:50px;}.cap-left h2,.cap-title{font-size:56px;}}
@media(max-width:991px){.cap-wrap{flex-direction:column;padding:40px 20px 60px;max-width:100%;}.cap-left{position:static;margin-bottom:40px;flex:none;}.cap-left h2,.cap-title{font-size:48px;margin-top:0;}.cap-desc{max-width:100%;}.cap-right{padding-left:0;gap:30px;align-items:stretch;}.cap-card{max-width:none;}}
@media(max-width:767px){.cap-card-title{font-size:20px;}.cap-card-content{flex-direction:column;align-items:flex-start;gap:10px;}}
.wrapper{overflow:visible!important}
#capSection{margin-bottom:50px;}
.works-section{overflow:visible;transform:none!important;animation:none!important;}
.works-video-bg{display:none;}
.works-section .container,.works-section .img-list{position:relative;z-index:1;}
body{background:transparent!important}
.clients{background:linear-gradient(to bottom,transparent 0%,#fff 100px,#fff 100%);position:relative;z-index:1;padding:180px 0;}
@media(max-width:767px){.clients{padding:30px 0;}.clients .container>h2{margin-bottom:15px;}.logo-track .logo-item img{width:100px;height:100px;}}
@media(max-width:991px){.clients .logo-table.slider{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:15px;padding:0 20px;}.clients .logo-table.slider .logo-item{flex-shrink:0;width:130px;}.clients .logo-table.slider .logo-item img{width:130px;height:auto;display:block;}.logo-track-wrap{display:none;}}
.related-posts-section{background:#fff;position:relative;}
@media(min-width:992px){
.clients .logo-table.slider{display:none;}
.clients .container{max-width:none!important;padding:0!important;}
.logo-track-wrap{overflow:hidden;width:100%;position:relative;}
.logo-track{display:flex;align-items:center;white-space:nowrap;padding:15px 0;}
.logo-track .logo-item{padding:0 50px;flex-shrink:0;visibility:visible!important;animation:none!important;}
.logo-track .logo-item img{width:149px;height:149px;object-fit:contain;display:block;}
.logo-track .text{display:none;}
}
.clients-title{font-size:72px;font-weight:500;line-height:.95;color:#0c0c0c;display:block;text-align:center;margin-bottom:40px;position:relative;z-index:2;}
@media(max-width:991px){.clients-title{font-size:48px;margin-bottom:20px;}}
.related-posts-section{background:#fff;position:relative;z-index:1;padding-top:145px;padding-bottom:125px;}
.related-posts-section .container{max-width:1800px;padding:0 60px;}
/* 标题 */
.rp-title-wrap{margin-bottom:0;}
.rp-section-title{font-size:72px;font-weight:500;line-height:.95;color:#0c0c0c;}
/* 新闻按钮组——融合水滴按钮（与案例区一致） */
.news-btn-group{display:flex;align-items:center;}
.news-btn-group>*{transition:transform .4s cubic-bezier(.1,.75,.25,1),margin .4s cubic-bezier(.1,.75,.25,1);}
.news-btn-circle,.news-btn-circle:hover{width:50px;height:50px;border-radius:50%;background:#0c0c0c!important;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none;border:none;}
.news-btn-text,.news-btn-text:hover{display:inline-flex;align-items:center;justify-content:center;background:#0c0c0c!important;color:#fff!important;border-radius:50px;padding:15px 25px;font-size:16px;font-weight:600;letter-spacing:-.05em;text-decoration:none;z-index:1;position:relative;}
.news-btn-group a:first-of-type{margin-right:-52px;transform:scale(.5);transform-origin:right center;}
.news-btn-group a:nth-of-type(2){transform:scale(1);}
.news-btn-group a:last-of-type{margin-left:0;transform:scale(1);transform-origin:left center;}
.news-btn-group:hover a:first-of-type{margin-right:0;transform:scale(1);}
.news-btn-group:hover a:last-of-type{margin-left:-52px;transform:scale(.5);}
/* 卡片网格 */
.related-posts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:0 auto;padding:0;margin-top:50px;}
/* 卡片 */
.news-card{width:100%;}
.news-thumb{display:block;overflow:hidden;border-radius:12px;margin-bottom:25px;aspect-ratio:4/3;}
.news-thumb img{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px;transition:transform .5s ease;}
.news-thumb:hover img{transform:scale(1.05);}
.news-content h3{font-size:24px;font-weight:600;letter-spacing:-.04em;line-height:133%;margin-bottom:10px;}
.news-content h3 a{color:#0c0c0c;text-decoration:none;}
.news-date{color:#0c0c0c;font-weight:500;}
.news-date span{color:#837e7e;}
@media(max-width:1199px){
.related-posts-grid{grid-template-columns:repeat(2,1fr);}
.rp-section-title{font-size:56px;}
}
@media(max-width:767px){
.related-posts-section{padding-top:80px;padding-bottom:80px;}
.related-posts-section .container{padding:0 20px;}
.related-posts-grid{grid-template-columns:1fr;gap:40px;padding:0;}
.rp-section-title{font-size:48px;margin-bottom:20px;}
.news-content h3{font-size:20px;}
}
.get-in-touch.color{display:none!important;}
.footer h3,.footer .h3{color:#fff!important;}
.footer .in-touch p{color:#fff!important;}
/* 文章详情页：图片与文字同宽，覆盖主题1250px+负边距 */
.article img{max-width:100%!important;width:auto!important;height:auto;display:block;margin:30px auto!important;}
.article table{max-width:100%;display:block;overflow-x:auto;}

/* orisa-sec2 what we offer */
.orisa-sec2{font-family:'DM Sans',sans-serif;font-size:16px;font-weight:400;line-height:1.2;color:#1d1d1d;background:#f2f2f2;padding:50px 0;}
.orisa-sec2 .container{max-width:1650px;}
@media(min-width:1600px){.orisa-sec2 .container{max-width:1730px;}}
.orisa-sec2 .row.g-3>.col-lg-3{width:380px;flex:0 0 380px;}
.orisa-sec2 .pb-60{padding-bottom:60px;}
.orisa-label{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:-.8px;color:#1e1e1e;background:transparent;border:0;margin-bottom:10px;padding:0;}
.orisa-label-arrow{display:inline-flex;transition:transform .3s;}
.orisa-label:hover .orisa-label-arrow{transform:translate(3px,-3px);}
.orisa-gem{padding-top:90px;padding-left:12px;}
.orisa-gem img{width:auto;height:auto;}
.orisa-heading{font-size:58px;font-weight:700;line-height:1.2;color:#1d1d1d;margin:0 0 8px;}
.orisa-quote{display:flex;gap:12px;align-items:flex-start;padding-top:10px;color:#1d1d1d;}
.orisa-avatars{display:flex;margin-bottom:10px;}
.orisa-sec2 .ms-auto{padding-left:100px;}
.orisa-quote svg{flex-shrink:0;margin-top:2px;}
.orisa-quote span{font-size:14px;line-height:1.4;}
.orisa-avatars{display:flex;margin-bottom:10px;}
.orisa-avatar{width:65px;height:60px;border-radius:8px;overflow:hidden;margin-right:10px;border:2px solid #f2f2f2;transition:transform .3s;}
@media(min-width:1600px){.orisa-avatar{width:68px;height:68px;}}
.orisa-avatar:hover{transform:translateY(-4px);}
.orisa-avatar img{width:100%;height:100%;object-fit:cover;}
/* Cards */
.orisa-card{position:relative;overflow:hidden;border-radius:16px;min-height:480px;max-height:480px;background-size:cover;background-position:center;}
.orisa-sec2 .row.g-3{margin:0 -7.5px;}
.orisa-sec2 .row.g-3>div{padding:0 7.5px;}
@media(min-width:1600px){.orisa-sec2 .row.g-3>.col-lg-3{width:418px;flex:0 0 418px;}}
.orisa-card-link{position:absolute;top:0;left:0;width:100%;height:100%;}
.orisa-card-link-btm{position:absolute;bottom:0;left:0;width:100%;height:auto;top:auto;}
.orisa-card-link-top{position:absolute;top:0;left:0;width:100%;height:45%;}
.orisa-card.card-1::before{content:"";position:absolute;inset:0;opacity:.65;background:linear-gradient(99deg,#000 5%,rgba(0,0,0,.44) 50%,#000 95%);z-index:0;}
.orisa-card.card-2{background:#fefefe;margin-top:120px;}
.orisa-card.card-3{background:#0f0f0f;}
.orisa-card-link-btm img,.orisa-card-link-top img{display:block;width:100%;height:auto;}
.orisa-sec2 .row.g-3>div:nth-child(3) .orisa-card-link-btm img{margin-top:145px;}
.orisa-sec2 .row.g-3>div:nth-child(4) .orisa-card-link-btm img{margin-top:155px;}
.orisa-card-content{position:absolute;left:0;right:0;z-index:1;padding:32px 24px;}
.orisa-card-content.bottom{bottom:0;}
.orisa-card-content.top{top:0;}
.orisa-card-content.mid{top:50%;transform:translateY(-50%);}
.orisa-card-content.text-white,.orisa-card-content.text-white h6,.orisa-card-content.text-white a,.orisa-card-content.text-white p{color:#fff!important;}
.orisa-card-content.text-white p{color:rgba(255,255,255,.8)!important;}
.orisa-card-icon{margin-bottom:12px;}
.orisa-card-content h6{font-size:24px;font-weight:700;line-height:1.2;margin:0 0 8px;color:#1d1d1d;}
.orisa-card-content h6 a{color:inherit;text-decoration:none;}
.orisa-card-content p{font-size:16px;font-weight:500;line-height:1.2;color:#555;margin:0;}
@media(max-width:991px){.orisa-heading{font-size:40px;}.orisa-card.card-2{margin-top:0;}.orisa-card{min-height:400px;max-height:400px;margin-bottom:10px;}.orisa-sec2 .col-md-6[style]{margin-left:0!important;}}
@media(max-width:991px){.img-list h4.wow,.works-section h4.wow{visibility:visible!important;animation:none!important;opacity:1!important;}.works-section .container>h2{opacity:1!important;position:static!important;transform:none!important;}}

/* ===== 案例标题（与业务范围统一风格，保持原固定定位） ===== */
.works-heading{
    font-size: 72px !important;
    font-weight: 500;
    line-height: 0.95;
    color: #0c0c0c;
}
.works-heading .works-subtitle{
    display: block;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #888;
    margin-bottom: 8px;
    font-family: inherit;
}
@media(max-width:991px){
    .works-heading{ font-size: 48px !important; }
}

/* ===== 自定义间距（补参考模板用到的 class，Bootstrap 自带的不够） ===== */
.pt-65{padding-top:65px;}.pb-30{padding-bottom:30px;}.pt-50{padding-top:50px;}.pb-105{padding-bottom:105px;}
.ml-60{margin-left:60px;}.mb-55{margin-bottom:55px;}.p-relative{position:relative;}

/* ===== Digital Studio Hero（照搬参考模板） ===== */
.tp-hero-bg{background:#f6f6f6;}
.ca-hero-spacing{padding-top:43px;}
.ca-hero-area .container{max-width:1800px;}
/* 左侧视频 */
.ca-hero-video{width:327px;height:220px;border-bottom:1px solid rgba(30,30,30,.1);padding-bottom:250px;margin-bottom:15px;}
.ca-hero-video video{width:100%;overflow:hidden;border-radius:12px;}
/* 左侧服务列表 */
.ca-hero-service ul{list-style:none;padding:0;margin:0;}
.ca-hero-service ul li:not(:last-child){margin-bottom:8px;}
.ca-hero-service ul li a{font-weight:700;font-size:18px;letter-spacing:-.03em;color:#0c0c0c;text-decoration:none;}
.ca-hero-service .explore-text{position:relative;display:inline-block;padding:0;transition:transform .5s;transform-origin:50% 0;transform-style:preserve-3d;line-height:1;}
.ca-hero-service .explore-text::before{position:absolute;top:100%;left:0;width:100%;height:100%;content:attr(data-text);transition:color .5s;transform:rotateX(-90deg);transform-origin:50% 0;text-align:center;z-index:-1;}
.ca-hero-service ul li a:hover .explore-text{transform:rotateX(90deg) translateY(-12px);color:#fa2837;}
/* 中间标题 */
.ca-hero-title-wrap{border-left:1px solid rgba(30,30,30,.1);border-right:1px solid rgba(30,30,30,.1);}
.ca-hero-title{font-family:'Outfit','Noto Sans SC','Source Han Sans SC','PingFang SC','Microsoft YaHei',sans-serif;font-weight:900;font-size:140px;letter-spacing:-.02em;line-height:1.08;color:#0c0c0c;}
@media(max-width:1599px){.ca-hero-title{font-size:125px;}.ca-hero-dec p{font-size:16px;}.ca-hero-dec{margin-left:0;}}
@media(max-width:1199px){.ca-hero-title{font-size:100px;}}
@media(max-width:991px){.ca-hero-title{font-size:80px;}}
@media(max-width:767px){.ca-hero-title{font-size:60px;}}.ca-hero-title-wrap .tp-btn{width:100%;background:#fff;color:#0c0c0c;justify-content:space-between;border-radius:0;padding:22px 25px;display:inline-flex;align-items:center;text-decoration:none;font-family:'Inter',sans-serif;font-weight:600;font-size:16px;}
.ca-hero-title-wrap .tp-btn:hover{color:#fff;background:#0c0c0c;}
/* tp-btn 内部文字 + 箭头 */
.ca-hero-title-wrap .tp-btn span{position:relative;z-index:1;overflow:hidden;display:inline-block;}
.ca-hero-title-wrap .tp-btn span .text-1{position:relative;display:block;transition:.3s;}
.ca-hero-title-wrap .tp-btn span .text-2{position:absolute;top:100%;display:block;transition:.3s;}
.ca-hero-title-wrap .tp-btn:hover span .text-1{transform:translateY(-150%);}
.ca-hero-title-wrap .tp-btn:hover span .text-2{top:50%;transform:translateY(-50%);}
.ca-hero-title-wrap .tp-btn i{position:relative;overflow:hidden;width:11px;height:11px;display:inline-flex;margin-left:4px;}
.ca-hero-title-wrap .tp-btn i svg{position:absolute;bottom:-1px;left:1px;transition:all .2s ease-out;}
.ca-hero-title-wrap .tp-btn i svg:last-child{left:-12px;opacity:0;visibility:hidden;}
.ca-hero-title-wrap .tp-btn:hover i svg:first-child{transform:translate(16px,-16px);}
.ca-hero-title-wrap .tp-btn:hover i svg:last-child{opacity:1;visibility:visible;transform:translate(13px,-13px);}
/* 右侧简介 */
.ca-hero-dec{padding-top:280px;}
.ca-hero-dec p{font-weight:500;font-size:16px;line-height:30px;letter-spacing:-.03em;color:#0c0c0c;display:flex;}
.ca-hero-dec p svg{flex:0 0 auto;margin-right:15px;margin-top:7px;}
@media(max-width:1599px){.ca-hero-dec{padding-top:250px;}}
/* 底部大图 */
.ca-hero-thumb{height:720px;overflow:hidden;margin-bottom:0;display:block;}
.ca-hero-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.fix{overflow:hidden;}
.img-cover{width:100%;height:100%;object-fit:cover;}
/* 打字机文字 */
/* 打字机容器 + 红色竖线光标 */
.cd-words-wrapper{display:inline-block;position:relative;text-align:left;overflow:hidden;vertical-align:top;}
.cd-words-wrapper b{display:inline-block;position:absolute;white-space:nowrap;left:0;top:0;opacity:0;font-weight:900;}
.cd-words-wrapper b.is-visible{position:relative;opacity:1;color:#fa2837;}
.cd-words-wrapper::after{content:'';position:absolute;top:0;right:0;width:2px;height:100%;background:#fa2837;animation:cd-blink .8s step-end infinite;}
@keyframes cd-blink{0%,100%{opacity:1;}50%{opacity:0;}}
/* 移动端 */
@media(max-width:991px){
.ca-hero-area .container{max-width:100%;}
.ca-hero-spacing{padding-top:40px;}
.ca-hero-video{width:276px;padding-bottom:220px;}
.ca-hero-title-wrap{border:none;}
.ca-hero-dec{padding-top:0;padding-bottom:80px;margin-left:0!important;}
.ca-hero-dec p br{display:none;}
.ca-hero-thumb{height:500px;}
.ca-hero-thumb img{height:600px;}
.ca-hero-left .pt-65{padding-top:30px;}
}
@media(max-width:767px){
.ca-hero-video{display:none;}
}

/* ===== 公司介绍 Modern Agency About ===== */
.about-intro{background:#09090b;padding:155px 0 160px;}
.about-intro .container{max-width:1600px;}
.about-intro-logo{font-size:42px;letter-spacing:-.04em;text-transform:uppercase;color:#fff;margin-bottom:30px;font-weight:600;}
.about-intro-title{font-size:32px;line-height:1.6;letter-spacing:-.03em;color:#fff;margin-bottom:40px;font-weight:600;max-width:100%;text-align:center;}
.about-intro-thumb{border-radius:10px;display:inline-block;vertical-align:middle;margin:0 6px;}
.about-intro-btn{gap:8px;line-height:1;font-weight:600;font-size:16px;letter-spacing:-.05em;padding:17px 25px;text-transform:capitalize;color:#fff;display:inline-flex;align-items:center;justify-content:center;background-color:#0c0c0c;border-radius:50px;text-decoration:none;transition:all .3s;}
.about-intro-btn:hover{color:#fff;text-decoration:none;}
.about-intro-btn span{position:relative;z-index:1;overflow:hidden;display:inline-block;}
.about-intro-btn span .text-1{position:relative;display:block;transition:.3s;}
.about-intro-btn span .text-2{position:absolute;top:100%;display:block;transition:.3s;}
.about-intro-btn:hover span .text-1{transform:translateY(-150%);}
.about-intro-btn:hover span .text-2{top:50%;transform:translateY(-50%);}
.about-intro-btn i{position:relative;overflow:hidden;width:11px;height:11px;display:inline-flex;margin-left:4px;}
.about-intro-btn i svg{position:absolute;bottom:-1px;left:1px;transition:all .2s ease-out;}
.about-intro-btn i svg:last-child{left:-12px;opacity:0;visibility:hidden;}
.about-intro-btn:hover i svg:first-child{transform:translate(16px,-16px);}
.about-intro-btn:hover i svg:last-child{opacity:1;visibility:visible;transform:translate(13px,-13px);}
@media(max-width:1599px){
.about-intro-logo{font-size:36px;}
.about-intro-title{font-size:28px;}
}
@media(max-width:991px){
.about-intro{padding:80px 0;}
.about-intro-logo{font-size:32px;}
.about-intro-title{font-size:22px;max-width:100%;}
.about-intro-title br{display:none;}
}

/* ===== 案例作品轮播 ===== */
.works-section{overflow:hidden;}
.works-portfolio{padding:80px 60px;max-width:100%;margin:0 auto;overflow:hidden;}
/* 标题 + 分类 Tab 头部 */
.works-portfolio-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px;flex-wrap:wrap;gap:20px;}
.works-portfolio-title{font-size:72px;font-weight:500;line-height:.95;color:#0c0c0c;margin-bottom:0;flex-shrink:0;text-align:left;}
.works-portfolio-title small,.cap-title small,.clients-title small,.rp-section-title small{display:block;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:2px;color:#888;margin-bottom:8px;}

/* 分类 Tabs */
.works-portfolio-tabs{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap;background:#f6f6f6;border-radius:50px;padding:5px 6px;display:inline-flex;}
.works-portfolio-tabs span{padding:14px 28px;font-size:14px;font-weight:700;border-radius:50px;cursor:pointer;color:#0c0c0c;transition:all .3s;white-space:nowrap;}
.works-portfolio-tabs span.active{background:#0c0c0c;color:#fff;}
.works-portfolio-tabs span:hover:not(.active){background:#e8e8e8;}

/* 每排 */
.works-row{position:relative;margin-bottom:90px;overflow:hidden;}
.works-row .swiper-container{overflow:hidden;max-width:100%;}

/* 卡片 */
.works-card{display:block;text-decoration:none;color:inherit;}
.works-card:hover{text-decoration:none;color:inherit;}
.works-card-img{aspect-ratio:1/1;overflow:hidden;border-radius:12px;margin-bottom:18px;background:#f5f5f5;}
.works-card-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s;}
.works-card:hover .works-card-img img{transform:scale(1.05);}
.works-card h3{font-size:28px;font-weight:600;letter-spacing:-.04em;text-transform:uppercase;color:#0c0c0c;margin:0 0 4px;text-align:left;}
.works-card span{font-size:14px;color:#0c0c0c;text-transform:uppercase;display:block;text-align:left;}

/* 覆盖层面板 — 固定位置，卡片从下方穿过 */
.works-overlay{
    position:absolute;top:0;bottom:0;
    left:calc(25% - 0.5rem);
    width:calc(25% + 0.8rem);
    background:#fff;z-index:2;
    display:flex;flex-direction:row;
    align-items:flex-end;
    justify-content:space-between;
    padding:30px 30px 78px;
}
.works-overlay-right{
    left:auto;
    right:calc(25% - 0.5rem);
}
.works-overlay-label{font-family:'Source Han Sans SC','Noto Sans SC','Noto Sans CJK SC',sans-serif;font-size:36px;font-weight:700!important;letter-spacing:-.04em;color:#0c0c0c;text-transform:uppercase;}

/* 1440 屏：图片变小，overlay 内容往上提一点对齐图片底边 */
@media(min-width:992px) and (max-width:1599px){
    .works-overlay{padding-bottom:120px;}
}

/* 箭头 */
.works-card-nav{display:flex;gap:10px;}
.works-card-nav span{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;border:1px solid #ddd;cursor:pointer;color:#0c0c0c;transition:all .3s;background:#fff;}
.works-card-nav span:hover{background:#0c0c0c;color:#fff;border-color:#0c0c0c;}

/* 底部按钮组（水滴融合交互） */
.works-btn-group{display:flex;align-items:center;justify-content:center;margin-top:33px;}
.works-btn-group>*{transition:transform .4s cubic-bezier(.1,.75,.25,1),margin .4s cubic-bezier(.1,.75,.25,1);}
.works-btn-circle,.works-btn-circle:hover{width:50px;height:50px;border-radius:50%;background:#0c0c0c!important;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none;border:none;}
.works-btn-text,.works-btn-text:hover{display:inline-flex;align-items:center;justify-content:center;background:#0c0c0c!important;color:#fff!important;border-radius:50px;padding:15px 25px;font-size:16px;font-weight:600;letter-spacing:-.05em;text-decoration:none;z-index:1;position:relative;}

/* 默认：左圆缩小藏在胶囊下 */
.works-btn-group a:first-of-type{margin-right:-52px;transform:scale(.5);transform-origin:right center;transition:transform .4s ease,margin .4s ease;}
.works-btn-group a:nth-of-type(2){transform:scale(1);transition:transform .4s ease;}
.works-btn-group a:last-of-type{margin-left:0;transform:scale(1);transform-origin:left center;transition:transform .4s ease,margin .4s ease;}

/* hover：左圆弹出，右圆缩进 */
.works-btn-group:hover a:first-of-type{margin-right:0;transform:scale(1);}
.works-btn-group:hover a:last-of-type{margin-left:-52px;transform:scale(.5);}

/* 移动端 */
@media(max-width:991px){
    .works-portfolio{padding:40px 20px 60px;}
    .works-portfolio-header{margin-bottom:40px;}
    .works-portfolio-title{font-size:48px;margin-bottom:20px;}
    .works-portfolio-tabs{display:flex;justify-content:center;}
    .works-portfolio-tabs span{padding:10px 18px;font-size:13px;}
    .works-card h3{font-size:20px;}
    /* 覆盖层：取消绝对定位，恢复正常文档流，放到卡片上方 */
    .works-row{display:flex;flex-direction:column;margin-bottom:30px;}
    .works-overlay{position:relative;left:auto;right:auto;width:auto;padding:0 0 15px;order:-1;}
    .works-overlay-right{left:0;right:auto;}
    .works-overlay-label{font-size:24px;}
    .works-card-nav{justify-content:flex-end;}
}

/* 隐藏旧样式 */
@media(min-width:992px){
    .works-section .img-list{display:none!important;}
}

/* ===== 逐字渐显动画 (ScrollTrigger scrub) ===== */
.reveal-text .char{opacity:1;color:#000;display:inline-block;}

/* ===== 页脚 LightRays WebGL 光射线 ===== */
.footer{position:relative;overflow:hidden;}
.footer .top,.footer .bottom,.footer .footlink{position:relative;z-index:1;}
.light-rays-canvas{display:block;}

/* ===== 案例列表页 / Portfolio Grid（复刻参考站 mg-portfolio 样式） ===== */
.tp-portfolio-inner-ptb{padding:0 0 100px;}
@media(max-width:991px){.tp-portfolio-inner-ptb{padding:50px 0 70px;}}

/* 面包屑 */
.tp-breadcrumb-list{text-align:center;margin-bottom:10px;}
.tp-breadcrumb-list ul{list-style:none;padding:0;margin:0;}
.tp-breadcrumb-list ul li{font-weight:600;text-transform:uppercase;color:#0c0c0c;font-size:16px;list-style:none;display:inline-block;position:relative;}
.tp-breadcrumb-list ul li:not(:last-child){margin-right:10px;padding-right:18px;}
.tp-breadcrumb-list ul li:not(:last-child)::before{content:'';background:#0c0c0c;border-radius:40px;width:7px;height:7px;position:absolute;top:50%;right:0;transform:translateY(-50%);}
.tp-breadcrumb-list ul li a{color:#0c0c0c;text-decoration:none;transition:color .3s;}
.tp-breadcrumb-list ul li a:hover{color:#fa2837;}

/* 标题 */
.tp-breadcrumb-title{letter-spacing:-.03em;font-size:92px;line-height:98%;font-weight:700;color:#0c0c0c;margin:0 0 40px;text-align:center;}
@media(max-width:1399px){.tp-breadcrumb-title{font-size:70px;}}
@media(max-width:991px){.tp-breadcrumb-title{font-size:58px;}}
@media(max-width:575px){.tp-breadcrumb-title{font-size:42px;}}

/* 筛选下拉 */
.portfolio-filter-wrap{margin-bottom:80px;}
.portfolio-filter-wrap .select-box{display:flex;justify-content:center;align-items:center;gap:30px;padding:0;}
.portfolio-filter-wrap .select-box .item{position:relative;}
.portfolio-filter-wrap .select-box .item select{background-color:transparent;color:#0c0c0c;border-width:0 0 1px 0;border-color:#d0d0d0;padding:12px 0;font-size:15px;font-weight:500;width:240px;appearance:none;cursor:pointer;transition:border-color .3s;}
.portfolio-filter-wrap .select-box .item select:hover,.portfolio-filter-wrap .select-box .item select:focus{border-color:#0c0c0c;outline:none;}
.portfolio-filter-wrap .arrow-down{width:12px;position:absolute;top:50%;right:0;transform:translateY(-50%);pointer-events:none;}
@media(max-width:767px){.portfolio-filter-wrap .select-box{flex-direction:column;gap:20px;align-items:stretch;}.portfolio-filter-wrap .select-box .item select{width:100%;}}

.tp-portfolio-inner-ptb .container{max-width:1750px;}

/* 网格沟槽 */
.tp-portfolio-inner-ptb .gx-40{--bs-gutter-x:40px!important;}
.tp-portfolio-inner-ptb .gx-40>[class*=col-]{padding-left:20px!important;padding-right:20px!important;}
@media(max-width:767px){.tp-portfolio-inner-ptb .gx-40{--bs-gutter-x:20px!important;}.tp-portfolio-inner-ptb .gx-40>[class*=col-]{padding-left:10px!important;padding-right:10px!important;}}

/* 卡片 */
.mg-portfolio-item{border-radius:10px;margin-bottom:55px;}
.mg-portfolio-thumb{border-radius:10px;overflow:hidden;will-change:transform;}
.mg-portfolio-thumb img{width:100%;aspect-ratio:830/620;object-fit:cover;border-radius:10px;display:block;}
.mg-portfolio-content{padding:23px 0 0;}
.mg-portfolio-content .cs-portfolio-title{font-size:26px;letter-spacing:-.03em;}
@media(max-width:767px){.mg-portfolio-content .cs-portfolio-title{font-size:22px;}}
.mg-portfolio-content .cs-portfolio-title a{color:#0c0c0c;text-decoration:none;transition:color .3s;}
.mg-portfolio-content .cs-portfolio-title a:hover{color:#fa2837;}

/* 标签胶囊 */
.cs-portfolio-tag ul{list-style:none;padding:0;margin:0;}
.cs-portfolio-tag ul li{list-style:none;display:inline-block;}
.cs-portfolio-tag ul li:not(:first-child){margin-left:5px;}
.cs-portfolio-tag ul li a{letter-spacing:-.05em;text-transform:uppercase;color:#0c0c0c;border:1px solid rgba(27,23,15,.1);border-radius:50px;margin-bottom:5px;padding:6px 16px;font-size:12px;font-weight:600;line-height:1;display:inline-block;text-decoration:none;transition:all .3s;}
.cs-portfolio-tag ul li a:hover{background:#0c0c0c;color:#fff;border-color:#0c0c0c;}

/* 分页样式覆盖（适配新布局） */
.tp-portfolio-inner-ptb .pagination{text-align:center!important;margin-top:20px;}
.tp-portfolio-inner-ptb .pagination ul.page-numbers{display:flex!important;flex-wrap:wrap;justify-content:center!important;padding:0!important;margin:0!important;list-style:none;width:100%;}

/* 旧样式清理 */
.works-section.listing .latest-work-listing{display:none!important;}
@media(min-width:1200px){.works-section.listing{padding-top:0;}}

/* ============================================================
   服务项目页面 /services/
   ============================================================ */

/* --- Hero 标题区（由 service-ref.css 控制，此处不再覆盖） --- */

/* 入场动画元素——初始隐藏，GSAP 淡入动画接管显示（防 window.load 延迟闪白） */
.tp_fade_anim { opacity: 0; }

/* ===== SERVICE PAGE 覆盖（service-ref.css 基础上确保不被WP主题覆盖） ===== */

/* 字体家族近似（参考站 Sequel Sans → 系统字体 500 weight） */
.tp-ff-sequel-medium{font-weight:500;letter-spacing:normal;}
.tp-ff-sequel-roman{font-weight:500;}
.tp-ff-sequel-semi-bold{font-weight:500;}
.tp-ff-sequel-bold-head{font-weight:500;}
.tp-ff-inter{font-family:inherit;}

/* 文字颜色保底 */
.about-us-title{color:#1e1e1e!important;}
.tp-section-title{color:#1e1e1e!important;}
.tp-section-subtitle{color:#1e1e1e!important;}
.tp-service-title a{color:#1e1e1e!important;}
.about-us-history-title{color:#fa2837!important;}
.tp-funfact-numbar,
.tp-funfact-info span,
.tp-funfact-info-title{color:#1e1e1e!important;}
.tp-funfact-content-dec p{color:#1e1e1e!important;}

/* 防止参考站 CSS 设 body overflow hidden */
/* 仅非首页限制溢出，避免 body/html overflow 破坏首页 sticky */
body:not(.home){overflow-x:hidden!important;overflow-y:auto!important;}

/* 内页导航黑字 + 下拉白字 */
body:not(.home) .main-nav>ul>li>a{color:#0c0c0c!important;}
body:not(.home) .main-nav>ul>li.expanded>a,
body:not(.home) .main-nav>ul>li:hover.with-dropdown>a{color:#fff!important;}

/* Gallery wrapper 背景黑色确保 */
.tp-gallery-wrapper{background:#1e1e1e!important;}

/* Reveal-text chars */
.reveal-text .char{color:#b6bcc6;transition:color 0.6s,opacity 0.6s,transform 0.6s;}
.reveal-text .char.revealed{color:#1e1e1e;}

/* Clients logo slider clipping */
@media(max-width:991px){
    .logo-table.slider,
    .logo-table.slider .slick-list,
    .logo-table.slider .slick-track,
    .logo-table.slider .slick-slide{height:240px;}
}

/* Works overlay: 3-per-view range uses stacked layout instead of the 4-slot mask */
@media(min-width:992px) and (max-width:1199px){
    .works-row{display:flex;flex-direction:column;}
    .works-overlay{position:relative;top:auto;bottom:auto;left:auto;right:auto;width:auto;padding:0 0 15px;order:-1;}
    .works-overlay-right{left:auto;right:auto;}
}


/* Blog article body: normalize malformed inline styles from WPS/Word paste.
   Font: pasted paragraphs carry font-family:Calibri which has no CJK glyphs,
   so Chinese falls back to the browser default (SimSun on Windows). The intended
   Source Han Sans declaration is dropped by the parser because WPS omits a
   semicolon: font-family:'Source Han Sans CN Normal'letter-spacing:0
   Inline styles outrank external CSS, so !important is required here.
   Tables: Word writes per-cell border-width but omits border-style, which
   defaults to none, so some cells render no border at all while neighbours do.
   The earlier .article table display:block rule also disables border-collapse,
   hence display:table plus table-layout:fixed for wrapping instead of scrolling. */
.blog-details .article,
.blog-details .article *{font-family:'Noto Sans SC','Source Han Sans SC','PingFang SC','Microsoft YaHei',sans-serif!important;}
/* Size and weight: pasted inline font-size is inconsistent (14px x403, 16px x140,
   18px on h3, 24px on h2) and body inherits font-weight:300 from the theme, which
   reads as Light. Spans inherit from their parent so the messy inline sizes are
   flattened without collapsing the h2/h3 hierarchy. strong keeps its own weight. */
.blog-details .article span{font-size:inherit!important;}
.blog-details .article p,
.blog-details .article li,
.blog-details .article td{font-size:18px!important;line-height:1.8!important;font-weight:400!important;}
.blog-details .article h2{font-size:30px!important;line-height:1.4!important;font-weight:700!important;margin:48px 0 18px;}
.blog-details .article h3{font-size:22px!important;line-height:1.5!important;font-weight:700!important;margin:34px 0 14px;}
.blog-details .article strong{font-weight:700!important;}
.blog-details .article table{display:table!important;width:100%!important;max-width:100%;table-layout:fixed;border-collapse:collapse!important;margin:24px 0;}
.blog-details .article table td,
.blog-details .article table th{border:1px solid #ddd!important;padding:12px 16px!important;vertical-align:top;word-break:break-word;}
.blog-details .article table p{margin:0;}
