@charset "UTF-8";
/* ------ */
/* SITE - BASIC */
/* ------ */

/* ------ */
/* GLOBAL */
HTML,BODY{
margin:0;
padding:0;
width:100%; 
min-height:100vh;
overflow-x:hidden; 
font-size:100%;
}
*{
box-sizing:border-box;
text-wrap:wrap;
}

/* --- */
body abbr { text-decoration:underline; } /* SPECIAL DEFICIENTS VISUELS */
/*body ul, body ol, body figure { margin:0; padding:0; }*/
body li { line-height:normal !important; }
.small, small { font-size:87.5%; }
/* --- */
/* LINKS */
body a:not(.btn), 
body a:not(.btn):hover { text-decoration:underline; } /* SPECIAL DEFICIENTS VISUELS */
body a:not(.btn) { color:var(--site-link-col); }
body a:not(.btn):hover { color:var(--site-link-col-hover); border:none; }

/* ------ */
/* BUTTON - INPUT */
body input, 
body select, 
body textarea, 
body input.form-control, 
body select.form-select, 
body textarea.form-textarea, 
body .input-group, body .input-group-text,
body .chosen-container a.chosen-single,
body .btn:hover,
body .btn { font-size:100%; border-radius:5px; }
/* ------ */
body input, 
body select, 
body textarea, 
body input.form-control, 
body select.form-select, 
body textarea.form-textarea, 
body .input-group { padding:0.75rem 0.75rem; margin:0.25rem; 
border-color:var(--site-gris-clair);
}

/* ------ */
/* submit */
/*
body input[type="button"].btn,
body button[type="button"].btn { border-radius:50px !important; font-size:100% !important; border-width:2px !important; }
*/
body .btn.btn-submit,
body input[type="submit"].btn,
body button[type="submit"].btn,
body .btn.btn-submit:hover,
body input[type="submit"].btn:hover,
body button[type="submit"].btn:hover { border-radius:50px !important; font-size:120% !important; border-width:2px !important; }
/* ------ */
body table .btn.btn-submit,
body table input[type="submit"].btn,
body table button[type="submit"].btn,
body table .btn.btn-submit:hover,
body table input[type="submit"].btn:hover,
body table button[type="submit"].btn:hover { border-radius:50px !important; font-size:100% !important; border-width:2px !important; }

