.homepage_banner_swiper {
  width: 100%;
  height: 80vh;
}
.homepage_banner_swiper .swiper-slide::before {
  z-index: 1;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.homepage_banner_swiper .swiper-slide .container {
  z-index: 2;
}
.homepage_banner_swiper .container h1 {
  font-size: 3.5rem;
  letter-spacing: 0;
  text-transform: none;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 0;
}
.homepage_banner_swiper .container h1,
.homepage_banner_swiper .container p,
.homepage_banner_swiper .container h4 {
  margin: 0;
}
.homepage_banner_swiper .container h4 {
  font-weight: initial !important;
}
.homepage_banner_swiper .container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0.5rem;
  height: 100%;
  width: 100%;
}
.homepage_banner_swiper .container .swiper_sub_wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1.5rem;
  height: 100%;
  width: 50%;
}
.homepage_banner_swiper
  .swiper-slide:nth-child(odd)
  .container
  .swiper_sub_wrapper {
  margin-left: 0;
  margin-right: auto;
}
.homepage_banner_swiper
  .swiper-slide:nth-child(even)
  .container
  .swiper_sub_wrapper {
  margin-left: auto;
  margin-right: 0;
}
.homepage_banner_swiper
  .container
  .swiper_sub_wrapper
  .swiper_sub_wrapper_inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0.5rem;
}

.homepage_banner_swiper .container .btn_wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
}
.homepage_banner_swiper .container a {
  color: var(--bs-white);
  margin: 0;
  border: 1px solid var(--bs-white);
  border-radius: 0.25rem;
  padding: 0.5rem 1.6rem;
  background: transparent;
  width: fit-content;
}
/* Swiper arrow base style */
.homepage_banner_swiper .swiper-button-prev,
.homepage_banner_swiper .swiper-button-next {
  width: 40px;
  height: 40px;
  background: none;
  color: #fff;
  font-size: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Hover effects */
.homepage_banner_swiper .swiper-button-prev:hover,
.homepage_banner_swiper .swiper-button-next:hover {
  color: #f00 !important;
  transform: scale(1.1);
}

section.avenir_alaune_sections {
  margin: 0 !important;
}

section.avenir_alaune_sections.avenir {
  background: var(--bs-white) !important;
}

a:not(.btn-link):not(.text-decoration-underline):not(.more-link) {
  text-decoration: none !important;
}

.button.button-reveal.button-large {
  padding-left: 32px;
  padding-right: 32px;
}
.button.button-red1 {
  background-color: #c00000;
  color: white;
  border: 2px solid #c00000;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  border-radius: 5px;
  display: inline-block;
  transition: all 0.3s ease;
}
.button.button-reveal span {
  display: inline-block;
  position: relative;
  left: 0;
}
.button.button-reveal.button-large.text-end i {
  left: auto;
  right: -38px;
}
.button.button-reveal.button-large i {
  left: -38px;
  width: 38px;
}
.button.button-reveal i {
  display: block;
  position: absolute;
  top: 0;
  left: -32px;
  width: 32px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  background-color: rgba(0, 0, 0, 0.15);
}

section.avenir_alaune_sections ul.slide__content {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
}

section.avenir_alaune_sections .slide__grid {
  border-radius: 0.5rem;
  box-shadow: var(--cnvs-box-shadow-sm) !important;
  padding: 1.5rem 1.5rem 3rem 1.5rem;
  margin-bottom: 1rem !important;
}
section.avenir_alaune_sections .slide__grid .bg_img_actu {
  height: 230px;
  width: 100%;
  border-radius: 0.5rem;
}
section.avenir_alaune_sections .slide__grid .entry.col-md-12 {
  margin-bottom: 0 !important;
}
section.avenir_alaune_sections .date_actu {
  font-size: var(--cnvs-post-meta-fontsize);
  color: var(--cnvs-contrast-500);
}

.dot {
  height: 5px;
  width: 5px;
  background-color: #c00000;
  border-radius: 50%;
  margin: 2px;
  display: inline-block;
  position: relative;
  opacity: 1;
  z-index: 111 !important;
}

.section_img_left,
.section_img_right {
  padding: var(--cnvs-section-padding) 0;
}

.big_title .field {
  font-weight: bold;
}

.field--name-field-sous-titre-img-dr,
.field--name-field-sous-titre {
  color: var(--cnvs-themecolor);
}

.section_img_right .heading-block::after,
.section_img_left .heading-block::after {
  display: none;
}
.section_img_right .field--name-field-big-title,
.section_img_left .field--name-field-big-title {
  --cnvs-title-block-border-size: 40px;
  --cnvs-heading-block-border: 2px solid var(--cnvs-heading-color);
  position: relative;
}
.section_img_right .field--name-field-big-title::after,
.section_img_left .field--name-field-big-title::after {
  content: "";
  position: absolute;
  width: var(--cnvs-title-block-border-size);
  border-top: var(--cnvs-heading-block-border);
  bottom: -2px;
  left: 0;
}

.flexed-box h1,
.flexed-box p,
.flexed-box a {
  margin: 0 !important;
}
.flexed-box .heading-block {
  margin: 0 !important;
}
.flexed-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1.5rem;
}

