/* Lead forms - Mainland Commercial Group. Scoped to .lf so nothing else on the site is touched. */
.lf{--lf-ink:#1A1A18;--lf-field:#262624;--lf-line:#55554F;--lf-line-hover:#84847B;--lf-cream:#FAF7F2;--lf-soft:#EDE8DE;--lf-muted:#B9B4A9;--lf-red:#8D0E1A;--lf-red-hover:#A8121F;--lf-err:#F0606C;font-family:'DM Sans',system-ui,sans-serif;color:var(--lf-cream);text-align:left}
.lf *,.lf *::before,.lf *::after{box-sizing:border-box}
.lf__row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.lf__row--one{grid-template-columns:1fr}
@media (max-width:560px){.lf__row{grid-template-columns:1fr;gap:20px}}
.lf__field{min-width:0}
.lf__label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 8px;font-size:12px;line-height:1.3;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--lf-soft)}
.lf__req{color:var(--lf-cream)}
.lf__opt{font-size:12px;font-weight:400;letter-spacing:.03em;text-transform:none;color:var(--lf-muted)}
.lf__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lf__input{display:block;width:100%;min-height:54px;padding:14px 16px;background:var(--lf-field);color:var(--lf-cream);border:1px solid var(--lf-line);border-radius:0;font:400 16px/1.4 'DM Sans',system-ui,sans-serif;transition:border-color .18s,box-shadow .18s,background-color .18s;-webkit-appearance:none;appearance:none}
.lf__input::placeholder{color:#8F8A80;opacity:1}
.lf__input:hover:not(:disabled){border-color:var(--lf-line-hover)}
.lf__input:focus{outline:none;border-color:var(--lf-cream);box-shadow:0 0 0 3px rgba(250,247,242,.18)}
.lf__input:disabled{opacity:.6;cursor:not-allowed}
.lf__textarea{min-height:150px;resize:vertical;line-height:1.55}
.lf__select{padding-right:48px;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'><path d='M1 1.5l6 6 6-6' stroke='%23FAF7F2' stroke-width='1.8'/></svg>");background-repeat:no-repeat;background-position:right 18px center}
.lf__select option{background:#262624;color:#FAF7F2}
.lf__field--err .lf__input{border-color:var(--lf-err)}
.lf__field--err .lf__input:focus{box-shadow:0 0 0 3px rgba(240,96,108,.25)}
.lf__err{display:flex;align-items:flex-start;gap:7px;margin:8px 0 0;font-size:13.5px;line-height:1.4;color:var(--lf-err)}
.lf__err svg{flex:none;margin-top:3px}
.lf__hp{position:absolute!important;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.lf__btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:58px;margin-top:8px;padding:0 28px;border:0;border-radius:0;background:var(--lf-red);color:var(--lf-cream);font:600 13px/1 'DM Sans',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background-color .2s}
.lf__btn svg{transition:transform .2s}
.lf__btn:hover:not(:disabled){background:var(--lf-red-hover)}
.lf__btn:hover:not(:disabled) svg{transform:translateX(4px)}
.lf__btn:focus-visible{outline:2px solid var(--lf-cream);outline-offset:3px}
.lf__btn:disabled{cursor:progress;opacity:.85}
.lf__spin{width:16px;height:16px;border:2px solid rgba(250,247,242,.35);border-top-color:var(--lf-cream);border-radius:50%;animation:lf-spin .7s linear infinite}
@keyframes lf-spin{to{transform:rotate(360deg)}}
.lf__note{margin:16px 0 0;font-size:13px;line-height:1.55;color:var(--lf-muted);text-align:center}
.lf__fail{margin:4px 0 16px;padding:16px 18px;border:1px solid var(--lf-err);border-left-width:4px;background:rgba(240,96,108,.07)}
.lf__fail p{margin:0}
.lf__fail-title{font-weight:600;font-size:15px;color:var(--lf-cream)}
.lf__fail-body{margin-top:4px!important;font-size:14px;line-height:1.5;color:var(--lf-soft)}
.lf__fail-links{margin-top:10px!important;font-size:14.5px;font-weight:600}
.lf__fail-links a{color:var(--lf-cream);text-decoration:underline;text-underline-offset:3px}
.lf__fail-links a:hover{text-decoration-thickness:2px}
/* success */
.lf-sent{padding:8px 0;animation:lf-in .45s ease both}
@keyframes lf-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.lf-sent__icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;margin-bottom:22px;background:var(--lf-red);color:var(--lf-cream)}
.lf-sent__title{margin:0 0 12px;font:700 clamp(2rem,4vw,2.6rem)/1 'Barlow Condensed',sans-serif;letter-spacing:-.01em;text-transform:uppercase;color:var(--lf-cream);outline:none}
.lf-sent__body{margin:0;max-width:44ch;font-size:16px;line-height:1.6;color:var(--lf-soft)}
.lf-sent__next{margin-top:26px;padding-top:20px;border-top:1px solid #3F3F3B}
.lf-sent__kicker{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--lf-muted)}
.lf-sent__next ol{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lf-sent__next li{display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--lf-soft)}
.lf-sent__n{flex:none;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--lf-line);font:700 15px/1 'Barlow Condensed',sans-serif;color:var(--lf-cream)}
.lf-sent__conf{margin:22px 0 0;font-size:14px;line-height:1.55;color:var(--lf-muted)}
.lf-sent__conf strong{color:var(--lf-soft);font-weight:600;word-break:break-all}
.lf-sent__call{margin:14px 0 0;font-size:14.5px;color:var(--lf-soft)}
.lf-sent__call a{color:var(--lf-cream);font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media (prefers-reduced-motion:reduce){.lf-sent{animation:none}.lf__spin{animation-duration:1.6s}.lf__btn svg,.lf__input{transition:none}}
