/* Greatway / Duplos floating AI assistant — isolated selectors, no base-site overrides. */
:root { --gw-ai-amber:#f5a623; --gw-ai-amber-deep:#d4880c; --gw-ai-ink:#19212e; --gw-ai-slate:#667386; }
.gw-ai-root, .gw-ai-root * { box-sizing:border-box; }
.gw-ai-root { font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; color:var(--gw-ai-ink); font-size:14px; line-height:1.5; }
.gw-ai-root button,.gw-ai-root input,.gw-ai-root textarea,.gw-ai-root select { font:inherit; }
.gw-ai-root button { cursor:pointer; }
.gw-ai-root [hidden] { display:none!important; }
.gw-ai-root :focus-visible { outline:3px solid #a85b00; outline-offset:3px; }
.gw-ai-launcher { position:fixed;right:18px;bottom:19px;z-index:1298;border:1px solid rgba(255,255,255,.28);padding:0 18px 0 9px;display:flex;align-items:center;gap:9px; height:59px; background:linear-gradient(130deg,#ed9e22,#f9b845); color:#1b2533; border-radius:40px;box-shadow:0 9px 28px rgba(77,50,6,.25),0 2px 5px rgba(0,0,0,.07);font-weight:800;letter-spacing:-.01em;transition:transform .2s ease,box-shadow .2s ease; }
.gw-ai-launcher:hover { transform:translateY(-3px);box-shadow:0 14px 34px rgba(77,50,6,.32); }
.gw-ai-launcher-icon { width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#1b2533;color:#fff;position:relative;flex:none; }
.gw-ai-launcher-icon svg { width:22px;height:22px; }
.gw-ai-dot {width:9px;height:9px;border-radius:50%;background:#45c48c;position:absolute;right:0;bottom:0;border:2px solid #1b2533}
.gw-ai-launcher-copy { white-space:nowrap;font-size:14px; }
.gw-ai-panel { position:fixed; right:18px;bottom:21px;z-index:1300;width:min(423px,calc(100vw - 32px));height:min(686px,calc(100dvh - 38px));background:#fff;display:flex;flex-direction:column;border-radius:23px;overflow:hidden;border:1px solid #e7ebf0;box-shadow:0 22px 85px rgba(18,26,40,.27),0 4px 16px rgba(18,26,40,.12);animation:gw-ai-appear .22s cubic-bezier(.2,.7,.2,1) both; }
@keyframes gw-ai-appear {from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.gw-ai-top { flex:none; padding:17px 19px 17px; color:#fff; background:linear-gradient(128deg,#1c2531 0%,#293440 100%);display:flex;align-items:center;gap:12px;position:relative; }
.gw-ai-brandmark {width:45px;height:45px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(150deg,#ffcb6a,var(--gw-ai-amber));color:#20252d;flex:none; box-shadow:inset 0 1px rgba(255,255,255,.45); }
.gw-ai-brandmark svg {width:25px;height:25px;}
.gw-ai-headlines {flex:1;min-width:0;}
.gw-ai-headlines strong {display:block;font-size:16px;letter-spacing:-.02em;line-height:1.25;color:#fff;}
.gw-ai-headlines small {display:flex;gap:7px;align-items:center;font-size:11px;color:#ced5de;margin-top:5px;}
.gw-ai-statusdot{display:inline-block;background:#42c78e;width:7px;height:7px;border-radius:99px;flex:none;}
.gw-ai-iconbtn {height:34px;width:34px;flex:none;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);border-radius:10px;color:white;display:grid;place-items:center;}
.gw-ai-iconbtn:hover {background:rgba(255,255,255,.19)}
.gw-ai-iconbtn svg {width:18px;height:18px;}
.gw-ai-main {display:flex; flex-direction:column; min-height:0; flex:1; background:#f7f8fa;}
.gw-ai-hero { flex:none;padding:21px 22px 16px;background:linear-gradient(180deg,#fff 10%,#f7f8fa 100%); }
.gw-ai-eyebrow {display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#aa6905;background:#fff0d6;border:1px solid #ffe4b2;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:5px 9px;border-radius:99px;}
.gw-ai-hero h2 {font-size:22px!important;letter-spacing:-.04em!important;line-height:1.2!important;color:#1e2836!important;margin:10px 0 6px!important;font-weight:850!important}
.gw-ai-hero p {font-size:12.5px;color:#667386;margin:0;line-height:1.6;}
.gw-ai-gate-scroll {flex:1;min-height:0;overflow:auto;padding:0 21px 20px;}
.gw-ai-form {display:flex;flex-direction:column;gap:11px;}
.gw-ai-form label.gw-ai-fieldname {display:block;font-size:11px;font-weight:800;color:#38445a;margin:0 0 5px;}
.gw-ai-required {color:#b96f0c;}
.gw-ai-field {width:100%;height:44px;padding:0 13px;border:1px solid #dce2e9;border-radius:11px;background:white;color:#19212e;outline:0;box-shadow:0 1px 1px rgba(0,0,0,.02);transition:border .17s,box-shadow .17s;}
.gw-ai-field:focus {border-color:#e49b27;box-shadow:0 0 0 3px rgba(245,166,35,.16);}
.gw-ai-field::placeholder{color:#9aa4b2;}
.gw-ai-choice {display:grid;grid-template-columns:1fr 1fr;background:#e9edf2;gap:3px;padding:3px;border-radius:11px;}
.gw-ai-choice button {height:36px;border:0;border-radius:8px;background:transparent;color:#667386;font-size:12px;font-weight:750;}
.gw-ai-choice button[aria-selected="true"] {background:#fff;color:#1e2836;box-shadow:0 1px 5px rgba(28,41,58,.1);}
.gw-ai-phone-row {display:grid;grid-template-columns:138px 1fr;gap:7px;}
.gw-ai-phone-row .gw-ai-field {min-width:0;}
.gw-ai-phone-row select.gw-ai-field {font-size:12px;padding-left:9px;}
.gw-ai-phone-hint {font-size:10px;color:#778395;margin:4px 0 0;}
.gw-ai-consent {display:flex;align-items:flex-start;gap:9px;font-size:11px;color:#6e7887;line-height:1.4;cursor:pointer;padding:4px 0;}
.gw-ai-consent input {margin:2px 0 0;accent-color:#d98e19;flex:none;width:15px;height:15px;}
.gw-ai-primary {width:100%;display:flex;align-items:center;justify-content:center;gap:9px;background:#f5a623;color:#1d2530;border:0;border-radius:12px;min-height:46px;padding:11px;font-weight:850;transition:background .15s;}
.gw-ai-primary:hover:not(:disabled){background:#ffb847;}
.gw-ai-primary:disabled {opacity:.6;cursor:wait;}
.gw-ai-primary svg{width:16px;height:16px;}
.gw-ai-formerror{color:#a72c31;background:#fff0f0;border:1px solid #ffc9c9;border-radius:9px;padding:9px;font-size:11px;}
.gw-ai-privacy {font-size:10px;color:#8b96a5;text-align:center;padding:13px 16px 10px;background:white;border-top:1px solid #eef0f3;}
.gw-ai-privacy strong {color:#667386;font-weight:750;}
.gw-ai-chat-scroll {flex:1;min-height:0;overflow-y:auto;padding:16px 16px 10px;overscroll-behavior:contain;}
.gw-ai-intro {background:#fff;padding:15px;border:1px solid #e7eaf0;border-radius:15px;box-shadow:0 3px 12px rgba(31,43,60,.035);margin-bottom:12px;}
.gw-ai-intro strong{font-size:15px;color:#1f2b3a;display:block;margin-bottom:5px;}
.gw-ai-intro p{font-size:12px;line-height:1.55;color:#687487;margin:0;}
.gw-ai-suggestions {display:grid;gap:8px;margin:0 0 14px;}
.gw-ai-suggestions strong{font-size:10px;font-weight:900;color:#8a96a5;letter-spacing:.09em;text-transform:uppercase;}
.gw-ai-prompt {border:1px solid #e6e9ed;background:#fff;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:11px;padding:10px 12px;font-size:12px;font-weight:700;color:#334155;line-height:1.45;transition:background .15s,border-color .15s;}
.gw-ai-prompt:hover{border-color:#e5ad51;background:#fff8eb;}
.gw-ai-prompt svg{width:14px;height:14px;flex:none;color:#c88c31;}
.gw-ai-msg {display:flex;margin:10px 0;gap:7px;max-width:94%;}
.gw-ai-msg--user {margin-left:auto;justify-content:flex-end;}
.gw-ai-msg--bot {margin-right:auto;}
.gw-ai-bubble {padding:10px 12px;max-width:100%;font-size:12px;line-height:1.64;white-space:normal;overflow-wrap:anywhere;border-radius:14px;background:#fff;color:#354154;border:1px solid #e8ebef;box-shadow:0 2px 8px rgba(23,38,55,.025);}
.gw-ai-msg--user .gw-ai-bubble{background:#283542;border-color:#283542;color:white;border-radius:14px 14px 4px 14px;}
.gw-ai-msg--bot .gw-ai-bubble{border-radius:14px 14px 14px 4px;}
.gw-ai-bubble p{margin:0 0 7px;}.gw-ai-bubble p:last-child{margin-bottom:0;}.gw-ai-bubble ul {margin:5px 0 10px;padding-left:18px;}.gw-ai-bubble li{margin:3px 0;}.gw-ai-bubble strong{font-weight:800;}
.gw-ai-sender {font-size:9px;line-height:1.2;color:#96a0ad;font-weight:700;margin:0 0 4px 2px;}
.gw-ai-wait .gw-ai-bubble {color:#7b8796;letter-spacing:.16em;font-weight:800;}
.gw-ai-compose {flex:none;border-top:1px solid #e8ebef;padding:12px 12px 10px;background:white;}
.gw-ai-compose-row{display:flex;align-items:flex-end;gap:8px;border:1px solid #dae0e7;border-radius:13px;padding:5px;}
.gw-ai-compose-row:focus-within {border-color:#e8a339;box-shadow:0 0 0 3px #f5a62321;}
.gw-ai-input {flex:1;min-width:0;resize:none;max-height:105px;min-height:38px;background:transparent;border:0;outline:0;padding:9px 8px 7px;color:#1f2835;font-size:12px;line-height:1.45;overflow:auto;}
.gw-ai-input::placeholder{color:#9aa4b2}
.gw-ai-send {flex:none;height:35px;width:35px;border-radius:10px;border:0;background:#f5a623;color:#1d2530;display:grid;place-items:center;}
.gw-ai-send:disabled {background:#eceff3;color:#a7b0bd;cursor:not-allowed;}
.gw-ai-send svg{width:17px;height:17px;}
.gw-ai-footer {font-size:9px;color:#8b96a5;text-align:center;padding-top:7px;}
.gw-ai-footer a {color:#a26c12;font-weight:700;}
body.gw-ai-is-open .quick-contact-rail,body.gw-ai-is-open .quick-contact-card {visibility:hidden!important;pointer-events:none!important;}
@media(max-width:640px){
  .gw-ai-launcher {bottom:89px;right:14px;height:55px;padding:0 13px 0 7px;}
  .gw-ai-launcher-icon{width:41px;height:41px;}
  .gw-ai-panel {width:calc(100vw - 18px);right:9px;bottom:8px;height:min(740px,calc(100dvh - 16px));border-radius:20px;}
  .gw-ai-top {padding:14px 16px;}
}
@media(max-height:580px) and (min-width:641px){.gw-ai-panel{height:calc(100dvh - 20px);bottom:10px;}}
@media(prefers-reduced-motion:reduce){.gw-ai-panel,.gw-ai-launcher{animation:none;transition:none}}

.gw-ai-prequestions {margin-top:18px;padding-top:12px;border-top:1px dashed #e4e9ef;}
.gw-ai-prequestions>div:first-child {font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#8792a2;margin-bottom:8px;}
.gw-ai-preq-buttons{display:flex;flex-wrap:wrap;gap:7px;}
.gw-ai-preq-chip{border:1px solid #ebd4a9;background:#fff9ec;color:#865b16;padding:7px 10px;border-radius:9px;font-size:10.5px;font-weight:750;text-align:left;line-height:1.35;}
.gw-ai-preq-chip[aria-pressed="true"]{background:#f5a623;color:#19212e;border-color:#e49b27;}
