/* ============ Coach Bonga — Apply / lead funnel ============ */
.ap-wrap{ max-width:680px; margin:0 auto; padding:2.6rem 1.2rem 5rem; }
.ap-head{ text-align:center; margin-bottom:1.8rem; }
.ap-title{ font-family:var(--font-display); font-size:clamp(2rem,6vw,2.8rem); line-height:1.08; margin:.4rem 0 .7rem; color:var(--ink); }
.ap-sub{ color:var(--muted); font-size:1.05rem; line-height:1.6; max-width:32rem; margin:0 auto; }
.ap-trust{ display:flex; flex-wrap:wrap; gap:.5rem 1.3rem; justify-content:center; margin-top:1.1rem; color:var(--green); font-size:.86rem; font-weight:600; }

.ap-form{
  background:var(--card); border:1px solid var(--line); border-radius:var(--radius);
  padding:1.8rem 1.6rem; box-shadow:var(--shadow-xl);
  display:flex; flex-direction:column; gap:1.5rem;
}
/* a class display rule beats the `hidden` attribute's UA style — restore it */
.ap-form[hidden]{ display:none; }
.ap-q > label,
.ap-form .field > label{ display:block; font-weight:700; color:var(--ink); margin-bottom:.7rem; font-size:1rem; }
.ap-opt{ color:var(--ash); font-weight:500; font-size:.85rem; }

.ap-seg{ display:flex; flex-wrap:wrap; gap:.55rem; background:none; padding:0; border:none; }
.ap-seg .seg-btn{
  flex:0 1 auto; border:1px solid var(--line); background:var(--bg);
  color:var(--body); border-radius:999px; padding:.6rem 1.05rem;
  font-family:var(--font-body); font-size:.92rem; font-weight:600; cursor:pointer;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.ap-seg .seg-btn:hover{ border-color:var(--accent-soft); }
.ap-seg .seg-btn.active{ background:var(--accent); border-color:var(--accent); color:#fef9ef; }

.ap-two{ display:grid; grid-template-columns:1fr 1fr; gap:1.1rem; }
.ap-form .field input,
.ap-form .field textarea{
  width:100%; border:1px solid var(--line); border-radius:14px; background:var(--bg);
  color:var(--ink); font-family:var(--font-body); font-size:1rem; padding:.8rem .9rem; outline:none;
}
.ap-form .field input:focus,
.ap-form .field textarea:focus{ border-color:var(--accent-soft); }
.ap-form .field textarea{ resize:vertical; }

.gb-err{ color:var(--red); font-weight:600; font-size:.9rem; min-height:1.1em; margin:0; }
.ap-fine{ text-align:center; color:var(--ash); font-size:.82rem; margin:.2rem 0 0; }

.ap-done{ text-align:center; background:var(--card); border:1px solid var(--accent-soft); border-radius:var(--radius); padding:2.6rem 1.6rem; box-shadow:var(--shadow-xl); }
.ap-done-ic{ font-size:2.6rem; }
.ap-done h2{ font-family:var(--font-display); font-size:1.7rem; color:var(--ink); margin:.5rem 0 .6rem; }
.ap-done p{ color:var(--body); line-height:1.6; max-width:26rem; margin:0 auto 1.4rem; }
.ap-done .btn{ margin-bottom:.6rem; }

@media (max-width:520px){
  .ap-form{ padding:1.4rem 1.1rem; }
  .ap-two{ grid-template-columns:1fr; }
}
