.node--type-page .align-left{
    margin: 0 25px 20px 0;
}

.afro-media-modal[hidden]{display:none;}
.afro-media-modal{
  position:fixed; inset:0; background:rgba(0,0,0,.85);
  z-index:9999; display:flex; align-items:center; justify-content:center;
  padding:24px;
}
.afro-media-modal__content{width:min(1100px, 100%);}
.afro-media-modal__close{
  position:absolute; top:16px; right:16px; font-size:32px; color:#fff; background:none; border:0; cursor:pointer;
}
.afro-modal-open{overflow:hidden;}
.afro-media-modal__prev,.afro-media-modal__next,
.afro-media-modal__nav button{
  position:absolute; top:50%; transform:translateY(-50%);
  font-size:32px; color:#fff; background:none; border:0; cursor:pointer;
}
.afro-media-modal__prev,
.afro-media-modal__nav button[data-afro-prev=""]{left:16px;}
.afro-media-modal__next,
.afro-media-modal__nav button[data-afro-next=""]{right:16px;}

.map-detailed-box-frame {
  display: flex;
  justify-content: center;
  margin-top: 27px;
  gap: 122px;
  align-items: center;
}
.map-detailed-box-frame #info-detailed {
  flex: 1.5;
  background-color: #194F40;
  height: -moz-fit-content;
  height: fit-content;
  padding: 27px 30px 36px;
  max-width: 532px;
  position: sticky;
  top: calc(var(--header-height) + 20px);
}
.map-detailed-box-frame #info-detailed .country-card .card-header {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 28px;
}
.map-detailed-box-frame #info-detailed .country-card .card-header img {
  width: 85px;
  height: 60px;
  border-radius: 5px;
}
.map-detailed-box-frame #info-detailed .country-card .card-header .country-name {
  font-family: Helvetica Neue;
  font-weight: 500;
  font-style: Medium;
  font-size: 28.74px;
  color: white;
}
.map-detailed-box-frame #info-detailed .country-card .institution {
  font-family: Helvetica Neue;
  font-weight: 500;
  font-style: Medium;
  font-size: 28px;
  color: #FFFFFF;
  margin-bottom: 18px;
}
.map-detailed-box-frame #info-detailed .country-card .details {
  list-style: none;
  padding-left: 0;
  font-family: Roboto Flex;
  font-weight: 500;
  font-style: Medium;
  font-size: 14px;
  color: white;
  margin-bottom: 39px;
}
.map-detailed-box-frame #info-detailed .country-card .details li {
  margin-bottom: 13px;
}

.map-detailed-box-frame #info-detailed .country-card .card-footer {
  display: flex;
  justify-content: flex-end;
}
.map-detailed-box-frame #info-detailed .country-card .card-footer a {
  text-decoration: none;
  padding: 8px 16px;
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 12.57px;
  color: white;
  background-color: #3A9E50;
}
.map-detailed-box-frame #info-detailed .country-card .card-footer a:hover {
  background-color: #2E7D3E;
}
.map-detailed-box-frame .map-wrapper {
  flex: 1;
  padding: 20px;
  position: relative;
  /* show */
  /* bottom arrow */
}
.map-detailed-box-frame .map-wrapper .country-tooltip {
  position: absolute;
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 9.24px;
  text-transform: capitalize;
  background-color: #3A9E50;
  color: white;
  padding: 6px 12px;
  white-space: nowrap;
  pointer-events: none;
  transform: translate(-50%, -100%);
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.map-detailed-box-frame .map-wrapper .country-tooltip.active {
  opacity: 1;
}
.map-detailed-box-frame .map-wrapper .country-tooltip::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 9px solid #3fa34d;
}
.map-detailed-box-frame .map-wrapper svg {
  width: 100%;
  height: 100%;
}
.map-detailed-box-frame .country {
  fill: #dedede;
  stroke-width: 1;
  cursor: pointer;
  transition: fill 0.2s ease;
}
.map-detailed-box-frame .country:hover {
  fill: #3A9E50;
}
.map-detailed-box-frame .country.active {
  fill: #194F40;
}
.map-detailed-box-frame g.country circle:not(.hitbox) {
  fill: #DEDEDE;
  stroke: none;
  transition: fill 0.2s ease;
}
.map-detailed-box-frame g.country.has-member:hover circle:not(.hitbox) {
  fill: #3A9E50 !important;
}
.map-detailed-box-frame g.country.active circle:not(.hitbox) {
  fill: #194F40 !important;
}
.map-detailed-box-frame .country-description {
  flex: 2.3;
  display: none
}
.map-detailed-box-frame .subtitle {
  font-family: Inter;
  font-weight: 600;
  font-style: Semi Bold;
  font-size: 28px;
  color: #194F40;
  margin-bottom: 17px;
}
.map-detailed-box-frame ul {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 18px;
  leading-trim: NONE;
  line-height: 28px;
  letter-spacing: 0%;
  color: #384D50;
  margin-bottom: 27px;
}

@media (max-width: 768px) {
  .map-detailed-box-frame {
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;
  }
  .map-detailed-box-frame #info-detailed {
    max-width: none;
    padding: 20px;
    position: static;
  }
  .map-detailed-box-frame .country-description {
    flex: none;
  }
  .map-detailed-box-frame .map-wrapper .country-tooltip {
    font-size: 6px;
    padding: 3px 6px;
  }
  .map-detailed-box-frame .map-wrapper .country-tooltip::after {
    bottom: -6px;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #3fa34d;
  }
}

