/* ═══════════════ 联系方式卡片 ═══════════════ */
.contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:56px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:32px 28px;display:flex;flex-direction:column;gap:16px;transition:transform .4s var(--ease),box-shadow .4s;position:relative;overflow:hidden;}
.contact-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px -16px rgba(42,26,16,.2)}
.contact-card-icon{width:52px;height:52px;border-radius:4px;background:rgba(196,69,44,.08);display:flex;align-items:center;justify-content:center;color:var(--accent);flex:none;}
.contact-card-icon svg{width:26px;height:26px}
.contact-card h3{font-family:var(--display);font-weight:900;font-size:18px;margin-bottom:4px}
.contact-card .label{font-size:12px;color:var(--muted);letter-spacing:.1em;margin-bottom:8px}
.contact-card .value{font-size:16px;font-weight:700;color:var(--ink);line-height:1.6}
.contact-card .value.phone{font-family:var(--display);font-size:22px;color:var(--accent)}
.contact-card .desc{font-size:13px;color:var(--muted);line-height:1.7;margin-top:auto}
.contact-card.featured{background:var(--world);color:var(--canvas);border-color:var(--world)}
.contact-card.featured .contact-card-icon{background:rgba(196,69,44,.2);color:var(--accent)}
.contact-card.featured h3{color:var(--canvas)}
.contact-card.featured .label{color:rgba(244,238,227,.5)}
.contact-card.featured .value{color:var(--canvas)}
.contact-card.featured .value.phone{color:#fff;font-size:24px}
.contact-card.featured .desc{color:rgba(244,238,227,.55)}
@media(max-width:900px){.contact-cards{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.contact-cards{grid-template-columns:1fr}}

/* ═══════════════ 培训地点 + 地图 ═══════════════ */
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:start;margin-top:56px}
.location-info h3{font-family:var(--display);font-weight:900;font-size:24px;margin-bottom:16px}
.location-info p{font-size:15px;color:var(--muted);line-height:1.9;margin-bottom:16px}
.location-detail{margin-top:28px;display:flex;flex-direction:column;gap:20px}
.location-detail-item{display:flex;gap:16px;align-items:flex-start}
.location-detail-item .icon{width:40px;height:40px;border-radius:4px;background:rgba(196,69,44,.08);display:flex;align-items:center;justify-content:center;color:var(--accent);flex:none}
.location-detail-item .icon svg{width:20px;height:20px}
.location-detail-item h4{font-size:15px;font-weight:700;margin-bottom:4px}
.location-detail-item p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}
.map-placeholder{position:relative;border-radius:4px;overflow:hidden;background:var(--canvas-2);border:1px solid var(--line);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;}
.map-placeholder img{width:100%;height:100%;object-fit:cover;opacity:.6}
.map-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(42,24,16,.55);color:#fff;text-align:center;padding:32px;}
.map-overlay .pin{width:48px;height:48px;color:var(--accent);margin-bottom:16px}
.map-overlay h4{font-family:var(--display);font-weight:900;font-size:20px;margin-bottom:8px}
.map-overlay p{font-size:14px;color:rgba(255,255,255,.75);line-height:1.7}
.map-overlay .map-note{margin-top:16px;font-size:12px;color:rgba(255,255,255,.5);letter-spacing:.05em}
@media(max-width:900px){.location-grid{grid-template-columns:1fr}}

/* ═══════════════ 到店指引 ═══════════════ */
.transit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.transit-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:28px 24px}
.transit-card h4{font-family:var(--display);font-weight:900;font-size:17px;margin-bottom:16px;display:flex;align-items:center;gap:10px}
.transit-card h4 svg{width:22px;height:22px;color:var(--accent)}
.transit-card p{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:8px}
.transit-card p strong{color:var(--ink);font-weight:700}
@media(max-width:760px){.transit-grid{grid-template-columns:1fr}}

/* ═══════════════ 常见联系问题 ═══════════════ */
.faq-list{max-width:860px;margin:48px auto 0;display:flex;flex-direction:column;gap:2px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:box-shadow .3s}
.faq-item.open{box-shadow:0 16px 40px -16px rgba(42,26,16,.2)}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px 28px;gap:20px;text-align:left;font-weight:700;font-size:15.5px;font-family:var(--display);background:none;border:none;cursor:pointer;color:var(--ink);}
.faq-q .icon{width:28px;height:28px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--canvas-2);transition:transform .3s,background .3s;}
.faq-item.open .faq-q .icon{transform:rotate(45deg);background:var(--accent);color:#fff}
.faq-q .icon svg{width:14px;height:14px}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq-a-inner{padding:0 28px 24px;font-size:14.5px;color:var(--muted);line-height:1.9}
.faq-a-inner strong{color:var(--ink)}