.lead-ribbon {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
  margin-top: 48px;
  padding: 34px 38px;
  border: 1px solid #a39ee64d;
  border-radius: 14px;
  background: radial-gradient(ellipse at 95% 50%, #6467cd18, transparent 65%), #111522;
}
.lead-ribbon h3 { font-size: clamp(1.4rem, 2.2vw, 1.8rem); line-height: 1.25; margin: 12px 0; font-weight: 400; }
.lead-ribbon p { color: #adb8d0; font-size: 1rem; line-height: 1.6; max-width: 530px; }
.lead-ribbon .eyebrow { color: #a8a6cc; font-size: .75rem; }
.lead-ribbon-action { flex: none; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.lead-ribbon-action > span { color: #a6aec7; font-size: .875rem; }
.lead-ribbon .button { gap: 22px; }
.lead-ribbon-compact { padding-block: 28px; margin-top: 32px; }
.lead-ribbon-compact h3 { margin-top: 0; }
.lead-dialog-open { overflow: hidden; }
.lead-dialog {
  padding: 0;
  width: min(720px, calc(100vw - 36px));
  max-width: none;
  max-height: calc(100dvh - 36px);
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: auto;
  color: #f0f2fb;
  background: #0f1523;
  border: 1px solid #918ed36e;
  border-radius: 18px;
  box-shadow: 0 30px 120px #0009;
}
.lead-dialog::backdrop { background: #030610dc; backdrop-filter: blur(8px); }
.lead-dialog-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 30px; border-bottom: 1px solid #8996bf26; }
.lead-dialog-head .eyebrow { font-size: .75rem; color: #a5adc7; }
.lead-close { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border: 1px solid #8a91bf50; border-radius: 50%; background: #20283f; color: #eeeefe; font-size: 27px; }
.lead-dialog-body { padding: 30px; }
.lead-dialog h2 { font-size: clamp(2rem, 4.6vw, 2.7rem); }
.lead-dialog-body > p { margin-top: 18px; color: #b0bbd1; font-size: 1rem; line-height: 1.65; }
.lead-messengers { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 26px; }
.lead-messenger { display: flex; align-items: center; gap: 12px; padding: 16px; background: #13283f; border: 1px solid #659dc568; border-radius: 10px; }
.lead-messenger:hover { border-color: #96c7eb; }
.lead-messenger-max { background: #24253f; border-color: #9e95d865; }
.lead-messenger-mark { display: grid; place-items: center; width: 36px; height: 36px; flex: none; border-radius: 50%; color: #e5f3ff; background: #244970; font-size: .875rem; font-weight: 600; }
.lead-messenger-max .lead-messenger-mark { background: #484476; }
.lead-messenger strong { display: block; font-size: 1rem; font-weight: 500; }
.lead-messenger small { display: block; margin-top: 4px; font-size: .75rem; line-height: 1.4; color: #b2c0d9; }
.lead-messenger > span:last-child { margin-left: auto; color: #c5c8ed; }
.lead-divider { display: flex; align-items: center; gap: 14px; margin: 26px 0; color: #98a6c0; font-size: .875rem; }
.lead-divider::before, .lead-divider::after { content: ''; flex: 1; height: 1px; background: #7f8caf30; }
.lead-form { display: grid; gap: 18px; }
.lead-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lead-form label { display: block; color: #c9d1e6; font-size: .875rem; line-height: 1.5; }
.lead-form input:not([type="checkbox"]), .lead-form select { display: block; width: 100%; margin-top: 7px; padding: 13px 14px; border: 1px solid #7686b057; border-radius: 7px; background: #182135; color: #f2f5ff; font-family: inherit; font-size: 1rem; line-height: 1.5; }
.lead-form select { color-scheme: dark; }
.lead-form input::placeholder { color: #8e9bb7; opacity: 1; }
.lead-form input:focus-visible, .lead-form select:focus-visible, .lead-dialog a:focus-visible, .lead-dialog button:focus-visible { outline: 2px solid #b9bcff; outline-offset: 3px; }
.lead-optional { color: #8998b7; font-size: .75rem; margin-left: 8px; }
.lead-form .lead-consent { display: flex; gap: 10px; align-items: flex-start; color: #b1bdd4; }
.lead-consent input { width: 18px; height: 18px; margin: 2px 0 0; flex: none; accent-color: #aaa8f6; }
.lead-submit { width: 100%; }
.lead-form .lead-form-note { font-size: .875rem; line-height: 1.6; color: #9eabc5; }
.lead-form-status { font-size: .875rem; line-height: 1.6; color: #c4cde8; }
.lead-form-status:empty { display: none; }
.lead-draft-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; font-size: .875rem; }
.lead-draft-actions[hidden] { display: none; }
.lead-draft-actions a { color: #c4bbf5; text-decoration: underline; text-underline-offset: 4px; }
.lead-draft-actions button { padding: 9px 12px; background: #29324a; color: #d8def0; border: 1px solid #8291b850; border-radius: 6px; font-size: inherit; }
@media (max-width: 900px) {
  .lead-ribbon { align-items: flex-start; flex-direction: column; padding: 30px; }
  .lead-ribbon p { max-width: none; }
  .lead-ribbon-action { align-items: flex-start; }
}
@media (max-width: 560px) {
  .lead-ribbon { margin-top: 32px; padding: 24px 20px; gap: 24px; }
  .lead-ribbon h3 br { display: none; }
  .lead-ribbon-action { width: 100%; }
  .lead-ribbon .button { width: 100%; gap: 14px; text-align: center; }
  .lead-ribbon-action > span { font-size: .8125rem; }
  .lead-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); border-radius: 13px; }
  .lead-dialog-head { padding: 16px 20px; gap: 12px; }
  .lead-dialog-head .eyebrow { font-size: .6875rem; letter-spacing: .08em; }
  .lead-dialog-body { padding: 24px 20px; }
  .lead-messengers, .lead-form-row { grid-template-columns: 1fr; }
  .lead-messenger { padding: 14px 16px; }
  .lead-submit { font-size: .875rem; gap: 16px; }
}

.lead-submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.lead-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
