/* HouseHoppers — HOP Move Quote form. Scoped to .hop-enq; follows the old form's layout (three steps, teal progress). */
.hop-enq{--hop-navy:#1d2b5c;--hop-orange:#f5a01a;--hop-teal:#1fb39b;--hop-line:#d9dde3;--hop-ink:#2b2f36;--hop-muted:#6b7280;--hop-bad:#c0392b;
  max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--hop-line);border-radius:4px;padding:0 24px 20px;color:var(--hop-ink);font-size:16px;line-height:1.45;box-sizing:border-box}
.hop-enq *,.hop-enq *::before,.hop-enq *::after{box-sizing:border-box}
/* 1.0.1: the theme (Divi) sets display on sections and numbers on lists — the plugin's own rules win inside the form */
.hop-enq [hidden]{display:none!important}
.hop-enq ol.hop-enq__steps,.hop-enq ol.hop-enq__steps li{list-style:none!important;list-style-type:none!important}
.hop-enq ol.hop-enq__steps{padding:0!important}
.hop-enq ol.hop-enq__steps li{margin:0!important;padding:0 6px!important;line-height:1.3!important}
.hop-enq ol.hop-enq__steps li::marker{content:""!important}
.hop-enq__title{margin:0 -24px 8px;padding:18px 24px;border-bottom:1px solid var(--hop-line);font-size:32px;font-weight:400;color:var(--hop-ink)}
.hop-enq__steps{list-style:none;display:flex;justify-content:center;gap:0;margin:24px auto 28px;padding:0;max-width:600px;counter-reset:none}
.hop-enq__steps li{flex:1 1 0;min-width:0;text-align:center;color:#b4bac3;font-size:15px;position:relative;padding:0 6px}
.hop-enq__steps li span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0 auto 8px;border-radius:50%;background:#c9ced6;color:#fff;font-size:13px;position:relative;z-index:1}
.hop-enq__steps li::before{content:"";position:absolute;top:13px;left:-50%;width:100%;height:2px;background:#c9ced6}
.hop-enq__steps li:first-child::before{display:none}
.hop-enq__steps li.is-on,.hop-enq__steps li.is-done{color:var(--hop-teal)}
.hop-enq__steps li.is-on span,.hop-enq__steps li.is-done span{background:var(--hop-teal)}
.hop-enq__steps li.is-on span{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--hop-teal)}
.hop-enq__steps li.is-on::before,.hop-enq__steps li.is-done::before{background:var(--hop-teal)}
.hop-enq fieldset{border:0;margin:0 0 18px;padding:0;min-width:0}
.hop-enq legend,.hop-enq__q{display:block;font-weight:700;font-size:16px;margin:0 0 8px;padding:0;color:var(--hop-ink)}
.hop-enq__req{color:var(--hop-bad)}
.hop-enq__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hop-enq__f{display:flex;flex-direction:column;margin:0 0 14px;min-width:0}
.hop-enq__addr .hop-enq__f,.hop-enq fieldset .hop-enq__f{flex-direction:column-reverse;justify-content:flex-end}
.hop-enq__addr .hop-enq__f label,.hop-enq fieldset .hop-enq__f label{font-size:13px;color:var(--hop-muted);margin-top:6px;font-weight:400}
.hop-enq input,.hop-enq select{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--hop-line);border-radius:3px;background:#fff;color:var(--hop-ink);font:inherit;font-size:16px}
.hop-enq input:focus,.hop-enq select:focus{outline:2px solid var(--hop-teal);outline-offset:0;border-color:var(--hop-teal)}
.hop-enq .is-bad{border-color:var(--hop-bad);box-shadow:0 0 0 1px var(--hop-bad)}
.hop-enq__page>.hop-enq__f{max-width:480px}
.hop-enq__page>.hop-enq__f:has(input[type=email]){max-width:none}
.hop-enq__nav{display:flex;justify-content:center;gap:14px;margin:24px 0 6px;flex-wrap:wrap}
.hop-enq__btn{appearance:none;border:0;border-radius:999px;min-width:110px;min-height:46px;padding:10px 28px;background:#c4c9d1;color:var(--hop-ink);font:inherit;font-size:16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.hop-enq__btn:hover{filter:brightness(.96)}
.hop-enq__btn:focus-visible{outline:3px solid var(--hop-teal);outline-offset:2px}
.hop-enq__btn--ghost{background:#e5e8ec}
.hop-enq__btn--go{background:var(--hop-orange);color:#fff;font-weight:700;letter-spacing:.02em}
.hop-enq__btn[disabled]{opacity:.6;cursor:wait}
.hop-enq__msg{min-height:1.4em;margin:8px 0 0;text-align:center;color:var(--hop-bad);font-weight:600}
.hop-enq__count{text-align:right;margin:0;font-size:13px;color:var(--hop-navy)}
.hop-enq__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.hop-enq__done{padding:28px 4px 12px;text-align:center}
.hop-enq__done h3{margin:0 0 10px;font-size:26px;color:var(--hop-navy)}
.hop-enq__done p{margin:0 auto 12px;max-width:60ch}
.hop-enq__ref{font-weight:700;color:var(--hop-navy)}
@media (max-width:640px){
  .hop-enq{padding:0 16px 16px}
  .hop-enq__title{margin:0 -16px 8px;padding:14px 16px;font-size:26px}
  .hop-enq__row{grid-template-columns:1fr;gap:0}
  .hop-enq__steps li{font-size:13px}
}
