/*--------------------------------------------------------------
# Directory Search Filter 
--------------------------------------------------------------*/


/* Fixe la box de filtre/recherche à droite lors du scroll */
.search-filter-box {
  position: sticky;
  top: 170px; /* ajuste selon la hauteur de ton header */
  align-self: start; /* pour le grid */
  z-index: 100;
  padding: 10px;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* search slider margin fixing */
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-slider-filter-type .um-slider.ui-slider.ui-slider-horizontal {
    margin:inherit;
    margin-bottom: 10px;
}

.search-grid-container {
  display: grid;
  grid-gap:15px;  
  grid-template-columns: auto 300px;
  position: relative;
}

.search-grid-container-for-left-search-box {
  display: grid;
  grid-gap:15px;  
  grid-template-columns: 300px auto;
  position: relative;
}

.search-grid-container-for-left-search-box div:nth-child(2) {
   grid-column: 1 / 1;
   grid-row: 1 / 1;
}

/* search filter box left side code end*/

@media (max-width: 1024px) {
.search-grid-container, .search-grid-container-for-left-search-box{
   grid-template-columns: auto;
  }

  .one_fifth, .four_fifth_last{
    width: 100%;
  }

.search-grid-container div:nth-child(2), .search-grid-container-for-left-search-box div:nth-child(2) {
   grid-column: 1 / 1;
   grid-row: 1 / 1;
}
.um-directory .um-member-directory-header .search_filter_header_wrap_sidebar .um-member-directory-header-row .um-search{
  grid-template-rows: auto 2fr!important;
  grid-template-columns: repeat(2, 2fr)!important;
  grid-gap: 20px;
}

}
@media (min-width: 1025px) {
.um-directory .um-member-directory-header .search_filter_header_wrap_sidebar .um-member-directory-header-row .um-search{
  grid-template-rows: auto 1fr!important;
  grid-template-columns: repeat(1, 1fr)!important;
  grid-gap: 20px;
}

}
/* search filter sidebar */
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line{
  width: 300px!important;
}

.search_filter_header_wrap,
.search_filter_header_wrap_sidebar {
  background-color: #222;
  border-radius: 6px;
  padding: 10px;
  width: 100%; 
}


/* Range Slider Nouislider */
.um-nouislider, #slider-fit {
    padding: 0 16px;
    box-sizing: border-box;
    background: #fff;
}

.noUi-target {
  border-radius: 4px!important;
  background: #ccc!important;
  border: 0px!important;
}

.noUi-connect {
  background: #df0000!important;
  border-radius: 4px!important;
}

/*--------------------------------------------------------------
# Managing grid image width height for responsiveness
--------------------------------------------------------------*/

.um-directory.uimob960 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo,
.um-directory.uimob960 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo a,

.um-directory.uimob800 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo,
.um-directory.uimob800 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo a,

.um-directory.uimob500 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo,
.um-directory.uimob500 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo a,
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo,
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a

{
  width: inherit!important;
  height: inherit!important;

}
.um-directory.uimob960 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo a img,
.um-directory.uimob800 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo a img,
.um-directory.uimob500 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo a img,
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a img
{
    width: 100%!important;
    height: inherit!important;
}

.um-directory.uimob800 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo,
.um-directory.uimob800 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-card,
.um-directory.uimob500 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-card,
.um-directory.uimob340 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-card
 {
    width: unset;
}
.um-directory.uimob800 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo,
.um-directory.uimob500 .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member .um-member-photo
{
    margin: 0px;
}


/*--------------------------------------------------------------
# Directory Grid Column Settings
--------------------------------------------------------------*/

.um-directory .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list {  
  display: grid!important;
  grid-gap:10px;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  align-items: start;
  background-color: transparent;
}

.um-directory .um-members-wrapper .um-members-grid-wrapper .um-members.um-members-list .um-member img{
    min-height:250px;
    object-fit: cover!important;
    width: 100%;
}

.um-directory .um-members-wrapper .um-members.um-members-list .um-member {
    padding: 0px!important ;
    background-color: #000!important;
    border:none!important;
}


