.chat-bubble{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));right:24px;z-index:9999;width:60px;height:60px;border-radius:50%;background:rgba(192,139,62,.65);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(219,176,106,.3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(192,139,62,.25);transition:background .2s ease,box-shadow .2s ease,transform .2s ease;animation:chatBreathe 3s ease-in-out infinite}.chat-bubble:hover{background:rgba(192,139,62,.8);box-shadow:0 6px 24px rgba(192,139,62,.35);transform:scale(1.08);animation:none}.chat-bubble__icon{stroke:#fff}.chat-bubble--on-dark,body.chat-over-hero .chat-bubble{background:rgba(192,139,62,.6);box-shadow:0 4px 20px rgba(0,0,0,.2)}.chat-bubble--on-dark:hover,body.chat-over-hero .chat-bubble:hover{background:rgba(192,139,62,.78)}.chat-bubble--on-dark .chat-bubble__icon,body.chat-over-hero .chat-bubble .chat-bubble__icon{stroke:#fff}.chat-bubble:active{transform:scale(.95)}.chat-bubble__icon{width:26px;height:26px;transition:opacity .2s,transform .2s}.chat-bubble__close-icon{position:absolute;font-size:1.8rem;line-height:1;opacity:0;transform:rotate(-90deg) scale(.5);transition:opacity .2s,transform .2s;color:#fff}.chat-bubble--open .chat-bubble__icon{opacity:0;transform:rotate(90deg) scale(.5)}.chat-bubble--open .chat-bubble__close-icon{opacity:1;transform:rotate(0) scale(1)}.chat-bubble--open{animation:none}.chat-bubble--open,.chat-window--open~.chat-bubble{opacity:0;pointer-events:none}@keyframes chatPulse{0%,100%{box-shadow:0 4px 16px rgba(192,139,62,.35),0 0 0 0 rgba(192,139,62,0)}50%{box-shadow:0 4px 20px rgba(192,139,62,.45),0 0 0 10px rgba(192,139,62,.06)}}@keyframes chatBreathe{0%,100%{transform:scale(1);box-shadow:0 4px 16px rgba(192,139,62,.25),0 0 0 0 rgba(192,139,62,0)}50%{transform:scale(1.06);box-shadow:0 6px 24px rgba(192,139,62,.4),0 0 16px 4px rgba(219,176,106,.2)}}.chat-window{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));right:24px;z-index:9998;width:380px;max-width:calc(100vw - 48px);height:520px;max-height:calc(100vh - 100px);background:rgba(250,248,245,.82);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border:1px solid rgba(177,157,133,.3);border-radius:16px;box-shadow:0 12px 48px rgba(42,31,23,.15),0 0 0 1px rgba(255,255,255,.2) inset;display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(20px) scale(.95);transition:opacity .35s ease,visibility .35s,transform .35s cubic-bezier(.16, 1, .3, 1)}.chat-window--open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}body.chat-over-hero .chat-window{background:rgba(250,248,245,.88);box-shadow:0 12px 48px rgba(0,0,0,.22),0 0 0 1px rgba(255,255,255,.15) inset}.chat-window__header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;background:rgba(122,98,64,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(219,176,106,.15);flex-shrink:0}body.chat-over-hero .chat-window__header{background:rgba(122,98,64,.9)}.chat-window__title{display:flex;align-items:center;gap:8px;font-family:var(--font-heading);font-weight:500;font-style:italic;font-size:1.05rem;color:#fff;letter-spacing:.02em}body.chat-over-hero .chat-window__title{color:#fff}.chat-window__title-icon{width:22px;height:22px;object-fit:contain;opacity:.9;filter:brightness(10)}body.chat-over-hero .chat-window__title-icon{filter:brightness(10)}.chat-window__close{background:rgba(192,139,62,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(219,176,106,.25);color:#fff;font-size:1rem;line-height:1;cursor:pointer;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;transition:background .2s,border-color .2s}.chat-window__close:hover{background:rgba(192,139,62,.75);border-color:rgba(219,176,106,.4)}body.chat-over-hero .chat-window__close{background:rgba(192,139,62,.55);color:#fff}.chat-window__messages{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.65rem;background:0 0;scrollbar-width:thin;scrollbar-color:rgba(177,157,133,0.3) transparent}.chat-window__messages::-webkit-scrollbar{width:4px}.chat-window__messages::-webkit-scrollbar-track{background:0 0}.chat-window__messages::-webkit-scrollbar-thumb{background:rgba(177,157,133,.3);border-radius:2px}.chat-msg{max-width:85%;padding:.7rem 1rem;border-radius:14px;font-family:var(--font-body);font-size:.88rem;font-weight:300;line-height:1.55;letter-spacing:.02em;animation:chatMsgSlide .3s ease both}.chat-msg--bot{align-self:flex-start;background:#ece6db;color:#2a1f17;border-bottom-left-radius:4px;border:1px solid rgba(177,157,133,.25)}.chat-msg--user{align-self:flex-end;background:rgba(192,139,62,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#2a1f17;border-bottom-right-radius:4px;border:1px solid rgba(219,176,106,.3)}body.chat-over-hero .chat-msg--bot{background:#ece6db;border-color:rgba(177,157,133,.25);color:#2a1f17}body.chat-over-hero .chat-msg--user{background:rgba(192,139,62,.55);border-color:rgba(219,176,106,.3);color:#2a1f17}.chat-msg__time{display:block;font-size:.65rem;opacity:.45;margin-top:.3rem;font-weight:400}.chat-msg--user .chat-msg__time{opacity:.6}@keyframes chatMsgSlide{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-typing{display:flex;align-items:center;gap:5px;padding:.7rem 1rem;align-self:flex-start;background:#ece6db;border-radius:14px;border-bottom-left-radius:4px;border:1px solid rgba(177,157,133,.25);animation:chatMsgSlide .3s ease both}body.chat-over-hero .chat-typing{background:#ece6db;border-color:rgba(177,157,133,.25)}.chat-typing__dot{width:7px;height:7px;border-radius:50%;background:#7a6240;opacity:.5;animation:chatTypingBounce 1.4s ease-in-out infinite}body.chat-over-hero .chat-typing__dot{background:#7a6240}.chat-typing__dot:nth-child(2){animation-delay:.2s}.chat-typing__dot:nth-child(3){animation-delay:.4s}@keyframes chatTypingBounce{0%,100%,60%{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.chat-window__input-area{display:flex;padding:.6rem;background:rgba(122,98,64,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(219,176,106,.15);flex-shrink:0;gap:.4rem}body.chat-over-hero .chat-window__input-area{background:rgba(122,98,64,.9)}.chat-window__input{flex:1;padding:.65rem .85rem;font-family:var(--font-body);font-size:.88rem;font-weight:300;letter-spacing:.03em;color:#2a1f17;background:#fff;border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-input);outline:0;transition:all .3s ease}.chat-window__input::placeholder{color:#a89a8c}.chat-window__input:focus{border-color:#dbb06a;box-shadow:0 0 0 2px rgba(219,176,106,.2)}body.chat-over-hero .chat-window__input{color:#2a1f17;background:#fff;border-color:rgba(255,255,255,.6)}body.chat-over-hero .chat-window__input::placeholder{color:#a89a8c}body.chat-over-hero .chat-window__input:focus{border-color:#dbb06a}.chat-window__send{width:40px;height:40px;background:rgba(192,139,62,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(219,176,106,.25);color:#fff;border-radius:var(--radius-input);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.chat-window__send:hover{background:rgba(192,139,62,.75);border-color:rgba(219,176,106,.4)}body.chat-over-hero .chat-window__send{background:rgba(192,139,62,.55);color:#fff}.chat-window__send svg{width:18px;height:18px}.chat-buttons{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0;align-self:flex-start;max-width:95%;animation:chatMsgSlide .3s ease both}.chat-buttons__btn{display:flex;flex-direction:column;align-items:flex-start;padding:8px 14px;background:#fff;border:1px solid #c9b99a;border-radius:var(--radius);color:#2a1f17;font-family:var(--font-body);font-size:.82rem;font-weight:400;letter-spacing:.01em;text-transform:none;cursor:pointer;transition:all .2s ease;line-height:1.3}.chat-buttons__btn:hover{background:#f5f0e8;border-color:#c08b3e;color:#2a1f17}.chat-buttons__btn--selected{background:rgba(192,139,62,.5)!important;color:#2a1f17!important;border-color:rgba(219,176,106,.4)!important}.chat-buttons__btn--disabled{opacity:.35;cursor:default;pointer-events:none}.chat-buttons__sub{display:block;font-size:.62rem;opacity:.6;margin-top:2px}@media (min-width:750px) and (max-width:1024px){.chat-bubble{bottom:calc(20px + env(safe-area-inset-bottom,0px));right:20px;width:56px;height:56px}.chat-window{bottom:calc(20px + env(safe-area-inset-bottom,0px));right:20px}}@media (max-width:749px){.chat-window{bottom:0;right:0;width:100%;max-width:100%;height:auto;max-height:70vh;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom,0)}.chat-window__messages{max-height:50vh;min-height:120px;gap:1rem;padding:.85rem}.chat-bubble{bottom:calc(16px + env(safe-area-inset-bottom,0px));right:16px;width:52px;height:52px;min-width:44px;min-height:44px}.chat-bubble__icon{width:22px;height:22px}.chat-window__close{width:36px;height:36px}.chat-window__input{font-size:16px}.chat-window__send{min-width:44px;min-height:44px}}