.booking-section{align-items:start;gap:6vw;background:#e1e5de}.booking-section>div{padding-top:32px}.booking-section form{background:#f4f5f0;padding:clamp(24px,3vw,44px);border:1px solid #cbd2c8;border-radius:18px;box-shadow:0 16px 50px #1a29150a;gap:22px}.form-heading{border-bottom:1px solid #d6dcd3;padding-bottom:24px;margin-bottom:2px}.form-heading .eyebrow{font-size:9px;color:#61715f}.form-heading h3{font-size:29px;letter-spacing:-.045em;font-weight:500;margin:12px 0 8px}.form-heading p{font-size:13px;color:#657060;margin:0;line-height:1.6}.booking-section label{font-size:12px;font-weight:500;gap:10px}.booking-section input,.booking-section select{background:#fff;border-color:#cbd2c8;border-radius:9px;min-height:54px;padding:15px 16px;font-size:14px;font-weight:400;transition:border-color .15s,box-shadow .15s}.booking-section input::placeholder{color:#7b8576;opacity:1}.booking-section input:hover,.booking-section select:hover{border-color:#87987f}.booking-section input:focus-visible,.booking-section select:focus-visible{outline:none;border-color:#456344;box-shadow:0 0 0 3px #45634420}.select-wrap{display:block;position:relative;min-width:0}.select-wrap select{appearance:none;-webkit-appearance:none;padding-right:52px;cursor:pointer}.select-wrap:after{content:'';position:absolute;right:21px;top:21px;width:8px;height:8px;border-right:1.5px solid #476044;border-bottom:1.5px solid #476044;transform:rotate(45deg);pointer-events:none}.booking-section .primary-action{border-radius:9px;padding:18px 20px;background:#263d2e;align-items:center;font-size:14px;min-height:58px}.primary-action:hover{background:#36533e}.primary-action span{font-size:22px}.booking-section small{line-height:1.8}.booking-section #booking-status:not(:empty){padding:16px;border-radius:9px;background:#e3ebdf;color:#263d2e}.booking-section input[type=date],.booking-section input[type=time]{min-width:0;max-width:100%;width:100%}.live-map{overflow:hidden;border-radius:16px;border:1px solid #cbd2c8;background:#d7ded5;min-width:0}.live-map iframe{display:block;width:100%;height:400px;border:0}.map-toolbar{padding:18px 20px;background:#f4f5f0;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.map-toolbar span{font-size:9px;letter-spacing:.1em;color:#657060}.map-toolbar a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.location-section{align-items:center}.end-footer{display:block;background:#18201c;color:#e8eae6;padding:65px 6vw 35px}.footer-main{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:start;padding-bottom:55px}.footer-brand{font-size:clamp(28px,3.5vw,52px);letter-spacing:.12em;line-height:1}.footer-brand span{display:block;font-size:9px;letter-spacing:.24em;color:#afc3ae;margin-top:15px}.footer-main p{font-size:26px;line-height:1.3;margin:0;letter-spacing:-.03em}.footer-main nav{display:grid;gap:17px;font-size:12px}.footer-main nav a:hover{color:#afc3ae}.footer-meta{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid #ffffff25;padding-top:25px;font-size:11px;line-height:1.8}.end-footer .footer-meta span{font-size:10px;color:#aeb6b3}.footer-meta a{color:#c8d1c5}.faq-section{padding-bottom:80px}
@media(max-width:1000px){.booking-section{grid-template-columns:1fr;gap:24px}.booking-section>div{padding-top:0}.booking-section form{max-width:680px;width:100%}.footer-main{grid-template-columns:1fr 1fr}.footer-main nav{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:24px}}
@media(max-width:700px){.booking-section form{padding:24px 18px;border-radius:14px}.booking-section{padding-left:16px;padding-right:16px}.booking-section>div{padding:0 6px}.form-heading h3{font-size:27px}.live-map iframe{height:340px}.location-section{gap:22px}.map-toolbar{padding:16px}.footer-main{grid-template-columns:1fr;gap:30px;padding-bottom:35px}.footer-main nav{display:grid;grid-template-columns:1fr 1fr;gap:20px}.footer-main p{font-size:25px}.end-footer{padding:45px 22px 100px}.footer-meta{align-items:start;flex-direction:column;gap:15px}.end-footer .footer-meta span{order:0}.mobile-booking.is-visible{bottom:calc(12px + env(safe-area-inset-bottom))}.form-pair{gap:22px}}
@media(prefers-reduced-motion:reduce){.booking-section input,.booking-section select{transition:none}}