/*--------------------------------------------------------------
# Member Card Settings
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# SURCHARGE POUR DÉSACTIVER LES IMAGES RONDES
--------------------------------------------------------------*/
/* Force les images à ne pas être rondes - surcharge um-member.min.css */
.um-directory .um-members-wrapper .um-members .um-member .um-member-photo.radius-1 a img {
    -moz-border-radius: 10px !important;
    -webkit-border-radius: 10px !important;
    border-radius: 10px !important;
}

.um-member-photo {
  background-color: #fff;
  overflow: hidden;
  border-radius: 10px; /* adapte à ton design */
  position: relative;
}


/* Effet zoom sur la photo membre au survol */
.um-member-photo a img {
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
}

.um-member-photo:hover a img,
.um-member-photo a:hover img {
  transform: scale(1.2);
  z-index: 2;
}

.um-member-name {
    background-color: #df0000;
    text-align: center;
    padding: 6px 6px;
    border-radius: 10px !important;
    margin-top: 8px;
    margin-bottom: 20px;
}

.um-member-name h3 a {
    color: white;
    font-size: 1.25rem;
    font-weight: 500!important;
}

/* Height & Weight */
.um-member-card {
  position: relative;
}

.um-member-meta {
  position: absolute;
  left: 6px;
  bottom: 6px;
  margin: 0;
  font-size: 12px;
  padding: 4px;
  color: #fff;  
  background-color: rgba(149, 149, 149, 0.8);
  border-radius: 6px;
  z-index: 10;
}

 .um-member:hover .um-member-card-wrap-on  { 
  display: block;
}

.um-member:hover .um-member-name {
    background-color: #9c0000!important;
}
/*------- Shorlist Button -------*/
.talent-btn {
  top: 4px;
  right: 4px;
  width: auto!important;
  height: auto!important;
}

.um-member-card-wrap-on [type=button], [type=submit], button {
  background-color: #df0000;
  border: none; 
  border-radius: 3px;
  color: #fff;
  padding: 6px 10px 5px 10px;
}
/*--------------------------------------------------------------
# Member Profil
--------------------------------------------------------------*/
.um-profile.um .um-profile-headericon a {
    color: #df0000!important;
}

.um-profile .um-profile-body {
  padding: 0px;
}
.um-8.um .um-profile-photo a.um-profile-photo-img {
    width: 450px;
    height: auto;
}
.um-profile-photo,
.um-profile-photo a {
    width: 450px !important;
    height: 450px !important;
}

.um-dropdown-b .um-profile-photo a {
    width: 100%!important;
    height: auto!important;
}

/* Profile photo disable round */
.um .um-profile-photo a.um-profile-photo-img, .um .um-profile-photo img, 
.um .um-profile-photo span.um-profile-photo-overlay, 
.um-profile-photo a.um-profile-photo-img,
div.uimob960 .um-profile-photo a.um-profile-photo-img,
.um .um-profile-photo a.um-profile-photo-img, .um .um-profile-photo img, .um .um-profile-photo span.um-profile-photo-overlay
{
    float: left;
    border: 0px!important;
    border-radius:8px!important;
    -webkit-border-radius: 10px !important;
}

.um-meta span{
  font-size: 20px!important;
  padding-top: 5px;
}

.um-main-meta {
  background-color: #fff;
  border-radius: 8px;
  padding: 12px 0px!important;
}

.um-name a {
  font-size: 30px;
  text-transform: uppercase;
  color: #000!important;
}

.um-members-list {
  min-height: 350px;
  display: grid !important;
  place-items: center;
}

.um-members-none {
  grid-column: 1 / -1; /* occupe toute la largeur de la grid */
  grid-row: 1 / -1;    /* occupe toute la hauteur de la grid */
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  text-align: center;
  font-size: 1.3rem;
  color: #df0000;
  font-weight: 600;
  background: none;
  box-sizing: border-box;
  min-height: 350px;
}


.um-meta {
  font-size: 20px;
  padding: 10px 4px;
}

.um-header {
  border: 0px!important;
  padding: 0 0 25px 0!important;
  width: 450px;
  margin-left: 0;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  display: block;
}

