/* =========================================================
   联系我们页样式 contact.html
   ========================================================= */
.contact-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.contact-info-card{background:#fff;border-radius:20px;padding:30px 24px;text-align:center;border:1px solid var(--c-line);transition:all var(--transition);position:relative;overflow:hidden}
.contact-info-card::after{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--c-primary),var(--c-green));transform:scaleX(0);transition:transform var(--transition)}
.contact-info-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-md);border-color:transparent}
.contact-info-card:hover::after{transform:scaleX(1)}
.contact-info-card .cic-icon{width:60px;height:60px;margin:0 auto 16px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--c-primary-soft),var(--c-green-soft));color:var(--c-primary)}
.contact-info-card .cic-icon svg{width:28px;height:28px}
.contact-info-card h3{font-size:16px;margin-bottom:8px}
.contact-info-card a,.contact-info-card p{font-size:13.5px;color:var(--c-body);line-height:1.7}
.contact-info-card a:hover{color:var(--c-primary)}
.contact-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:stretch}
.contact-form-card{background:#fff;border-radius:26px;border:1px solid var(--c-line);padding:40px;box-shadow:var(--shadow-sm)}
.contact-form-card h3{font-size:22px;margin-bottom:8px}
.contact-form-card .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-info-side{display:flex;flex-direction:column;gap:18px}
.contact-info-side .cis-box{background:linear-gradient(180deg,#f6fafe,#fff);border:1px solid var(--c-line);border-radius:20px;padding:26px}
.contact-info-side .cis-box h4{font-size:16px;margin-bottom:14px;display:flex;align-items:center;gap:9px}
.contact-info-side .cis-box h4 svg{width:20px;height:20px;color:var(--c-primary)}
.contact-info-side .cis-box ul li{display:flex;gap:10px;padding:7px 0;font-size:13.5px;color:var(--c-body);align-items:flex-start}
.contact-info-side .cis-box ul li svg{width:16px;height:16px;color:var(--c-green);flex:0 0 auto;margin-top:4px}
.map-box{position:relative;border-radius:20px;overflow:hidden;height:260px;background:linear-gradient(135deg,var(--c-primary-soft),var(--c-green-soft));border:1px solid var(--c-line)}
.map-box .map-pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50% 50% 50% 0;background:linear-gradient(135deg,var(--c-primary),var(--c-green));transform:translate(-50%,-100%) rotate(-45deg);display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px;animation:pulseRing 2.4s infinite}
.map-box .map-pin svg{width:22px;height:22px;color:#fff;transform:rotate(45deg)}
.map-box .map-note{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.95);border-radius:12px;padding:10px 16px;font-size:13px;color:var(--c-ink);box-shadow:var(--shadow-sm)}
.form-tip{font-size:12.5px;color:var(--c-muted);margin-top:6px;display:flex;align-items:center;gap:6px}
.form-tip svg{width:14px;height:14px;color:var(--c-green)}

@media (max-width:992px){
  .contact-info-grid{grid-template-columns:repeat(2,1fr)}
  .contact-wrap{grid-template-columns:1fr}
}
@media (max-width:768px){
  .contact-info-grid{grid-template-columns:1fr}
  .contact-form-card{padding:26px 20px}
  .contact-form-card .form-row{grid-template-columns:1fr}
}
