/* 1. 思源黑体 Regular */
@font-face {
    font-family: "SourceHanSansCN";
    src: url("./font/SourceHanSansCN-Regular.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* 2. 思源黑体 Bold */
@font-face {
    font-family: "SourceHanSansCN";
    src: url("./font/SourceHanSansCN-Bold.otf") format("opentype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* 3. 阿里巴巴普惠体 Regular */
@font-face {
    font-family: "AlibabaPuHuiTi";
    src: url("./font/Alibaba-PuHuiTi-Regular.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* 4. 阿里巴巴普惠体 Medium */
@font-face {
    font-family: "AlibabaPuHuiTi";
    src: url("./font/Alibaba-PuHuiTi-Medium.otf") format("opentype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* 修改滚动条的宽高 */
::-webkit-scrollbar {
    width: 6px;
    /* 滚动条宽度 */
    height: 6px;
    /* 滚动条高度 */
    margin: 0px 4px;
}

::-webkit-scrollbar-thumb {
    border-radius: 3px;
    /* 滚动条圆角 */
    background-color: #ccc;
}

/* 重置样式 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    color: #333;
}

ul {
    list-style: none;
}

a {
    color: inherit;
    text-decoration: inherit;
}

button {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none;
    text-transform: none;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
    border: none;
    outline: none;
}

.hidden {
    display: none !important;
}

.font-bold {
    font-weight: bold;
}

.flex {
    display: flex;
}

.items-center {
    align-items: center;
}

.relative {
    position: relative;
}
body {
    min-width: 1580px;
}

/* 固定头部样式 */
header {
    border: 1px solid transparent;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    padding: 0 230px 0 220px;
    height: 70px;
}

header.hover {
    /* background-image: url("/assets/officialWebsite/header-bg.png"); */
    /* 毛玻璃效果核心代码 */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

header .header-container {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

header .login-register-btn {
    width: 134px;
    height: 38px;
    background: linear-gradient(156deg, #DD63FF 0%, #0084FF 100%);
    border-radius: 6px 6px 6px 6px;
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-weight: 500;
    font-size: 16px;
    color: #FFFFFF;
    line-height: 22px;
    text-align: center;
    font-style: normal;
    text-transform: none;
}

#banner {
    margin-top: 70px;
    position: relative;
    background-image: url('./officialWebsite/banner.png');
    background-repeat: no-repeat;
    background-size: 100%;
    height: 620px;
    padding: 125px 0 139px;
}

#banner h1 {
    height: 96px;
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-weight: 500;
    font-size: 78px;
    color: #333333;
    line-height: 95px;
    letter-spacing: 3px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    margin-bottom: 17px;
}

#banner h1 span {
    background: linear-gradient(180deg, #D53CFF 0%, #008AFF 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    display: inline-block;
    height: 100%;
}

#banner p {
    height: 32px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 400;
    font-size: 22px;
    color: #666666;
    line-height: 32px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    margin-bottom: 48px;
}

.login-register-btn {
    line-height: 36px;
    margin-right: 14px;
    cursor: pointer;
}

#banner .login-register-btn.btn {
    width: 190px;
    height: 50px;
    background: linear-gradient(156deg, #DD63FF 0%, #0084FF 100%);
    border-radius: 8px 8px 8px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: auto;
}

#banner .login-register-btn.btn span {
    width: 112px;
    height: 27px;
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-weight: 500;
    font-size: 20px;
    color: #FFFFFF;
    line-height: 27px;
    text-align: center;
    font-style: normal;
    text-transform: none;
}

/* 主要内容区域 */
main {
    /* background-image: url("/assets/officialWebsite/bg.png"); */
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 30px;
}

.home-title {
    font-weight: 700;
    font-size: 48px;
    color: #333333;
    line-height: 66px;
}

.home-subtitle {
    font-size: 20px;
    color: #333333;
    line-height: 27px;
    margin: 12px 0 38px;
}

.home-chat-input {
    width: 730px;
    height: 140px;
    background: #FFFFFF;
    border-radius: 10px 10px 10px 10px;
    border: 1px solid #EDEDED;
    position: relative;
    margin-bottom: 14px;
}

.home-chat-input .ai-textarea-container {
    position: relative;
    height: 100%;
}

.home-chat-input .ai-textarea-container .textarea-box,
.home-chat-input .ai-textarea-container textarea {
    width: 100%;
    height: 100%;
}

.home-chat-input .ai-textarea-container .textarea-box {
    background: #FFFFFF;
    overflow: hidden;
    border-radius: 10px;
    padding-bottom: 58px;
}

.home-chat-input .ai-textarea-container textarea {
    padding: 14px 14px 0 14px;
    outline: none;
    resize: none;
    font-family: "Microsoft YaHei", sans-serif;
}


.fake-placeholder {
    position: absolute;
    white-space: pre;
    overflow: hidden;
    display: flex;
    align-items: center;
    text-align: left;
    top: 14px;
    left: 14px;
    pointer-events: none;
}

.fake-placeholder-text {
    font-size: 14px;
    color: #999999;
    line-height: 26px;
}

.home-chat-footer {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 14px;
}

.word-limit {
    min-width: 48px;
    height: 16px;
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-size: 12px;
    color: #333333;
    line-height: 16px;
    margin-right: 20px;
}

.word-limit .curr-length,
.word-limit .max-length {
    font-size: 12px;
}

.word-limit .max-length {
    color: #999999;
}

.home-chat-footer-btn-not {
    cursor: not-allowed;
}

.home-chat-footer-btn {
    cursor: pointer;
}

.tag-list {
    width: 100%;
    display: flex;
    justify-content: center;
    min-width: 740px;
    gap: 12px;
}

.tag-list .tag-item {
    height: 36px;
    background: #FFFFFF;
    border-radius: 8px 8px 8px 8px;
    border: 1px solid #EDEDED;
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-weight: 400;
    font-size: 12px;
    color: #333333;
    line-height: 16px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    padding: 10px 16px 10px 14px;
    cursor: pointer;
}

.tag-list .tag-item:hover {
    border: 1px solid #0095FF;
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    color: #0095FF;
}

#fn-intro,
#case-list,
#FQA,
footer {
    position: relative;
}

#fn-intro-divider,
#case-list-divider,
#FQA-divider {
    position: absolute;
    top: -80px;

}

#fn-intro,
#case-list,
footer {
    width: 1440px;
    background: #FFFFFF;
    margin: 0 auto;
}

#fn-intro h2,
#case-list h2 {
    font-family: Source Han Sans CN, Source Han Sans CN;
    font-weight: 700;
    font-size: 46px;
    color: #333333;
    line-height: 69px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    margin-bottom: 6px;
    position: relative;
}

#fn-intro h2 img {
    position: absolute;
    top: 0;
}

#fn-intro .sub-title,
#case-list .sub-title {
    height: 29px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 400;
    font-size: 20px;
    color: #666666;
    line-height: 29px;
    text-align: center;
    font-style: normal;
    text-transform: none;
}

#fn-intro .sub-title {
    margin-bottom: 62px;
}

#fn-intro {
    padding: 94px 0;
    border-radius: 20px;
}

.fn-intro-item {
    display: flex;
    gap: 74px;
    width: 100%;
    height: 650px;
    background: #FAFAFC;
    border-radius: 20px 20px 20px 20px;
    border: 1px solid #E4E5EB;
    padding: 0 60px;
    overflow: hidden;
}

.fn-intro-item:not(:last-child) {
    margin-bottom: 80px;
}

.fn-intro-item .fn-intro-item-r {
    flex: 0 0 820px;
    height: 100%;
    background: #FAFAFC;
}

.fn-intro-item .fn-intro-item-r-content {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.fn-intro-item .fn-intro-item-r video {
    position: relative;
    top: -52px;
    left: -61px;
    object-fit: cover;
    max-width: calc(100% + 122px);
    max-height: calc(100% + 114px);
}

.fn-intro-item.item-1 .fn-intro-item-r {
    padding: 52px 0 52px 0;
}

.fn-intro-item.item-1 .fn-intro-item-r-content {
    border: 1px solid #E4E5EB;
    border-radius: 20px 20px 20px 20px;
    box-shadow: 0px 0px 14px 0px #E7E7E7;
}

.fn-intro-item.item-2 {
    padding: 0 69px 0 0;
    gap: 30px;
}

.fn-intro-item.item-2 .fn-intro-item-r {}

.fn-intro-item.item-2 {
    padding: 0 69px 0 0;
    gap: 30px;
}

.fn-intro-item.item-3 {
    padding: 0 60px 0 61px;
    gap: 74px;
}

.fn-intro-item.item-3 .fn-intro-item-r {
    padding: 50px 0 0 0;
}

.fn-intro-item.item-3 .fn-intro-item-r-content {
    background: #FFFFFF;
    box-shadow: 0px 0px 14px 0px #E7E7E7;
    border-radius: 20px 20px 0px 0px;
    border: 1px solid #E4E5EB;
}

.fn-intro-item.item-4 {
    padding: 0 60px 0 61px;
    gap: 74px;
}

.fn-intro-item.item-4 .fn-intro-item-r {
    padding: 57px 0 0 0;
}
.fn-intro-item.item-4 .fn-intro-item-r video {
    top: -60px;
}
.fn-intro-item.item-4 .fn-intro-item-r-content {
    background: #FFFFFF;
    box-shadow: 0px 0px 14px 0px #E7E7E7;
    border-radius: 20px 20px 0px 0px;
    border: 1px solid #E4E5EB;
}

.fn-intro-item.item-5 .fn-intro-item-r {
    padding: 55px 0 55px 0;
}

.fn-intro-item.item-5 .fn-intro-item-r-content {
    border: 1px solid #E4E5EB;
    border-radius: 20px 20px 20px 20px;
    box-shadow: 0px 0px 14px 0px #E7E7E7;
}

.fn-intro-item .fn-intro-item-l {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.fn-intro-item-l>img {
    width: fit-content;
    margin-bottom: 48px;
}

.fn-intro-item-l .title {
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-weight: 500;
    font-size: 32px;
    color: #333333;
    line-height: 44px;
    text-align: left;
    font-style: normal;
    text-transform: none;
    margin-bottom: 17px;
}

.fn-intro-item-l .desc {
    font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
    font-weight: 400;
    font-size: 20px;
    color: #666666;
    line-height: 40px;
    text-align: left;
    font-style: normal;
    text-transform: none;
    margin-bottom: 20px;
}

.fn-intro-item-l .to-login {
    width: 156px;
    height: 44px;
    border-radius: 200px 200px 200px 200px;
    border: 1px solid #D3D3D3;
    font-family: Source Han Sans CN, Source Han Sans CN;
    font-weight: 400;
    font-size: 18px;
    color: #333333;
    line-height: 42px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.fn-intro-item-l .to-login:hover {
    opacity: .8;
}

.case-list .case-list-wrapper {
    margin-top: 51px;
    margin-bottom: 109px;
}

#footer-section {
    position: relative;
    height: 371px;
}

#footer-section .footer-img {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#footer-section h2 {
    padding-top: 72px;
    height: 144px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 700;
    font-size: 50px;
    color: #FFFFFF;
    line-height: 72px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    margin-bottom: 6px;
}

#footer-section p {
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 400;
    font-size: 20px;
    color: #FFFFFF;
    line-height: 29px;
    text-align: center;
    font-style: normal;
    text-transform: none;
}

#footer-section .login-register-btn.btn {
    width: 190px;
    height: 50px;
    background: #FFFFFF;
    border-radius: 8px 8px 8px 8px;
    border: 1px solid #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: auto;
    margin-top: 38px;
}