.sidebar-widgets-wrap .view-a-venir-all-events,
.sidebar-widgets-wrap .grouping-widget.views-row {
  background-color: var(--bs-gray-100);
  padding: 1rem;
}
.sidebar-widgets-wrap .view-a-venir-all-events h4 {
  font-size: 20px;
}
.sidebar-widgets-wrap .view-content .cource-item {
  padding-bottom: 15px;
}
.sidebar-widgets-wrap .view-content .cource-item:not(:first-of-type),
.sidebar-widgets-wrap
  .grouping-widget.views-row
  .views-field:nth-child(odd):not(:first-of-type) {
  padding-top: 15px;
  border-top: 1px solid rgba(var(--cnvs-contrast-rgb), 0.1);
}

.sidebar-widgets-wrap
  .grouping-widget.views-row
  .views-field:nth-child(even)
  a {
  color: var(--bs-black);
  font-size: 0.9rem;
}

.sidebar-widgets-wrap .view-content .cource-item a,
.sidebar-widgets-wrap
  .grouping-widget.views-row
  .views-field:nth-child(odd)
  span {
  font-weight: 600 !important;
  font-size: 1rem;
}
.sidebar-widgets-wrap .view-content .cource-item img,
.sidebar-widgets-wrap .grouping-widget.views-row .views-field img {
  margin: 0.5rem auto;
}

.inside_a_la_une h1 {
  margin: 0;
}
.inside_a_la_une .field--name-field-date-de-debut-de-l-eveneme time {
  font-size: 1rem;
  margin: 0 1rem 0.75rem 0;
  color: var(--bs-gray-500);
}

.postcontent {
  padding-top: 1rem;
}
.postcontent .org_coll_col {
  margin-bottom: 1rem;
}
.postcontent .org_coll_col .field__label {
  font-size: 1rem;
  margin: 0 1rem 0.5rem 0;
  color: var(--bs-gray-500);
}
.postcontent .org_coll_col .field__items .field__item {
  font-size: 0.9rem;
  margin: 0 0.15rem 0;
  color: var(--bs-black);
}

.event_info .field--name-field-sous-titre {
  color: var(--bs-black);
  font-weight: bold;
  margin-top: -0.5rem;
}
.postcontent .org_coll_col .field__items .field__item a {
  padding-left: 1rem;
  position: relative;
}
.postcontent .org_coll_col .field__items .field__item a:after {
  content: "\f105";
  font-size: 0.9rem;
  position: absolute;
  left: 0;
  top: -2px;
}
.postcontent .field--name-field-sdg-a-la-une {
  padding-bottom: 1rem;
}
.postcontent .field--name-field-sdg-a-la-une .field__label {
  font-size: 1rem;
  margin: 0;
  color: var(--bs-gray-500);
}
.postcontent .field--name-field-sdg-a-la-une .field__item {
  font-size: 0.9rem;
  margin: 0 0.15rem 0;
  color: var(--bs-black);
}

.postcontent .field--name-field-sdg-a-la-une .field__item a {
  padding-left: 1rem;
  position: relative;
}
.postcontent .field--name-field-sdg-a-la-une .field__item a:after {
  content: "\f105";
  font-size: 0.9rem;
  position: absolute;
  left: 0;
  top: -2px;
}

.inside_a_la_une .field--name-field-image,
.inside_a_la_une .field--name-field-image-preview {
  text-align: center;
  margin: 0.5rem auto;
}

.postcontent .field--type-link a {
  background-color: #c00000;
  color: white;
  border: 2px solid #c00000;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  border-radius: 5px;
  display: inline-block;
  transition: all 0.3s ease;
}
.social-sharing-buttons {
  position: relative;
  z-index: 111;
}
.inside_a_la_une ._18xu._9omd._3htz {
  height: 100%;
  transform: translateY(-25%);
}
.video-embed-field-responsive-video iframe {
  position: absolute;
  width: 500px !important;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.plugin input {
  transform: translateY(-250%);
}
.four_cols .course-item {
  margin-bottom: 30px;
  border: 1px solid #dddddd;
  transition: all 0.35s ease 0s;
}

.four_cols .course-item img {
  position: relative;
  width: 100%;
  height: 300px;
}
.four_cols .course-item .course-img:before {
  background: rgba(0, 0, 0, 0.5);
  background: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0),
    rgba(0, 0, 0, 0.6)
  );
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
}
.four_cols .course-footer {
  padding: 15px 20px;
  background-color: #f0f0f0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  font-weight: 600;
  font-size: 15px;
}
.four_cols_container .field--name-field-title-for-four-col {
  font-size: 20px;
  color: #212121;
  margin: 0 0 12px;
  font-weight: 700;
  padding-top: 24px;
}

