.banner2{min-height: 440px;background: #000822 url(/assets/images/contact/contactbanner.jpg) center bottom no-repeat;}
.banner2 .w1200{height: 390px;}
/*contact us*/

.contact-wrapper{
    width:1200px;
    margin:40px auto;
    display:flex;
    gap:30px;
}

.card{
    background:#fff;
    border-radius:20px;
    padding:35px;
    box-shadow:0 5px 20px rgba(0,0,0,.05);
}
.card a{border-bottom: 1px solid #edf1f7;display:block}
.card a .iconfont:before{display: inline-block;transition: transform 0.3s ease;}
.card a:hover .iconfont:before{transform: scale(1.3);}
.card a:hover .info-text{color:var(--blue2)}
.left-panel{
    flex: 0 0 50%;
}

.right-panel{
    flex: 0 0 50%;
}

.contact-wrapper h2{
    font-size:26px;
    font-weight:700;
    color:#0b2d6d;
    margin-bottom:35px;
}

.form-row{
    display:flex;
    gap:20px;
    margin-bottom:20px;
}

.form-group{
    flex:1;
}

label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    color:#41536b;
    font-weight:600;
}

input,
select,
textarea{
    width:100%;
    height:48px;
    border:1px solid #d8e1ef;
    border-radius:10px;
    padding:0 15px;
    font-size:15px;
    outline:none;
    transition:.3s;
}

textarea{
    height:120px;
    padding-top:15px;
    resize:none;
}

input:focus,
select:focus,
textarea:focus{
    border-color:#2477ff;
}

.full{
    width:100%;
    margin-bottom:20px;
}

.submit-btn{
    width:100%;
    height:58px;
    border:none;
    border-radius:10px;
    cursor:pointer;
    font-size:24px;
    font-weight:600;
    color:#fff;
    background:linear-gradient(
        90deg,
        #1163e8 0%,
        #24a7f2 50%,
        #7ee18d 100%
    );
}

.info-item{
    display:flex;
    gap:20px;
    align-items:flex-start;
    padding:25px 0;
}

.icon-box{
    width:70px;
    height:70px;
    border-radius:50%;
    background:#f3f8ff;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#1f78ff;
    
    flex-shrink:0;
}
.icon-box .iconfont{font-size:30px;}
.map-marker .iconfont{font-size:30px;color:#f00}

.info-title{
    font-size:18px;
    font-weight:700;
    margin-bottom:8px;
    color:#33445f;
}

.info-text{
    font-size:18px;
    line-height:1.7;
    color:#233856;
    display: inline-block;transition: transform 0.3s ease;
}

.map-box{
    margin-top:20px;
    height:300px;
    border-radius:18px;
    overflow:hidden;
    position:relative;
    background:#e9eef6;
}

.map-box img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.map-marker{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    background:#fff;
    padding:12px 24px;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(0,0,0,.1);
    font-size:22px;
    font-weight:700;
    color:#0b2d6d;
    display: flex;
    align-items: center;
    gap: 10px;
}

.required{
    color:#ff5b5b;
}
.contact-wrapper select{
    appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 20px center; /* 控制箭头位置：距离右边20px */
  padding-right: 45px; /* 给箭头留出空间，防止文字被遮挡 */
}
/* ===== contact.css — 响应式适配 ===== */
@media screen and (max-width:1024px){
  .contact-wrapper{width:auto;margin:30px 20px;gap:20px}
  .left-panel,.right-panel{flex:0 0 48%}
  .contact-wrapper h2{font-size:22px}
}

@media screen and (max-width:480px){
  .contact-wrapper{margin:15px 0}
  .card{border-radius:12px;padding:15px}
  .contact-wrapper h2{font-size:18px;margin-bottom:15px}
  .form-row{gap:8px;margin-bottom:8px}
  .full{margin-bottom:8px}
  label{font-size:12px;margin-bottom:5px}
  input,select,textarea{height:38px;font-size:13px;border-radius:8px;padding:0 12px}
  textarea{height:80px;padding-top:10px}
  .submit-btn{height:44px;font-size:16px;border-radius:8px}
  .info-item{padding:12px 0;gap:12px}
  .icon-box{width:42px;height:42px}
  .icon-box .iconfont{font-size:18px}
  .info-title{font-size:14px}
  .info-text{font-size:13px}
  .map-box{height:160px;border-radius:12px}
  .map-marker{font-size:13px;padding:6px 12px}
  .map-marker .iconfont{font-size:18px}
}
