:root{--green:#007f69;--green-dark:#075b50;--coral:#ff5f69;--ink:#17352f;--cream:#fbf8f3;--line:#dce8e4}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);font-family:Montserrat,Arial,sans-serif;background:#fff}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-shell{width:min(920px,calc(100% - 32px));margin:64px auto;padding:clamp(24px,5vw,56px);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 22px 60px rgba(7,91,80,.10)}
.form-shell>h2{margin-top:0;font-size:clamp(1.8rem,4vw,2.7rem)}
.form-shell>p{color:#536d67;line-height:1.7}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:28px 0}
.form-grid label{display:flex;flex-direction:column;gap:9px;color:var(--ink);font-weight:700;font-size:.91rem}
.form-grid .wide,.nurse-fields{grid-column:1/-1}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #b9cdc7;border-radius:12px;background:#fff;padding:13px 14px;color:#193b34;font:500 1rem Montserrat,Arial,sans-serif;transition:border-color .2s,box-shadow .2s}
.form-grid textarea{resize:vertical;line-height:1.55}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 4px rgba(0,127,105,.12)}
.form-grid .check{display:flex;flex-direction:row;align-items:flex-start;font-weight:500;line-height:1.55}
.form-grid .check input{width:20px;height:20px;flex:0 0 auto;margin-top:2px;accent-color:var(--green)}
.form-grid .upload{padding:18px;border:1px dashed #94b8ae;border-radius:14px;background:#f6fbf9}
.enquiry-form button,.form-actions button{border:0;border-radius:999px;padding:14px 24px;background:var(--coral);color:#fff;font:800 .95rem Montserrat,Arial,sans-serif;cursor:pointer}
.form-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--line);padding-top:24px}
.form-actions .back{margin-right:auto;background:#eaf3f0;color:var(--green-dark)}
.form-progress{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px;color:var(--green-dark);font-weight:800}
.form-progress>div{display:flex;gap:7px;flex:1;max-width:390px}
.form-progress i{display:block;height:7px;flex:1;border-radius:20px;background:#dce9e5}
.form-progress i.active{background:var(--coral)}
fieldset{border:0;padding:0;margin:0}
fieldset legend{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:800;color:var(--green-dark)}
fieldset>p{color:#60766f;line-height:1.6}
.form-success,.form-error{padding:16px 18px;border-radius:12px;margin-bottom:24px;font-weight:700;line-height:1.5}
.form-success{background:#e7f8f1;color:#08664f}.form-error{background:#fff0f0;color:#9e3038}
.declaration-heading{margin-top:8px;padding:18px 20px;border-left:5px solid var(--coral);border-radius:10px;background:#fff5f4}.declaration-heading h3{margin:0 0 6px;color:var(--green-dark)}.declaration-heading p{margin:0;color:#60766f}
.autosave-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px;padding:12px 15px;border-radius:12px;background:#edf8f4;color:var(--green-dark);font-size:.82rem;font-weight:700}.autosave-bar button{border:0;background:transparent;color:var(--green-dark);font:700 .78rem Montserrat,Arial,sans-serif;text-decoration:underline;cursor:pointer;white-space:nowrap}
.plain-callout a{color:inherit;font-weight:800}
@media(max-width:760px){.form-grid{grid-template-columns:1fr}.form-grid .wide,.nurse-fields{grid-column:auto}.form-shell{margin:32px auto}.form-progress,.autosave-bar{align-items:flex-start;flex-direction:column}.form-progress>div{width:100%}}
