.gfp-commercial-desc{
    text-align: justify;        /* justification */
    line-height: 1.6;
    margin-top: 12px;
    font-size: 12px;
}

/* Description annonce */
.gfp-description{
    text-align: justify;
    color: #787878;
    line-height: 1.6;
    font-size: 1rem;          /* adapte au besoin */
    margin: 0;
}

.gfp-description p{
    margin-bottom: 1em;       /* espace entre paragraphes */
}

.hidden { display:none !important; }

/* assets/css/offmarket.css */
.gfp-accordion .accordion-content {
	display: none;
	padding: 1em 0;
}

.gfp-accordion .accordion-item.active .accordion-content {
	display: block;
}

.gfp-accordion {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.accordion-title {
    display: flex;
    justify-content: start;
    align-items: center;
    width: 100%;
    font-size: 1.1em;
    padding: 10px 15px;
    background: transparent !important;
    color: #00506B !important;
    font-weight: 800 !important;
    gap: 12px;
    border-width: 0px 0px 2px 0px !important;
    border-color: var(--e-global-color-e666a95);
    border-radius: 0px !important;
}
.accordion-title:hover {
    color: #0088B5 !important;
}

.accordion-icon {
	font-weight: bold;
	transition: transform 0.2s ease;
}

.accordion-item.active .accordion-icon {
	content: "-";
}

.accordion-content {
    text-align: justify;
}

.gfp-gallery-first4.images-vitrines {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

.gfp-gallery-first4 img {
    width: 180px !important;
    height: 120px !important;
    object-fit: cover !important;
}

/* Dropdown multi-check “gfp-multi-dd” */
/* Masque toujours la liste */
.gfp-dd-options        {display:none!important;}

/* …sauf quand on a cliqué : */
.open .gfp-dd-options   {display:block!important;}

 .gfp-dd-toggle{
    width:100%;text-align:left;cursor:pointer;
}
.gfp-dd-options{
    position:absolute;left:0;right:0;top:100%;
    max-height:220px;overflow:auto;
    background:#fff;border:1px solid #ccc;
    box-shadow:0 2px 6px rgba(0,0,0,.12);
    padding:6px 8px;z-index:9;
}
.gfp-dd-options label{
    display:block;margin:3px 0;
}



/* ───────── Search barre ───────── */
/*──────────  Structure générale  ──────────*/
.gfp-search-wrapper           { width:max-content;margin:0 auto }
.gfp-row                      { display:flex;flex-wrap:wrap;gap:32px; justify-content:start; align-items:start; }
.gfp-row-2                    {     margin-top: 24px;
    justify-content: center; }

.gfp-search-field             { position:relative;display:flex;align-items:center;gap:6px }
.gfp-search-field input       { padding:6px 10px;border:1px solid #ccc;border-radius:4px;font:14px/1.4 sans-serif }

/*──────────  Localisation  ──────────*/
.gfp-loc-wrapper              {     flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 200px;
    justify-content: start;
    align-items: start; }
.loc-x                        { margin-left:6px;font-weight:bold;cursor:pointer; font-size:24px !important; }
.gfp-loc-tags{
  display:grid;               /* ⇐ au lieu de flex */
  grid-template-columns:repeat(1,1fr);  /* 2 colonnes */
  gap:6px;
  margin:4px 0 0;
  padding:0;
  list-style:none;
}

button.gfp-btn.gfp-btn-submit {
    background: #F6F6F6 !important;
    border: none !important;
    color: #474747 !important;
}

/* chaque chip s’étire automatiquement dans sa cellule */
.loc-item{
  display:flex;align-items:center;justify-content:center;
  background:#00BFFF;color: #F6F6F6;padding:4px 8px;border-radius:12px;
  font-size:13px;user-select:none;cursor:pointer;
}
.gfp-autocomplete             { position:absolute;top:100%;left:0;z-index:999;
                                width:100%;max-height:220px;overflow-y:auto;
                                background:#fff;border:1px solid #ccc;border-radius:4px;list-style:none }
.gfp-autocomplete.hidden      { display:none }
.gfp-autocomplete li          { padding:6px 10px;cursor:pointer;font-size:14px }
.gfp-autocomplete li:hover    { background:#f0f0f0 }
#gfp-loc-input, #gfp-budget, #gfp-pieces {
    border-width: 0 0 1px 0 !important;
    border-radius: 0px;border: solid #F6F6F6;
    font-weight: 600 !important;
    font-family: 'Montserrat';
    background: transparent;
    box-shadow: none !important;
    color: #F6F6F6 !important;
    font-size: 16px;
}

#gfp-loc-input::placeholder, #gfp-pieces::placeholder, #gfp-budget::placeholder, #gfp-type-field::placeholder, #gfp-defisc-field::placeholder {
    color: #F6F6F6 !important;
    font-size: 16px;
}

.gfp-search-field input:focus {
    outline: none !important;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Chrome, Safari, Edge */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}


ul#gfp-loc-suggest {
    margin: 0px !important;
}
/*──────────  Type de bien  ──────────*/
.gfp-type-wrapper, div#gfp-defiscalisation-wrapper             { min-width:180px; border-width: 0 0 1px 0 !important;
    border-radius: 0px;border: solid #F6F6F6; color: #F6F6F6 !important;
    font-weight: 600 !important;
    font-family: 'Montserrat';}
#gfp-type-field {
    background: transparent;
    border: none !important;
    color: #F6F6F6 !important;
    font-weight: 600 !important;
    font-family: 'Montserrat';
    cursor: pointer;
    box-shadow: none !important;
    font-size: 16px;
    width: fit-content !important;
}