.afrodv-membres-carte .afro-right-wrapper{
  display: none !important;
}

.page-wrapper :focus, .ui-dialog :focus {
  outline: none !important;
  box-shadow: none !important;
}

.video-thumb article,
.video-thumb .field--name-field-media-oembed-video,
.video-thumb iframe{
  width: 100%;
  height: 100%;
}

.afro-promo-container .video-container .video-thumb img{
  z-index: 2;
}
.video-thumb .field--name-field-media-oembed-video{
  position: absolute;
  left: 0;
  right: 0;
  height: 100%;
  top: 0;
  bottom: 0;
}


#afro-pagination.is-loading {
  opacity: 0.7;
}

#afro-formations-pages .formations-list {
  transition: opacity 0.25s ease, transform 0.25s ease;
}


#afro-formations-pages .formations-list.is-loading {
  opacity: 0.7;
  transform: translateY(8px);
}


#afro-pagination {
  transition: opacity 0.25s ease;
}

#afro-pagination.is-loading {
  opacity: 0.7;
}


.afrodv-formations #afro-formations-pages,
.afrodv-partenaires #afro-formations-pages,
.afrodv-partners #afro-formations-pages,
.afrodv-contact #afro-formations-pages{
  padding: 0;
}

.afrodv-formations .afro-right-wrapper{
  display: none !important;
}

.webform-confirmation__message{
  text-align: center;
  padding-top: 120px;
  font-weight: bold;
  font-size: 30px;
  color: #297560;
}

#afro-formations-pages .formations-container .formation-card-details img{
  height: auto !important;
  max-height: none !important;
}    
.nav-btn{
  text-decoration: none;
}

.left-wrapper .field--name-field-breadcrumb-bg{
  display: none !important
}

.marquee-swiper .swiper-wrapper {
  transition-timing-function: linear !important;
}
.list-ressource a{
  color: #297560 !important;
  background: #fff !important;
  padding: 0 !important;
  border: none !important;
  font-size: 15px !important;
  
  
}
.list-ressource a:before{
  display: none !important;
}
.list-ressource a:hover{
  text-decoration: underline !important;
}

/* Container */
 .filters-extra{
  display: flex;
  align-items: center;
  gap: 12px;
  margin-left: 16px;
  flex-wrap: wrap;
  padding-top: 20px;
  padding-left: 20px;
}

/* Selects */
.filters-extra select,
.afro-sort-select{
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  min-width: 190px;
  height: 40px;
  padding: 10px 40px 10px 14px;

  border: 1px solid rgba(41, 117, 96, 0.25);
  background-color: #fff;
  color: #1b1b1b;

  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.2px;

  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, background-color 160ms ease;

  cursor: pointer;
}

