:root{
  --charcoal:#121212; --burgundy:#4C1513; --gold:#D4B36A; --stone:#6e675e;
  --ivory:#F7F3EE; --sand:#F2E8DA; --clay:#C88655; --sky:#546c84; --sage:#70806B;
  --warmgray:#C9C2B8; --deepgray:#6b655c; --white:#fff;
}
.btn[disabled]{opacity:.45;cursor:not-allowed}

/* header */

/* hero */

/* layout */
.demo{padding:56px 0 90px}
.demo .cols{display:grid;grid-template-columns:1.35fr 1fr;gap:28px;align-items:start}

/* wizard */
.panel{background:#fff;border:1px solid #eae2d4;border-radius:4px;box-shadow:0 24px 60px rgba(18,18,18,.08)}
.wizard{padding:36px 36px 30px}
.wz-top{display:flex;justify-content:space-between;align-items:center;font:600 12px/1 'Inter';letter-spacing:.16em;text-transform:uppercase;color:var(--stone)}
.progress{height:4px;background:#ece5d8;border-radius:2px;margin:18px 0 30px;overflow:hidden}
.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--burgundy),var(--gold));width:0;transition:.35s}
/* reference-style step header + segmented progress + question card */
.wz-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.wizard h2.wz-title{font:700 22px/1.25 'Inter',sans-serif;color:var(--charcoal);letter-spacing:-.01em;margin:0}
.wz-segs{display:flex;gap:8px;margin:14px 0 22px}
.wz-segs i{flex:1;height:6px;border-radius:100px;background:#e6ddcd;transition:.3s}
.wz-segs i.on{background:linear-gradient(90deg,var(--burgundy),var(--gold))}
.q-card{background:#fff;border:1px solid #eae2d4;border-radius:14px;padding:20px 20px 14px;box-shadow:0 10px 30px rgba(18,18,18,.05)}
.q-title{font:700 19px/1.35 'Inter';color:var(--charcoal);margin-bottom:6px}
.q-hint{margin-top:12px;margin-bottom:2px;text-align:center;font:500 14px/1.4 'Inter';color:#6b7a8d}
.q-next{width:100%;margin-top:14px;border-radius:100px}
.q-next:disabled{opacity:.45;cursor:default}
.wz-links{display:flex;align-items:center;gap:20px}
.wz-links .back:disabled{opacity:.4;cursor:default}
.wz-dockrow{display:flex;align-items:center;gap:16px}
.wz-est{display:none}
.wizard h2{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:600;margin-bottom:6px}
.wizard .hint{font:400 14px/1.6 'Inter';color:var(--deepgray);margin-bottom:24px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.opt{border:1px solid #e2dacb;border-radius:3px;padding:11px 13px;font:500 13.5px/1.35 'Inter';cursor:pointer;background:#fff;color:var(--charcoal);text-align:left;transition:.15s;appearance:none;-webkit-appearance:none}
.opt.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;border-radius:12px;padding:16px 10px;font:600 14px/1.3 'Inter'}
.opt.tile .opt-ic{font-style:normal;font-size:24px;line-height:1}
.opt.tile.sel{border-color:var(--burgundy);background:var(--sand)}
.opt:hover{border-color:var(--gold)}
.opt.sel{border-color:var(--burgundy);background:var(--sand);box-shadow:inset 0 0 0 1px var(--burgundy)}
.opt small{display:block;font:400 12.5px/1.4 'Inter';color:var(--stone);margin-top:3px}
textarea{width:100%;border:1px solid #e2dacb;border-radius:3px;padding:14px 16px;font:400 14.5px/1.6 'Inter';min-height:120px;resize:vertical;background:#fff}
textarea:focus{outline:2px solid var(--gold)}
.wz-nav{display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:16px;flex-wrap:wrap}
.wz-nav .back{font:600 14px/1 'Inter';color:var(--stone);cursor:pointer;background:none;border:0}

/* estimate sidebar */
.est-card{background:#fff;color:var(--charcoal);border:1px solid #eae2d4;border-top:3px solid var(--gold);border-radius:4px;padding:32px;position:sticky;top:24px;box-shadow:0 24px 60px rgba(18,18,18,.08)}
.est-card .lbl{font:600 11.5px/1 'Inter';letter-spacing:.2em;text-transform:uppercase;color:#8a6a2f}
.est-card .range{font-family:'Cormorant Garamond',serif;font-size:46px;font-weight:600;color:var(--burgundy);margin:16px 0 6px;min-height:56px}
.est-card .conf{font:400 13px/1.6 'Inter';color:var(--deepgray)}
.est-card .factors{margin-top:24px;display:flex;flex-direction:column;gap:12px}
.est-card .factors li{font:400 13.5px/1.55 'Inter';color:#4a443c;list-style:none;padding-left:18px;position:relative}
.est-card .factors li::before{content:'—';position:absolute;left:0;color:#8a6a2f}
.est-card .disc{margin-top:24px;padding-top:18px;border-top:1px solid #eae2d4;font:400 11.5px/1.6 'Inter';color:var(--stone)}
.est-card .cta{margin-top:22px;width:100%}
.spin{display:inline-block;width:18px;height:18px;border:2px solid var(--gold);border-top-color:transparent;border-radius:50%;animation:sp 1s linear infinite;vertical-align:middle}
@keyframes sp{to{transform:rotate(360deg)}}

/* chatbot */
.chatfab{position:fixed;right:24px;bottom:24px;z-index:60;display:flex;align-items:center;gap:10px}
.chatfab .fab{width:60px;height:60px;border-radius:50%;background:var(--gold);color:var(--charcoal);font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 14px 34px rgba(18,18,18,.35);position:relative;border:0}
.chatfab .fab-lbl{background:#fff;color:var(--charcoal);border:1px solid #e2dacb;border-radius:100px;padding:9px 14px;font:600 12.5px/1 'Inter';letter-spacing:.04em;box-shadow:0 10px 26px rgba(18,18,18,.18);white-space:nowrap;cursor:pointer}
.chatfab .dot{position:absolute;top:4px;right:4px;width:12px;height:12px;border-radius:50%;background:#3fae62;border:2px solid var(--gold)}
.chatwin{position:fixed;right:24px;bottom:96px;width:390px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 130px);background:#fff;border-radius:8px;box-shadow:0 30px 80px rgba(18,18,18,.35);display:none;flex-direction:column;overflow:hidden;z-index:60}
.chatwin.open{display:flex}
.chat-head{background:var(--charcoal);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:12px}
.chat-head .av{width:38px;height:38px;border-radius:50%;background:var(--burgundy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:17px}
.chat-head b{font:600 15px/1.2 'Inter'}
.chat-head small{display:block;font:400 11.5px/1.4 'Inter';color:var(--warmgray)}
.chat-head .on{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3fae62;margin-right:6px}
.chat-cb{margin-left:auto;border:1px solid rgba(212,179,106,.5);background:none;color:var(--gold);border-radius:100px;padding:7px 12px;font:600 11.5px/1 'Inter';cursor:pointer;transition:.15s;white-space:nowrap}
.chat-cb:hover{background:var(--gold);color:var(--charcoal)}
.chat-x{border:0;background:none;color:#cfc7ba;font-size:22px;line-height:1;cursor:pointer;padding:2px 6px;margin-left:2px}
.chat-x:hover{color:#fff}
.cb-form{align-self:stretch;display:flex;gap:8px;background:#fff;border:1px solid #eae2d4;border-radius:8px;padding:10px}
.cb-form input{flex:1;min-width:0;border:1px solid #e2dacb;border-radius:6px;padding:9px 12px;font:400 13.5px/1 'Inter'}
.cb-form button{border:0;background:var(--burgundy);color:#fff;border-radius:6px;padding:9px 14px;font:600 12.5px/1 'Inter';cursor:pointer}
.chat-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;background:var(--ivory)}
.msg{max-width:85%;padding:12px 15px;border-radius:10px;font:400 14px/1.55 'Inter';white-space:pre-wrap}
.msg.bot{background:#fff;border:1px solid #eae2d4;border-bottom-left-radius:3px;align-self:flex-start}
.msg.user{background:var(--burgundy);color:#fff;border-bottom-right-radius:3px;align-self:flex-end}
.msg.sys{align-self:center;font:400 12px/1.4 'Inter';color:var(--stone);background:none;padding:2px}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.quick button{font:500 12.5px/1 'Inter';color:var(--burgundy);border:1px solid var(--burgundy);background:#fff;border-radius:100px;padding:8px 14px;cursor:pointer}
.quick button:hover{background:var(--sand)}
.chat-input{display:flex;gap:10px;padding:14px;border-top:1px solid #eae2d4;background:#fff}
.chat-input input{flex:1;border:1px solid #e2dacb;border-radius:100px;padding:12px 18px;font:400 14px/1 'Inter'}
.chat-input input:focus{outline:2px solid var(--gold)}
.chat-input button{width:44px;height:44px;border-radius:50%;background:var(--burgundy);color:var(--gold);border:0;font-size:16px;cursor:pointer}
.typing i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--stone);margin-right:4px;animation:blink 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,80%,100%{opacity:.25}40%{opacity:1}}

/* trust bar */
@media (max-width:900px){
}
/* lead capture form */
.leadform{display:grid;gap:14px;margin-top:18px}
.leadform label{font:600 12.5px/1.4 'Inter';color:var(--deepgray);display:block}
.leadform input{display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid #ddd3c2;background:#fff;font:400 14px/1.4 'Inter';color:var(--charcoal);outline:none;box-sizing:border-box}
.leadform input:focus{border-color:var(--gold)}
.leadform select{display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid #ddd3c2;background:#fff;font:400 14px/1.4 'Inter';color:var(--charcoal);outline:none;box-sizing:border-box;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238A837A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.leadform select:focus{border-color:var(--gold)}
.leadrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.leadrow{grid-template-columns:1fr}}
.breakdown{margin:14px 0 4px;padding:12px 14px;background:rgba(212,179,106,.1);border:1px solid rgba(166,129,60,.35)}
.bd-row{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;font:400 12.5px/1.4 'Inter';color:#4a443c}
.bd-row+.bd-row{border-top:1px solid rgba(166,129,60,.2)}
.bd-row b{font:600 13px/1.4 'Inter';color:var(--burgundy)}
/* SOL banner */
.sol{margin-top:22px;background:var(--ivory);padding:14px 18px;font:400 13.5px/1.6 'Inter';color:var(--deepgray)}
.sol b{color:var(--charcoal)}
/* mic */
#chatMic{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #e2dacb;font-size:15px;cursor:pointer}
#chatMic.rec{background:var(--gold);animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.6}}
/* entry animations */
.est-card{animation:rise .5s ease both}
.panel{animation:wz .5s ease both}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.msg{animation:rise .25s ease both}

/* wizard step transition */
.wz-anim{animation:wz .35s ease both}
@keyframes wz{from{opacity:0}to{opacity:1}}
.opt{position:relative}
.opt.sel::after{content:'✓';position:absolute;top:8px;right:10px;font:700 12px/1 'Inter';color:var(--burgundy)}
/* recap chips on lead step */
.recap{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.recap span{font:500 12px/1 'Inter';color:var(--deepgray);background:var(--sand);border:1px solid #e2dacb;border-radius:100px;padding:7px 12px}
/* analyzing steps */
.an-steps{margin-top:20px;display:grid;gap:10px}
.an-step{font:400 13px/1.5 'Inter';color:var(--deepgray);opacity:0;animation:rise .5s ease forwards}
/* confidence bar */
.confbar{display:block;height:5px;border-radius:100px;background:#ece5d8;margin-top:10px;overflow:hidden}
.confbar i{display:block;height:100%;border-radius:100px;background:linear-gradient(90deg,var(--burgundy),var(--gold));transition:width 1.1s ease}
/* chat message rows */
.mrow{display:flex;align-items:flex-end;gap:9px;max-width:92%}
.mrow .msg{max-width:100%}
.mav{flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:var(--burgundy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:12px;margin-bottom:2px}
.mtime{font:400 10.5px/1 'Inter';color:var(--stone);margin-top:-6px}
.mtime.bot{align-self:flex-start;padding-left:35px}
.mtime.user{align-self:flex-end}
/* chat window open animation + header polish */
.chatwin.open{animation:chatin .28s cubic-bezier(.2,.9,.3,1.2) both}
@keyframes chatin{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
.chat-head{background:linear-gradient(135deg,var(--charcoal) 0%,#2a1512 100%);border-bottom:2px solid var(--gold)}
.quick button{transition:.15s}
.quick button:hover{background:var(--burgundy);color:#fff}

/* conversation rating + proactive teaser */
.rate-row{align-self:center;display:flex;align-items:center;gap:8px;font:400 12px/1 'Inter';color:var(--stone);margin-top:4px}
.rate-row button{border:1px solid #e2dacb;background:#fff;border-radius:100px;padding:6px 10px;font-size:14px;cursor:pointer;transition:.15s}
.rate-row button:hover{border-color:var(--gold);background:var(--sand)}
.chat-teaser{position:fixed;right:24px;bottom:96px;z-index:59;background:#fff;border:1px solid #eae2d4;border-left:3px solid var(--gold);border-radius:8px;box-shadow:0 18px 50px rgba(18,18,18,.25);padding:14px 34px 14px 16px;font:400 13px/1.5 'Inter';color:var(--charcoal);max-width:260px;cursor:pointer;animation:chatin .3s cubic-bezier(.2,.9,.3,1.2) both}
.chat-teaser strong{font-weight:600;color:var(--burgundy)}
.teaser-x{position:absolute;top:6px;right:8px;border:0;background:none;font-size:16px;color:var(--stone);cursor:pointer}
.chatfab .fab.pulse{animation:fabpulse 1.6s ease-out infinite}
@keyframes fabpulse{0%{box-shadow:0 14px 34px rgba(18,18,18,.35),0 0 0 0 rgba(212,179,106,.55)}70%{box-shadow:0 14px 34px rgba(18,18,18,.35),0 0 0 16px rgba(212,179,106,0)}100%{box-shadow:0 14px 34px rgba(18,18,18,.35),0 0 0 0 rgba(212,179,106,0)}}


@media (max-width:900px){
  .demo{padding:28px 0 36px}
  .demo .cols{grid-template-columns:1fr;gap:24px}
  .est-card{position:static}
  .opts{gap:9px}
  .opt{padding:13px 13px;font-size:14px}
  .wizard{padding:28px 22px}
  .wizard h2{font-size:27px}
}

/* mobile-first estimator: hide the empty estimate panel while answering,
   dock navigation + live running estimate fixed to the bottom of the screen */
@media (max-width:900px){
  .est-card{display:none}
  .est-card.ready{display:block}
  .wizard{background:none;border:0;box-shadow:none;padding:0}
  .wz-nav{position:fixed;left:0;right:0;bottom:0;z-index:56;margin:0;display:block;background:var(--charcoal);padding:7px 16px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -10px 28px rgba(18,18,18,.25);transform:translateZ(0)}
  .wz-links{gap:22px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:7px}
  .wz-links .back{color:#c9c2b6;font-size:13px;padding:2px 0}
  .wz-dockrow{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .wz-est{display:block;min-width:0}
  .wz-est span{display:block;font:700 9px/1 'Inter';letter-spacing:.12em;text-transform:uppercase;color:#9a938a;margin-bottom:3px}
  .wz-est b{color:var(--gold);font:700 15px/1.1 'Inter';white-space:nowrap}
  .wz-dockrow .btn{flex:0 0 auto;padding:11px 17px;border-radius:100px;font-size:13.5px}
  .wz-nav .btn-ghost-dark{border-color:rgba(255,255,255,.45);color:#fff}
  .q-hint{font-size:13.5px}
}

/* mobile: full-screen chat so it never overlaps other sections */
@media (max-width:700px){
  .chatwin{inset:0;width:100%;max-width:none;height:100dvh;max-height:none;border-radius:0;bottom:0;right:0}
  .chat-head{padding:15px 16px;padding-top:calc(15px + env(safe-area-inset-top))}
  .chat-body{padding:16px 14px}
  .msg{font-size:15px;padding:13px 15px}
  .chat-input{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
  .chat-input input{font-size:16px;padding:13px 18px}
  .quick button{font-size:13.5px;padding:10px 15px}
  .chatwin.open ~ .chatfab{display:none}
  .chat-teaser{left:16px;right:auto;max-width:calc(100vw - 32px)}
  .nextcard{max-width:100%}
}

/* estimator language toggle */
.langtog{display:inline-flex;border:1px solid #e2dacb;border-radius:100px;overflow:hidden;vertical-align:middle}
.langtog button{font:600 10.5px/1 'Inter';letter-spacing:.08em;padding:5px 10px;border:0;background:#fff;color:var(--stone);cursor:pointer;transition:.15s}
.langtog button.on{background:var(--burgundy);color:#fff}

/* chatbot post-capture next-steps card */
.nextcard{align-self:flex-start;max-width:88%;background:#fff;border:1px solid var(--gold);border-left:3px solid var(--gold);border-radius:12px;padding:14px 16px;margin:6px 0;font:400 13px/1.5 'Inter';color:#2c2620;box-shadow:0 4px 14px rgba(76,21,19,.08)}
.nextcard b{display:block;font:600 13px/1 'Inter';color:var(--burgundy);margin-bottom:8px}
.nextcard ol{margin:0 0 10px 18px;padding:0}
.nextcard li{margin:4px 0}
.nextcard a{display:inline-block;font:600 12.5px/1 'Inter';color:var(--burgundy);text-decoration:none;border:1px solid var(--burgundy);border-radius:100px;padding:8px 14px}
.nextcard a:hover{background:var(--sand)}

/* additions for theme embed */
.btn[disabled]{opacity:.45;cursor:not-allowed}
.ai-demo{background:var(--ivory);padding:56px 0 90px}
.ai-demo .cols{display:grid;grid-template-columns:1.35fr 1fr;gap:28px;align-items:start}
@media (max-width:900px){.ai-demo .cols{grid-template-columns:1fr}}

/* v1.7.0: bolder gold chat bubble with Chat 24/7 label */
.chatfab .fab{width:auto;height:56px;border-radius:100px;padding:0 20px 0 16px;gap:9px;background:linear-gradient(180deg,#e8cd8f,var(--gold));color:#121212;font-weight:700;box-shadow:0 14px 34px rgba(18,18,18,.4)}
.chatfab .fab .fab-lbl{font:700 14px/1 'Inter',sans-serif;letter-spacing:.02em;white-space:nowrap}
.chatfab .dot{border-color:#e8cd8f}
@keyframes fabpulse{0%{box-shadow:0 14px 34px rgba(18,18,18,.4),0 0 0 0 rgba(76,21,19,.45)}70%{box-shadow:0 14px 34px rgba(18,18,18,.4),0 0 0 16px rgba(76,21,19,0)}100%{box-shadow:0 14px 34px rgba(18,18,18,.4),0 0 0 0 rgba(76,21,19,0)}}
@media (max-width:900px){.chatfab .fab{width:auto;height:56px;font-size:22px;padding:0 20px 0 16px}.chatfab .fab .fab-lbl{display:inline;font-size:14px}}

/* v2.6.3: mobile chat bubble anchored to the true bottom corner; it only
   lifts when a fixed bottom bar (sticky call bar / estimator dock) is shown */
@media (max-width:900px){
  .chatfab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));transition:bottom .3s ease}
  .chat-teaser{bottom:calc(84px + env(safe-area-inset-bottom));transition:bottom .3s ease}
  body.scb-on .chatfab{bottom:calc(74px + env(safe-area-inset-bottom))}
  body.scb-on .chat-teaser{bottom:calc(144px + env(safe-area-inset-bottom))}
  body.page-template-page-ai-case-estimator .chatfab{bottom:calc(96px + env(safe-area-inset-bottom))}
  body.page-template-page-ai-case-estimator .chat-teaser{bottom:calc(166px + env(safe-area-inset-bottom))}
}

/* ── "What is an injury worth?" case-value explorer ─────────────── */
.cw-band{background:#fff;padding:72px 0 56px;border-top:1px solid #eee}
.cw-head{text-align:center;margin-bottom:36px}
.cw-head h2{font:700 clamp(34px,5vw,56px)/1.05 var(--font-display);color:var(--charcoal);margin:0 0 10px}
.cw-head p{font:600 clamp(16px,2vw,22px)/1.3 var(--font-body);color:var(--charcoal);margin:0}
.cw-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:860px;margin:0 auto}
.cw-panel{background:#faf9f6;border:1px solid #e8e4da;border-radius:12px;padding:28px}
.cw-panel-title{font:700 20px/1.2 var(--font-display);color:var(--charcoal);margin:0 0 18px}
.cw-q{display:block;font:600 14px/1.3 var(--font-body);color:var(--charcoal);margin:14px 0 8px}
.cw-select-wrap{position:relative}
.cw-select-wrap::after{content:"▾";position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--burgundy);pointer-events:none}
.cw-select-wrap select{width:100%;appearance:none;-webkit-appearance:none;background:#fff;border:1px solid #d8d2c4;border-radius:8px;padding:13px 40px 13px 16px;font:500 15px/1.2 var(--font-body);color:var(--charcoal);cursor:pointer}
.cw-select-wrap select:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.cw-result{background:#faf9f6;border:1px solid #e8e4da;border-radius:12px;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.cw-recovered{font:700 18px/1.3 var(--font-body);color:var(--charcoal);margin:0 0 6px}
.cw-range{font:800 clamp(32px,4vw,44px)/1 var(--font-body);color:var(--burgundy);margin:0 0 18px;animation:cw-pop .35s ease}
@keyframes cw-pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.cw-cta{display:block;width:100%;background:var(--gold);color:var(--charcoal);border:0;border-radius:8px;padding:15px 20px;font:700 16px/1 var(--font-body);cursor:pointer;transition:.2s}
.cw-cta:hover{background:var(--gold-dark)}
.cw-disc{font:400 11.5px/1.5 var(--font-body);color:#8a857a;margin:14px 0 0}
.cw-cases{max-width:1020px;margin:24px auto 0;background:#faf9f6;border:1px solid #e8e4da;border-radius:12px;padding:28px}
.cw-cases-title{font:700 20px/1.2 var(--font-display);color:var(--charcoal);margin:0 0 18px}
.cw-cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cw-case{background:var(--burgundy);color:#f3efe6;border-radius:10px;padding:24px 20px;animation:cw-pop .35s ease}
.cw-case-amount{display:block;font:800 clamp(24px,3vw,32px)/1 var(--font-body);color:var(--gold);margin-bottom:10px}
.cw-case-desc{font:400 14px/1.5 var(--font-body);margin:0}
.cw-note{text-align:center;font:400 13px/1.5 var(--font-body);color:#8a857a;margin:22px auto 0;max-width:720px}
@media (max-width:820px){
  .cw-grid{grid-template-columns:1fr}
  .cw-cases-grid{grid-template-columns:1fr}
  .cw-band{padding:52px 0 40px}
}

/* Guided estimate quiz overlay */
.cwq{position:fixed;inset:0;z-index:9999;background:rgba(20,17,14,.66);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}
.cwq-card{background:#fff;border-radius:14px;max-width:560px;width:100%;max-height:92vh;overflow-y:auto;padding:26px 30px 34px;animation:cw-pop .3s ease}
.cwq-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cwq-back{background:none;border:0;color:#8a857a;font:600 14px/1 var(--font-body);cursor:pointer;padding:6px 0}
.cwq-back:hover{color:var(--burgundy)}
.cwq-close{background:none;border:0;color:#8a857a;font:400 26px/1 var(--font-body);cursor:pointer;padding:0 4px}
.cwq-close:hover{color:var(--burgundy)}
.cwq-progress{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.cwq-bar{flex:1;height:6px;background:#eee7d9;border-radius:3px;overflow:hidden}
.cwq-bar span{display:block;height:100%;background:var(--gold);border-radius:3px;transition:width .35s ease}
.cwq-pct{font:600 12px/1 var(--font-body);color:#8a857a;white-space:nowrap}
.cwq-step h3{font:700 clamp(22px,3vw,28px)/1.2 var(--font-display);color:var(--charcoal);margin:0 0 18px;text-align:center}
.cwq-hint{font:400 14px/1.4 var(--font-body);color:#8a857a;text-align:center;margin:-8px 0 16px}
.cwq-opts{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.cwq-opt{background:#faf9f6;border:1.5px solid #d8d2c4;border-radius:10px;padding:14px 18px;font:600 15px/1.3 var(--font-body);color:var(--charcoal);cursor:pointer;text-align:left;transition:.15s}
.cwq-opt:hover{border-color:var(--gold);background:#fdf9ef}
.cwq-opt.sel{border-color:var(--gold);background:#fdf5e2;box-shadow:0 0 0 1px var(--gold)}
.cwq-continue{display:block;width:100%;background:var(--gold);color:var(--charcoal);border:0;border-radius:8px;padding:15px 20px;font:700 16px/1.2 var(--font-body);cursor:pointer;text-align:center;text-decoration:none;transition:.2s}
.cwq-continue:hover{background:var(--gold-dark)}
.cwq-continue:disabled{opacity:.45;cursor:not-allowed}
.cwq-ghost{display:block;width:100%;background:none;border:1.5px solid var(--burgundy);color:var(--burgundy);border-radius:8px;padding:13px 20px;font:700 15px/1.2 var(--font-body);cursor:pointer;transition:.2s}
.cwq-ghost:hover{background:var(--burgundy);color:#f3efe6}
.cwq-input{width:100%;background:#fff;border:1.5px solid #d8d2c4;border-radius:8px;padding:13px 16px;font:500 15px/1.2 var(--font-body);color:var(--charcoal);margin-bottom:14px}
.cwq-input:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.cwq-date{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.cwq-date span{font:600 18px/1 var(--font-body);color:#8a857a;padding-bottom:14px}
.cwq-date .cwq-input{text-align:center;flex:1}
.cwq-date .cwq-year{flex:1.4}
.cwq-form{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.cwq-form .cwq-input:nth-child(3),.cwq-form .cwq-input:nth-child(4){grid-column:1 / -1}
.cwq-consent{font:400 11px/1.5 var(--font-body);color:#8a857a;margin:4px 0 14px}
.cwq-error{font:600 13px/1.4 var(--font-body);color:#8a2f28;margin:0 0 12px;text-align:center}
.cwq-good{text-align:center}
.cwq-good p{font:400 15px/1.5 var(--font-body);color:#5b564c;margin:0 0 20px}
.cwq-resultstep{text-align:center}
.cwq-range{font:800 clamp(30px,5vw,44px)/1.1 var(--font-body);color:var(--burgundy);margin:0 0 10px}
.cwq-actions{display:flex;flex-direction:column;gap:10px;margin:18px 0 6px}
@media (max-width:560px){
  .cwq{padding:0;align-items:flex-end}
  .cwq-card{border-radius:14px 14px 0 0;max-height:94vh;padding:20px 20px 30px}
  .cwq-form{grid-template-columns:1fr}
}

/* v2.14: LIVE CHAT 24/7 bubble — brand-red ring (client asked for a non-gold
   color that stands out more), white label pill, green live dot */
.chatfab .fab{background:linear-gradient(180deg,#c4241d,#a11914);color:#fff;box-shadow:0 14px 34px rgba(161,25,20,.38)}
.chatfab .fab .fab-lbl{background:#fff;color:#a11914;border-color:#f3c9c6;font-weight:800;letter-spacing:.06em}
.chatfab .dot{border-color:#c4241d}
@keyframes fabpulse{0%{box-shadow:0 14px 34px rgba(161,25,20,.38),0 0 0 0 rgba(161,25,20,.55)}70%{box-shadow:0 14px 34px rgba(161,25,20,.38),0 0 0 16px rgba(161,25,20,0)}100%{box-shadow:0 14px 34px rgba(161,25,20,.38),0 0 0 0 rgba(161,25,20,0)}}
