#rh-chat-open{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:9900;display:flex;align-items:center;gap:10px;border:0;border-radius:32px;padding:16px 20px;background:#F28123;color:#191919;font:600 15px Archivo,sans-serif;box-shadow:0 5px 24px #0003;cursor:pointer}#rh-chat{position:fixed;inset:auto 24px calc(24px + env(safe-area-inset-bottom)) auto;margin:0;width:390px;max-width:calc(100vw - 32px);height:650px;max-height:calc(100dvh - 48px);padding:0;border:1px solid #ddd;border-radius:18px;background:#fff;color:#222;box-shadow:0 12px 60px #0004;font:16px/1.5 Archivo,sans-serif;z-index:10000}#rh-chat[open]{display:flex;flex-direction:column}#rh-chat:not([open]),#rh-chat [hidden]{display:none!important}#rh-chat::backdrop{background:#0002}#rh-chat header{display:flex;align-items:center;justify-content:space-between;background:#222;color:#fff;padding:17px 20px;border-bottom:4px solid #F28123}#rh-chat header small{display:block;color:#ddd;font-size:12px}#rh-chat-close{border:0;background:none;color:#fff;font-size:30px;cursor:pointer;padding:0 6px}#rh-chat-content{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:20px}#rh-chat form{margin:0}#rh-chat-contact,#rh-chat-schedule{display:grid;gap:12px}#rh-chat label{display:grid;gap:5px;font-size:14px}#rh-chat input{box-sizing:border-box;width:100%;min-width:0;border:1px solid #aaa;border-radius:8px;padding:10px;font:16px Archivo,sans-serif;color:#222;background:#fff}#rh-chat small{font-size:12px;line-height:1.5}#rh-chat p{margin:0 0 12px;font-size:15px;line-height:1.6}#rh-chat button{font-family:Archivo,sans-serif;cursor:pointer}#rh-chat .rh-chat-primary{padding:11px 14px;border:0;border-radius:24px;background:#F28123;color:#191919;font-weight:600;font-size:14px}#rh-chat button:disabled{opacity:.55;cursor:wait}#rh-chat-messages p{padding:12px 14px;background:#FFFFFF;border-radius:12px;margin-bottom:12px;white-space:pre-wrap;overflow-wrap:anywhere}#rh-chat-messages p[data-role=visitor]{background:#DBEAFE;margin-left:24px}#rh-chat-send{display:flex;gap:8px;padding:14px;border-top:1px solid #ddd;background:#fff}#rh-chat-send button{border:0;border-radius:8px;background:#222;color:#fff;padding:8px 13px}#rh-chat-call{margin:8px 0 14px;width:100%}#rh-chat-schedule{padding:14px 0;border-top:1px solid #ddd}#rh-chat-today{justify-self:start;border:1px solid #aaa;border-radius:15px;background:white;padding:5px 12px}#rh-chat-error{color:#a32212;padding:8px 16px;margin:0!important;font-size:14px!important}.rh-chat-honey,.rh-chat-sr{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}#rh-chat button:focus-visible,#rh-chat-open:focus-visible{outline:3px solid #F28123;outline-offset:3px}@media(max-width:650px){#rh-chat-open{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));padding:15px}#rh-chat-open span{display:none}#rh-chat{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));left:12px;width:auto;max-width:none;height:calc(100dvh - 24px - env(safe-area-inset-bottom));max-height:calc(100dvh - 24px - env(safe-area-inset-bottom))}#rh-chat-content{padding:16px}}

