/* California Helping Hands — Decision Tree v2 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

#hh-tree {
  --navy:#17191F;--deep-blue:#264D84;--bright-blue:#00AEFD;--light-blue:#7CD1FE;
  --sky-tint:#E8F6FE;--sky-lightest:#F2FAFF;
  --green:#2EAD6B;--green-bg:#EAFAF2;--green-border:#C4EDDA;--green-text:#166534;
  --blue-tier:#3B82F6;--blue-bg:#EFF6FF;--blue-border:#BFDBFE;--blue-text:#1E40AF;
  --purple:#8B5CF6;--purple-bg:#F5F3FF;--purple-border:#DDD6FE;--purple-text:#5B21B6;
  --peach:#F2B8A0;--peach-light:#FDF0EB;--peach-text:#7C4420;
  --bg:#FAFBFD;--white:#FFFFFF;--text:#17191F;--text-body:#3D4550;--text-muted:#6B7685;
  --border:#D6DDE6;--border-light:#E8EDF2;--error-bg:#FEF2F2;--error-text:#DC2626;
  --shadow:0 4px 24px rgba(23,25,31,.07);
  --radius:16px;--radius-sm:12px;--radius-xs:8px;--radius-full:999px;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;
  max-width:720px;margin:0 auto;padding:32px 24px 60px;box-sizing:border-box;
}
#hh-tree *,#hh-tree *::before,#hh-tree *::after{box-sizing:border-box}
#hh-tree h1,#hh-tree h2,#hh-tree h3,#hh-tree h4{font-family:'Inter',sans-serif;font-weight:700;margin:0}
#hh-tree button,#hh-tree select{font-family:'Inter',sans-serif}

/* HEADER */
.hh-header{text-align:center;margin-bottom:32px}
.hh-eyebrow{font-size:12px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--bright-blue);margin-bottom:10px;display:block}
.hh-header h1{font-size:36px;line-height:1.2;margin-bottom:12px;color:var(--text)}
.hh-header h1 em{color:var(--bright-blue);font-style:normal}
.hh-header p{font-size:16px;color:var(--text-body);line-height:1.65;max-width:520px;margin:0 auto}

/* PROGRESS DOTS */
.hh-prog{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:6px;flex-wrap:wrap}
.hh-prog-dot{width:28px;height:5px;border-radius:99px;background:var(--border);transition:all .4s}
.hh-prog-dot.active{background:var(--bright-blue)}
.hh-prog-dot.done{background:var(--deep-blue)}
.hh-prog-lbl{text-align:center;font-size:12px;color:var(--text-muted);font-weight:500;margin-bottom:24px}

/* CARD */
.hh-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border-light);box-shadow:var(--shadow);padding:36px 32px;margin-bottom:24px;animation:hh-fadeUp .35s ease both;display:none}
.hh-card.active{display:block}
@keyframes hh-fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.hh-card-q{font-size:24px;line-height:1.3;margin-bottom:6px;color:var(--text);font-weight:700}
.hh-card-sub{font-size:15px;color:var(--text-muted);margin-bottom:24px;line-height:1.55}

/* NARRATED NOTE */
.hh-narr{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;background:var(--sky-lightest);border:1px solid var(--sky-tint);border-radius:var(--radius-sm);margin-bottom:20px;font-size:14px;color:var(--deep-blue);line-height:1.55}
.hh-narr-icon{font-size:18px;flex-shrink:0;margin-top:1px;line-height:1}
.hh-narr em{font-style:normal;font-weight:600}
.hh-narr.bottom{margin-bottom:0;margin-top:20px}