#footer-section .login-register-btn.btn span {
    font-family: Source Han Sans CN, Source Han Sans CN;
    font-weight: 700;
    font-size: 20px;
    color: #3C8EFF;
    line-height: 30px;
    text-align: center;
    font-style: normal;
    text-transform: none;
}

footer {
    margin: 60px auto 13px;
}

footer .footer-content {
    width: 100%;
    display: flex;
    gap: 190px;
}

footer .footer-content .links {
    min-width: 474px;
}


footer .footer-content .links p {
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 400;
    font-size: 14px;
    color: #666666;
    line-height: 23px;
    letter-spacing: 1px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}
footer .footer-content .links a.email {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    font-family: Source Han Sans, Source Han Sans;
    font-size: 14px;
    color: #333333;
    line-height: 20px;
    text-align: left;
}
footer .footer-content .links .links-list {
    margin-top: 22px;
}

footer .footer-content>div:not(.links) {
    min-width: 156px;
    display: flex;
    flex-direction: column;
    gap: 21px;
}

footer .footer-content>div:not(.links) h4 {
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 350;
    font-size: 16px;
    color: #333333;
    line-height: 23px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}

footer .footer-content>div:not(.links) .anchor,
footer .footer-content>div:not(.links) span ,
footer .footer-content>div:not(.links) a {
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 350;
    font-size: 14px;
    color: #666666;
    line-height: 20px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}

