/* =====================================================================================
   Accord refonte 2026 : credit express (fenetre 850 px) + fenetres du site (etude gratuite,
   rappel / appel immediat, je veux profiter de ce taux, ecrans merci) + conteneur des popups.
   Classes prefixees acx- ; couleurs propres (--acx-*) pour fonctionner aussi hors des pages
   qui chargent accord-2026.css (mini-sites : la fenetre modale charge cette feuille elle-meme).
   popup.css n'est pas modifie : il est charge APRES cette feuille, d'ou les selecteurs renforces.
   ===================================================================================== */

:root {
	--acx-nuit: #16283A;
	--acx-nuit-2: #1E3650;
	--acx-ardoise: #435E79;
	--acx-ambre: #F3AC4B;
	--acx-ambre-hover: #EB9E36;
	--acx-ambre-fonce: #C97B14;
	--acx-ambre-clair: #FDF4E6;
	--acx-encre: #14202C;
	--acx-texte: #4A5868;
	--acx-gris: #6B7785;
	--acx-bord: #CBD3DC;
	--acx-ligne: #E3E8EE;
	--acx-fond: #F3F6F9;
	--acx-rouge: #C0392B;
	--acx-rouge-clair: #FDF0EE;
	--acx-vert: #1E8E5A;
	--acx-police: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	--acx-r-carte: 7px;
	--acx-r-champ: 7px;
	--acx-r-btn: 6px;
	--acx-ombre: 0 1px 2px rgba(20, 32, 44, .05), 0 6px 20px rgba(20, 32, 44, .06);
}

/* -------------------------------------------------------------------------------------
   1. Briques communes : champs a libelle flottant, choix, boutons, erreurs
   ------------------------------------------------------------------------------------- */
.acx-express *, .acx-express *::before, .acx-express *::after,
.acx-pop, .acx-pop *, .acx-pop *::before, .acx-pop *::after { box-sizing: border-box; }

.acx-grille { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: start; }
.acx-large { grid-column: 1 / -1; }

.acx-champ { position: relative; min-width: 0; margin: 0; padding: 0; }
html body .acx-champ input[type="text"], html body .acx-champ input[type="email"], html body .acx-champ input[type="tel"], html body .acx-champ select {
	display: block; width: 100%; height: 52px; min-height: 52px; margin: 0; float: none;
	padding: 20px 14px 5px; border: 1px solid var(--acx-bord); border-radius: var(--acx-r-champ) !important;
	background-color: #fff; box-shadow: none; -webkit-appearance: none; appearance: none;
	font-family: var(--acx-police); font-size: 15px; font-weight: 500; line-height: 1.2; color: var(--acx-encre);
	transition: border-color .15s ease, box-shadow .15s ease;
}
html body .acx-champ select {
	padding-right: 38px; cursor: pointer; text-overflow: ellipsis;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23435E79' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 14px center; background-size: 12px 8px;
}
html body .acx-champ label {
	position: absolute; left: 15px; top: 16px; right: 15px; margin: 0; padding: 0; width: auto; float: none;
	font-family: var(--acx-police); font-size: 15px; font-weight: 500; line-height: 1.25; color: var(--acx-gris);
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis; pointer-events: none; text-align: left; background: none;
	transition: top .15s ease, font-size .15s ease, color .15s ease;
}
html body .acx-champ input:focus + label, html body .acx-champ input:not(:placeholder-shown) + label, html body .acx-liste label {
	top: 7px; font-size: 11.5px; font-weight: 700; letter-spacing: .02em; color: var(--acx-ardoise);
}
html body .acx-champ input:focus, html body .acx-champ select:focus,
.acx-date-champs input:focus, .acx-anc-champs input:focus, .acx-precision:focus {
	outline: none; border-color: var(--acx-ardoise); box-shadow: 0 0 0 3px rgba(67, 94, 121, .16);
}
.acx-champ label strong, .acx-requis { color: var(--acx-ambre-fonce); font-weight: 700; }
html body .acx-suffixe input[type="text"] { padding-right: 36px; }
.acx-unite { position: absolute; right: 14px; top: 0; height: 52px; padding-top: 14px; display: flex; align-items: center; font-weight: 600; font-size: 15px; color: var(--acx-gris); pointer-events: none; }