/* OPTIONS */
.hh-opts{display:flex;flex-direction:column;gap:10px}
.hh-opt{display:flex;align-items:center;gap:14px;padding:16px 18px;border:2px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;background:var(--white)}
.hh-opt:hover{border-color:var(--light-blue);background:var(--sky-lightest);transform:translateX(4px)}
.hh-opt.sel{border-color:var(--bright-blue);background:var(--sky-tint)}
.hh-opt-ico{width:44px;height:44px;min-width:44px;border-radius:var(--radius-xs);background:var(--sky-tint);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.hh-opt-txt{flex:1}
.hh-opt-lbl{font-size:15px;font-weight:600;margin-bottom:2px;color:var(--text)}
.hh-opt-desc{font-size:13px;color:var(--text-muted);line-height:1.4}
.hh-opt-chk{width:22px;height:22px;min-width:22px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s}
.hh-opt.sel .hh-opt-chk{border-color:var(--bright-blue);background:var(--bright-blue)}
.hh-opt.sel .hh-opt-chk::after{content:'✓';color:var(--white);font-size:12px;font-weight:700}

/* TIERED CHIPS */
.hh-tier-grid{display:flex;flex-direction:column;gap:6px}
.hh-tier-group{margin-bottom:16px}
.hh-tier-group:last-child{margin-bottom:0}
.hh-tier-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;margin-bottom:8px;padding:4px 0;color:var(--text)}
.hh-tier-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.hh-tier-dot.green{background:var(--green)}
.hh-tier-dot.blue{background:var(--blue-tier)}
.hh-tier-dot.purple{background:var(--purple)}
.hh-tier-items{display:flex;flex-wrap:wrap;gap:8px}
.hh-tier-chip{display:flex;align-items:center;gap:8px;padding:11px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:2px solid transparent;user-select:none}
.hh-tier-chip.green{background:var(--green-bg);border-color:var(--green-border);color:var(--green-text)}
.hh-tier-chip.green:hover,.hh-tier-chip.green.sel{background:#D1FAE5;border-color:var(--green)}
.hh-tier-chip.blue{background:var(--blue-bg);border-color:var(--blue-border);color:var(--blue-text)}
.hh-tier-chip.blue:hover,.hh-tier-chip.blue.sel{background:#DBEAFE;border-color:var(--blue-tier)}
.hh-tier-chip.purple{background:var(--purple-bg);border-color:var(--purple-border);color:var(--purple-text)}
.hh-tier-chip.purple:hover,.hh-tier-chip.purple.sel{background:#EDE9FE;border-color:var(--purple)}
.hh-chip-check{width:16px;height:16px;border-radius:4px;border:2px solid currentColor;opacity:.4;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .2s}
.hh-tier-chip.sel .hh-chip-check{opacity:1;background:currentColor}
.hh-tier-chip.sel .hh-chip-check::after{content:'✓';color:var(--white);font-weight:700}

/* EXIT RAMP */
.hh-exit{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--peach-light);border:1px solid var(--peach);border-radius:var(--radius-sm);margin-top:20px;font-size:14px;color:var(--peach-text)}
.hh-exit-q{flex:1;font-weight:500}
.hh-exit-btns{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}
.hh-exit-btn{padding:8px 16px;border-radius:var(--radius-full);font-size:13px;font-weight:700;text-decoration:none;transition:all .2s;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:4px}
.hh-exit-btn.call{background:var(--deep-blue);color:var(--white)}
.hh-exit-btn.call:hover{background:var(--navy)}

/* FORMS */
.hh-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hh-form-full{grid-column:1/-1}
.hh-form-group{display:flex;flex-direction:column}
.hh-form-lbl{font-size:12px;font-weight:700;color:var(--text-body);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}
.hh-form-field{width:100%;padding:13px 14px;border:2px solid var(--border-light);border-radius:var(--radius-xs);font-size:15px;font-family:'Inter',sans-serif;color:var(--text);background:var(--white);transition:border-color .2s;outline:none}
.hh-form-field:focus{border-color:var(--bright-blue)}
.hh-form-field::placeholder{color:var(--text-muted)}
select.hh-form-field{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B7685' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer}
textarea.hh-form-field{resize:vertical;min-height:80px}

/* CARE-FOR CHIPS (step 9) */
.hh-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.hh-chip{padding:11px 18px;border:2px solid var(--border-light);border-radius:var(--radius-full);cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;background:var(--white);color:var(--text)}
.hh-chip:hover{border-color:var(--light-blue);background:var(--sky-lightest)}
.hh-chip.sel{border-color:var(--bright-blue);background:var(--sky-tint);color:var(--deep-blue)}

/* SECTION DIVIDER in forms */
.hh-form-section{font-size:13px;font-weight:700;color:var(--text);margin-top:10px;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}

/* ZIP field */
.hh-zip-wrap{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.hh-zip-wrap .hh-form-group{flex:0 0 auto}
.hh-zip-wrap .hh-form-field{max-width:160px}
.hh-zip-status{font-size:13px;font-weight:600;padding:8px 14px;border-radius:var(--radius-full);display:none;align-items:center;gap:6px}
.hh-zip-status.show{display:inline-flex}
.hh-zip-status.ok{background:var(--green-bg);color:var(--green)}
.hh-zip-status.no{background:#FFF7ED;color:#B45309}

/* BUTTONS */
.hh-btn-row{display:flex;justify-content:space-between;align-items:center;margin-top:24px;gap:12px}
.hh-btn{font-family:'Inter',sans-serif;font-weight:600;border:none;cursor:pointer;text-decoration:none;transition:all .2s;line-height:1;display:inline-flex;align-items:center;gap:8px;border-radius:var(--radius-full);font-size:15px}
.hh-btn-next{background:var(--bright-blue);color:var(--white);padding:14px 28px}
.hh-btn-next:hover:not(:disabled){background:var(--deep-blue);transform:translateY(-1px)}
.hh-btn-next:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed}
.hh-btn-back{background:transparent;color:var(--text-muted);padding:14px 18px;font-size:14px}
.hh-btn-back:hover{color:var(--text)}
.hh-btn-submit{background:var(--deep-blue);color:var(--white);padding:16px 32px;font-size:16px}
.hh-btn-submit:hover:not(:disabled){background:var(--navy)}
.hh-btn-submit:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed}

/* RECOMMENDATION CARD (Step 8) */
.hh-rec-card{padding:0;border-radius:var(--radius);margin-top:8px;margin-bottom:8px;border:2px solid;overflow:hidden}
.hh-rec-card.green{background:var(--green-bg);border-color:var(--green-border)}
.hh-rec-card.blue{background:var(--blue-bg);border-color:var(--blue-border)}
.hh-rec-card.purple{background:var(--purple-bg);border-color:var(--purple-border)}
.hh-rec-img{width:100%;height:280px;object-fit:cover;object-position:center 30%;display:block;border-radius:var(--radius) var(--radius) 0 0}
.hh-rec-body{padding:24px}
.hh-rec-price{font-size:22px;color:var(--text);margin-bottom:14px}
.hh-rec-price strong{font-size:28px;font-weight:800}
.hh-rec-price-note{font-size:13px;color:var(--text-muted);margin-bottom:14px}
.hh-rec-disclaimer{font-size:11px;color:var(--text-muted);margin-top:16px;line-height:1.5;font-style:italic}
.hh-rec-tier-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:10px}
.hh-rec-card.green .hh-rec-tier-label{color:var(--green-text)}
.hh-rec-card.blue .hh-rec-tier-label{color:var(--blue-text)}
.hh-rec-card.purple .hh-rec-tier-label{color:var(--purple-text)}
.hh-rec-tier-name{font-size:28px;font-weight:800;margin-bottom:10px;color:var(--text)}
.hh-rec-tier-desc{font-size:15px;line-height:1.65;color:var(--text-body);margin-bottom:18px}
.hh-rec-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.hh-rec-features li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--text-body);line-height:1.5}
.hh-rec-features li::before{content:'✓';font-weight:700;flex-shrink:0}
.hh-rec-card.green .hh-rec-features li::before{color:var(--green)}
.hh-rec-card.blue .hh-rec-features li::before{color:var(--blue-tier)}
.hh-rec-card.purple .hh-rec-features li::before{color:var(--purple)}

