.faq-launcher{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:90;background:var(--navy);color:white;border:2px solid var(--gold);border-radius:99px;padding:.9rem 1.2rem;font:700 1rem/1.3 inherit;box-shadow:0 8px 28px #0c2d4833;cursor:pointer;max-width:calc(100vw - 2rem)}
.faq-chat{position:fixed;inset:auto max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) auto;margin:0;padding:0;width:420px;max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);border:1px solid #d6e1e5;border-radius:1rem;color:var(--ink);background:white;box-shadow:0 20px 70px #0c2d4844;font-family:inherit;overflow:hidden}
.faq-chat[open]{display:flex;flex-direction:column}.faq-chat::backdrop{background:#0c2d4838}.faq-header{display:flex;align-items:start;justify-content:space-between;gap:.5rem;background:var(--navy);color:white;padding:1.1rem}.faq-header h2{margin:0;font-size:1.2rem;line-height:1.4}.faq-header p{font-size:.875rem;color:#dce8ed;margin:.35rem 0 0}.faq-header button{flex:none;width:44px;height:44px;border:1px solid #ffffff66;border-radius:.5rem;background:transparent;color:white;font:1.8rem/1 inherit;cursor:pointer}
.faq-body{padding:1rem;overflow:auto;min-height:0;overscroll-behavior:contain}.faq-privacy{font-size:.875rem;line-height:1.55;color:var(--muted);margin:0 0 1rem}.faq-message{font-size:1rem;line-height:1.55;border-radius:.65rem;padding:.85rem;margin:.7rem 0;background:#edf6f7;white-space:pre-wrap;overflow-wrap:anywhere}.faq-message.user{background:#f7f4ed;margin-left:1.4rem}.faq-message a{color:#125564;text-decoration:underline;font-weight:700}.faq-questions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.faq-questions button{font:600 .875rem/1.4 inherit;text-align:left;background:white;color:var(--navy);border:1px solid #bdd6dc;border-radius:.5rem;padding:.6rem .7rem;min-height:44px;cursor:pointer}.faq-questions button:hover{background:#edf6f7}
.faq-form{border-top:1px solid #dfe7ea;padding:.8rem 1rem;background:white}.faq-form label{display:block;font-size:.875rem;font-weight:700;margin-bottom:.4rem}.faq-form>div{display:flex;gap:.5rem}.faq-form input{font:inherit;font-size:1rem;min-width:0;width:100%;border:1px solid #b6c6ce;border-radius:.4rem;padding:.7rem}.faq-form button{background:var(--teal);border:0;border-radius:.4rem;padding:.7rem;color:white;font:700 1rem/1.3 inherit;cursor:pointer}.faq-footer{padding:0 1rem 1rem;display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:var(--navy);font-weight:700}.faq-chat :focus-visible,.faq-launcher:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:480px){.faq-chat{max-height:calc(100dvh - 1rem);max-width:calc(100vw - 1rem);right:.5rem;bottom:.5rem}.faq-launcher{font-size:.875rem}footer{padding-bottom:6rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.faq-launcher,.faq-header button,.faq-questions button,.faq-form button{font-family:inherit}.faq-launcher,.faq-form button{font-size:1rem;font-weight:700;line-height:1.3}.faq-header button{font-size:1.8rem;line-height:1}.faq-questions button{font-size:.875rem;font-weight:600;line-height:1.4}
