/* ===== 联系我们页面（contact.html） ===== */
.ct-main{background:var(--color-light2,#f4f7fb);}

/* 横幅 */
.ct-banner{
    background:
        radial-gradient(900px 320px at 85% -40%, rgba(25,127,222,.35), transparent 60%),
        linear-gradient(135deg,#0B1F3A 0%,#12315E 100%);
    color:#fff;padding:38px 0 46px;
}
.ct-crumb{font-size:13px;opacity:.75;margin-bottom:26px;}
.ct-crumb a{color:#fff;opacity:.85;transition:.2s;}
.ct-crumb a:hover{color:var(--color-primary-light,#5aa9f0);opacity:1;}
.ct-kicker{
    font-size:12px;font-weight:700;letter-spacing:2.5px;color:var(--color-primary-light,#5aa9f0);
    margin-bottom:12px;
}
.ct-kicker--center{text-align:center;}
.ct-title{font-size:40px;font-weight:800;letter-spacing:.5px;margin-bottom:16px;}
.ct-sub{
    font-size:15px;color:rgba(255,255,255,.85);line-height:1.7;
    border-left:3px solid var(--color-primary-light,#5aa9f0);padding-left:14px;max-width:640px;
}

/* 四张联系信息卡片 */
.ct-cards{padding:34px 0 8px;}
.ct-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.ct-card{
    background:#fff;border:1px solid var(--color-border,#e6ecf4);border-radius:14px;
    padding:26px 22px;box-shadow:0 4px 14px rgba(7,22,43,.05);transition:.25s;
}
.ct-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(7,22,43,.1);}
.ct-card-ico{
    width:46px;height:46px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;
    font-size:19px;margin-bottom:16px;
}
.ct-ico--blue{background:#e8f2fe;color:#197fde;}
.ct-ico--green{background:#e6f7ef;color:#12a463;}
.ct-ico--wa{background:#e4f8ea;color:#25c151;}
.ct-ico--cyan{background:#e3f6fb;color:#0e9fc0;}
.ct-card h3{font-size:16px;font-weight:700;color:var(--color-text,#12233c);margin-bottom:10px;}
.ct-card-link{
    display:block;font-size:14px;font-weight:600;color:var(--color-primary,#197fde);
    word-break:break-all;margin-bottom:8px;transition:.2s;
}
.ct-card-link:hover{color:var(--color-primary-light,#5aa9f0);}
.ct-card-addr{font-size:14px;font-weight:600;color:var(--color-primary,#197fde);line-height:1.6;margin-bottom:8px;}
.ct-card p{font-size:12.5px;color:var(--color-muted,#8a97a8);line-height:1.6;}

/* 表单 + 右侧 */
.ct-body{padding:34px 0 46px;}
.ct-cols{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:26px;align-items:start;}
.ct-form-card{
    background:#fff;border:1px solid var(--color-border,#e6ecf4);border-radius:16px;
    padding:34px 38px;box-shadow:0 4px 16px rgba(7,22,43,.05);position:relative;
}
.ct-form-title{font-size:22px;font-weight:800;color:var(--color-text,#12233c);margin-bottom:8px;}
.ct-form-sub{font-size:13.5px;color:var(--color-muted,#8a97a8);margin-bottom:24px;line-height:1.6;}
.ct-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;}
.ct-field{margin-bottom:12px;}
.ct-field label{
    display:block;font-size:13px;font-weight:600;color:var(--color-text,#12233c);margin-bottom:7px;
}
.ct-field label em{color:#e5484d;font-style:normal;}
.ct-field input,.ct-field select,.ct-field textarea{
    width:100%;padding:11px 14px;border:1px solid var(--color-border,#dfe6ef);border-radius:9px;
    font-size:14px;color:var(--color-text,#12233c);background:#fff;outline:none;transition:.2s;
    font-family:inherit;
}
.ct-field textarea{resize:vertical;line-height:1.6;}
.ct-field input:focus,.ct-field select:focus,.ct-field textarea:focus{
    border-color:var(--color-primary-light,#5aa9f0);box-shadow:0 0 0 3px rgba(25,127,222,.12);
}
.ct-field input::placeholder,.ct-field textarea::placeholder{color:#b3bdcb;}
/* 上传占位 */
.ct-upload{
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;
    border:1.5px dashed #cdd8e6;border-radius:10px;padding:14px 16px;margin-bottom:20px;
    color:var(--color-muted,#8a97a8);font-size:13.5px;background:#fafcfe;
}
.ct-upload i{color:var(--color-primary,#197fde);}
.ct-upload span{font-weight:600;color:var(--color-text,#12233c);}
.ct-upload small{width:100%;font-size:12px;color:#a5b0bf;}
.ct-submit{
    width:100%;height:48px;font-size:15px;border:none;cursor:pointer;border-radius:10px;
    background:linear-gradient(135deg,var(--color-primary,#197fde) 0%,var(--color-primary-light,#5aa9f0) 100%);
    color:#fff;font-weight:700;transition:.25s;display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.ct-submit:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(25,127,222,.35);}
.ct-privacy{font-size:12px;color:#a5b0bf;margin-top:14px;display:flex;align-items:center;gap:6px;}

/* 右侧 */
.ct-aside{display:flex;flex-direction:column;gap:22px;}
.ct-company{
    background:#fff;border:1px solid var(--color-border,#e6ecf4);border-radius:16px;overflow:hidden;
    box-shadow:0 4px 16px rgba(7,22,43,.05);
}
.ct-company-photo{
    height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
    background:linear-gradient(135deg,#dfe9f5 0%,#c9d9ee 100%);color:#8fa5c2;
}
.ct-company-photo i{font-size:52px;}
.ct-company-photo span{font-size:12px;letter-spacing:1px;}
.ct-company-photo img{width:100%;height:100%;object-fit:cover;display:block;}
/* 验证码 */
.ct-captcha{display:flex;align-items:center;gap:10px;}
.ct-captcha input{flex:1;}
.ct-captcha .captcha-img{height:46px;border-radius:9px;cursor:pointer;box-shadow:0 0 0 1px var(--color-border,#dfe6ef);}
.ct-company h3{font-size:17px;font-weight:700;color:var(--color-text,#12233c);padding:18px 22px 4px;}
.ct-company ul{list-style:none;padding:10px 22px 18px;}
.ct-company li{
    display:flex;align-items:flex-start;gap:9px;font-size:13.5px;color:var(--color-body,#44546e);
    line-height:1.65;margin-bottom:9px;
}
.ct-company li i{color:var(--color-primary,#197fde);margin-top:4px;width:15px;text-align:center;flex-shrink:0;}
.ct-map-btn{
    display:flex;align-items:center;justify-content:center;gap:8px;margin:0 22px 22px;
    height:44px;border-radius:10px;border:1px solid var(--color-primary-light,#9cc6f2);
    color:var(--color-primary,#197fde);font-size:14px;font-weight:600;transition:.2s;
}
.ct-map-btn:hover{background:var(--color-primary,#197fde);color:#fff;border-color:transparent;}
/* 快速响应深色卡 */
.ct-fast{
    background:linear-gradient(150deg,#0B1F3A 0%,#12315E 100%);border-radius:16px;
    padding:26px;color:#fff;
}
.ct-fast h3{font-size:17px;font-weight:700;margin-bottom:10px;}
.ct-fast p{font-size:13px;color:rgba(255,255,255,.72);line-height:1.7;margin-bottom:18px;}
.ct-fast-btn{
    display:flex;align-items:center;gap:10px;height:46px;padding:0 16px;border-radius:10px;
    font-size:14px;font-weight:600;margin-bottom:12px;transition:.2s;
}
.ct-fast-btn i{font-size:17px;width:20px;text-align:center;}
.ct-fast--wa{background:linear-gradient(135deg,#128c4b 0%,#25c151 100%);color:#fff;}
.ct-fast--wa:hover{filter:brightness(1.1);}
.ct-fast--mail,.ct-fast--tel{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.14);}
.ct-fast--mail:hover,.ct-fast--tel:hover{background:rgba(255,255,255,.2);}

/* 全球服务 */
.ct-global{background:#fff;padding:52px 0 60px;text-align:center;border-top:1px solid var(--color-border,#eef2f7);}
.ct-global-title{font-size:26px;font-weight:800;color:var(--color-text,#12233c);margin-bottom:34px;}
.ct-brands{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;}
.ct-brand{
    display:flex;align-items:center;justify-content:center;height:64px;
    background:#f4f7fb;border:1px solid #e8eef6;border-radius:10px;
    transition:.25s;
}
.ct-brand a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.ct-brand img{max-width:70%;max-height:44px;object-fit:contain;filter:grayscale(1);opacity:.65;transition:.25s;}
.ct-brand:hover{border-color:var(--color-primary-light,#9cc6f2);}
.ct-brand:hover img{filter:grayscale(0);opacity:1;}

/* 微信卡片：左侧文字 + 右侧直接显示二维码 */
.ct-card--wechat{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;}
.ct-ico--wechat{background:#e6f7ef;color:#12a463;}
.ct-card-wechat-main{min-width:0;}
.ct-card-qr{flex:0 0 auto;width:122px;object-fit:contain;border-radius:8px;box-shadow:0 0 0 1px var(--color-border,#e6ecf4);}

/* 微信快捷按钮：悬停向上弹出二维码 */
.ct-fast--wechat{position:relative;}
.ct-fast--wechat .wechat-qrcode{
    top:auto;bottom:calc(100% + 10px);
    width:140px;height:140px;padding:10px;background:#fff;border-radius:10px;
    border:1px solid rgba(255,255,255,.45);box-shadow:0 8px 24px rgba(0,0,0,.32);
    transform:translateX(-50%) translateY(6px);
}
.ct-fast--wechat:hover .wechat-qrcode{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
.ct-fast--wechat .wechat-qrcode::after{
    content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);
    border:7px solid transparent;border-top-color:#fff;
}

/* 响应式 */
@media (max-width:1080px){
    .ct-cols{grid-template-columns:1fr;}
}
@media (max-width:992px){
    .ct-cards-grid{grid-template-columns:repeat(2,1fr);}
    .ct-title{font-size:32px;}
}
@media (max-width:640px){
    .ct-cards-grid,.ct-grid2,.ct-brands{grid-template-columns:1fr;}
    .ct-title{font-size:26px;}
    .ct-form-card{padding:24px 18px;}
    .ct-banner{padding:28px 0 36px;}
}