/* Friendly assistant identity, distinct from the site's sales CTA. */
#rh-chat-open{padding:0;background:transparent;box-shadow:none;border-radius:50%;gap:12px}
#rh-chat-open .rh-chat-avatar,#rh-chat .rh-chat-avatar{display:grid;place-items:center;flex:none;width:68px;height:68px;border-radius:24px;background:#fff8f0;color:#292929;border:3px solid #F28123;box-shadow:0 5px 20px #0002;box-sizing:border-box}
#rh-chat-open .rh-chat-avatar{transition:transform .18s ease,box-shadow .18s ease}
#rh-chat-open:hover .rh-chat-avatar{transform:translateY(-3px);box-shadow:0 8px 24px #0003}
#rh-chat-open .rh-chat-launch-label{display:block;background:white;color:#292929;border:1px solid #e4e0dc;padding:10px 14px;border-radius:14px 14px 3px 14px;box-shadow:0 3px 14px #0001;font:500 14px Archivo,sans-serif}
#rh-chat header{background:#fff;color:#222;border-bottom:1px solid #eee;padding:16px}
#rh-chat .rh-chat-heading{display:flex;gap:12px;align-items:center}
#rh-chat .rh-chat-avatar{width:46px;height:46px;border-radius:16px;border-width:2px;box-shadow:none}
#rh-chat .rh-bot-face{width:32px;height:32px}
#rh-chat header small{color:#666;font-size:12px}
#rh-chat-close{color:#333}
#rh-chat-content{background:#F3F4F6}
#rh-chat .rh-chat-welcome{background:#fff;border:1px solid #ece6df;border-radius:4px 18px 18px 18px;padding:16px;margin-bottom:4px}
#rh-chat .rh-chat-welcome strong{font-size:19px}
#rh-chat .rh-chat-welcome p{margin:5px 0 0;font-size:15px}
#rh-chat-contact>small{color:#666}
@media(max-width:650px){#rh-chat-open{padding:0}#rh-chat-open .rh-chat-avatar{display:grid;width:62px;height:62px;border-radius:22px}#rh-chat-open .rh-chat-launch-label{display:none}}
@media(prefers-reduced-motion:reduce){#rh-chat-open .rh-chat-avatar{transition:none}#rh-chat-open:hover .rh-chat-avatar{transform:none}}
#rh-chat-open .rh-bot-face{width:44px;height:44px;flex:none}

#rh-chat .rh-chat-field-error{color:#a32212;font-size:13px;line-height:1.4}#rh-chat input[aria-invalid="true"]{border-color:#a32212}

#rh-chat .rh-chat-brand{display:flex;flex-direction:column;align-items:flex-start;gap:8px}#rh-chat .rh-chat-logo{display:block;width:142px;height:auto;max-width:100%;object-fit:contain}#rh-chat .rh-chat-brand strong{font-size:14px;font-weight:500}#rh-chat header{flex-shrink:0}

#rh-chat header{position:relative;justify-content:center;padding-inline:52px}#rh-chat .rh-chat-brand{align-items:center;text-align:center}#rh-chat-close{position:absolute;right:16px;top:50%;transform:translateY(-50%)}

#rh-chat .rh-chat-greeting{display:flex;align-items:center;gap:12px;margin-bottom:10px}#rh-chat .rh-chat-greeting .rh-chat-avatar{width:42px;height:42px;border-radius:14px}#rh-chat .rh-chat-greeting .rh-bot-face{width:30px;height:30px}



/* Larger launcher and label; conversation panel retains its original dimensions. */
#rh-chat-open .rh-chat-avatar{width:78px;height:78px;border-radius:27px}#rh-chat-open .rh-bot-face{width:50px;height:50px}#rh-chat-open .rh-chat-launch-label{font-size:16px;padding:12px 16px}
@media(max-width:650px){#rh-chat-open .rh-chat-avatar{width:70px;height:70px;border-radius:24px}#rh-chat-open .rh-bot-face{width:44px;height:44px}}

/* Soft white fade separates the launcher from busy page content. */
#rh-chat-open{isolation:isolate}#rh-chat-open::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-42px -28px -32px -42px;background:radial-gradient(ellipse at 65% 65%,rgba(255,255,255,.94) 0%,rgba(255,255,255,.72) 38%,rgba(255,255,255,0) 72%)}
@media(max-width:650px){#rh-chat-open::before{inset:-30px -20px -24px -30px}}

/* Defined launcher surfaces without a page backdrop. */
#rh-chat-open::before{content:none}#rh-chat-open .rh-chat-avatar{border-width:2px;box-shadow:0 2px 8px #0000001a}#rh-chat-open .rh-chat-launch-label{background:#fff8f0;border:2px solid #F28123;box-shadow:0 2px 8px #00000014}#rh-chat-open:hover .rh-chat-avatar{box-shadow:0 3px 10px #00000024}

#rh-chat-contact .rh-chat-field-label{display:flex;align-items:center;gap:8px}
#rh-chat-contact .rh-chat-field-label svg{width:17px;height:17px;flex:none;color:#6b6b6b;stroke-width:1.75}

/* Conversational quick replies share a quiet outlined treatment. */
#rh-chat .rh-chat-options{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
#rh-chat .rh-chat-options button{width:auto;margin:0;max-width:100%;padding:6px 14px;border:1px solid #dedede;border-radius:20px;background:#f0f0f0;color:#191919;font-size:14px;line-height:1.4;text-align:left;min-height:36px}
#rh-chat .rh-chat-options button:hover{background:#e5e5e5;border-color:#ccc}

/* Selected preview Option 04: one connected orange pill. */
#rh-chat-open{background:#F28123;padding:10px 22px 10px 10px;gap:12px;border-radius:40px;box-shadow:0 5px 16px #35271920;max-width:calc(100vw - 32px)}
#rh-chat-open .rh-chat-avatar{order:0;width:56px;height:56px;border:0;border-radius:50%;background:#fff8ee;box-shadow:none}
#rh-chat-open .rh-bot-face{width:40px;height:40px}
#rh-chat-open .rh-chat-launch-label{display:block;order:1;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#292929;font-size:16px;font-weight:600}
#rh-chat-open:hover .rh-chat-avatar{transform:none;box-shadow:none}
#rh-chat-open:hover{background:#ff963d}
@media(max-width:650px){#rh-chat-open{padding:8px 17px 8px 8px;gap:9px}#rh-chat-open .rh-chat-avatar{width:48px;height:48px}#rh-chat-open .rh-bot-face{width:35px;height:35px}#rh-chat-open .rh-chat-launch-label{font-size:14px}}

/* Owner-selected spring entrance; preserve the existing dialog and launcher design. */
#rh-chat[open]{transform-origin:bottom right;animation:rh-chat-spring-open 750ms linear;}
@keyframes rh-chat-spring-open{
  0%{opacity:0;transform:scale(0)}
  45%{opacity:1;transform:scale(1.04)}
  65%{transform:scale(.96)}
  82%{transform:scale(1.02)}
  100%{opacity:1;transform:scale(1)}
}
/* A near-full-screen mobile dialog needs less overshoot to stay within the viewport. */
@media(max-width:650px){#rh-chat[open]{animation-name:rh-chat-spring-mobile}}
@keyframes rh-chat-spring-mobile{
  0%{opacity:0;transform:scale(0)}
  45%{opacity:1;transform:scale(1.01)}
  65%{transform:scale(.98)}
  82%{transform:scale(1.005)}
  100%{opacity:1;transform:scale(1)}
}
@media(prefers-reduced-motion:reduce){#rh-chat[open]{animation:none}}

#rh-chat-messages a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:600}#rh-chat-messages a:focus-visible{outline:2px solid #F28123;outline-offset:3px}

#rh-chat .rh-chat-disclaimer{flex:none;padding:12px 16px;border-top:1px solid #e3e0dc;background:#faf9f7;color:#555;font:400 14px/1.5 Archivo,sans-serif;overflow-wrap:anywhere}#rh-chat .rh-chat-disclaimer a{color:#333;text-decoration:underline;text-underline-offset:2px}#rh-chat .rh-chat-disclaimer a:focus-visible{outline:2px solid #F28123;outline-offset:2px}#rh-chat-content{min-height:0}

#rh-chat-reset{flex:none;align-self:flex-start;margin:8px 16px 0;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:#444;font:500 14px/1.4 Archivo,sans-serif;min-height:40px}#rh-chat-reset:hover{background:#fff0e2}

#rh-chat-send{flex:none;align-items:flex-end}#rh-chat-question{box-sizing:border-box;flex:1;width:100%;min-width:0;min-height:44px;max-height:144px;resize:none;overflow-y:auto;border:1px solid #aaa;border-radius:8px;padding:10px;font:16px/22px Archivo,sans-serif;color:#222;background:#fff}#rh-chat-send button{min-height:44px}#rh-chat-question:focus-visible{outline:2px solid #F28123;outline-offset:1px}

/* Keep the composer inside the visual viewport when mobile keyboards reduce it. */
#rh-chat header{flex-shrink:0}
#rh-chat[data-compact="true"] header{padding:8px 16px}
#rh-chat[data-compact="true"] .rh-chat-logo{width:100px;height:auto}
#rh-chat[data-compact="true"] #rh-chat-title{font-size:13px}
#rh-chat[data-compact="true"] #rh-chat-reset{margin-top:0;min-height:32px;padding:4px 10px}
#rh-chat[data-compact="true"] #rh-chat-send{padding:8px 12px}
#rh-chat[data-compact="true"] #rh-chat-question{max-height:66px}
#rh-chat[data-compact="true"] .rh-chat-disclaimer{padding:6px 12px}

#rh-chat .rh-chat-options-title{flex-basis:100%;font:500 13px/1.5 Archivo,sans-serif;color:#666;margin-bottom:2px}#rh-chat .rh-chat-disclaimer>div+div{margin-top:4px}#rh-chat .rh-chat-support{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 5px}#rh-chat .rh-chat-support a{white-space:nowrap}

#rh-chat .rh-chat-options{display:block}
#rh-chat .rh-chat-options-title{display:block;margin-bottom:8px}
#rh-chat .rh-chat-options-carousel{display:flex;align-items:center;gap:4px;min-width:0}
#rh-chat-options-track{display:flex;flex:1;min-width:0;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
#rh-chat-options-track::-webkit-scrollbar{display:none}
#rh-chat #rh-chat-options-track button{flex:0 0 auto;white-space:nowrap;max-width:none;background-clip:padding-box;border-top:4px solid transparent;border-bottom:4px solid transparent;min-height:44px}
#rh-chat .rh-chat-options button.rh-chat-options-arrow{flex:0 0 32px;width:32px;min-height:44px;padding:4px;border:0;border-radius:8px;background:transparent;color:#333;display:grid;place-items:center}
#rh-chat .rh-chat-options button.rh-chat-options-arrow:hover{background:#fff0e2}
#rh-chat .rh-chat-options-arrow svg{width:20px;height:20px}
#rh-chat-options-track:focus-visible{outline:2px solid #F28123;outline-offset:2px}

#rh-chat #rh-chat-options{flex:none;margin:0;padding:8px 14px 10px;border-top:1px solid #e3e0dc}
#rh-chat .rh-chat-options-arrow{transition:opacity 160ms ease,visibility 160ms}
#rh-chat .rh-chat-options-arrow[data-boundary="true"]{opacity:0;visibility:hidden;pointer-events:none}
#rh-chat[data-compact="true"] #rh-chat-options{padding:4px 12px}
#rh-chat[data-compact="true"] .rh-chat-options-title{margin-bottom:2px}
@media(prefers-reduced-motion:reduce){#rh-chat .rh-chat-options-arrow{transition:none}}

/* One blue highlight on each new assistant reply; never on visitor messages. */
#rh-chat-messages p[data-role="assistant"].rh-chat-new-reply{animation:rh-chat-warm-highlight 1.2s ease-out}
@keyframes rh-chat-warm-highlight{0%,35%{background-color:#cce7ff}100%{background-color:#FFFFFF}}
/* Keep the edge on the latest actual reply, not visitor messages or typing dots. */
@media(prefers-reduced-motion:reduce){#rh-chat-messages p[data-role="assistant"].rh-chat-new-reply{animation:none}}

/* Busy send stays readable; the fixed width avoids composer movement. */
#rh-chat-send button{position:relative;overflow:hidden;min-width:108px;white-space:nowrap}
#rh-chat-send button[data-state="sending"],#rh-chat-send button[data-state="replying"]{opacity:1;cursor:progress}
#rh-chat-send button[data-state="sending"]::after,#rh-chat-send button[data-state="replying"]::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,#ffffff30 50%,transparent 80%);transform:translateX(-100%);animation:rh-chat-send-shimmer 1.3s linear infinite;pointer-events:none}
@keyframes rh-chat-send-shimmer{to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){#rh-chat-send button::after{animation:none!important;display:none}}

#rh-chat-messages p.rh-chat-typing{display:flex;align-items:center;gap:5px;width:fit-content;min-height:44px}
.rh-chat-typing span{display:block;width:7px;height:7px;border-radius:50%;background:#64748b;animation:rh-chat-typing-wave 1.1s ease-in-out infinite}
.rh-chat-typing span:nth-child(2){animation-delay:.15s}.rh-chat-typing span:nth-child(3){animation-delay:.3s}
@keyframes rh-chat-typing-wave{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@media(prefers-reduced-motion:reduce){.rh-chat-typing span{animation:none;opacity:.7}}

/* Extra room only during four-field intake; conversation size stays unchanged. */
@media(min-width:651px){#rh-chat:has(#rh-chat-contact:not([hidden])){height:780px}}

/* Keep intake space for contact fields and Start chat; show notice during conversation. */
#rh-chat:has(#rh-chat-contact:not([hidden])) .rh-chat-disclaimer{display:none}

/* Compact intake spacing without changing modal dimensions or type sizes. */
#rh-chat-contact{gap:8px}
#rh-chat-contact .rh-chat-welcome{padding:12px;margin-bottom:0}
#rh-chat-contact .rh-chat-greeting{margin-bottom:6px}
#rh-chat-contact .privacy-link{margin:0;padding:0}

/* Outline the visible pill while preserving its transparent touch-area padding. */
#rh-chat #rh-chat-options-track button{position:relative;border-left-color:transparent;border-right-color:transparent}
#rh-chat #rh-chat-options-track button::after{content:"";position:absolute;inset:0 -1px;border:1px solid #bfbfbf;border-radius:inherit;pointer-events:none}

#rh-chat-idle{flex:none;padding:10px 16px;background:#eef5ff;border-top:1px solid #ccdbee;color:#334155;font:400 14px/1.4 Archivo,sans-serif}
#rh-chat-keep{margin:6px 0 0;padding:6px 10px;border:1px solid #9aafc9;border-radius:6px;background:white;color:#222;font-size:14px;min-height:36px}

/* One-pass soft shimmer for the chat entry action. */
#rh-chat-contact .rh-chat-primary{position:relative;isolation:isolate;overflow:hidden;transition:background .22s}
#rh-chat-contact .rh-chat-primary::after{content:"";position:absolute;pointer-events:none;top:-60%;bottom:-60%;width:75%;left:-90%;background:linear-gradient(90deg,transparent,#ffffff50,transparent);transform:skewX(-22deg)}
#rh-chat-contact .rh-chat-primary:not(:disabled):hover,#rh-chat-contact .rh-chat-primary:not(:disabled):focus-visible{background:#f98b30}
#rh-chat-contact .rh-chat-primary:not(:disabled):hover::after,#rh-chat-contact .rh-chat-primary:not(:disabled):focus-visible::after{animation:rh-chat-soft-shimmer 1s ease-out}
@keyframes rh-chat-soft-shimmer{to{left:135%}}
@media(prefers-reduced-motion:reduce){#rh-chat-contact .rh-chat-primary{transition:none}#rh-chat-contact .rh-chat-primary::after{display:none;animation:none!important}}

/* Quiet field focus: no orange outer ring in the chat dialog. */
#rh-chat input:focus,#rh-chat textarea:focus{outline:none;outline-offset:0;border-color:#60656b;box-shadow:inset 0 0 0 1px #60656b}

#rh-chat-contact .privacy-link{text-align:center}
/* Owner-selected Friendly bounce: large robot settles into its greeting slot. */
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar{position:relative;z-index:2;pointer-events:none;transform-origin:center;animation:rh-chat-robot-wave 1.15s ease both}
@keyframes rh-chat-robot-bounce{
  0%,15%{transform:translate(88px,85px) scale(2.7)}
  70%{transform:translate(-4px,-4px) scale(.87)}
  86%{transform:translate(2px,2px) scale(1.08)}
  100%{transform:none}
}
@media(prefers-reduced-motion:reduce){#rh-chat[open] .rh-chat-greeting .rh-chat-avatar{animation:none}}
/* Let the robot entrance be the only opening animation. */
#rh-chat[open]{animation:none}

/* Owner-selected Gentle wave, matching sample 3. */
@keyframes rh-chat-robot-wave{
  0%{transform:translate(var(--rh-robot-start-x,88px),var(--rh-robot-start-y,85px)) scale(3.25) rotate(0)}
  18%{transform:translate(var(--rh-robot-start-x,88px),var(--rh-robot-start-y,85px)) scale(3.25) rotate(-10deg)}
  32%{transform:translate(var(--rh-robot-start-x,88px),var(--rh-robot-start-y,85px)) scale(3.25) rotate(10deg)}
  45%{transform:translate(var(--rh-robot-start-x,88px),var(--rh-robot-start-y,85px)) scale(3.25) rotate(-5deg)}
  100%{transform:none}
}
/* Coin-like flip from the modal center into the greeting. */
@keyframes rh-chat-robot-coin{
  0%,12%{transform:perspective(650px) translate(var(--rh-robot-start-x,88px),var(--rh-robot-start-y,85px)) scale(2.6) rotateY(0deg) rotateZ(-8deg)}
  38%{transform:perspective(650px) translate(calc(var(--rh-robot-start-x,88px)*.8),calc(var(--rh-robot-start-y,85px)*.8)) scale(2.1) rotateY(180deg) rotateZ(5deg)}
  72%{transform:perspective(650px) translate(calc(var(--rh-robot-start-x,88px)*.2),calc(var(--rh-robot-start-y,85px)*.2)) scale(1.25) rotateY(360deg) rotateZ(-3deg)}
  90%{transform:perspective(650px) translate(0,0) scale(.96) rotateY(365deg) rotateZ(1deg)}
  100%{transform:perspective(650px) translate(0,0) scale(1) rotateY(360deg) rotateZ(0deg)}
}
/* Soft halo follows the robot's scale and fades as it settles. */
#rh-chat .rh-chat-greeting .rh-chat-avatar{isolation:isolate}
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar::before{content:"";position:absolute;inset:-18px;z-index:-1;pointer-events:none;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95) 0%,rgba(255,255,255,.65) 38%,rgba(255,255,255,0) 72%);animation:rh-chat-robot-halo 1.15s ease both}
@keyframes rh-chat-robot-halo{0%{opacity:0}14%,45%{opacity:1}85%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){#rh-chat[open] .rh-chat-greeting .rh-chat-avatar::before{display:none;animation:none}}
/* Slightly larger entry-action text. */
#rh-chat-contact .rh-chat-primary{font-size:15px}
/* Slightly quieter privacy link beneath the entry action. */
#rh-chat-contact .privacy-link{font-size:14.5px}

/* Callback is a reversible focused step; chat history and draft remain in place. */
#rh-chat #rh-chat-schedule{padding:0;border:0;gap:12px}
#rh-chat-schedule h2{font:600 23px/1.25 Archivo,sans-serif;margin:0 0 8px}
#rh-chat-schedule p{color:#555;margin:0;font-size:15px}
#rh-chat .rh-chat-back{display:inline-flex;align-items:center;gap:8px;justify-self:start;min-height:44px;padding:6px 0;border:0;background:none;color:#333;font-size:15px;font-weight:600}
#rh-chat .rh-chat-back svg{width:18px;height:18px}
#rh-chat .rh-chat-callback-phone{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;background:#fff;border:1px solid #ddd;border-radius:12px;padding:10px 14px}
#rh-chat .rh-chat-callback-phone strong{display:block;overflow-wrap:anywhere}
#rh-chat-edit-phone{min-height:44px;background:none;border:0;text-decoration:underline;color:#333;padding:6px;font-size:15px}
#rh-chat .rh-chat-timing{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}
#rh-chat .rh-chat-timing legend{font-size:14px;font-weight:600;margin-bottom:10px}
#rh-chat .rh-chat-timing label{display:flex;align-items:center;gap:10px;border:1px solid #ccc;border-radius:12px;padding:12px;background:#fff;cursor:pointer;font-size:15px}
#rh-chat .rh-chat-timing label:has(input:checked){border-color:#555;background:#f9f9f9}
#rh-chat .rh-chat-timing input{width:18px;height:18px;padding:0;margin:0;accent-color:#333;flex:none}
#rh-chat-preferred{display:grid;gap:6px}
#rh-chat-schedule .rh-chat-primary{min-height:48px;font-size:15px}

#rh-chat-callback-actions{flex:none;padding:12px 20px;background:#f3f4f6;border-top:1px solid #e5e5e5}
#rh-chat-callback-submit{width:100%;min-height:48px;font-size:15px}

#rh-chat #rh-chat-back{flex:none;margin:0;padding:8px 20px;background:#f3f4f6;border-bottom:1px solid #e5e5e5}
/* Quiet glide: original Roundhouse symbol arrives, then becomes the robot. */
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar{animation:rh-chat-symbol-glide 1.6s ease both,rh-chat-symbol-shell 1.6s ease both}
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar::before{animation-duration:1.6s}
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar::after{content:"";position:absolute;left:-2px;top:-2px;width:42px;height:42px;pointer-events:none;background:url('../images/brand/roundhouse.webp') -145px -4px / 224px auto no-repeat;animation:rh-chat-symbol-away 1.6s ease both}
#rh-chat[open] .rh-chat-greeting .rh-bot-face{animation:rh-chat-robot-reveal 1.6s ease both}
@keyframes rh-chat-symbol-glide{
  0%,30%{transform:translate(var(--rh-robot-start-x,88px),var(--rh-robot-start-y,85px)) scale(3.25)}
  82%,100%{transform:none}
}
@keyframes rh-chat-symbol-shell{0%,78%{background-color:transparent;border-color:transparent}94%,100%{background-color:#fff8f0;border-color:#F28123}}
@keyframes rh-chat-symbol-away{0%,78%{opacity:1}94%,100%{opacity:0}}
@keyframes rh-chat-robot-reveal{0%,78%{opacity:0}94%,100%{opacity:1}}
@media(prefers-reduced-motion:reduce){
  #rh-chat[open] .rh-chat-greeting .rh-chat-avatar,#rh-chat[open] .rh-chat-greeting .rh-bot-face{animation:none}
  #rh-chat[open] .rh-chat-greeting .rh-chat-avatar::after{display:none;animation:none}
}
/* Clean entrance: symbol first, then reveal the form without a halo. */
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar::before{display:none}
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar,
#rh-chat[open] .rh-chat-greeting .rh-chat-avatar::after,
#rh-chat[open] .rh-chat-greeting .rh-bot-face{animation-duration:1s}
#rh-chat[open] #rh-chat-contact > label,
#rh-chat[open] #rh-chat-contact > button,
#rh-chat[open] #rh-chat-contact > .privacy-link,
#rh-chat[open] .rh-chat-welcome > p,
#rh-chat[open] .rh-chat-greeting > strong{animation:rh-chat-entry-content 1s ease both}
@keyframes rh-chat-entry-content{0%,45%{opacity:0}100%{opacity:1}}
@media(prefers-reduced-motion:reduce){
  #rh-chat[open] #rh-chat-contact > label,
  #rh-chat[open] #rh-chat-contact > button,
  #rh-chat[open] #rh-chat-contact > .privacy-link,
  #rh-chat[open] .rh-chat-welcome > p,
  #rh-chat[open] .rh-chat-greeting > strong{animation:none}
}
#rh-chat[open] .rh-chat-welcome{animation:rh-chat-entry-card 1s ease both}
@keyframes rh-chat-entry-card{0%,45%{background-color:transparent;border-color:transparent}100%{background-color:#fff;border-color:#ece6df}}
@media(prefers-reduced-motion:reduce){#rh-chat[open] .rh-chat-welcome{animation:none}}
