#rbhsw-root, #rbhsw-root * {
  box-sizing: border-box;
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
}

#rbhsw-root {
  --blue: #0f8fc3;
  --blue-dark: #0a6f99;
  --navy-1: #173a7a;
  --navy-2: #1d4c9a;
  --green: #08b83e;
  --green-dark: #069a34;
  --red: #e53946;
  --red-dark: #cf2f3b;
  --ink: #1f2937;
  --muted: #6b7280;
  --line: #dbe7ef;
  --bg: #f7fbfd;
  --panel: #ffffff;
  --shadow: 0 12px 30px rgba(0,0,0,.08);
  color: var(--ink);
  background: #ffffff;
}

#rbhsw-root .wrap { max-width: 1180px; margin: 0 auto; padding: 24px; }

#rbhsw-root .hero {
  background: linear-gradient(135deg, #10285f 0%, var(--navy-1) 55%, var(--navy-2) 100%);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: var(--shadow);
  padding: 28px 30px;
  color: #fff;
}

#rbhsw-root .hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:26px; align-items:start; }

#rbhsw-root .hero-help-row {
  display:flex; align-items:center; gap:14px; margin-bottom:16px; color:#fff; font-weight:700; font-size:15px; opacity:.95;
}
#rbhsw-root .hero-help-row:after { content:""; flex:1; height:1px; background:rgba(255,255,255,.45); }

#rbhsw-root .pill {
  display:inline-block; background:rgba(255,255,255,.14); border:2px solid rgba(255,255,255,.28); color:#fff;
  padding:8px 14px; border-radius:999px; font-size:14px; font-weight:700; margin-bottom:22px;
}

#rbhsw-root h1 { margin:2px 0 14px; font-size:clamp(34px,5vw,64px); line-height:1.03; font-weight:800; color:#fff; max-width:680px; }
#rbhsw-root .hero-proof { margin:0 0 22px; font-size:clamp(18px,2.2vw,24px); line-height:1.4; font-weight:700; color:#fff; max-width:650px; }

#rbhsw-root .hero-points { margin:12px 0 24px 20px; padding:0; line-height:1.6; font-size:16px; max-width:650px; }
#rbhsw-root .hero-points li { margin-bottom:10px; }

#rbhsw-root .hero-actions-stack { display:flex; flex-direction:column; gap:12px; max-width:440px; margin-top:16px; }

#rbhsw-root .btn, #rbhsw-root .btn-pill, #rbhsw-root .store-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:10px; width:100%;
  border-radius:999px; padding:15px 18px; font-weight:700; font-size:16px; text-decoration:none;
  transition:.2s ease; border:2px solid transparent; line-height:1.2; cursor:pointer; appearance:none; text-align:center;
}
#rbhsw-root .btn:hover, #rbhsw-root .btn-pill:hover, #rbhsw-root .store-btn:hover { transform:translateY(-1px); }

#rbhsw-root .icon { width:18px; height:18px; flex:0 0 18px; display:inline-block; }
#rbhsw-root .icon svg { width:100%; height:100%; display:block; }

#rbhsw-root .btn-white { background:#fff; color:#1f2937; }
#rbhsw-root .btn-white:hover { background:#f3f7fb; }
#rbhsw-root .btn-wa { background:var(--green); color:#fff; }
#rbhsw-root .btn-wa:hover { background:var(--green-dark); }
#rbhsw-root .btn-primary { background:var(--green); color:#fff; font-size:17px; padding:17px 20px; }
#rbhsw-root .btn-primary:hover { background:var(--green-dark); }

#rbhsw-root .form-card, #rbhsw-root .faq-card, #rbhsw-root .contact-card, #rbhsw-root .services-card, #rbhsw-root .video-card {
  background:var(--panel); border:1px solid var(--line); border-radius:22px; box-shadow:var(--shadow);
}
#rbhsw-root .hero-form { background:#fff; color:#1f2937; }
#rbhsw-root .pad { padding:26px; }

#rbhsw-root .form-title { margin:0 0 8px; font-size:28px; color:var(--blue); font-weight:800; }
#rbhsw-root .form-sub { margin:0 0 18px; color:#374151; line-height:1.6; font-size:16px; }

#rbhsw-root .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#rbhsw-root .full { grid-column:1/-1; }

#rbhsw-root label { display:flex; flex-direction:column; gap:6px; font-size:14px; font-weight:700; color:var(--ink); }

#rbhsw-root input, #rbhsw-root select, #rbhsw-root textarea {
  appearance:none; border:1px solid #cfd9df; border-radius:12px; padding:13px 14px; font:inherit; background:#fff; color:var(--ink); width:100%;
}
#rbhsw-root input:focus, #rbhsw-root select:focus, #rbhsw-root textarea:focus {
  outline:3px solid rgba(15,143,195,.16); border-color:var(--blue);
}
#rbhsw-root .error { border-color:#c62828 !important; background:#fff4f4 !important; }