/* Custom chevron */
.filters-extra select,
.afro-sort-select{
  background-image:
    linear-gradient(45deg, transparent 50%, #297560 50%),
    linear-gradient(135deg, #297560 50%, transparent 50%),
    linear-gradient(to right, transparent, transparent);
  background-position:
    calc(100% - 22px) 19px,
    calc(100% - 16px) 19px,
    0 0;
  background-size:
    6px 6px,
    6px 6px,
    100% 100%;
  background-repeat: no-repeat;
}

/* Hover / focus */
.filters-extra select:hover,
.afro-sort-select:hover{
  border-color: rgba(41, 117, 96, 0.45);
  transform: translateY(-1px);
}

.filters-extra select:focus,
.afro-sort-select:focus{
  outline: none;
  border-color: rgba(41, 117, 96, 0.8);
  box-shadow: 0 0 0 3px rgba(41, 117, 96, 0.18), 0 10px 22px rgba(0,0,0,0.08);
  background-color: #fbfdfc;
}

.filters-extra select:disabled{
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none;
}


.filters-extra select option,
.afro-sort-select option{
  color: #1b1b1b;
}


@media (max-width: 992px){
   .filters-extra{
    margin-left: 0;
    gap: 10px;
    padding-left: 0 !important;
  }
 .filters-extra select{
    min-width: 160px;
    height: 40px;
  }
}

@media (max-width: 600px){
 .filters-extra{
    width: 100%;
  }
  .filters-extra select{
    width: 100%;
    min-width: 0;
  }
}


#afro-insription-steps-page {
  max-width: 1240px;
  margin: 0 auto;
  padding: 120px 20px;
}
#afro-insription-steps-page .title {
  font-family: Helvetica Neue;
  font-weight: 500;
  font-style: Medium;
  font-size: 32px;
  color: #03140F;
  margin-bottom: 27px;
}
#afro-insription-steps-page .paragraph {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 18px;
  line-height: 28px;
  margin-bottom: 53px;
  color: #384D50;
}
#afro-insription-steps-page form {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  justify-content: space-between;
}
#afro-insription-steps-page form .field-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 573px;
}
#afro-insription-steps-page form .field-container label {
  font-family: Roboto Flex;
  font-weight: 500;
  font-style: Medium;
  font-size: 18px;
  color: #03140F;
  margin-bottom: 11px;
}
#afro-insription-steps-page form .field-container input, #afro-insription-steps-page form .field-container select, #afro-insription-steps-page form .field-container textarea {
  background-color: #F7F7F7;
  border: 0.54px solid #E3E3E3;
  padding: 24px;
  transition: all 0.3s ease;
}
#afro-insription-steps-page form .field-container input::-moz-placeholder, #afro-insription-steps-page form .field-container select::-moz-placeholder, #afro-insription-steps-page form .field-container textarea::-moz-placeholder {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 16px;
  color: #384D50;
}
#afro-insription-steps-page form .field-container input::placeholder, #afro-insription-steps-page form .field-container select::placeholder, #afro-insription-steps-page form .field-container textarea::placeholder {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 16px;
  color: #384D50;
}
#afro-insription-steps-page form .field-container input:focus, #afro-insription-steps-page form .field-container select:focus, #afro-insription-steps-page form .field-container textarea:focus {
  outline: #979797 1px solid;
}
#afro-insription-steps-page form .field-container .select-wrapper {
  position: relative;
  width: 100%;
}
#afro-insription-steps-page form .field-container .select-wrapper select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  position: relative;
  z-index: 1;
}
#afro-insription-steps-page form .field-container .select-wrapper::after {
  content: "";
  position: absolute;
  inset-block: 0;
  right: 30px;
  margin: auto 0;
  width: 15px;
  height: 9px;
  background: url("data:image/svg+xml,%3Csvg width='15' height='9' viewBox='0 0 15 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.7578 0.809397L7.28352 7.28369L0.809223 0.809397' stroke='%232A2F3B' stroke-width='1.61857' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  pointer-events: none;
  z-index: 2;
}
#afro-insription-steps-page form .field-container.text-area {
  width: 100%;
  max-width: none;
}
#afro-insription-steps-page form .field-container.form-switch {
  flex-direction: row;
  align-items: center;
  gap: 18px;
}
#afro-insription-steps-page form .field-container.form-switch .form-check-input {
  padding: 0;
  width: 66px;
  height: 37px;
  cursor: pointer;
  /* OFF state */
  background-color: #e0e0e0;
  border-color: #e0e0e0;
  /* ON state */
}
#afro-insription-steps-page form .field-container.form-switch .form-check-input:checked {
  background-color: #297560;
  border-color: #297560;
}
#afro-insription-steps-page form .field-container.form-switch label {
  margin: 0;
}
#afro-insription-steps-page form .buttons-container {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  gap: 20px;
}
#afro-insription-steps-page form .buttons-container button {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: Poppins;
  font-weight: 400;
  font-style: Regular;
  font-size: 20px;
  text-transform: capitalize;
  color: white;
  background-color: #297560;
  padding: 28px 100px;
  max-width: 317px;
  border: 1px solid transparent;
  transition: all 0.3s ease;
  cursor: pointer;
  white-space: nowrap;
}
#afro-insription-steps-page form .buttons-container button:hover {
  background-color: transparent;
  color: #297560;
  border: #297560 1px solid;
}
#afro-insription-steps-page form .buttons-container .back-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  background-color: #E7F3F0;
  color: #297560;
  justify-self: start;
  border: 1px solid #297560;
  transition: all 0.3s ease;
}
#afro-insription-steps-page .afro-inscription-event-card {
  display: flex;
  gap: 30px;
  margin-bottom: 40px;
}
#afro-insription-steps-page .afro-inscription-event-card img {
  flex: 1.13;
  height: 100%;
  max-height: 200px;
}
#afro-insription-steps-page .afro-inscription-event-card .content {
  flex: 3;
}
#afro-insription-steps-page .afro-inscription-event-card .content span {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#afro-insription-steps-page .afro-inscription-event-card .content span .title {
  font-size: 24px;
  margin-bottom: 10px;
}
#afro-insription-steps-page .afro-inscription-event-card .content span .date {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 18px;
  text-transform: capitalize;
  color: #194F40;
}
#afro-insription-steps-page .afro-inscription-event-card .content .location {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: Regular;
  font-size: 18px;
  color: rgba(56, 77, 80, 0.8);
  display: flex;
  align-items: center;
  gap: 2.5px;
  margin-bottom: 18px;
}
#afro-insription-steps-page .afro-inscription-event-card .content .location i {
  color: #297560;
}
#afro-insription-steps-page .afro-inscription-event-card .content .contact {
  font-family: Helvetica Neue;
  font-weight: 500;
  font-style: Medium;
  font-size: 18px;
  text-transform: capitalize;
  color: #03140F;
  margin-bottom: 14px;
}
#afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
#afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper .contact-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 347px;
  font-family: Roboto Flex;
  font-weight: 500;
  font-style: Medium;
  font-size: 14px;
  color: #384D50;
}
#afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper .contact-info b {
  color: #03140F;
}
#afro-insription-steps-page .stepper {
  position: relative;
  width: 100%;
  margin-bottom: 40px;
}
#afro-insription-steps-page .stepper__bar {
  height: 8px;
  background: #CFD6DC;
  border-radius: 5px;
}
#afro-insription-steps-page .stepper__progress {
  height: 100%;
  width: var(--progress, 0%);
  background: #297560;
  transition: width 0.35s ease;
  border-radius: 5px;
}
#afro-insription-steps-page .stepper__steps {
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
}
#afro-insription-steps-page .step {
  color: #CFD6DC;
  font-family: Roboto Flex;
  font-weight: 600;
  font-style: SemiBold;
  font-size: 14px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}
