/* contact.css — 상담페이지 전용. tokens/main 다음에 로드. */
.prep-grid{ display: grid; gap: 14px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 768px){ .prep-grid{ grid-template-columns: repeat(3, 1fr); } }
.prep-card{ text-align: center; }
.prep-card .prep-num{ display: block; font-family: var(--font-sans); font-weight: 800; font-size: 26px; color: var(--amber-deep); letter-spacing: -0.02em; margin-bottom: 10px; }
.prep-card h3{ font-size: 16px; margin-bottom: 4px; }

.flow-strip{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; }
.flow-strip .flow-node{ padding: 12px 18px; border-radius: var(--r-chip); background: var(--mist); border: 1px solid var(--line); font-weight: 700; font-size: 14.5px; color: var(--ink); }
.flow-strip .flow-arrow{ color: var(--amber); font-weight: 800; }

.ref-grid{ display: grid; gap: 14px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 768px){ .ref-grid{ grid-template-columns: repeat(3, 1fr); } }
.ref-card{ display: flex; align-items: center; gap: 12px; }
.ref-card .ref-icon{ flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--amber-soft); color: var(--amber-deep); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; }
.ref-card p{ margin: 0; font-size: 14.5px; font-weight: 600; }
