/* Top Methods Marketing scripted chatbot. Black/gold theme. Edit answers in chatbot.js.
   Launcher/panel sit 84px above the bottom edge so they don't collide with Netlify's
   "Powered by Netlify" badge (free plan, bottom-right). If the badge goes away, set the
   84px/78px bottoms back to 20px/14px and remove the mobile padding-bottom. */
.kc-panel[hidden]{display:none}
.kc-launch{position:fixed;right:20px;bottom:84px;z-index:60;display:flex;align-items:center;gap:10px;padding:5px 18px 5px 5px;border-radius:999px;border:1.5px solid #A87D2C;background:#141414;color:#FBF8F2;font:600 .95rem/1 Outfit,system-ui,sans-serif;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.35);transition:transform .15s,box-shadow .15s}
.kc-launch:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,0,0,.42)}
.kc-launch:focus-visible,.kc-panel button:focus-visible,.kc-panel a:focus-visible,.kc-panel input:focus-visible,.kc-panel textarea:focus-visible,.kc-panel select:focus-visible{outline:3px solid #D8B45E;outline-offset:2px}
.kc-avwrap{display:grid;place-items:center;border-radius:50%;background:#141414;flex:none;overflow:hidden}
.kc-launch .kc-avwrap{width:46px;height:46px;background:#211F1B}
.kc-launch .kc-avwrap img{width:40px;height:40px}
.kc-launch .kc-dot{position:absolute;top:5px;left:41px;width:11px;height:11px;border-radius:50%;background:#3FA772;border:2px solid #141414}
.kc-open .kc-launch{display:none}

.kc-panel{position:fixed;right:20px;bottom:84px;z-index:61;width:380px;max-width:calc(100vw - 40px);height:600px;max-height:calc(100vh - 104px);display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.32),0 2px 8px rgba(0,0,0,.12);border:1px solid #D8CFBF;font-family:Outfit,system-ui,sans-serif;font-size:15px;line-height:1.5;color:#1F1D1A}
.kc-head{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px;background:#141414;color:#FBF8F2;border-bottom:2px solid #A87D2C}
.kc-avhead{width:42px;height:42px;border:1.5px solid rgba(216,180,94,.6)}
.kc-avhead img{width:36px;height:36px}
.kc-head .kc-title{flex:1;min-width:0}
.kc-head strong{display:block;font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-size:1.15rem;line-height:1.2}
.kc-head span{display:block;font-size:.78rem;color:#C9C0AF}
.kc-x{flex:none;width:38px;height:38px;border-radius:10px;border:0;background:rgba(255,255,255,.1);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer}
.kc-x:hover{background:rgba(255,255,255,.2)}

.kc-log{flex:1;overflow-y:auto;padding:16px 14px 8px;background:#FBF8F2;overscroll-behavior:contain}
.kc-msg{display:flex;gap:8px;margin:0 0 12px;align-items:flex-end}
.kc-msg .kc-av{width:28px;height:28px}
.kc-msg .kc-av img{width:22px;height:22px}
.kc-bubble{max-width:84%;padding:10px 13px;border-radius:14px;background:#fff;border:1px solid #E8E1D4;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.kc-bubble p{margin:0 0 .5em}.kc-bubble p:last-child{margin:0}
.kc-bubble ul,.kc-bubble ol{margin:.3em 0 .5em;padding-left:1.2em}.kc-bubble li{margin:.15em 0}
.kc-bubble a{color:#8C6A24;font-weight:600}
.kc-msg.kc-user{justify-content:flex-end}
.kc-msg.kc-user .kc-bubble{background:#141414;color:#FBF8F2;border-color:#141414;border-bottom-right-radius:4px}
.kc-msg.kc-bot .kc-bubble{border-bottom-left-radius:4px}
.kc-note{font-size:.75rem;color:#5F5A52;text-align:center;margin:0 0 12px}

.kc-quick{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px 36px}
.kc-chip{border:1.5px solid #A87D2C;background:#fff;color:#141414;font:500 .85rem/1.2 Outfit,system-ui,sans-serif;padding:.5em .85em;border-radius:999px;cursor:pointer;text-align:left}
.kc-chip:hover{background:#FAF5EA}
.kc-chip.kc-primary{background:#A87D2C;border-color:#A87D2C;color:#141414;font-weight:600}
.kc-chip.kc-primary:hover{background:#D8B45E;border-color:#D8B45E}

.kc-form{margin:0 0 12px 36px;background:#fff;border:1px solid #E8E1D4;border-radius:14px;padding:12px}
.kc-form label{display:block;font-size:.8rem;font-weight:600;color:#5F5A52;margin:0 0 8px}
.kc-form label span.req{color:#8C6A24}
.kc-form input,.kc-form select,.kc-form textarea{display:block;width:100%;margin-top:3px;padding:.55em .65em;border:1px solid #D8CFBF;border-radius:9px;font:400 16px/1.3 Outfit,system-ui,sans-serif;color:#141414;background:#fff}
.kc-form textarea{min-height:64px;resize:vertical}
.kc-form .kc-err{color:#B42318;font-size:.82rem;margin:0 0 8px}
.kc-form .kc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kc-form .kc-actions{display:flex;gap:8px;align-items:center;margin-top:4px}
.kc-submit{flex:1;border:0;background:#A87D2C;color:#141414;font:600 .95rem Outfit,system-ui,sans-serif;padding:.7em 1em;border-radius:10px;cursor:pointer}
.kc-submit:hover{background:#D8B45E}
.kc-submit[disabled]{opacity:.6;cursor:wait}
.kc-cancel{border:0;background:none;color:#5F5A52;font:600 .85rem Outfit,system-ui,sans-serif;cursor:pointer;padding:.5em}

.kc-input{display:flex;gap:8px;padding:10px;border-top:1px solid #E8E1D4;background:#fff}
.kc-input input{flex:1;min-width:0;padding:.6em .8em;border:1px solid #D8CFBF;border-radius:10px;font:400 16px/1.3 Outfit,system-ui,sans-serif}
.kc-send{border:0;background:#141414;color:#FBF8F2;border-radius:10px;padding:0 14px;font:600 .9rem Outfit,system-ui,sans-serif;cursor:pointer}
.kc-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media (max-width:680px){
  .kc-launch{right:14px;bottom:78px;padding:4px}
  .kc-launch .kc-label{display:none}
  .kc-launch .kc-avwrap{width:50px;height:50px}
  .kc-launch .kc-dot{left:42px}
  .kc-panel{right:0;bottom:0;left:0;top:0;width:100%;max-width:none;height:100%;max-height:none;border-radius:0;border:0;padding-bottom:64px}
  .kc-open body,.kc-open{overflow:hidden}
}
@media (prefers-reduced-motion:reduce){.kc-launch{transition:none}}