/*  2 colonnes */
.um-profile-columns {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.um-profile-col-left {
  width: 450px;
  min-width: 300px;
  flex-shrink: 0;
}
.um-profile-col-right {
  flex: 1;
}
.um-profile .um-profile-body {
    padding-top: 0px!important;
}
.um-viewing .um-field-label label::after {
  content: " :";
  margin-right: 5px; 
}
.um-viewing .um-field {
  display: flex;
  align-items: flex-start;
  width: 100%;
  box-sizing: border-box;
  padding: 0px!important;
  margin-bottom: 4px;
}
.um-viewing .um-profile-col-right .um-field-label {
  padding-left: 12px!important;
}

.um-field-label label
{
  font-size: 15px!important;
  font-weight: 400;
  color: #888;
  margin-right: 10px;
  flex-shrink: 0;
}

.um-field-value {
  margin-top:-2px;
  font-size: 14px!important;
  font-weight: bold!important;
  color: #fff;
  font-weight: 300;
}

.um-viewing .um-field-label {
  display: flex;
  margin: 0!important;
  border: 0px!important;
  font-weight: bold;
  color: #df0000!important;
  padding: 0px!important;
}

.um-viewing .um-field-label .um-clear {
  display: none;
}

.um-viewing .um-field-area {
  flex: 1;
  display: flex;
  align-items: center;
}

.um-viewing .um-field-value {
  position: relative;
  top: 2px;
  word-break: break-word;
  width: 100%;
}

.um-viewing .um-field-value a{
  color: #fff;
  word-break: break-word;
}
.um-viewing .um-field-type_block,
.um-editing .um-field-type_block {
  background: #df0000;
  color: #fff;
  border-radius: 9px;
  padding: 14px 20px!important;
  margin-bottom: 20px;
  text-align: left;
  display: block;
  letter-spacing: 0.1rem;
}

.um-row-heading {
  background: #df0000;
  color: #fff;
  border-radius: 9px !important;
  padding: 10px 20px !important;
  margin-bottom: 10px!important;
  text-transform: uppercase;
  font-size: 25px !important;
  font-weight: bold;
  text-align: center;
  display: block;
}

.um-field-type_block[data-key="um_block_8_39"], .um-field-type_block[data-key="um_block_8_38"], .um-field-type_block[data-key="um_block_8_39_43"] {
  background: #000!important;
  color: #fff;
  padding: 0px 0 0 10px !important;
  text-align: left;
  letter-spacing: 0.1rem;
}

.um-field-type_block[data-key="um_block_5603_43"] {
  background: #222!important;
  color: #fff;
  padding: 6px 6px 6px 20px!important;
  text-align: left;
  letter-spacing: 0rem;
}

.um-viewing .um-field-youtube_video {
  margin-bottom: 10px;
}

/* sedcard */
.div.um-photo {
    margin: 0 auto 0 auto;
    text-align: center;
    box-sizing: border-box;
    max-width: 100%;
}

div.um-photo a {
    border: none!important;
    padding: 0px!important;
}
div.um-photo img {
  width: 100%!important;
  max-height: 100%!important;
  height: 100%!important;

}

.um-directory .um-members.um-members-list .um-member .um-member-photo .um-online-status, .um-directory.uimob800 .um-members.um-members-list .um-member .um-member-photo .um-online-status, .um-directory.uimob960 .um-members.um-members-list .um-member .um-member-photo .um-online-status {
    bottom: 2px;
    right: 4px;
}

.um-online-status.offline {
  display: none;
}

/*--------------------------------------------------------------
# Custom Profile column Settings
--------------------------------------------------------------*/
.um-viewing .um-profile .um-col-121,
.um-viewing .um-profile .um-col-122
{
  width: 50%;
}
.um-viewing .um-profile .um-col-131,
.um-viewing .um-profile .um-col-132,
.um-viewing .um-profile .um-col-133
{
  width: 33%!important;
  margin: 0px!important;
}


/*--------------------------------------------------------------
# Photos Gallery
--------------------------------------------------------------*/

.um-viewing .gallery-section > div,
.um-viewing #custommediagallery-img-gallery
{
  -webkit-column-count: 5;
     -moz-column-count: 5;
          column-count: 5;
  -webkit-column-width: 138px;
     -moz-column-width: 138px;
          column-width: 138px;
}



/*--------------------------------------------------------------
# Contact Form
--------------------------------------------------------------*/

.um-col-122 .wpcf7-form {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 0 !important;
}

.um-col-122 .wpcf7-form p,
.um-col-122 .wpcf7-form label,
.um-col-122 .wpcf7-form input[type="text"],
.um-col-122 .wpcf7-form input[type="email"],
.um-col-122 .wpcf7-form input[type="submit"],
.um-col-122 .wpcf7-form textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}


