/* Extracted module from mds.css (staged refactor) */

/* Fluent Forms skin on Contact / Support pages */
body.page-id-391 .fluentform,
body.page-id-394 .fluentform {
	max-width: 860px;
	margin: 18px auto 0;
	padding: 14px 16px;
	background: rgba(16, 10, 26, 0.34);
	border: 1px solid rgba(125, 255, 191, 0.22);
	border-radius: 14px;
	box-shadow: 0 8px 26px rgba(0, 0, 0, 0.18);
	backdrop-filter: blur(6px);
}

body.page-id-391 .fluentform .ff-el-group,
body.page-id-391 .fluentform .ff-t-cell,
body.page-id-394 .fluentform .ff-el-group,
body.page-id-394 .fluentform .ff-t-cell {
	width: 100% !important;
	max-width: 100% !important;
}

body.page-id-391 .fluentform .ff-el-input--label label,
body.page-id-391 .fluentform .ff-el-form-check label,
body.page-id-391 .fluentform .ff-el-input--label,
body.page-id-394 .fluentform .ff-el-input--label label,
body.page-id-394 .fluentform .ff-el-form-check label,
body.page-id-394 .fluentform .ff-el-input--label {
	color: rgba(240, 248, 255, 0.94);
}

body.page-id-391 .fluentform input[type="text"],
body.page-id-391 .fluentform input[type="email"],
body.page-id-391 .fluentform input[type="url"],
body.page-id-391 .fluentform input[type="number"],
body.page-id-391 .fluentform textarea,
body.page-id-391 .fluentform select,
body.page-id-394 .fluentform input[type="text"],
body.page-id-394 .fluentform input[type="email"],
body.page-id-394 .fluentform input[type="url"],
body.page-id-394 .fluentform input[type="number"],
body.page-id-394 .fluentform textarea,
body.page-id-394 .fluentform select {
	width: 100% !important;
	min-height: 42px;
	background: rgba(9, 14, 22, 0.46) !important;
	color: #f6fbff !important;
	border: 1px solid rgba(125, 255, 191, 0.28) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
}

body.page-id-391 .fluentform textarea,
body.page-id-394 .fluentform textarea {
	min-height: 140px;
	resize: vertical;
}

body.page-id-391 .fluentform input::placeholder,
body.page-id-391 .fluentform textarea::placeholder,
body.page-id-394 .fluentform input::placeholder,
body.page-id-394 .fluentform textarea::placeholder {
	color: rgba(220, 232, 240, 0.62) !important;
}

body.page-id-391 .fluentform input:focus,
body.page-id-391 .fluentform textarea:focus,
body.page-id-391 .fluentform select:focus,
body.page-id-394 .fluentform input:focus,
body.page-id-394 .fluentform textarea:focus,
body.page-id-394 .fluentform select:focus {
	outline: none !important;
	border-color: rgba(125, 255, 191, 0.72) !important;
	box-shadow: 0 0 0 2px rgba(125, 255, 191, 0.16) !important;
}

