/* Jake's Pros Estimator — modern, theme-isolated Avada component */
.jpe { --jpe-ink:#123146; --jpe-primary:#135d7f; --jpe-primary-dark:#104966; --jpe-muted:#586f7b; --jpe-light:#edf6fa; --jpe-line:#dce7ed; --jpe-warm:#f6a53a; --jpe-green:#147b59; --jpe-red:#9a3b31; color:var(--jpe-ink); font-family:inherit; font-size:16px; line-height:1.55; box-sizing:border-box; max-width:1050px; margin:0 auto 28px; background:#fff; border:1px solid var(--jpe-line); border-radius:22px; overflow:clip; box-shadow:0 17px 42px rgba(18,49,70,.085); }
.jpe *, .jpe *::before, .jpe *::after {box-sizing:border-box}
.jpe [hidden] {display:none!important}
.jpe button, .jpe input, .jpe textarea, .jpe select {font:inherit}
.jpe button {cursor:pointer}
.jpe h2,.jpe h3,.jpe h4,.jpe p {margin:0}
.jpe h2,.jpe h3,.jpe h4 {font-family:inherit;color:var(--jpe-ink);line-height:1.2;letter-spacing:-.035em}
.jpe .jpe-hero {background:linear-gradient(117deg,#0f2e41 1%,#176083 100%);padding:34px clamp(20px,5vw,55px);color:#fff;position:relative}
.jpe .jpe-hero:after {content:"";position:absolute;width:150px;height:150px;right:-75px;bottom:-100px;border:30px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}
.jpe .jpe-eyebrow {font-size:12px;font-weight:850;letter-spacing:.16em;color:#ffcc7c;margin-bottom:12px}
.jpe .jpe-hero h2 {color:#fff;font-size:clamp(26px,3.2vw,40px);margin-bottom:11px;font-weight:800}
.jpe .jpe-hero p {max-width:620px;color:rgba(255,255,255,.9);line-height:1.65;font-size:16px}
.jpe .jpe-pills {display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.jpe .jpe-pills span {font-size:12px;font-weight:700;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.17);padding:6px 10px;border-radius:30px;color:#fff}
.jpe .jpe-inner {padding:24px clamp(17px,5vw,52px) 27px}
.jpe .jpe-progress {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:35px;border-bottom:1px solid var(--jpe-line);padding:4px 0 22px}
.jpe .jpe-progress>div {display:flex;align-items:center;gap:9px;color:#92a3ac;font-size:12px;font-weight:750}
.jpe .jpe-progress b {font-size:12px;display:inline-flex;justify-content:center;align-items:center;flex:0 0 29px;height:29px;border:1px solid var(--jpe-line);border-radius:50%;background:#f4f8fa;color:#78909c}
.jpe .jpe-progress .is-active {color:var(--jpe-primary)}
.jpe .jpe-progress .is-active b {background:var(--jpe-primary);border-color:var(--jpe-primary);color:#fff}
.jpe .jpe-progress .is-complete b {background:#e4f4ed;border-color:#b3ddc9;color:#187953}
.jpe .jpe-head {margin-bottom:22px}
.jpe .jpe-head small {display:block;color:var(--jpe-primary);font-size:11px;font-weight:850;letter-spacing:.14em;margin-bottom:7px}
.jpe .jpe-head h3 {font-size:clamp(22px,2.4vw,29px);font-weight:800;margin-bottom:8px}
.jpe .jpe-head p {color:var(--jpe-muted);font-size:15px;line-height:1.5}
.jpe .jpe-division-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.jpe .jpe-option {display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;width:100%;min-height:220px;border:1.5px solid var(--jpe-line);border-radius:16px;padding:25px;background:#fff;color:var(--jpe-ink);box-shadow:0 2px 7px rgba(30,66,79,.02);transition:transform .15s,border-color .15s,background .15s}
.jpe .jpe-option:hover,.jpe .jpe-option:focus-visible {border-color:var(--jpe-primary);background:var(--jpe-light);transform:translateY(-2px);outline:none}
.jpe .jpe-option-icon {font-size:29px;line-height:1.3;background:#eaf2f7;border-radius:12px;padding:10px}
.jpe .jpe-option strong {font-size:23px;line-height:1.2;color:var(--jpe-ink)}
.jpe .jpe-option>span:not(.jpe-option-icon) {font-size:14px;color:var(--jpe-muted)}
.jpe .jpe-option i {margin-top:auto;color:var(--jpe-primary);font-size:22px;font-style:normal;font-weight:700}
.jpe .jpe-service-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.jpe .jpe-service {width:100%;min-height:76px;display:flex;align-items:center;text-align:left;gap:12px;border-radius:12px;border:1px solid var(--jpe-line);padding:15px 16px;color:var(--jpe-ink);background:#fff}
.jpe .jpe-service:hover,.jpe .jpe-service:focus-visible {background:var(--jpe-light);border-color:var(--jpe-primary);outline:none}
.jpe .jpe-service strong {font-size:14px;line-height:1.35;font-weight:750}
.jpe .jpe-service-check {color:var(--jpe-primary);font-size:20px;line-height:1}
.jpe .jpe-service-arrow {color:var(--jpe-primary);margin-left:auto;font-size:17px}
.jpe .jpe-question-grid {display:grid;grid-template-columns:1fr 1fr;gap:14px}
.jpe .jpe-field-grid {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.jpe .jpe-field {display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:750;color:var(--jpe-ink);margin-bottom:16px}
.jpe .jpe-wide {grid-column:1/-1}
.jpe .jpe-optional {font-weight:500;color:var(--jpe-muted)}
.jpe .jpe-field input,.jpe .jpe-field select,.jpe .jpe-field textarea {background:#fff!important;width:100%;border:1px solid #cbdbe3!important;min-height:49px;padding:10px 13px;border-radius:10px!important;color:var(--jpe-ink)!important;box-shadow:none!important;font-size:15px;font-weight:450;line-height:1.45;letter-spacing:normal}
.jpe .jpe-field textarea {min-height:96px;resize:vertical}
.jpe .jpe-field input:focus,.jpe .jpe-field select:focus,.jpe .jpe-field textarea:focus {outline:3px solid rgba(19,93,127,.14)!important;border-color:var(--jpe-primary)!important}
.jpe .jpe-field input::placeholder,.jpe .jpe-field textarea::placeholder {color:#889da8}
.jpe .jpe-urgency {border:none;padding:0;margin:8px 0 16px;min-width:0}
.jpe .jpe-urgency legend {font-size:15px;color:var(--jpe-ink);font-weight:750;margin:0 0 11px}
.jpe .jpe-urgency {display:grid;grid-template-columns:1fr 1fr;gap:12px}
.jpe .jpe-urgency legend {grid-column:1/-1}
.jpe .jpe-urgency label {display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--jpe-line);border-radius:12px;cursor:pointer}
.jpe .jpe-urgency label:has(input:checked) {background:var(--jpe-light);border-color:var(--jpe-primary)}
.jpe .jpe-urgency label input {width:18px;height:18px;min-width:18px;accent-color:var(--jpe-primary)}
.jpe .jpe-urgency label span {display:flex;flex-direction:column;gap:2px}
.jpe .jpe-urgency label strong {font-size:14px;color:var(--jpe-ink)}
.jpe .jpe-urgency label small {font-size:12px;color:var(--jpe-muted)}
.jpe .jpe-fee,.jpe .jpe-confirm-fee {border:1px solid #c9e8d7;border-radius:12px;background:#f1faf5;padding:20px;margin:16px 0}
.jpe .jpe-fee-top {display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:16px;color:var(--jpe-ink)}
.jpe .jpe-fee-top>span {font-weight:700}
.jpe .jpe-fee-top strong {font-size:30px;line-height:1.1;color:#155c45}
.jpe .jpe-credit {font-size:14px;color:var(--jpe-green);font-weight:800;margin-top:10px!important}
.jpe .jpe-fee-note {font-size:14px;color:var(--jpe-muted);margin-top:7px!important}
.jpe .jpe-mini {font-size:12px;line-height:1.5;color:var(--jpe-muted);margin-top:12px!important}
.jpe .jpe-danger {background:#fff4ec;border:1px solid #ffcfad;border-left:4px solid #cf601b;border-radius:10px;margin:14px 0 18px;padding:17px;color:#743f1d}
.jpe .jpe-danger strong {font-size:16px}
.jpe .jpe-danger p {font-size:13px;line-height:1.55;margin:7px 0!important}
.jpe .jpe-safety-call {font-weight:750;font-size:14px;color:#723900!important}
.jpe .jpe-actions {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:25px}
.jpe .jpe-primary {display:inline-flex;justify-content:center;align-items:center;min-height:49px;padding:11px 26px;background:var(--jpe-primary)!important;border:1px solid var(--jpe-primary)!important;border-radius:9px;color:#fff!important;font-size:15px;font-weight:750;box-shadow:none;text-decoration:none!important;white-space:normal;text-align:center}
.jpe .jpe-primary:hover,.jpe .jpe-primary:focus-visible {background:var(--jpe-primary-dark)!important;color:#fff!important;outline:3px solid rgba(19,93,127,.15)}
.jpe .jpe-primary:disabled {opacity:.55;cursor:wait}
.jpe .jpe-back {display:inline-flex;align-items:center;padding:10px 0;background:transparent!important;border:none!important;color:var(--jpe-muted)!important;font-size:14px;font-weight:750;box-shadow:none!important}
.jpe .jpe-back:hover {color:var(--jpe-primary)!important}
.jpe .jpe-consent {display:flex;gap:12px;align-items:flex-start;margin:10px 0 0;color:#435b68;font-size:13px;line-height:1.65;cursor:pointer}
.jpe .jpe-consent input {width:18px;height:18px;min-width:18px;margin-top:2px;accent-color:var(--jpe-primary)}
.jpe .jpe-privacy {font-size:12px;margin-top:10px!important}
.jpe .jpe-privacy a {color:var(--jpe-primary)}
.jpe .jpe-error {border:1px solid #facfc9;background:#fff4f2;padding:13px 15px;color:#923b2e;border-radius:9px;font-size:14px;margin:15px 0}
.jpe .jpe-result {max-width:720px;margin:auto;padding:4px 0 12px}
.jpe .jpe-success {display:inline-flex;background:#e1f6eb;padding:7px 12px;border-radius:8px;font-size:13px;font-weight:850;color:var(--jpe-green);margin-bottom:14px}
.jpe .jpe-result h3 {font-size:clamp(25px,3vw,34px);margin-bottom:10px;font-weight:800}
.jpe .jpe-result > p {font-size:15px;color:var(--jpe-muted);line-height:1.6}
.jpe .jpe-result-box {background:#f1faf5;border:1px solid #c4e6d6;border-radius:14px;padding:25px;margin:22px 0 15px}
.jpe .jpe-result-label {font-size:14px;font-weight:700}
.jpe .jpe-result-money {font-size:clamp(32px,4vw,45px);font-weight:850;color:#146049;line-height:1.15;margin-top:7px}
.jpe .jpe-quote {padding:22px;border:1px solid var(--jpe-line);border-radius:13px;background:#fff}
.jpe .jpe-quote h4 {font-size:17px;margin-bottom:8px;font-weight:800}
.jpe .jpe-quote p {font-size:14px;color:var(--jpe-muted);line-height:1.5}
.jpe .jpe-quote-number {font-size:26px;font-weight:850;color:var(--jpe-ink);margin-bottom:8px}
.jpe .jpe-reference {font-size:12px!important;color:var(--jpe-muted);margin:14px 0 20px!important}
.jpe .jpe-result-call {display:inline-flex}
.jpe .jpe-footer {display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:21px;margin-top:29px;border-top:1px solid var(--jpe-line)}
.jpe .jpe-footer strong {color:var(--jpe-ink);font-size:14px}
.jpe .jpe-footer p {color:var(--jpe-muted);font-size:12px;margin-top:3px!important}
.jpe .jpe-call {display:inline-flex;align-items:center;justify-content:center;color:var(--jpe-primary)!important;border:1px solid #bad6e4;background:#f4f9fb;padding:11px 15px;border-radius:9px;text-decoration:none!important;font-size:13px;font-weight:800;white-space:nowrap}
.jpe .jpe-call:hover {background:#e4f1f7}
.jpe .jpe-hp {position:absolute!important;left:-9999px!important;max-height:1px;max-width:1px;overflow:hidden}
@media (max-width:720px) {
 .jpe {border-radius:14px;margin:0 auto 22px;font-size:15px}
 .jpe .jpe-hero {padding:27px 21px}
 .jpe .jpe-inner {padding:18px 16px 23px}
 .jpe .jpe-progress {gap:5px;margin-bottom:26px;padding-bottom:15px}
 .jpe .jpe-progress>div {flex-direction:column;gap:5px;font-size:10px;line-height:1.25;text-align:center}
 .jpe .jpe-progress b {width:26px;height:26px;flex:0 0 26px}
 .jpe .jpe-option {padding:17px;min-height:186px}
 .jpe .jpe-option strong {font-size:19px}
 .jpe .jpe-option>span:not(.jpe-option-icon) {font-size:12px}
 .jpe .jpe-service-grid {grid-template-columns:1fr}
 .jpe .jpe-field-grid,.jpe .jpe-question-grid {grid-template-columns:1fr;gap:0}
 .jpe .jpe-urgency {grid-template-columns:1fr}
 .jpe .jpe-actions {margin-top:18px}
 .jpe .jpe-primary {padding:10px 18px}
 .jpe .jpe-footer {align-items:stretch}
 .jpe .jpe-call {width:100%}
}
@media (max-width:390px) {
 .jpe .jpe-division-grid {gap:9px}
 .jpe .jpe-option {padding:13px;min-height:174px}
 .jpe .jpe-option strong {font-size:17px}
 .jpe .jpe-hero h2 {font-size:27px}
 .jpe .jpe-pills {gap:5px}
 .jpe .jpe-pills span {font-size:10px}
}
/* v1.1.0: Jake's brand accents and clearer, modern service-flow typography */
.jpe{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--jpe-primary-dark:var(--jpe-ink);border-radius:18px}
.jpe h2,.jpe h3,.jpe h4,.jpe button,.jpe input,.jpe textarea,.jpe select{font-family:inherit!important}
.jpe .jpe-hero{background:linear-gradient(115deg,var(--jpe-ink),var(--jpe-primary));border-bottom:5px solid var(--jpe-warm);padding-top:28px;padding-bottom:31px}
.jpe .jpe-brand{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:0 0 22px;position:relative;z-index:1}
.jpe .jpe-brand img{max-width:225px;max-height:76px;width:auto;height:auto;object-fit:contain}
.jpe .jpe-brand-text{font-weight:900;font-size:22px;letter-spacing:.08em;color:#fff}
.jpe .jpe-estimator-tag{display:inline-block;border:1px solid rgba(255,255,255,.24);color:#fff8df;font-weight:850;font-size:11px;letter-spacing:.13em;padding:7px 10px;border-radius:5px}
.jpe .jpe-hero h2{max-width:700px;letter-spacing:-.04em;font-size:clamp(29px,3.6vw,42px);line-height:1.09}
.jpe .jpe-hero p{font-size:15px;line-height:1.65;max-width:690px}
.jpe .jpe-pills span{font-size:11px;font-weight:700}
.jpe .jpe-demo-notice{background:#fff8e8;border:1px solid #e8c983;border-left:4px solid var(--jpe-warm);color:#4c3d1f;border-radius:10px;padding:12px 15px;margin:0 0 18px;font-size:13px;line-height:1.5}
.jpe .jpe-demo-notice strong{font-size:11px;letter-spacing:.065em;margin-right:6px}
.jpe .jpe-option:hover,.jpe .jpe-option:focus-visible{box-shadow:0 7px 22px rgba(12,48,74,.08)}
.jpe .jpe-division-grid .jpe-option{border-bottom:4px solid transparent}
.jpe .jpe-division-grid .jpe-option:hover,.jpe .jpe-division-grid .jpe-option:focus-visible{border-bottom-color:var(--jpe-warm)}
.jpe .jpe-progress .is-active b{box-shadow:0 0 0 3px rgba(22,97,133,.10)}
.jpe .jpe-result-box{border:1px solid #c8e5db;background:#f1f9f6}
.jpe .jpe-quote{background:#f7fafc;border-color:#d7e5ed}
.jpe .jpe-quote-number{font-size:clamp(26px,3.2vw,38px);color:var(--jpe-primary)}
.jpe .jpe-demo-tag{display:inline-block;color:#714609;background:#fff3d8;border:1px solid #edcf8d;border-radius:5px;padding:5px 8px;font-weight:850;font-size:11px;letter-spacing:.045em;margin-bottom:10px}
.jpe .jpe-more-services{width:100%;font-weight:800;font-size:14px;border:1px dashed #a0c0d0;border-radius:12px;padding:14px;background:#f5fafc;color:var(--jpe-primary);margin-top:13px}
.jpe .jpe-more-services:hover,.jpe .jpe-more-services:focus-visible{background:#e7f3f9;border-color:var(--jpe-primary)}
@media(max-width:720px){
  .jpe .jpe-brand{gap:10px;margin-bottom:15px}
  .jpe .jpe-brand img{max-width:160px;max-height:65px}
  .jpe .jpe-estimator-tag{font-size:9px;letter-spacing:.07em}
  .jpe .jpe-hero{padding-top:23px;padding-bottom:24px}
  .jpe .jpe-demo-notice{margin-top:0;font-size:12px}
  .jpe .jpe-hero h2{font-size:clamp(27px,7vw,36px)}
  .jpe .jpe-result-box,.jpe .jpe-quote{padding:18px}
}
.jpe .jpe-brand img{background:#fff;padding:9px 11px;border:1px solid rgba(255,255,255,.35);border-radius:11px;box-shadow:0 4px 14px rgba(0,0,0,.10)}

/* v1.2.0: direct-to-staff SMS option, with clear 9 PM CT availability */
.jpe .jpe-textbar {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 18px;padding:15px clamp(17px,5vw,52px);background:#eef8fd;border-bottom:1px solid #cae4f2;position:sticky;top:0;z-index:15;box-shadow:0 6px 16px rgba(16,47,67,.06)}
.jpe .jpe-textbar-info {display:flex;align-items:flex-start;gap:12px;min-width:0}
.jpe .jpe-text-icon {display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:#d5effb;color:var(--jpe-primary);font-size:19px}
.jpe .jpe-textbar-info strong {color:var(--jpe-ink);font-weight:800;font-size:15px}
.jpe .jpe-textbar-info p {margin:3px 0 0!important;color:#355a6b;font-size:13px;line-height:1.45}
.jpe .jpe-textbar-info p strong {font-size:inherit}
.jpe .jpe-textbar-info small {color:#637c88;font-size:11px;line-height:1.35;display:block;margin-top:3px}
.jpe .jpe-textbar-actions {display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.jpe .jpe-text-btn {display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--jpe-primary)!important;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:800;border-radius:9px;min-height:44px;padding:10px 16px;white-space:nowrap}
.jpe .jpe-text-btn:hover,.jpe .jpe-text-btn:focus-visible {background:var(--jpe-ink)!important;color:#fff!important;outline:3px solid #bedff0}
.jpe .jpe-copy-text {font-size:12px;color:var(--jpe-primary)!important;border:1px solid #b7d4e3!important;border-radius:8px;padding:8px 10px;background:#fff!important;box-shadow:none!important}
.jpe .jpe-copy-text:hover,.jpe .jpe-copy-text:focus-visible {background:#e1f0f7!important}
.jpe .jpe-textbar-number {grid-column:2;justify-self:end;color:#496a7b;font-size:11px;line-height:1.1}
.jpe .jpe-footer-actions {display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.jpe .jpe-footer-text {background:#e7f7ff;color:var(--jpe-ink)!important;border-color:#9fd4ee}
.jpe .jpe-result-text {display:inline-flex;margin:0 0 0 12px;color:var(--jpe-primary)!important;font-size:14px;font-weight:800;text-decoration:underline!important;text-underline-offset:3px}
@media(max-width:720px){
  .jpe .jpe-textbar {grid-template-columns:1fr;gap:9px;padding:13px 16px;top:0}
  .jpe .jpe-textbar-info {gap:8px}
  .jpe .jpe-text-icon {flex-basis:30px;width:30px;height:30px;font-size:16px}
  .jpe .jpe-textbar-info strong {font-size:13px}
  .jpe .jpe-textbar-info p {font-size:12px}
  .jpe .jpe-textbar-info small {font-size:10px}
  .jpe .jpe-textbar-actions {justify-content:stretch}
  .jpe .jpe-text-btn {flex:1;font-size:13px;min-height:43px}
  .jpe .jpe-copy-text {min-height:43px}
  .jpe .jpe-textbar-number {grid-column:1;justify-self:start;font-size:11px}
  .jpe .jpe-footer-actions {width:100%;display:grid;grid-template-columns:1fr 1fr}
  .jpe .jpe-footer-actions .jpe-call {white-space:normal;text-align:center;font-size:12px}
  .jpe .jpe-result-text {margin:12px 0 0;display:flex}
}
@media(max-width:390px){.jpe .jpe-copy-text {font-size:11px;padding:6px 8px}}
