.lead-modal{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border-radius:22px;overflow:auto;overscroll-behavior:contain}
.lead-modal__content{padding:26px}
.lead-modal__close{position:sticky;top:16px;float:right;margin:10px 14px -44px 0;width:32px;height:32px;z-index:5;display:grid;place-items:center;padding:0;border:0;border-radius:9px;background:transparent;color:#202124;font-size:0;box-shadow:none;transition:background .15s,color .15s}
.lead-modal__close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.lead-modal__close:hover{background:#f0f1f2;color:#08090a}
.lead-modal__close:focus-visible{outline:2px solid #202124;outline-offset:2px}
.lead-form{gap:14px;color:#151515;min-width:0}
.lead-brand{display:flex;align-items:center;gap:12px;min-height:34px;padding-right:24px;margin-bottom:6px}
.lead-brand__logo{width:104px;height:auto}
.lead-brand__stamp{height:32px;width:auto;max-width:150px;object-fit:contain}
.lead-modal .lead-form h3,.lead-form h3{font-size:26px;line-height:32px;letter-spacing:normal;font-weight:700;text-align:left;margin:0}
.lead-modal .lead-form__hint,.lead-form .lead-form__hint{font-size:15px;line-height:21px;color:#626875;text-align:left;margin:0 0 4px}
.lead-form .lead-method-label{margin:0 0 -6px;font-size:14px;line-height:20px;color:#535965;font-weight:500}
.lead-form .lead-form__methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;gap:2px;background:var(--ui-gray);border-radius:12px}
.lead-form .lead-form__methods label{min-height:40px;padding:6px 2px;gap:4px;background:transparent;border:0;border-radius:9px;color:#5f6570;font-size:13px;line-height:18px;font-weight:500;box-shadow:none}
.lead-form .lead-form__methods label:has(input:checked){background:var(--ui-white);color:#111;font-weight:600;box-shadow:0 1px 4px #00000010}
.lead-form .lead-form__methods .lead-form__method-icon{width:18px;height:18px;flex:0 0 18px;stroke:currentColor}
.lead-form .lead-field{display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:20px;color:#606671}
.lead-form .lead-field input,.lead-form .lead-field textarea{box-sizing:border-box;display:block;width:100%;height:46px;min-width:0;border:1px solid transparent;border-radius:10px;background:var(--ui-gray);color:#171819;padding:11px 13px;font-family:inherit;font-size:15px;line-height:22px;font-weight:400}
.lead-form .lead-field textarea{height:88px;min-height:80px;resize:vertical}
.lead-form .lead-field input::placeholder,.lead-form .lead-field textarea::placeholder{color:#9298a2}
.lead-form .lead-field :is(input,textarea):focus{outline:2px solid #ace846;outline-offset:1px;border-color:#789e38}
.lead-form .lead-field [aria-invalid=true]{border-color:#d74343}
.lead-form [data-field-error]{color:#b62d2d;font-size:13px;line-height:18px}
.lead-form .consent-field{font-size:13px;line-height:19px;gap:8px;color:#626875}
.lead-form .consent-field input{width:16px;height:16px;flex:0 0 16px;accent-color:#171819;margin-top:2px}
.lead-form .btn[type=submit]{min-height:46px;width:100%;padding:10px 14px;gap:12px;background:#202124;color:#fff;border-radius:10px;font-size:15px;line-height:20px;font-weight:600;white-space:normal}
.lead-form .btn[type=submit]:hover{background:#34363a}
.lead-form .btn:disabled{cursor:default;opacity:.7}
.lead-form .lead-form__status{margin:0;font-size:14px;line-height:20px;min-height:0}
.lead-form .lead-form__status:empty{display:none}
.lead-form .lead-form__status[data-state=success]{padding:12px;border-radius:10px;background:#eff9e3;color:#245f23}
.lead-account-summary{display:grid;gap:5px;padding:16px 18px;border:1px solid #dfe1e5;border-radius:16px;background:#f4f5f6;color:#17191c}
.lead-account-summary>span{font-size:12px;line-height:17px;color:#676d76}
.lead-account-summary>strong{font-size:17px;line-height:22px}
.lead-account-summary>small{font-size:14px;line-height:20px;color:#4f555e}
.lead-account-summary>p{margin:5px 0 0;font-size:13px;line-height:19px;color:#676d76}
.lead-success{inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;overflow:hidden}
.lead-success[open]{display:grid;place-items:center}
.lead-success::backdrop{background:linear-gradient(120deg,#34415dd9,#78859ac9);backdrop-filter:blur(10px) saturate(.75)}
.lead-success__card{width:min(650px,calc(100vw - 48px));box-sizing:border-box;padding:44px 46px;background:transparent;color:#fff;text-shadow:0 2px 16px #0008}
.lead-success__tag{display:block;margin-bottom:16px;font-size:19px;line-height:25px;font-weight:700}
.lead-success h2{margin:0 0 22px;color:#fff;font-size:clamp(42px,5vw,64px);line-height:1;letter-spacing:-.045em;font-weight:650;text-wrap:balance}
.lead-success p{max-width:590px;margin:0;color:#fff;font-size:20px;line-height:1.52}
.lead-success__done{display:grid;place-items:center;width:56px;height:56px;margin-top:30px;padding:12px;border:1px solid #fff;border-radius:50%;background:#fff;color:#303847;box-shadow:0 10px 28px #25304455;cursor:pointer}
.lead-success__done svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.lead-success__done:focus-visible{outline:2px solid #fff;outline-offset:4px}
body.lead-success-open{overflow:hidden}
@media(max-width:600px){.lead-success[open]{place-items:end start}.lead-success__card{width:auto;padding:28px 22px max(34px,env(safe-area-inset-bottom))}.lead-success__tag{font-size:16px;line-height:22px}.lead-success h2{font-size:clamp(38px,11vw,48px)}.lead-success p{font-size:17px;line-height:1.5}.lead-success__done{width:50px;height:50px;margin-top:24px}}
.lead-form .lead-form__status[data-state=error]{padding:10px;border-radius:10px;background:#fff0f0;color:#a82323}
.footer-lead:has(.lead-form){background:var(--ui-white);padding:24px;border:1px solid var(--ui-border);border-radius:22px}
.lead-form [hidden]{display:none!important}
@media(max-width:600px){.lead-modal__content{padding:22px 18px}.lead-modal .lead-form h3,.lead-form h3{font-size:24px;line-height:29px}.lead-form .lead-form__methods{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-form .lead-form__methods label{font-size:14px}.lead-brand__logo{width:94px}.lead-brand__stamp{height:30px}.lead-form{gap:12px}.footer-lead:has(.lead-form){padding:20px}}
.lead-form .lead-form__methods label:has(input:checked) .lead-form__method-icon{stroke:#111}

/* Crop the shared brand artwork before the divider: Ruta market only. */
.ruta-form-logo{display:block;flex:0 0 auto;width:112px;aspect-ratio:665/270;overflow:hidden;line-height:0}
.ruta-form-logo img{display:block;width:192.0301%;max-width:none;height:auto}