.wpcf7-form p {
  margin-bottom: 10px;
}

.wpcf7-form label {
  font-weight: 600;
  color: #ccc;
  display: block;
  margin-bottom: 8px;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea,
.wpcf7-form .wpcf7-text,
.wpcf7-form .wpcf7-email,
.wpcf7-form .wpcf7-textarea,
.wpcf7-form .wpcf7-form-control {
  padding: 12px 16px !important;
  border: 1.5px solid #ccc !important;
  border-radius: 8px !important;
  background: #fafbfc !important;
  font-size: 1rem !important;
  color: #222 !important;
  transition: border-color 0.2s !important;
  margin-top: 4px !important;
  outline: none !important;
  font-family: inherit !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form textarea:focus,
.wpcf7-form .wpcf7-text:focus,
.wpcf7-form .wpcf7-email:focus,
.wpcf7-form .wpcf7-textarea:focus,
.wpcf7-form .wpcf7-form-control:focus {
  border-color: #df0bef !important;
  background: #fff !important;
}

.wpcf7-form textarea {
  min-height: 80px !important; /* Environ 5 lignes */
  height: 120px !important;
  max-height: 200px !important;
  resize: vertical;
}

.wpcf7-form input[type="submit"] {
  background: #ccc!important;
  color: #000!important;
  border: none!important;
  border-radius: 8px;
  align-content: center;
  padding: 14px 36px;
  font-size: 1.1rem;
  font-weight: bold;
  cursor: pointer;
  display: block;
  margin: 24px auto 0 auto;
}

.wpcf7-form .wpcf7-response-output {
  padding: 12px 18px;
  border-radius: 8px;
  color: red;
  font-size: 1rem;
  border: 1.5px solid red!important;
}
.wpcf7-not-valid-tip {
  color: #df0bef;
}

.wpcf7-form .wpcf7-spinner {
  margin-left: 12px;
  vertical-align: middle;
}

/* Force l'uniformité des champs du formulaire Contact Form 7 */
.wpcf7-form .wpcf7-form-control {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

/* Style uniforme pour tous les types de champs */
.wpcf7-form input.wpcf7-text,
.wpcf7-form input.wpcf7-email,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"] {
  padding: 12px 16px !important;
  border: 1.5px solid #ccc !important;
  border-radius: 8px !important;
  background: #fafbfc !important;
  font-size: 1rem !important;
  color: #222 !important;
  font-family: inherit !important;
  line-height: 1.5 !important;
  height: 40px !important;
}

.select {
    display: contents!important;
}
.um-col-1 {
  padding-bottom: 20px!important;
}

*--------------------------------------------------------------
# Editing Profile mode
--------------------------------------------------------------*/

/* Masquer le row contact en mode édition */
.um-editing .um_row_contact {
  display: none !important;
}

/* Masquer le heading "Contacter ce profil" en mode édition */
.um-editing .um-row-heading:has(i.fa-envelope),
.um-editing .um-row-heading:has(.fa-envelope) {
  display: none !important;
}

.um-editing .um-field-type_block[data-key="um_block_5424_46"],
.um-editing .um-field-type_block[data-key="um_block_5603_44"],
.um-editing .um-field-type_block[data-key="um_block_5603_45"],
.um-editing .um-field-type_block[data-key="um_block_5603_41"]
{
  background: #666;
  color: #fff;
  border-radius: 12px;
  padding: 14px 30px !important;
  margin-bottom: 20px;
  font-size: 1.1rem;
  text-align: left;
  display: block;
}
.um-editing .um-field-label {
  width: 100px;
}

.um-editing #um_field_img-gallery {
  display: block;
  margin: 0px;  
  padding: 0px!important; 
}

.custommediawrapper {
  margin-top: 20px;
}
.custommediatable.customemdiatable_img-gallery {
  display: flex;
  gap: 5px;
  align-items: flex-start;
  flex-wrap: wrap; /* Permet le retour à la ligne si trop d’images */
  max-width: 100%;
  box-sizing: border-box;
}

.custommediatable.customemdiatable_img-gallery img {
  max-width: 94px;
  height: auto;
  object-fit: cover;
  display: block;
}

.um-member-directory-sorting-a-text, .um-clear-filters-a  {
  color: #666!important;
}

.um-member-directory-sorting-a-text, .um-clear-filters-a :hover {
  color: #df0000!important;
}

.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag {
  background-color: #666!important;
  color: #fff!important;
  border-radius: 6px;
  padding: 4px 8px;
  margin-right: 6px;
}

.um:not(.um-admin) {
  color: #ccc!important;
} 

.um-button {
  background-color: #ccc!important;
  color: #fff!important;
}

.remove-media-btn {
  background-color: #ccc!important;
  margin-top: 6px;
  color: #fff!important;
}
input#media_uploader_btn_img-gallery.customemediauploader {
  background: #ccc;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 10px 22px;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.2s;
}
#um_field_img-gallery .um-field-area {
  overflow-x: auto;
  max-width: 100%;
  box-sizing: border-box;
}
#media_uploader_btn_img-gallery {
  display: block;
  margin: 0 auto 0 auto;
  text-align: center;
}

