:root{--p:#8d7ac7;--pd:#6f5ea8;--b:#8cc9df;--ink:#26323d;--muted:#6d7782;--line:#e7e9ef;--soft:#f7f5fc}.rehance-wrap{max-width:1080px;margin:30px auto;color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif}.rehance-hero{display:flex;justify-content:space-between;gap:20px;padding:32px;border-radius:28px;color:#fff;background:linear-gradient(135deg,var(--p),var(--b));box-shadow:0 18px 55px rgba(77,67,112,.12)}.rehance-hero small{text-transform:uppercase;letter-spacing:.14em;font-weight:700}.rehance-hero h2{font-size:38px;line-height:1.1;margin:8px 0}.rehance-form{margin-top:22px;padding:24px;border-radius:28px;background:#fff;box-shadow:0 18px 55px rgba(77,67,112,.12)}.rehance-form section{border:1px solid var(--line);border-radius:20px;padding:22px;margin-bottom:18px}.rehance-form h3{display:flex;align-items:center;gap:10px;margin-top:0}.rehance-form h3 b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--p),var(--b))}.rehance-grid{display:grid;gap:14px}.rehance-grid.two{grid-template-columns:repeat(2,1fr)}.rehance-grid.three{grid-template-columns:repeat(3,1fr)}.rehance-grid.four{grid-template-columns:repeat(4,1fr)}.rehance-form label{font-weight:650;font-size:14px}.rehance-form input:not([type=radio]):not([type=checkbox]),.rehance-form textarea,.rehance-form select{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #dfe3ea;border-radius:13px;font:inherit;box-sizing:border-box}.rehance-form textarea{min-height:85px}.rehance-card{position:relative}.rehance-card input{position:absolute;opacity:0}.rehance-card span{display:block;text-align:center;border:1px solid var(--line);border-radius:14px;padding:13px;background:#fff}.rehance-card input:checked+span{border-color:var(--p);background:linear-gradient(135deg,rgba(141,122,199,.14),rgba(140,201,223,.16));color:var(--pd)}.rehance-checks{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rehance-checks label.rehance-check-button{position:relative;display:block;cursor:pointer}.rehance-check-button input{position:absolute;opacity:0;pointer-events:none}.rehance-check-button span{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px 14px;border:2px solid var(--line);border-radius:14px;background:#fff;text-align:center;font-size:15px;font-weight:750;line-height:1.25;transition:.15s ease;box-sizing:border-box}.rehance-check-button span:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border:2px solid #cfc9dd;border-radius:7px;color:transparent;background:#fff;flex:0 0 auto}.rehance-check-button input:checked+span{border-color:var(--p);background:linear-gradient(135deg,rgba(141,122,199,.15),rgba(140,201,223,.18));color:var(--pd);box-shadow:0 4px 14px rgba(111,94,168,.10)}.rehance-check-button input:checked+span:before{background:var(--pd);border-color:var(--pd);color:#fff}.rehance-check-button input:focus-visible+span{outline:3px solid rgba(140,201,223,.55);outline-offset:2px}.rehance-note,.rehance-terms{padding:14px;border-radius:13px;background:#f1f9fc;color:#47616b}.rehance-terms{max-height:190px;overflow:auto;color:#4a5560;background:#fafbfc;border:1px solid var(--line)}.rehance-agree{display:block;margin-top:14px;padding:14px;border-radius:13px;background:var(--soft)}.rehance-submit{display:flex;justify-content:space-between;align-items:center;gap:18px}.rehance-submit button{border:0;border-radius:999px;padding:14px 24px;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--pd),var(--b));cursor:pointer}.rehance-alert{margin:18px 0;padding:15px;border-radius:13px}.rehance-alert.success{background:#edf9f2}.rehance-alert.error{background:#fff0f0}.rehance-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}@media(max-width:760px){.rehance-hero,.rehance-submit{flex-direction:column;align-items:flex-start}.rehance-grid.two,.rehance-grid.three,.rehance-grid.four,.rehance-checks{grid-template-columns:1fr 1fr}.rehance-form{padding:14px}}@media(max-width:480px){.rehance-grid.two,.rehance-grid.three,.rehance-grid.four,.rehance-checks{grid-template-columns:1fr}.rehance-submit button{width:100%}}
.rehance-quote-section{border:1px solid rgba(111,82,150,.22)!important;background:linear-gradient(135deg,rgba(244,239,252,.9),rgba(234,248,249,.9))!important}
.rehance-quote{margin:12px 0;padding:16px;border-radius:14px;background:#fff;border:1px solid #ddd}
.rehance-quote.success{border-color:#3b9b77}.rehance-quote.error{border-color:#c94b55}.rehance-quote.loading{opacity:.75}
.rehance-price-grid{display:grid;grid-template-columns:1fr auto;gap:8px 18px;max-width:520px}.rehance-price-grid strong{text-align:right}
.rehance-secondary-button{border:1px solid #73559b;background:#fff;color:#5c407f;border-radius:999px;padding:11px 18px;font-weight:700;cursor:pointer}
.rehance-submit button:disabled{opacity:.45;cursor:not-allowed}
.rehance-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.rehance-total-label,.rehance-total-price{font-size:1.15rem;font-weight:800;border-top:1px solid rgba(49,37,63,.15);padding-top:12px;margin-top:4px}.rehance-total-price{font-size:1.35rem}.rehance-quote.loading{opacity:.8}.rehance-submit button:disabled{opacity:.55;cursor:not-allowed}

.rehance-notice{padding:14px 16px;margin:14px 0;border-left:4px solid #7866a8;border-radius:8px;background:#f5f1fb;color:#393641}
.rehance-small{font-size:13px;color:#6b6873}
#rehance-family-bundle-fields,#rehance-referral-fields{margin-top:16px}
\n/* Rehance 4.4.2 therapist-aware suggested availability */
.rehance-suggested-times{margin-top:16px;padding-top:14px;border-top:1px solid rgba(104,86,165,.18)}
.rehance-suggested-times>strong{display:block;margin-bottom:10px;color:#3d3557}
.rehance-suggested-buttons{display:flex;flex-wrap:wrap;gap:10px}
.rehance-suggested-time{appearance:none;border:1px solid #d9d0ef;background:#fff;border-radius:12px;padding:10px 14px;color:#5d49a7;font-weight:700;cursor:pointer;text-align:left;box-shadow:0 3px 10px rgba(80,64,130,.06)}
.rehance-suggested-time:hover{border-color:#8d77d8;transform:translateY(-1px)}
.rehance-suggested-time small{display:block;margin-top:3px;color:#777181;font-size:11px;font-weight:500}
@media(max-width:600px){.rehance-suggested-time{width:100%}}

/* Rehance 4.6.11 mobile layout hardening */
.rehance-wrap,.rehance-form,.rehance-form section,.rehance-quote,.rehance-price-grid{box-sizing:border-box;min-width:0}
@media(max-width:600px){
  .rehance-wrap{width:100%;max-width:100%;margin:12px auto;padding:0 8px;overflow:hidden}
  .rehance-form{width:100%;max-width:100%;padding:10px;border-radius:18px}
  .rehance-form section{width:100%;max-width:100%;padding:16px 12px;border-radius:16px}
  .rehance-quote{width:100%;max-width:100%;padding:14px 12px;overflow:hidden}
  .rehance-price-grid{width:100%;max-width:100%;grid-template-columns:minmax(0,1fr) max-content;gap:10px 12px}
  .rehance-price-grid>*,.rehance-price-grid strong{min-width:0;overflow-wrap:anywhere}
  .rehance-price-grid strong{white-space:nowrap;text-align:right}
  .rehance-total-price{font-size:1.25rem}
}
@media(max-width:360px){.rehance-price-grid{grid-template-columns:minmax(0,1fr) auto;gap:8px}.rehance-price-grid strong{font-size:.95em}.rehance-total-price{font-size:1.15rem}}
