.contact-page{max-width:940px}
.contact-page h1{max-width:20ch}
.contact-page>p{max-width:70ch}
.contact-route-picker,.route-fields{border:0;padding:0;margin:30px 0}
.contact-route-picker>legend{font-weight:700;font-size:20px;margin-bottom:20px}
.contact-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-route{display:flex;gap:14px;border:1px solid var(--line);padding:20px;cursor:pointer;align-items:flex-start}
.contact-route input{margin-top:5px;flex:none;accent-color:#276578;width:18px;height:18px}
.contact-route strong,.contact-route-description{display:block}
.contact-route strong{font-size:18px;line-height:1.4}
.contact-route-description{font-size:14px;line-height:1.6;color:var(--muted);margin-top:7px}
.contact-route:hover,.contact-route.is-selected{border-color:#276578;background:var(--pale)}
.contact-route:focus-within{outline:3px solid #276578;outline-offset:3px}
.contact-context{max-width:72ch;background:var(--pale);padding:8px 18px;margin:24px 0}
.contact-selected-route{font-weight:700;margin-bottom:6px}
.contact-field{margin:22px 0}
.contact-field>label,.contact-page label[for="enquiry-message"]{display:block;font-weight:700;font-size:16px;margin-bottom:8px}
.contact-field input:not([type="checkbox"]),.contact-field textarea,#enquiry-message{display:block;width:100%;max-width:100%;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1px solid #9cabb3;padding:12px}
.contact-field textarea,#enquiry-message{resize:vertical;min-height:110px}
.contact-field input:focus-visible,.contact-field textarea:focus-visible,#enquiry-message:focus-visible{outline:3px solid #276578;outline-offset:3px}
.contact-consent{display:flex!important;align-items:flex-start;gap:12px;font-weight:400!important}
.contact-consent input{flex:none;width:19px;height:19px;margin-top:4px;accent-color:#276578}
.contact-page .button{cursor:pointer;font:inherit;font-size:15px}
.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px}
.contact-actions button:not(.button){border:1px solid var(--line);background:#fff;padding:13px 20px;cursor:pointer}
#enquiry-review,.contact-next{border-top:1px solid var(--line);margin-top:40px;padding-top:12px}
#enquiry-message{font-size:15px;line-height:1.6}
#enquiry-status{min-height:1.6em}
.contact-page [hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:600px){.contact-routes{grid-template-columns:1fr}.contact-route{padding:18px}.contact-page h1{font-size:38px}.contact-page{padding-inline:20px}.contact-actions{align-items:stretch}.contact-actions>*{text-align:center}}