#afro-insription-steps-page .step:first-child {
  text-align: left;
}
#afro-insription-steps-page .step:last-child {
  text-align: right;
}
#afro-insription-steps-page .step.is-active, #afro-insription-steps-page .step.is-complete {
  color: #297560;
}
#afro-insription-steps-page .step.is-active::before, #afro-insription-steps-page .step.is-complete::before {
  background: #297560;
}
#afro-insription-steps-page .hotel-card {
  display: flex;
  padding: 23px;
  gap: 40px;
  border: 1px solid #E3E3E3;
  width: 100%;
}
#afro-insription-steps-page .hotel-card .img-container {
  width: 190px;
  height: 190px;
  overflow: hidden;
}
#afro-insription-steps-page .hotel-card .img-container img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#afro-insription-steps-page .hotel-card .content {
  width: 80%;
}
#afro-insription-steps-page .hotel-card .content .title-and-star {
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}
#afro-insription-steps-page .hotel-card .content .title-and-star .title {
  font-family: Roboto;
  font-weight: 600;
  font-style: SemiBold;
  font-size: 46px;
  color: #1F2226;
}
#afro-insription-steps-page .hotel-card .content .title-and-star .star {
  font-family: Plus Jakarta Sans;
  font-weight: 700;
  font-style: Bold;
  font-size: 32px;
  color: #333333;
  height: 30px;
  display: flex;
  align-items: center;
  gap: 10px;
}
#afro-insription-steps-page .hotel-card .content .title-and-star .star svg {
  height: 100%;
}
#afro-insription-steps-page .hotel-card .content .location {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #384D50;
  font-family: Inter;
  font-weight: 500;
  font-style: Medium;
  font-size: 24px;
  margin-bottom: 34px;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action p {
  font-family: Roboto Flex;
  font-weight: 400;
  font-style: SemiBold;
  font-size: 42.55px;
  color: #384D50;
  margin: 0;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action p b {
  color: #359177;
  font-weight: 700;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox {
  display: inline-flex;
  cursor: pointer;
  /* unchecked state */
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox input {
  display: none;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox .checkmark {
  width: 64px;
  height: 64px;
  background-color: #3fa98b;
  border-radius: 8px;
  position: relative;
  transition: background-color 0.25s ease;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox .checkmark::after {
  content: "";
  position: absolute;
  left: 20px;
  top: 14px;
  width: 16px;
  height: 30px;
  border: solid #fff;
  border-width: 0 6px 6px 0;
  transform: rotate(45deg);
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox input:not(:checked) + .checkmark {
  background-color: white;
  border: 7px solid #C3C3C3;
}
#afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox input:not(:checked) + .checkmark::after {
  display: none;
}

@media (max-width: 768px) {
  #afro-insription-steps-page {
    padding: 60px 15px;
  }
  #afro-insription-steps-page .title {
    font-size: 32px;
    margin-bottom: 16px;
  }
  #afro-insription-steps-page .paragraph {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 32px;
  }
  #afro-insription-steps-page form {
    gap: 24px;
  }
  #afro-insription-steps-page form .field-container {
    max-width: 100%;
  }
  #afro-insription-steps-page form .field-container label {
    font-size: 16px;
    margin-bottom: 8px;
  }
  #afro-insription-steps-page form .field-container input, #afro-insription-steps-page form .field-container select, #afro-insription-steps-page form .field-container textarea {
    padding: 16px;
    font-size: 16px;
  }
  #afro-insription-steps-page form .field-container.text-area {
    max-width: 100%;
  }
  #afro-insription-steps-page form .buttons-container {
    justify-content: center;
    flex-direction: column;
  }
  #afro-insription-steps-page form .buttons-container button {
    padding: 20px 60px;
    font-size: 18px;
    max-width: 100%;
    width: auto;
  }
  #afro-insription-steps-page .afro-inscription-event-card {
    flex-direction: column;
    gap: 16px;
  }
  #afro-insription-steps-page .afro-inscription-event-card img {
    flex: 1;
    max-height: 150px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content {
    flex: 1;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content span {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content span .title {
    font-size: 18px;
    margin-bottom: 8px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content span .date {
    font-size: 14px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .location {
    font-size: 14px;
    margin-bottom: 12px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .contact {
    font-size: 16px;
    margin-bottom: 10px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper {
    gap: 12px;
    flex-direction: column;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper .contact-info {
    width: 100%;
    font-size: 13px;
    margin: 0;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper .contact-info p {
    margin-bottom: 0;
  }
  #afro-insription-steps-page .hotel-card {
    flex-direction: column;
    padding: 16px;
    gap: 20px;
  }
  #afro-insription-steps-page .hotel-card .img-container {
    width: 100%;
    height: auto;
    max-height: 150px;
  }
  #afro-insription-steps-page .hotel-card .img-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #afro-insription-steps-page .hotel-card .content {
    width: 100%;
  }
  #afro-insription-steps-page .hotel-card .content .title-and-star {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px;
  }
  #afro-insription-steps-page .hotel-card .content .title-and-star .title {
    font-size: 28px;
  }
  #afro-insription-steps-page .hotel-card .content .title-and-star .star {
    font-size: 24px;
  }
  #afro-insription-steps-page .hotel-card .content .location {
    font-size: 18px;
    margin-bottom: 20px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action p {
    font-size: 32px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox .checkmark {
    width: 40px;
    height: 40px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox .checkmark::after {
    left: 15px;
    top: 10px;
    width: 12px;
    height: 24px;
    border-width: 0 4px 4px 0;
  }
  #afro-insription-steps-page .stepper {
    margin-bottom: 30px;
  }
  #afro-insription-steps-page .stepper__steps {
    margin-top: 0.5rem;
  }
  #afro-insription-steps-page .step {
    font-size: 12px;
    white-space: normal;
    word-break: break-word;
  }
  #afro-insription-steps-page .step:first-child {
    text-align: left;
  }
  #afro-insription-steps-page .step:last-child {
    text-align: right;
  }
}
@media (max-width: 480px) {
  #afro-insription-steps-page {
    padding: 40px 12px;
  }
  #afro-insription-steps-page .title {
    font-size: 24px;
    margin-bottom: 12px;
  }
  #afro-insription-steps-page .paragraph {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 24px;
  }
  #afro-insription-steps-page form {
    gap: 16px;
  }
  #afro-insription-steps-page form .field-container label {
    font-size: 14px;
    margin-bottom: 6px;
  }
  #afro-insription-steps-page form .field-container input, #afro-insription-steps-page form .field-container select, #afro-insription-steps-page form .field-container textarea {
    padding: 12px;
    font-size: 14px;
  }
  #afro-insription-steps-page form .buttons-container {
    flex-direction: column;
  }
  #afro-insription-steps-page form .buttons-container button {
    padding: 16px 40px;
    font-size: 16px;
  }
  #afro-insription-steps-page .afro-inscription-event-card {
    gap: 12px;
  }
  #afro-insription-steps-page .afro-inscription-event-card img {
    max-height: 120px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content span .title {
    font-size: 16px;
    margin-bottom: 6px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content span .date {
    font-size: 12px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .location {
    font-size: 12px;
    margin-bottom: 8px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .contact {
    font-size: 14px;
    margin-bottom: 8px;
  }
  #afro-insription-steps-page .afro-inscription-event-card .content .contacts-wrapper .contact-info {
    font-size: 12px;
    gap: 4px;
  }
  #afro-insription-steps-page .hotel-card {
    padding: 12px;
    gap: 16px;
  }
  #afro-insription-steps-page .hotel-card .img-container {
    max-height: 120px;
  }
  #afro-insription-steps-page .hotel-card .content .title-and-star {
    margin-bottom: 6px;
  }
  #afro-insription-steps-page .hotel-card .content .title-and-star .title {
    font-size: 24px;
  }
  #afro-insription-steps-page .hotel-card .content .title-and-star .star {
    font-size: 20px;
  }
  #afro-insription-steps-page .hotel-card .content .location {
    font-size: 16px;
    margin-bottom: 16px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action {
    gap: 10px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action p {
    font-size: 28px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox .checkmark {
    width: 40px;
    height: 40px;
  }
  #afro-insription-steps-page .hotel-card .content .pricing-and-action .custom-checkbox .checkmark::after {
    left: 12px;
    top: 8px;
    width: 10px;
    height: 20px;
    border-width: 0 3px 3px 0;
  }
  #afro-insription-steps-page .stepper {
    margin-bottom: 20px;
  }
  #afro-insription-steps-page .step {
    font-size: 10px;
  }
}

