/* ============================================================
   GP WhatsApp Form (v1.2.0) — separate file so existing GP
   widgets are never touched. All classes start with gp-waf-.
   ============================================================ */
.gp-waf{background:#fff !important;border-radius:22px !important;padding:26px 24px !important;box-shadow:0 20px 50px rgba(0,0,0,.18) !important;
  color:var(--gp-ink,#152437) !important;max-width:560px !important;margin:0 auto !important;box-sizing:border-box !important;line-height:1.6 !important;}
.gp-waf *{box-sizing:border-box !important;}
.gp-waf[dir="rtl"],.gp-waf[dir="rtl"] *{direction:rtl !important;text-align:right;}
.gp-waf[dir="ltr"],.gp-waf[dir="ltr"] *{direction:ltr !important;text-align:left;}
.gp-waf [hidden]{display:none !important;}

.gp-waf-title{font-family:'Cairo',sans-serif !important;font-size:24px !important;font-weight:800 !important;color:var(--gp-navy,#023a63) !important;margin:0 0 4px !important;line-height:1.3 !important;}
.gp-waf-sub{font-size:14px !important;color:var(--gp-muted,#64748b) !important;margin:0 0 16px !important;}

/* tabs */
.gp-waf-tabs{display:grid !important;grid-template-columns:1fr 1fr !important;gap:6px !important;background:#F3F6F9 !important;border-radius:999px !important;padding:5px !important;margin:0 0 18px !important;}
.gp-waf-tab{border:0 !important;background:transparent !important;border-radius:999px !important;padding:10px 6px !important;font-family:'Cairo',sans-serif !important;font-weight:700 !important;font-size:14px !important;
  color:var(--gp-muted,#64748b) !important;cursor:pointer !important;text-align:center !important;box-shadow:none !important;line-height:1.3 !important;}
.gp-waf-tab.gp-active{background:#fff !important;color:var(--gp-navy,#023a63) !important;box-shadow:0 3px 10px rgba(2,58,99,.14) !important;}

/* questions */
.gp-waf-q{border:0 !important;margin:0 0 16px !important;padding:0 !important;min-width:0 !important;}
.gp-waf-q legend,.gp-waf-label{display:flex !important;align-items:center !important;gap:8px !important;font-family:'Cairo',sans-serif !important;font-weight:700 !important;font-size:15px !important;
  color:var(--gp-navy,#023a63) !important;margin:0 0 10px !important;padding:0 !important;width:auto !important;}
.gp-waf-n{width:24px !important;height:24px !important;border-radius:50% !important;background:var(--gp-navy,#023a63) !important;color:#fff !important;font-size:12.5px !important;
  display:inline-flex !important;align-items:center !important;justify-content:center !important;flex:none !important;text-align:center !important;}

/* service tiles */
.gp-waf-cats{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:8px !important;}
.gp-waf-cats label,.gp-waf-opts label{position:relative !important;cursor:pointer !important;margin:0 !important;display:block !important;}
.gp-waf-cats input,.gp-waf-opts input{position:absolute !important;opacity:0 !important;width:1px !important;height:1px !important;margin:0 !important;}
.gp-waf-cats span{display:flex !important;align-items:center !important;justify-content:center !important;min-height:52px !important;padding:8px 6px !important;
  border:1.5px solid rgba(2,58,99,.16) !important;border-radius:12px !important;font-size:13.5px !important;font-weight:700 !important;color:var(--gp-navy,#023a63) !important;
  background:#FBFDFE !important;text-align:center !important;line-height:1.3 !important;transition:border-color .15s,background .15s !important;}
.gp-waf-cats label:hover span{border-color:var(--gp-navy,#023a63) !important;}
.gp-waf-cats input:checked+span{background:var(--gp-navy,#023a63) !important;border-color:var(--gp-navy,#023a63) !important;color:#fff !important;}

/* sub-options + small chips */
.gp-waf-subs{margin-top:12px !important;padding:12px !important;background:#F3F6F9 !important;border-radius:14px !important;}
.gp-waf-subs-title{font-size:13.5px !important;font-weight:700 !important;color:var(--gp-navy,#023a63) !important;margin:0 0 8px !important;}
.gp-waf-opts{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:8px !important;}
.gp-waf-opts-4{grid-template-columns:repeat(4,1fr) !important;}
.gp-waf-mt{margin-top:8px !important;}
.gp-waf-opts span{display:flex !important;align-items:center !important;justify-content:center !important;min-height:42px !important;padding:6px 4px !important;
  border:1.5px solid rgba(2,58,99,.16) !important;border-radius:10px !important;font-size:13px !important;font-weight:600 !important;color:var(--gp-ink,#152437) !important;
  background:#fff !important;text-align:center !important;line-height:1.25 !important;transition:border-color .15s,background .15s !important;}
.gp-waf-opts label:hover span{border-color:var(--gp-navy,#023a63) !important;}
.gp-waf-opts input:checked+span{border-color:var(--gp-wa,#25D366) !important;background:color-mix(in srgb, var(--gp-wa,#25D366) 12%, #fff) !important;
  color:#0E5A2C !important;box-shadow:inset 0 0 0 1px var(--gp-wa,#25D366) !important;}

.gp-waf-input{width:100% !important;border:1.5px solid rgba(2,58,99,.16) !important;border-radius:12px !important;padding:13px 14px !important;font-size:16px !important;
  background:#FBFDFE !important;color:var(--gp-ink,#152437) !important;font-family:inherit !important;height:auto !important;box-shadow:none !important;}
.gp-waf-input:focus{border-color:var(--gp-navy,#023a63) !important;outline:none !important;}
.gp-waf-cats input:focus-visible+span,.gp-waf-opts input:focus-visible+span,.gp-waf-input:focus-visible,.gp-waf-tab:focus-visible,.gp-waf-submit:focus-visible{outline:3px solid var(--gp-gold,#C9A34E) !important;outline-offset:2px !important;}
.gp-waf-q.gp-err .gp-waf-cats span,.gp-waf-q.gp-err .gp-waf-opts span,.gp-waf-q.gp-err .gp-waf-input{border-color:var(--gp-red,#bf1214) !important;}

.gp-waf-error{background:#FDECEA !important;color:#8E1A12 !important;border-radius:10px !important;padding:10px 14px !important;font-size:13.5px !important;font-weight:600 !important;margin:0 0 12px !important;}
.gp-waf-submit{width:100% !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:10px !important;border:0 !important;border-radius:999px !important;
  padding:17px 16px !important;background:var(--gp-wa,#25D366) !important;color:#fff !important;font-family:'Cairo',sans-serif !important;font-weight:800 !important;font-size:17px !important;
  cursor:pointer !important;box-shadow:0 8px 22px color-mix(in srgb, var(--gp-wa,#25D366) 35%, transparent) !important;transition:filter .15s,transform .15s !important;text-align:center !important;line-height:1.3 !important;}
.gp-waf-submit:hover{filter:brightness(.92) !important;transform:translateY(-2px) !important;}
.gp-waf-submit svg{width:21px !important;height:21px !important;flex:none !important;}
.gp-waf-note{font-size:12px !important;color:var(--gp-muted,#64748b) !important;margin:10px 0 0 !important;text-align:center !important;}
.gp-waf-cb>p{font-size:14px !important;color:var(--gp-muted,#64748b) !important;margin:0 0 14px !important;}

@media(max-width:420px){
  .gp-waf{padding:22px 16px !important;}
  .gp-waf-cats{grid-template-columns:repeat(2,1fr) !important;}
  .gp-waf-opts{grid-template-columns:repeat(2,1fr) !important;}
  .gp-waf-opts-3{grid-template-columns:repeat(3,1fr) !important;}
}
@media(prefers-reduced-motion:reduce){.gp-waf *{transition:none !important;}}
