/* Scoped to the consultation section; loaded after app.css. */
#consultation.consultation-refined{background:#eef6ff;padding:38px 0 24px;color:#09264d}
#consultation .consultation-title{margin-bottom:28px;text-align:center}
#consultation .consultation-title .eyebrow{margin:0 0 4px;color:#579c2b;font-size:14px;font-weight:700}
#consultation .consultation-title h2{font-size:38px;line-height:1.25;margin:0 0 14px;font-weight:800}
#consultation .consultation-title>p:last-child{margin:0;color:#687587;font-size:16px}
#consultation .consultation-grid{display:grid;grid-template-columns:minmax(260px,32%) minmax(0,1fr);gap:18px;align-items:stretch}
#consultation .consultation-copy,#consultation .reservation{margin:0;padding:26px;border-radius:13px;border:1px solid #d7e3ed;box-shadow:0 2px 6px #15385805;min-width:0}
#consultation .consultation-copy{background:#f4fbf4;border-color:#d8ecd7;text-align:center}
#consultation h3{font-size:23px;line-height:1.4;margin:0;font-weight:800}
#consultation svg{width:24px;height:24px;flex-shrink:0}
#consultation .consult-phone-icon{color:#5da42b;margin:12px auto 4px}
#consultation .consult-phone-icon svg{width:38px;height:38px}
#consultation .phone{display:block;font-size:clamp(30px,3vw,44px);line-height:1.2;letter-spacing:-1px;font-weight:800;margin:0;white-space:nowrap;color:#09264d}
#consultation .consult-phone-note{margin:4px 0 15px;font-size:14px;color:#647187}
#consultation .consultation-copy .btn{display:flex;justify-content:center;align-items:center;gap:10px;margin:10px 0 0;min-height:46px;padding:9px 12px;border-radius:6px;font-size:17px;font-weight:700}
#consultation .navy{background:#082e5b;color:white;border:1px solid #082e5b}
#consultation .outline{background:white;color:#589e2a;border:1px solid #589e2a}
#consultation .consult-steps{border-top:1px solid #d8e2e7;margin-top:21px;padding-top:19px;text-align:left}
#consultation .consult-steps h4{font-size:17px;text-align:center;margin:0 0 12px}
#consultation .consult-steps ol{list-style:none;padding:0;margin:0 auto;max-width:235px}
#consultation .consult-steps li{display:flex;align-items:center;gap:17px;position:relative;min-height:40px;font-size:15px}
#consultation .consult-steps li:not(:last-child):after{content:"";position:absolute;width:1px;background:#9bc37e;left:14px;top:30px;height:20px}
#consultation .consult-steps li span{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:50%;background:#61a831;color:white;font-size:13px;z-index:1}
#consultation .reservation{background:white;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 22px;align-content:start}
#consultation .consult-form-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px}
#consultation .consult-form-heading>span{font-size:13px;color:#778397;white-space:nowrap}
#consultation .consult-form-heading b,#consultation .field label span{color:#dc3434}
#consultation .field{min-width:0}
#consultation .field label{display:block;font-size:14px;font-weight:700;margin:0 0 7px;padding:0}
#consultation .field input,#consultation .field select,#consultation .field textarea{width:100%;min-width:0;background:#fff;border:1px solid #d8e2ed;border-radius:6px;padding:10px 13px;font:inherit;font-size:14px;color:#183451;box-sizing:border-box}
#consultation .field input,#consultation .field select{height:42px}
#consultation .field textarea{height:108px;min-height:108px;resize:vertical;display:block}
#consultation ::placeholder{color:#8794a5;opacity:1}
#consultation .wide,#consultation .notice,#consultation .consent,#consultation .submit-row{grid-column:1/-1}
#consultation .consent{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;margin:0;font-size:12px;color:#43546d}
#consultation .consent label{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12px;margin:0}
#consultation .consent input{width:19px;height:19px;margin:0;accent-color:#5aa329}
#consultation .consent .consent-required{font-size:12px;color:inherit}
#consultation .consent>a{margin:0;text-decoration:underline;font-weight:600}
#consultation .submit-row .btn{width:100%;background:#5aa329;color:white;border:0;border-radius:6px;min-height:50px;font-size:16px;font-weight:700}
#consultation :is(input,select,textarea,a,button):focus-visible{outline:3px solid #80b85b;outline-offset:2px}
@media(max-width:900px){#consultation .consultation-grid{grid-template-columns:1fr}#consultation .consultation-copy{max-width:none}#consultation .phone{font-size:40px}#consultation .consultation-copy .btn{max-width:400px;margin:10px auto 0}}
@media(max-width:560px){#consultation.consultation-refined{padding:30px 0}#consultation .consultation-title h2{font-size:30px}#consultation .consultation-title>p:last-child{font-size:14px}#consultation .consultation-copy,#consultation .reservation{padding:22px 18px}#consultation .reservation{grid-template-columns:1fr;gap:16px}#consultation .field{grid-column:1/-1}#consultation h3{font-size:20px}#consultation .consult-form-heading{align-items:flex-start;flex-wrap:wrap}#consultation .field input,#consultation .field select,#consultation .field textarea{font-size:16px}}
