    :root {
      --fp-rose: #ed125f;
      --fp-violet: #c056d3;
      --fp-noir: #1d1d1b;
      --fp-gris: #5e5e5e;
      --fp-vertclair: #95ba21;
      --fp-vertanis: #fbbf6a;
      --fp-orangeclair: #c5d14d;
      --fp-orange: #f7941d;
      --fp-prune: #a60957;
      --fp-turqoise: #0080c8;
      --fp-vert: #7da42e;
      --fp-grisclair: #8c8c8c;
      --fp-input: #e3e3e3;
      --fp-danger: #ed272C;
    }

@font-face {
  font-family: 'francepassion';
  src: url('https://tools.france-passion.com/francepassion.woff2') format('woff2'),
       url('https://tools.france-passion.com/francepassion.woff') format('woff'),
       url('https://tools.france-passion.com/francepassion.ttf') format('truetype'),
       url('https://tools.france-passion.com/francepassion.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

/* France-Passion */


[class^="fa-fp-"], [class*=" fa-fp-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'francepassion' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


.fa-15x{
		font-size: 1.5em !important;
}
.fa-25x{
		font-size: 2.5em !important;
}
.fa-35x{
		font-size: 3.5em !important;
}
.fa-45x{
		font-size: 4.5em !important;
}

.fa-fp-accueil:before {
	font-family: 'francepassion' !important;
	content: "\e900";
}
.fa-fp-francepassion-thin:before {
	font-family: 'francepassion' !important;
	content: "\e901";
}
.fa-fp-francepassion:before {
	font-family: 'francepassion' !important;
	content: "\e926";
}
.fa-fp-campingcar:before {
	font-family: 'francepassion' !important;
	content: "\e902";
}
.fa-fp-accueillant:before {
	font-family: 'francepassion' !important;
	content: "\e903";
}
.fa-fp-faq:before {
	font-family: 'francepassion' !important;
	content: "\e904";
}
.fa-fp-langues:before {
	font-family: 'francepassion' !important;
	content: "\e905";
}
.fa-fp-recherche:before {
	font-family: 'francepassion' !important;
	content: "\e906";
}
.fa-fp-utilisateur:before {
	font-family: 'francepassion' !important;
	content: "\e907";
}
.fa-fp-autre:before {
	font-family: 'francepassion' !important;
	content: "\e908";
}
.fa-fp-vigneron:before {
	font-family: 'francepassion' !important;
	content: "\e909";
}
.fa-fp-fermier:before {
	font-family: 'francepassion' !important;
	content: "\e90a";
}
.fa-fp-fermier2:before {
	font-family: 'francepassion' !important;
	content: "\e90b";
}
.fa-fp-chevron-bas:before {
	font-family: 'francepassion' !important;
	content: "\e90c";
}
.fa-fp-repas:before	{
	font-family: 'francepassion' !important;
	content: "\e90d";
}
.fa-fp-reservation:before, .fa-fp-icon22:before	{
	font-family: 'francepassion' !important;
	content: "\e90e";
}
.fa-fp-bio:before {
	font-family: 'francepassion' !important;
	content: "\e90f";
}
.fa-fp-gcc:before {
	font-family: 'francepassion' !important;
	content: "\e910";
}
.fa-fp-soleil:before {
	font-family: 'francepassion' !important;
	content: "\e911";
}
.fa-fp-eau:before, .fa-fp-icon17:before {
	font-family: 'francepassion' !important;
	content: "\e912";
}
.fa-fp-wc:before, .fa-fp-icon19:before {
	font-family: 'francepassion' !important;
	content: "\e913";
}
.fa-fp-poubelle:before, .fa-fp-icon18:before {
	font-family: 'francepassion' !important;
	content: "\e914";
}
.fa-fp-alerte:before {
	font-family: 'francepassion' !important;
	content: "\e915";
}
.fa-fp-telephone:before {
	font-family: 'francepassion' !important;
	content: "\e916";
}
.fa-fp-lien:before {
	font-family: 'francepassion' !important;
	content: "\e917";
}
.fa-fp-marqueur:before {
	font-family: 'francepassion' !important;
	content: "\e918";
}
.fa-fp-arbre:before, .fa-fp-icon16:before {
	font-family: 'francepassion' !important;
	content: "\e919";
}
.fa-fp-panier:before {
	font-family: 'francepassion' !important;
	content: "\e91a";
}
.fa-fp-photo:before {
	font-family: 'francepassion' !important;
	content: "\e91b";
}
.fa-fp-stages:before {
	font-family: 'francepassion' !important;
	content: "\e955";
}
.fa-fp-heure:before {
	font-family: 'francepassion' !important;
	content: "\e91c";
}
.fa-fp-calendrier:before {
	font-family: 'francepassion' !important;
	content: "\e91d";
}
.fa-fp-carte:before {
	font-family: 'francepassion' !important;
	content: "\e91e";
}
.fa-fp-croix:before {
	font-family: 'francepassion' !important;
	content: "\e91f";
}
.fa-fp-carte-plus:before, .fa-map-add:before {
	font-family: 'francepassion' !important;
	content: "\e920";
}
.fa-fp-check:before {
	font-family: 'francepassion' !important;
	content: "\e921";
}
.fa-fp-check-mini:before {
	font-family: 'francepassion' !important;
	content: "\e922";
}
.fa-fp-utilisateur-croix:before {
	font-family: 'francepassion' !important;
	content: "\e923";
}
.fa-fp-megaphone:before {
	font-family: 'francepassion' !important;
	content: "\e924";
}
.fa-fp-calendrier-check:before {
	font-family: 'francepassion' !important;
	content: "\e925";
}
.fa-fp-gps:before {
	font-family: 'francepassion' !important;
	content: "\e927";
}
.fa-fp-gps2:before {
	font-family: 'francepassion' !important;
	content: "\e935";
}
.fa-fp-warning:before {
	font-family: 'francepassion' !important;
	content: "\e928";
}
.fa-fp-info:before {
	font-family: 'francepassion' !important;
	content: "\e929";
}

.fa-fp-prive:before {
	font-family: 'francepassion' !important;
	content: "\e952";
}
.fa-fp-refuse:before {
	font-family: 'francepassion' !important;
	content: "\e953";
}

.fa-fp-euro:before {
	font-family: 'francepassion' !important;
	content: "\e954";
}




.fa-fp-p1:before {
	font-family: 'francepassion' !important;
	content: "\e92a";
}

.fa-fp-p2:before {
	font-family: 'francepassion' !important;
	content: "\e92d";
}
.fa-fp-p3:before {
	font-family: 'francepassion' !important;
	content: "\e930";
}
.fa-fp-p4:before {
	font-family: 'francepassion' !important;
	content: "\e933";
}
.fa-fp-p5:before {
	font-family: 'francepassion' !important;
	content: "\e936";
}


.fa-fp-handicap:before {
	font-family: 'francepassion' !important;
	content: "\e939";
}

.fa-fp-vi:before, .fa-fp-icon6:before {
	font-family: 'francepassion' !important;
	content: "\e951";
	color:#912436;
}

.fa-fp-baf:before {
	font-family: 'francepassion' !important;
	content: "\e93b";
}

.fa-fp-appel-fiche:before {
	font-family: 'francepassion' !important;
	content: "\e956";
}
.fa-fp-gcc2:before {
	font-family: 'francepassion' !important;
	content: "\e957";
}
.fa-fp-handicap2:before {
	font-family: 'francepassion' !important;
	content: "\e958";
}
.fa-fp-paiement-off:before {
	font-family: 'francepassion' !important;
	content: "\e959";
}
.fa-fp-paiement-on:before {
	font-family: 'francepassion' !important;
	content: "\e95b";
}

.fa-fp-animaux-admis:before  {
	font-family: 'francepassion' !important;
	content: "\e95d";
}
.fa-fp-chien-admis:before, .fa-fp-animaux-en-laisse:before  {
	font-family: 'francepassion' !important;
	content: "\e95f";
}
.fa-fp-chien-non-admis:before, .fa-fp-animaux-non-admis:before {
	font-family: 'francepassion' !important;
	content: "\e95e";
}

.fa-fp-etape-fermee:before, .fa-fp-croix:before  {
	content: "\e960";   
	font-family: 'francepassion' !important; 
}
.fa-fp-repas2:before , .fa-fp-icon21:before {
  content: "\e962";
}
.fa-fp-panier2:before, .fa-fp-icon57:before {
  content: "\e963";
}

.fa-fp-etape-fermee2:before  {
	content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    background-image: url(/contents/images/icones-app/etape-fermee-01.svg);
    background-size: cover;
}

.fa-fp-www:before {
	font-family: 'francepassion' !important;
	content: "\f002";
}
.fa-fp-edit:before {
	font-family: 'francepassion' !important;
	content: "\f003";
}

/* GLOBAL */

    *, *::before, *::after { box-sizing: border-box; }
    body { font-family: 'Inter', sans-serif;  background: url(https://www.france-passion.com/resources/FP/upload/fond-site.png); color: var(--fp-gris); margin: 0; }
    body:before {width: 100%; height: 100%; content: ""; background: rgba(0,0,0,0.06);display: block;position: fixed;}
    .fp-topbar {padding: 14px 28px; font-size: 18px; position: relative; z-index: 1}
    .fp-topbar .col-sm-6 {flex-direction: row;  display: flex;  align-items: center;  justify-content: center;  gap: 20px;}
    .fp-topbar h1 { font-size: 25px; font-weight: 600; color: var(--fp-gris); margin: 0; }
    .fp-topbar .sub { font-size: 12px; color: var(--fp-gris); margin-top: 1px; }
    .fp-wrap, .fp-actions, .fp-tabs  { max-width: 100%; width:1440px; margin: 0 auto; padding: 20px; }
    .fp-wrap > .row {position: relative; z-index: 1}
.text-rose {color: var(--fp-rose) !important;}
.text-rouge {color: var(--fp-danger);}
.text-right {float: right; text-align: right}
.small-text {font-size: 70%}
.medium-text {font-size: 85%}
.fp-help {padding: 20px 10px;    position: sticky;    top: 20px;    align-self: flex-start;}
.sousdescription, em {font-style: normal;font-size: 14px; color: var(--fp-grisclair)}
.char-count {float: right; text-align: right;}
.step-global {width: 100%;}
.big-icone {font-size: 24px}
.bloc-rose {background: #fff; padding: 15px; border-radius: 10px; border: 3px dashed var(--fp-rose); font-size:14px}
.style_img {border-radius: 5px; overflow: hidden; box-shadow: 0 0 5px rgba(0,0,0,.2);}

/* TABS */
    .fp-tabs, .fp-actions {
      display: flex; background: #fff; border-radius: 15px; padding: 15px;
      box-shadow: 0 1px 3px rgba(0,0,0,.06); margin-bottom: 20px;
      justify-content: space-between;z-index: 1;
      overflow-x: auto;
    }
    .fp-tab {
      padding: 8px 16px; border-radius: 10px; font-size: 13px; font-weight: 600;
      cursor: pointer; border: none; background: transparent; transition: all .15s;
    }
    .fp-tab.active {  }
    .fp-tab:hover:not(.active) {  }
    .fp-panel { display: none; }
    .fp-panel.active { display: flex; height: 100%;background: rgba(0,0,0,0.06);border-radius: 14px;}
		.fp-tabs span { display: inline-block; background: var(--fp-input); font: 600 2em/2em 'Inter', sans-serif;
		color: var(--fp-gris); padding: 0px 15px; width: 50px; height: 50px; border-radius: 30px}
		.fp-tab {display: flex;height: 60px;align-items: center; }
		.fp-tab .tabNom {display: flex; flex-direction: column; align-items: flex-start;margin-left: 10px; color: var(--fp-gris)}
		.fp-tab i {font-size: 24px}
		.fp-tab.active.tab1 .tabNom, .step-global.step1 h2, .step-global.step1 .step-body h3 {color: var(--fp-vert)}
		.fp-tab.active.tab1 span, .step-global.step1 .step-header i {background: var(--fp-vert); color: #fff}
		.fp-tab.active.tab2 .tabNom, .step-global.step2 h2, .step-global.step2 .step-body h3 {color: var(--fp-turqoise)}
		.fp-tab.active.tab2 span, .step-global.step2 .step-header i {background: var(--fp-turqoise); color: #fff}
		.fp-tab.active.tab3 .tabNom, .step-global.step3 h2, .step-global.step3 .step-body h3 {color: var(--fp-prune)}
		.fp-tab.active.tab3 span, .step-global.step3 .step-header i {background: var(--fp-prune); color: #fff}
		.fp-tab.active.tab4 .tabNom, .step-global.step4 h2, .step-global.step4 .step-body h3 {color: var(--fp-orange)}
		.fp-tab.active.tab4 span, .step-global.step4 .step-header i {background: var(--fp-orange); color: #fff}
		.fp-tab.active.tab5 .tabNom, .step-global.step5 h2, .step-global.step5 .step-body h3 {color: var(--fp-orangeclair)}
		.fp-tab.active.tab5 span, .step-global.step5 .step-header i {background: var(--fp-orangeclair); color: #fff}
		.fp-tab.active.tab6 .tabNom, .step-global.step6 h2, .step-global.step6 .step-body h3 {color: var(--fp-violet)}
		.fp-tab.active.tab6 span, .step-global.step6 .step-header i {background: var(--fp-violet); color: #fff}
		.fp-tab.active.tab7 .tabNom, .step-global.step7 h2, .step-global.step7 .step-body h3 {color: var(--fp-vertclair)}
		.fp-tab.active.tab7 span, .step-global.step7 .step-header i {background: var(--fp-vertclair); color: #fff}
    

/* CONTENT */

      .content-wrap {display: flex; background: #fff; border-radius: 14px; padding: 0px;
      box-shadow: 0 1px 3px rgba(0,0,0,.06); margin-bottom: 20px;
      justify-content: space-between;margin-left:0; margin-right: 0; margin-bottom: 100px}
      #createForm, #editForm, #renouvForm {padding: 0}
      .step-global .step-header {padding: 20px; border-radius: 15px 15px 0 0;}
      .step-global .step-header i {min-width: 60px; height: 60px; border-radius: 30px; margin-right: 15px; font-size: 30px; text-align: center; color:#fff;display: block;position: relative;line-height: 2em;}
      .step-global .step-body {padding: 20px; /*! background: rgba(0,0,0,0.06); */ border-radius: 0 0 15px 15px}

/* FORMS */   

    .form-control, .form-select, .multi-select-header {  border-radius: 5px;color: var(--fp-gris); font-size: 13px;  background: var(--fp-input);  
      padding: 8px 12px; transition: all .15s}
      .form-select  {  -webkit-appearance: searchfield;  appearance: searchfield;  -moz-appearance: searchfield;}
    .form-control:focus, .form-select:focus {      border-color: var(--fp-vert); box-shadow: 0 0 0 3px rgba(82,183,136,.15);    }
    label { font-size: 15px; /*! font-weight: 700; */ color: var(--fp-gris);letter-spacing: .5px; margin-bottom: 3px !important; display: block; }
    .form-check-input, .radio-group input {background-color: var(--fp-input); border: 1px solid var(--fp-grisclair) }
    .form-check-input {min-width: 16px !important;}
    .form-check-input:focus {  border-color: var(--fp-vert);  outline: 0;box-shadow: 0 0 0 3px rgba(82,183,136,.15);}
    .form-check-input:checked {  background-color: var(--fp-vert);  border-color: var(--fp-vert);}
    .form-check-input:checked[type="checkbox"] {  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");}
    .form-check-label, .radio-group label {display: inline-block; margin-left: 5px}
     ::placeholder {  opacity: 0.3 !important;  }
	   .radio-group label {font-size: 15px}
    .radio-group{    display:flex;    gap:20px;    align-items:center;}
    .radio-group label{    display:flex;    align-items:center;    gap:8px;    cursor:pointer;    font-weight:400;}
    .radio-group input[type="radio"]{    accent-color: var(--fp-vert);    width:18px;    height:18px;    cursor:pointer;}
.field-error {    border: 2px solid #dc3545 !important;}
.smallinput {max-width: 50px; max-height: 30px;  margin-top: -3px;padding: 5px}
.smallinput#nb_places_cc {max-width: 60px;font-size: 16px}
.btn-remove-date {border: none; background: #fff; border-radius: 30px; box-shadow: 0 0 10px rgba(0,0,0,0.2);margin-right: 10px; color: var(--fp-gris) }

/* BAS */
    
    .fp-actions {
      display: flex; align-items: center; justify-content: space-between;
      padding: 16px 20px; background: #fff; border-radius: 14px 14px 0 0; 
      border: 1px solid var(--fp-100); box-shadow: 0 1px 3px rgba(0,0,0,.05);
      margin: 0px; gap: 12px; flex-wrap: wrap;
			position: fixed; bottom: 0; width: 1400px; 
      max-width: 95%;
      /*! margin: 0 auto; */
    }
    .fp-actions:before {background: url(images/visuel-bas.png) no-repeat;content: ""; display: block; width: 116px; height: 50px;background-size: auto 100%;}
    .btn-fp-primary {text-align: left; text-decoration: none;
      display: inline-flex; align-items: center; gap: 15px;line-height: 1em;
      padding: 10px 22px; border-radius: 10px; font-size: 16px; font-weight: 700;
      background: var(--fp-vert); color: #fff; border: none; cursor: pointer; transition: background .15s;
z-index: 9;
position: relative;
    }
    .btn-fp-primary:hover { background: var(--fp-gris);color: #fff; }
    .btn-fp-secondary {text-align: left;
      display: inline-flex; align-items: center; gap: 15px;line-height: 1em;
      padding: 10px 18px; border-radius: 10px; font-size: 16px; font-weight: 600;
      background: var(--fp-input); color: var(--fp-gris); border: none;
      cursor: pointer; transition: background .15s; text-decoration: none;
    }
    .btn-fp-secondary:hover { background: var(--fp-gris); color: #fff; }
.btn-fp-primary span,.btn-fp-secondary span {display: block; text-align: left; font-weight: 400; font-size: 90%}
    .form-check-label { font-size: 15px; color: var(--fp-gris); text-transform: none;
      letter-spacing: 0; font-weight: 400; display: inline; }
    .btn-primary { background: var(--fp-vert); border-color: var(--fp-grisclair); }
    .btn-primary:hover { background: var(--fp-gris); border-color: var(--fp-gris); color: #fff; }
    .btn-success { background: var(--fp-vert); border-color: var(--fp-vert);color: #fff }
    .btn-success:hover { background: var(--fp-gris); border-color: var(--fp-gris);color: #fff  }
    .card { border-radius: 14px; border: 1px solid var(--fp-input); box-shadow: 0 1px 3px rgba(0,0,0,.05); }
    .card-header { font-weight: 700; color: var(--fp-input)!important; }
    .card-header.bg-primary { background: var(--fp-input) !important; }
    .card-header.bg-primary h1, .card-header.bg-primary h2,
    .card-header.bg-primary h3, .card-header.bg-primary h4,
    .card-header.bg-primary h5, .card-header.bg-primary h6 { color: #fff; }
    h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { color: var(--fp-gris); }
	.vertText {color: var(--fp-vert)}
	.buttons-footer {display: flex; gap: 10px; flex-wrap: wrap;/*! flex-direction: row; */}

/* PHOTO BLOC */  
.photo_bloc {width: 18%; margin: 1%; text-align: center; font-size: 14px; color: var(--fp-gris); padding: 5px 15px 0}
.renouv #uploaded_couv > div {width: 100% !important}
.renouv #uploaded_couv .form-check {display: flex}

/* FICHE MODEL */

.fiche-exemple {border: 1px solid var(--fp-grisclair)}
.content-wrap > .col-sm-4 .fp-help {
    position: sticky;
    top: 20px;
    align-self: flex-start;
}
.card-image {min-height: 200px;max-height: 315px; overflow:hidden; background: url(https://tools.france-passion.com/image-default-fiche.jpg)}
.card-image img{
    display:block;
    width:100%;
    height:auto;
}

.location-bar{
    background:#48a531;
    color:#fff;
    display:flex;
    justify-content:space-between;
    padding:6px 10px;
    font-size:17px;
    font-weight:bold;
}
.location-bar span:nth-child(1) {
    max-width: 50%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.content{
    padding:12px;
}
.content, .infos{
	font-size: 15px
}

.title-row{
    display:flex;
    align-items:end;
    gap:5px;
}
.year{
    background:var(--fp-vert);
    color:#fff;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    padding:7px 4px;
    font-size:10px;
    font-weight:bold;
}

.title h2{
    font-size:18px;
    font-weight:400;
    color:#222;
	  
    margin-bottom: 0;
}

.title h1{
    font-size:18px;
    color:#1976d2;
    font-weight:bold;
}

.infos{
    margin-top:12px;
    font-size:15px;
}

.phone{
    color:var(--fp-danger);
    font-weight:bold;
    float:right;
}

.arrival{
    margin-top:8px;
    color:var(--fp-danger);
    font-style:italic;
}

.visit{
    margin-top:4px;
    color:#1976d2;
}

.content p{
    margin-top:14px;
    line-height:1.5;
    font-size:14px;
}

.footer{
    display:flex;
    gap:12px;
    align-items:flex-start;
    border-top:1px solid #ddd;
    padding:12px;
    background:#fafafa;
}

.rating{
    width:90px;
    color:var(--fp-orange);
    font-weight:bold;
    font-size:14px;
}

.description{
    flex:1;
    font-size:14px;
    line-height:1.4;
}
  .icones {font-size: 15px;display: flex;align-items: center;gap: 5px;}
  .icones i {font-size: 26px; }  
  .fiche-exemple .title-row .icones {display: flex;}
.fiche-exemple .title-row .icones i { font-size: 39px;  }

/* STEPLINE */

.fp-stepline{
    display:flex;
    align-items:center;
    /*! gap:25px; */
}

.fp-step-info{
    font-weight:700;
    color:var(--fp-vert);
    white-space:nowrap;
    margin-right: 10px;
}

.fp-progress{
    flex:1;
    height:10px;
    background:var(--fp-input);
    border-radius:20px;
    overflow:hidden;
	width: 300px	
}

#step-progress{
    width:14.285%;
    height:100%;
    background:var(--fp-vert);
    border-radius:20px;
    transition:width .35s ease;
}

.char-count.limit {
    color: var(--fp-danger) !important;
}

.char-count.limit strong {
    color: var(--fp-danger) !important;
}
.steps {max-width: 100%;}

/* CHAMPS PERIODE ETAPE 6 */

.date-range {
  max-width: 420px;
  font-family: Arial, sans-serif;
}

.date-range label {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
  color: #222;
}

.date-box {
  display: flex;
  align-items: center;
  border: 1px solid #dcdcdc;
  border-radius: 12px;
  overflow: hidden;
  background: var(--fp-input);
  /*! box-shadow: 0 4px 14px rgba(0,0,0,0.08); */
  color: var(--fp-gris);
  margin: 10px 0;
}

.date-box > div {
  flex: 1;
  padding: 12px 16px;
}

.date-box span {
  display: inline;
  font-size: 12px;
  color: #777;
  margin-bottom: 4px;
}

.date-box input {
  /*! width: 60%; */
  border: none;
  outline: none;
  font-size: 15px;
  background: transparent;
  cursor: pointer;
  color: var(--fp-gris);
  float: right;
}

.separator {
  flex: none !important;
  width: 1px;
  height: 42px;
  padding: 0 !important;
  background: var(--fp-grisclair);
}

.big-icone {font-size: 50px}

#btn-fiche-mobile, .btn-close-fiche {
  display: none;
}

.multi-select-help{
    display:inline-flex;
    align-items:center;
    margin-left:6px;
    cursor:pointer;
    color:#9d2449;
    font-size:1rem;
    transition:.2s;
}

.multi-select-help:hover{
    color:#c73763;
    transform:scale(1.1);
}
.modal {
    z-index: 1060 !important;
}

.modal-backdrop {
    z-index: 1050 !important;
}

.modal-content {
    position: relative;
    z-index: 1061;
}




/* PÉRIODES DE FERMETURE — ajout manuel et champ entièrement cliquable */
.date-field {
  position: relative;
  cursor: pointer;
}

.date-field:hover {
  background: rgba(255, 255, 255, 0.35);
}

.date-field input[type="date"] {
  width: calc(100% - 24px);
  min-height: 32px;
  cursor: pointer;
}

/* Étend la zone native de clic du calendrier sur tout l'input. */
.date-field input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0;
}

.btn-add-date,
.btn-remove-date {
  flex: 0 0 38px !important;
  width: 38px !important;
  min-width: 38px;
  height: 38px;
  margin: 0 8px 0 0;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: #fff;
  color: var(--fp-gris);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.18);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.btn-add-date {
  color: var(--fp-vert);
  font-size: 18px;
}

.btn-add-date:hover,
.btn-remove-date:hover {
  background: var(--fp-gris);
  color: #fff;
}

.btn-add-date.d-none {
  display: none !important;
}

.multi-select {
    position: relative;
    width: 100%;
    min-width: 0;
    font-size: 14px;
}

.multi-select-header {
    width: 100%;
    min-height: 42px;
    border: 1px solid #ced4da;
    border-radius: 5px;
    padding: 6px 38px 6px 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    text-align: left;
    color: var(--fp-gris);
    background: var(--fp-input);
    transition: border-color .15s, box-shadow .15s, background .15s;
}

.multi-select-header:hover,
.multi-select.open .multi-select-header {
    border-color: var(--fp-vert);
    background: #fff;
}

.multi-select.open .multi-select-header {
    box-shadow: 0 0 0 3px rgba(82, 183, 136, .15);
}

.multi-select-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.multi-select-placeholder {
    color: var(--fp-grisclair);
    font-size: 13px;
    font-weight: 400;
}

.multi-select-arrow {
    position: absolute;
    right: 13px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--fp-gris);
    border-bottom: 2px solid var(--fp-gris);
    transform: translateY(-70%) rotate(45deg);
    transition: transform .15s;
}

.multi-select.open .multi-select-arrow {
    transform: translateY(-30%) rotate(225deg);
}

.multi-tag {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    background: var(--fp-vert);
    color: #fff;
    border-radius: 999px;
    padding: 4px 5px 4px 10px;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 600;
}

.multi-tag-remove {
    width: 22px;
    height: 22px;
    margin-left: 5px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, .2);
    color: #fff;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}

.multi-tag-remove:hover,
.multi-tag-remove:focus {
    background: rgba(255, 255, 255, .38);
    outline: none;
}

.multi-select-dropdown {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 5px);
    background: #fff;
    border: 1px solid #ced4da;
    border-radius: 6px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .16);
    max-height: 300px;
    overflow-y: auto;
    z-index: 1050;
}

.multi-select.open .multi-select-dropdown {
    display: block;
}

.multi-select-options {
    padding: 5px 0;
}

.multi-option {
    width: 100%;
    padding: 9px 12px;
    border: 0;
    display: flex;
    align-items: center;
    text-align: left;
    background: #fff;
    color: var(--fp-gris);
    font-size: 13px;
    cursor: pointer;
}

.multi-option:hover,
.multi-option:focus {
    background: #f2f6e7;
    outline: none;
}

.multi-option.selected {
    background: rgba(0, 128, 200, .1);
    color: var(--fp-turqoise);
    font-weight: 700;
}

.multi-option.selected::after {
    content: "✓";
    margin-left: auto;
    color: var(--fp-turqoise);
    font-weight: 800;
}

.multi-option.disabled {
    color: #aaa;
    background: #f7f7f7;
    cursor: not-allowed;
}

.multi-select-native {
    display: none !important;
}

#typerestoselect {max-width: 300px}
.precisezLabel {    align-items: center;    min-width: 90px;    display: flex;}
.precisezLabel2choix {min-width: 200px}
.labelGrisClair {color: var(--fp-grisclair)}


/* RENOUV */

.edit .renouvNEW, .create .renouvNEW, .edit .renouvNew, .create .renouvNew {display: none}
.renouv .renouvHide {display: none !important}
.renouvLabel {background: var(--fp-vertanis)}
.edit .renouvLabel, .create .renouvLabel {background: none !important}
.renouv #renouv_photos, .renouv #renouv_photos_info {display: none}

/* MEDIA QUERIES */

@media (max-width: 1200px) {
  .photo_bloc {width: 31%; margin: 1%; text-align: center; font-size: 14px; color: var(--fp-gris); padding: 5px 15px 0}
}


@media (max-width: 768px) {
	button {/*! display: block !important; */width: 100%}
	.fp-actions::before, .steps .text-muted, .fp-actions #step-label {display: none}
	.fp-actions {max-width: 100%; left: 0; padding: 20px; z-index: 9999;}
	.fp-stepline {display: block; width: 100%;}
	.fp-progress, .steps {max-width: 100%; width: 100%;}
    .buttons-footer {width: 100%;}
     .fp-topbar > div {width: 100%; text-align: center;}
	.content-wrap {margin-bottom: 220px}
}
@media (max-width: 767px) {
  #btn-fiche-mobile {
    display: block !important;
    position: fixed;
    right: 0;
    top: 45%;
    z-index: 9998;
    width: auto !important;
    transform: translateY(-50%);
    writing-mode: vertical-rl;
    background: #e6004c;
    color: #fff;
    border: 0;
    padding: 14px 8px;
    border-radius: 10px 0 0 10px;
    font-weight: 700;
  }

  #fiche-global {
    position: fixed !important;
    top: 50%;
    left: 50%;
    width: calc(100vw - 30px) !important;
    max-height: 90vh;
    overflow-y: auto;
    z-index: 9999;
    transform: translate(100vw, -50%) !important;
    transition: transform 0.35s ease;
    background: #fff;
    padding: 15px;
    border-radius: 18px;
    box-shadow: 0 10px 35px rgba(0,0,0,0.25);
  }

  #fiche-global.is-open {
    transform: translate(-50%, -50%) !important;
  }

  #fiche-global .btn-close-fiche {
    position: sticky;
    top: 0;
    margin-left: auto;
    display: flex;
    width: 38px !important;
    height: 38px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: #e6004c;
    color: #fff;
    font-size: 22px;
    z-index: 2;
  }
}

@media (max-width: 480px) {
  .photo_bloc {width: 100%; margin: 10px 0; text-align: center; font-size: 14px; color: var(--fp-gris); padding: 5px 15px 0}
	.date-box > div {width: 100%;}
	.date-box .separator {display: none !important; }
	.date-box {flex-direction: column}
  .btn-add-date,.btn-remove-date {    position: absolute;    right: 25px;    margin-top: 35px;}
  .btn-add-date {  right: 75px;}
}