.dropdown-selector span{
  color: #fff;
}

.dropdown-selector path{
  stroke: #fff;
} 
#afro-header .afro-navbar .nav-contianer .icons .dropdown-selector{
  display: none;
}

.afro-pre-header .afro-pre-header-container .afro-pre-header-rs .icons .dropdown-selector{
  position: relative;
}

/* Language switcher dropdown — applies wherever the selector is placed */
.dropdown-selector--language {
  position: relative;
  display: inline-block;
  user-select: none;
  margin-left: 10px;
}
.dropdown-selector--language .dropdown-selector__toggle {
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 6px 4px;
  font-size: 13px;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  gap: 5px;
  color: #fff;
  line-height: 1;
}
.dropdown-selector--language .dropdown-selector__label {
  color: inherit;
  font-weight: 600;
}
.dropdown-selector--language .dropdown-selector__toggle svg {
  transition: transform 0.2s ease;
  width: 9px;
  height: 5px;
  flex-shrink: 0;
}
.dropdown-selector--language.active .dropdown-selector__toggle svg {
  transform: rotate(180deg);
}
.dropdown-selector--language .dropdown-selector__menu {
  position: absolute;
  top: 100%;
  right: 0;
  margin: 4px 0 0;
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
  list-style: none;
  padding: 6px 0;
  display: none;
  z-index: 1000;
  min-width: 70px;
}
.dropdown-selector--language[dir="rtl"] .dropdown-selector__menu {
  right: auto;
  left: 0;
}
.dropdown-selector--language .dropdown-selector__menu li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.dropdown-selector--language .dropdown-selector__menu a,
.dropdown-selector--language .dropdown-selector__menu .dropdown-selector__item {
  display: block;
  padding: 6px 14px;
  text-decoration: none;
  color: #062024;
  font-size: 13px;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  transition: background-color 0.15s ease;
}
.dropdown-selector--language .dropdown-selector__menu a:hover {
  background-color: #f5f5f5;
  color: #194F40;
}
.dropdown-selector--language.active .dropdown-selector__menu {
  display: block;
}
@media (min-width: 768px) {
  .dropdown-selector--language:hover .dropdown-selector__menu {
    display: block;
  }
  .dropdown-selector--language:hover .dropdown-selector__toggle svg {
    transform: rotate(180deg);
  }
}

.country.is-disabled {
  opacity: 0.9;
  cursor: default;
}
.afrodv-membres-cart .country.is-disabled {
  opacity: 0.4 !important;
  cursor: default;
}

