/* CONTACT HERO */
.contact-hero { position:relative; overflow:hidden; padding:160px 48px 80px; text-align:center; z-index:1; background:var(--bg-mid); border-bottom:1px solid var(--border-subtle); }
.contact-hero-inner { max-width:640px; margin:0 auto; position:relative; z-index:1; }
.page-eyebrow { display:inline-flex; align-items:center; gap:8px; font-family:var(--font-mono); font-size:0.75rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--pink); background:var(--pink-pale); border:1px solid var(--border); border-radius:var(--radius-pill); padding:7px 18px; margin-bottom:22px; }
.contact-heading { font-family:var(--font-display); font-size:clamp(2rem,5vw,3.5rem); font-weight:900; line-height:1.1; letter-spacing:0.03em; margin-bottom:18px; }
.contact-sub { font-size:1.05rem; color:var(--text-muted); line-height:1.85; }

/* CONTACT SECTION */
.contact-section { background:var(--bg); }
.contact-layout { display:grid; grid-template-columns:1fr 1.5fr; gap:64px; align-items:start; }

/* INFO PANEL */
.info-heading { font-family:var(--font-display); font-size:1.5rem; font-weight:900; letter-spacing:0.05em; margin-bottom:28px; line-height:1.1; }
.info-list { display:flex; flex-direction:column; gap:14px; margin-bottom:32px; }
.info-item { display:flex; align-items:flex-start; gap:14px; background:var(--bg-card); border:1px solid var(--border-subtle); border-radius:var(--radius-md); padding:16px 18px; transition:var(--transition); }
.info-item:hover { border-color:var(--pink); transform:translateX(6px); }
.info-icon { font-size:1.3rem; flex-shrink:0; margin-top:2px; }
.info-title { font-weight:700; font-size:0.95rem; margin-bottom:2px; }
.info-desc { font-size:0.85rem; color:var(--text-muted); }

.turnaround { background:var(--pink-pale); border:1px solid var(--border); border-left:3px solid var(--pink); border-radius:var(--radius-md); padding:18px 22px; margin-bottom:22px; }
.t-label { font-family:var(--font-mono); font-size:0.65rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--pink); margin-bottom:4px; }
.t-value { font-family:var(--font-display); font-size:1.7rem; font-weight:900; margin-bottom:2px; }
.t-sub { font-size:0.82rem; color:var(--text-muted); }

.alt-contact { margin-top:4px; }
.alt-label { font-family:var(--font-mono); font-size:0.7rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--text-muted); margin-bottom:6px; }
.alt-email { color:var(--pink); font-weight:700; font-size:0.95rem; transition:opacity 0.2s; word-break:break-all; }
.alt-email:hover { opacity:0.75; }

/* FORM */
.form-wrap { background:var(--bg-card); border:1px solid var(--border-subtle); border-radius:var(--radius-lg); padding:44px; }
.fgroup { margin-bottom:22px; }
.flabel { display:block; font-family:var(--font-mono); font-size:0.7rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--text-muted); font-weight:700; margin-bottom:8px; }
.req { color:var(--pink); }
.finput { width:100%; background:var(--bg); border:1px solid var(--border-subtle); border-radius:var(--radius-sm); padding:13px 16px; font-family:var(--font-body); font-size:1rem; font-weight:500; color:var(--text); outline:none; transition:border-color 0.2s ease, box-shadow 0.2s ease; }
.finput::placeholder { color:rgba(154,143,181,0.45); }
.finput:focus { border-color:var(--pink); box-shadow:0 0 0 3px rgba(255,99,188,0.12); }
.ftextarea { min-height:140px; resize:vertical; line-height:1.7; }

.radio-wrap { display:flex; flex-wrap:wrap; gap:10px; }
.rpill { display:flex; align-items:center; cursor:pointer; }
.rpill input[type="radio"] { display:none; }
.rpill span { display:inline-flex; align-items:center; gap:6px; background:var(--bg); border:1px solid var(--border-subtle); border-radius:var(--radius-pill); padding:7px 16px; font-size:0.88rem; font-weight:600; color:var(--text-muted); transition:var(--transition); }
.rpill input:checked + span, .rpill span:hover { background:var(--pink-pale); border-color:var(--pink); color:var(--pink); }

.fsubmit { width:100%; justify-content:center; font-size:1rem; padding:15px; margin-top:6px; letter-spacing:0.06em; }

/* RESPONSIVE */
@media (max-width:900px) {
  .contact-hero { padding:130px 20px 60px; }
  .contact-layout { grid-template-columns:1fr; gap:36px; }
}
@media (max-width:600px) { .form-wrap { padding:24px 18px; } }