.footer .products .anchor:hover,
.footer .help a:hover {
    /* color: #0095FF; */
}

.login-register-btn:hover {
    opacity: 0.8;
}

.back-to-top {
    position: fixed;
    bottom: 40px;
    right: 40px;
    z-index: 100;
    background-color: #fff;
    border: 1px solid #F0F0F0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s ease-in-out;
    cursor: pointer;
}

.back-to-top.hidden {
    display: none;
}


/* 头部背景颜色 */
header {
    background-color: transparent;
}


@keyframes blink {

    0%,
    50% {
        opacity: 1;
    }

    50.001%,
    100% {
        opacity: 0;
    }
}

.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 9999;
}

.modal .mask {
    font-family: Source Han Sans, Source Han Sans;
    background: rgba(51,51,51,0.4);
    height: 100vh;
    margin: 0;
    position: absolute;
    left: 0;
    right: 0;
}

.modal .modal-container {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 896px;
    transform: translate(-50%, -50%);
    height: 759px;
    display: flex;
    background-color: white;
    overflow: hidden;
    border-radius: 20px 20px 20px 20px;
}

.modal .left {
    background-image: url('./officialWebsite/modal-bg.png');
    background-size: 100%;
    flex: 0 0 306px;
}

.modal .right {
    padding: 40px;
    flex: 1.5;
    max-width: 590px;
    padding-top: 45px;
    padding-bottom: 51px;
}
.modal .close {
    position: absolute;
    top: 33px;
    right: 42px;
    font-size: 18px;
    color: #666666;
    cursor: pointer;
}
.modal .close svg,
.modal .close svg path{
    color: #666666;
}
.modal .right h2 {
    height: 38px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 700;
    font-size: 26px;
    color: #333333;
    line-height: 38px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    margin-bottom: 10px;
}
.modal .right>p {
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 350;
    font-size: 14px;
    color: #999999;
    line-height: 20px;
    text-align: center;
    font-style: normal;
    text-transform: none;
}
.modal .right form {
    margin-top: 34px;
}
.modal .right form .form-item{
    position: relative;
    margin-bottom: 32px;
}
.modal .right form .form-item label{
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 500;
    font-size: 14px;
    color: #333333;
    line-height: 20px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}