.four_cols .course-footer em {
  color: var(--bs-black) !important;
}
article.node--type-menu-up-pages {
  padding-top: 30px;
  padding-bottom: 30px;
}
article.node--type-menu-up-pages .field--name-field-banner {
  margin-top: -31px;
}
.five_cols_center .col {
  text-align: center;
}
.five_cols_center .col .rounded-circle {
  margin: auto;
}
.five_cols_center .col .ms-2 {
  margin-left: 0 !important;
}

.accordion-item__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.accordion-toggle.open + .accordion-item__content {
  max-height: 500px; /* or auto if you're using JS to calculate height */
}
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  border-color: #ededed !important;
}
.ui-accordion .ui-accordion-content {
  border-color: #ededed !important;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  background: #ededed !important;
  border-color: #ededed !important;
  color: var(--bs-black) !important;
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
  background-image: url("https://code.jquery.com/ui/1.13.2/themes/base/images/ui-icons_555555_256x240.png") !important;
}
.acc_big {
  margin-bottom: 1rem;
}
.wrapping_accordions h3 {
  margin-top: 1rem !important;
}
.wrapping_accordions h3:first-of-type {
  margin-top: 0 !important;
}
.wrapping_accordions ul {
  list-style-type: none;
  margin: 0;
}
.wrapping_accordions ul li {
  padding: 0.5rem 0;
  position: relative;
}
.wrapping_accordions ul li:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: #ededed;
}
.wrapping_accordions ul li:last-of-type:after {
  display: none;
}

.field--name-field-a-venir-fp .grid.slide__grid.grid--0,
.field--name-field-a-la-une .grid.slide__grid.grid--0 {
  width: 100%;
}

#block-video1block h2,
#block-video2block h2 {
  display: none;
}

section.avenir_alaune_sections .slick-track {
  display: flex;
  align-items: stretch;
}

section.avenir_alaune_sections .slick-track .slick__slide {
  height: auto !important;
}
section.avenir_alaune_sections .slick-track .slick__slide .item-list,
section.avenir_alaune_sections ul.slide__content {
  height: 100%;
}

.six_col_container img {
  height: auto !important;
}
.container.six_col_container {
  margin-bottom: 1.5rem;
}

.six_col_container .link_col > div {
  position: relative;
}
.six_col_container .link_col a {
  position: absolute;
}

.six_col_container .link_col a:after {
  content: "";
  background-image: url("/sites/usj/files/link.svg");
  background-position: center;
  background-size: cover;
  width: 25px;
  height: 25px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  z-index: 2;
  transition: all ease-in-out 0.2s;
}
.six_col_container .link_col a:before {
  content: "";
  background-color: rgb(0, 0, 0, 0.8);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  z-index: 1;
  transition: all ease-in-out 0.2s;
}
.six_col_container .link_col a:hover:after,
.six_col_container .link_col a:hover:before {
  opacity: 1;
  transition: all ease-in-out 0.2s;
}

.field--name-field-image-droite-text .cource-item {
  margin-bottom: 30px;
  border: 1px solid #dddddd;
}
.cource-item:hover .course-body {
  background-color: #999999;
}

.cource-item .course-body {
  padding: 20px 25px 25px;
  transition: all 0.5s ease 0s;
}
.cource-item .course-body .course-category {
  display: inline-block;
}
.cource-item .course-body .course-title {
  font-size: 20px;
  margin-bottom: 7px;
}
.cource-item:hover .course-body .course-title a {
  color: #fff;
}
.cource-item .course-body .course-title a {
  color: #212121;
  transition: all 0.35s ease 0s;
}
.cource-item .course-body .course-desc {
  margin-top: 12px;
}
.cource-item:hover .cource-btn {
  background-color: #fff;
  border-color: #fff;
  color: #c00000;
}

.cource-item .cource-btn {
  background-color: #c00000;
  border: 2px solid #c00000;
  display: inline-block;
  margin-top: 20px;
  padding: 2px 10px;
  font-size: 11px;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 700;
  transition: all 0.3s ease 0s;
}
.cource-item .cource-btn:hover {
  background-color: #e41f05;
  border-color: #e41f05;
  color: var(--bs-white);
}
.cource-item p {
  margin: 0;
}

.sdg-term-page {
  margin-top: 30px;
}
.sdg-term-page .field__label {
  display: none;
}
.sdg-term-page .sdg-description {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1rem;
  flex-direction: column;
}
.sdg-term-page .sdg-description h4,
.sdg-term-page .sdg-description h1 {
  margin: 0;
}

