/* MIN-56 owner quote conversion overlay — fail-closed transport, no visitor cannot-send copy. */
.skip-link.screen-reader-text{position:fixed;top:8px;left:8px;z-index:9999;width:auto;height:auto;margin:0;padding:12px 18px;overflow:visible;clip:auto;clip-path:none;transform:translateY(-180%);background:var(--fh-white);color:var(--fh-navy);font-weight:600}
.skip-link.screen-reader-text:focus{transform:none}
.fh-quote-hero{border-bottom:4px solid var(--fh-green)}
.fh-quote-hero__actions{margin:28px 0 0}
.fh-quote-hero__actions .wp-element-button{cursor:pointer}
.fh-quote fieldset{min-width:0;margin:0;padding:0;border:0}
.fh-quote .fh-field>span{min-height:18px}
.fh-quote .fh-field span strong,.fh-consent strong{color:var(--fh-green)}
.fh-quote .fh-field small{display:block;margin-top:6px;color:var(--fh-muted);font-size:12px;line-height:18px}
.fh-field-error{display:block;min-height:16px;margin-top:6px;color:#9b271f!important;font:600 12px/18px Geist,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important}
.fh-field [aria-invalid="true"],.fh-consent input[aria-invalid="true"]{border-color:#9b271f;box-shadow:0 0 0 1px #9b271f}
.fh-consent-wrap{gap:7px}.fh-consent{min-height:44px;padding-block:8px}
.fh-consent a,.fh-quote-privacy-link{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.fh-quote-privacy-link{display:inline-flex;align-items:center;min-height:44px}
.fh-form-errors{margin-bottom:24px;padding:22px 24px;border-left:4px solid #9b271f;background:var(--fh-white)}
.fh-form-errors h2{margin:0 0 12px;font-size:22px;line-height:28px}
.fh-form-errors ul{margin:0;padding-left:22px}.fh-form-errors a{text-decoration:underline;text-underline-offset:3px}
.fh-quote__actions{display:flex;justify-content:flex-end;gap:16px;margin-top:28px}
.fh-quote__actions .wp-element-button{min-width:min(100%,280px);cursor:pointer}
.fh-quote-desk-note{margin:24px 0 0;max-width:640px;color:var(--fh-muted);font-size:14px;line-height:22px}
.fh-quote-step h2{margin:0 0 12px;font-size:32px;line-height:38px}
.fh-quote-step .fh-eyebrow{margin:0 0 10px}
.fh-quote-step--details>p{margin:0 0 28px;max-width:640px;font-size:16px;line-height:25px}
.fh-quote-overlay[hidden]{display:none!important}
.fh-quote-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;box-sizing:border-box}
.fh-quote-overlay__backdrop{position:absolute;inset:0;background:rgba(7,30,46,.55)}
.fh-quote-overlay__sheet{position:relative;z-index:1;width:min(760px,100%);max-height:min(88vh,860px);overflow:auto;padding:56px 28px 32px;background:var(--fh-white,#fff);color:var(--fh-navy);box-shadow:0 24px 64px rgba(0,0,0,.28);border:1px solid var(--fh-line,#d7ddd8)}
.fh-quote-overlay__close{position:absolute;top:8px;right:8px;z-index:2;width:44px;height:44px;border:0;background:transparent;cursor:pointer;font-size:32px;line-height:1;color:var(--fh-navy)}
.fh-quote-overlay__close:focus-visible{outline:2px solid var(--fh-green);outline-offset:2px}
.fh-quote--conversion{display:grid;gap:8px;padding-top:12px}
.fh-quote--conversion .fh-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px}
.fh-quote--conversion .fh-field--wide,.fh-quote--conversion .fh-consent-wrap{grid-column:1/-1}
.fh-quote--conversion input,.fh-quote--conversion select,.fh-quote--conversion textarea{width:100%;min-height:44px;box-sizing:border-box}
.fh-quote--conversion textarea{min-height:120px;padding-top:10px}
body.fh-quote-overlay-open{overflow:hidden}
[hidden]{display:none!important}
@media(max-width:680px){
  .fh-quote-overlay{padding:0;place-items:stretch}
  .fh-quote-overlay__sheet{width:100%;max-height:100%;min-height:100%;padding:56px 16px 28px;border:0;border-radius:0}
  .fh-quote-step h2{font-size:26px;line-height:32px}
  .fh-quote--conversion .fh-field-grid{grid-template-columns:1fr;gap:18px}
  .fh-quote--conversion .fh-field--wide,.fh-quote--conversion .fh-consent-wrap{grid-column:auto}
  .fh-quote__actions{display:block}
  .fh-quote__actions .wp-element-button{width:100%;min-height:52px}
  .fh-form-errors{padding:18px 16px}
}
@media(max-width:390px){
  .fh-quote-overlay{padding:0}
  .fh-quote-overlay__sheet{padding:56px 12px 24px}
}