#rbhsw-root .actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
#rbhsw-root .submit-btn { background:var(--blue); color:#fff; }
#rbhsw-root .submit-btn:hover { background:var(--blue-dark); }
#rbhsw-root .wa-btn { background:#fff; color:#128c7e; border-color:#128c7e; }
#rbhsw-root .wa-btn:hover { background:#f4fffc; }

#rbhsw-root .privacy { margin:14px 0 0; font-size:13px; color:var(--muted); line-height:1.5; }
#rbhsw-root .msg { margin-top:12px; font-weight:700; min-height:24px; }
#rbhsw-root .msg.ok { color:#1d7f2e; }
#rbhsw-root .msg.err { color:#b42318; }

#rbhsw-root .thankyou { display:none; text-align:center; padding:26px; background:#f4fbf6; border:1px solid #d9eddc; border-radius:16px; margin-top:18px; }
#rbhsw-root .thankyou h3 { margin:0 0 8px; color:#1d7f2e; font-size:24px; }

#rbhsw-root .right-stack { display:flex; flex-direction:column; gap:18px; margin-top:18px; }
#rbhsw-root .app-card, #rbhsw-root .google-review-card { background:#f7fbfd; border:1px solid var(--line); border-radius:16px; padding:16px; }

#rbhsw-root .store-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#rbhsw-root .store-btn {
  background:#fff; border:1px solid #d8e4ec; color:var(--ink); box-shadow:0 8px 18px rgba(0,0,0,.04); min-height:54px;
}

#rbhsw-root .trust-bar { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:18px; }
#rbhsw-root .trust-item { background:#fff; border:1px solid var(--line); border-radius:14px; padding:16px; text-align:center; box-shadow:0 8px 20px rgba(0,0,0,.04); }
#rbhsw-root .trust-item strong { display:block; color:var(--blue); font-size:16px; margin-bottom:4px; }
#rbhsw-root .trust-item span { display:block; font-size:14px; color:var(--muted); line-height:1.4; }

#rbhsw-root .section { padding:34px 0; }
#rbhsw-root .h2 { margin:0 0 10px; font-size:clamp(28px,4vw,38px); line-height:1.15; color:var(--blue); font-weight:800; }
#rbhsw-root .lead { margin:0 0 22px; font-size:18px; line-height:1.6; color:var(--ink); max-width:900px; }

#rbhsw-root .steps { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
#rbhsw-root .step { background:var(--bg); border:1px solid var(--line); border-radius:16px; padding:22px; }
#rbhsw-root .step-no { width:44px; height:44px; border-radius:50%; background:var(--blue); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:18px; margin-bottom:14px; }

#rbhsw-root .main-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; align-items:start; }

#rbhsw-root details { border:1px solid #e5edf2; border-radius:14px; padding:14px 16px; background:#fff; }
#rbhsw-root details + details { margin-top:12px; }
#rbhsw-root summary { cursor:pointer; font-weight:700; list-style:none; color:var(--ink); }
#rbhsw-root .answer { margin-top:10px; color:#374151; line-height:1.65; }

#rbhsw-root .map { width:100%; min-height:300px; border:0; border-radius:14px; }

#rbhsw-root .service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:18px; }
#rbhsw-root .service-item { display:block; border-radius:14px; padding:18px 16px; text-align:center; font-weight:700; line-height:1.3; text-decoration:none; color:#fff; transition:.2s ease; min-height:120px; box-shadow:0 8px 20px rgba(0,0,0,.06); }
#rbhsw-root .service-item:hover { transform:translateY(-2px); filter:brightness(.98); }
#rbhsw-root .service-red { background:#d63031; }
#rbhsw-root .service-gold { background:#d6a21d; }
#rbhsw-root .service-green { background:#2eaf4a; }
#rbhsw-root .service-blue { background:#1fa3b9; }
#rbhsw-root .service-orange { background:#e67e22; }
#rbhsw-root .service-purple { background:#6b4ba8; }

#rbhsw-root .hp { position:absolute; left:-9999px; opacity:0; pointer-events:none; }
#rbhsw-root #switch-form.form-mode-callback .field-dob { display:none; }

@media (max-width:980px) {
  #rbhsw-root .hero-grid, #rbhsw-root .main-grid { grid-template-columns:1fr; }
  #rbhsw-root .trust-bar { grid-template-columns:repeat(2,1fr); gap:10px; }
  #rbhsw-root .steps { grid-template-columns:1fr; gap:14px; }
  #rbhsw-root .service-grid { grid-template-columns:repeat(2,1fr); }
  #rbhsw-root .store-grid { grid-template-columns:1fr; }
}

@media (max-width:640px) {
  #rbhsw-root .wrap { padding:12px 16px; }
  #rbhsw-root .hero { padding:20px 16px; border-radius:16px; }
  #rbhsw-root h1 { font-size:clamp(24px,7.4vw,32px); }
  #rbhsw-root .form-grid { grid-template-columns:1fr; }
  #rbhsw-root .actions { flex-direction:column; }
  #rbhsw-root .service-grid { grid-template-columns:1fr; }
  #rbhsw-root .trust-bar { grid-template-columns:1fr; }
}