/* Choix exclusifs en boutons (radios) et cases (checkbox) */
.acx-choix, .acx-groupe { min-width: 0; margin: 0; padding: 0; border: 0; }
.acx-choix-titre, .acx-groupe-titre, .acx-cases legend {
	display: block; margin: 0 0 6px; padding: 0; float: none; width: auto; border: 0;
	font-family: var(--acx-police); font-size: 12.5px; font-weight: 700; letter-spacing: .02em; line-height: 1.3; color: var(--acx-ardoise);
}
.acx-choix-options { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.acx-choix-options input[type="radio"], .acx-cases-options input[type="checkbox"] {
	position: absolute; width: 1px; height: 1px; margin: 0; padding: 0; opacity: 0; pointer-events: none;
}
html body .acx-choix-options label, html body .acx-cases-options label {
	display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin: 0; padding: 0 16px; float: none; width: auto;
	border: 1px solid var(--acx-bord); border-radius: var(--acx-r-champ); background: #fff; cursor: pointer;
	font-family: var(--acx-police); font-size: 15px; font-weight: 600; line-height: 1.2; color: var(--acx-encre);
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
html body .acx-choix-options label:hover, html body .acx-cases-options label:hover { border-color: var(--acx-ardoise); }
html body .acx-choix-options input:checked + label { background: var(--acx-nuit); border-color: var(--acx-nuit); color: #fff; }
.acx-choix-options input:focus-visible + label, .acx-cases-options input:focus-visible + label { outline: 2px solid var(--acx-ambre); outline-offset: 2px; }
/* case a cocher dessinee dans l'etiquette */
.acx-cases-options label::before {
	content: ''; flex: 0 0 18px; width: 18px; height: 18px; border: 1.5px solid var(--acx-bord); border-radius: 4px; background: #fff center / 12px 12px no-repeat;
}
html body .acx-cases-options input:checked + label { border-color: var(--acx-ardoise); background: #F1F5F9; }
.acx-cases-options input:checked + label::before {
	border-color: var(--acx-nuit); background-color: var(--acx-nuit);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.acx-cases { margin: 16px 0 0; padding: 0; border: 0; min-width: 0; }
.acx-cases-options { position: relative; display: flex; flex-wrap: wrap; gap: 8px; }

/* Petits champs dans les groupes (date, precision de nationalite, anciennete) */
html body .acx-date-champs input, html body .acx-anc-champs input[type="text"], html body .acx-precision {
	height: 44px; min-height: 44px; margin: 0; padding: 0 10px; float: none;
	border: 1px solid var(--acx-bord); border-radius: var(--acx-r-champ); background: #fff; box-shadow: none;
	font-family: var(--acx-police); font-size: 15px; font-weight: 500; color: var(--acx-encre);
}
.acx-date-champs { display: flex; align-items: center; gap: 6px; }
html body .acx-date-champs input { width: 58px; text-align: center; }
html body .acx-date-champs input.acx-annee { width: 78px; }
.acx-date-champs span { color: var(--acx-gris); font-weight: 600; }
.acx-anc-champs { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
html body .acx-anc-champs input[type="text"] { width: 64px; text-align: center; }
html body .acx-precision { flex: 1 1 130px; min-width: 0; width: auto; }
.acx-date-champs input::placeholder, .acx-precision::placeholder { color: #A3ADB8; font-weight: 500; }

/* Erreurs de validation */
html body .acx-err input[type="text"], html body .acx-err select, html body .acx-err .acx-choix-options label, html body .acx-err .acx-cases-options label { border-color: var(--acx-rouge) !important; }
html body .acx-champ.acx-err input[type="text"], html body .acx-champ.acx-err select { background-color: var(--acx-rouge-clair) !important; }
html body .acx-erreur, html body span.erreur.acx-erreur {
	display: block; float: none; width: auto; margin: 5px 0 0; padding: 0; text-align: left;
	font-family: var(--acx-police); font-size: 13px !important; font-weight: 600 !important; line-height: 1.35; color: var(--acx-rouge) !important;
}
html body .acx-erreur-bloc {
	margin: 14px 0 0; padding: 10px 14px; border-radius: var(--acx-r-champ); background: var(--acx-rouge-clair); text-align: left;
	font-family: var(--acx-police); font-size: 14px; font-weight: 600; line-height: 1.4; color: #A5281B;
}

/* Boutons */
html body .acx-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; width: auto; height: auto;
	margin: 0; padding: 0 22px; border: 1px solid transparent; border-radius: var(--acx-r-btn); box-shadow: none;
	font-family: var(--acx-police); font-size: 15px; font-weight: 700; line-height: 1; letter-spacing: 0; text-transform: none; text-decoration: none;
	cursor: pointer; white-space: nowrap; transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
html body .acx-btn-ambre { background: var(--acx-ambre) !important; border: 1px solid var(--acx-ambre) !important; color: var(--acx-nuit) !important; }
html body .acx-btn-ambre:hover, html body .acx-btn-ambre:focus-visible { background: var(--acx-ambre-hover) !important; border-color: var(--acx-ambre-hover) !important; color: var(--acx-nuit) !important; }
html body .acx-btn-ligne { background: #fff !important; border: 1px solid var(--acx-bord) !important; color: var(--acx-nuit) !important; }
html body .acx-btn-ligne:hover, html body .acx-btn-ligne:focus-visible { border-color: var(--acx-nuit) !important; color: var(--acx-nuit) !important; }
html body .acx-btn:focus-visible { outline: 2px solid var(--acx-nuit); outline-offset: 2px; }
html body .acx-btn[disabled] { opacity: .6; cursor: default; }

/* -------------------------------------------------------------------------------------
   2. Credit express (credit-express-frame.php, fenetre de 850 px)
   ------------------------------------------------------------------------------------- */
body.acx-express {
	margin: 0; min-width: 0; background: var(--acx-fond);
	font-family: var(--acx-police); font-size: 15px; line-height: 1.5; color: var(--acx-texte);
	-webkit-font-smoothing: antialiased;
}
.acx-entete {
	display: flex; align-items: center; gap: 22px; padding: 16px 24px;
	background: #fff; border-bottom: 1px solid var(--acx-ligne);
}
.acx-logo { flex: 0 0 auto; margin: 0; }
.acx-logo img { display: block; width: 190px; height: auto; }
.acx-entete-texte { min-width: 0; padding-left: 22px; border-left: 1px solid var(--acx-ligne); }
.acx-express .acx-titre { margin: 0; font-size: 22px; font-weight: 800; line-height: 1.2; letter-spacing: -.015em; color: var(--acx-encre); }
.acx-express .textValid { margin: 4px 0 0; font-size: 13.5px; line-height: 1.45; color: var(--acx-texte); }
.acx-contenu { max-width: 820px; margin: 0 auto; padding: 20px 16px 28px; }

/* barre de progression */
.acx-etapes { margin: 0 0 16px; padding: 16px 12px 14px; background: #fff; border: 1px solid var(--acx-ligne); border-radius: var(--acx-r-carte); box-shadow: var(--acx-ombre); }
.acx-etapes ol { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.acx-etapes li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; margin: 0; padding: 0 2px; text-align: center; }
.acx-etapes li::before { content: ''; position: absolute; top: 15px; right: 50%; width: 100%; height: 3px; background: var(--acx-ligne); }
.acx-etapes li:first-child::before { display: none; }
.acx-etapes li.acx-fait::before, .acx-etapes li.active::before { background: var(--acx-ardoise); }
.acx-num {
	position: relative; z-index: 1; display: flex; align-items: center; justify-content: center;
	width: 32px; height: 32px; border-radius: 50%; background: #fff; border: 2px solid var(--acx-bord);
	font-size: 14px; font-weight: 800; line-height: 1; color: var(--acx-gris);
}
.acx-etapes li.acx-fait .acx-num { background: var(--acx-ardoise); border-color: var(--acx-ardoise); color: #fff; }
.acx-etapes li.active .acx-num { background: var(--acx-ambre); border-color: var(--acx-ambre); color: var(--acx-nuit); box-shadow: 0 0 0 4px rgba(243, 172, 75, .28); }
.acx-lib { font-size: 12.5px; font-weight: 600; line-height: 1.25; color: var(--acx-gris); }
.acx-etapes li.acx-fait .acx-lib { color: var(--acx-ardoise); }
.acx-etapes li.active .acx-lib { font-weight: 800; color: var(--acx-nuit); }
.acx-etape-mobile { display: none; margin: 10px 0 0; text-align: center; font-size: 14px; color: var(--acx-texte); }
.acx-etape-mobile strong { color: var(--acx-nuit); }

/* cartes de chaque etape */
.acx-carte { margin: 0 0 14px; padding: 20px 22px 22px; background: #fff; border: 1px solid var(--acx-ligne); border-radius: var(--acx-r-carte); box-shadow: var(--acx-ombre); }
.acx-express .acx-carte-titre { margin: 0 0 14px; font-size: 18px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; color: var(--acx-encre); }
.acx-express #antiSpam { margin: 0 0 14px; padding: 16px 22px; background: #fff; border: 1px solid var(--acx-ligne); border-radius: var(--acx-r-carte); box-shadow: var(--acx-ombre); }
.acx-captcha { min-height: 40px; }
.acx-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 4px 0 0; }
.acx-actions .next { margin-left: auto; }
.acx-actions-centre { justify-content: center; }
.acx-actions-centre .next { margin-left: 0; }

/* ecran de resultat */
.acx-resultat { text-align: center; padding: 28px 24px; }
.acx-resultat .titre_bloc { font-size: 15px; color: var(--acx-texte); }
.acx-resultat p { margin: 0 0 8px; }
.acx-resultat-icone { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; margin-bottom: 10px; border-radius: 50%; background: #E7F5EE; color: var(--acx-vert); }
.acx-express .acx-resultat-titre { margin: 0 0 6px; font-size: 24px; font-weight: 800; color: var(--acx-encre); }
.acx-resultat-titre-erreur { font-weight: 700; color: #A5281B; }
.acx-resultat-liste { display: inline-block; margin: 4px 0 12px; padding: 0 0 0 18px; text-align: left; }
.acx-resultat-fermer { color: var(--acx-gris); font-size: 14px; }

@media (max-width: 640px) {
	.acx-entete { flex-direction: column; align-items: flex-start; gap: 10px; padding: 14px 16px; }
	.acx-entete-texte { padding-left: 0; border-left: 0; }
	.acx-logo img { width: 170px; }
	.acx-express .acx-titre { font-size: 20px; }
	.acx-contenu { padding: 14px 12px 24px; }
	.acx-grille { grid-template-columns: 1fr; }
	.acx-carte { padding: 16px; }
	.acx-express #antiSpam { padding: 14px 16px; }
	.acx-etapes { padding: 14px 8px 12px; }
	.acx-lib { display: none; }
	.acx-etape-mobile { display: block; }
}
@media (max-width: 480px) {
	.acx-actions { flex-direction: column-reverse; align-items: stretch; }
	.acx-actions .acx-btn { width: 100%; }
	.acx-actions .next { margin-left: 0; }
}

/* -------------------------------------------------------------------------------------
   3. Conteneur des popups du site (js/popup/popup.js : .popup_block + #fade + a.close)
   ------------------------------------------------------------------------------------- */
/* #fade (voile) : deja style par pages-produits.css, non modifie ici */
html body .popup_block {
	border: 0 !important; border-radius: var(--ac-r-max, 7px) !important; background: #fff;
	box-shadow: 0 2px 6px rgba(20, 32, 44, .10), 0 24px 60px rgba(10, 20, 30, .35) !important;
}
html body .popup_block > a.close {
	position: absolute !important; top: 12px !important; right: 12px !important; left: auto !important; z-index: 20;
	display: block; width: 40px; height: 40px; margin: 0 !important; padding: 0 !important; float: none;
	border-radius: 50%; background: var(--acx-fond) !important; opacity: 1; text-indent: 0;
	transition: background-color .15s ease;
}
html body .popup_block > a.close:hover, html body .popup_block > a.close:focus-visible { background: var(--acx-ligne) !important; }
html body .popup_block > a.close:focus-visible { outline: 2px solid var(--acx-nuit); outline-offset: 2px; }
html body .popup_block > a.close img { display: none !important; }
html body .popup_block > a.close::before, html body .popup_block > a.close::after {
	content: ''; position: absolute; top: 19px; left: 12px; width: 16px; height: 2px; border-radius: 2px; background: var(--acx-nuit);
}
html body .popup_block > a.close::before { transform: rotate(45deg); }
html body .popup_block > a.close::after { transform: rotate(-45deg); }

/* Fenetre Etude gratuite du gabarit commun : en-tete photo et coin remplaces par l'en-tete du formulaire */
html body #etude_gratuite.popup_block { width: min(640px, calc(100vw - 24px)) !important; padding: 0 !important; overflow: visible; }
html body #etude_gratuite.popup_block::after { display: none !important; }
html body #etude_gratuite.popup_block > .coinLeft, html body #etude_gratuite.popup_block > .photo_interne { display: none !important; }
html body #etude_gratuite.popup_block form { width: auto !important; margin: 0; padding: 0 !important; background: none !important; z-index: auto; }

/* Fenetre Je veux profiter de ce taux (accueil, recherche) */
html body #profiter_taux.popup_block { width: min(580px, calc(100vw - 24px)) !important; padding: 0 !important; }
html body #profiter_taux.popup_block > .titreFormAvis {
	margin: 0 !important; padding: 26px 64px 0 28px !important; border: 0 !important; text-align: left;
	font-family: var(--acx-police); font-size: 22px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em;
	color: var(--acx-encre) !important; text-transform: lowercase; background: none;
}
html body #profiter_taux.popup_block > .titreFormAvis::first-letter { text-transform: uppercase; }
html body #profiter_taux.popup_block > .titreFormAvis #taux_popup {
	display: block; margin-top: 4px; font-size: 15px !important; font-weight: 700; letter-spacing: 0; text-transform: none; color: var(--acx-ambre-fonce);
}
html body #profiter_taux.popup_block > .titreFormAvis #taux_popup:empty { display: none; }

/* -------------------------------------------------------------------------------------
   4. Contenu des fenetres (gabarit commun et fenetres modales Bootstrap)
   ------------------------------------------------------------------------------------- */
.acx-pop { padding: 26px 28px 24px; font-family: var(--acx-police); font-size: 15px; line-height: 1.5; color: var(--acx-texte); text-align: left; }
#profiter_taux .acx-pop { padding-top: 16px; }
.acx-pop-tete { margin: 0 0 18px; padding-right: 44px; }
html body .acx-pop .acx-pop-titre {
	margin: 0; padding: 0; border: 0; background: none; text-align: left; text-transform: none;
	font-family: var(--acx-police); font-size: 22px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; color: var(--acx-encre);
}
.acx-pop-sous { margin: 6px 0 0; font-size: 14.5px; line-height: 1.45; color: var(--acx-texte); }
html body .acx-pop .acx-pop-intro { margin: 0 0 16px; }
.acx-pop form { margin: 0; padding: 0; width: auto; background: none; box-shadow: none; }
html body .acx-pop p, html body .acx-pop legend, html body .acx-pop button, html body .acx-modal .modal-footer .btn { font-family: var(--acx-police); }
.acx-pop .abeille, .acx-modal .abeille { display: none !important; }
.acx-pop .g-recaptcha { margin: 16px 0 0; min-height: 0; }
.acx-pop .acx-captcha-erreur { margin-top: 4px; }
.acx-pop-bas { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin: 18px 0 0; }
.acx-pop-note { margin: 0; font-size: 12.5px; line-height: 1.4; color: var(--acx-gris); }
.acx-pop-bas .acx-btn { margin-left: auto; min-width: 150px; }
.acx-pop .pastille, #etude_gratuite_wait { width: 24px; height: 24px; vertical-align: middle; }

/* ecran merci */
.acx-merci { font-family: var(--acx-police); display: flex; align-items: flex-start; gap: 14px; margin: 0; padding: 18px; border-radius: var(--ac-r-max, 7px); background: #EEF7F2; color: var(--acx-encre); font-size: 15.5px; font-weight: 600; line-height: 1.45; text-align: left; }
.acx-merci-icone { flex: 0 0 36px; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: var(--acx-vert); color: #fff; }
.acx-merci p { margin: 0; }
.acx-merci p + p { margin-top: 6px; font-weight: 500; color: var(--acx-texte); }

/* Fenetres modales Bootstrap (popup/etude_gratuite.tpl, popup/appel_immediat.tpl) : fonctionnent avec ou sans bootstrap.css */
.acx-modal.modal { position: fixed; top: 0; left: 0; z-index: 1055; width: 100%; height: 100%; overflow-x: hidden; overflow-y: auto; outline: 0; max-width: none !important; }
.acx-modal.modal.fade { transition: opacity .15s linear; }
.acx-modal.modal.fade:not(.show) { opacity: 0; }
.acx-modal .modal-dialog { position: relative; width: auto; max-width: 640px; margin: 28px auto; padding: 0 12px; pointer-events: none; }
.acx-modal .modal-content {
	position: relative; display: flex; flex-direction: column; width: 100%; pointer-events: auto; overflow: hidden;
	background: #fff; border: 0; border-radius: var(--ac-r-max, 7px); box-shadow: 0 2px 6px rgba(20, 32, 44, .10), 0 24px 60px rgba(10, 20, 30, .35);
	font-family: var(--acx-police); color: var(--acx-texte);
}
.acx-modal .modal-header { position: relative; display: block; padding: 24px 72px 0 28px; border: 0; }
html body .acx-modal .modal-title { margin: 0; padding: 0; text-align: left; font-family: var(--acx-police); font-size: 22px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; color: var(--acx-encre); text-transform: none; }
.acx-modal .modal-body { padding: 0; }
.acx-modal .modal-body .acx-pop { padding-top: 16px; padding-bottom: 8px; }
.acx-modal .modal-body .acx-pop-tete { padding-right: 0; }
html body .acx-modal .btn-close {
	position: absolute; top: 16px; right: 16px; width: 40px; height: 40px; margin: 0; padding: 0; opacity: 1;
	border: 0 !important; border-radius: 50% !important; background: var(--acx-fond) !important; box-shadow: none; cursor: pointer;
}
html body .acx-modal .btn-close:hover { background: var(--acx-ligne) !important; }
html body .acx-modal .btn-close:focus-visible { outline: 2px solid var(--acx-nuit); outline-offset: 2px; box-shadow: none; }
.acx-modal .btn-close::before, .acx-modal .btn-close::after { content: ''; position: absolute; top: 19px; left: 12px; width: 16px; height: 2px; border-radius: 2px; background: var(--acx-nuit); }
.acx-modal .btn-close::before { transform: rotate(45deg); }
.acx-modal .btn-close::after { transform: rotate(-45deg); }
.acx-modal .modal-footer { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px; padding: 8px 28px 24px; border: 0; }
.acx-modal .modal-footer > * { margin: 0; }
.acx-modal .acx-envoi-hors-modale { display: none; }
body > .modal-backdrop { position: fixed; top: 0; left: 0; z-index: 1050; width: 100vw; height: 100vh; max-width: none !important; background-color: var(--acx-nuit); }
body > .modal-backdrop.fade { opacity: 0; }
body > .modal-backdrop.show { opacity: .7; }
/* formulaire de la fenetre modale renvoye dans une page (ex. etude-gratuite.php apres un refus) : bouton d'envoi dans le formulaire */
.acx-envoi-hors-modale { margin: 18px 0 0; text-align: right; }

@media (max-width: 600px) {
	.acx-pop { padding: 22px 18px 20px; }
	#profiter_taux .acx-pop { padding-top: 14px; }
	html body #profiter_taux.popup_block > .titreFormAvis { padding: 22px 60px 0 18px !important; font-size: 20px; }
	html body .acx-pop .acx-pop-titre, html body .acx-modal .modal-title { font-size: 20px; }
	.acx-pop .acx-grille { grid-template-columns: 1fr; }
	.acx-pop-bas { flex-direction: column-reverse; align-items: stretch; }
	.acx-pop-bas .acx-btn { width: 100%; margin-left: 0; }
	.acx-modal .modal-dialog { margin: 12px auto; }
	.acx-modal .modal-header { padding: 20px 64px 0 18px; }
	.acx-modal .modal-footer { padding: 8px 18px 20px; }
	.acx-modal .modal-footer .acx-btn { flex: 1 1 auto; }
	html body .acx-cases-options label { width: 100%; }
}

/* Fenetres .popup_block et fond #fade : js/popup/popup.js les fait apparaitre / disparaitre en fondu jQuery.
   La regle generale "body * { transition: .5s }" de screen.css retardait chaque pas de ce fondu :
   la fenetre surgissait presque opaque, s'assombrissait puis revenait (fondu d'ouverture invisible une fois sur deux). */
html body .popup_block,
html body #fade { transition: none !important; }
