/* Page: contact + about + thank you + 404 */
.contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 48px; align-items: start; }
.contact-aside { border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 26px; background: var(--bg-soft); }
.contact-aside h2 { font-size: 1.05rem; }
.contact-aside .link-list li:last-child { border-bottom: 0; }
.form-card { border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px; background: #fff; }
.form-card h2 { margin-bottom: 6px; }
.form-card .form-note { margin-bottom: 22px; display: block; }

.about-banner { border-radius: var(--radius-lg); border: 1px solid var(--line); overflow: hidden; }
.about-story { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 44px; align-items: center; }
.about-story img { border-radius: var(--radius-lg); border: 1px solid var(--line); }
.about-quote { font-size: 1.14rem; color: var(--ink); border-left: 3px solid var(--brand); padding-left: 18px; margin: 0 0 22px; }

.thanks-card { max-width: 680px; margin: 0 auto; text-align: center; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 48px 34px; background: #fff; }

.notfound-layout { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 48px; align-items: start; }
.jump-results { list-style: none; padding: 0; margin: 18px 0 0; }
.jump-results li { margin: 0 0 8px; }
.jump-results a { font-weight: 600; }
@media (max-width: 1024px) {
  .contact-layout, .about-story, .notfound-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .about-story img { order: -1; }
}
