.contact-wrap { padding: 8rem 5vw 5rem; display: grid; grid-template-columns: 1fr 1.4fr; gap: 5rem; align-items: start; }
.contact-info h1 { font-family: var(--font-display); font-size: clamp(2.5rem, 4.5vw, 4.5rem); line-height: 0.95; margin-bottom: 1.2rem; }
.contact-info h1 em { color: var(--red); font-style: normal; }
.contact-info > p { font-size: 0.95rem; font-weight: 300; color: rgba(248,249,252,0.68); line-height: 1.75; margin-bottom: 2.5rem; }
.ci-item { display: flex; gap: 1rem; margin-bottom: 1.5rem; align-items: flex-start; }
.ci-ico { width: 38px; height: 38px; background: var(--red); display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--white); }
.ci-ico svg.lucide { width: 1.1rem; height: 1.1rem; }
.ci-title { font-family: var(--font-condensed); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--red); margin-bottom: 0.3rem; }
.ci-body { font-size: 0.88rem; color: rgba(248,249,252,0.7); line-height: 1.65; }
.ci-body strong { color: var(--white); }
.contact-form { background: var(--navy-mid); padding: 3rem; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
.form-group { display: flex; flex-direction: column; gap: 0.4rem; margin-bottom: 1.2rem; }
.form-group label { font-family: var(--font-condensed); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--grey-text); }
.form-group input,
.form-group select,
.form-group textarea {
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
  color: var(--white); font-family: var(--font-body); font-size: 0.9rem;
  padding: 0.75rem 1rem; outline: none; transition: border-color 0.2s; width: 100%;
}
.form-group input::placeholder,
.form-group textarea::placeholder { color: var(--grey-text); }
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus { border-color: var(--red); }
.form-group select option { background: var(--navy-mid); }
.form-group textarea { resize: vertical; min-height: 120px; }
.form-submit { width: 100%; }
.req { color: var(--red); font-style: normal; }

/* Honeypot — visually hidden, only bots fill it */
.hp-field {
  position: absolute; left: -9999px; top: -9999px;
  width: 1px; height: 1px; overflow: hidden;
  opacity: 0; pointer-events: none;
}

/* Flash messages */
.form-flash {
  display: flex; align-items: center; gap: 0.7rem;
  padding: 1rem 1.4rem; margin-bottom: 1.5rem;
  font-size: 0.9rem; font-weight: 400; line-height: 1.5;
  border-left: 3px solid;
}
.form-flash svg.lucide { width: 1.1rem; height: 1.1rem; flex-shrink: 0; }
.form-flash--success {
  background: rgba(40,180,90,0.08); border-color: #28b45a; color: #5de09a;
}
.form-flash--error {
  background: rgba(214,48,24,0.08); border-color: var(--red); color: #f07060;
}

@media (max-width: 900px) { .contact-wrap { grid-template-columns: 1fr; gap: 3rem; } }
@media (max-width: 600px) { .form-row { grid-template-columns: 1fr; } }