a.put_user_as_pending-item,
a.real_url.resend_user_activation-item,
a.real_url.deactivate_user-item,
a.real_url.delete-item {
  display: none !important;
}

.um-editing .select2-container--default .select2-results__option {
  white-space: normal !important;
  word-break: break-word !important;
  padding-right: 16px;
}

.um-editing .select2-container--default .select2-selection--single .select2-selection__rendered {
  white-space: normal !important;
  word-break: break-word !important;
  line-height: 1.3 !important;
  display: block !important;
  min-height: 24px;
  padding-right: 30px !important;
}

.um-editing .select2-selection__choice {
  white-space: normal !important;
  word-break: break-word !important;
  max-width: 100%;
  line-height: 1.3;
  padding-right: 24px; /* espace pour le bouton × */
  box-sizing: border-box;
}
a.um-button.um-btn-auto-width[data-modal="um_upload_single"] {
  background-color: #ccc !important;
  color: #fff !important;
  border: none;
}

/*--------------------------------------------------------------
# Responsive Design
--------------------------------------------------------------*/
div.uimob800 .um-profile-photo {
  width: 100%!important;
}

div.uimob800 .um-profile-photo a.um-profile-photo-img {
    width: 100%!important;
    height: auto!important;
    top: -70px !important;
}


@media (max-width: 768px) {
.search-filter-box {
  position: relative;
  border: 0px !important;
  top: 30px;
  padding: 0;
  box-shadow: none;
} 

.um-profile-columns {
  flex-direction: column;
}

.um-profile-col-left,
.um-profile-col-right {
  width: 100%;
  min-width: 0;
}
.skills-bubble {
display: none;
}

div.uimob340 .um-header.no-cover .um-profile-photo a.um-profile-photo-img,
div.uimob500 .um-header.no-cover .um-profile-photo a.um-profile-photo-img {
  width: 100%!important;
  height: auto!important;
}
.um-member-photo.radius-1 {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.um-member-card-wrap-on {
  display: block !important;
  width: 100%;
  margin-top: 12px;
  position: static !important;
}

.wpcf7-form {
  padding: 0px!important;
  max-width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
.um-viewing .gallery-section > div,
.um-viewing #custommediagallery-img-gallery {
  column-count: 3 !important;
  column-width: 90px !important;
  column-gap: 8px !important;
  -webkit-column-width: 90px;
  -moz-column-width: 90px;
  column-width: 90px;
}
.um-member-meta {
    position: absolute;
    left: 6px;
    bottom: 18px;
}
}

@media (min-width: 768px) {
.page-header .entry-title, .site-footer .footer-inner, .site-footer:not(.dynamic-footer), .site-header:not(.dynamic-header), body:not([class*=elementor-page-]) .site-main {
  max-width: 1140px;
  padding : 0 10px;
}

.search-filter-box {
  position: relative;
  border: 0px !important;
  top: 30px;
  padding: 0;
  box-shadow: none;
} 

/* 2 colonnes */
.um-profile-columns {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.um-profile-col-left {
  width: 300px;
  min-width: 300px;
  flex-shrink: 0;
}
.um-profile-col-right {
  flex: 1;
}

div.uimob800 .um-profile-photo,
div.uimob960 .um-profile-photo {
    width: 100%!important;
}
div.uimob800 .um-profile-photo a.um-profile-photo-img,
div.uimob960 .um-profile-photo a.um-profile-photo-img {
  width: 100%!important;
  height: auto!important;
  top: 0!important;
}
.um-8.um .um-profile-photo a.um-profile-photo-img {
    width: 300px;
    height: auto;
}
}
}

/*--------------------------------------------------------------
# FORCER AFFICHAGE AVATAR 450x450
--------------------------------------------------------------*/

/* Force la taille de l'image de profil à 450x450 */
.um-profile-photo,
.um-profile-photo a,
.um-profile-photo a.um-profile-photo-img {
    width: 450px !important;
    height: 450px !important;
    display: block !important;
}

/* Force la taille de l'image elle-même */
.um-profile-photo img,
.um-profile-photo a img {
    width: 450px !important;
    height: 450px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    display: block !important;
}

/* Miniature personnalisée 450x450 */
.custom-profile-photo {
    width: 450px !important;
    height: 450px !important;
    margin-bottom: 15px;
    display: block;
}

.custom-profile-photo img {
    width: 450px !important;
    height: 450px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    display: block;
}

/* Menu déroulant de modification de photo */
.um-dropdown-b,
.um-dropdown-b ul {
    width: 100% !important;
    height: auto !important;
}

.um-dropdown-b ul li {
    width: 100% !important;
    height: auto !important;
}

.um-dropdown-b ul li a {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    box-sizing: border-box !important;
}

/*--------------------------------------------------------------
# SECTION VIDÉOS DÉPLACÉES
--------------------------------------------------------------*/
/* Nettoyage des sections vides ou dupliquées */
.medias .videos-section:empty,
.medias .contact-section:empty {
  display: none !important;
}

/* Masquer seulement les vraies sections en doublon (à partir de la 2ème) */
.medias .videos-section ~ .videos-section {
  display: none !important;
}

.medias .contact-section ~ .contact-section {
  display: none !important;
}

.medias .videos-section {
  margin-bottom: 30px;
}

.medias .videos-section .um-youtube iframe {
  width: 100% !important;
  max-width: 600px;
  height: 450px;
  border-radius: 8px;
  margin-bottom: 20px;
}

.medias .videos-section .um-row {
  margin-bottom: 0 !important;
}

.medias .videos-section .um-field {
  margin-bottom: 20px !important;
}

/* Responsive pour les vidéos déplacées */
@media (max-width: 768px) {
  .medias .videos-section .um-youtube iframe {
    height: 250px;
  }
  
  .medias .videos-section .um-row-heading,
  .medias .contact-section .um-row-heading {
    font-size: 20px !important;
    padding: 15px 20px !important;
  }
}

/*--------------------------------------------------------------
# SECTION CONTACT DÉPLACÉE
--------------------------------------------------------------*/
.medias .contact-section {
  margin-bottom: 30px;
  display: block !important;
}

.medias .contact-section .um-row-heading {
  display: block !important;
  margin-bottom: 10px !important;
}

.medias .contact-section .um-row {
  margin-bottom: 0 !important;
  display: block !important;
}

.medias .contact-section .um-field {
  margin-bottom: 20px !important;
  display: block !important;
}

.medias .contact-section .um-field {
  margin-bottom: 20px !important;
}

/* Formulaire de contact dans la section déplacée */
.medias .contact-section .wpcf7-form {
  width: 450px!important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.medias .contact-section .wpcf7-form p,
.medias .contact-section .wpcf7-form label,
.medias .contact-section .wpcf7-form input[type="text"],
.medias .contact-section .wpcf7-form input[type="email"],
.medias .contact-section .wpcf7-form input[type="submit"],
.medias .contact-section .wpcf7-form textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/*--------------------------------------------------------------
# SHORTLIST MEMBERS STYLES
--------------------------------------------------------------*/

/* Boutons d'action de la shortlist */
.send_buttons {
  background: #222;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 30px;
  text-align: left;
}

.send_buttons .button {
  background: #df0000 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px;
  font-size: 17px;
  padding: 12px 20px;
  margin: 0 8px 8px 0;
  cursor: pointer;
  transition: background 0.3s;
  text-decoration: none;
  display: inline-block;
}

.send_buttons .button:hover {
  background: #c20000 !important;
  transform: translateY(-1px);
}

.send_buttons .button[style*="background:#888"] {
  background: #666 !important;
}

.send_buttons .button[style*="background:#888"]:hover {
  background: #555 !important;
}

/* Formulaires de contact */
.send_profiles {
  background: #222;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 20px;
  color: #ccc;
  display: none; /* Cachés par défaut */
}

.send_profiles label {
  font-weight: 600;
  color: #ccc;
  display: block;
  margin-bottom: 8px;
}

.send_profiles input[type="text"],
.send_profiles textarea {
  padding: 12px 16px !important;
  border: 1.5px solid #ccc !important;
  border-radius: 8px !important;
  background: #fafbfc !important;
  font-size: 1rem !important;
  color: #222 !important;
  transition: border-color 0.2s !important;
  margin-top: 4px !important;
  outline: none !important;
  font-family: inherit !important;
  width: 500px !important;
  max-width: 500px !important;
  box-sizing: border-box !important;
  margin-bottom: 15px;
}

.send_profiles input[type="text"]:focus,
.send_profiles textarea:focus {
  border-color: #df0bef !important;
  background: #fff !important;
}

.send_profiles textarea {
  min-height: 80px !important;
  height: 120px !important;
  max-height: 200px !important;
  resize: vertical;
}

.send_profiles .buttoni {
  background: #ccc !important;
  color: #000 !important;
  border: none !important;
  border-radius: 8px;
  padding: 14px 36px;
  font-size: 1.1rem;
  font-weight: bold;
  cursor: pointer;
  display: block;
  margin: 24px 0 0 0;
}

/* Grille des profils */
.profiles-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

/* Carte de profil */
.profile-card {
  background: #222;
  border-radius: 12px;
  padding: 20px;
  position: relative;
  transition: transform 0.3s, box-shadow 0.3s;
  border: 2px solid #333;
}

.profile-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 25px rgba(223, 0, 0, 0.2);
  border-color: #df0000;
}

/* Avatar du profil */
.profile-avatar {
  display: block;
  margin-bottom: 15px;
  text-decoration: none;
}

.profile-avatar img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  border-radius: 8px;
  transition: transform 0.3s;
}

