/* Nabih mini chat: opens from the floating launcher on every page */
.nabih-float[aria-expanded=true] .nabih-float__card{display:none}
.nabih-chat{position:fixed;bottom:136px;inset-inline-end:15px;z-index:2100;width:370px;height:min(600px,calc(100vh - 140px));height:min(600px,calc(100dvh - 140px));display:flex;flex-direction:column;background:#fff;color:#23352f;border-radius:18px;box-shadow:0 18px 50px rgba(35,53,47,.28);overflow:hidden;font-size:14px;line-height:22px;text-align:start}
.nabih-chat[hidden]{display:none}
.nabih-chat svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
html[dir=rtl] .nabih-chat__chev,html[dir=rtl] .nabih-chat__form svg{transform:scaleX(-1)}
html[dir=ltr] .nabih-chat__back .nabih-chat__chev{transform:scaleX(-1)}
.nabih-chat__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nabih-chat__view{flex:1;min-height:0;display:flex;flex-direction:column}
.nabih-chat__view[hidden]{display:none}
.nabih-chat__close{position:absolute;top:10px;inset-inline-end:12px;width:32px;height:32px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.nabih-chat__close:hover,.nabih-chat__close:focus-visible{background:rgba(255,255,255,.28)}
.nabih-chat__avatar{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#fff;color:#456036;font-weight:700;font-size:26px;box-shadow:0 0 0 4px #a6bf40}
.nabih-chat__avatar.is-small{width:36px;height:36px;font-size:18px;box-shadow:0 0 0 3px #a6bf40}

.nabih-chat__hero{position:relative;padding:22px 22px 26px;background:linear-gradient(135deg,#456036,#23352f);color:#fff}
.nabih-chat__hello{margin:14px 0 0;font-size:26px;line-height:32px;font-weight:700;color:#fff}
.nabih-chat__hero h2{margin:2px 0 0;font-size:20px;line-height:28px;font-weight:600;color:#a6bf40}
.nabih-chat__role{margin:2px 0 0;font-size:14px;color:rgba(255,255,255,.85)}
.nabih-chat__credit{margin:10px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.18);font-size:12px;line-height:18px;color:rgba(255,255,255,.75)}
/* The whole home screen scrolls (hero included), so the overlapping card is never clipped. */
.nabih-chat__view[data-view=home]{overflow-y:auto;background:#f5f7ef}
.nabih-chat__view[data-view=home],.nabih-chat__log{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a6bf40 transparent}
.nabih-chat__view[data-view=home]::-webkit-scrollbar,.nabih-chat__log::-webkit-scrollbar{width:6px}
.nabih-chat__view[data-view=home]::-webkit-scrollbar-thumb,.nabih-chat__log::-webkit-scrollbar-thumb{background:#a6bf40;border-radius:6px}
.nabih-chat__hero{flex-shrink:0}
.nabih-chat__body{padding:0 16px 14px;background:#f5f7ef}
.nabih-chat__card{display:flex;align-items:center;gap:12px;width:100%;margin-top:-14px;padding:14px 16px;border:1px solid #d6decb;border-radius:14px;background:#fff;color:inherit;text-align:start;cursor:pointer;box-shadow:0 8px 20px rgba(35,53,47,.1);position:relative}
.nabih-chat__card>span:first-child{flex:1}
.nabih-chat__card strong{display:block;color:#456036;font-size:15px}
.nabih-chat__card small{display:block;color:#5b6b63;font-size:13px;line-height:20px}
.nabih-chat__go{color:#a6bf40}
.nabih-chat__card:hover,.nabih-chat__card:focus-visible{border-color:#456036}
.nabih-chat__label{margin:16px 4px 8px;font-size:13px;font-weight:600;color:#5b6b63}
.nabih-chat__topics{list-style:none;margin:0;padding:0;border:1px solid #d6decb;border-radius:14px;background:#fff;overflow:hidden}
.nabih-chat__topics li+li{border-top:1px solid #e6ebdd}
.nabih-chat__topics button,.nabih-chat__topics a{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px 16px;border:0;background:none;color:#456036;font:inherit;font-weight:600;text-align:start;text-decoration:none;cursor:pointer}
.nabih-chat__topics button:hover,.nabih-chat__topics a:hover,.nabih-chat__topics button:focus-visible,.nabih-chat__topics a:focus-visible{background:#eef3d9;color:#23352f}
.nabih-chat__topics svg{color:#a6bf40}
.nabih-chat__note{margin:14px 4px 0;font-size:12px;line-height:18px;color:#6f7d75}

.nabih-chat__bar{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(135deg,#456036,#23352f);color:#fff;position:relative}
.nabih-chat__bar .nabih-chat__close{position:static}
.nabih-chat__back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:50%;background:none;color:#fff;cursor:pointer}
.nabih-chat__back:hover,.nabih-chat__back:focus-visible{background:rgba(255,255,255,.18)}
html[dir=rtl] .nabih-chat__back .nabih-chat__chev{transform:none}
.nabih-chat__who{flex:1;display:flex;flex-direction:column;line-height:18px}
.nabih-chat__who small{color:rgba(255,255,255,.8);font-size:12px}
.nabih-chat__log{flex:1;overflow-y:auto;padding:14px;background:#f5f7ef;display:flex;flex-direction:column;gap:10px}
.nabih-chat__msg{max-width:85%;padding:9px 13px;border-radius:14px;white-space:pre-line;word-wrap:break-word}
.nabih-chat__msg.is-reply{align-self:flex-start;background:#fff;border:1px solid #d6decb;border-start-start-radius:4px}
.nabih-chat__msg.is-visitor{align-self:flex-end;background:#456036;color:#fff;border-start-end-radius:4px}
.nabih-chat__msg.is-error{align-self:flex-start;background:#fff4e5;border:1px solid #f0c98a;color:#7a4b00}
.nabih-chat__msg a{color:#456036;font-weight:600;text-decoration:underline}
.nabih-chat__typing{align-self:flex-start;color:#6f7d75;font-size:13px}
.nabih-chat__chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 10px;background:#f5f7ef}
.nabih-chat__chips[hidden]{display:none}
.nabih-chat__chips button{padding:5px 12px;border:1px solid #456036;border-radius:999px;background:#fff;color:#456036;font:inherit;font-size:13px;cursor:pointer}
.nabih-chat__chips button:hover,.nabih-chat__chips button:focus-visible{background:#456036;color:#fff}
.nabih-chat__form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid #e6ebdd;background:#fff}
/* 16px: iOS Safari zooms the whole page into any smaller text field. */
.nabih-chat__form textarea{flex:1;min-height:40px;max-height:110px;padding:8px 12px;border:1px solid #d6decb;border-radius:12px;font:inherit;font-size:16px;line-height:22px;resize:none;color:inherit}
.nabih-chat__form textarea:focus{outline:2px solid #a6bf40;border-color:#456036}
.nabih-chat__form button{width:40px;height:40px;border:0;border-radius:50%;background:#456036;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.nabih-chat__form button:disabled{opacity:.5;cursor:default}

/* "Ask the sales team to call me": a strip above the message box that swaps it for a name + phone form */
.nabih-chat__form[hidden],.nabih-chat__lead[hidden],.nabih-chat__lead-open[hidden],.nabih-chat__lead-error[hidden]{display:none}
.nabih-chat__lead-open{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:0;border-top:1px solid #e6ebdd;background:#fff;color:#456036;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.nabih-chat__lead-open:hover,.nabih-chat__lead-open:focus-visible{background:#eef3d9;color:#23352f}
.nabih-chat__lead-open svg{width:16px;height:16px;color:#a6bf40}
.nabih-chat__lead{display:flex;flex-direction:column;gap:8px;padding:12px;border-top:1px solid #e6ebdd;background:#fff}
.nabih-chat__lead p{margin:0;font-size:13px;line-height:20px;color:#5b6b63}
.nabih-chat__lead input{width:100%;height:40px;margin:0;padding:0 12px;border:1px solid #d6decb;border-radius:12px;background:#fff;color:inherit;font:inherit;font-size:16px}
.nabih-chat__lead input:focus{outline:2px solid #a6bf40;border-color:#456036}
html[dir=rtl] .nabih-chat__lead input[type=tel]{text-align:right}
.nabih-chat__lead .nabih-chat__hp{position:absolute;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}
.nabih-chat__lead .nabih-chat__lead-error{color:#b42318}
.nabih-chat__lead-actions{display:flex;gap:8px}
.nabih-chat__lead-actions button{flex:1;height:40px;border:1px solid #456036;border-radius:12px;background:#456036;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.nabih-chat__lead-actions [data-lead-cancel]{background:#fff;color:#456036}
.nabih-chat__lead-actions button:disabled{opacity:.5;cursor:default}

.nabih-chat__tabs{display:flex;border-top:1px solid #e6ebdd;background:#fff}
.nabih-chat__tabs>*{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border:0;background:none;color:#6f7d75;font:inherit;font-size:12px;line-height:16px;text-decoration:none;cursor:pointer}
.nabih-chat__tabs svg{width:20px;height:20px}
.nabih-chat__tabs>*:hover,.nabih-chat__tabs>*:focus-visible,.nabih-chat__tabs .is-active{color:#456036}
.nabih-chat__tabs .is-active{font-weight:600}

/* Phones and short (landscape) screens: the chat fills the visible height; nabih-chat.js keeps
   --nabih-top/--nabih-vh in step with the on-screen keyboard (visualViewport); .is-keyboard does the same on tablets. */
@media(max-width:480px),(max-height:560px){.nabih-chat{top:calc(var(--nabih-top,0px) + 8px);bottom:auto;height:calc(var(--nabih-vh,100vh) - 16px)}}
.nabih-chat.is-keyboard{top:calc(var(--nabih-top,0px) + 8px);bottom:auto;height:calc(var(--nabih-vh,100vh) - 16px)}
@media(max-width:480px){.nabih-chat{inset-inline:8px;width:auto;border-radius:16px}html.nabih-open,html.nabih-open body{overflow:hidden}}
@media(min-width:481px) and (max-height:560px){.nabih-chat{inset-inline-end:79px;max-width:calc(100vw - 95px)}}
/* Touch screens: while the keyboard is up only the conversation and the box being typed in stay. */
@media(pointer:coarse) and (max-width:480px),(pointer:coarse) and (max-height:560px){
.nabih-chat:has(textarea:focus,input:focus) :is(.nabih-chat__tabs,.nabih-chat__chips,.nabih-chat__lead-open,.nabih-chat__lead>p:first-child){display:none}
}
@media print{.nabih-chat{display:none !important}}
