.lead-dialog { --lead-green: var(--accent-color, #88903e); position: fixed; inset: 0; text-align: left; box-sizing: border-box; width: min(460px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow: auto; margin: auto; padding: 58px 32px 28px; border: 0; border-radius: 22px; color: #5f5e5e; background: #fff; box-shadow: 0 24px 80px #24261940; font-family: 'Poppins', sans-serif; }
.lead-dialog::backdrop { background: rgba(45, 45, 45, .62); backdrop-filter: blur(3px); }
.lead-dialog h2 { color: #5f5e5e; font-size: 26px; font-weight: 600; line-height: 1.35; letter-spacing: -.5px; margin: 0 0 12px; }
.lead-dialog p { font-size: 14px; line-height: 1.7; }
.lead-dialog #lead-description { margin: 0 0 24px; color: #5f5e5e; }
.lead-close { position: absolute; right: 18px; top: 17px; display: grid; place-items: center; width: 36px; height: 36px; padding: 0; background: #f5f5f5; border: 0; border-radius: 50%; color: #5f5e5e; font-size: 26px; cursor: pointer; line-height: 1; transition: background .15s; }
.lead-close:hover { background: #ededed; }
.lead-dialog label { display: block; margin: 18px 0 8px; font-size: 13px; font-weight: 600; color: #5f5e5e; }
.lead-dialog input { box-sizing: border-box; width: 100%; min-height: 52px; padding: 13px 14px; border: 1px solid #dedede; border-radius: 10px; font: inherit; font-size: 16px; color: #5f5e5e; background: #fafafa; transition: border-color .15s, box-shadow .15s; }
.lead-dialog input::placeholder { color: #5f5e5e; opacity: 1; }
.lead-dialog input:focus { background: #fff; border-color: #5f5e5e; outline: 2px solid #5f5e5e; outline-offset: 2px; }
.lead-submit, .lead-success-button { box-sizing: border-box; display: block; width: 100%; margin-top: 24px; padding: 14px 12px; border: 0; border-radius: 10px; background: #88903e; color: #fff; text-align: center; text-decoration: none; font: inherit; font-size: 19px; font-weight: 700; line-height: 1.45; cursor: pointer; transition: background .15s, box-shadow .15s; }
.lead-submit { background: var(--lead-green); }
.lead-submit:hover, .lead-success-button:hover { background: #737b31; color: #fff; box-shadow: 0 5px 16px #88903e30; }
.lead-submit:focus-visible, .lead-success-button:focus-visible, .lead-close:focus-visible { outline: 2px solid #5f5e5e; outline-offset: 3px; }
.lead-submit:disabled { opacity: .65; cursor: wait; box-shadow: none; }
.lead-dialog .lead-privacy { margin: 18px 0 0; font-size: 12px; line-height: 1.65; color: #5f5e5e; text-align: center; }
.lead-privacy a { color: #5f5e5e; text-decoration: underline; text-underline-offset: 2px; }
.lead-error { color: #a22525; margin: 12px 0 0; }
.lead-error:empty { display: none; }
.lead-trap { position: absolute; left: -10000px; }
body.lead-modal-open { overflow: hidden; }
.lead-success-page { margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 24px; box-sizing: border-box; background: #f0ece6; color: #5f5e5e; font-family: 'Poppins', sans-serif; }
.lead-success-card { width: min(520px, 100%); padding: 36px; box-sizing: border-box; border-radius: 22px; background: #fff; text-align: center; box-shadow: 0 16px 50px #24261912; }
.lead-success-card h1 { color: #5f5e5e; font-size: 28px; line-height: 1.3; }
.lead-success-card p { line-height: 1.7; }
.lead-success-home { display: inline-block; margin-top: 20px; color: #5f5e5e; }
@media (max-width: 480px) { .lead-dialog { padding: 54px 24px 24px; } .lead-dialog h2 { font-size: 24px; } .lead-dialog #lead-description { margin-bottom: 20px; } .lead-success-card { padding: 26px; } }