.country.has-member {
  cursor: pointer;
}

.country.is-disabled:hover {
  filter: none;
  opacity: 0.9;
}


.event-lightbox-inner .swiper-wrapper{
  align-items: center;
}

.block-field-blocknodepagefield-documents{
  display: none !important;
}

#afro-wysiwyg-page .afro-left-wrapper .afro-wysiwyg a.afro-document-button{
  padding: 5px 27px !important;
}
#afro-wysiwyg-page .afro-left-wrapper .afro-wysiwyg a.afro-document-button:hover{
background-color: #2f7f68 !important;
  opacity: .7;
}
#afro-wysiwyg-page .afro-left-wrapper .afro-wysiwyg a.afro-document-button span{
  color: #fff !important;
  margin-bottom: 0 !important;
}

.afro-events .afro-events-container {
  align-items: stretch;
}

.afro-events .afro-events-container .left-frame,
.afro-events .afro-events-container .right-frame {
  display: flex;
  flex-direction: column;
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper,
.afro-events .afro-events-container .right-frame .afro-acts-right-swiper {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper .swiper-wrapper,
.afro-events .afro-events-container .right-frame .afro-acts-right-swiper .swiper-wrapper {
  flex: 1;
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper .swiper-slide {
  height: auto;
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper .swiper-wrapper .afro-event-card {
  display: flex;
  height: 100%;
  flex-direction: column;
  min-height: 403px
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper .swiper-wrapper .afro-event-card .event-name {
  display: block;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.35;
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper .swiper-wrapper .afro-event-card .event-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
  text-overflow: ellipsis;
}

.afro-events .afro-events-container .left-frame .afro-events-left-swiper .swiper-wrapper .afro-event-card .event-info {
  margin-top: auto;
}

.afro-events .afro-events-container .right-frame .afro-acts-right-swiper .swiper-wrapper .afro-acts-card .afro-act-wide-card .content .titles .title,
.afro-events .afro-events-container .right-frame .afro-acts-right-swiper .swiper-wrapper .afro-acts-card .afro-act-wide-card .content .titles .title a {
  display: block;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.afro-events .afro-events-container .right-frame .afro-acts-right-swiper .swiper-wrapper .afro-acts-card .afro-act-wide-card .content .titles .description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
}

.afro-slider .afro-swiper .swiper-wrapper .swiper-slide .afro-slide-link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.afro-slider .afro-swiper .swiper-wrapper .swiper-slide .afro-slide-link .content {
  height: 100%;
}

#afro-projets-page .afro-appel-projets-container .appel-projet-card {
  position: relative;
}

#afro-projets-page .afro-appel-projets-container .appel-projet-card .content {
  padding-bottom: 50px;
}

#afro-projets-page .afro-appel-projets-container .appel-projet-card .content .link {
  position: absolute;
  right: 20px;
  bottom: 20px;
  margin-bottom: 0;
}

.afro-connaissance .afro-connaissance-container .afro-connaissance-slider .afro-connaissance-wrapper .swiper-slide .afro-connaissance-card {
  position: relative;
  min-height: 648px;
}

.afro-connaissance .afro-connaissance-container .afro-connaissance-slider .afro-connaissance-wrapper .swiper-slide .afro-connaissance-card .content {
  padding-bottom: 44px;
}

.afro-connaissance .afro-connaissance-container .afro-connaissance-slider .afro-connaissance-wrapper .swiper-slide .afro-connaissance-card .content .link {
  position: absolute;
  left: 0;
  bottom: 20px;
  margin-bottom: 0;
}

#afro-formations-pages .afro-partenaires-container .afro-partenaires-card {
  position: relative;
  min-height: 620px;
}

#afro-formations-pages .afro-partenaires-container .afro-partenaires-card .description {
  margin-bottom: 0;
}

#afro-formations-pages .afro-partenaires-container .afro-partenaires-card .link {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: auto;
  text-align: right;
}

footer .foot-container {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) minmax(240px, 280px);
  column-gap: 64px;
  row-gap: 22px;
  align-items: start;
}

footer .foot-container .links-container {
  max-width: none;
  gap: 24px;
}

footer .foot-container .links-container ul {
  gap: 12px;
}

footer .foot-container .block-webform,
footer .foot-container #block-afro-footer-newsletter-block {
  grid-column: 4;
  grid-row: 1;
  max-width: 280px;
  width: 100%;
}

footer .foot-container #block-afro-footer-contact-block {
  grid-column: 4;
  grid-row: 2;
  width: 100%;
  width: 100%;
  margin-top: -70px;
}

footer .foot-container .newsletter button,
footer .foot-container .block-webform input[type="submit"] {
  margin-bottom: 16px;
}

footer .foot-container #block-afro-footer-contact-block .block-block-content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: start;
  color: #fff;
}

footer .foot-container #block-afro-footer-contact-block .block-block-content > div,
footer .foot-container #block-afro-footer-contact-block .block-block-content .field,
footer .foot-container #block-afro-footer-contact-block .block-block-content .field__item,
footer .foot-container #block-afro-footer-contact-block .block-block-content a {
  font-family: Helvetica Neue;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.4;
  color: #fff;
  text-decoration: none;
  margin: 0;
  white-space: nowrap;
}

@media (max-width: 1024px) {
  footer .foot-container {
    display: flex;
    row-gap: 0;
  }
  footer .foot-container #block-afro-footer-contact-block .block-block-content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
   footer .foot-container #block-afro-footer-contact-block .block-block-content {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  footer .foot-container #block-afro-footer-contact-block{
    margin-top: 30px !important;
  }
}

