/*! Raz Almasia Real Estate - lead form (src/styles/pages/forms.css, owner WP8). Prefix .lf-.
   Markup: src/templates/partials/lead-form.mjs (server) and src/client/forms/lead.js (modal, result panels).
   Builds on the WP3 form components (.field .label .input .select .textarea .error .hint .check .form-grid-2 .btn).
   Role tokens only, logical properties only. Load with route.styles [..., 'forms'] wherever the form can appear. */
 .lf{position: relative;min-width: 0}.lf--card{background: var(--c-surface);color: var(--c-text);border: 1px solid var(--c-border);border-radius: var(--r-xl);box-shadow: var(--sh-2);padding: clamp(20px,3.2vw,36px)}.lf-form{display: grid;gap: var(--sp-5)}.lf-form[hidden],.lf-result[hidden]{display: none}.lf-grid{gap: 18px var(--sp-4)}.lf .field{align-content: start}.lf-opt{margin-inline-start: 6px;font-weight: var(--fw-regular);font-size: var(--fs-xs);color: var(--c-text-subtle)}.lf .field.is-invalid .label{color: var(--c-danger)}.lf .lf-err::before{content: "";display: inline-block;inline-size: 6px;block-size: 6px;margin-inline-end: 6px;border-radius: 50%;background: currentColor;vertical-align: middle}.lf-tel{text-align: end;letter-spacing: .04em;font-variant-numeric: tabular-nums}.lf-tel::placeholder{letter-spacing: .08em}.lf .textarea{min-height: 112px}.lf-subject{display: flex;align-items: center;gap: var(--sp-4);padding: 14px 16px;background: var(--c-surface-tint);border: 1px solid rgb(var(--c-primary-rgb) / .14);border-radius: var(--r)}.lf-subject-ic{flex: none;display: grid;place-items: center;inline-size: 44px;block-size: 44px;border-radius: 50%;background: var(--c-primary);color: var(--c-on-primary)}.lf-subject-list{display: grid;gap: 6px;margin: 0;min-width: 0}.lf-subject-list>div{display: grid;grid-template-columns: 56px minmax(0,1fr);align-items: baseline;gap: 10px}.lf-subject-list dt{font-size: var(--fs-xs);color: var(--c-text-muted)}.lf-subject-list dd{margin: 0;font-weight: var(--fw-bold);color: var(--c-heading)}.lf-subject-sub{font-weight: var(--fw-medium);color: var(--c-text-2)}.lf-errors{padding: 14px 16px;border-radius: var(--r-sm);background: var(--c-danger-bg);color: var(--c-text);border: 1px solid rgb(var(--c-ink-rgb) / .06);border-inline-start: 4px solid var(--c-danger)}.lf-errors[hidden]{display: none}.lf-errors:focus{outline: none}.lf-errors:focus-visible{outline: 2px solid var(--c-focus);outline-offset: 2px}.lf-errors-title{margin: 0;font-weight: var(--fw-bold);font-size: var(--fs-sm);color: var(--c-danger)}.lf-errors ul{margin: 8px 0 0;padding-inline-start: 18px;display: grid;gap: 4px;font-size: var(--fs-sm)}.lf-errors a{color: var(--c-text);text-decoration: underline;text-underline-offset: 3px}.lf-consent-wrap{display: grid;gap: 6px}.lf-consent{font-size: var(--fs-sm);color: var(--c-text-2)}.lf-consent a{color: var(--c-link);text-decoration: underline;text-underline-offset: 3px}.lf-consent a:hover{color: var(--c-link-hover)}.lf-hp{position: absolute;inline-size: 1px;block-size: 1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap;opacity: 0;pointer-events: none}.lf-turnstile:empty{display: none}.lf-turnstile{min-height: 0}.lf.has-challenge .lf-turnstile{min-height: 65px}.lf-actions{display: grid;gap: 14px;justify-items: stretch}.lf-submit{inline-size: 100%}.lf-submit .i{transition: transform var(--dur-fast) var(--ease)}.lf-submit:hover .i{transform: translateX(-3px)}.lf-submit[aria-busy="true"]{cursor: progress;opacity: .92}.lf-submit[aria-busy="true"] .i{display: none}.lf-submit[aria-busy="true"]::after{content: "";inline-size: 18px;block-size: 18px;border-radius: 50%;border: 2px solid rgb(var(--c-white-rgb) / .35);border-top-color: var(--c-on-primary);animation: lf-spin .8s linear infinite}@keyframes lf-spin{to{transform: rotate(360deg)}}@media (prefers-reduced-motion: reduce){.lf-submit[aria-busy="true"]::after{animation-duration: 2.4s}}.lf-alt{display: flex;flex-wrap: wrap;align-items: center;justify-content: center;gap: 6px 14px;margin: 0;font-size: var(--fs-sm);color: var(--c-text-muted);text-align: center}.lf-alt-link{display: inline-flex;align-items: center;gap: 6px;color: var(--c-link);font-weight: var(--fw-semibold);text-decoration: none}.lf-alt-link:hover{color: var(--c-link-hover);text-decoration: underline;text-underline-offset: 3px}.lf-alt-link .i{color: var(--c-primary)}.lf-alt-link .i-whatsapp{color: var(--c-wa)}@media (min-width: 640px){.lf--card .lf-actions,.lf--plain .lf-actions{grid-template-columns: auto 1fr;align-items: center}.lf--card .lf-submit,.lf--plain .lf-submit{inline-size: auto;min-inline-size: 240px}.lf--card .lf-alt,.lf--plain .lf-alt{justify-content: flex-end}}.lf-result{text-align: center;padding-block: var(--sp-4)}.lf-result:focus{outline: none}.lf-done,.lf-fail{display: grid;justify-items: center;gap: var(--sp-4)}.lf-result-ic{display: grid;place-items: center;inline-size: 72px;block-size: 72px;border-radius: 50%;box-shadow: 0 0 0 8px var(--c-surface-tint)}.lf-result-ic--ok{background: var(--c-primary);color: var(--c-on-primary)}.lf-result-ic--wa{background: var(--c-wa);color: var(--c-on-wa);box-shadow: 0 0 0 8px rgb(var(--c-ok-rgb) / .12)}.lf-result-title{margin: 0;font-size: var(--fs-xl);line-height: var(--lh-heading);color: var(--c-heading)}.lf-result-title:focus{outline: none}.lf-result-text{margin: 0;max-inline-size: 46ch;color: var(--c-text-2);line-height: 1.85}.lf-result-phone{white-space: nowrap;font-weight: var(--fw-semibold);color: var(--c-heading)}.lf-summary{display: grid;gap: 0;inline-size: min(100%,420px);margin: 0;padding: 4px 18px;background: var(--c-surface-gold);border: 1px solid rgb(var(--c-champagne-rgb) / .45);border-radius: var(--r);text-align: start}.lf-summary>div{display: flex;justify-content: space-between;gap: var(--sp-4);padding: 12px 0}.lf-summary>div + div{border-top: 1px solid rgb(var(--c-champagne-rgb) / .4)}.lf-summary dt{color: var(--c-text-muted);font-size: var(--fs-sm)}.lf-summary dd{margin: 0;font-weight: var(--fw-semibold);color: var(--c-heading);text-align: end}.lf-result-actions{display: flex;flex-wrap: wrap;justify-content: center;gap: 10px;inline-size: 100%}.lf-result-actions .btn{flex: 1 1 200px;max-inline-size: 280px}.lf-result .lf-alt{margin-top: 2px}.lf-result .lf-alt a{color: var(--c-link);font-weight: var(--fw-semibold)}.lf-nojs{margin: 0;padding: 14px 16px;border-radius: var(--r-sm);background: var(--c-surface-gold);color: var(--c-text);font-size: var(--fs-sm);line-height: 1.8}.lf-nojs a{color: var(--c-link);font-weight: var(--fw-semibold)}html.no-js .lf-form{display: none}.modal .lf--modal .lf-form{gap: 20px}.modal .lf--modal .lf-result{padding-block: 8px 4px}.lf-section{position: relative;background: var(--c-bg)}.lf-layout{display: grid;gap: clamp(24px,4vw,56px);align-items: start;grid-template-areas: "intro" "card" "aside"}.lf-intro{grid-area: intro;display: grid;gap: var(--sp-4);align-content: start}.lf-card{grid-area: card}.lf-aside{grid-area: aside;display: grid;gap: var(--sp-5);align-content: start;min-width: 0}@media (min-width: 1024px){.lf-layout{grid-template-columns: minmax(0,5fr) minmax(0,7fr);grid-template-rows: auto 1fr;grid-template-areas: "intro card" "aside card";row-gap: var(--sp-6)}.lf-intro{padding-block-start: 8px}}.lf-intro .kicker{margin: 0}.lf-title{margin: 0;font-size: var(--fs-2xl);line-height: var(--lh-heading);color: var(--c-heading)}.lf-text{margin: 0;font-size: var(--fs-md);line-height: 1.9;color: var(--c-text-2);max-inline-size: 44ch}.lf-orn{inline-size: min(380px,90%);height: auto;opacity: .55}@media (max-width: 1023.98px){.lf-orn{display: none}}.lf-channels{list-style: none;margin: 0;padding: 0;display: grid;gap: 12px}.lf-channel{display: flex;align-items: center;gap: 14px;padding: 14px 16px;border-radius: var(--r);background: var(--c-surface);border: 1px solid var(--c-border);color: var(--c-text);text-decoration: none;transition: border-color var(--dur-fast),box-shadow var(--dur-fast),transform var(--dur-fast) var(--ease)}.lf-channel:hover{border-color: rgb(var(--c-primary-rgb) / .35);box-shadow: var(--sh-1);transform: translateY(-1px)}.lf-channel-ic{flex: none;display: grid;place-items: center;inline-size: 42px;block-size: 42px;border-radius: 50%;background: var(--c-surface-tint);color: var(--c-primary)}.lf-channel .i-whatsapp{color: var(--c-wa)}.lf-channel small{display: block;font-size: var(--fs-xs);color: var(--c-text-muted)}.lf-channel b{display: block;font-weight: var(--fw-semibold);color: var(--c-heading)}.lf-card{background: var(--c-surface);color: var(--c-text);border: 1px solid var(--c-border);border-radius: var(--r-xl);box-shadow: var(--sh-2);padding: clamp(20px,3.2vw,36px);position: relative;overflow: hidden}.lf-card::before{content: "";position: absolute;inset-block-start: 0;inset-inline: 32px;block-size: 2px;background: var(--grad-gold-rule);border-radius: 0 0 2px 2px}@media (max-width: 639.98px){.lf-card{padding: 20px 16px;border-radius: var(--r-lg)}.modal .lf--modal .lf-grid{gap: 14px}}