.profile-avatar:hover img {
  transform: scale(1.05);
}

/* Informations du profil */
.profile-info {
  color: #ccc;
}

.profile-name {
  text-decoration: none;
  display: block;
  margin-bottom: 12px;
}

.profile-name h3 {
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  margin: 0;
  text-transform: uppercase;
}

.profile-name:hover h3 {
  color: #df0000;
}

.profile-info p {
  margin: 2px 0;
  font-size: 13px;
  line-height: 1.4;
}

.profile-info i.fa {
  color: #df0000;
  width: 16px;
}

.profile-info u {
  text-decoration: underline;
  color: #df0000;
  font-weight: 600;
}

/* Bouton de suppression */
.remove-profile {
  position: absolute;
  top: 15px;
  right: 15px;
  background: rgba(223, 0, 0, 0.8);
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s, transform 0.2s;
  backdrop-filter: blur(4px);
}

.remove-profile:hover {
  background: rgba(223, 0, 0, 1);
  transform: scale(1.1);
}

.remove-profile i {
  font-size: 14px;
}

/* Message quand aucun profil */
.profiles-grid p {
  grid-column: 1 / -1;
  text-align: center;
  color: #999;
  font-size: 16px;
  background: #222;
  border-radius: 8px;
}

/* Responsive */
@media (max-width: 768px) {
  .profiles-grid {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 15px;
  }
  
  .profile-card {
    padding: 15px;
  }
  
  .profile-avatar img {
    height: 200px;
  }
  
  .send_buttons {
    padding: 15px;
  }
  
  .send_buttons .button {
    display: block;
    width: 100%;
    margin: 0 0 10px 0;
  }
  
  .send_profiles {
    padding: 15px;
  }
}