*,
:after,
:before {
    box-sizing: border-box
}

:after,
:before {
    text-decoration: inherit;
    vertical-align: inherit
}

html {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    cursor: default;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    word-break: break-word
}

body,
dl dl,
dl ol,
dl ul,
ol dl,
ol ol,
ol ul,
ul dl,
ul ol,
ul ul {
    margin: 0
}

hr {
    overflow: visible
}

nav ol,
nav ul {
    list-style: none;
    padding: 0
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

abbr[title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: 700
}

small {
    font-size: 80%
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle
}

iframe {
    border-style: none
}

table {
    border-collapse: collapse
}

button,
input,
select {
    margin: 0
}

button {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

progress {
    display: inline-block;
    vertical-align: baseline
}

select {
    text-transform: none
}

textarea {
    margin: 0;
    overflow: auto;
    resize: vertical
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

::-moz-focus-inner {
    border-style: none;
    padding: 0
}

:-moz-focusring {
    outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
    box-shadow: none
}

details {
    display: block
}

dialog {
    background-color: #fff;
    border: solid;
    color: #000;
    display: none;
    height: -moz-fit-content;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: -moz-fit-content;
    width: fit-content
}

dialog[open] {
    display: block
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

[tabindex],
area,
button,
input,
label,
select,
summary,
textarea {
    touch-action: manipulation
}

[hidden] {
    display: none
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled=true],
[disabled] {
    cursor: not-allowed
}

[aria-hidden=false][hidden] {
    display: inline;
    display: initial
}

[aria-hidden=false][hidden]:not(:focus) {
    clip: rect(0, 0, 0, 0);
    position: absolute
}

html {
    font-size: max(14px, min(1.0526315789vw, 16px))
}

@media screen and (max-width: 1366px) {
    html {
        font-size: -1
    }
}

body,
html {
    font-smooth: always;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: #fff;
    color: #333;
    font-family: segoe-vf, sans-serif;
    font-weight: 400;
    letter-spacing: normal;
    line-height: normal;
    min-width: 360px;
}

body {
    font-size: 1rem
}

::-moz-selection {
    background: #103578;
    color: #fff
}

::selection {
    background: #103578;
    color: #fff
}

code,
pre {
    font-family: Menlo, Monaco, Consolas, monospace;
    font-size: 13px
}

hr {
    border: none;
    border-top: 1px solid #333;
    height: 0;
    margin: 2rem 0;
    padding: 0
}

sup {
    line-height: .5
}

.svg-icon circle,
.svg-icon ellipse,
.svg-icon path,
.svg-icon polygon,
.svg-icon rect,
.svg-icon svg circle,
.svg-icon svg ellipse,
.svg-icon svg path,
.svg-icon svg polygon,
.svg-icon svg rect {
    fill: currentColor
}

.container {
    margin: 0 auto;
    max-width: 1520px;
    padding: 0 40px;
    padding: 0 min(5vw, 40px);
    position: relative;
    width: 100%
}

@media screen and (max-width: 860px) {
    .container {
        padding-left: 24px;
        padding-right: 24px
    }
}

.visually-hidden {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px
}

a {
    color: inherit
}

a,
a:hover {
    text-decoration: inherit
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: normal
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0
}

button,
h1,
h2,
h3,
h4,
h5,
h6,
p {
    font-size: inherit;
    padding: 0
}

button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none transparent;
    background-color: transparent;
    border: none;
    border-radius: 0;
    border-spacing: 0;
    color: inherit;
    display: block;
    font-family: inherit;
    height: auto;
    line-height: 1;
    outline: none;
    text-align: left;
    text-indent: 0;
    width: auto
}

ol,
ul {
    list-style: none
}

ol,
ol li,
ul,
ul li {
    margin: 0;
    padding: 0
}

.display1 {
    font-size: max(32px, min(3.6842105263vw, 56px))
}

.display1,
.display2 {
    font-family: segoe-vf, sans-serif;
    font-weight: 400;
    letter-spacing: -.0125em;
    line-height: 1.15
}

.display2 {
    font-size: max(28px, min(2.7631578947vw, 42px))
}

.h1 {
    font-family: segoe-vf, sans-serif;
    font-size: max(32px, min(3.6842105263vw, 56px));
    font-weight: 400;
    letter-spacing: -.0125em;
    line-height: 1
}

.h2 {
    font-size: 42px;
    font-size: max(28px, min(2.7631578947vw, 42px))
}

.h2,
.h3 {
    font-family: segoe-vf, sans-serif;
    font-weight: 400;
    letter-spacing: -.0125em;
    line-height: 1.15
}

.h3 {
    font-size: max(24px, min(2.2368421053vw, 34px))
}

.h4 {
    font-size: max(21px, min(1.8421052632vw, 28px))
}

.h4,
.h5 {
    font-family: segoe-vf, sans-serif;
    font-weight: 400;
    letter-spacing: -.0125em;
    line-height: 1.15
}

.h5,
.sh1 {
    font-size: max(19px, min(1.5789473684vw, 24px))
}

.sh1,
.sh2 {
    font-family: segoe-vf, sans-serif;
    font-weight: 400;
    line-height: 1.35
}

.sh2 {
    font-size: max(17px, min(1.3157894737vw, 20px))
}

.sh3 {
    font-size: max(16px, min(1.1842105263vw, 18px));
    line-height: 1.35
}

.hero,
.sh3 {
    font-family: segoe-vf, sans-serif;
    font-weight: 400
}

.hero {
    font-size: max(40px, min(4.7368421053vw, 72px));
    letter-spacing: -.0125em;
    line-height: 1
}

.link {
    -selector: ".link";
    color: var(--theme-link);
    cursor: pointer;
    -webkit-text-decoration: none;
    text-decoration: none
}

.link:hover {
    color: var(--theme-link-hover)
}

.link:active,
.link:hover {
    -webkit-text-decoration: underline;
    text-decoration: underline
}

.link:active {
    color: var(--theme-link-active)
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .3s cubic-bezier(.165, .84, .44, 1);
    transition-delay: 0
}

.fade-enter,
.fade-enter-from,
.fade-leave-to {
    opacity: 0
}

body,
html {
    scroll-behavior: smooth
}

body.nav--color-light #nav {
    color: #fff
}




/* banner动画 */
.animated {
	-moz-animation-duration: 1s;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-moz-animation-fill-mode: both;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}

.fadeInRight {
	-moz-animation-name: fadeInRight;
	-webkit-animation-name: fadeInRight;
	animation-name: fadeInRight
}

@keyframes fadeInRight {
	0% {
		-moz-transform: translateX(40px);
		-ms-transform: translateX(40px);
		-webkit-transform: translateX(40px);
		transform: translateX(40px);
		opacity: 0
	}

	100% {
		-moz-transform: translateX(0px);
		-ms-transform: translateX(0px);
		-webkit-transform: translateX(0px);
		transform: translateX(0px);
		opacity: 1
	}
}

@keyframes myfirst {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes myfirst2 {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes myf {
    0% {
        opacity: 1;
        top: 70px;
        width: 300px;
        height: 60px;
        line-height: 60px;
        right: 100px
    }

    to {
        top: 20px;
        width: 120;
        height: 40px;
        line-height: 40px;
        opacity: 0;
        right: 80px
    }
}


@keyframes myf2 {
    0% {
        top: 90px;
        right: 100px
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes bounceIn {

    0%,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1;
        transform: scaleX(1)
    }
}


@keyframes slideInDown {
    0% {
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }

    to {
        transform: translateZ(0)
    }
}
@keyframes slideInLeft {
    0% {
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }

    to {
        transform: translateZ(0)
    }
}

@keyframes pulse {
    0% {
        transform: scaleX(1)
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }

    to {
        transform: scaleX(1)
    }
}
@keyframes navJump {
    0% {
        transform: translate(0)
    }

    10% {
        transform: translateY(5px) scaleX(1.2) scaleY(.8)
    }

    30% {
        transform: translateY(-13px) scaleX(1) scaleY(1) rotate(5deg)
    }

    50% {
        transform: translateY(0) scale(1) rotate(0)
    }

    55% {
        transform: translateY(0) scaleX(1.1) scaleY(.9) rotate(0)
    }

    70% {
        transform: translateY(-4px) scaleX(1) scaleY(1) rotate(-2deg)
    }

    80% {
        transform: translateY(0) scaleX(1) scaleY(1) rotate(0)
    }

    85% {
        transform: translateY(0) scaleX(1.05) scaleY(.95) rotate(0)
    }

    to {
        transform: translateY(0) scaleX(1) scaleY(1)
    }
}