.booking-status:not(:empty){padding:16px;border:1px solid currentColor;border-radius:6px;font-size:16px;line-height:1.5;color:#143c2a;background:#edf8ef}.booking-status[data-state="error"]{color:#822717;background:#fff1ea}.demo-form button:disabled{cursor:default;opacity:.8}
/* Contact modal: scoped layout so site-wide glass styles do not affect the form. */
#contact-dialog{width:min(680px,calc(100vw - 32px));max-width:680px;max-height:calc(100dvh - 32px);margin:auto;padding:28px 32px;border:1px solid #d4e2d8;border-radius:22px;background:#f7faf7;color:#193b2b;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;box-shadow:0 24px 80px #00190d40}
#contact-dialog .close{position:sticky;top:0;float:right;z-index:5;display:grid;place-items:center;width:40px;height:40px;min-width:40px;min-height:40px;margin:0 0 -40px 12px;padding:0;border:1px solid #d5e2d9;border-radius:50%;background:#fff;color:#234b36;font-size:26px;line-height:1;box-shadow:0 3px 12px #163e2510}
#contact-dialog>.eyebrow{font-size:12px!important;line-height:1.4;margin:0 50px 10px 0}
#contact-dialog h2{font-size:32px;line-height:1.14;letter-spacing:-1px;margin:0 44px 12px 0}
#contact-dialog h2 br{display:none}#contact-dialog h2 br:after{content:' '}
#contact-dialog>p:not(.eyebrow){font-size:15px;line-height:1.5;margin:0 0 22px;max-width:520px}
#contact-dialog .demo-form{display:grid;gap:16px;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;min-width:0}
#contact-dialog .form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
#contact-dialog .demo-form label{min-width:0;gap:6px;font-size:11px;letter-spacing:.035em;line-height:1.5;color:#345844}
#contact-dialog .demo-form input,#contact-dialog .demo-form select,#contact-dialog .demo-form textarea{min-width:0;width:100%;padding:11px 13px!important;border-radius:10px!important;border:1px solid #c9dbce!important;background:#fff!important;font-size:16px!important;line-height:1.4;box-shadow:none;height:auto}
#contact-dialog .demo-form input,#contact-dialog .demo-form select{min-height:46px}#contact-dialog .demo-form textarea{height:96px;min-height:80px;resize:vertical}
#contact-dialog .demo-form button[type=submit]{width:100%;min-height:48px;padding:13px 20px!important;border-radius:12px;background:#00865b;color:white;font-size:15px}
#contact-dialog .demo-form small{font-size:11px;line-height:1.5}#contact-dialog .booking-status:empty{display:none}
@media(max-width:560px){#contact-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:22px 18px;border-radius:18px;scrollbar-gutter:auto}#contact-dialog h2{font-size:27px}#contact-dialog .form-row{grid-template-columns:1fr;gap:14px}#contact-dialog .demo-form{gap:14px}#contact-dialog>p:not(.eyebrow){font-size:14px;margin-bottom:18px}}