.sdg-related-content-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, max(280px, 1fr));
  gap: 2rem;
}

.sdg-related-content-item {
  border: 1px solid #eee;
  padding: 1rem;
  border-radius: 6px;
  background: #fff;
}
.sdg-filter-bar select,
.sdg-filter-bar input[type="submit"] {
  width: 100%;
  padding: 8px;
  font-size: 14px;
}

.sdg-filter-bar input[type="submit"] {
  background: #c00;
  color: white;
  font-weight: bold;
  border: none;
}

.ajax-filter-wrapper button.btn-danger {
  background: #c00000;
  background-color: #c00000;
}

.ajax-filter-wrapper button.btn-danger:hover {
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}

#ajax-view-content .content.content-wrap.container {
  padding: 0 !important;
  margin: 0 !important;
}
#ajax-view-content .content.content-wrap.container .row.gx-5.col-mb-80.new-roww,
#ajax-view-content .content.content-wrap.container .col-lg-8.inside_a_la_une {
  width: 100% !important;
}
#ajax-view-content
  .content.content-wrap.container
  .row.gx-5.col-mb-80.new-roww {
  margin: 0;
}
.sdg-related-content-item:hover {
  box-shadow: 0 6px 40px rgba(0, 0, 0, 0.1);
  transition: all 0.35s ease 0s;
}
#ajax-view-content .sdg-related-content-item,
#ajax-view-content .inside_a_la_une {
  padding: 0 !important;
  transition: all 0.35s ease 0s;
}
#ajax-view-content .bg_img {
  border-radius: 8px;
  color: white;
  position: relative;
}

#ajax-view-content .social-sharing-buttons,
#ajax-view-content .field--name-field-sous-titre,
#ajax-view-content .field--name-field-sdg-a-venir,
#ajax-view-content .field--name-field-sdg-a-la-une,
#ajax-view-content .org_coll_row,
#ajax-view-content .field--name-field-date-de-debut-de-l-eveneme,
#ajax-view-content .field--name-field-image-preview,
#ajax-view-content .field--name-field-import-image,
#ajax-view-content .field--name-body {
  display: none;
}
#ajax-view-content .bg_img .time_div {
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  padding: 0.5rem 1.5rem;
  font-size: 14px;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 600;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  align-items: flex-end;
  justify-content: flex-start;
}

#ajax-view-content .field--name-node-title h1 {
  font-size: 16px;
  padding: 1rem 1.5rem;
}
#ajax-view-content .node__links {
  padding: 15px 20px;
  background-color: #f0f0f0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  font-weight: 600;
  font-size: 15px;
}
#ajax-view-content .node__links ul {
  margin: 0;
}
#ajax-view-content .node__links ul a {
  color: #505050;
  display: inline-block;
  position: relative;
  padding-right: 16px;
}
#ajax-view-content .node__links ul a:hover {
  color: #c00000;
}
#ajax-view-content .node__links ul a:after {
  font-family: fontAwesome;
  content: "\f101";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-55%);
  font-size: 12px;
}

@media screen and (max-width: 992px) {
  #footer {
    padding-bottom: 0 !important;
  }
  section.avenir_alaune_sections ul.slide__content {
    padding-right: 0;
  }
  #calendar {
    margin: auto;
  }
  #calendar .col-lg-12.col-sm-6 {
    margin-left: calc(var(--bs-gutter-x) * 0.5 * -1);
  }
  .homepage_banner_swiper .container .btn_wrapper {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .homepage_banner_swiper {
    height: 70vh;
  }
  .calendrier {
    width: 100% !important;
  }
}
@media screen and (max-width: 575px) {
  #footer .footer-widgets-wrap {
    padding-top: 0;
    padding-bottom: 1rem;
  }
  footer img.alignleft,
  footer div.alignleft {
    float: initial;
    border-right: none !important;
    position: relative;
  }
  footer .widget.logo > a {
    padding-bottom: 1rem;
    height: auto;
    position: relative;
    display: block;
  }
  footer .widget.logo > a:after {
    content: "";
    position: absolute;
    bottom: 1rem;
    left: 0;
    right: 0;
    height: 1px;
    background-color: #4a4a4a;
  }
}

.header-row.top-search-parent {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

#logo {
  flex: 0 0 auto;
  /*  max-width: 20%;*/
}

#logo img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.primary-menu {
  flex: 1 1 auto;
  min-width: 0;
}

