/* The qualifying form. Uses the design's own colours and type, and overrides its older form rule, which was a two column grid. */
.cta .card.has-lf{width:min(560px,100%);background:rgba(255,253,250,.93)}
form.lf,.lf{display:block;margin-top:18px}
.lf-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.lf-progress{margin:0;flex:none;font:500 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.lf-bar{flex:1;height:4px;border-radius:4px;background:rgba(43,51,56,.12);overflow:hidden}
.lf-bar i{display:block;height:100%;width:12%;border-radius:4px;background:var(--ink);transition:width .35s ease}
.lf-title{margin:0 0 12px;font:600 19px/1.25 var(--sans);color:var(--ink);outline:none}
.lf-group{border:0;margin:0 0 16px;padding:0;min-width:0}
.lf-group legend{padding:0;margin:0 0 8px;font:500 14.5px/1.3 var(--sans);color:var(--ink)}
.lf small{font:400 12.5px/1 var(--sans);color:var(--muted)}
.lf small.lf-hint{display:block;margin-top:4px;line-height:1.3}
.lf-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.lf-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lf-opts.lf-long{grid-template-columns:1fr}
.lf-opt{display:block;position:relative;cursor:pointer}
.lf-opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.lf-opt span{display:flex;align-items:center;min-height:44px;height:100%;box-sizing:border-box;padding:9px 13px;border-radius:12px;border:1px solid rgba(43,51,56,.18);background:rgba(255,255,255,.72);font:400 14.5px/1.25 var(--sans);color:var(--ink);transition:background .2s,border-color .2s,color .2s}
.lf-opt:hover span{background:#fff;border-color:rgba(43,51,56,.4)}
.lf-opt input:checked + span{background:var(--ink);border-color:var(--ink);color:#F6F3EE}
.lf-opt input:focus-visible + span{outline:2px solid var(--ink);outline-offset:2px}
.lf-field{margin:0 0 14px}
.lf-field label{display:block;margin:0 0 6px;font:500 14.5px/1.3 var(--sans);color:var(--ink)}
.lf-note{margin:-2px 0 6px;font-size:13px;line-height:1.3;color:var(--muted)}
.lf-field input,.lf-field textarea{display:block;width:100%;box-sizing:border-box;min-height:46px;padding:11px 14px;border-radius:12px;border:1px solid rgba(43,51,56,.28);background:rgba(255,255,255,.8);font:400 16px/1.35 var(--sans);color:var(--ink)}
.lf-field textarea{resize:vertical}
.lf-field input:focus,.lf-field textarea:focus{outline:none;border-color:var(--ink);background:#fff;box-shadow:0 0 0 4px rgba(43,51,56,.1)}
.lf-check{display:flex;align-items:center;gap:10px;min-height:44px;margin:0 0 6px;cursor:pointer;font-size:14.5px;line-height:1.3;color:var(--ink)}
.lf-check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--ink)}
.lf-consent{margin:0 0 14px;font-size:13px;line-height:1.45;color:var(--ink-2)}
.lf-consent a{color:inherit}
.lf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lf-ts{min-height:65px;max-width:100%;overflow:hidden}
.lf-err{margin:0;font-size:13.5px;line-height:1.35;color:#A32B1F}
.lf-err:not(:empty){margin-top:6px}
.lf-bad .lf-opt span,.lf-bad input,.lf-bad textarea{border-color:#A32B1F}
.lf-status{margin:0;font-size:14px;line-height:1.4;color:var(--ink)}
.lf-status:not(:empty){margin-bottom:12px}
.lf-nav{display:flex;gap:10px;align-items:center}
form.lf .btn{width:auto;height:48px;margin-top:0;font-size:15px;justify-content:center}
form.lf .btn[type=submit]{flex:1}
form.lf .btn.ghost{flex:none;padding:0 20px}
form.lf .btn[disabled]{opacity:.6;cursor:progress}
.lf-done p{margin:0;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.lf-or{margin:20px 0 0;font-size:14px;color:var(--ink-2)}
.has-lf .contact-now{margin-top:10px}
.has-lf .contact-now .btn{height:44px;font-size:13.5px}
.has-lf .note{margin-top:6px;text-align:left}
.has-lf .note a{display:inline-block;padding:13px 0}
@media (max-width:760px){
  .cta{align-items:flex-start}
  .cta .card.has-lf{padding:20px 16px}
}
@media (max-width:360px){
  .lf-opts{grid-template-columns:1fr}
  .has-lf .lf-opts:not(.lf-long){grid-template-columns:1fr}
}
.lf-done{overflow-wrap:anywhere}
.lf-more{margin-top:8px}
.lf-more>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;box-sizing:border-box;padding:9px 13px;border-radius:12px;border:1px solid rgba(43,51,56,.18);background:rgba(255,255,255,.72);font:400 14.5px/1.25 var(--sans);color:var(--ink);cursor:pointer;list-style:none}
.lf-more>summary::-webkit-details-marker{display:none}
.lf-more>summary::after{content:"+";font-size:18px;line-height:1}
.lf-more[open]>summary::after{content:"\2212"}
.lf-more>summary:hover{background:#fff;border-color:rgba(43,51,56,.4)}
.lf-more>summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.has-lf .lf-opts.lf-states:not(.lf-long),.lf-opts.lf-states{grid-template-columns:repeat(auto-fill,minmax(50px,1fr));margin-top:8px}
.lf-states .lf-opt span{justify-content:center;padding:9px 2px}