#gfp-defisc-field {
    background: transparent;
    border: none !important;
    color: #F6F6F6 !important;
    font-weight: 500 !important;
    font-family: 'Montserrat';
    cursor: pointer;
    box-shadow: none !important;
    font-size: 14px!important;
    width: fit-content !important;
}
#gfp-type-toggle, #gfp-defisc-toggle              { cursor:pointer;font-size:20px;user-select:none;transition:transform .2s }
.gfp-type-panel               { position:absolute;top:100%;left:0;z-index:999;
                                background:#F6F6F6;border:1px solid #ccc;border-radius:8px;
                                max-height:220px;overflow-y:auto;padding:6px 10px }
.gfp-type-panel.hidden        { display:none }
.gfp-type-panel label         { display:block;font-size:14px;cursor:pointer;white-space:nowrap;font-family: 'Montserrat';font-weight:600;}

/*──────────  Boutons  ──────────*/
.gfp-btn                      { padding:8px 16px;font:14px/1.3 sans-serif;cursor:pointer;border:1px solid #128cff;border-radius:6px;background:#128cff;color:#fff }
.gfp-btn-submit               { background:#00a045;border-color:#00a045 }
.gfp-btn:hover                { filter:brightness(1.1) }

/*──────────  Budget & pièces  ──────────*/
#gfp-budget, #gfp-pieces {
  width: 150px !important;
  text-align: right;
}
#gfp-budget::placeholder      { text-align:left }
#gfp-pieces::placeholder      { text-align:left }

/*──────────  Popup (bouton “Filtre” si tu le gardes)  ──────────*/
.gfp-filters-popup            { position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);
                                background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 12px rgba(0,0,0,.25);z-index:1000;
                                max-height:80vh;overflow:auto;display:none }
#gfp-filters-close            { position:absolute;top:6px;right:10px;background:none;border:none;font-size:24px;cursor:pointer }


/* ─── Styles de la liste d’autocomplete ─── */
.gfp-autocomplete-list {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    max-height: 200px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    z-index: 999;
    list-style: none;
    margin: 0;
    padding: 0;
    display: none;
}
.gfp-autocomplete-list li {
    padding: 8px 12px;
    cursor: pointer;
    font-size: 14px;
    color: #333;
}
.gfp-autocomplete-list li:hover,
.gfp-autocomplete-list li.gfp-autocomplete-active {
    background-color: #f0f0f0;
}

/*────────────────────────────────────────────
  Checkbox custom (type de bien)
────────────────────────────────────────────*/
.gfp-type-panel .gfp‐cb{
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  font-size:14px;
  user-select:none;
  margin:4px 0;
}

/* masque la case native */
.gfp-type-panel .gfp‐cb > input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

/* carré visuel */
.gfp-type-panel .checkmark{
  width:1.2em; height:1.2em;
  background:#474747;
  border-radius:4px;
  box-shadow:0 0 1px rgba(0,0,0,.3), 0 1px 1px rgba(0,0,0,.05);
  transition:background .25s;
  display:inline-block;
  position:relative;
}

/* trait ✓ caché par défaut */
.gfp-type-panel .checkmark::after{
  content:"";
  position:absolute;
  left:.38em; top:.18em;
  width:.25em; height:.55em;
  border:solid #F6F6F6;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
  opacity:0;
  transition:opacity .2s;
}

/* état coché */
.gfp-type-panel .gfp‐cb > input:checked + .checkmark{
  background-image:linear-gradient(#B0EBFF,#00BFFF);
}
.gfp-type-panel .gfp‐cb > input:checked + .checkmark::after{
  opacity:1;
}

/* libellé */
.gfp-type-panel .cb-text{
  line-height:1.2;
}

.gfp-description p {
    font-size: 16px !important;
    font-weight: 600 !important;
}

#search-offmarket{display:hidden}


.gfp-cta-preview {
  position: relative;
  display: inline-block;
  width: 200px;
  height: 120px;
  overflow: hidden;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
  margin: 0px;
  text-decoration: none;
}

div#video_tour, div#video_virtuelle {
    height: 120px !important;
}

.gfp-cta-bg {
  position: absolute;
  top:0; left:0; right:0; bottom:0;
  background-size: cover;
  background-position: center;
  transition: transform .3s;
}
.gfp-cta-preview:hover .gfp-cta-bg {
  transform: scale(1.05);
}
.gfp-cta-icon {
  position: absolute;
  top:50%; left:50%;
  transform: translate(-50%,-50%);
  width: 48px; height: 48px;
  pointer-events: none;
  opacity: 0.9;
}
.gfp-cta-preview.is-video .gfp-cta-icon path,
.gfp-cta-preview.is-360 .gfp-cta-icon path {
  fill: white;
}

span#gfp-ref-error {
    font-weight: 600 !important;
}

/*--------- Recherche -----------------*/
.gfp-search-type-mandat {
    gap: 12px;
    display: flex
;
    flex-direction: column;
}

.gfp-mandat-wrapper>label {
    color: #F6F6F6 !important;
}


.gfp-search-field > select {
    background-color: #00BFFF !important;
    color: #F6F6F6 !important;
    font-size: 14px !important;
    font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
    font-weight: 600 !important;
    border-radius: 12px !important;
    border-color: #00BFFF !important;
}

/*--------- Media Queries -----------------*/
@media only screen and (max-width: 767px) {
    #gfp_prog_ville_sel {
        width: 100% !important;
    }
    .gfp-search-field.gfp-mandat-wrapper {
    display: flex
;
    flex-direction: column;
}
}

@media only screen and (max-width: 1024px) {
.gfp-row {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.gfp-search-wrapper {
    width: max-content;
    display: flex;
    flex-wrap: wrap;
}

form.gfp-search-form {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.gfp-loc-wrapper {
    display: flex;
    flex-direction: column;
    min-width: 200px;
    justify-content: center;
    align-items: center;
}
}
