/* Moving Lead Manager: cost calculator form, quote button and popup. */
.mlm-qc,.mlm-qc-modal,.mlm-qs{
	--mlm-c-navy:var(--mlm-deep-navy,#0B2D4D);
	--mlm-c-blue:var(--mlm-primary-blue,#0878B9);
	--mlm-c-green:var(--mlm-dark-green,#4F9D22);
	--mlm-c-lightblue:var(--mlm-light-blue,#EAF5FB);
	--mlm-c-text:var(--mlm-dark-text,#172B3A);
	--mlm-c-muted:var(--mlm-muted-text,#5A6F80);
	--mlm-c-border:var(--mlm-border,#DCE6EE);
	--mlm-c-danger:var(--mlm-danger,#B3261E);
}
.mlm-qc,.mlm-qc *,.mlm-qc-modal *{box-sizing:border-box}
.mlm-qc [hidden],.mlm-qc-modal[hidden]{display:none!important}

/* ---------- Card ---------- */
.mlm-qc{max-width:760px;margin:24px auto;background:#fff;border:1px solid var(--mlm-c-border);border-radius:14px;padding:28px;color:var(--mlm-c-text);font-family:inherit;box-shadow:0 4px 18px rgba(11,45,77,.08)}
.mlm-qc-head{margin-bottom:20px}
.mlm-qc-title{margin:0 0 6px;font-size:28px;line-height:1.2;color:var(--mlm-c-navy)}
.mlm-qc-intro{margin:0;color:var(--mlm-c-muted);font-size:16px}
.mlm-qc-company{margin:0 0 16px;padding:10px 14px;background:var(--mlm-c-lightblue);border-radius:8px;color:var(--mlm-c-navy);font-weight:600}
.mlm-qc-admin-note{padding:10px 14px;background:#FFF8E5;border:1px solid #F0D58A;border-radius:8px;color:#8A5A00;font-size:14px}

/* ---------- Progress ---------- */
.mlm-qc-steps{display:flex;gap:8px;list-style:none;margin:0 0 22px;padding:0}
.mlm-qc-steps li{flex:1;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;background:#F1F5F8;color:var(--mlm-c-muted);font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden}
.mlm-qc-steps b{flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#D5DEE6;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.mlm-qc-steps li.is-current{background:var(--mlm-c-lightblue);color:var(--mlm-c-navy)}
.mlm-qc-steps li.is-current b{background:var(--mlm-c-blue)}
.mlm-qc-steps li.is-done b{background:var(--mlm-c-green)}

/* ---------- Fields ---------- */
.mlm-qc-group{border:0;margin:0 0 16px;padding:0;min-width:0}
.mlm-qc-group legend{padding:0;margin:0 0 8px;font-weight:700;color:var(--mlm-c-navy);font-size:15px}
.mlm-qc-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.mlm-qc-group .mlm-qc-row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,.7fr);margin-bottom:0}
.mlm-qc-field{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;font-size:14px;font-weight:600;color:var(--mlm-c-navy)}
.mlm-qc-row .mlm-qc-field{margin-bottom:0}
.mlm-qc input[type=text],.mlm-qc input[type=email],.mlm-qc input[type=tel],.mlm-qc input[type=date],.mlm-qc select,.mlm-qc textarea{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--mlm-c-border);border-radius:8px;background:#fff;color:var(--mlm-c-text);font:inherit;font-weight:400;font-size:15px;box-shadow:none}
.mlm-qc textarea{min-height:84px;resize:vertical}
.mlm-qc input:focus,.mlm-qc select:focus,.mlm-qc textarea:focus{outline:2px solid var(--mlm-c-blue);outline-offset:1px;border-color:var(--mlm-c-blue)}
.mlm-qc .has-error input,.mlm-qc .has-error select,.mlm-qc .has-error textarea{border-color:var(--mlm-c-danger)}
.mlm-qc-err{display:none;font-style:normal;font-weight:500;font-size:13px;color:var(--mlm-c-danger)}
.mlm-qc .has-error .mlm-qc-err{display:block}
.mlm-qc-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mlm-qc-check,.mlm-qc-consent{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:14px;color:var(--mlm-c-text);cursor:pointer}
.mlm-qc-check{padding:10px 12px;border:1px solid var(--mlm-c-border);border-radius:8px;align-items:center}
.mlm-qc-check:hover{border-color:var(--mlm-c-blue);background:var(--mlm-c-lightblue)}
.mlm-qc input[type=checkbox]{width:18px;height:18px;margin:2px 0 0;flex:0 0 18px;accent-color:var(--mlm-c-blue)}
.mlm-qc-check input{margin:0}
.mlm-qc-consent{flex-wrap:wrap;margin-top:4px;color:var(--mlm-c-muted)}
.mlm-qc-consent span{flex:1 1 0;min-width:0}
.mlm-qc-consent .mlm-qc-err{flex:0 0 100%}
.mlm-qc-trap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ---------- Buttons ---------- */
.mlm-qc-nav{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.mlm-qc-btn{display:inline-block;background:var(--mlm-c-blue);color:#fff!important;border:1px solid var(--mlm-c-blue);border-radius:8px;padding:12px 24px;font:inherit;font-weight:700;font-size:16px;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}
.mlm-qc-btn:hover,.mlm-qc-btn:focus{background:var(--mlm-c-navy);border-color:var(--mlm-c-navy);color:#fff!important}
.mlm-qc-btn.is-outline{background:#fff;color:var(--mlm-c-blue)!important}
.mlm-qc-btn.is-outline:hover,.mlm-qc-btn.is-outline:focus{background:var(--mlm-c-lightblue);border-color:var(--mlm-c-blue);color:var(--mlm-c-navy)!important}
.mlm-qc-btn:disabled{opacity:.65;cursor:wait}
.mlm-qc-btnwrap{margin:8px 0}
.mlm-qc-btnwrap.is-center{text-align:center}
.mlm-qc-btnwrap.is-right{text-align:right}
.mlm-qc-message{min-height:0;margin-top:14px;font-size:14px;font-weight:600}
.mlm-qc-message.is-error{padding:10px 14px;border-radius:8px;background:#FDECEA;color:var(--mlm-c-danger)}

/* ---------- Result ---------- */
.mlm-qc-done{text-align:center;padding:12px 0}
.mlm-qc-tick{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--mlm-c-green);color:#fff;font-size:30px;margin-bottom:10px}
.mlm-qc-pricelabel{margin:0;color:var(--mlm-c-muted);font-weight:600}
.mlm-qc-price{margin:4px 0 8px;font-size:40px;line-height:1.15;font-weight:800;color:var(--mlm-c-navy)}
.mlm-qc-note{max-width:520px;margin:0 auto 16px;font-size:13px;color:var(--mlm-c-muted)}
.mlm-qc-thanks{margin:0 0 8px;font-size:16px}
.mlm-qc-ref{margin:0 0 18px;font-size:13px;color:var(--mlm-c-muted)}

/* ---------- Popup ---------- */
.mlm-qc-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:flex-start;justify-content:center;padding:4vh 14px;overflow-y:auto}
.mlm-qc-overlay{position:fixed;inset:0;background:rgba(11,45,77,.62)}
.mlm-qc-dialog{position:relative;width:100%;max-width:740px;margin:auto 0;outline:0}
.mlm-qc-dialog .mlm-qc{margin:0;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.mlm-qc-x{position:absolute;top:10px;right:12px;z-index:2;width:36px;height:36px;border:0;border-radius:50%;background:#F1F5F8;color:var(--mlm-c-navy);font-size:24px;line-height:1;cursor:pointer;padding:0}
.mlm-qc-x:hover{background:var(--mlm-c-lightblue)}
html.mlm-qc-lock{overflow:hidden}
.mlm-qc-dialog .mlm-qc-head{padding-right:34px}

/* ---------- Address suggestions, route map and live price panel ---------- */
.mlm-qc.has-maps{max-width:1080px}
.mlm-qc-dialog.is-wide{max-width:1100px}
.mlm-qc-layout{display:block}
.mlm-qc.has-maps .mlm-qc-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;align-items:start}
.mlm-qc.is-done .mlm-qc-layout{display:none}
.mlm-qc-ac{position:relative}
.mlm-qc-sug{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:30;margin:0;padding:4px 0;list-style:none;background:#fff;border:1px solid var(--mlm-c-border);border-radius:8px;box-shadow:0 10px 28px rgba(11,45,77,.18);max-height:260px;overflow-y:auto}
.mlm-qc-sug li{margin:0;padding:10px 12px;font-size:14px;font-weight:500;color:var(--mlm-c-text);cursor:pointer;line-height:1.3}
.mlm-qc-sug li:hover,.mlm-qc-sug li.is-active{background:var(--mlm-c-lightblue);color:var(--mlm-c-navy)}
.mlm-qc-addr{margin-bottom:12px}
.mlm-qc-summary{position:sticky;top:20px;border:1px solid var(--mlm-c-border);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 4px 18px rgba(11,45,77,.08)}
.mlm-qc-sum-title{margin:0;padding:14px 16px;font-size:18px;color:var(--mlm-c-navy);border-bottom:1px solid var(--mlm-c-border)}
.mlm-qc-map{position:relative;height:200px;background:var(--mlm-c-lightblue)}
.mlm-qc-map-hint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;text-align:center;font-size:13px;color:var(--mlm-c-muted)}
.mlm-qc-stats{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--mlm-c-border)}
.mlm-qc-stats div{padding:10px 16px}
.mlm-qc-stats div+div{border-left:1px solid var(--mlm-c-border)}
.mlm-qc-stats small,.mlm-qc-total small{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mlm-c-muted);font-weight:700}
.mlm-qc-stats b{font-size:16px;color:var(--mlm-c-navy)}
.mlm-qc-sumlist{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px 10px;margin:0;padding:14px 16px;font-size:13px}
.mlm-qc-sumlist dt{margin:0;color:var(--mlm-c-muted);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.06em;padding-top:2px}
.mlm-qc-sumlist dd{margin:0;color:var(--mlm-c-text);font-weight:600;overflow-wrap:anywhere}
.mlm-qc-total{padding:14px 16px 16px;border-top:1px solid var(--mlm-c-border);background:var(--mlm-c-lightblue)}
.mlm-qc-total strong{display:block;margin:2px 0 4px;font-size:28px;line-height:1.15;color:var(--mlm-c-navy);transition:opacity .15s}
.mlm-qc-total em{font-style:normal;font-size:12px;color:var(--mlm-c-muted)}
.mlm-qc.is-pricing .mlm-qc-total strong{opacity:.45}
@media (max-width:900px){
	.mlm-qc.has-maps .mlm-qc-layout{grid-template-columns:minmax(0,1fr)}
	.mlm-qc-summary{position:static}
}

@media (max-width:640px){
	.mlm-qc{padding:20px 16px}
	.mlm-qc-title{font-size:23px}
	.mlm-qc-row,.mlm-qc-group .mlm-qc-row,.mlm-qc-checks{grid-template-columns:minmax(0,1fr)}
	.mlm-qc-group .mlm-qc-row{gap:12px}
	.mlm-qc-steps li span{display:none}
	.mlm-qc-steps li{justify-content:center}
	.mlm-qc-nav{flex-direction:column-reverse}
	.mlm-qc-nav .mlm-qc-btn{width:100%}
	.mlm-qc-price{font-size:32px}
}

/* ---------- Small start form (home page) ---------- */
.mlm-qs,.mlm-qs *{box-sizing:border-box}
.mlm-qs [hidden]{display:none!important}
.mlm-qs{max-width:1060px;margin:20px auto;padding:18px 20px;background:#fff;border:1px solid var(--mlm-c-border);border-radius:14px;box-shadow:0 4px 18px rgba(11,45,77,.08);color:var(--mlm-c-text);font-family:inherit}
.mlm-qs-title{margin:0 0 12px;font-size:20px;color:var(--mlm-c-navy)}
.mlm-qs-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.3fr) minmax(0,.8fr) auto;gap:12px;align-items:end}
.mlm-qs-field{display:flex;flex-direction:column;gap:6px;margin:0;font-size:13px;font-weight:700;color:var(--mlm-c-navy)}
.mlm-qs input[type=text],.mlm-qs input[type=date]{width:100%;min-height:46px;padding:9px 12px;border:1px solid var(--mlm-c-border);border-radius:8px;background:#fff;color:var(--mlm-c-text);font:inherit;font-weight:400;font-size:15px;box-shadow:none}
.mlm-qs input:focus{outline:2px solid var(--mlm-c-blue);outline-offset:1px;border-color:var(--mlm-c-blue)}
.mlm-qs .mlm-qc-btn{min-height:46px;white-space:nowrap}
.mlm-qs .mlm-qc-admin-note{margin:12px 0 0}
@media (max-width:860px){.mlm-qs-row{grid-template-columns:minmax(0,1fr)}.mlm-qs .mlm-qc-btn{width:100%}}
