/* Formulaires DALKEYA — design du formulaire de contact du kit Amiora (champs soulignés, libellés en
   placeholder, bouton pilule pleine largeur), aux couleurs DALKEYA. Couleurs : variables globales Elementor.
   Sélecteurs doublés (.dk-form.dk-form …) : ils doivent l'emporter sur les styles de champs du kit
   (.elementor-kit-8 input:not(…):not(…)). */
.dk-form { position: relative; margin: 0; container-type: inline-size; }
.dk-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.dk-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 24px; }
.dk-form__row { grid-column: 1 / -1; min-width: 0; }
.dk-form__row--half { grid-column: auto; }
@container (max-width: 420px) { .dk-form__row--half { grid-column: 1 / -1; } }

/* Libellé masqué (le placeholder le remplace, comme le modèle), sauf pour les dates où le navigateur n'affiche
   pas de placeholder. */
.dk-form__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.dk-form__row--date .dk-form__label { position: static; width: auto; height: auto; overflow: visible; clip: auto; white-space: normal;
	display: block; margin: 0 0 4px; font-size: 12px; line-height: 1.3; color: var(--e-global-color-text, #3E4A55); }

.dk-form.dk-form .dk-form__input.dk-form__input {
	display: block; width: 100%; min-height: 0; margin: 0; padding: 0 0 15px;
	border: 0; border-bottom: 1px solid rgba(18, 59, 90, .2); border-radius: 0; background: transparent; box-shadow: none;
	color: var(--e-global-color-primary, #123B5A); font-family: inherit; font-size: 14px; line-height: 1.6;
	transition: border-color .2s;
}
.dk-form.dk-form textarea.dk-form__input.dk-form__input { height: 72px; min-height: 60px; resize: vertical; }
.dk-form.dk-form select.dk-form__input.dk-form__input { appearance: none; padding-right: 26px; cursor: pointer;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23123B5A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6l6 -6'/%3E%3C/svg%3E") no-repeat right 4px top 5px; }
.dk-form.dk-form select.dk-form__input.dk-form__input:invalid { color: var(--e-global-color-text, #3E4A55); }
.dk-form.dk-form .dk-form__input.dk-form__input::placeholder { color: var(--e-global-color-text, #3E4A55); opacity: 1; }
.dk-form.dk-form .dk-form__input.dk-form__input:focus { outline: none; border-bottom-color: var(--e-global-color-368c131, #C6A24A); box-shadow: 0 1px 0 0 var(--e-global-color-368c131, #C6A24A); }
.dk-form.dk-form .dk-form__input.dk-form__input[aria-invalid="true"] { border-bottom-color: #B42318; }
.dk-form__error { margin: 6px 0 0; font-size: 12px; line-height: 1.4; font-weight: 600; color: #B42318; }
.dk-form__error:empty { display: none; }

.dk-form__notice { margin: 18px 0 0; font-size: 12px; line-height: 1.5; color: var(--e-global-color-text, #3E4A55); }
.dk-form__notice + .dk-form__notice { margin-top: 8px; }
.dk-form__notice a, .dk-form__alt a { color: var(--e-global-color-primary, #123B5A); text-decoration: underline; font-weight: 600; }

.dk-form.dk-form .dk-form__submit {
	display: block; width: 100%; min-height: 48px; margin: 22px 0 0; padding: 12px 24px;
	border: 1px solid var(--e-global-color-368c131, #C6A24A); border-radius: 50px;
	background: var(--e-global-color-368c131, #C6A24A); color: var(--e-global-color-primary, #123B5A);
	font-family: inherit; font-size: 15px; font-weight: 600; line-height: 1.2; text-transform: none; letter-spacing: 0;
	box-shadow: 0 5px 12px 0 rgba(198, 162, 74, .3); cursor: pointer; transition: background-color .25s, color .25s, border-color .25s;
}
.dk-form.dk-form .dk-form__submit:hover,
.dk-form.dk-form .dk-form__submit:focus-visible { background: var(--e-global-color-primary, #123B5A); border-color: var(--e-global-color-primary, #123B5A); color: #FFFFFF; }
.dk-form.dk-form .dk-form__submit:focus-visible { outline: 2px solid var(--e-global-color-368c131, #C6A24A); outline-offset: 3px; }
.dk-form.is-sending .dk-form__submit { opacity: .6; pointer-events: none; }

.dk-form__message { margin: 14px 0 0; font-size: 14px; line-height: 1.5; font-weight: 600; color: var(--e-global-color-primary, #123B5A); outline: none; }
.dk-form__message:empty { display: none; }
.dk-form__message.is-ok { padding: 12px 16px; border-left: 3px solid var(--e-global-color-368c131, #C6A24A); background: #FFFFFF; border-radius: 6px; }
.dk-form__message.is-error { color: #B42318; }
.dk-form__alt { margin: 12px 0 0; font-size: 13px; line-height: 1.5; color: var(--e-global-color-text, #3E4A55); }
