/* v120 — contact page (loads with cloud-v119.css) */
.rt-contact { padding: 1.4rem 0 3rem; }
.rt-contact-hero {
  display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 1.4rem; align-items: start;
}
.rt-contact-copy h1 {
  font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: 1.35; color: #1b1633; margin: 0.4rem 0 0.7rem;
}
.rt-contact-copy h1 span { color: #6d4dff; }
.rt-contact-copy > p { color: #6b657f; line-height: 1.85; margin: 0 0 1rem; }
.rt-contact-ways {
  display: grid; gap: 0.65rem; margin: 0 0 1rem;
}
.rt-contact-way {
  display: flex; align-items: center; gap: 0.75rem;
  background: #f7f5ff; color: #1b1633; text-decoration: none;
  border-radius: 16px; padding: 0.8rem 0.95rem;
  border: 1px solid transparent; transition: border-color .15s ease, background .15s ease;
}
a.rt-contact-way:hover { border-color: #d9d0ff; background: #f3f0ff; }
.rt-contact-way.is-static { cursor: default; }
.rt-contact-way i {
  width: 2.2rem; height: 2.2rem; border-radius: 12px; flex: 0 0 auto;
  background: #6d4dff center / 1.15rem no-repeat;
  -webkit-mask: none;
  mask: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6.5A2.5 2.5 0 0 1 6.5 4h11A2.5 2.5 0 0 1 20 6.5v11A2.5 2.5 0 0 1 17.5 20h-11A2.5 2.5 0 0 1 4 17.5v-11Z'/%3E%3Cpath d='m5 7 7 5 7-5'/%3E%3C/svg%3E");
}
.rt-contact-way i.is-phone {
  background-color: #14b8a6;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 3.8h2.4l1.2 4.1-1.6 1a11.5 11.5 0 0 0 5.1 5.1l1-1.6 4.1 1.2v2.4a1.8 1.8 0 0 1-1.9 1.8A15.2 15.2 0 0 1 4.7 5.7 1.8 1.8 0 0 1 6.5 3.8Z'/%3E%3C/svg%3E");
}
.rt-contact-way i.is-pin {
  background-color: #f97316;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s6-5.2 6-10a6 6 0 1 0-12 0c0 4.8 6 10 6 10Z'/%3E%3Ccircle cx='12' cy='11' r='2.2'/%3E%3C/svg%3E");
}
.rt-contact-way span { display: grid; gap: 0.1rem; min-width: 0; }
.rt-contact-way b { font-size: 0.92rem; color: #3d355c; }
.rt-contact-way small { color: #6b657f; font-size: 0.95rem; direction: ltr; text-align: start; }
.rt-contact-note { color: #6b657f; margin: 0; line-height: 1.7; }
.rt-contact-note a { color: #6d4dff; font-weight: 700; text-decoration: none; }
.rt-contact-note a:hover { text-decoration: underline; }
.rt-contact-card {
  background: #fff; border: 1px solid #efeaff; border-radius: 28px; padding: 1.25rem 1.2rem 1.4rem;
  box-shadow: 0 16px 40px rgba(40,30,80,.06);
}
.rt-contact-card h2 { margin: 0 0 0.35rem; color: #1b1633; font-size: 1.25rem; }
.rt-contact-lead { color: #6b657f; margin: 0 0 1rem; }
.rt-contact-form { display: grid; gap: 0.75rem; }
.rt-contact-form .rtk-field { display: grid; gap: 0.35rem; margin: 0; }
.rt-contact-form .rtk-field span { color: #3d355c; font-weight: 700; font-size: 0.9rem; }
.rt-contact-form input,
.rt-contact-form textarea {
  width: 100%; border: 1px solid #e6e2f2; border-radius: 14px; padding: 0.75rem 0.85rem;
  background: #fff; color: #1b1633; font: inherit;
}
.rt-contact-form textarea { resize: vertical; min-height: 120px; }
.rt-contact-form .rtk-btn { width: 100%; margin-top: 0.2rem; }
.rt-contact-form .rt-hp {
  position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; pointer-events: none;
}
.rt-contact-err {
  background: #fff1f0; color: #c0392b; border-radius: 12px; padding: 0.55rem 0.75rem; margin: 0 0 0.7rem;
}
.rt-contact-ok { text-align: center; padding: 1.2rem 0.4rem; }
.rt-contact-ok h2 { margin-bottom: 0.5rem; }
.rt-contact-ok p { color: #6b657f; margin: 0 0 1rem; }
@media (max-width: 980px) {
  .rt-contact-hero { grid-template-columns: 1fr; }
}
