/* ═══════════════════════════════════════════════════════════════
   CONTACT V2 — page-specific styles
   Prefix: cv-
   Accent: Sapphire Teal (unified sitewide)
   ═══════════════════════════════════════════════════════════════ */

/* ─── HERO ─── */
.cv-hero{padding-top:calc(var(--nav-h) + var(--sp-6));padding-bottom:var(--sp-5)}

/* ─── HERO TWO-COLUMN GRID ─── */
.cv-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--sp-5);align-items:center}
@media(max-width:820px){.cv-hero-grid{grid-template-columns:1fr;gap:var(--sp-4)}}

/* ─── LEFT COLUMN ─── */
.cv-hero-left{display:flex;flex-direction:column;gap:0}
.cv-hero-left .gv-h1{margin-bottom:12px;line-height:1.4;font-size:clamp(1.8rem,3.6vw,2.4rem);text-align:left}
.cv-hero-lead{margin-bottom:12px;max-width:54ch;font-size:0.85rem;line-height:1.7}.cv-hero-trust{font-size:0.82rem;color:var(--ink-muted);line-height:1.6;margin-bottom:var(--sp-2);max-width:50ch}

/* ─── CONTACT ITEMS (below left text) ─── */
.cv-hero-contacts{display:flex;flex-direction:column;gap:14px}
.cv-contact-item{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--ink-dim)}
.cv-contact-item svg{width:18px;height:18px;flex-shrink:0;stroke:var(--accent)}
.cv-contact-item a{color:var(--accent);transition:color .3s}
.cv-contact-item a:hover{color:var(--accent-bright)}

/* ─── RIGHT COLUMN: FORM ─── */
.cv-form-wrap{background:var(--glass-2-bg);backdrop-filter:blur(var(--glass-2-blur)) saturate(1.4);-webkit-backdrop-filter:blur(var(--glass-2-blur)) saturate(1.4);border:1px solid var(--glass-2-border);border-radius:var(--r-lg);padding:var(--sp-4);box-shadow:0 8px 32px -10px rgba(18,107,120,0.14)}
.cv-form{display:flex;flex-direction:column;gap:18px}
.cv-field{display:flex;flex-direction:column;gap:6px}
.cv-label{font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-dim)}
.cv-input{width:100%;padding:14px 16px;border-radius:var(--r-sm);border:1px solid var(--glass-1-border);background:var(--glass-1-bg);backdrop-filter:blur(var(--glass-1-blur));-webkit-backdrop-filter:blur(var(--glass-1-blur));color:var(--ink);font-family:'Inter',sans-serif;font-size:14px;outline:none;transition:border-color .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);-webkit-appearance:none}
.cv-input:focus{border-color:var(--brand-teal);background:var(--glass-2-bg);box-shadow:var(--glass-teal-glow)}
.cv-input::placeholder{color:var(--ink-muted)}
.cv-input.error{border-color:#dc2626}
.cv-input.error:focus{box-shadow:0 0 0 3px rgba(220,38,38,.1)}
.cv-textarea{resize:vertical;min-height:120px;line-height:1.6}
.cv-field-msg{font-size:11px;color:#dc2626;min-height:0;overflow:hidden;max-height:0;transition:max-height .3s var(--ease),margin .3s var(--ease)}
.cv-field-msg.show{max-height:40px}
.cv-submit{width:100%;padding:16px 28px;font-size:12px}

/* ─── RESPONSIVE ─── */
@media(max-width:768px){
  .cv-hero{padding-top:calc(var(--nav-h) + var(--sp-4))}
  .cv-form-wrap{padding:var(--sp-3)}
}
@media(max-width:640px){
  .cv-input{padding:12px 14px;font-size:13px}
  .cv-submit{padding:14px 24px}
}
@media(prefers-reduced-motion:reduce){
  .cv-input,.cv-field-msg{transition:none}
}