body.page-id-391 .fluentform .ff-btn-submit,
body.page-id-391 .fluentform button.ff-btn,
body.page-id-391 .fluentform button[type="submit"],
body.page-id-394 .fluentform .ff-btn-submit,
body.page-id-394 .fluentform button.ff-btn,
body.page-id-394 .fluentform button[type="submit"] {
	background: rgba(125, 255, 191, 0.14) !important;
	color: #d9fff0 !important;
	border: 1px solid rgba(125, 255, 191, 0.42) !important;
	border-radius: 10px !important;
	min-height: 38px;
	padding: 0 14px !important;
	box-shadow: none !important;
	transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

body.page-id-391 .fluentform .ff-btn-submit:hover,
body.page-id-391 .fluentform button.ff-btn:hover,
body.page-id-391 .fluentform button[type="submit"]:hover,
body.page-id-394 .fluentform .ff-btn-submit:hover,
body.page-id-394 .fluentform button.ff-btn:hover,
body.page-id-394 .fluentform button[type="submit"]:hover {
	background: rgba(125, 255, 191, 0.24) !important;
	border-color: rgba(125, 255, 191, 0.62) !important;
	color: #f4fffb !important;
}

body.page-id-391 .fluentform .ff_submit_btn_wrapper,
body.page-id-394 .fluentform .ff_submit_btn_wrapper {
	margin-top: 8px;
}

@media (max-width: 768px) {
	body.page-id-391 .fluentform,
	body.page-id-394 .fluentform {
		padding: 12px 10px;
		border-radius: 12px;
	}
}

/* Fluent Forms width overrides (Contact/Support) */
body.page-id-391 [class*="fluentform_wrapper_"],
body.page-id-394 [class*="fluentform_wrapper_"] {
	max-width: 860px !important;
	width: min(860px, calc(100% - 24px)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.page-id-391 .fluentform .ff-t-container,
body.page-id-394 .fluentform .ff-t-container {
	width: 100% !important;
	max-width: 100% !important;
}

body.page-id-391 .fluentform .ff-t-cell,
body.page-id-394 .fluentform .ff-t-cell,
body.page-id-391 .fluentform .ff-el-group.ff-el-is-half,
body.page-id-394 .fluentform .ff-el-group.ff-el-is-half,
body.page-id-391 .fluentform .ff-el-group.ff-el-is-2-columns,
body.page-id-394 .fluentform .ff-el-group.ff-el-is-2-columns,
body.page-id-391 .fluentform .ff-el-group.ff-el-is-3-columns,
body.page-id-394 .fluentform .ff-el-group.ff-el-is-3-columns {
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
}

/* Contact/Support form wrapper width hardening */
body.page-id-391 .wp-block-fluentfom-guten-block,
body.page-id-394 .wp-block-fluentfom-guten-block,
body.page-id-391 .wp-block-shortcode,
body.page-id-394 .wp-block-shortcode {
	max-width: 900px !important;
	width: min(900px, calc(100% - 24px)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.page-id-391 .frm-fluent-form,
body.page-id-394 .frm-fluent-form,
body.page-id-391 .ff-default,
body.page-id-394 .ff-default {
	width: 100% !important;
	max-width: 100% !important;
}

body.page-id-391 .fluentform .ff-el-input--content,
body.page-id-394 .fluentform .ff-el-input--content {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
}

/* Force Fluent Forms top-label/full-width layout on Contact/Support */
body.page-id-391 .fluentform .ff-el-form-left .ff-el-input--label,
body.page-id-391 .fluentform .ff-el-form-right .ff-el-input--label,
body.page-id-394 .fluentform .ff-el-form-left .ff-el-input--label,
body.page-id-394 .fluentform .ff-el-form-right .ff-el-input--label {
	float: none !important;
	width: auto !important;
	padding: 0 0 6px 0 !important;
	margin: 0 !important;
	text-align: left !important;
	display: block !important;
}

body.page-id-391 .fluentform .ff-el-form-left .ff-el-input--content,
body.page-id-391 .fluentform .ff-el-form-right .ff-el-input--content,
body.page-id-394 .fluentform .ff-el-form-left .ff-el-input--content,
body.page-id-394 .fluentform .ff-el-form-right .ff-el-input--content {
	margin-left: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.page-id-391 .fluentform .ff-el-form-control,
body.page-id-394 .fluentform .ff-el-form-control {
	max-width: none !important;
	width: 100% !important;
}

/* Fluent Forms name-field width fix (Contact/Support) */
body.page-id-391 .fluentform .ff-name-field-wrapper,
body.page-id-394 .fluentform .ff-name-field-wrapper {
	width: 100% !important;
	max-width: 100% !important;
}

body.page-id-391 .fluentform .ff-name-field-wrapper .ff-t-container,
body.page-id-394 .fluentform .ff-name-field-wrapper .ff-t-container {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	gap: 0 !important;
}

body.page-id-391 .fluentform .ff-name-field-wrapper .ff-t-cell,
body.page-id-394 .fluentform .ff-name-field-wrapper .ff-t-cell,
body.page-id-391 .fluentform .ff-name-field-wrapper .ff-name-title,
body.page-id-394 .fluentform .ff-name-field-wrapper .ff-name-title {
	width: 100% !important;
	max-width: 100% !important;
	flex-basis: 100% !important;
}

/* Contact/Support page content width (theme wrapper override) */
body.page-id-391 main,
body.page-id-394 main {
	--mds-contact-content-width: 980px;
}

body.page-id-391 .entry-content,
body.page-id-394 .entry-content,
body.page-id-391 .wp-block-post-content,
body.page-id-394 .wp-block-post-content {
	max-width: var(--mds-contact-content-width) !important;
	width: min(var(--mds-contact-content-width), calc(100% - 24px)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.page-id-391 .entry-content > *:not(.alignfull),
body.page-id-394 .entry-content > *:not(.alignfull),
body.page-id-391 .wp-block-post-content > *:not(.alignfull),
body.page-id-394 .wp-block-post-content > *:not(.alignfull) {
	max-width: var(--mds-contact-content-width) !important;
}

/* Block-theme constrained layout override */
body.page-id-391 .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.page-id-394 .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: var(--mds-contact-content-width) !important;
}

/* Force actual form panel width (was shrink-wrapping) */
body.page-id-391 .fluentform,
body.page-id-394 .fluentform {
	display: block !important;
	width: min(860px, calc(100% - 24px)) !important;
	max-width: 860px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.page-id-391 .fluentform_wrapper_1 form.frm-fluent-form,
body.page-id-394 .fluentform_wrapper_3 form.frm-fluent-form {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* Strong override: contact/support panel should match 1000px site width (beats generic mds-container panel rules) */
body.page-id-391.mds-container main.wp-block-group > .wp-block-group.alignfull.has-accent-one-background-color.has-background,
body.page-id-394.mds-container main.wp-block-group > .wp-block-group.alignfull.has-accent-one-background-color.has-background {
	display: block !important;
	text-align: left !important;
	width: 1000px !important;
	max-width: calc(100% - 24px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 18px !important;
	padding-right: 18px !important;
	box-sizing: border-box !important;
}

body.page-id-391.mds-container main.wp-block-group,
body.page-id-394.mds-container main.wp-block-group {
	text-align: center !important;
}

/* Contact/Support: normalize page content stack to 1000px and let pink panel fill it */
body.page-id-391.mds-container main.wp-block-group.has-global-padding.is-layout-constrained,
body.page-id-394.mds-container main.wp-block-group.has-global-padding.is-layout-constrained {
	width: 1000px !important;
	max-width: calc(100% - 24px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
	text-align: initial !important;
}

/* Contact/Support: make pink panel wrap the form body with even spacing */
body.page-id-391.mds-container main.wp-block-group.has-global-padding.is-layout-constrained,
body.page-id-394.mds-container main.wp-block-group.has-global-padding.is-layout-constrained {
	text-align: center !important;
}

body.page-id-391.mds-container main.wp-block-group.has-global-padding.is-layout-constrained > .wp-block-group.alignfull.has-accent-one-background-color.has-background,
body.page-id-394.mds-container main.wp-block-group.has-global-padding.is-layout-constrained > .wp-block-group.alignfull.has-accent-one-background-color.has-background {
	display: inline-flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: auto !important;
	max-width: calc(100% - 24px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 22px 14px !important;
	box-sizing: border-box !important;
}

body.page-id-391 .fluentform_wrapper_1,
body.page-id-394 .fluentform_wrapper_3 {
	width: 860px !important;
	max-width: calc(100vw - 92px) !important;
	margin: 0 !important;
}

