/* Mega Mobiles Toolkit — booking dialog (WPForms inside). */
dialog.mm-book { width: min(560px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); padding: 0; border: 0; border-radius: 28px; background: var(--mm-white); color: var(--mm-ink); box-shadow: 0 30px 80px -20px rgba(0,0,0,.35); overflow: hidden; }
dialog.mm-book::backdrop { background: rgba(29, 29, 31, .42); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
dialog.mm-book[open] { animation: mm-book-in .28s cubic-bezier(.2,.8,.2,1); }
@keyframes mm-book-in { from { opacity: 0; transform: translateY(16px) scale(.98); } }
.mm-book .mm-book__panel { position: relative; max-height: calc(100dvh - 24px); overflow-y: auto; overscroll-behavior: contain; padding: 34px 34px calc(28px + env(safe-area-inset-bottom, 0px)); }
.mm-book .mm-book__close { position: absolute; top: 16px; right: 16px; width: 36px; height: 36px; padding: 9px; border: 0 !important; border-radius: 50% !important; background: var(--mm-mist) !important; color: var(--mm-ink) !important; cursor: pointer; box-shadow: none !important; }
.mm-book .mm-book__close svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.mm-book .mm-book__kicker { font-size: 15px; font-weight: 600; color: var(--mm-navy); }
.mm-book .mm-book__title { margin-top: 6px; padding-right: 40px; font-size: 30px; line-height: 1.1; font-weight: 650; letter-spacing: -0.026em; }
.mm-book .mm-book__sum { margin-top: 14px; padding: 12px 16px; border-radius: 14px; background: #e9ecfa; color: var(--mm-navy); font-size: 16px; font-weight: 600; }
.mm-book .mm-book__form { margin-top: 22px; }
.mm-book .mm-book__alt { margin-top: 18px; font-size: 14px; color: var(--mm-grey); }
.mm-book .mm-book__alt a { color: var(--mm-navy); }
.mm-book .mm-book__none { padding: 18px; border-radius: 14px; background: var(--mm-mist); color: var(--mm-grey); }
body.mm-book-open .sky-whatsapp-widget { display: none !important; }

/* WPForms inside the dialog, in the site's style (WPForms parses its colour variables as rgb(), never hex). */
.mm-book .wpforms-container {
	--wpforms-field-border-radius: 12px; --wpforms-field-border-color: rgb(210, 210, 215); --wpforms-field-background-color: rgb(255, 255, 255);
	--wpforms-field-text-color: rgb(29, 29, 31); --wpforms-label-color: rgb(29, 29, 31); --wpforms-label-sublabel-color: rgb(110, 110, 115);
	--wpforms-button-background-color: rgb(45, 61, 142); --wpforms-button-text-color: rgb(255, 255, 255); --wpforms-button-border-radius: 999px;
	--wpforms-field-size-input-height: 46px; --wpforms-field-size-font-size: 16px; --wpforms-label-size-font-size: 14px;
	margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important;
}
.mm-book .wpforms-container .wpforms-form { padding: 0 !important; }
.mm-book .wpforms-container .wpforms-field { padding: 0 0 16px !important; }
.mm-book .wpforms-container .wpforms-field-label { font-family: var(--mm-font) !important; font-size: 14px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: normal !important; color: var(--mm-ink) !important; }
.mm-book .wpforms-container input:not([type=checkbox]):not([type=radio]):not([type=submit]), .mm-book .wpforms-container select, .mm-book .wpforms-container textarea { font-family: var(--mm-font) !important; font-size: 16px !important; border-radius: 12px !important; border: 1px solid #d2d2d7 !important; box-shadow: none !important; background: #fff !important; color: var(--mm-ink) !important; }
.mm-book .wpforms-container input:focus, .mm-book .wpforms-container select:focus, .mm-book .wpforms-container textarea:focus { border-color: var(--mm-navy) !important; box-shadow: 0 0 0 3px rgba(45, 61, 142, .18) !important; outline: none !important; }
.mm-book .wpforms-container .wpforms-submit-container { padding: 6px 0 0 !important; }
.mm-book .wpforms-container button[type=submit] { width: 100% !important; min-height: 50px !important; padding: 12px 24px !important; border: 0 !important; border-radius: 999px !important; background: var(--mm-navy) !important; color: #fff !important; font-family: var(--mm-font) !important; font-size: 17px !important; font-weight: 500 !important; text-transform: none !important; letter-spacing: normal !important; box-shadow: none !important; height: auto !important; }
.mm-book .wpforms-container button[type=submit]:hover { background: var(--mm-navy-hi) !important; }
.mm-book .wpforms-confirmation-container-full { margin: 0 !important; padding: 20px !important; border: 0 !important; border-radius: 16px !important; background: #e8f5ec !important; color: #1d5a2c !important; }

@media (max-width: 600px) {
	dialog.mm-book { width: 100vw; max-width: 100vw; max-height: 92dvh; margin: auto 0 0; border-radius: 24px 24px 0 0; }
	.mm-book .mm-book__panel { max-height: 92dvh; padding: 28px 20px calc(24px + env(safe-area-inset-bottom, 0px)); }
	.mm-book .mm-book__title { font-size: 26px; }
	dialog.mm-book[open] { animation-name: mm-book-up; }
	@keyframes mm-book-up { from { transform: translateY(40px); opacity: 0; } }
}
