.hapo-consult-form{position:relative;box-sizing:border-box;overflow:hidden;padding:80px 24px 86px;background:radial-gradient(ellipse at 0 0,#effff0 0%,#f6fff7 45%,#fbfffc 100%);color:#111;font-family:Manrope,Arial,sans-serif}
.hapo-consult-form *{box-sizing:border-box}
.hapo-consult-form--full{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.hapo-consult-form--container{width:100%}
.hapo-consult-form__inner{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:72px;align-items:start;max-width:1360px;margin:0 auto}
.hapo-consult-form__copy{padding-top:0}
.hapo-consult-form__eyebrow{display:table;margin:0 0 27px;padding:10px 22px;border-radius:100px;background:#ffde00;color:#171717;font-size:15px;font-weight:800;line-height:1.2}
.hapo-consult-form .hapo-consult-form__copy h2,.hapo-consult-form .hapo-consult-form__copy h3{margin:0 0 16px;color:#111;font-size:clamp(29px,2.1vw,42px);font-weight:800;line-height:1.23;letter-spacing:-.03em}
.hapo-consult-form__copy h2 strong,.hapo-consult-form__copy h3 strong{display:block;color:#02bf52;font-size:1.16em;line-height:1.15}
.hapo-consult-form .hapo-consult-form__description{max-width:580px;margin:0;color:#6a726e;font-size:18px;line-height:1.42}
.hapo-consult-form__card{min-width:0;padding:32px;border:1px solid #d7e0d9;border-radius:13px;background:#fff;box-shadow:0 18px 50px rgba(12,99,53,.035)}
.hapo-consult-form__card form{margin:0}
.hapo-consult-form__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
.hapo-consult-form__card label{display:block;margin:0;color:#272b28;font-size:14px;font-weight:700;line-height:1.35}
.hapo-consult-form__wide{grid-column:1/-1}
.hapo-consult-form__card input:not([type=checkbox]):not([type=hidden]),.hapo-consult-form__card textarea{display:block;width:100%;min-width:0;height:43px;margin:7px 0 0;padding:10px 14px;border:1px solid #d9dedb;border-radius:25px;background:#fff;box-shadow:none;color:#141914;font:500 14px/1.4 Manrope,Arial,sans-serif;transition:border-color .25s ease,box-shadow .25s ease}
.hapo-consult-form__card textarea{height:82px;min-height:82px;resize:vertical;border-radius:11px}
.hapo-consult-form__card input::placeholder,.hapo-consult-form__card textarea::placeholder{color:#b6beb8}
.hapo-consult-form__card input:focus-visible,.hapo-consult-form__card textarea:focus-visible{outline:none;border-color:#09bf5a;box-shadow:0 0 0 3px rgba(0,190,84,.15)}
.hapo-consult-form__card fieldset{margin:18px 0 14px;padding:0;border:0}
.hapo-consult-form__card legend{margin:0 0 8px;padding:0;font-size:14px;font-weight:700}
.hapo-consult-form__choice{display:flex!important;align-items:center;gap:9px;width:fit-content;min-height:28px;font-weight:500!important;cursor:pointer}
.hapo-consult-form__choice input{width:18px;height:18px;margin:0;accent-color:#00bd57;cursor:pointer}
.hapo-consult-form__choice span{font-size:14px}
.hapo-consult-form__note{margin-top:8px!important}
.hapo-consult-form .hapo-consult-form__privacy{margin:15px 0 12px;color:#8c9690;font-size:12px;line-height:1.45}
.hapo-consult-form .hapo-consult-form__submit{display:flex;width:100%;min-height:48px;border-radius:100px;background:#00c655;color:#fff;font-size:16px;font-weight:700}
.hapo-consult-form .hapo-consult-form__submit:hover,.hapo-consult-form .hapo-consult-form__submit:focus-visible{color:#fff}
.hapo-consult-form__message{margin:0 0 18px;padding:12px 14px;border:1px solid #8fe0ab;border-radius:8px;background:#e7f9ec;color:#126537;font-size:14px}
.hapo-consult-form__message--error{border-color:#f1b6b6;background:#fff2f2;color:#a82020}
.hapo-consult-form__trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.hapo-consult-form{padding:68px 22px}.hapo-consult-form__inner{grid-template-columns:1fr;gap:35px}.hapo-consult-form__copy{text-align:center}.hapo-consult-form__eyebrow{margin-right:auto;margin-left:auto}.hapo-consult-form .hapo-consult-form__description{margin-right:auto;margin-left:auto}.hapo-consult-form__card{max-width:720px;width:100%;margin:auto}}
@media(max-width:600px){.hapo-consult-form{padding:58px 16px}.hapo-consult-form__card{padding:20px}.hapo-consult-form__fields{grid-template-columns:1fr;gap:15px}.hapo-consult-form__wide{grid-column:auto}.hapo-consult-form .hapo-consult-form__copy h2,.hapo-consult-form .hapo-consult-form__copy h3{font-size:29px}.hapo-consult-form .hapo-consult-form__description{font-size:16px}}
@media(prefers-reduced-motion:reduce){.hapo-consult-form__card input,.hapo-consult-form__card textarea{transition:none}}

/* Mobile, from the supplied 375px About-page design (2026-10-20): 30px yellow eyebrow, two-line
   uppercase 21.5px heading, 16px labels over 44px inputs, 32px checkbox rows, 73px textarea and a
   full-width yellow submit. The privacy note is kept although the design omits it. */
@media(max-width:600px){
.hapo-consult-form{padding:60px 16px 30px}
.hapo-consult-form__inner{gap:32px}
.hapo-consult-form__eyebrow{margin:0 auto 30px;padding:6px 24px;font-size:14px;line-height:18px}
.hapo-consult-form .hapo-consult-form__copy h2,.hapo-consult-form .hapo-consult-form__copy h3{margin:0 0 8px;font-size:21.5px;line-height:28px;letter-spacing:-.01em;text-transform:uppercase}
.hapo-consult-form__copy h2 strong,.hapo-consult-form__copy h3 strong{font-size:1em;line-height:28px}
.hapo-consult-form .hapo-consult-form__description{font-size:14px;line-height:20px}
.hapo-consult-form__card{padding:12px 16px 10px;border-radius:12px}
.hapo-consult-form__fields{gap:25px}
.hapo-consult-form__card label{font-size:16px;font-weight:500;line-height:1.3}
.hapo-consult-form__card input:not([type=checkbox]):not([type=hidden]),.hapo-consult-form__card textarea{height:44px;margin-top:7px}
.hapo-consult-form__card textarea{height:73px;min-height:73px}
.hapo-consult-form__card fieldset{margin:23px 0 0}
.hapo-consult-form__card legend{margin:0 0 6px;font-size:16px;font-weight:500}
.hapo-consult-form__choice{min-height:32px;gap:13px}
.hapo-consult-form__choice input{width:19px;height:19px}
.hapo-consult-form__choice span{font-size:16px}
.hapo-consult-form__note{margin-top:17px!important}
.hapo-consult-form .hapo-consult-form__submit{min-height:46px;margin-top:25px;background:#fcd419;color:#111;font-weight:600}
.hapo-consult-form .hapo-consult-form__submit:hover,.hapo-consult-form .hapo-consult-form__submit:focus-visible{color:#111}
}
