.wo-contact-banner video{width:100%;height:100%;object-fit:cover}
.wo-contact-wrap{width:min(1100px,94vw);margin:36px auto 72px}
.wo-contact-head{text-align:center;margin-bottom:40px}
.wo-contact-title{font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:300;color:#1a1a1a;letter-spacing:.06em;margin:0 0 16px}
.wo-contact-line{width:100px;height:4px;background:#007c3a;border-radius:2px;margin:0 auto}
.wo-contact-body{display:grid;grid-template-columns:1fr;gap:28px}
.wo-contact-block{background:#fff;border:1px solid rgba(0,60,120,.08);border-radius:16px;padding:clamp(22px,4vw,32px);box-shadow:0 12px 40px rgba(24,52,88,.06)}
.wo-contact-block h3{font-size:clamp(1.25rem,2vw,1.6rem);font-weight:300;color:#222;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid rgba(0,124,58,.25)}
.wo-contact-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 14px;font-size:15px;line-height:1.75;color:#424242;margin-bottom:14px}
.wo-contact-row:last-child{margin-bottom:0}
.wo-contact-row .iconfont{color:#007c3a;font-size:22px;line-height:1.4;flex-shrink:0}
.wo-contact-label{font-weight:600;color:#333;min-width:4em}
.wo-contact-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:8px}
.wo-contact-person{padding:18px 20px;background:#f8fafb;border-radius:12px;border:1px solid rgba(0,0,0,.05)}
.wo-contact-person strong{display:block;font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:10px}
.wo-contact-person p{margin:0 0 8px;font-size:14px;color:#555;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wo-contact-person p:last-child{margin-bottom:0}
.wo-contact-map{border-radius:16px;overflow:hidden;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 40px rgba(24,52,88,.06);background:#f0f3f6}
.wo-contact-map iframe{display:block;width:100%;height:min(520px,70vh);border:0}
