/* contact.css — Contact page: info panel + form + map, matching re-courier.com's contact.css pattern */
.contact-section { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; padding: 60px 0 20px; align-items: center; }
.contact-section .detail { margin-bottom: 18px; }
.contact-image img { border-radius: var(--radius); }
@media (max-width: 860px) { .contact-section { grid-template-columns: 1fr; } }

.contact-container { padding: 40px 0 20px; }
.contact-card { background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); padding: 32px; margin-top: 18px; }
.row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.contact-card .field { margin-top: 14px; }
.contact-card .field:first-child { margin-top: 0; }
.required-star { color: #b71c1c; }
.optional-text { color: var(--muted); font-weight: 400; font-size: 0.85rem; }
.turnstile-wrap { margin-top: 14px; }
@media (max-width: 700px) { .row-2 { grid-template-columns: 1fr; } }

.map-section { padding: 40px 0 80px; }
.map-section iframe { border-radius: var(--radius); width: 100%; }