/* Newsletter — messages d'erreur & succès stylés */
footer .foot-container .block-webform-block .messages,
footer .foot-container .block-webform-block .messages-list__item {
  background: none;
  border: 0;
  padding: 0;
  margin: 0 0 10px;
  box-shadow: none;
  list-style: none;
}

footer .foot-container .block-webform-block .messages--error,
footer .foot-container .block-webform-block .messages--warning,
footer .foot-container .block-webform-block .messages--status {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 6px;
  font-family: 'Helvetica Neue', sans-serif;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
  background-color: rgba(255, 255, 255, 0.08);
  border-left: 3px solid #E96B6B;
  color: #fff;
  backdrop-filter: blur(2px);
  animation: afroNewsletterMsgIn 0.25s ease-out;
}

footer .foot-container .block-webform-block .messages--status {
  border-left-color: #A0C688;
}

footer .foot-container .block-webform-block .messages--warning {
  border-left-color: #E9B86B;
}

footer .foot-container .block-webform-block .messages h2,
footer .foot-container .block-webform-block .messages__header {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

footer .foot-container .block-webform-block .messages::before,
footer .foot-container .block-webform-block .messages-list__item::before {
  content: '';
  display: none;
}

footer .foot-container .block-webform-block .messages--error::before {
  content: '!';
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #E96B6B;
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
}

footer .foot-container .block-webform-block .messages--status::before {
  content: '✓';
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #A0C688;
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
}

/* Erreur inline sous le champ email */
footer .foot-container .block-webform-block .form-item--error-message,
footer .foot-container .block-webform-block .form-item__error-message {
  display: block;
  margin-top: 6px;
  padding: 6px 10px;
  border-radius: 4px;
  background-color: rgba(233, 107, 107, 0.15);
  color: #FFD2D2;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  animation: afroNewsletterMsgIn 0.25s ease-out;
}

footer .foot-container .block-webform-block input[type="email"].error,
footer .foot-container .block-webform-block input[type="email"][aria-invalid="true"] {
  border-color: #E96B6B;
  box-shadow: 0 0 0 2px rgba(233, 107, 107, 0.2);
}

@keyframes afroNewsletterMsgIn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}






 footer .foot-container .dropdown-selector--language{ display: none !important}