.modal .right form .form-item input{
    margin-top: 12px;
}
.modal .right form .form-item img{
    position: absolute;
    left: 16px;
    top: 49px;
}
.modal .right form .error-info,
.modal .right form .form-item-checkbox-group .error-info{
    visibility: hidden;
    position: absolute;
    left: 0;
    bottom: -6px;
    transform: translateY(100%);
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 350;
    font-size: 13px;
    color: #FF5F5F!important;
    line-height: 19px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}

.modal .right form .form-item.error .error-info,
.modal .right form .form-item-checkbox-group.error .error-info{
    visibility: visible;
}
.modal .right input[type="text"],
.modal .right input[type="email"] {
    width: 100%;
    padding: 10px 47px;
    border: 1px solid #E1E1E1;
    border-radius: 6px 6px 6px 6px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 350;
    font-size: 14px;
    color: #333333;
    line-height: 20px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}
.modal .right form .form-item.error input {
    border: 1px solid #FF5F5F;
}
.modal .right form .form-item.error input::placeholder {
    color: #999999;
}
.modal .right .form-item-checkbox-group {
    position: relative;
    margin-bottom: 40px;
    padding-bottom: 7px;
}
.modal .right .form-item-checkbox-group p {
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 500;
    font-size: 14px;
    color: #333333;
    line-height: 20px;
    text-align: left;
    font-style: normal;
    text-transform: none;
    margin-bottom: 12px;
}
.modal .right .form-checkbox-group {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 12px;
    column-gap: 19px;
}
.modal .right .form-checkbox-group label {
    height: 50px;
    background: #FFFFFF;
    border-radius: 6px 6px 6px 6px;
    border: 1px solid #E1E1E1;
    display: flex;
    align-items: center;
    padding: 0 0 0 22px;
    gap: 12px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 400;
    font-size: 14px;
    color: #333333;
    line-height: 20px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}
.modal .right input[type="checkbox"] {
    width: 18px;
    height: 18px;
}
input[type="checkbox"]:checked {
    accent-color: #3C8EFF; /* 选中时变为绿色 */
}
.modal .right button {
    width: 100%;
    height: 46px;
    background: #3C8EFF;
    border-radius: 10px 10px 10px 10px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 500;
    font-size: 16px;
    color: #FFFFFF;
    line-height: 23px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    cursor: pointer;
}

.modal .right button:hover {
    opacity: .8;
}
.message {
    height: 58px;
    background: #008F34;
    box-shadow: 0px 0px 10px 0px rgba(159,159,159,0.3);
    border-radius: 54px 54px 54px 54px;
    opacity: 0.6;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 500;
    font-size: 18px;
    color: #FFFFFF;
    line-height: 58px;
    text-align: center;
    font-style: normal;
    text-transform: none;
    position: fixed;
    top: 101px;
    left: 50%;
    z-index: 99999;
    transform: translate(-50%, 0);
    padding: 0 30px;
    display: flex;
    align-items: center;
    white-space: nowrap;
}
.message svg {
    margin-right: 14px;
    font-size: 29px;
    color: #FFFFFF;
}
.message svg path{
    color: #FFFFFF;
}
.img-start {
    position: absolute;
    top: -24px;
    left: 153px;
}

.footer-icp {
    position: relative;
    padding: 29px 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-icp span {
    height: 20px;
    font-family: Source Han Sans, Source Han Sans;
    font-weight: 400;
    font-size: 14px;
    color: #666666;
    line-height: 20px;
    text-align: left;
    font-style: normal;
    text-transform: none;
}

.footer-icp::before {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #F0F0F0;
}

.footer-icp .split-line {
    display: block;
    width: 1px;
    height: 16px;
    margin: 0 8px;
    background-color: #DEDEDE;
}