/* ── Contact Hero ─────────────────────────────────────────── */
.ct-hero{position:relative;overflow:hidden;background:transparent}
.ct-hero-w{position:relative;z-index:1;max-width:1024px;margin:0 auto;padding:clamp(100px,13vw,136px) 24px clamp(48px,6vw,72px);text-align:center}
.ct-hero-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 20px;border-radius:999px;font-family:'Rubik',sans-serif;font-size:11px;font-weight:700;letter-spacing:.05em;color:#3f3f46;background:rgba(255,255,255,.85);border:1px solid rgba(0,0,0,.07);box-shadow:0 1px 2px rgba(0,0,0,.04);backdrop-filter:blur(10px);margin-bottom:clamp(16px,2.4vw,22px)}
.ct-hero-h1{font-family:'Rubik',sans-serif;font-size:clamp(32px,5vw,56px);font-weight:800;line-height:1.15;letter-spacing:-.03em;color:#09090b;margin-bottom:14px}
.ct-hero-p{font-size:clamp(15px,1.6vw,17px);line-height:1.65;color:#71717a;max-width:520px;margin:0 auto 28px}
.ct-hero-pills{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
.ct-pill{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid rgba(0,0,0,.09);font-size:13px;font-weight:500;color:#3f3f46;backdrop-filter:blur(8px);transition:all .15s;white-space:nowrap}
.ct-pill:hover{background:#fff;border-color:rgba(45,106,79,.28);color:#2D6A4F;box-shadow:0 2px 14px rgba(0,0,0,.08)}

/* ── Contact Body ─────────────────────────────────────────── */
.ct-body{padding:0 0 clamp(64px,10vw,108px)}
.ct-in{max-width:1024px;margin:0 auto;padding:0 clamp(20px,4vw,28px)}
.ct-grid{display:grid;grid-template-columns:1fr 320px;gap:clamp(20px,3vw,36px);align-items:start}

/* ── Form Card ────────────────────────────────────────────── */
.ct-form-card{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:22px;padding:clamp(24px,3vw,36px);box-shadow:0 4px 32px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.04)}
.ct-form{display:flex;flex-direction:column;gap:16px}
.ct-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ct-field{display:flex;flex-direction:column;gap:6px}
.ct-label{font-family:'Rubik',sans-serif;font-size:13px;font-weight:600;color:#3f3f46}
.ct-req{color:#2D6A4F}
.ct-wrap{position:relative}
.ct-ico{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#a1a1aa;pointer-events:none}
.ct-input{width:100%;background:#FAFAF8;border:1px solid rgba(0,0,0,.1);border-radius:12px;padding:13px 42px 13px 14px;font-family:inherit;font-size:14px;color:#09090b;outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.ct-input::placeholder{color:#b0b0b8}
.ct-input:focus{border-color:rgba(45,106,79,.4);box-shadow:0 0 0 3px rgba(45,106,79,.1);background:#fff}
.ct-textarea{resize:vertical;min-height:136px;padding:13px 14px;line-height:1.55}
.ct-submit{width:100%;justify-content:center;padding:14px 24px;font-size:14px;border-radius:12px;margin-top:4px}

/* ── Alert ────────────────────────────────────────────────── */
.ct-alert{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:10px;background:#fef2f2;border:1px solid rgba(220,38,38,.18);color:#991b1b;font-size:13px;font-weight:500}

/* ── Success ──────────────────────────────────────────────── */
.ct-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(32px,5vw,56px) clamp(16px,4vw,40px)}
.ct-success-ico{width:68px;height:68px;border-radius:50%;background:#E8F5EE;display:flex;align-items:center;justify-content:center;color:#2D6A4F;margin-bottom:20px;box-shadow:0 0 0 8px rgba(45,106,79,.07)}
.ct-success-h{font-family:'Rubik',sans-serif;font-size:22px;font-weight:800;color:#09090b;margin-bottom:8px}
.ct-success-p{font-size:15px;color:#71717a;line-height:1.6}

/* ── Info Column ──────────────────────────────────────────── */
.ct-info{display:flex;flex-direction:column;gap:10px}
.ct-info-card{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.07);box-shadow:0 2px 10px rgba(0,0,0,.04);transition:border-color .18s,box-shadow .18s}
.ct-info-card:hover{border-color:rgba(45,106,79,.2);box-shadow:0 6px 22px rgba(0,0,0,.07)}
.ct-info-ico{width:40px;height:40px;flex-shrink:0;border-radius:10px;background:#E8F5EE;color:#2D6A4F;display:flex;align-items:center;justify-content:center}
.ct-info-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.ct-info-lbl{font-family:'Rubik',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#a1a1aa}
.ct-info-val{font-size:14px;font-weight:600;color:#09090b;text-decoration:none;transition:color .15s;word-break:break-all}
a.ct-info-val:hover{color:#2D6A4F}
.ct-info-sub{font-size:12px;color:#71717a}

/* ── Responsive ───────────────────────────────────────────── */
@media(max-width:860px){
  .ct-grid{grid-template-columns:1fr}
  .ct-info{display:grid;grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .ct-row{grid-template-columns:1fr}
  .ct-info{grid-template-columns:1fr}
  .ct-form-card{border-radius:18px;padding:20px}
}