/* /book-a-call/ page and qualifier form. Every class starts with eqf- so nothing leaks into the rest of the site.
   Colours, fonts, radius and container width are the ones the service pages use. */
.eqf-page{--teal-deep:#0c3b37;--teal-700:#0f766e;--teal-600:#0a7f75;--mint:#5eead4;--ink:#0b2e2b;--body:#3a4d4a;--muted:#5b6e6a;--cta-text:#c4e6e0;--white:#fff;--tint-1:#f3faf8;--tint-2:#f0fdfa;--line:#d7e8e4;--bad:#b42318;--radius:12px;--shadow:0 6px 20px rgba(13,148,136,.08);--serif:'DM Serif Display',Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-family:var(--sans);color:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased;box-sizing:border-box}
.eqf-page *,.eqf-page *::before,.eqf-page *::after{box-sizing:border-box}
.eqf-sec{width:100vw;position:relative;left:50%;margin-left:-50vw;overflow-x:clip;padding:clamp(48px,6.5vw,88px) 20px}
.eqf-sec--white{background:var(--white)}
.eqf-sec--tint{background:var(--tint-1)}
.eqf-sec--dark{background:var(--teal-deep)}
.eqf-wrap{max-width:1180px;margin:0 auto}
.eqf-narrow{max-width:760px;margin:0 auto}
.eqf-center{text-align:center}
.eqf-page h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,5.6vw,56px);line-height:1.12;letter-spacing:-.015em;color:var(--teal-deep);margin:0 0 22px}
.eqf-page h2{font-family:var(--serif);font-weight:400;font-size:clamp(26px,3.6vw,40px);line-height:1.18;letter-spacing:-.012em;color:var(--teal-deep);margin:0 0 16px}
.eqf-page h3{font-family:var(--sans);font-size:20px;font-weight:600;line-height:1.3;color:var(--teal-deep);margin:0 0 10px}
.eqf-lead{font-size:clamp(15px,1.75vw,17.5px);line-height:1.7;color:var(--body);margin:0 auto;max-width:760px}
.eqf-sec--dark h2{color:var(--white)}
.eqf-sec--dark .eqf-lead{color:var(--cta-text)}

/* qualifier */
.eqf-card{background:var(--white);border:1px solid var(--line);border-bottom:3px solid var(--teal-600);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(22px,4vw,38px);max-width:760px;margin:0 auto}
.eqf-progress{height:6px;background:var(--tint-2);border-radius:99px;overflow:hidden;margin:0 0 14px}
.eqf-progress span{display:block;height:100%;background:var(--teal-600);border-radius:99px;transition:width .25s ease}
.eqf-step{margin:0 0 22px;font-size:14px;font-weight:600;color:var(--teal-700)}
.eqf-field{margin:0 0 20px}
.eqf-label{display:block;font-size:15px;font-weight:600;color:var(--teal-deep);margin:0 0 7px}
.eqf-page .eqf-field input[type=text],.eqf-page .eqf-field input[type=email],.eqf-page .eqf-field select,.eqf-page .eqf-field textarea{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin:0;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}
.eqf-page .eqf-field textarea{resize:vertical;min-height:120px}
.eqf-page .eqf-field input:focus,.eqf-page .eqf-field select:focus,.eqf-page .eqf-field textarea:focus{outline:none;border-color:var(--teal-600);box-shadow:0 0 0 3px rgba(13,148,136,.18)}
.eqf-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.eqf-opts.one{grid-template-columns:1fr}
.eqf-opt{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--white);font-size:15px;line-height:1.35;color:var(--body);cursor:pointer;transition:border-color .15s ease,background .15s ease}
.eqf-opt:hover{border-color:var(--teal-600)}
.eqf-opt.on{border-color:var(--teal-600);background:var(--tint-2);color:var(--teal-deep)}
.eqf-opt input{flex:none;width:18px;height:18px;margin:0;accent-color:var(--teal-600)}
.eqf-err{min-height:0;margin:6px 0 0;font-size:13.5px;color:var(--bad)}
.eqf-err:empty{display:none}
.eqf-field.bad input[type=text],.eqf-field.bad input[type=email],.eqf-field.bad select,.eqf-field.bad textarea,.eqf-field.bad .eqf-opt{border-color:var(--bad)}
.eqf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.eqf-nav{display:flex;justify-content:space-between;gap:12px;margin-top:8px}
.eqf-nav .eqf-next{margin-left:auto}
.eqf-page .eqf-btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:15.5px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;color:var(--white);background:var(--teal-deep);border:1px solid var(--teal-deep);border-radius:6px;padding:15px 30px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.eqf-page .eqf-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(13,148,136,.18);color:var(--white)}
.eqf-page .eqf-btn[hidden]{display:none}
.eqf-page .eqf-back{background:var(--white);color:var(--teal-600);border-color:var(--teal-600)}
.eqf-page .eqf-back:hover{color:var(--teal-600)}
.eqf-page .eqf-btn--light{background:var(--white);color:var(--teal-deep);border-color:var(--white)}
.eqf-page .eqf-btn--light:hover{color:var(--teal-deep)}
.eqf-noscript{margin:0;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:var(--tint-1);font-size:15px}
.eqf-result{text-align:center;padding:clamp(6px,2vw,18px) 0}
.eqf-result h3{font-family:var(--serif);font-weight:400;font-size:clamp(24px,3.4vw,32px);line-height:1.2;margin:14px 0 12px}
.eqf-result p{max-width:560px;margin:0 auto 24px;font-size:16px;line-height:1.7}
.eqf-pill{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.02em;padding:5px 14px;border-radius:99px;background:var(--tint-2);border:1px solid var(--teal-600);color:var(--teal-700)}
.eqf-qualified .eqf-pill{background:var(--teal-600);color:var(--white)}
.eqf-pay[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:auto}
.eqf-phone{margin:22px auto 0;text-align:center;font-size:15.5px}
.eqf-phone a{color:var(--teal-600);font-weight:600;text-decoration:none}
.eqf-phone a:hover{text-decoration:underline}

/* what to expect */
.eqf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(18px,2.2vw,26px);margin-top:clamp(28px,3.5vw,44px)}
.eqf-box{background:var(--white);border:1px solid var(--line);border-bottom:3px solid var(--teal-600);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 28px}
.eqf-box p{margin:0;font-size:15px;line-height:1.65}
.eqf-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--tint-2);border:1px solid var(--teal-600);color:var(--teal-700);font-weight:600;margin:0 0 14px}

/* faq */
.eqf-faq{max-width:820px;margin:clamp(26px,3vw,38px) auto 0}
.eqf-faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 14px;overflow:hidden}
.eqf-faq summary{cursor:pointer;list-style:none;padding:18px 22px;font-size:17px;font-weight:600;color:var(--teal-deep);position:relative;padding-right:52px}
.eqf-faq summary::-webkit-details-marker{display:none}
.eqf-faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:400;color:var(--teal-600)}
.eqf-faq details[open] summary::after{content:"\2212"}
.eqf-faq details p{margin:0;padding:0 22px 20px;font-size:15.5px;line-height:1.7}

@media (max-width:600px){
  .eqf-opts{grid-template-columns:1fr}
  .eqf-nav .eqf-btn{padding:14px 22px}
}
@media (prefers-reduced-motion:reduce){
  .eqf-btn,.eqf-progress span{transition:none}
  .eqf-btn:hover{transform:none}
}