/* Bouton "Réinitialiser les filtres" (listings événements / actualités) */
.afro-filter-reset{
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  margin-left: 8px;
  border: 1px solid #2f7f68;
  border-radius: 4px;
  color: #2f7f68;
  text-decoration: none;
  font-size: 14px;
  transition: all .2s ease;
}
.afro-filter-reset:hover{ background: #2f7f68; color: #fff; }

/* Description optionnelle d'un slide d'accueil */
.afro-slider .swiper-slide .content .slide-description{
  margin-top: 10px; max-width: 640px; color: #fff;
  font-size: 16px; line-height: 1.5; white-space: pre-line;
  text-shadow: 0 1px 3px rgba(0,0,0,.45);
}

/* ============================================================
   Page de recherche personnalisée /recherche
   (filtre à gauche, résultats à droite) — accessible à tous.
   ============================================================ */
#afro-search-page{ max-width: 1200px; margin: 40px auto 64px; padding: 0 20px; }
.afro-search-layout{
  display: grid; grid-template-columns: 300px 1fr; gap: 32px; align-items: start;
}
@media (max-width: 900px){
  .afro-search-layout{ grid-template-columns: 1fr; }
}

/* --- Colonne gauche : filtres --- */
.afro-search-sidebar{
  border: 1px solid #e2e8e5; border-radius: 12px; background: #f7faf9;
  padding: 20px; position: sticky; top: 20px;
}
.afro-search-filter-form{ display: flex; flex-direction: column; gap: 20px; }
.afro-search-field label{ display: block; font-weight: 600; color: #2f7f68; margin-bottom: 6px; font-size: 14px; }
.afro-search-field input[type="search"]{
  width: 100%; border: 1px solid #cdd8d3; border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff;
}
.afro-search-group{ border: none; padding: 0; margin: 0; }
.afro-search-group > legend{
  font-weight: 600; color: #2f7f68; font-size: 14px; padding: 0; margin-bottom: 10px;
}
.afro-search-check{
  display: flex; align-items: center; gap: 8px; margin-bottom: 8px; cursor: pointer; font-size: 14px; color: #223;
}
.afro-search-check input[type="checkbox"]{ accent-color: #2f7f68; width: 16px; height: 16px; cursor: pointer; }
.afro-search-date{
  display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 13px; color: #557;
}
.afro-search-date input[type="date"]{
  flex: 1; border: 1px solid #cdd8d3; border-radius: 6px; padding: 8px 10px; font: inherit; background: #fff;
}
.afro-search-actions{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.afro-search-btn{
  display: inline-flex; align-items: center; justify-content: center;
  background: #2f7f68; color: #fff; border: 1px solid #2f7f68; border-radius: 24px;
  padding: 10px 22px; cursor: pointer; font: inherit; font-size: 14px; text-decoration: none;
  transition: all .2s ease;
}
.afro-search-btn:hover{ background: transparent; color: #2f7f68; }
.afro-search-btn--ghost{ background: transparent; color: #2f7f68; }
.afro-search-btn--ghost:hover{ background: #2f7f68; color: #fff; }

/* --- Colonne droite : résultats --- */
.afro-search-count{ margin: 0 0 20px; color: #445; font-size: 15px; }
.afro-search-list{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.afro-search-item{
  border: 1px solid #e8edeb; border-radius: 10px; padding: 16px 18px; background: #fff; transition: box-shadow .2s ease;
}
.afro-search-item:hover{ box-shadow: 0 6px 18px rgba(0,0,0,.07); }
.afro-search-item__meta{ display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.afro-search-type{
  background: #eaf3f0; color: #2f7f68; border-radius: 20px; padding: 3px 12px; font-size: 12px; font-weight: 600;
}
.afro-search-date-badge{ color: #8a97a0; font-size: 13px; }
.afro-search-title{ display: inline-block; color: #123; font-size: 18px; font-weight: 600; text-decoration: none; }
.afro-search-title:hover{ color: #2f7f68; }
.afro-search-snippet{ margin: 6px 0 0; color: #556; font-size: 14px; line-height: 1.55; }
.afro-search-empty{ color: #667; font-size: 15px; padding: 20px 0; }

/* Pagination à la charte */
#afro-search-page .pager__items{ display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 24px 0 0; margin: 0; justify-content: center; }
#afro-search-page .pager__item a{
  display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 10px;
  border: 1px solid #cdd8d3; border-radius: 8px; color: #2f7f68; text-decoration: none;
}
#afro-search-page .pager__item.is-active a,
#afro-search-page .pager__item a:hover{ background: #2f7f68; color: #fff; border-color: #2f7f68; }

/* RTL */
[dir="rtl"] .afro-search-sidebar{ top: 20px; }

/* Filtres listings : filtres par date */
.afro-date-filter input[type="date"]{
  border: 1px solid #cdd8d3; border-radius: 6px; padding: 8px 12px;
  font: inherit; font-size: 14px; color: #223; background: #fff; cursor: pointer;
}
.afro-date-filter{
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; color: #557; margin-left: 4px;
}
.afro-date-filter input[type="date"]{ cursor: text; }

/* Menu utilisateur connecté (espace membre) */
.afro-user-menu{ position: relative; display: inline-block; }
.afro-user-toggle{
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; border: 1px solid #2f7f68; border-radius: 24px;
  padding: 6px 14px; color: #2f7f68; cursor: pointer; font: inherit; line-height: 1;
}
.afro-user-toggle .afro-user-name{ font-size: 14px; font-weight: 500; max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.afro-user-toggle .afro-user-caret{ transition: transform .2s ease; }
.afro-user-menu.is-open .afro-user-toggle .afro-user-caret{ transform: rotate(180deg); }
.afro-user-dropdown{
  position: absolute; right: 0; top: calc(100% + 10px); min-width: 140px;
  background: #fff; border: 1px solid #e6ece9; border-radius: 12px;
  box-shadow: 0 12px 30px rgba(18, 40, 34, .14); list-style: none; margin: 0; padding: 14px 10px !important;
  opacity: 0; visibility: hidden; transform: translateY(-6px); transition: all .18s ease; z-index: 100;
}
.afro-user-menu.is-open .afro-user-dropdown{ opacity: 1; visibility: visible; transform: translateY(0); }
/* Empiler les liens verticalement (un au-dessous de l'autre), en surchargeant
   d'eventuelles regles de menu horizontales heritees du header. */
.afro-user-dropdown{ display: block !important; }
.afro-user-dropdown li{ display: block !important; width: 100%; margin: 0 0 6px !important; float: none !important; list-style: none; }
.afro-user-dropdown li:last-child{ margin-bottom: 0 !important; }
.afro-user-dropdown li a{
  display: flex; align-items: center; gap: 8px; width: 100%;
  padding: 11px 14px; border-radius: 8px;
  color: #1f2d28; text-decoration: none; font-size: 14px; font-weight: 500; white-space: nowrap;
  transition: background .16s ease, color .16s ease, transform .16s ease;
}
.afro-user-dropdown li a::before{
  content: ""; width: 6px; height: 6px; border-radius: 50%; background: #2f7f68; opacity: .35;
  transition: opacity .16s ease, transform .16s ease;
}
.afro-user-dropdown li a:hover{ background: #eaf3f0; color: #2f7f68; }
.afro-user-dropdown li a:hover::before{ opacity: 1; transform: scale(1.3); }
/* Separateur avant le lien de deconnexion (dernier item) */
.afro-user-dropdown li:last-child{ margin-top: 6px !important; padding-top: 6px; border-top: 1px solid #eef2f0; }
[dir="rtl"] .afro-user-dropdown{ right: auto; left: 0; }

/* Page de confirmation d'inscription : masquer le wizard résiduel (stepper + boutons d'étape) */
#afro-insription-steps-page:has(.webform-confirmation) .stepper,
#afro-insription-steps-page:has(.webform-confirmation) .btn-next-step,
#afro-insription-steps-page:has(.webform-confirmation) .btn-prev-step,
#afro-insription-steps-page:has(.webform-confirmation) .buttons-container{
  display: none !important;
}

/* C13/C25 - Réduire l'espace des paragraphes/retours à la ligne vides dans les contenus */
.afro-wysiwyg p:empty,
.event-detail p:empty,
.field--name-field-descriptif-du-projet p:empty{ display: none; }
.event-detail p,
.field--name-field-descriptif-du-projet p{ margin: 0 0 .8em; }