/* ------ */
/* BUTTON - INPUT / A btn */
body .btn, 
body a.btn { font-size:100%; -webkit-transition:all 0.5s; transition:all 0.5s; }
body .btn, 
body a.btn, 
body .btn:hover, 
body a.btn:hover { padding:0.75rem 0.5rem; border-width:1px !important; border-style:solid !important; }
/* --- */
body table .btn, 
body table a.btn, 
body table .btn:hover, 
body table a.btn:hover { padding:0.375rem 0.5rem; border-width:1px !important; border-style:solid !important; }
/* --- */
body .btn.border-0, 
body a.btn.border-0, 
body .btn.border-0:hover, 
body a.btn.border-0:hover { border-width:0 !important; }
/* --- */
/* .btn => .btn-outline-primary */ 
body .btn:not(.btn-outline-danger):not(.btn-outline-info), 
body a.btn:not(.btn-outline-danger):not(.btn-outline-info) {
  color:var(--bs-primary);
  border-color:var(--bs-primary);
  background-color:var(--bs-white);
}
body .btn:not(.btn-outline-danger):not(.btn-outline-info):hover, 
body a.btn:not(.btn-outline-danger):not(.btn-outline-info):hover {
  color:var(--bs-white);
  border-color:var(--bs-primary-hover);
  background-color:var(--bs-primary-hover);
}
body .btn-check:focus + .btn, 
body .btn:focus {
  box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
body .btn-check:checked + .btn, 
body .btn-check:active:not(:hover) + .btn, 
body .btn:active:not(:hover), 
body .btn.active:not(:hover), 
body .btn.dropdown-toggle.show {
  color:var(--bs-white);
  background-color:var(--bs-primary);
  border-color:var(--bs-primary);
}
body .btn-check:checked + .btn:focus, 
body .btn-check:active:not(:hover) + .btn:focus, 
body .btn:active:not(:hover):focus, 
body .btn.active:not(:hover):focus, 
body .btn.dropdown-toggle.show:focus {
  box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
body .btn:disabled, 
body .btn.disabled {
  color:var(--bs-primary);
  background-color:transparent;
}
/* ------ */
/* BUTTON ico size */
body .btn > i, 
body a.btn > i { display:inline-block; font-size:1.25rem;  margin-right:0.5rem; }
/* --- */


/* --- */
.btn:not(.btn-ico):hover .fi { color:var(--site-btn-col) !important; border-color:var(--site-btn-col) !important; background:var(--site-blanc) !important; }
/* --- */
.btn:not(.btn-ico).btn-secondary .fi,
.btn:not(.btn-ico).btn-outline-secondary .fi { color:var(--bs-secondary) !important; border-color:var(--bs-secondary) !important; border-color:transparent !important; }
.btn:not(.btn-ico).btn-secondary:hover .fi,
.btn:not(.btn-ico).btn-outline-secondary:hover .fi { color:var(--bs-secondary) !important; border-color:var(--bs-secondary) !important; }
/* --- */
.btn:not(.btn-ico).btn-success .fi,
.btn:not(.btn-ico).btn-outline-success .fi { color:var(--bs-success) !important; border-color:var(--bs-success) !important; border-color:transparent !important; }
.btn:not(.btn-ico).btn-success:hover .fi,
.btn:not(.btn-ico).btn-outline-success:hover .fi { color:var(--bs-success) !important; border-color:var(--bs-success) !important; }
/* --- */
.btn:not(.btn-ico).btn-danger .fi,
.btn:not(.btn-ico).btn-outline-danger .fi { color:var(--bs-danger) !important; border-color:var(--bs-danger) !important; border-color:transparent !important; }
.btn:not(.btn-ico).btn-danger:hover .fi,
.btn:not(.btn-ico).btn-outline-danger:hover .fi { color:var(--bs-danger) !important; border-color:var(--bs-danger) !important; }
/* --- */
.btn:not(.btn-ico).btn-warning .fi,
.btn:not(.btn-ico).btn-outline-warning .fi { color:var(--bs-warning) !important; border-color:var(--bs-warning) !important; border-color:transparent !important; }
.btn:not(.btn-ico).btn-warning:hover .fi,
.btn:not(.btn-ico).btn-outline-warning:hover .fi { color:var(--bs-warning) !important; border-color:var(--bs-warning) !important; }
/* --- */
.btn:not(.btn-ico).btn-info .fi,
.btn:not(.btn-ico).btn-outline-info .fi { color:var(--bs-info) !important; border-color:var(--bs-info) !important; border-color:transparent !important; }
.btn:not(.btn-ico).btn-info:hover .fi,
.btn:not(.btn-ico).btn-outline-info:hover .fi { color:var(--bs-info) !important; border-color:var(--bs-info) !important; }
/* --- */


/* ------ */
/* messages alert */
body .alert { position:relative; padding:1rem 3.0rem !important; }	/* avec icone */
body .alert .fi { position:absolute !important; font-size:1.25rem !important; line-height:1.25rem; top:50%; transform:translateY(-50%); left:0.75rem; }
body .alert.alert-no-ico { padding:1rem 2.0rem !important; }	/* sans icone */
@media screen and (max-width:575px) {
	body .alert { padding:1rem 0.75rem !important; }
	body .alert .fi { position:relative !important; display:block; font-size:1.25rem !important; width:1.25rem !important; height:1.25rem !important; top:0 !important; transform:unset !important; left:unset !important; margin:0 auto 1rem; }
	body .alert ul, 
	body .alert ol { padding-left:0.5rem !important; }
}
/* icon close msg err */
body .msgErr_close { position:absolute; display:block; width:1rem; height:1rem; top:0 !important; right:2px !important; z-index:1; cursor:pointer; }
body .msgErr_close .fi { position:absolute !important; display:block !important; width:1rem !important; height:1rem !important; font-size:1rem !important; left:0 !important; top:0 !important; transform:unset !important; }
body .mfp-wrap .msgErr_close { z-index:1099; } /* modal */
/* ------ */
/* form-nota */
body .form-nota { font-size:85%; font-style:italic; color:#ccc; }
body .LblVal > em.form_Nota { position:absolute; content:''; visibility:hidden; top:-40px; left:-5px; width:25%; min-width:150px; max-width:300px; margin-left:0; padding:5px 5px; opacity:0.9; z-index:900;
font-size:85%; color:var(--site-tpl-col-main) !important; text-align:center; border:1px solid var(--site-tpl-col-main) !important; background-color:var(--site-blanc) !important; }
body .LblVal:hover > em.form_Nota { visibility:visible; }
body .LblVal > em.form_Nota::before, 
body .LblVal > em.form_Nota::after { position:absolute; content:""; z-index:900; bottom:-7px; left:25px; margin-left:-8px;
/*triangle CSS*/ border-top:8px solid var(--site-blanc); border-left:8px solid transparent; border-right:8px solid transparent; border-bottom:0; }
body .LblVal > em.form_Nota::before { border-top-color:var(--site-tpl-col-main); bottom:-8px; }
/* ------ */

/* ------ */
/* radio, checkbox */
body input[type="checkbox"],
body input.checkboxInput, 
body input[type="radio"], 
body input.radioInput { clear:none; width:auto; display:inline-block; }
body label.checkboxLabel, 
body label.radioLabel { color:var(--site-tpl-col-texte); clear:none; display:inline-block; width:auto; font-size:100%; padding:unset; }

/* ------ */
/* input checkbox + radio personnalisés */
/* ------ */
/* Base for label styling */
body input[type="checkbox"]:not(:checked), 
body input[type="checkbox"]:checked { position:absolute; left:-9999px; }
body input[type="checkbox"]:not(:checked) + label, 
body input[type="checkbox"]:checked + label { position:relative; padding:1px 0.5rem 1px 38px !important; cursor:pointer; }
/* checkbox aspect */
body input[type="checkbox"]:not(:checked) + label::before, 
body input[type="checkbox"]:checked + label::before {
  position:absolute; display:block; content:""; width:24px; height:24px; left:0; top:50%; margin-top:-12px; line-height:24px; 
  border:1px solid #aaa; background:#f8f8f8; border-radius:3px; box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.2); }
/* checked mark aspect */
body input[type="checkbox"]:not(:checked) + label::after, 
body input[type="checkbox"]:checked + label::after {
  position:absolute; display:block; content:"✔"; width:24px; height:24px; left:0; top:50%; line-height:24px; margin-top:-16px; font-size:32px; font-weight:bold; color:#09ad7e; text-align:center; 
  -webkit-transition:all 0.2s; transition:all 0.2s;
}

/* checked mark aspect changes */
body input[type="checkbox"]:not(:checked) + label::after { opacity:0; -webkit-transform:scale(0); transform:scale(0); }
body input[type="checkbox"]:checked + label::after { opacity:1; -webkit-transform:scale(1); transform:scale(1); }
/* disabled checkbox */
body input[type="checkbox"]:disabled:not(:checked) + label::before, 
body input[type="checkbox"]:disabled:checked + label::before { box-shadow:none; border-color:#bbb; background-color:var(--site-gris-clair); }
body input[type="checkbox"]:disabled:checked + label::after { color:#999; }
body input[type="checkbox"]:disabled + label { color:#aaa; }
/* accessibility */
body input[type="checkbox"]:checked:focus + label::before, 
body input[type="checkbox"]:not(:checked):focus + label::before { border:1px dotted #ccc; }
/* ------ */
/* Base for label styling */
body input[type="radio"]:not(:checked), 
body input[type="radio"]:checked { position:absolute; left:-9999px; }
body input[type="radio"]:not(:checked) + label, 
body input[type="radio"]:checked + label { position:relative; padding:1px 0.5rem 1px 38px !important; cursor:pointer; }
/* radio aspect */
body input[type="radio"]:not(:checked) + label::before, 
body input[type="radio"]:checked + label::before {
  position:absolute; display:block; content:""; width:24px; height:24px; left:0; top:50%; margin-top:-12px; line-height:24px; 
  border:1px solid #aaa; background:#f8f8f8; border-radius:3px; box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.2); 
  border-radius:30px; 
}
/* checked mark aspect */
body input[type="radio"]:not(:checked) + label::after, 
body input[type="radio"]:checked + label::after { 
  position:absolute; display:block; content:"✔"; width:24px; height:24px; left:0; top:50%; line-height:24px; margin-top:-16px; font-size:32px; font-weight:bold; color:#09ad7e; text-align:center; 
  -webkit-transition:all 0.2s; transition:all 0.2s;
}
/* checked mark aspect changes */
body input[type="radio"]:not(:checked) + label::after { opacity:0; -webkit-transform:scale(0); transform:scale(0); }
body input[type="radio"]:checked + label::after { opacity:1; -webkit-transform:scale(1); transform:scale(1); }
/* disabled radio */
body input[type="radio"]:disabled:not(:checked) + label::before,
body input[type="radio"]:disabled:checked + label::before { box-shadow:none; border-color:#bbb; background-color:var(--site-gris-clair) !important; }
body input[type="radio"]:disabled:checked + label::after { color:#999; }
body input[type="radio"]:disabled + label { color:#aaa; }
/* accessibility */
body input[type="radio"]:checked:focus + label::before,
body input[type="radio"]:not(:checked):focus + label::before { border:1px dotted #ccc; }


/* ------ */
/* infobulles */
/* ------ */
body .jrTooltip { position:relative; cursor:help; box-sizing:border-box; }
body .jrTooltip > span:first-of-type { position:absolute; min-width:210px; padding:5px 10px; outline:none; text-decoration:none; z-index:9999999; border-radius:0.25rem; 
font-size:1rem !important; color:#222; background:var(--site-blanc) !important; border:1px solid rgba(0, 0, 0, 0.15); text-align:center; font-weight:normal; font-variant:normal; box-shadow:unset; text-shadow:unset; 
visibility:hidden; opacity:0; filter:alpha(opacity=0); -webkit-transition:all 0.5s; transition:all 0.5s; }
body .jrTooltip:hover { border:0; }
body .jrTooltip:hover > span:first-of-type { visibility:visible; opacity:1; filter:alpha(opacity=100); }
/* --- */
/* au dessus (fleche en bas) */
body .jrTooltip > span:first-of-type { bottom:calc(100% + 2rem); top:auto; left:0; right:auto; }
body .jrTooltip:hover { border:0; }
body .jrTooltip:hover > span:first-of-type { bottom:calc(100% + 1rem); }
/* --- */
/* fleche en bas */
body .jrTooltip > span:first-of-type::before, 
body .jrTooltip > span:first-of-type::after { position:absolute; content:""; z-index:99999; bottom:-7px; margin-left:-8px; left:75%; right:auto;
/*triangle CSS*/ width:0; height:0; border-style:solid; border-width:8px 6px 0 6px; border-color:var(--site-blanc) transparent transparent transparent; }
body .jrTooltip > span:first-of-type::before { border-top-color:rgba(0, 0, 0, 0.15); bottom:-9px; }
/* --- */
/* en dessous (fleche en haut) */
body .jrTooltip_T > span:first-of-type { bottom:auto; top:calc(100% + 2rem); }
body .jrTooltip_T:hover > span:first-of-type { bottom:auto; top:calc(100% + 1rem); }
/* fleche en haut */
body .jrTooltip_T > span:first-of-type::before, 
body .jrTooltip_T > span:first-of-type::after { position:absolute; content:""; z-index:99999; bottom:auto; 
/*triangle CSS*/ width:0; height:0; border-style:solid; border-width:0 6px 8px 6px; border-color:transparent transparent var(--site-blanc) transparent; }
body .jrTooltip_T > span:first-of-type::before { top:-9px; border-bottom-color:rgba(0, 0, 0, 0.15); bottom:auto; }
body .jrTooltip_T > span:first-of-type::after { top:-7px; }
/* --- */
/* fleche à droite */
body .jrTooltip_R > span:first-of-type { left:auto; right:0; }
body .jrTooltip_R > span:first-of-type::before, 
body .jrTooltip_R > span:first-of-type::after { left:auto; right:0.9rem; }
/* fleche à gauche */
body .jrTooltip_L > span:first-of-type { left:0; right:auto; }
body .jrTooltip_L > span:first-of-type::before, 
body .jrTooltip_L > span:first-of-type::after { left:0.9rem; right:auto; }
/* centré (fleche au centre) */
body .jrTooltip_C > span:first-of-type { left:50%; transform:translateX(-50%); right:auto; }
/* fleche au centre*/
body .jrTooltip_C > span:first-of-type::before, 
body .jrTooltip_C > span:first-of-type::after { left:50%; right:auto; }

/* ------ */
/* SCROLL TO TOP PAGE */
body #scrollToTop { position:fixed; content:''; bottom:0; right:0; cursor:pointer; z-index:999; }
body #scrollToTop > div { position:absolute; display:none; width:48px; height:48px; bottom:0.5rem; right:0.5rem; border-radius:100%; background:rgba(255,255,255,0.2); }
body #scrollToTop > div::after { position:absolute; content:''; top:50%; left:50%; transform:translate(-50%,-50%);
/*triangle CSS*/ width:0; height:0; border-style:solid; border-width:0 12px 16px 12px; border-color:transparent transparent var(--bs-secondary) transparent; 
-webkit-transition:all 0.5s; transition:all 0.5s; }
body #scrollToTop > div:hover { background:rgba(255,255,255,0.8); }
body #scrollToTop > div:hover::after { border-width:0 12px 24px 12px; top:calc(50% - 4px); border-color:transparent transparent var(--site-tpl-col-main); }

/* ------ */
/* COOKIES NOTICE */
body #cookieNoticeWrap { position:fixed; width:100%; left:0; right:0; top:0; background:var(--site-col-dark-opa-07); z-index:99999; }
body #cookieNoticeWrap > div.container { color:var(--site-main-col); background:var(--site-main-bkg); margin:2rem auto; }
/* ------ */
/* PHONE */
@media screen and (max-width:639px) {
	/* PHONE - marges reduites */
	body .template_liste_page_header,
	body .template_formuler_tabs,
	body #siteBloc_Formuler_All,
	body #siteBloc_Listing_ajax,
	body .siteBloc_Formuler_Box,
	body .card,
	body .card-header,
	body .card-body
	{ margin-left:0 !important; margin-right:0 !important; padding-left:0.5% !important; padding-right:0.5% !important; }
	body fieldset
	{ margin-left:0 !important; margin-right:0 !important; padding-left:1.5% !important; padding-right:1.5% !important; }
	/* PHONE - TABLE -> block */
	body table,
	body table thead,
	body table tbody,
	body table tfoot,
	body table tr,
	body table th,
	body table td
	{ display:block !important; width:100% !important; }
	
}

/* ------ */
