/**
 * Formulaire contact — overrides Forminator (chargé après forminator-forms-default-base).
 * Priorité : neutraliser span{display:block}, ripple :active et masquage onload de Forminator.
 */

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:hover,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:focus,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:active,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:disabled,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-button-onload,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-onload,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.tic-contact-submit--loading {
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	width: auto !important;
	max-width: 100% !important;
	min-width: 17rem !important;
	height: 3rem !important;
	min-height: 3rem !important;
	max-height: 3rem !important;
	padding: 0 1.75rem !important;
	margin: 1rem 0 0 !important;
	border: none !important;
	border-radius: var(--tic-radius-button) !important;
	background: linear-gradient(90deg, #f79007, #f5c842) !important;
	color: #0a0f1e !important;
	box-shadow: 0 4px 16px rgba(247, 144, 7, 0.32) !important;
	font-family: var(--tic-font-sans) !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	white-space: nowrap !important;
	text-align: center !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
	overflow: visible !important;
	transform: none !important;
	vertical-align: middle !important;
	-webkit-tap-highlight-color: transparent;
	transition: background 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:hover,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:focus {
	background: linear-gradient(90deg, #e07d00, #e8b923) !important;
	box-shadow: 0 4px 16px rgba(247, 144, 7, 0.32) !important;
	outline: none !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:focus-visible {
	outline: 2px solid rgba(247, 144, 7, 0.55) !important;
	outline-offset: 2px;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:active:not(.tic-contact-submit--loading) {
	background: linear-gradient(90deg, #d67400, #d9aa1a) !important;
	box-shadow: 0 2px 10px rgba(247, 144, 7, 0.28) !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:disabled,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-button-onload,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-onload,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.tic-contact-submit--loading {
	opacity: 0.88 !important;
	cursor: wait !important;
}

/* Forminator default : span { display:block } — annulé sur nos éléments */
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit span.tic-contact-submit__label {
	display: inline !important;
	flex: 0 0 auto !important;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit span.tic-contact-submit__icon-slot {
	display: inline-flex !important;
	flex: 0 0 auto !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	width: 1.125rem !important;
	height: 1.125rem !important;
	padding: 0 !important;
	margin: 0 !important;
	opacity: 1 !important;
	overflow: visible !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit span.tic-contact-submit__arrow,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit span.tic-contact-submit__spinner {
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	opacity: 1 !important;
	transition: opacity 0.15s ease !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit span.tic-contact-submit__arrow {
	font-size: 1.125rem;
	line-height: 1.125rem;
	text-align: center;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit span.tic-contact-submit__spinner {
	opacity: 0 !important;
	width: 0.875rem !important;
	height: 0.875rem !important;
	margin: auto !important;
	inset: auto !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	transform: translate(-50%, -50%);
	border: 2px solid rgba(10, 15, 30, 0.2);
	border-top-color: #0a0f1e;
	border-radius: 50%;
	animation: tic-contact-submit-spin 0.65s linear infinite;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.tic-contact-submit--loading span.tic-contact-submit__arrow,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-button-onload span.tic-contact-submit__arrow {
	opacity: 0 !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.tic-contact-submit--loading span.tic-contact-submit__spinner,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-button-onload span.tic-contact-submit__spinner {
	opacity: 1 !important;
}

/* Forminator onload masque les spans + ripple :active */
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-onload span.tic-contact-submit__label,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.forminator-button-onload span.tic-contact-submit__label,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:active span.tic-contact-submit__label,
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:active span.tic-contact-submit__icon-slot {
	opacity: 1 !important;
	visibility: visible !important;
	width: auto !important;
	padding: 0 !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit:active span.tic-contact-submit__icon-slot {
	width: 1.125rem !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit > span:not(.tic-contact-submit__label):not(.tic-contact-submit__icon-slot),
body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit .forminator-icon-loader {
	display: none !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
}

body.tic-contact-page .tic-forminator-wrap .forminator-response-message.forminator-loading {
	display: none !important;
}

@keyframes tic-contact-submit-spin {
	to {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

@media (max-width: 767px) {
	body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit,
	body.tic-contact-page .tic-forminator-wrap .forminator-ui.forminator-custom-form[data-design=default] .forminator-button-submit.tic-contact-submit.tic-contact-submit--loading {
		width: 100% !important;
		min-width: 0 !important;
	}
}