/* STEP 10 RESULT */
.hh-result-ico{width:72px;height:72px;border-radius:50%;background:var(--green-bg);display:flex;align-items:center;justify-content:center;font-size:36px;margin:0 auto 20px}
.hh-result-h{text-align:center;font-size:28px;margin-bottom:8px}
.hh-result-steps{display:flex;flex-direction:column;gap:12px;margin:24px 0;text-align:left}
.hh-result-step{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;background:var(--sky-lightest);border-radius:var(--radius-sm);border:1px solid var(--sky-tint)}
.hh-result-num{width:28px;height:28px;min-width:28px;border-radius:50%;background:var(--bright-blue);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}
.hh-result-step p{font-size:14px;color:var(--text-body);line-height:1.5;margin:0}
.hh-result-step p strong{color:var(--text)}
.hh-result-cta{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:24px}
.hh-result-phone{display:inline-flex;align-items:center;gap:10px;background:var(--bright-blue);color:var(--white);padding:16px 32px;border-radius:var(--radius-full);text-decoration:none;font-size:17px;font-weight:700;transition:all .2s}
.hh-result-phone:hover{background:var(--deep-blue);transform:translateY(-1px)}
.hh-result-note{font-size:13px;color:var(--text-muted)}

/* CONFETTI */
.hh-confetti-wrap{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:99999;overflow:hidden}
.hh-confetti-piece{position:absolute;width:10px;height:10px;top:-20px;animation:hh-confetti-fall linear forwards}
@keyframes hh-confetti-fall{
  0%{transform:translateY(0) rotate(0deg) scale(1);opacity:1}
  80%{opacity:1}
  100%{transform:translateY(100vh) rotate(720deg) scale(0.3);opacity:0}
}

/* LOADING / ERROR */
.hh-loading{display:none;align-items:center;gap:10px;color:var(--text-muted);font-size:14px}
.hh-loading.show{display:inline-flex}
.hh-spinner{width:16px;height:16px;border:2px solid var(--border-light);border-top-color:var(--bright-blue);border-radius:50%;animation:hh-spin .8s linear infinite}
@keyframes hh-spin{to{transform:rotate(360deg)}}
.hh-submit-error{display:none;background:var(--error-bg);color:var(--error-text);padding:12px 16px;border-radius:var(--radius-sm);font-size:14px;margin-top:16px;font-weight:500}
.hh-submit-error.show{display:block}

/* TRUST BAR */
.hh-trust{display:flex;justify-content:center;gap:20px;margin-top:32px;flex-wrap:wrap}
.hh-trust-i{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted);font-weight:500}
.hh-trust-i::before{content:'✓';color:var(--green);font-weight:700;font-size:14px}

/* RESPONSIVE */
@media(max-width:640px){
  #hh-tree{padding:20px 16px 60px}
  .hh-card{padding:24px 18px}
  .hh-card-q{font-size:20px}
  .hh-header h1{font-size:28px}
  .hh-form-grid{grid-template-columns:1fr}
  .hh-exit{flex-direction:column;align-items:flex-start;gap:10px}
  .hh-exit-btns{width:100%}
  .hh-exit-btn{flex:1;justify-content:center}
  .hh-btn-next{padding:12px 22px}
  .hh-rec-tier-name{font-size:24px}
  .hh-rec-img{height:220px}
  .hh-result-h{font-size:22px}
  .hh-prog-dot{width:22px}
}