.header-misc {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

@media (max-width: 768px) {
  .header-row.top-search-parent {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }

  #logo {
    text-align: center;
    width: 100%;
  }

  #logo img {
    max-width: 200px;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .header-misc {
    display: flex;
    justify-content: center;
    flex-direction: row;
    align-items: center;
    width: 100%;
    gap: 1rem;
  }

  .button-container {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    align-items: flex-end;
  }

  .button-container a {
    font-size: 12px;
    padding: 4px 8px;
    white-space: nowrap;
  }

  .header-icons {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
  }

  .header-misc-icon i,
  .primary-menu-trigger button {
    font-size: 20px;
  }

  .primary-menu-trigger {
    margin: 0;
    padding: 0;
  }
}

.block-views-blocka-venir-all-events-block-1 .view-content,
.block-views-blocka-la-une-all-events-block-1 .view-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

@media screen and (max-width: 768px) {
  .block-views-blocka-venir-all-events-block-1 .view-content,
  .block-views-blocka-la-une-all-events-block-1 .view-content {
    grid-template-columns: 1fr;
  }
}

.cource-item.views-row {
  padding: 1rem;
  border: 1px solid var(--cnvs-contrast-200) !important;
  box-shadow: var(--cnvs-box-shadow-sm) !important;
  border-radius: 0.5rem !important;
}

.heading-block h3 div.field::after {
  content: "";
  display: block;
  margin-top: 30px;
  width: var(--cnvs-title-block-border-size);
  border-top: var(--cnvs-heading-block-border);
}

.heading-block h1 span,
.heading-block .h1 span,
.heading-block h2 span,
.heading-block .h2 span,
.heading-block h3 span,
.heading-block .h3 span,
.heading-block h4 span,
.heading-block .h4 span {
  margin-bottom: 0;
  font-weight: var(--cnvs-heading-block-font-weight);
  text-transform: var(--cnvs-heading-block-font-transform);
  letter-spacing: var(--cnvs-heading-block-font-spacing);
  color: var(--cnvs-heading-block-font-color) !important;
}

.mot_du_doyen img {
  margin-bottom: 1.5rem;
  margin-left: 1.5rem;
}

.contact-address-section .contact-info,
.contact-address-section .contact-info .rs-counter-list {
  height: 100%;
}

.about-desc .heading-block::after {
  content: "";
  display: block;
  margin-top: 30px;
  width: var(--cnvs-title-block-border-size);
  border-top: var(--cnvs-heading-block-border);
}

/* Only for webforms to avoid side-effects site-wide */
.webform-submission-form .form-item select.hidden,
.webform-submission-form .shs-enabled.hidden,
.webform-submission-form .form-element.hidden {
  /* Keep it in layout and focusable so HTML5 validation can target it */
  position: absolute !important;
  inset: 0 !important; /* top/right/bottom/left: 0; */
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  opacity: 0 !important; /* invisible, but still there */
  clip: auto !important;
  overflow: hidden !important;
  border: 0 !important;
  display: block !important; /* <-- critical: NOT display:none */
  pointer-events: auto !important;
}

/* The visible faux UI (SHS/Select2/etc) should be the positioned container */
.webform-submission-form .form-item,
.webform-submission-form .form-item .shs-container,
.webform-submission-form .form-item .select2 {
  position: relative;
}

/* Make sure inline errors are actually shown */
.invalid-feedback,
.form-item--error-message,
.webform-message--error {
  display: block !important;
}

/* 1) Make the "real" SHS select (the one with name=...) visible to the browser */
.webform-submission-form .shs-widget-container {
  position: relative; /* anchor for the absolute hidden select */
}

.webform-submission-form select[name="caza_ville"][required],
.webform-submission-form select[name="caza_ville[0]"][required] {
  position: absolute !important;
  inset: 0 !important; /* stretch over the UI select */
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  opacity: 0 !important; /* invisible but present */
  display: block !important; /* <-- NOT display:none  */
  pointer-events: auto !important;
  border: 0 !important;
  clip: auto !important;
}

/* 2) Kill any hard-hide on selects that breaks focusability */
.webform-submission-form select[name="caza_ville"][required].hidden,
.webform-submission-form select[name="caza_ville[0]"][required].hidden {
  display: block !important; /* override any .hidden { display:none } */
  opacity: 0 !important;
}

/* 3) Always show inline feedback when theme tries to hide it */
.invalid-feedback,
.form-item--error-message,
.webform-message--error {
  display: block !important;
}

.btn-send {
  width: 20%;
  background-color: #c00000;
  color: #ffffff;
  font-weight: 600;
  text-transform: uppercase;
  border: none;
  height: 40px;
  text-align: c center;
  transition: 0.4s;
  -webkit-transition: 0.4s;
  -ms-transition: 0.4s;
  cursor: pointer;
}

