@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
.booking-page{background:#fffaf1;color:#17324d}
.booking-head{max-width:1360px;height:auto;min-height:100px;margin:auto;padding:24px 5%;gap:20px}
.booking-head .brand{color:#17324d;font-size:23px;letter-spacing:-1px}
.booking-head .brand small{color:#17324d;font-size:10px;letter-spacing:2px}
.booking-head img.brand-mark{width:56px;height:56px;letter-spacing:normal;background:transparent;flex-shrink:0}
.booking-head>small{font-size:13px}
.booking-layout{width:90%;max-width:1220px;margin:40px auto 80px;padding:0;grid-template-columns:minmax(0,1fr) minmax(0,490px);gap:6vw}
.booking-layout>section:first-child{color:#17324d}
.booking-layout h1{font-size:clamp(36px,4.4vw,64px);font-weight:800;line-height:1.08;letter-spacing:-.045em}
.booking-layout .eyebrow{color:#b54135;font-size:11px;letter-spacing:1.6px;margin-bottom:20px}
.booking-layout .lead{color:#52636b;font-size:18px;line-height:1.7;margin:24px 0}
.promise{gap:10px}.promise span{font-size:12px;border-color:#dedbd3;border-radius:24px;padding:10px 13px}
.booking-card{border:1px solid #e5e0d6;border-radius:24px;padding:30px;box-shadow:0 16px 50px #17324d08}
.booking-card h2{font-size:28px}.form-grid{gap:16px}.form-grid label{font-size:13px;font-weight:600}
.form-grid input{font:inherit;min-width:0;border-color:#c5cdd0;padding:12px;border-radius:10px}
.form-grid input:focus-visible,.booking-card button:focus-visible{outline:3px solid #b54135;outline-offset:3px}
.form-grid .check{font-size:12px;line-height:1.6}.form-grid a{color:#17324d;text-underline-offset:3px}
.booking-card button{border-radius:28px;background:#b54135;font:700 14px 'DM Sans',sans-serif;cursor:pointer;padding:16px}
.booking-card button:hover{background:#8f3028}.booking-disclaimer{font-size:12px;color:#52636b;line-height:1.6}
.errorlist{font-size:12px}.quote{font-size:14px}
@media(max-width:850px){.booking-layout{grid-template-columns:1fr;max-width:600px;gap:30px;margin-top:24px}.booking-head>small{display:none}.booking-head .brand{font-size:21px}.booking-layout h1{font-size:42px}}
@media(max-width:400px){.form-grid{grid-template-columns:1fr}.booking-card{padding:22px}.booking-layout h1{font-size:36px}}
