.contact-dialog{width:min(560px,calc(100% - 32px));max-width:none;max-height:min(90vh,820px);padding:0;border:1px solid #dce8e1;border-radius:16px;background:#fbfcf8;color:#143743;box-shadow:0 28px 90px #041c2780}
.contact-dialog::backdrop{background:#061f2bc2;backdrop-filter:blur(4px)}
.contact-dialog-head{display:flex;justify-content:space-between;gap:20px;padding:26px 30px 18px;border-bottom:1px solid #e4ece6}
.contact-dialog-eyebrow{margin:0 0 7px;color:#168d78;font:800 10px Manrope,sans-serif;letter-spacing:.15em}
.contact-dialog-head h2{margin:0 0 7px;font-size:26px;letter-spacing:-.045em}
.contact-dialog-head>div>p:last-child{margin:0;color:#6b817e;font-size:13px;line-height:1.6}
.contact-dialog-close{align-self:flex-start;display:grid;place-items:center;flex:none;width:35px;height:35px;border:1px solid #dce8e1;border-radius:50%;background:white;color:#31545a;font-size:24px;line-height:1;cursor:pointer}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:15px 13px;padding:22px 30px 28px}
.contact-form>label{display:flex;flex-direction:column;gap:7px;color:#35565a;font-size:11px;font-weight:700}
.contact-form>label:nth-of-type(5),.contact-form>label:nth-of-type(6),.contact-form>.contact-consent,.contact-form-status,.contact-submit{grid-column:1/-1}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;min-height:43px;padding:10px 12px;border:1px solid #cfddd6;border-radius:7px;background:#fff;color:#173f46;font:400 13px 'DM Sans',sans-serif;outline:none}
.contact-form textarea{min-height:90px;resize:vertical}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#199a82;box-shadow:0 0 0 3px #1a9d821c}
.contact-form .contact-consent{display:flex;flex-direction:row;align-items:flex-start;gap:9px;color:#6b817e;font-size:11px;line-height:1.5}
.contact-consent input{accent-color:#138a75;margin:2px 0 0;flex:none}
.contact-form .contact-honeypot{position:absolute;inset:auto auto auto -10000px;width:1px;height:1px;overflow:hidden}
.contact-form-status{min-height:18px;margin:0;color:#117e6d;font-size:12px;line-height:1.5}
.contact-submit{width:100%;cursor:pointer}
.contact-submit:disabled{cursor:wait;opacity:.7}
.contact-dialog[dir=rtl] .contact-dialog-head,.contact-dialog[dir=rtl] .contact-form{text-align:right}
.demo-booking{background:#fbf7e8;scroll-margin-top:90px}
.demo-booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(34px,8vw,110px)}
.demo-booking-copy{max-width:430px;padding-top:12px}
.demo-booking-copy h2{font-size:clamp(34px,4vw,52px);line-height:1.12;margin-bottom:18px}
.demo-booking-copy>p:not(.eyebrow){color:#627779;font-size:15px;line-height:1.75}
.demo-booking-copy .demo-booking-note{margin-top:26px;font-size:12px!important}
.demo-form{padding:28px;border:1px solid #e8e1cd;border-radius:12px;background:#fff;box-shadow:0 20px 48px #59471a12}
.demo-form .demo-message,.demo-form .contact-consent,.demo-form .contact-form-status,.demo-form .contact-submit{grid-column:1/-1}
.demo-form .contact-submit{justify-self:start;min-width:210px}
.demo-form[dir=rtl]{text-align:right}
.demo-form[dir=rtl] .contact-consent{flex-direction:row-reverse}
.demo-form .contact-form-status{margin:0}
.demo-form .contact-form-status:empty{display:none}
@media(max-width:830px){.demo-booking-grid{grid-template-columns:1fr;gap:26px}.demo-booking-copy{max-width:650px}.demo-form{padding:24px}}
@media(max-width:560px){.contact-dialog-head{padding:22px 21px 16px}.contact-form{grid-template-columns:1fr;padding:19px 21px 23px;gap:13px}.contact-form>label{grid-column:1/-1}.contact-dialog-head h2{font-size:23px}}
