/* Namespaced additions only. Original artwork and learning button stay intact. */
.ai-contact-trigger {
  position:absolute;left:79.5%;top:72.2%;width:19%;height:22%;
  display:flex;align-items:center;justify-content:center;padding:0 .5cqw;
  border:1px solid #12766e;border-radius:1.3cqw;
  background:linear-gradient(110deg,#148980,#087065);color:#fff;
  font-family:inherit;font-size:1.35cqw;font-weight:700;line-height:1.1;white-space:nowrap;
}
.ai-contact-trigger:disabled{cursor:not-allowed;opacity:.7}
.ai-contact-button{min-height:46px;padding:12px 20px;border:1px solid #0867b9;border-radius:10px;background:#096bbd;color:#fff;font:inherit;font-size:1rem;line-height:1.4;font-weight:700}
.ai-contact-button:disabled{cursor:not-allowed;background:#51677d;border-color:#51677d}
.ai-contact-trigger:focus-visible,
#ai-contact-dialog button:focus-visible,
#ai-contact-dialog input:focus-visible,
#ai-contact-dialog textarea:focus-visible{outline:3px solid #086bd4;outline-offset:3px}
#ai-contact-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #b8d9e5;border-radius:18px;background:#fff;color:#122b53;overflow-y:auto;overscroll-behavior:contain}
.ai-contact-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid #cce2ec;background:linear-gradient(110deg,#e5f3ff,#e0f5f0)}
.ai-contact-heading h2{margin:0;font-size:1.5rem;line-height:1.3}
.ai-contact-close{flex:none;width:46px;height:46px;border:1px solid #b8d9e5;border-radius:50%;background:#fff;color:#122b53;font-size:1.75rem;line-height:1}
.ai-contact-content{padding:24px}
.ai-contact-content p{margin:0 0 16px;font-size:1rem;line-height:1.6}
.ai-contact-content .ai-contact-pitch{font-size:1.125rem;font-weight:700;line-height:1.6}
.ai-contact-services{margin:0 0 20px;padding:0;list-style:none;display:grid;gap:14px}
.ai-contact-services li{padding:14px 16px;border:1px solid #d4e3ed;border-radius:10px;background:#f6fbff}
.ai-contact-services h3{margin:0 0 6px;font-size:1.0625rem;line-height:1.4}
.ai-contact-services p{margin:0;font-size:1rem;line-height:1.6}
.ai-contact-notice{padding:14px 16px;border:1px solid #c8d9e7;border-radius:10px;background:#f0f6fc}
.ai-contact-notice strong{display:block;margin-bottom:4px}
#ai-contact-form{display:grid;gap:16px}
.ai-contact-field{display:grid;gap:7px;min-width:0}
.ai-contact-field label{font-size:1rem;line-height:1.4;font-weight:700}
.ai-contact-field input,.ai-contact-field textarea{display:block;width:100%;min-width:0;min-height:46px;padding:11px 12px;border:1px solid #859ab3;border-radius:8px;background:#fff;color:#122b53;font:inherit;font-size:1rem;line-height:1.5}
.ai-contact-field textarea{min-height:132px;resize:vertical}
.ai-contact-actions{display:grid;justify-items:start;gap:12px}
.ai-contact-content .ai-contact-retention{margin:0;color:#405570;font-size:.875rem}
#ai-contact-status{margin:0;font-size:1rem;line-height:1.6;font-weight:700;overflow-wrap:anywhere}
#ai-contact-status:empty{display:none}
body.ai-contact-open{overflow:hidden}
@media(max-width:480px){
 #ai-contact-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:16px}
 .ai-contact-heading{padding:12px 16px}.ai-contact-content{padding:18px 16px}
 .ai-contact-actions .ai-contact-button{width:100%}
}
