/* Banner容器 */
.about-banner {
    background: url('../images/contact-top-bg.png') no-repeat center;
}
/* 右侧图片区域 */
.about-banner-image {
    width: 308px;
    height: 396px;
    position: absolute;
    right: 287px;
    top: auto;
    bottom: 0;
}
/* 响应式设计 */
@media (max-width: 1200px) {
    .about-banner-image {
        right: 87px;
    }
}
@media (max-width: 787px) {
    .about-banner-image {
        right: 17px;
        width: 108px;
        height: 136px;
    }
}

/* 联系表单容器 */
.contact-form-wrapper {
    display: flex;
    gap: 54px;
    max-width: 1600px;
    margin: 0 auto;
    margin-bottom: 64px;
}

/* 左侧联系信息区域 */
.contact-info {
    width: 565px;
    background: #FCBF4A;
    border-radius: 24px;
    padding: 42px 107px 42px 52px;
    position: relative;
    color: white;
}

.contact-details {
    margin-top: 42px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.contact-item {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.contact-item-header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.icon {
    width: 54px;
    height: 54px;
    background: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-item-content {
    line-height: 32px;
}

.quote-icon {
    position: absolute;
    bottom: 42px;
    right: 32px;
    width: 58px;
    height: 58px;
    background: url('../images/contact-quote-icon.svg') no-repeat center;
}

/* 右侧表单区域 */
.form-section {
    flex: 1;
    padding: 16px 0;
}

.form-section h3 {
    color: #002F49;
    line-height: 1.2;
    margin-bottom: 24px;
}

.contact-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.form-row {
    display: flex;
    gap: 24px;
}

.form-group {
    flex: 1;
    position: relative;
}

.form-group input,
.form-group textarea{
    width: 100%;
    background: white;
    border-radius: 12px;
    border: none;
    padding: 20px 24px;
    box-sizing: border-box;
    font-size: 20px;
    color: #999999;
    font-family: Basic;
}
.form-group input::placeholder,.form-group textarea::placeholder {
    color: #999;
    font-family: Basic;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
}

.form-group input {
    height: 64px;
}

.form-group textarea {
    height: 185px;
    resize: none;
}

.required {
    color: #D80C18;
    font-size: 20px;
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
}

/* 提交按钮样式 */
.submit-btn-wrapper {
}

.submit-btn {
    position: relative;
    width: 213px;
    height: 73px;
    background: linear-gradient(to right, #002F49 50%, transparent 50%);
    border-radius: 20px;
    cursor: pointer;
    overflow: hidden;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    justify-content: center;
    background-clip: padding-box;
    border: none;
}
.submit-btn::before {
    content: '';
    position: absolute;
    left: 41px;
    bottom: 0;
    right: 0;
    top: 0;
    background: #FCBF4A;
    clip-path: polygon(0 -2px, 100% 0, 100% 100%, 20% 110%);
    z-index: 1;
    transition: all 0.3s;
    border-radius:0 20px 20px 0;
    transform: translateZ(0); /* 添加硬件加速 */
}

.submit-btn span {
    color: white;
    position: relative;
    z-index: 2;
}

.submit-btn:hover {
    gap: 26px;
}

.submit-btn:hover::before {
    background: #FCBF4A;
}

.submit-btn::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    background: #002F49;
    z-index: 1;
    transition: all 0.3s ease-out;
    border-radius:20px;
    transform-origin: bottom right;
    opacity: 1;
    transform: translateZ(0); /* 添加硬件加速 */
    backface-visibility: hidden; /* 防止出现虚影 */
    will-change: transform, opacity; /* 优化动画性能 */
}
.submit-btn:hover::after {
    transform: scale(0);
    opacity: 0;
}


.submit-btn img {
    width: 20px;
    height: 20px;
    position: relative;
    z-index: 2;
}

/* 响应式设计 */
@media (max-width: 1366px) {
    .contact-form-wrapper {
        gap: 32px;
    }

    .contact-info {
        width: 480px;
        padding: 32px 107px 40px 32px;
    }
}

@media (max-width: 991px) {
    .contact-form-wrapper {
        flex-direction: column;
    }

    .contact-info {
        width: 100%;
    }

    .form-row {
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    .contact-info {
        padding: 24px 107px 24px 24px;
    }

    .contact-details {
        margin-top: 60px;
    }
}
