/* First-party public website forms. Scoped to avoid changing existing Elementor layouts. */
.ns-eng{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#193e32;font-size:15px;line-height:1.55}.ns-eng *{box-sizing:border-box}.ns-eng [hidden]{display:none!important}.ns-eng input,.ns-eng select,.ns-eng textarea,.ns-eng button{font:inherit}.ns-eng button{cursor:pointer}.ns-eng button:disabled{cursor:wait;opacity:.62}.ns-eng :focus-visible{outline:3px solid #a96624;outline-offset:3px}.ns-eng-launch{position:fixed;right:24px;bottom:24px;z-index:10020;display:flex;align-items:center;gap:11px;border:0;border-radius:999px;background:#163e33;color:#fff;padding:16px 23px;box-shadow:0 6px 30px #163e3333;font-weight:650;min-height:52px}.ns-eng-launch:hover{background:#275847}.ns-eng-dialog{padding:0;border:1px solid #d5ded1;border-radius:22px;max-width:calc(100vw - 24px);width:460px;max-height:calc(100dvh - 28px);height:740px;margin:auto 20px 18px auto;box-shadow:0 16px 60px #153e3333;color:#193e32;background:#fff}.ns-eng-dialog::backdrop{background:rgb(15 35 28 / 20%)}.ns-eng-dialog[open]{display:flex;flex-direction:column}.ns-eng-top{display:flex;justify-content:space-between;align-items:center;background:#163e33;color:#fff;padding:23px 21px;gap:10px;flex-shrink:0}.ns-eng-overline{font-size:10px;letter-spacing:.14em;color:#dceab9}.ns-eng-top h2{font-size:21px;line-height:1.3;margin:7px 0 0;letter-spacing:-.02em;color:inherit}.ns-eng-close{background:transparent;color:#fff;border:1px solid #668173;border-radius:50%;width:38px;height:38px;font-size:26px;line-height:1}.ns-eng-scroll{padding:20px;overflow-y:auto;overscroll-behavior:contain}.ns-eng-intro{font-size:17px;margin:0 0 13px}.ns-eng-disclosure{font-size:12px;line-height:1.6;color:#50695b;margin:12px 0 18px}.ns-eng-disclosure a{color:#163e33;text-decoration:underline;text-underline-offset:3px}.ns-eng-field{display:block;font-size:13px;font-weight:650;margin:15px 0}.ns-eng-field input,.ns-eng-field select,.ns-eng-field textarea{display:block;width:100%;border:1px solid #aebfb0;border-radius:10px;background:#fff;color:#203a2d;padding:10px 12px;margin-top:6px;min-height:44px;box-shadow:none;font-size:15px;font-weight:400;line-height:1.5}.ns-eng-field textarea{resize:vertical;min-height:90px;max-height:230px}.ns-eng-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;margin:14px 0;cursor:pointer}.ns-eng-check input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:#163e33}.ns-eng-primary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid #163e33;border-radius:999px;background:#163e33;color:#fff;padding:11px 20px;font-weight:650;margin-top:10px}.ns-eng-secondary{border:1px solid #ced9c9;background:#f4f6ef;color:#193e32;padding:8px 12px;border-radius:20px;font-size:12px;min-height:38px}.ns-eng-primary:hover{background:#275847}.ns-eng-status{font-size:13px;line-height:1.6;margin-top:16px;color:#304c3c}.ns-eng-bubble{padding:14px 16px;margin:12px 0;border-radius:16px;background:#f1f5eb;overflow-wrap:anywhere}.ns-eng-bubble strong{font-size:11px;letter-spacing:.015em}.ns-eng-bubble p{white-space:pre-wrap;margin:7px 0 0;font-size:14px;line-height:1.65}.ns-eng-bubble.is-user{background:#163e33;color:#fff;margin-left:24px}.ns-eng-bubble.is-agent{margin-right:10px}.ns-eng-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.ns-eng-links a{border:1px solid #bfcfbb;border-radius:14px;background:white;color:#163e33;font-size:12px;padding:6px 10px;text-decoration:none;min-height:32px}.ns-eng-links a:hover{text-decoration:underline}.ns-eng-tools,.ns-eng-prompts{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.ns-eng-tools{border-top:1px solid #dce3d9;padding-top:17px}.ns-eng-reference{font-size:11px;color:#50695b;overflow-wrap:anywhere}.ns-eng-composer{margin-top:18px}.ns-eng-contact .ns-contact{max-width:760px}.ns-eng-contact .ns-contact h2{font-size:1.8rem;max-width:none}.ns-eng-contact .ns-eng-field{margin-block:20px}.ns-eng-honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.ns-eng-log{min-height:30px}.ns-eng h3{font-size:18px;line-height:1.35;margin:20px 0 14px}
@media(max-width:600px){.ns-eng-launch{bottom:16px;right:16px;padding:13px 18px}.ns-eng-dialog{margin:auto 12px 12px;width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);border-radius:18px}.ns-eng-scroll{padding:17px}.ns-eng-top{padding:19px 17px}.ns-eng-field input,.ns-eng-field select,.ns-eng-field textarea{font-size:16px}.ns-eng-contact .ns-eng-primary{width:100%}}
@media(prefers-reduced-motion:reduce){.ns-eng *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media print{.ns-eng-chat,.ns-eng-contact{display:none!important}}

/* Active conversation keeps its composer visible while only messages scroll. */
.ns-eng-active .ns-eng-scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:14px 18px}
.ns-eng-active .ns-eng-scroll>.ns-eng-intro{font-size:13px;margin-bottom:9px;flex-shrink:0}
.ns-eng-active .ns-eng-scroll>.ns-eng-disclosure{display:none}
.ns-eng-active [data-chat-body]{display:flex;flex-direction:column;flex:1;min-height:0}
.ns-eng-active .ns-eng-reference{margin:0 0 5px;flex-shrink:0}
.ns-eng-active .ns-eng-log{overflow-y:auto;flex:1;min-height:80px;overscroll-behavior:contain;padding:0 3px}
.ns-eng-active .ns-eng-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;flex-shrink:0;margin-top:12px}
.ns-eng-active .ns-eng-composer .ns-eng-field{margin:0;font-size:12px;min-width:0}
.ns-eng-active .ns-eng-composer textarea{min-height:66px;max-height:100px;resize:none;padding:9px 11px}
.ns-eng-active .ns-eng-composer .ns-eng-primary{margin:0 0 2px;padding:10px 13px;font-size:12px;max-width:95px;min-height:44px}
.ns-eng-active .ns-eng-prompts{margin-top:10px;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:2px 0 7px;flex-shrink:0}
.ns-eng-active .ns-eng-prompts button{white-space:nowrap;flex-shrink:0;font-size:11px}
.ns-eng-options{border-top:1px solid #dce3d9;margin-top:5px;padding-top:8px;max-height:155px;overflow:auto;flex-shrink:0;font-size:12px}
.ns-eng-options summary{cursor:pointer;min-height:29px;padding:4px 0;color:#345943}
.ns-eng-options .ns-eng-tools{border-top:0;padding-top:0;margin-top:7px}
.ns-eng-options .ns-eng-disclosure{font-size:11px;margin-bottom:5px}
.ns-eng-active .ns-eng-status{flex-shrink:0;max-height:95px;overflow:auto;margin:6px 0 0;font-size:12px}
.ns-eng-active .ns-eng-status:empty{display:none}
@media(max-width:360px){.ns-eng-active .ns-eng-scroll{padding:12px}.ns-eng-active .ns-eng-composer{gap:6px}.ns-eng-active .ns-eng-composer .ns-eng-primary{padding:8px 11px;max-width:77px}}

/* 1.3.1 — explicit navigation fallback and inline enquiry form. */
.ns-eng-guide-links{list-style:none;margin:18px 0;padding:0;display:grid;gap:10px}
.ns-eng-guide-links a{display:block;padding:13px 16px;border:1px solid #dce3d9;border-radius:12px;color:#163e33;text-decoration:none;background:#f4f5ef;font-weight:600}
.ns-eng-guide-links a:hover{background:#e5eddc}
.ns-eng [hidden]{display:none!important}
.ns-eng-noscript{position:fixed;right:20px;bottom:20px;background:#fff;padding:14px;border:1px solid #dce3d9;border-radius:12px}
.ns-eng [data-contact-notices]{display:contents}
.ns-eng-active [data-chat-live]{display:flex;flex-direction:column;flex:1;min-height:0}
.ns-eng-active [data-chat-live]>.ns-eng-disclosure{display:none}