.filter-form {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.even_grid .card.h-100.shadow-sm {
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
}
.even_grid .card-body {
  padding: 0 !important;
  padding-top: 1rem !important;
}

.field--name-field-collaborateurs-non-usj,
.field--name-field-organisateurs-usj,
.field--name-field-organisateur-non-usj,
.field--name-field-collaborateurs-usj {
  display: none !important;
}

.quote-bubble-left {
  position: relative;
  background: var(--cnvs-bubble-color);
}


.quote-bubble.quote-bubble-left::before {
    border-left: var(--cnvs-bubble-radius) solid transparent;
    border-right: var(--cnvs-bubble-radius) solid var(--cnvs-bubble-color);
    left: calc((var(--cnvs-bubble-radius) + 1px) * -1);
    right: auto;
}
.quote-bubble span,
.quote-bubble p span,
.quote-bubble p {
  background-color: transparent !important;
}
/* Base swiper nav buttons hidden */
.usj-temoignages-swiper .swiper-button-prev,
.usj-temoignages-swiper .swiper-button-next, 
.usj-partenaires-swiper .swiper-button-prev,
.usj-partenaires-swiper .swiper-button-next 
{
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #fff;
  color: #333;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

/* Center the arrow icon */
.usj-temoignages-swiper .swiper-button-prev::after,
.usj-temoignages-swiper .swiper-button-next::after,
.usj-partenaires-swiper .swiper-button-prev::after,
.usj-partenaires-swiper .swiper-button-next::after {
  font-size: 14px;
  font-weight: bold;
  color: #333;
}
/* Center the arrow icon */
.usj-temoignages-swiper .swiper-button-prev:hover::after,
.usj-temoignages-swiper .swiper-button-next:hover::after,
.usj-partenaires-swiper .swiper-button-prev:hover::after,
.usj-partenaires-swiper .swiper-button-next:hover::after {
  color: #fff;
}

/* When hovering inside the swiper container -> show buttons */
.usj-temoignages-swiper:hover .swiper-button-prev,
.usj-temoignages-swiper:hover .swiper-button-next,
.usj-partenaires-swiper:hover .swiper-button-prev,
.usj-partenaires-swiper:hover .swiper-button-next  {
  opacity: 1;
  visibility: visible;
}

/* Hover on the button itself -> red background & white arrow */
.usj-temoignages-swiper .swiper-button-prev:hover,
.usj-temoignages-swiper .swiper-button-next:hover,
.usj-partenaires-swiper .swiper-button-prev:hover,
.usj-partenaires-swiper .swiper-button-next:hover  {
  background: #b60000; /* red USJ tone */
  color: #fff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.25);
}

.usj-temoignages-swiper .swiper-button-prev:hover::after,
.usj-temoignages-swiper .swiper-button-next:hover::after
.usj-partenaires-swiper .swiper-button-prev:hover:after,
.usj-partenaires-swiper .swiper-button-next:hover:after {
  color: #fff;
}

.temmoignages-section .heading-block p{
  margin: 0 !important;
}

.usj-partenaires-swiper img {
  filter: grayscale(30%);
  transition: filter .2s ease, transform .2s ease;
}
.usj-partenaires-swiper a:hover img {
  filter: none;
  transform: translateY(-2px);
}

/* Partners slider */
.usj-partenaires-swiper .swiper-pagination span.swiper-pagination-bullet{
   background-color: #C00000 !important; opacity: 0.7;
}
.usj-partenaires-swiper .swiper-pagination span.swiper-pagination-bullet-active,
.usj-partenaires-swiper .swiper-pagination span:hover { background-color: #C00000 !important; opacity: 1; }
.usj-partenaires-swiper { padding-bottom: 2rem !important; }
.usj-partenaires-swiper .swiper-slide {
  display:flex; align-items:center; justify-content:center;
}

.partner-logo {
  width:auto;               /* keep aspect ratio */
  height:110px;             /* big logos by default */
  max-width:100%;
  object-fit:contain;
  transition:transform .2s ease;
}
.partner-logo:hover { transform: scale(1.02); }

@media (min-width: 992px) {
  .partner-logo { height:130px; }   /* desktop bigger */
}
@media (max-width: 575.98px) {
  .partner-logo { height:90px; }    /* phones */
}

/* Pagination spacing */
.partners-section .swiper-pagination { bottom: -4px !important; }

 
nav[aria-label="Tabs"],
nav[aria-label="Tabs"] .tabs,
nav[aria-label="Tabs"] .tabs.primary,
nav[aria-label="Tabs"] .tabs.secondary {
  display: block !important;
  visibility: visible !important;
  position: static !important;
  opacity: 1 !important;
}
nav[aria-label="Tabs"] .tabs li { display: inline-block !important; }
nav[aria-label="Tabs"] .tabs a { display: inline-block !important; padding: .5rem 1rem; } 

 

.institution_user.user-logged-in .region.region-header,
.institution_user.user-logged-in .footer{
  display: none !important;
}


.user-logged-in.path-admin .content{
  margin-top: 1rem !important;
} 

.block.block-core.block-local-actions-block.container-fluid .action-links .button.button-action:after{
  display: none !important;
}
.block.block-core.block-local-actions-block.container-fluid .action-links .button.button-action{
    --cnvs-btn-padding-x: 1.375rem !important;
    --cnvs-btn-color: var(--cnvs-themecolor);
    --cnvs-btn-color-dark: var(--bs-gray-900);
    --cnvs-btn-color-light: #e9ecef;
    --cnvs-btn-color-hover: var(--cnvs-btn-color-dark);
    --cnvs-btn-lineheight: calc(var(--cnvs-btn-fontsize) * 1.6);
    --cnvs-btn-border-width: 1px;
    --cnvs-btn-icon-margin: 10px;
    --cnvs-btn-icon-margin-offset: 0px;
    display: inline-block;
    position: relative;
    cursor: pointer;
    outline: none;
    white-space: nowrap;
    margin: 0;
    padding: var(--cnvs-btn-padding-y) var(--cnvs-btn-padding-x);
    font-size: var(--cnvs-btn-fontsize);
    line-height: var(--cnvs-btn-lineheight);
    text-align: center;
    background-color: var(--cnvs-btn-color);
    color: #fff;
    font-weight: 500;
    border: var(--cnvs-btn-border-width) solid transparent;
    transition: all 0.2s ease-in-out;
}

.block.block-core.block-local-actions-block.container-fluid .action-links .button.button-action:hover {
    background-color: var(--cnvs-btn-color-dark);
    color: #fff;
}

.formations .heading-block::after {
    content: "";
    display: block;
    margin-top: 30px;
    width: var(--cnvs-title-block-border-size);
    border-top: var(--cnvs-heading-block-border);
}



.institution_user .content{
	margin-top: 2rem !important;
}

form.user-login-form{
	    display: flex;
    flex-direction: column;
    align-items: normal;
    justify-content: space-between;
    width: 100%;
}

a.custom-login-btn{
	    color: white;
    background: #c00000;
    padding: 1rem;
    border-radius: 10px;
    text-align: center;
    align-items: center;
    margin: 0.5rem;
}

/*hide custom objects for users*/

/*a[href*="/node/add/carnet_de_recherche_chep"],*/
/*a[href*="/node/add/inscriptions_chep"],*/
/*a[href*="/node/add/notes_de_lecture"],*/
/*a[href*="/node/add/sites_chep"],*/
/*a[href*="/node/add/artefacts"]{*/
/*  display: none !important;*/
/*}*/
/*body.inst-750560 a[href*="/node/add/carnet_de_recherche_chep"],*/
/*body.inst-750560 a[href*="/node/add/inscriptions_chep"],*/
/*body.inst-750560 a[href*="/node/add/notes_de_lecture"],*/
/*body.inst-750560 a[href*="/node/add/sites_chep"],*/
/*body.inst-750560 a[href*="/node/add/artefacts"]*/
/*{*/
/*  display: inline !important;*/
/*}*/





.rs-accordion-style1 .card {
  border: 0;
}
.rs-accordion-style1 .card .card-header {
  padding: 0;
  border: 0;
  margin-bottom: 10px;
  background: transparent;
}
.rs-accordion-style1 .card .card-header .acdn-title {
  background-color: rgba(240, 240, 240, 0.8);
  position: relative;
  margin-bottom: 0;
  font-size: 16px;
  height: 50px;
  line-height: 50px;
  padding: 0 20px;
  cursor: pointer;
  font-weight: 500;
  letter-spacing: 0.2px;
  -webkit-transition: 0.2s background-color ease-in-out;
  transition: 0.2s background-color ease-in-out;
}
.rs-accordion-style1 .card .card-header .acdn-title:after {
  position: absolute;
  font-family: FontAwesome;
  content: "\f0da";
  right: 20px;
  transition: all 0.3s ease 0s;
}
.rs-accordion-style1 .card .card-header .acdn-title:not(.collapsed) {
  background-color: #f0f0f0;/*was ff3115*/
  color: #000000;   /*was color: #ffffff;*/
}
.rs-accordion-style1 .card .card-header .acdn-title:not(.collapsed):after {
  transform: rotate(90deg);
  color: #f0f0f0;   /*was color: #f0f0f0;*/
}
.rs-accordion-style1 .card .card-body {
  padding: 5px 15px 18px;
}
.rs-accordion-style1 .card .card-body  ul {
  padding: 5px 0px 0px; /*was  5px 5px 5px;*/
  list-style-type: none
}
.rs-accordion-style1 .card .card-body ul li {
  padding: 5px 5px 5px;
}
.rs-accordion-style1 .card .card-body ul li a {
  padding: 5px 0px 0px;/*was  5px 5px 5px;*/
    color: #6a6a6b;
    font-size: 18px;
}



.sub_menu_ul{
  position: relative;
  --tabRowH: 56px;
}

.sub_menu_ul > li.menu-item.mega-menu{
  position: static !important;
}

.sub_menu_ul > li.menu-item.mega-menu > .mega-menu-content{
  position: absolute !important;
  top: var(--tabRowH) !important;
  left: 100% !important;
  right: auto !important;
  transform: none !important;
  margin: 0 !important;
  width: clamp(600px, 45vw, 850px) !important;
  max-width: calc(100vw - 40px) !important;
  z-index: 9999 !important;
}

.sub_menu_ul > li.menu-item.mega-menu > .mega-menu-content[style]{
  width: clamp(600px, 45vw, 850px) !important;
  max-width: calc(100vw - 40px) !important;
}

.mega-menu-content .mega-menu-column{
  min-width: 200px;
}

.mega-menu-content ul.sub-menu-container{
  height: auto !important;
}

.mega-menu-content .menu-link > div{
  white-space: normal;
  line-height: 1.35;
}


.document-card{
  border:1px solid #eee;
  transition:all .25s ease;
}

.document-card:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 18px rgba(0,0,0,0.08);
}

.document-image{
  height:220px;
  overflow:hidden;
}

.document-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.document-title{
  font-size:18px;
  font-weight:600;
}

.button.button-red1.active {
  filter: brightness(0.9);
  transform: translateY(0);
  opacity: 1;
}
.button.button-red1{
	
	margin-left: 0 !important;
}

.content {
  margin-top: 120px;
}


.path-node .content-wrap.content,
.path-frontpage .content {
  margin-top: 0 !important;
}


.heading-block {
  margin-bottom: 50px;
}

.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4 {
  display: inline-block;   /* KEY */
  position: relative;
  margin-bottom: 0;
  font-weight: 600;
  color: #212529;
}

/* the line */
/*.heading-block h1::after,*/
/*.heading-block h2::after,*/
/*.heading-block h3::after,*/
/*.heading-block h4::after {*/
/*  content: "";*/
/*  display: block;*/
/*  width: 40px;*/
/*  height: 2px;*/
/*  background: #212529;*/
/*  margin-top: 8px;*/
/*}*/


/* Icon styling */
/* Container for the icon */
.fbox-icon {
  width: calc(var(--cnvs-featured-box-icon) + var(--cnvs-featured-box-padding-x) * 2);
  height: var(--cnvs-featured-box-icon);
  padding: 0 var(--cnvs-featured-box-padding-x);
}

/* Icon element */
.fbox-icon {
  width: 48px;
  height: 48px;
  display: inline-block;
}

.fbox-icon span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #c00000;
  color: #fff;
  font-size: 20px;
  line-height: 1;
  text-align: center;
  transition: background-color 0.3s, color 0.3s, transform 0.3s;
}

.fbox-effect:hover .fbox-icon span {
  background: #343a40;
  color: #fff;
  transform: scale(1.05);
}


/* SVE homepage icons */
.fbox-plain.fbox-lg .fbox-icon {
    width: 96px !important;
    height: 96px !important;
    margin: 0 auto 1.5rem;
}

.fbox-icon a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.fbox-icon img {
    width: 96px !important;
    height: 96px !important;
    object-fit: contain;
    display: block;
}

.fbox-icon i {
    font-size: 96px !important;
    line-height: 1;
}

/* Enseignants */
.affectation-item{
    border-left: 3px solid #d9d9d9 !important;
    padding-left:14px !important;
}

.affectation-title{
    color:black !important;
    font-size:20px !important;
    font-weight:700 !important;
}


.team-name,
.team-name .field--name-title {
    color: #212529 !important;
}

/* MENU WRAP EDIT */

.acdn-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* Images ratio fix */

.text-formatted img {
    max-width: 100%;
    height: auto !important;
}

.field--label-visually_hidden {
	display: none !important;
}



  .la-quinzaine-content {
  margin-top: 0 !important;
}


[dir="rtl"] .womens-justice-page {
		text-align: right;
		direction: rtl;
	}
	
	[dir="rtl"] .womens-justice-page .wj-about-block {
		padding: 0 22px 0 0;
		border-right: 6px solid #8b0f3a;
		border-left:none;
	}
	
/* Show hidden organizer and collaborator fields */
.field--name-field-organisateur-non-usj,
.field--name-field-collaborateurs-non-usj {
    display: block !important;
}

/* Hide wrong organisateur and collaborateur fields */
.field_inst_no_organisateurs_usj,
.field_inst_no_collaborateurs_usj {
    display: none !important;
}