/* Contact layout; fields and primary button reuse the existing booking controls. */
.mc-dialog { width:min(600px,calc(100vw - 48px)); max-height:calc(100dvh - 48px); }
.mc-content { padding:48px 48px 28px; }
.mc-dialog .mb-close { position:absolute; }
.mc-eyebrow { font:normal 11px/1.4 var(--mb-sans); letter-spacing:.08em; color:#69645c; }
.mc-dialog h2 { font:normal 36px/1.12 var(--mb-serif); letter-spacing:-.035em; margin:12px 0 28px; }
.mc-form { border-top:0; margin-top:0; padding-top:0; }
.mc-form label { font-weight:normal; }
.mc-form label span { font-size:11px; margin-left:4px; }
.mc-name-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.mc-form input,.mc-form textarea { appearance:none; box-shadow:none; max-width:100%; }
.mc-form textarea { display:block; width:100%; margin-top:6px; padding:10px; background:var(--mb-paper); border:1px solid var(--mb-border); border-radius:0; font:normal 16px/1.4 var(--mb-sans); letter-spacing:-.03em; color:var(--mb-ink); height:124px; min-height:124px; resize:none; overflow:auto; }
.mc-form textarea::placeholder { color:#68635c; opacity:1; font:normal 13px/1.5 var(--mb-sans); letter-spacing:-.02em; }
.mc-form .mc-submit { display:flex; width:auto; min-width:110px; margin:24px auto 0; padding:0 clamp(14px,.9523vw,18px); line-height:clamp(36px,2.5520833vw,46px); min-height:38px; }
.mb-dialog.mc-dialog .mc-submit:focus-visible { background:var(--mb-paper); color:var(--mb-ink); }
.mc-dialog input:focus,.mc-dialog textarea:focus { background:#f1eee9; outline:none; box-shadow:none; }
.mc-dialog button:focus,.mc-dialog a:focus,.mc-dialog :focus-visible,.mc-admin :focus-visible { outline:none; box-shadow:none; }
.mc-dialog .mb-close:focus-visible,.mc-admin button:focus-visible { background:#f1eee9; color:#111; }
.mc-dialog .mc-status { min-height:20px; margin:18px 0 0; color:#6a4736; font:13px/1.5 var(--mb-sans); }
.mc-dialog .mc-preview { margin:-12px 0 22px; color:#666; font:11px/1.5 var(--mb-sans); }
.mc-result { padding:12px 0 20px; font:18px/1.6 var(--mb-sans); }
.mc-admin .mc-table { width:100%; border-collapse:collapse; margin-top:24px; }
.mc-admin .mc-table td,.mc-admin .mc-table th { padding:14px; border-bottom:1px solid #ddd; text-align:left; vertical-align:top; font-size:13px; }
.mc-admin summary { cursor:pointer; }.mc-admin summary:focus-visible { background:#eee; }
.mc-admin .mc-message { white-space:pre-wrap; overflow-wrap:anywhere; max-width:650px; }
.mb-admin.mc-admin input:focus,.mb-admin.mc-admin button:focus-visible,.mb-admin.mc-admin a:focus-visible { outline:none; box-shadow:none; }
.mb-admin.mc-admin input:not([type=checkbox]):focus { border-color:#d9ded3; background:#f1eee9; }
.mb-admin.mc-admin .mba-toggle input:focus-visible+.mba-switch { outline:none; box-shadow:none; background:#9da997; }
.mb-admin.mc-admin .mba-toggle input:checked:focus-visible+.mba-switch { background:#243f2a; }
.mb-admin.mc-admin a:focus-visible { background:#e6e8e0; }
@media(max-width:600px) {
 .mc-dialog { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); }
 .mc-content { padding:48px 22px 22px; }
 .mc-dialog h2 { font-size:32px; margin-bottom:24px; }
 .mc-name-row { gap:12px; }
 .mc-form label span { display:block; margin:0; }
 .mc-form label { margin-bottom:14px; }
 .mc-form .mc-submit { width:auto; min-width:145px; min-height:44px; margin-top:22px; }
 .mc-admin .mc-table,.mc-admin .mc-table tbody { display:block; width:100%; }
 .mc-admin .mc-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .mc-admin .mc-table tr { display:block; border:1px solid #ddd; padding:10px; margin-bottom:14px; background:#fff; }
 .mc-admin .mc-table td { display:grid; grid-template-columns:78px minmax(0,1fr); gap:10px; padding:10px 0; border:0; overflow-wrap:anywhere; }
 .mc-admin .mc-table td::before { content:attr(data-label); font-weight:600; }
 .mc-admin .mc-table td[colspan] { display:block; }
 .mc-admin .mc-table td[colspan]::before { display:none; }
}
