/* Hinterland Acreage chat: the site's own look — black, orange #E87722, cream #FFF3D6, Roboto Condensed. */
.hac{
  --hac-black:#111111; --hac-black-soft:#2B2B2B; --hac-red:#E87722; --hac-red-soft:#B85A12;
  --hac-paper:#FBF7EE; --hac-rule:#DDE1E7; --hac-ink:#161616; --hac-muted:#7A8089;
  --hac-r:10px; --hac-shadow:0 12px 36px rgba(17,17,17,.24);
  font-family:'Roboto Condensed',system-ui,-apple-system,Arial,sans-serif;
  position:fixed; right:20px; bottom:20px; z-index:99999;
}
.hac *,.hac *::before,.hac *::after{box-sizing:border-box;}
.hac .hac-hidden{display:none !important;}
.hac button{font:inherit; border:0; box-shadow:none; outline:none; text-shadow:none; min-height:0; line-height:1;}
.hac button:focus-visible{outline:2px solid var(--hac-red); outline-offset:2px;}
.hac .hac-hp{position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; pointer-events:none;}

/* teaser */
.hac-teaser{position:absolute; right:0; bottom:76px; width:280px; background:#fff; border:1px solid var(--hac-rule); border-radius:14px; box-shadow:0 8px 24px rgba(17,17,17,.16); padding:12px 30px 12px 12px; display:flex; gap:10px; align-items:flex-start; cursor:pointer; animation:hac-in .45s cubic-bezier(.34,1.56,.64,1); transition:transform .15s, box-shadow .15s;}
.hac-teaser:hover{transform:translateY(-2px); box-shadow:0 12px 28px rgba(17,17,17,.22);}
@keyframes hac-in{from{opacity:0; transform:translateY(8px) scale(.96);}to{opacity:1; transform:none;}}
.hac-avatar{flex:0 0 34px; width:34px; height:34px; border-radius:50%; background:#fff; border:1.5px solid var(--hac-rule); color:var(--hac-red); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:15px; overflow:hidden;}
.hac-avatar img{width:100%; height:100%; object-fit:cover; display:block;}
.hac-teaser-text{flex:1; min-width:0;}
.hac-teaser-name{font-size:12px; font-weight:700; color:var(--hac-red); margin-bottom:3px; line-height:1.2;}
.hac-teaser-name span{font-weight:400; color:var(--hac-muted);}
.hac-teaser-msg{font-size:14px; line-height:1.45; color:var(--hac-ink);}
.hac-teaser-x{position:absolute; top:6px; right:6px; width:22px; height:22px; padding:0; border:0 !important; box-shadow:none !important; border-radius:50%; background:transparent !important; color:var(--hac-muted) !important; display:flex; align-items:center; justify-content:center; cursor:pointer; opacity:.7;}
.hac-teaser-x:hover{opacity:1; background:var(--hac-rule) !important; color:var(--hac-ink) !important;}

/* bubble */
.hac-bubble{position:relative; width:62px; height:62px; padding:0; border-radius:50%; background:#fff; color:var(--hac-black); border:0 !important; box-shadow:var(--hac-shadow); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:transform .2s, background .2s;}
.hac-bubble:hover{background:#fff; transform:scale(1.06);}
.hac-bubble-logo{width:44px; height:44px; object-fit:contain; display:block;}
.hac-dot{position:absolute; top:3px; right:3px; width:13px; height:13px; border-radius:50%; background:var(--hac-red); border:2px solid #fff; animation:hac-pulse 2s infinite;}
@keyframes hac-pulse{0%{box-shadow:0 0 0 0 rgba(232,119,34,.55);}70%{box-shadow:0 0 0 10px rgba(232,119,34,0);}100%{box-shadow:0 0 0 0 rgba(232,119,34,0);}}

/* panel */
.hac-panel{position:absolute; right:0; bottom:0; width:380px; max-width:calc(100vw - 24px); height:580px; max-height:calc(100vh - 24px); background:var(--hac-paper); border-radius:18px; box-shadow:var(--hac-shadow); display:flex; flex-direction:column; overflow:hidden;}
.hac-head{background:#fff; color:var(--hac-ink); padding:15px 16px 15px 18px; display:flex; justify-content:space-between; align-items:center; border-bottom:3px solid var(--hac-red);}
.hac-head-id{display:flex; align-items:center; gap:10px;}
.hac-head-logo{width:36px; height:36px; border-radius:50%; object-fit:contain; background:#fff; border:1px solid var(--hac-rule); padding:3px; flex:0 0 36px;}
.hac-title{font-size:16px; font-weight:700; color:var(--hac-red); letter-spacing:.01em;}
.hac-title span{font-weight:400; font-size:13px; color:var(--hac-muted); margin-left:6px;}
.hac-status{font-size:12px; color:var(--hac-muted); margin-top:3px; display:flex; align-items:center; gap:6px;}
.hac-live{width:7px; height:7px; border-radius:50%; background:#1FA34A; box-shadow:0 0 6px rgba(31,163,74,.6);}
.hac-head-btns{display:flex; gap:2px;}
.hac-min,.hac-close{background:transparent !important; border:0 !important; box-shadow:none !important; color:var(--hac-ink) !important; padding:6px; border-radius:6px; opacity:.65; cursor:pointer; display:flex; line-height:1;}
.hac-min:hover,.hac-close:hover,.hac-min:focus-visible,.hac-close:focus-visible{opacity:1; background:var(--hac-paper) !important; outline:none;}

.hac-log{flex:1; overflow-y:auto; padding:18px; display:flex; flex-direction:column; gap:12px;}
.hac-msg{max-width:86%; padding:11px 15px; border-radius:14px; font-size:14.5px; line-height:1.5; overflow-wrap:anywhere;}
.hac-msg.bot{align-self:flex-start; background:#fff; color:var(--hac-ink); border:1px solid var(--hac-rule); border-bottom-left-radius:4px;}
.hac-msg.you{align-self:flex-end; background:var(--hac-black); color:#fff; border-bottom-right-radius:4px;}
.hac-msg p{margin:0 0 8px;} .hac-msg p:last-child{margin:0;}
.hac-msg a{display:inline-block; margin-top:6px; padding:9px 16px; background:var(--hac-black) !important; color:#fff !important; border-radius:var(--hac-r); text-decoration:none !important; font-weight:600; font-size:13px; line-height:1.3; transition:background .15s, transform .15s;}
.hac-msg a:hover,.hac-msg a:focus-visible{background:var(--hac-red) !important; transform:translateY(-1px); outline:none;}
.hac-msg.err{align-self:stretch; max-width:none; text-align:center; font-size:13px; background:rgba(232,119,34,.07); color:var(--hac-red-soft); border:1px solid rgba(232,119,34,.2);}
.hac-typing{align-self:flex-start; display:inline-flex; gap:4px; padding:13px 16px; background:#fff; border:1px solid var(--hac-rule); border-radius:14px; border-bottom-left-radius:4px;}
.hac-typing span{width:6px; height:6px; border-radius:50%; background:var(--hac-muted); animation:hac-bounce 1.2s infinite ease-in-out;}
.hac-typing span:nth-child(2){animation-delay:.15s;} .hac-typing span:nth-child(3){animation-delay:.3s;}
@keyframes hac-bounce{0%,60%,100%{transform:none; opacity:.4;}30%{transform:translateY(-4px); opacity:1;}}

.hac-ctas{display:flex; gap:8px; padding:10px 12px; border-top:1px solid var(--hac-rule); background:var(--hac-paper);}
.hac-cta{flex:1 1 0; display:flex; align-items:center; justify-content:center; min-height:44px; text-align:center; padding:9px 8px; border-radius:var(--hac-r); border:1.5px solid var(--hac-black); color:var(--hac-black) !important; background:#fff; text-decoration:none !important; font-weight:600; font-size:12px; line-height:1.25; text-transform:uppercase; letter-spacing:.04em; transition:background .15s;}
.hac-cta:hover,.hac-cta:focus-visible{background:rgba(17,17,17,.05); outline:none;}
.hac-cta--main{background:var(--hac-black); color:#fff !important;}
.hac-cta--main:hover,.hac-cta--main:focus-visible{background:var(--hac-red); border-color:var(--hac-red);}

.hac-input-row{position:relative; display:flex; gap:8px; align-items:flex-end; padding:12px; background:#fff; border-top:1px solid var(--hac-rule);}
#hac-input{flex:1 1 auto; min-width:0; resize:none; max-height:120px; padding:10px 12px; border:1px solid var(--hac-rule); border-radius:var(--hac-r); background:var(--hac-paper); color:var(--hac-ink); font:16px/1.4 'Poppins',system-ui,sans-serif; outline:none;}
#hac-input:focus{border-color:var(--hac-black);}
#hac-send{flex:0 0 42px; width:42px; height:42px; padding:0; border:0 !important; box-shadow:none !important; border-radius:50%; background:var(--hac-black); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer;}
#hac-send svg{transform:translateX(-1px);}
#hac-send:hover{background:var(--hac-red);}
#hac-send:disabled{background:var(--hac-rule); color:var(--hac-muted); cursor:not-allowed;}
.hac-foot{text-align:center; font-size:11px; color:var(--hac-muted); padding:6px 0 9px; background:#fff;}

@media (max-width:480px){
  .hac{right:12px; bottom:12px;}
  .hac-panel{width:calc(100vw - 24px); height:min(580px, calc(100vh - 80px));}
  .hac-teaser{width:calc(100vw - 24px);}
  .hac-msg{font-size:16px;}
  .hac-cta{font-size:11.5px;}
}
@media (prefers-reduced-motion:reduce){
  .hac-teaser,.hac-dot,.hac-typing span{animation:none;}
}

/* Header in the site's black band, orange name, cream detail. */
.hac-head{background:#000 !important; color:#FFF3D6; border-bottom:3px solid var(--hac-red);}
.hac-head .hac-title{color:#F78B1E;}
.hac-head .hac-title span,.hac-head .hac-status{color:#FFF3D6;}
.hac-head .hac-min,.hac-head .hac-close{color:#FFF3D6 !important; background:transparent !important;}
.hac-teaser-name{color:#B85A12;}
