/* Footer enquiry: open typography and ruled fields within the shared page. */
.enquiry{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:8vw;margin-top:110px;padding:70px 0 82px;border-top:1px solid #c9d9df26;color:#eeede9}
.enquiry-eyebrow{margin:0 0 25px;font:10px/1.6 var(--mono,monospace);letter-spacing:1px;color:#8ea7b4}
.enquiry-intro h2{margin:0 0 25px;font-size:clamp(37px,3.6vw,56px);font-weight:450;letter-spacing:-.055em;line-height:1.08}
.enquiry-intro h2 span{color:#959ca6}
.enquiry-intro>p:not(.enquiry-eyebrow){max-width:320px;margin:0;color:#a4acb5;font-size:14px;line-height:1.85}
.enquiry-form{min-width:0;padding-top:4px}
.enquiry-identity{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.enquiry-field{min-width:0}
.enquiry-field label{display:block;margin:0 0 10px;color:#c4d0d8;font:11px/1.6 var(--mono,monospace)}
.enquiry-field input,.enquiry-field textarea{display:block;box-sizing:border-box;width:100%;margin:0;padding:12px 0;color:#eeede9;background:transparent;border:0;border-bottom:1px solid #8fa5b24f;border-radius:0;font:15px/1.65 var(--sans,Arial,sans-serif);caret-color:#a7dce0;outline:none;transition:border-color .18s}
.enquiry-field textarea{min-height:132px;resize:vertical}
.enquiry-field input:focus,.enquiry-field textarea:focus{border-bottom-color:#a7dce0;box-shadow:0 1px 0 #a7dce0}
.enquiry-field input:focus-visible,.enquiry-field textarea:focus-visible{outline:1px solid #a7dce061;outline-offset:5px}
.enquiry-field input:read-only,.enquiry-field textarea:read-only{color:#9daeb8}
.enquiry-field input:-webkit-autofill{-webkit-text-fill-color:#eeede9;box-shadow:0 0 0 1000px #000000 inset}
.enquiry-message-field{margin-top:30px}
.enquiry-actions{display:flex;align-items:flex-start;gap:25px;margin-top:27px}
.enquiry-submit{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;flex:none;padding:12px 0 13px;border:0;border-bottom:1px solid #a7dce088;border-radius:0;background:transparent;color:#d6e5e8;font:14px/1.5 var(--sans,Arial,sans-serif);cursor:pointer}
.enquiry-submit>span:last-child{color:#a7dce0;font-size:17px}
.enquiry-submit:hover{color:#fff;border-bottom-color:#a7dce0}
.enquiry-submit:focus-visible{outline:1px solid #a7dce0;outline-offset:6px}
.enquiry-submit:disabled{opacity:.55;cursor:wait}
.enquiry-status{min-height:42px;max-width:340px;margin:9px 0 0;font:12px/1.65 var(--sans,Arial,sans-serif);color:#96b8c1}
.enquiry-status[data-state="error"]{color:#d9c7b6}
.enquiry-status[data-state="success"]{color:#b9e0d9}
.enquiry-handling{margin:17px 0 0;max-width:520px;color:#95a1aa;font:11px/1.7 var(--sans,Arial,sans-serif)}
@media(max-width:1100px){.enquiry{gap:5vw}.enquiry-identity{gap:20px}.enquiry-actions{gap:20px}.enquiry-submit{gap:25px}}
@media(max-width:720px){.enquiry{grid-template-columns:1fr;gap:35px;margin-top:70px;padding:45px 0 55px}.enquiry-identity{grid-template-columns:1fr;gap:25px}.enquiry-intro>p:not(.enquiry-eyebrow){max-width:420px}.enquiry-actions{flex-wrap:wrap;gap:8px}.enquiry-status{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.enquiry-field input,.enquiry-field textarea{transition:none}}

.enquiry-email{display:inline-block;margin-top:23px;padding-bottom:8px;border-bottom:1px solid #a7dce04a;font:12px var(--mono);color:#a7dce0}

/* The final scene asks for one conversation, in two small steps. */
.booking-form{color-scheme:dark}
.booking-identity{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.booking-identity input::placeholder{font-size:12px;color:#71848e}
.booking-invitation{list-style:none;counter-reset:invite;margin:28px 0 0;padding:0;max-width:330px}
.booking-invitation li{counter-increment:invite;font:12px/1.7 var(--sans,Arial,sans-serif);color:#9aadb5;margin:0 0 12px;padding-left:28px;position:relative}
.booking-invitation li::before{content:'0' counter(invite);position:absolute;left:0;color:#a7dce0;font:9px/2.3 var(--mono)}
.booking-progress{display:flex;gap:27px;margin-bottom:22px;border-bottom:1px solid #ffffff17;padding-bottom:14px;font:10px var(--mono);color:#687782}
.booking-progress [aria-current]{color:#a7dce0}
.booking-step,.booking-channels{border:0;margin:0;padding:0;min-width:0}
.booking-step[hidden]{display:none!important}
.booking-sr{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.booking-channels{display:flex;gap:10px;margin:19px 0 17px}
.booking-channels legend{font:11px var(--mono);color:#c4d0d8;margin-bottom:12px}
.booking-channels label{position:relative;cursor:pointer}
.booking-channels input{position:absolute;opacity:0;width:1px;height:1px}
.booking-channels span{display:block;font:11px var(--sans,Arial,sans-serif);padding:9px 12px;border:1px solid #ffffff25;border-radius:4px;color:#9cabb2;transition:border-color .15s,color .15s}
.booking-channels input:checked+span{border-color:#a7dce099;color:#d7edf0;background:#a7dce009}
.booking-channels input:focus-visible+span{outline:1px solid #e6a5d4;outline-offset:3px}
.booking-channels input:disabled+span{opacity:.55}
.booking-field-help{font:10px/1.6 var(--sans,Arial,sans-serif);color:#80939d;margin:7px 0 0}
.booking-optional{float:right;color:#71848e;font:10px var(--sans,Arial,sans-serif)}
.booking-form .enquiry-field label{font:11px/1.4 var(--mono);margin-bottom:5px}
.booking-form .enquiry-field :is(input,select,textarea){font:14px/1.5 var(--sans,Arial,sans-serif);padding:8px 0;min-height:37px}
.booking-form .enquiry-field select{display:block;width:100%;color:#eeede9;background:#000;border:0;border-bottom:1px solid #8fa5b24f;border-radius:0}
.booking-form .enquiry-field select:focus-visible{outline:1px solid #a7dce0;outline-offset:4px}
.closing-chapter .booking-form .enquiry-field textarea{min-height:62px;max-height:62px;resize:none}
.closing-chapter .booking-form .enquiry-message-field{margin-top:18px}
.booking-step-actions{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:22px}
.booking-step-actions .enquiry-submit{font-size:13px;padding:9px 0;gap:25px}
.booking-back{font:12px var(--sans,Arial,sans-serif);color:#94a5ae;background:transparent;border:0;padding:10px 0;cursor:pointer}
.booking-back:focus-visible{outline:1px solid #a7dce0;outline-offset:4px}
.booking-contact-summary{font:11px/1.6 var(--mono);color:#a7dce0;margin:0 0 25px;overflow-wrap:anywhere}
.booking-timezone{margin-top:24px}
.booking-confirmation-note{font:13px/1.8 var(--sans,Arial,sans-serif);color:#a5b3b9;max-width:440px;margin:25px 0 0}
.booking-form .enquiry-status{min-height:0;max-width:100%;margin:12px 0 0;font-size:11px;line-height:1.6}
.booking-form .enquiry-status:empty{display:none}
.booking-form .enquiry-handling{font-size:10px;line-height:1.65;margin-top:16px;color:#81939e}
@media(max-height:800px){.booking-progress{margin-bottom:16px;padding-bottom:12px}.booking-invitation{margin-top:22px}.booking-form .enquiry-handling{margin-top:12px}.booking-channels{margin-block:16px 14px}.booking-channels legend{margin-bottom:10px}.booking-step-actions{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.booking-channels span{transition:none}}
