/* Chỉ tải tại trang Liên hệ; không thay đổi bố cục các trang khác. */
.contact-page { padding-top:36px; padding-bottom:48px; }
.contact-page-head { margin-bottom:24px; }
.contact-page-head>p { margin:0 0 8px; color:var(--muted); font-size:13px; font-weight:700; letter-spacing:.06em; }
.contact-page-head h1 { margin:0; color:var(--orange); font-size:clamp(26px,3vw,38px); line-height:1.2; }
.contact-page-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:24px; align-items:start; }
.contact-page-card { min-width:0; padding:24px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.contact-page-card h2 { margin:0 0 14px; color:var(--ink); font-size:20px; line-height:1.4; }
.contact-page-card p { margin:0 0 18px; color:var(--ink); font-size:15px; line-height:1.7; }
.contact-page-card p:last-child { margin-bottom:0; }
.contact-page-card a { color:var(--orange); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.contact-page-card a:focus-visible { outline:2px solid var(--orange); outline-offset:4px; }
.contact-page-details { margin:0 0 20px; }
.contact-page-details>div { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1fr); gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.contact-page-details dt { margin:0; color:var(--muted); font-size:14px; line-height:1.6; }
.contact-page-details dd { min-width:0; margin:0; color:var(--ink); font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.contact-page-card .contact-page-note { padding:14px; border-radius:8px; background:#f0f4f2; color:var(--muted); font-size:13px; }
.contact-page-channels { display:grid; gap:16px; margin:20px 0 28px; padding:18px; border:1px solid var(--line); border-radius:10px; list-style:none; }
.contact-page-channels li { min-width:0; display:grid; gap:6px; }
.contact-page-channels span { color:var(--muted); font-size:13px; }
.contact-page-channels a { font-size:17px; font-weight:600; }
.contact-page-channels small { color:var(--muted); font-size:13px; line-height:1.6; }
@media (max-width:900px) {
  .contact-page-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
}
@media (max-width:520px) {
  .contact-page { padding-top:24px; padding-bottom:32px; }
  .contact-page-card { padding:18px; }
  .contact-page-details>div { grid-template-columns:minmax(0,1fr); gap:4px; }
  .contact-page-channels { padding:14px; }
}
