.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-5845 .elementor-element.elementor-element-abf646d{--display:flex;}.elementor-5845 .elementor-element.elementor-element-5b9be1a{--display:flex;}.elementor-5845 .elementor-element.elementor-element-10dde2d{--display:flex;}.elementor-widget-elementskit-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-elementskit-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-5845 .elementor-element.elementor-element-344bf2f > .elementor-widget-container{padding:0px 15px 0px 15px;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-section-title{color:#000000;margin:0px 0px 20px 0px;font-family:"Work Sans", Sans-serif;font-size:50px;font-weight:bold;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-section-title > span{color:#000000;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-section-title:hover > span{color:#000000;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-section-title span:last-child, .elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-section-title > span{font-family:"Inter", Sans-serif;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-border-divider{width:40px;background:linear-gradient(90deg, #004F5C 0%, #004F5C 100%);}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-border-divider.elementskit-style-long{width:40px;height:4px;color:#004F5C;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-border-star{width:40px;height:4px;color:#004F5C;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-border-divider, .elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-border-divider::before{height:4px;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-border-divider:before{background-color:#004F5C;color:#004F5C;}.elementor-5845 .elementor-element.elementor-element-344bf2f .elementskit-section-title-wraper .elementskit-border-star:after{background-color:#004F5C;}.elementor-widget-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-5845 .elementor-element.elementor-element-b696154.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-5845 .elementor-element.elementor-element-b696154{text-align:center;}.elementor-5845 .elementor-element.elementor-element-b696154 .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-size:20px;font-weight:bold;color:#54677E;}.elementor-5845 .elementor-element.elementor-element-00d1911{--display:flex;}.elementor-widget-text-editor .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-5845 .elementor-element.elementor-element-b66aa2f.elementor-element{--align-self:center;}.elementor-5845 .elementor-element.elementor-element-b66aa2f{column-gap:0px;text-align:left;}.elementor-5845 .elementor-element.elementor-element-b66aa2f p{margin-bottom:100px;}.elementor-5845 .elementor-element.elementor-element-ffc9956.elementor-element{--align-self:center;}.elementor-5845 .elementor-element.elementor-element-ffc9956{text-align:left;}.elementor-5845 .elementor-element.elementor-element-ffc9956 p{margin-bottom:0px;}@media(max-width:767px){.elementor-5845 .elementor-element.elementor-element-b696154{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;text-align:center;}.elementor-5845 .elementor-element.elementor-element-b696154 > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0px 0px 0px 0px;}.elementor-5845 .elementor-element.elementor-element-b696154.elementor-element{--align-self:stretch;}}/* Start custom CSS for text-editor, class: .elementor-element-b66aa2f */:root {
  --image-default: url("https://dev2.innovguide.com/wp-content/uploads/2025/05/cropped-Icone-transparent.png");
  --image-size: 50px;
  --image-border-radius: 8px;
  --image-opacity: 1;
  --image-hover-opacity: 0.8;
  --image-hover-scale: 1.1;
  
  --icon-color: #01515D;
  --icon-hover-color: #014450;
}

/* ===== MASQUAGE DES BOUTONS ===== */
button, input[type="submit"], input[type="reset"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}

input[type="submit"],
button[type="submit"],
.submit-button,
input[value="Submit"],
button:contains("Submit"),
input[type="reset"],
button[type="reset"],
.reset-button,
input[value="Reset"],
button:contains("Reset"),
a:contains("Edit View"),
.edit-view-button,
#edit-view,
.pt-cv-edit-view,
[data-action="edit-view"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

button[style*="background"],
button.btn-success,
.btn-primary,
.btn-secondary,
button[class*="green"],
button[style*="green"] {
    display: none !important;
}

/* ===== STYLES DES CHAMPS DE RECHERCHE ===== */
input[type="text"],
.pt-cv-view input[type="text"],
.form-control,
.pt-cv-search-form__keyword,
input[placeholder="Recherche par name.."],
input[placeholder*="Recherche"],
.pt-cv-search-form input,
.cvp-lf-wrapper .cvp-search-box input {
  border-radius: 10px !important;
  border: 2px solid #ddd !important;
  padding: 8px 15px !important;
  padding-right: 40px !important;
  height: 38px !important;
  width: 300px !important;
  max-width: 300px !important;
  min-width: 300px !important;
  font-size: 14px !important;
  color: #555 !important;
  box-shadow: none !important;
  background-color: white !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2301515D' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: calc(100% - 15px) center !important;
  background-size: 16px !important;
  margin: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

input[type="text"]:focus,
.pt-cv-view input[type="text"]:focus,
.form-control:focus,
.pt-cv-search-form__keyword:focus,
input[placeholder="Recherche par name.."]:focus,
input[placeholder*="Recherche"]:focus,
.pt-cv-search-form input:focus,
.cvp-lf-wrapper .cvp-search-box input:focus {
  outline: none !important;
  border-color: #01515D !important;
  box-shadow: 0 0 5px rgba(1, 81, 93, 0.2) !important;
}

/* ===== STYLES DES DROPDOWNS ===== */
select[name="tx_category"],
.cvp-lf-wrapper .cvp-dropdown select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-color: white !important;
  color: #555 !important;
  border: 2px solid #ddd !important;
  border-radius: 10px !important;
  padding: 8px 15px !important;
  padding-right: 40px !important;
  height: 38px !important;
  font-size: 14px !important;
  font-weight: normal !important;
  cursor: pointer !important;
  width: auto !important;
  min-width: 150px !important;
  max-width: 200px !important;
  box-shadow: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23555' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: calc(100% - 15px) center !important;
  margin: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

select[name="tx_category"]:hover,
.cvp-lf-wrapper .cvp-dropdown select:hover {
  background-color: white !important;
  border-color: #ccc !important;
  color: #333 !important;
}

select[name="tx_category"]:focus,
.cvp-lf-wrapper .cvp-dropdown select:focus {
  outline: none !important;
  border-color: #01515D !important;
  box-shadow: 0 0 5px rgba(1, 81, 93, 0.2) !important;
}

select[name="tx_category"] option,
.cvp-lf-wrapper .cvp-dropdown select option {
  background-color: white;
  color: #555;
  padding: 8px;
}

/* ===== TRONCATURE DU TEXTE ===== */
.pt-cv-content-item .pt-cv-title,
.pt-cv-view .pt-cv-title,
.pt-cv-title,
.entry-title,
.post-title,
.card-title,
h1, h2, h3, h4, h5, h6 {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--title-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--title-line-height) !important;
    max-height: calc(var(--title-lines) * var(--title-line-height)) !important;
    text-overflow: ellipsis !important;
    word-wrap: break-word !important;
}

/* ===== LAYOUT DES FORMULAIRES DE RECHERCHE ===== */
.pt-cv-view,
.cvp-lf-wrapper,
.cvp-lf-wrapper.innovguide-filters,
#pt-cv-view-be1ed68ujp form,
form[data-name="pt-cv-view-be1ed68ujp"],
.pt-cv-view form {
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

#pt-cv-view-be1ed68ujp,
.pt-cv-view {
    width: 100% !important;
    display: block !important;
    text-align: left !important;
}

#pt-cv-view-be1ed68ujp form,
form[data-name="pt-cv-view-be1ed68ujp"],
.pt-cv-view form {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}

.cvp-lf-wrapper,
.cvp-lf-wrapper.innovguide-filters {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    justify-content: flex-start !important;
    width: auto !important;
    max-width: fit-content !important;
    position: relative !important;
    left: 0 !important;
    float: left !important;
    clear: left !important;
    max-width: 100%;
}

/* POSITIONNEMENT DES ÉLÉMENTS DE RECHERCHE */
.pt-cv-search-form,
.cvp-lf-wrapper .cvp-search-box {
    order: 1 !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    max-width: none !important;
    display: inline-block !important;
}

.pt-cv-filter-bar,
.pt-cv-filter-option,
.cvp-lf-wrapper .cvp-dropdown {
    order: 2 !important;
    flex: 0 0 auto !important;
    margin: 0 0 0 5px !important;
    padding: 0 !important;
    display: inline-block !important;
    vertical-align: middle !important;
}

/* FORCER L'ALIGNEMENT MÊME AVEC DES CONTENEURS PARENTS */
.pt-cv-view > *,
.cvp-lf-wrapper > * {
    text-align: left !important;
}

body .pt-cv-view,
body .cvp-lf-wrapper {
    text-align: left !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.search-filter-left-force {
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    float: left !important;
    clear: left !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
    display: block !important;
    width: auto !important;
    max-width: fit-content !important;
}

/* ===== TRONCATURE DU CONTENU ===== */
.pt-cv-content-item .pt-cv-excerpt,
.pt-cv-view .pt-cv-excerpt,
.pt-cv-content .pt-cv-excerpt,
.excerpt,
.post-excerpt,
.entry-excerpt,
.description,
.content-excerpt {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--excerpt-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--excerpt-line-height) !important;
    max-height: calc(var(--excerpt-lines) * var(--excerpt-line-height)) !important;
    text-overflow: ellipsis !important;
    word-wrap: break-word !important;
    margin-bottom: 15px !important;
    flex-grow: 1 !important;
}

.pt-cv-content-item .pt-cv-content,
.pt-cv-view .pt-cv-content,
.card-body,
.entry-content,
.post-content,
.content-area {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--content-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--content-line-height) !important;
    max-height: calc(var(--content-lines) * var(--content-line-height)) !important;
    text-overflow: ellipsis !important;
    word-wrap: break-word !important;
    margin-bottom: 15px !important;
    flex-grow: 1 !important;
}

.pt-cv-content-item p,
.pt-cv-view p,
.card-text,
.entry-summary p {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--paragraph-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--paragraph-line-height) !important;
    max-height: calc(var(--paragraph-lines) * var(--paragraph-line-height)) !important;
    text-overflow: ellipsis !important;
    margin-bottom: 10px !important;
}

.pt-cv-meta,
.pt-cv-date,
.pt-cv-author,
.pt-cv-category,
.meta-info,
.post-meta,
.entry-meta,
.card-subtitle {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--meta-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--meta-line-height) !important;
    max-height: calc(var(--meta-lines) * var(--meta-line-height)) !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* ===== LAYOUT PRINCIPAL DES CARTES - AVEC CORRECTIONS ANTI-IMBRICATION ===== */
.pt-cv-view,
.elementor-widget-container .pt-cv-view {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
    gap: 20px !important;
    align-items: start !important;
    /* CORRECTIONS : Forcer le recalcul et éviter l'imbrication */
    grid-auto-flow: row !important;
    grid-auto-rows: minmax(200px, auto) !important;
    transition: grid-template-columns 0.3s ease !important;
}

.pt-cv-view .pt-cv-content-item {
  margin-bottom: 20px !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* CARTES PRINCIPALES */
.pt-cv-content-item,
.elementor-widget-container .pt-cv-content-item {
    width: 100% !important;
    min-width: 300px !important;
    max-width: 350px !important;
    min-height: 200px !important;
    padding: 20px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    background: white !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
    /* CORRECTIONS : Isolation et containment pour éviter l'imbrication */
    isolation: isolate !important;
    contain: layout style !important;
    transition: all 0.3s ease !important;
    will-change: transform, opacity !important;
}

.pt-cv-content-item:hover,
.elementor-widget-container .pt-cv-content-item:hover {
    box-shadow: 0 8px 25px rgba(0,0,0,0.15) !important;
    transform: translateY(-2px) !important;
    border-color: #01515D !important;
}

.pt-cv-content-item .pt-cv-content,
.elementor-widget-container .pt-cv-content-item .pt-cv-content {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important; 
}

/* Gérer l'affichage du texte selon le contexte */
.pt-cv-content-item .pt-cv-title,
.pt-cv-content-item .pt-cv-excerpt,
.pt-cv-content-item .pt-cv-content p {
    display: block !important;
    overflow: visible !important;
    text-overflow: initial !important;
    -webkit-line-clamp: initial !important;
    -webkit-box-orient: initial !important;
    max-height: none !important;
}

.pt-cv-content-item:not(:first-child:last-child) .pt-cv-title,
.pt-cv-content-item:not(:first-child:last-child) .pt-cv-excerpt,
.pt-cv-content-item:not(:first-child:last-child) .pt-cv-content p {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--excerpt-lines, 3) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* CARTES GÉNÉRIQUES */
.card,
.post-item,
.content-item,
.article-item {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.card .card-text,
.post-item .post-text,
.content-item .item-text,
.article-item .article-text {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--excerpt-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--excerpt-line-height) !important;
    max-height: calc(var(--excerpt-lines) * var(--excerpt-line-height)) !important;
    text-overflow: ellipsis !important;
    margin-bottom: 15px !important;
    flex-grow: 1 !important;
}

.grid-item,
.masonry-item,
.portfolio-item {
    position: relative !important;
}

.grid-item .item-description,
.masonry-item .item-description,
.portfolio-item .item-description {
    display: -webkit-box !important;
    -webkit-line-clamp: var(--paragraph-lines) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: var(--paragraph-line-height) !important;
    max-height: calc(var(--paragraph-lines) * var(--paragraph-line-height)) !important;
    text-overflow: ellipsis !important;
}

/* ===== ICÔNES ET FLÈCHES ANIMÉES ===== */
.pt-cv-content-item::before,
.pt-cv-view .pt-cv-content-item::before,
.card::before,
.post-item::before,
.content-item::before,
.article-item::before {
    content: "";
    position: absolute !important;
    top: var(--image-top, 25px) !important;
    right: var(--image-right, 15px) !important;
    width: var(--image-width, var(--image-size)) !important;
    height: var(--image-height, var(--image-size)) !important;
    background-image: var(--image-url, var(--image-default)) !important;
    background-size: var(--image-bg-size, cover) !important;
    background-position: var(--image-bg-position, center) !important;
    background-repeat: no-repeat !important;
    border-radius: var(--image-radius, var(--image-border-radius)) !important;
    opacity: var(--image-alpha, var(--image-opacity)) !important;
    transition: all 0.3s ease !important;
    z-index: 10 !important;
    pointer-events: none !important;
    box-shadow: var(--image-shadow, 0 2px 8px rgba(0,0,0,0.1)) !important;
    border: var(--image-border, none) !important;
    transform: var(--image-transform, none) !important;
    /* CORRECTIONS : Éviter le débordement */
    max-width: calc(100% - var(--image-right, 15px) - 10px) !important;
    max-height: calc(100% - var(--image-top, 25px) - 10px) !important;
}

.pt-cv-content-item::after,
.pt-cv-view .pt-cv-content-item::after,
.card::after,
.post-item::after,
.content-item::after,
.article-item::after {
    content: var(--arrow-content, "⟵");
    position: absolute !important;
    top: var(--arrow-top, var(--image-top, 25px)) !important;
    right: calc(var(--image-right, 15px) + var(--image-width, var(--image-size)) + var(--arrow-spacing, 8px)) !important;
    width: var(--arrow-width, 16px) !important;
    height: var(--image-height, var(--image-size)) !important;
    font-size: var(--arrow-size, 14px) !important;
    color: var(--arrow-color, var(--icon-color)) !important;
    display: var(--arrow-display, flex) !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    z-index: 11 !important;
    cursor: pointer !important;
    opacity: var(--arrow-opacity, 0) !important;
    transform: var(--arrow-transform, translateX(-5px)) !important;
    /* CORRECTIONS : Éviter le débordement */
    max-width: 16px !important;
    max-height: 16px !important;
}

.pt-cv-content-item:hover::after,
.pt-cv-view .pt-cv-content-item:hover::after,
.card:hover::after,
.post-item:hover::after,
.content-item:hover::after,
.article-item:hover::after {
    opacity: var(--arrow-hover-opacity, 0.8) !important;
    transform: var(--arrow-hover-transform, translateX(0)) !important;
    color: var(--arrow-hover-color, var(--icon-hover-color)) !important;
}

.pt-cv-content-item:hover::before,
.pt-cv-view .pt-cv-content-item:hover::before,
.card:hover::before,
.post-item:hover::before,
.content-item:hover::before,
.article-item:hover::before {
    opacity: var(--image-hover-alpha, var(--image-hover-opacity)) !important;
    transform: var(--image-hover-transform, scale(var(--image-hover-scale))) !important;
    box-shadow: var(--image-hover-shadow, 0 4px 12px rgba(0,0,0,0.2)) !important;
}

/* CLASSES UTILITAIRES POUR LES IMAGES */
.image-arrow { --image-url: var(--image-arrow) !important; }
.image-external { --image-url: var(--image-external) !important; }
.image-chevron { --image-url: var(--image-chevron) !important; }
.image-plus { --image-url: var(--image-plus) !important; }
.image-info { --image-url: var(--image-info) !important; }

.image-small { --image-size: 32px !important; }
.image-medium { --image-size: 40px !important; }
.image-large { --image-size: 56px !important; }
.image-xl { --image-size: 64px !important; }
.image-xxl { --image-size: 80px !important; }

.image-xs::after { right: calc(15px + 24px + 8px) !important; }
.image-small::after { right: calc(15px + 32px + 8px) !important; }
.image-medium::after { right: calc(15px + 40px + 8px) !important; }
.image-large::after { right: calc(15px + 56px + 8px) !important; }
.image-xl::after { right: calc(15px + 64px + 8px) !important; }
.image-xxl::after { right: calc(15px + 80px + 8px) !important; }

.image-circle { --image-border-radius: 50% !important; }
.image-rounded { --image-border-radius: 12px !important; }
.image-square { --image-border-radius: 0 !important; }

.image-logo-align::before { top: 30px !important; }
.image-logo-align::after { top: 30px !important; }

.image-center-align::before {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

.image-center-align::after {
    top: 50% !important;
    transform: translateY(-50%) translateX(-5px) !important;
}

.image-center-align:hover::after {
    transform: translateY(-50%) translateX(0) !important;
}

.image-center-align:hover::before {
    transform: translateY(-50%) scale(var(--image-hover-scale)) !important;
}

.image-shadow { box-shadow: 0 4px 16px rgba(0,0,0,0.15) !important; }
.image-glow::before { box-shadow: 0 0 20px rgba(1, 81, 93, 0.3) !important; }
.image-border::before { border: 2px solid var(--icon-color) !important; }

.arrow-double::after { content: "⇒" !important; }
.arrow-curved::after { content: "↳" !important; }
.arrow-up::after { content: "↗" !important; }
.arrow-simple::after { content: "→" !important; }
.arrow-bold::after { 
    content: "▶" !important; 
    font-size: 10px !important;
}

.arrow-bounce:hover::after {
    animation: bounceArrow 0.6s ease-in-out !important;
}

@keyframes bounceArrow {
    0%, 100% { transform: translateX(0) !important; }
    50% { transform: translateX(3px) !important; }
}

/* ===== BOUTONS "LIRE PLUS" ===== */
.pt-cv-readmore.pt-cv-textlink {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #01515D !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding: 6px 0 !important;
    background: transparent !important;
    transition: all 0.3s ease !important;
    border: none !important;
    border-radius: 0 !important;
}

.pt-cv-readmore.pt-cv-textlink::after {
    content: "→" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    background: #01515D !important; 
    color: white !important; 
    border-radius: 50% !important;
    font-size: 11px !important; 
    font-weight: 700 !important;
    line-height: 1 !important; 
    text-align: center !important;
    transition: all 0.3s ease !important;
    margin-left: 0 !important;
    transform: none !important;
    box-shadow: 0 1px 3px rgba(1, 81, 93, 0.3) !important;
    vertical-align: middle !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
}

.pt-cv-meta-fields{
    display: none !important;
}


/*___________________________*/

/* ===== AJOUT À LA FIN DU CODE CSS EXISTANT ===== */

/* LAYOUT FINAL : RECHERCHE - 10PX - DROPDOWN - 10PX - TAGS */
.cvp-lfres {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    margin-bottom: 20px !important;
}

/* 1. BARRE DE RECHERCHE (PREMIÈRE POSITION) */
.cvp-search-box,
.cvp-live-filter[class*="search"],
input[type="text"][placeholder*="Recherche"],
input[type="text"][placeholder*="name"] {
    order: 1 !important;
    margin: 0 10px 0 0 !important;
    flex: 0 0 auto !important;
}

/* 2. DROPDOWN DE CATÉGORIE (DEUXIÈME POSITION) */
.cvp-live-filter.cvp-dropdown {
    order: 2 !important;
    margin: 0 10px 0 0 !important;
    flex: 0 0 auto !important;
}

/* 3. SECTION DES CHECKBOXES/TAGS (TROISIÈME POSITION) */
.cvp-live-filter.cvp-checkbox {
    order: 3 !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* 4. BOUTON (QUATRIÈME POSITION) - MASQUÉ */
.cvp-live-button {
    display: none !important;
}

/* 5. CLEAR DIV (MASQUER) */
.clear {
    display: none !important;
}

/* MASQUER LE TEXTE "POST TAG" */
label.cvp-label {
    display: none !important;
}

/* DÉSACTIVER LA LOGIQUE DE FILTRAGE CONTENT VIEWS */
.cvp-live-filter.cvp-checkbox .checkbox input[type="checkbox"] {
    pointer-events: none !important; /* Désactive la fonction checkbox */
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

/* FORCER TOUS LES BOUTONS À ÊTRE STATIQUES ET VISIBLES */
.cvp-live-filter.cvp-checkbox .checkbox,
.cvp-live-filter.cvp-checkbox .checkbox[style*="display: none"],
.cvp-live-filter.cvp-checkbox .checkbox[style*="visibility: hidden"],
.cvp-live-filter.cvp-checkbox .checkbox[style*="opacity: 0"],
.cvp-live-filter.cvp-checkbox .checkbox[flex="0"],
.cvp-live-filter.cvp-checkbox .checkbox[flex="$0"] {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    height: auto !important;
    width: auto !important;
    overflow: visible !important;
    margin: 0 6px 0 0 !important;
    vertical-align: middle !important;
    pointer-events: auto !important;
    z-index: 999 !important;
}

/* STYLING DES BOUTONS STATIQUES */
.cvp-live-filter.cvp-checkbox .checkbox label {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    background-color: #f5f5f5 !important; /* Gris par défaut */
    border: 2px solid #d1d5db !important; /* Bordure grise */
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #6b7280 !important; /* Texte gris */
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
    user-select: none !important;
    margin: 0 !important;
    min-width: 60px !important;
    text-align: center !important;
    position: static !important;
    height: auto !important;
    width: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
}

/* EFFET HOVER STATIQUE */
.cvp-live-filter.cvp-checkbox .checkbox label:hover {
    background-color: #e5e7eb !important;
    border-color: #9ca3af !important;
    color: #374151 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}

/* ÉTAT CLIQUÉ/ACTIF - COULEUR VERTE */
.cvp-live-filter.cvp-checkbox .checkbox.active label,
.cvp-live-filter.cvp-checkbox .checkbox label.active {
    background-color: #01515D !important; /* Vert */
    border-color: #01515D !important;
    color: white !important;
    box-shadow: 0 2px 8px rgba(1, 81, 93, 0.3) !important;
}

/* EFFET HOVER SUR L'ÉTAT ACTIF */
.cvp-live-filter.cvp-checkbox .checkbox.active label:hover,
.cvp-live-filter.cvp-checkbox .checkbox label.active:hover {
    background-color: #014450 !important;
    border-color: #014450 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(1, 81, 93, 0.4) !important;
}

/* FORCER TOUS LES ÉLÉMENTS À RESTER VISIBLES */
.cvp-live-filter.cvp-checkbox * {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* CONTRER LES STYLES INLINE DYNAMIQUES */
.cvp-live-filter.cvp-checkbox .checkbox[style] {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ORGANISER LES BOUTONS EN LIGNE */
.cvp-live-filter.cvp-checkbox .checkbox {
    display: inline-block !important;
    margin: 0 4px 0 0 !important;
    vertical-align: middle !important;
}

/* DERNIÈRE CHECKBOX SANS MARGE */
.cvp-live-filter.cvp-checkbox .checkbox:last-child {
    margin-right: 0 !important;
}

/* CIBLER LA BARRE DE RECHERCHE SI ELLE EST DANS UN AUTRE CONTENEUR */
.pt-cv-search-form,
.cvp-search-box,
[class*="search-form"],
[class*="search-box"] {
    order: 1 !important;
    margin: 0 10px 0 0 !important;
    flex: 0 0 auto !important;
}

/* FORCER LE CONTENEUR PARENT */
.pt-cv-view form,
.cvp-lf-wrapper,
[id*="pt-cv-view"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
}
/*_________________________*/


/* CSS pour Elementor - Free Rouge / Pro Vert UNIQUEMENT */

/* Styles de base pour les badges */
.pt-cv-specialp {
    position: absolute !important;
    height: 22px;
    width: 44px;
    top: 36px;
    padding: 0 !important;
    left: 229px !important;
    border-radius: 5px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
}

/* Badge FREE - Rouge UNIQUEMENT */
.pt-cv-specialp .pt-cv-tax-free {
    background-color: #dc3545 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Badge PRO - Vert UNIQUEMENT */
.pt-cv-specialp .pt-cv-tax-pro {
    background-color: #01515D !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Styles pour le contenu */
.pt-cv-specialp .terms {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Texte des badges */
.pt-cv-specialp .pt-cv-tax-free,
.pt-cv-specialp .pt-cv-tax-pro {
    color: white !important;
    text-decoration: none !important;
    text-align: center !important;
    font-size: 11px !important;
    font-weight: bold !important;
    border: none !important;
    outline: none !important;
    border-radius: 5px !important;
}


/*_______________________*/



/* Masquer le label "Post Tag" spécifiquement */
.cvp-live-filter.cvp-checkbox[data-name="tx_post_tag"] .cvp-label {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
}

/* Alternative plus générale si vous voulez masquer tous les labels Post Tag */
label.cvp-label:contains("Post Tag") {
    display: none !important;
}

/* Ou encore plus spécifique pour cibler exactement ce texte */
.cvp-live-filter[data-name="tx_post_tag"] label:first-child {
    display: none !important;
}

/* Assurer que le conteneur ne laisse pas d'espace vide */
.cvp-live-filter.cvp-checkbox[data-name="tx_post_tag"] {
    position: relative !important;
}

.cvp-live-filter.cvp-checkbox[data-name="tx_post_tag"]:before {
    content: none !important;
}

/* CSS SPÉCIFIQUE pour la structure HTML complète */
.pt-cv-ctf-list .pt-cv-ctf-column .pt-cv-custom-fields .pt-cv-ctf-value,
.pt-cv-ctf-list .col-md-3 .pt-cv-custom-fields .pt-cv-ctf-value,
.pt-cv-ctf-acf_description_partenaire_ .pt-cv-ctf-value {
    display: block !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #555 !important;
    padding: 0 !important;
    margin: 0 0 15px 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    text-align: left !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    font-family: inherit !important;
    width: 100% !important;
    max-width: none !important;
    min-width: auto !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    position: static !important;
    float: none !important;
    clear: none !important;
    overflow: visible !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-decoration: none !important;
    white-space: normal !important;
}

/* Reset des containers parents qui peuvent interférer */
.pt-cv-ctf-list {
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.pt-cv-ctf-column.col-md-3 {
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
}

.pt-cv-custom-fields.pt-cv-ctf-acf_description_partenaire_ {
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Force avec attribut data si nécessaire */
[data-cvc="4"] .pt-cv-ctf-value {
    color: #555 !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

/* Reset Bootstrap col-md-3 si elle interfère */
.pt-cv-ctf-list .col-md-3 {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

/* Ultra spécifique avec tous les sélecteurs */
div.pt-cv-ctf-list div.col-md-3.pt-cv-ctf-column div.pt-cv-custom-fields.pt-cv-ctf-acf_description_partenaire_ div.pt-cv-ctf-value {
    all: revert !important;
    display: block !important;
    background: transparent !important;
    color: #555 !important;
    padding: 0 !important;
    margin-bottom: 15px !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    border: none !important;
    font-family: inherit !important;
}

/* Réduire l'espace entre la description et More Infos */

/* Cibler le div pt-cv-content contenant More Infos */
.pt-cv-content-item .pt-cv-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Réduire l'espace du container pt-cv-remain-wrapper */
.pt-cv-remain-wrapper {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Réduire l'espace entre pt-cv-ctf-list et pt-cv-content */
.pt-cv-ctf-list {
    margin-bottom: 5px !important;
    padding-bottom: 0 !important;
}

.pt-cv-ctf-list + .pt-cv-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Réduire l'espace du texte de description */
.pt-cv-ctf-value {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Ajuster l'espace du bouton More Infos */
.pt-cv-content a.pt-cv-readmore.pt-cv-textlink {
    margin-top: 5px !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Forcer un espacement minimal et compact */
.pt-cv-content-item > .pt-cv-remain-wrapper > .pt-cv-ctf-list,
.pt-cv-content-item > .pt-cv-remain-wrapper > .pt-cv-content {
    margin: 0 !important;
    padding: 0 !important;
}

/* Espacement spécifique entre les éléments */
.pt-cv-remain-wrapper > * + * {
    margin-top: 5px !important;
}

/* Ultra spécifique pour la structure exacte */
.pt-cv-content-item .pt-cv-remain-wrapper .pt-cv-ctf-list + .pt-cv-content {
    margin-top: 5px !important;
    padding-top: 0 !important;
}

/* Réduire l'espace du container pt-cv-custom-fields */
.pt-cv-custom-fields {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Ajuster le container pt-cv-ctf-column */
.pt-cv-ctf-column {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Réduire l'espace INTERNE du bouton More Infos */

a._blank.pt-cv-readmore.pt-cv-textlink.cvplbd {
    padding: 2px 8px !important; /* Réduit le padding vertical et horizontal */
    margin: 0 !important;
    line-height: 1.2 !important;
    font-size: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important; /* Espace entre texte et icône */
    min-height: auto !important;
    height: auto !important;
}

/* Réduire encore plus l'espace si nécessaire */
a._blank.pt-cv-readmore.pt-cv-textlink.cvplbd {
    padding: 1px 6px !important; /* Version encore plus compacte */
}

/* Ajuster l'icône du bouton More Infos */
a._blank.pt-cv-readmore.pt-cv-textlink.cvplbd::after {
    margin-left: 4px !important;
    width: 16px !important;
    height: 16px !important;
    font-size: 10px !important;
}

/* Version ultra-compacte */
a.pt-cv-readmore.pt-cv-textlink.cvplbd {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    display: inline-block !important;
}

/* Cibler spécifiquement par URL */
a[href*="stripe/"].cvplbd,
a[href*="seam/"].cvplbd,
a[href*="nuki/"].cvplbd {
    padding: 2px 6px !important;
    margin: 0 !important;
    line-height: 1.1 !important;
}

/* Container du bouton */
.pt-cv-content > a.cvplbd {
    padding: 0 !important;
    margin: 0 !important;
}

/* Forcer avec spécificité maximale */
.pt-cv-content a._blank.pt-cv-readmore.pt-cv-textlink.cvplbd[target="_blank"] {
    padding: 1px 4px !important;
    margin: 0 !important;
    line-height: 1 !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box !important;
}





body .elementor-widget-container .pt-cv-content-item,
body .pt-cv-view .pt-cv-content-item {
    min-height: auto !important;
}


.pt-cv-content-item .pt-cv-remain-wrapper .pt-cv-ctf-list + .pt-cv-content {
    margin-top: 30px !important;
    padding-top: 0 !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ffc9956 *//* Style for the select dropdown - MODIFIÉ pour taille dynamique */
select[name="tx_category"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #01515D;
  color: white;
  border: 2px solid #01515D; /* MODIFIÉ: bordure plus épaisse et de la même couleur que le fond */
  border-radius: 10px; /* MODIFIÉ: réduit de 20px à 10px */
  padding: 8px 12px;
  padding-right: 30px;
  font-weight: 500;
  cursor: pointer;
  width: auto; /* MODIFIÉ: largeur automatique */
  min-width: auto; /* MODIFIÉ: suppression de min-width fixe */
  max-width: none; /* MODIFIÉ: suppression de max-width pour permettre l'expansion */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(100% - 8px) center;
}

/* Hover state */
select[name="tx_category"]:hover {
  background-color: #014450;
  border-color: #014450; /* AJOUTÉ: bordure change aussi au hover */
}

/* Focus state */
select[name="tx_category"]:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(1, 81, 93, 0.5);
}

/* Style for the dropdown when it's open */
select[name="tx_category"] option {
  background-color: white;
  color: #333;
  padding: 8px;
}

/* Hide the live button */
.cvp-live-button {
  display: none;
}

/* Style pour la barre de recherche - MODIFIÉ avec border-radius 10px */
input[type="text"],
.pt-cv-view input[type="text"],
.form-control,
.pt-cv-search-form__keyword,
input[placeholder="Recherche par name.."],
input[placeholder*="Recherche"],
.pt-cv-search-form input {
  border-radius: 10px !important; /* MODIFIÉ: réduit de 20px à 10px */
  border: 2px solid #ddd !important; /* MODIFIÉ: bordure plus épaisse */
  padding: 8px 15px !important;
  padding-right: 40px !important;
  height: 38px !important;
  width: 450px !important;
  max-width: 100% !important;
  font-size: 14px !important;
  color: #555 !important;
  box-shadow: none !important;
  background-color: white !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2301515D' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: calc(100% - 15px) center !important;
  background-size: 16px !important;
}

/* Style au focus */
input[type="text"]:focus,
.pt-cv-view input[type="text"]:focus,
.form-control:focus,
.pt-cv-search-form__keyword:focus,
input[placeholder="Recherche par name.."]:focus,
input[placeholder*="Recherche"]:focus,
.pt-cv-search-form input:focus {
  outline: none !important;
  border-color: #01515D !important; /* MODIFIÉ: bordure plus foncée au focus */
  box-shadow: 0 0 5px rgba(1, 81, 93, 0.2) !important;
}

/* Conteneur de recherche */
.pt-cv-search-form,
form[data-name="pt-cv-view-be1ed68ujp"] {
  position: relative !important;
}

/* Style pour le bouton de recherche (si présent) - cacher pour éviter la duplication avec notre icône */
.pt-cv-search-form button[type="submit"],
form[data-name="pt-cv-view-be1ed68ujp"] button[type="submit"] {
  opacity: 0 !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 40px !important;
  height: 100% !important;
  cursor: pointer !important;
  z-index: 10 !important;
}

/* NOUVEAUX STYLES POUR LA DISPOSITION */
/* Style pour le conteneur principal */
.pt-cv-view .pt-cv-content-item {
  margin-bottom: 20px !important;
}

/* Conteneur du formulaire - MODIFIÉ pour rapprocher les éléments */
#pt-cv-view-be1ed68ujp form,
form[data-name="pt-cv-view-be1ed68ujp"],
.pt-cv-view form {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important; /* MODIFIÉ: alignement à gauche */
  gap: 10px !important; /* MODIFIÉ: réduit de 15px à 10px pour rapprocher */
  margin-bottom: 20px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
}

/* Ajustements spécifiques pour chaque élément - MODIFIÉ: éléments plus proches */
.pt-cv-filter-bar, 
.pt-cv-filter-option {
  order: 2 !important; /* Deuxième élément */
  flex: 0 0 auto !important;
  margin-left: 0 !important; /* MODIFIÉ: suppression de la marge */
  margin-right: 0 !important;
  max-width: none !important; /* MODIFIÉ: suppression de max-width pour permettre l'expansion */
}

.pt-cv-search-form {
  order: 1 !important; /* Premier élément */
  flex: 0 0 auto !important; /* MODIFIÉ: pas de flex pour éviter l'étirement */
  min-width: 450px !important;
  margin-left: 0 !important;
  margin-right: 0 !important; /* MODIFIÉ: suppression de margin-right auto */
}

/* Forcer l'ordre même si les éléments sont imbriqués différemment */
#pt-cv-view-be1ed68ujp .pt-cv-filter-bar,
.pt-cv-view .pt-cv-filter-bar {
  order: 2 !important;
}

#pt-cv-view-be1ed68ujp .pt-cv-search-form,
.pt-cv-view .pt-cv-search-form {
  order: 1 !important;
}

/* Responsive pour les petits écrans */
@media (max-width: 768px) {
  #pt-cv-view-be1ed68ujp form,
  form[data-name="pt-cv-view-be1ed68ujp"],
  .pt-cv-view form {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  
  input[type="text"],
  .pt-cv-view input[type="text"],
  .form-control,
  .pt-cv-search-form__keyword,
  input[placeholder="Recherche par name.."],
  input[placeholder*="Recherche"],
  select[name="tx_category"] {
    width: 100% !important;
    margin-bottom: 10px !important;
    max-width: 100% !important;
  }
  
  .pt-cv-filter-bar, 
  .pt-cv-filter-option,
  .pt-cv-search-form {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    min-width: unset !important;
    max-width: 100% !important;
  }
}

/* Cibler spécifiquement par ID */
#pt-cv-view-be1ed68ujp .pt-cv-search-form input[type="text"] {
  border-radius: 10px !important; /* MODIFIÉ: réduit de 20px à 10px */
  border: 2px solid #ddd !important; /* MODIFIÉ: bordure plus épaisse */
  padding: 8px 15px !important;
  padding-right: 40px !important;
  height: 38px !important;
  width: 450px !important;
  max-width: 100% !important;
  font-size: 14px !important;
  color: #555 !important;
  box-shadow: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2020/svg' width='16' height='16' fill='%2301515D' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: calc(100% - 15px) center !important;
  background-size: 16px !important;
}

#pt-cv-view-be1ed68ujp .pt-cv-search-form input[type="text"]:focus {
  outline: none !important;
  border-color: #01515D !important;
  box-shadow: 0 0 5px rgba(1, 81, 93, 0.2) !important;
}

/* Make the wrapper use flexbox for horizontal alignment - MODIFIÉ */
.cvp-lf-wrapper.innovguide-filters {
    display: flex;
    align-items: center;
    gap: 10px; /* MODIFIÉ: réduit de 15px à 10px */
    max-width: 100%;
    margin-bottom: 20px;
    justify-content: flex-start; /* AJOUTÉ: alignement à gauche */
}

/* Style the dropdown to look like a button - MODIFIÉ pour taille dynamique */
.cvp-lf-wrapper .cvp-dropdown {
    order: 2; /* Deuxième position */
    width: auto;
    flex: 0 0 auto;
}

.cvp-lf-wrapper .cvp-dropdown select {
    appearance: none;
    background-color: #006064;
    color: white;
    padding: 8px 25px 8px 15px;
    border-radius: 10px; /* MODIFIÉ: réduit de 20px à 10px */
    border: 2px solid #006064; /* MODIFIÉ: bordure plus épaisse */
    font-weight: bold;
    cursor: pointer;
    min-width: auto; /* MODIFIÉ: suppression de min-width fixe */
    max-width: none; /* MODIFIÉ: suppression de max-width pour permettre l'expansion */
    width: auto; /* AJOUTÉ: largeur automatique */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(100% - 8px) center;
}

/* Style the search box */
.cvp-lf-wrapper .cvp-search-box {
    order: 1; /* Première position */
    flex: 0 0 auto; /* MODIFIÉ: pas de flex pour éviter l'étirement */
    width: auto; /* AJOUTÉ: largeur automatique */
}

.cvp-lf-wrapper .cvp-search-box input[type="text"] {
    width: 450px; /* MODIFIÉ: largeur fixe au lieu de 100% */
    padding: 8px 12px;
    border-radius: 10px; /* MODIFIÉ: réduit de 20px à 10px */
    border: 2px solid #ddd; /* MODIFIÉ: bordure plus épaisse */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23666' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center;
    padding-right: 35px;
}

/* Hide the submit and reset buttons */
.cvp-lf-wrapper .cvp-live-button {
    display: none;
}

/* Remove the <br> tag's effect and clear div */
.cvp-lf-wrapper br,
.cvp-lf-wrapper .clear {
    display: none;
}

/* Hide labels if any */
.cvp-lf-wrapper .cvp-label {
    display: none;
}

/* Style pour le bouton "more infos" avec flèche sur une ligne séparée */
.pt-cv-readmore.pt-cv-textlink {
    display: block;
    width: 100%;
    margin-top: 12px;
    color: #01515D;
    text-decoration: none;
    font-weight: 500;
    position: relative;
    transition: all 0.2s ease;
}

/* Ajouter la flèche avec pseudo-élément */
.pt-cv-readmore.pt-cv-textlink::after {
    content: "→";
    display: inline-block;
    margin-left: 5px;
    transition: transform 0.3s ease;
}

/* Animation au survol */
.pt-cv-readmore.pt-cv-textlink:hover {
    color: #014450;
}

.pt-cv-readmore.pt-cv-textlink:hover::after {
    transform: translateX(4px);
}

/* ========================================
   SUPPRESSION UNIQUEMENT ICÔNE INNOVGUIDE ET FLÈCHE
   (GARDER LES LOGOS PARTENAIRES)
   ======================================== */

/* Masquer SEULEMENT les pseudo-éléments InnovGuide (::before et ::after) */
.pt-cv-content-item::before,
.pt-cv-content-item::after,
.elementor-widget-container .pt-cv-content-item::before,
.elementor-widget-container .pt-cv-content-item::after,
.pt-cv-view .pt-cv-content-item::before,
.pt-cv-view .pt-cv-content-item::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    content: none !important;
}

/* Masquer SEULEMENT les images InnovGuide (pas les logos partenaires) */
img[src*="innovguide.com/wp-content/uploads/2025/05/cropped-Icone-transparent.png"],
img[src*="cropped-Icone-transparent.png"],
img[src*="innovguide-icon"],
img[src*="innovguide-logo"] {
    display: none !important;
}

/* Masquer les éléments avec classes spécifiques InnovGuide */
.innovguide-icon,
.innovguide-logo,
.innovguide-arrow,
.cta-discover,
[class*="innovguide-icon"],
[class*="innovguide-arrow"] {
    display: none !important;
}

/* Masquer les pseudo-éléments avec background-image InnovGuide spécifique */
[style*="cropped-Icone-transparent.png"]::before,
[style*="cropped-Icone-transparent.png"]::after,
[style*="innovguide.com/wp-content/uploads"]::before,
[style*="innovguide.com/wp-content/uploads"]::after {
    display: none !important;
}

/* Masquer l'image InnovGuide par alt/title (mais pas les autres) */
img[alt="InnovGuide"],
img[alt="innovguide"],
img[title="InnovGuide"],
img[title="innovguide"],
img[alt*="cropped-Icone"],
img[title*="cropped-Icone"] {
    display: none !important;
}

/* Si l'URL exacte de l'icône InnovGuide est différente, ajustez ici */
img[src="https://dev2.innovguide.com/wp-content/uploads/2025/05/cropped-Icone-transparent.png"] {
    display: none !important;
}

/* ========================================
   FORCER L'ALIGNEMENT DES BOUTONS "MORE INFO" EN BAS
   ======================================== */

/* Conteneur des cartes - Toutes à la même hauteur FORCÉ */
.pt-cv-view,
.elementor-widget-container .pt-cv-view,
body .pt-cv-view {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
}

/* Carte individuelle - FORCER layout flex + espace pour bouton */
.pt-cv-content-item,
.elementor-widget-container .pt-cv-content-item,
body .pt-cv-content-item {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 300px !important; /* FORCE hauteur minimum */
    position: relative !important;
    margin-bottom: 0 !important;
    padding-bottom: 50px !important; /* FORCE espace pour bouton */
}

/* Contenu de la carte - FORCER à prendre l'espace disponible */
.pt-cv-content-item .pt-cv-content,
.elementor-widget-container .pt-cv-content-item .pt-cv-content {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    height: calc(100% - 50px) !important; /* FORCE hauteur calculée */
}

/* FORCER le bouton "More info" en position absolue en bas */
.pt-cv-readmore.pt-cv-textlink {
    position: absolute !important; /* FORCE position absolue */
    bottom: 15px !important; /* FORCE position en bas */
    left: 20px !important; /* FORCE position à gauche */
    right: 20px !important; /* FORCE largeur */
    margin: 0 !important; /* FORCE pas de marge */
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
    width: auto !important; /* FORCE largeur auto */
    text-align: left !important; /* FORCE alignement texte */
}

/* FORCER même avec sélecteurs plus spécifiques */
body .pt-cv-content-item .pt-cv-readmore.pt-cv-textlink,
.elementor-widget-container .pt-cv-content-item .pt-cv-readmore.pt-cv-textlink {
    position: absolute !important;
    bottom: 15px !important;
    left: 20px !important;
    right: 20px !important;
    margin: 0 !important;
}

/* FORCER même hauteur minimum sur mobile */
@media (max-width: 768px) {
    .pt-cv-view,
    .elementor-widget-container .pt-cv-view {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
        gap: 15px !important;
    }
    
    .pt-cv-content-item,
    .elementor-widget-container .pt-cv-content-item {
        min-height: 280px !important; /* FORCE hauteur mobile */
        padding-bottom: 45px !important;
    }
    
    .pt-cv-readmore.pt-cv-textlink {
        bottom: 12px !important;
        left: 15px !important;
        right: 15px !important;
    }
}

@media (max-width: 480px) {
    .pt-cv-view,
    .elementor-widget-container .pt-cv-view {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
    
    .pt-cv-content-item,
    .elementor-widget-container .pt-cv-content-item {
        min-height: 260px !important; /* FORCE hauteur petit mobile */
        padding-bottom: 40px !important;
    }
    
    .pt-cv-readmore.pt-cv-textlink {
        bottom: 10px !important;
        left: 12px !important;
        right: 12px !important;
    }
}/* End custom CSS */