/* Justification du texte de la description principale (accueil) */

.main-description-justified {

  text-align: justify;

}



/* Boutons Afficher plus/moins pour galeries */

.gallery-toggle-btn {

  background: linear-gradient(135deg, rgb(224, 194, 32), rgb(255, 212, 4));

  color: white;

  border: none;

  padding: 12px 24px;

  border-radius: 25px;

  font-weight: 600;

  font-size: 14px;

  cursor: pointer;

  transition: all 0.3s ease;

  margin: 0 5px;

  box-shadow: 0 4px 15px rgba(224, 194, 32, 0.3);

  display: inline-flex;

  align-items: center;

  gap: 8px;

}



.gallery-toggle-btn:hover {

  transform: translateY(-2px);

  box-shadow: 0 6px 20px rgba(224, 194, 32, 0.4);

  background: linear-gradient(135deg, rgb(255, 212, 4), rgb(224, 194, 32));

}



.gallery-toggle-btn:active {

  transform: translateY(0);

  box-shadow: 0 2px 10px rgba(224, 194, 32, 0.3);

}



.gallery-toggle-btn i {

  font-size: 12px;

}

.gallery-lightbox-arrow {

  position: absolute;

  top: 50%;

  font-size: 3rem;

  color: #fff;

  font-weight: bold;

  background: rgba(0, 0, 0, 0.2);

  border-radius: 50%;

  width: 56px;

  height: 56px;

  display: flex;

  align-items: center;

  justify-content: center;

  cursor: pointer;

  z-index: 10;

  user-select: none;

  transform: translateY(-50%);

  transition: background 0.2s, color 0.2s;

}

.gallery-lightbox-arrow:hover {

  background: #e0c220;

  color: #fff;

}

.gallery-lightbox-arrow-left {

  left: 30px;

}

.gallery-lightbox-arrow-right {

  right: 30px;

}

/* --------- Lightbox pour galerie d'images (actions-detail) --------- */

.gallery-img-zoomable {

  max-width: 200px;

  border-radius: 8px;

  cursor: zoom-in;

  transition: box-shadow 0.2s, transform 0.2s;

}

.gallery-img-default-size {

  width: 220px;

  height: 160px;

  object-fit: cover;

  border-radius: 8px;

  background: #f3f3f3;

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);

  margin: 0 auto;

  display: block;

}

.gallery-img-zoomable:hover {

  box-shadow: 0 8px 32px rgba(224, 194, 32, 0.18);

  transform: scale(1.04);

}

.gallery-lightbox-modal {

  position: fixed;

  top: 0;
  left: 0;
  right: 0;
  bottom: 0;

  z-index: 9999;

  display: flex;

  align-items: center;

  justify-content: center;

  background: rgba(0, 0, 0, 0.7);

  animation: fadeIn 0.2s;

}

.gallery-lightbox-backdrop {

  position: absolute;

  top: 0;
  left: 0;
  right: 0;
  bottom: 0;

  background: transparent;

  cursor: zoom-out;

}

.gallery-lightbox-img {

  max-width: 90vw;

  max-height: 90vh;

  border-radius: 12px;

  box-shadow: 0 8px 32px rgba(224, 194, 32, 0.25);

  z-index: 2;

  background: white;

  animation: zoomIn 0.2s;

}

.gallery-lightbox-close {

  position: absolute;

  top: 30px;

  right: 40px;

  font-size: 3rem;

  color: #fff;

  font-weight: bold;

  cursor: pointer;

  z-index: 10;

  text-shadow: 0 2px 8px #000;

  transition: color 0.2s;

}

.gallery-lightbox-close:hover {

  color: #e0c220;

}

@keyframes fadeIn {

  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }

}

@keyframes zoomIn {

  from {
    transform: scale(0.95);
  }

  to {
    transform: scale(1);
  }

}

/* --------- Suggestions Sidebar (actions-detail) --------- */

.suggestion-card {

  background: white;

  border-radius: 15px;

  overflow: hidden;

  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);

  margin-bottom: 20px;

  transition: all 0.3s ease;

  position: relative;

  cursor: pointer;

}

.suggestion-card:hover {

  transform: translateY(-5px);

  box-shadow: 0 8px 25px rgba(224, 194, 32, 0.3);

}

.suggestion-card-img-container {

  position: relative;

  height: 160px;

  overflow: hidden;

}

.suggestion-card-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.3s ease;

}

.suggestion-card-img-container:hover .suggestion-card-img {

  transform: scale(1.05);

}

.suggestion-card-voir {

  position: absolute;

  top: 10px;

  right: 10px;

  background: #e0c220;

  color: white;

  padding: 5px 10px;

  border-radius: 15px;

  font-size: 12px;

  font-weight: bold;

  text-transform: uppercase;

  z-index: 2;

}

.suggestion-card-gradient {

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  background: linear-gradient(transparent, rgba(0, 0, 0, 0.7));

  height: 50px;

  z-index: 1;

}

.suggestion-card-content {

  padding: 15px;

}

.suggestion-card-title {

  margin: 0 0 8px 0;

  color: #333;

  font-size: 16px;

  line-height: 1.3;

  font-weight: 600;

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;

}

.suggestion-card-title-link {

  color: inherit;

  text-decoration: none;

}

.suggestion-card-date {

  margin: 0;

  color: #888;

  font-size: 13px;

  display: flex;

  align-items: center;

}

.suggestion-card-date-icon {

  margin-right: 5px;

  color: #e0c220;

}

.suggestion-card-discover {

  margin-top: 12px;

  padding-top: 12px;

  border-top: 1px solid #eee;

}

.suggestion-card-discover-link {

  color: #e0c220;

  text-decoration: none;

  font-size: 14px;

  font-weight: 600;

  display: flex;

  align-items: center;

  justify-content: space-between;

  transition: color 0.3s;

}

.suggestion-card-discover-link i {

  transition: transform 0.3s ease;

}

.suggestion-card-discover-link:hover {

  color: #bfa600;

}



@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");

:root {

  --fontFamily:

    'Montserrat', sans-serif;

  --fontFamily2:

    'Roboto', sans-serif;

  --mainColor: rgb(224 194 32);

  --secondColor: #00aa5530;

  --whiteColor: #ffffff;

  --blackColor: #1f2428;

  --paragraphColor: #666666;

  --card-title-fontSize: 22px;

  --fontSize: 16px;

  --transition: 0.5s;

  --boxShadow: rgba(80, 79, 79, 0.1) 0px 0px 16px;

  --borderColourContainer: rgb(72, 135, 191);

}



body {

  /*background-color: rgb(166, 248, 248);*/

  margin: 0px;

  padding: 0px;

  -webkit-box-sizing: border-box;

  box-sizing: border-box;

}



.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {

  font-family: var(--fontFamily);

}



a {

  -webkit-transition: var(--transition);

  transition: var(--transition);

  color: var(--blackColor);

  text-decoration: none;

  outline: 0 !important;

}



a:hover {

  color: var(--mainColor);

  text-decoration: none;

}



:focus {

  outline: 0 !important;

  -webkit-box-shadow: none !important;

  box-shadow: none !important;

}



img {

  max-width: 100%;

  height: auto;

}



p {

  font-family: var(--fontFamily2);

  color: var(--paragraphColor);

  font-size: var(--fontSize);

  margin-bottom: 15px;

  line-height: 1.8;

}



p:last-child {

  margin-bottom: 0;

}



.ptb-100 {

  padding-top: 100px;

  padding-bottom: 100px;

}



.pt-100 {

  padding-top: 100px;

}



.pb-100 {

  padding-bottom: 100px;

}



.ptb-70 {

  padding-top: 70px;

  padding-bottom: 70px;

}



section.events {

  background: #efefef;

  border-top: 2px solid #d8d8d8;

  border-bottom: 2px solid #d8d8d8;

}



.pt-70 {

  padding-top: 70px;

}



.pb-70 {

  padding-bottom: 70px;

}



.pt-30 {

  padding-top: 0px;

}



.pl-20 {

  padding-left: 20px;

}



.pr-20 {

  padding-right: 20px;

}



.mt-30 {

  margin-top: 30px;

}



.mlr-15 {

  margin-left: 15px;

  margin-right: 15px;

}



.mb-30 {

  margin-bottom: 30px;

}



.section-content {

  margin-top: 20px;

}



.d-table {

  width: 100%;

  height: 100%;

}



.d-table-cell {

  vertical-align: middle;

}



.sticky {

  position: -webkit-sticky !important;

  position: sticky !important;

  top: 0;

  left: 0;

  width: 100%;

  z-index: 99;

  padding: 0px;

  background-color: var(--whiteColor) !important;

  -webkit-transition: 0.5s ease-in-out;

  transition: 0.5s ease-in-out;

  -webkit-box-shadow: 0 2px 28px 0 rgba(0, 0, 0, 0.09);

  box-shadow: 0 2px 28px 0 rgba(0, 0, 0, 0.09);

  -webkit-animation: 500ms ease-in-out 0s normal none 1 running fadeInDown;

  animation: 500ms ease-in-out 0s normal none 1 running fadeInDown;

}



.plr-100 {

  padding-left: 50px;

  padding-right: 50px;

}



.mt-10 {

  margin-top: -10px;

}



.bg-black {

  background-color: var(--blackColor);

}



.bg-f9fbfe {

  background-color: #efefef;

}



.bg-222222 {

  background-color: #222222;

}





/*================================================

Preloader

=================================================*/

.onctent-loader-wrapper {

  position: fixed;

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  background: #ffffff;

  z-index: 9999;

  display: flex;

  align-items: center;

  justify-content: center;

  transition: all .3s;

}



.loaded .onctent-loader-wrapper {

  opacity: o;

  visibility: hidden;

}





/*================================================

Topbar Area CSS

=================================================*/

.topbar-left-area ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.topbar-left-area ul li {

  display: inline-block;

  margin-right: 15px;

  padding: 10px 0px;

  font-size: 15px;

  font-family: var(--fontFamily2);

}



.topbar-left-area ul li a {

  color: var(--whiteColor);

}



.topbar-left-area ul li i {

  margin-right: 3px;

  font-size: 14px;

  color: var(--mainColor);

}



.topbar-right-area ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

  text-align: right;

}



.topbar-right-area ul li {

  display: inline-block;

  margin-left: 15px;

  padding: 10px 0px;

  font-size: 15px;

  font-weight: 400;

  font-family: var(--fontFamily2);

}



.topbar-right-area ul li a {

  color: var(--whiteColor);

}



.topbar-right-area ul li i {

  font-size: 14px;

  margin-right: 3px;

  color: var(--mainColor) !important;

}



/*================================================

Select Area CSS

=================================================*/

.nice-select {

  border: 0px;

  background-color: transparent;

  height: auto;

  width: 100%;

  line-height: 1;

  font-size: var(--fontSize);

  font-family: var(--fontFamily2);

  padding-top: 0px;

  padding-bottom: 0px;

  padding-left: 23px;

  padding-right: 15px;

}



.nice-select .selected {

  color: var(--mainColor);

}



.nice-select .list {

  width: 100%;

  z-index: 999;

}



.nice-select .list li {

  padding-top: 0px;

  padding-bottom: 0px;

}



.option-select-area {

  position: relative;

  display: inline-block;

  max-width: 100%;

  top: 3px;

  color: var(--paragraphColor);

}



.option-select-area .fa-globe {

  position: absolute;

  top: 2px;

  left: 0;

  z-index: 99;

  color: var(--whiteColor);

}



.option-select-area .nice-select .list {

  width: 85px;

  z-index: 9999;

}



.option-select-area .nice-select .list li {

  margin-left: 0px;

  display: block !important;

}



.option-select-area .nice-select::after {

  right: 2px;

  width: 7px;

  height: 7px;

  border-color: var(--whiteColor);

}



.option-select-area .nice-select .current {

  color: var(--whiteColor);

  font-size: 15px;

  font-weight: 400;

  font-family: var(--fontFamily2);

}



/*================================================

Navbar Area CSS

=================================================*/

a.meanmenu-reveal {

  display: none;

}



.mean-container .mean-bar {

  float: left;

  width: 100%;

  position: absolute;

  background: transparent;

  padding: 20px 0 0;

  z-index: 2;

  height: 60px;

  text-transform: capitalize;

  -webkit-box-sizing: content-box;

  box-sizing: content-box;

}



.mean-container .mean-bar * {

  -webkit-box-sizing: content-box;

  box-sizing: content-box;

}



.mean-container a.meanmenu-reveal {

  width: 35px;

  height: 30px;

  padding: 12px 15px 0 0;

  position: absolute;

  right: 0;

  top: 50%;

  cursor: pointer;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

  color: var(--mainColor);

  text-decoration: none;

  font-size: 16px;

  text-indent: -9999em;

  line-height: 22px;

  font-size: 1px;

  display: block;

  font-weight: 700;

}



.mean-container a.meanmenu-reveal span {

  display: block;

  background: var(--mainColor);

  height: 4px;

  margin-top: 5px;

  border-radius: 3px;

}



.mean-container .mean-nav {

  float: left;

  width: 100%;

  background: var(--whiteColor);

  margin-top: 64px;

}



.mean-container .mean-nav ul {

  padding: 0;

  margin: 0;

  width: 100%;

  border: none;

  list-style-type: none;

}



.mean-container .mean-nav ul li {

  position: relative;

  float: left;

  width: 100%;

}



.mean-container .mean-nav ul li a {

  display: block;

  float: left;

  width: 90%;

  padding: 1em 5%;

  margin: 0;

  text-align: left;

  color: #677294;

  border-top: 1px solid #dbeefd;

  text-decoration: none;

  text-transform: capitalize;

}



.mean-container .mean-nav ul li a:hover {

  background: var(--whiteColor);

}



.mean-container .mean-nav ul li a.active {

  color: var(--whiteColor);

}



.mean-container .mean-nav ul li li a {

  width: 80%;

  padding: 1em 10%;

  color: #677294;

  border-top: 1px solid #dbeefd;

  opacity: 1;

  filter: alpha(opacity=75);

  text-shadow: none !important;

  visibility: visible;

  text-transform: none;

  font-size: 14px;

  text-transform: capitalize;

}



.mean-container .mean-nav ul li li li a {

  width: 70%;

  padding: 1em 15%;

}



.mean-container .mean-nav ul li li li li a {

  width: 60%;

  padding: 1em 20%;

}



.mean-container .mean-nav ul li li li li li a {

  width: 50%;

  padding: 1em 25%;

}



.mean-container .mean-nav ul li a.mean-expand {

  margin-top: 3px;

  width: 100%;

  height: 24px;

  padding: 12px !important;

  text-align: right;

  position: absolute;

  right: 0;

  top: 0;

  z-index: 2;

  font-weight: 700;

  background: transparent !important;

  border: none !important;

}



.mean-container .mean-nav ul li.mean-last a {

  border-bottom: none;

  margin-bottom: 0;

}



.mean-container .mean-nav .navbar-nav {

  overflow-y: scroll;

  height: 100%;

}



.mean-container .mean-push {

  float: left;

  width: 100%;

  padding: 0;

  margin: 0;

  clear: both;

}



.mean-nav .wrapper {

  width: 100%;

  padding: 0;

  margin: 0;

}



.mean-nav .dropdown-toggle::after {

  display: none;

}



.mean-remove {

  display: none !important;

}



.mobile-nav {

  display: none;

  position: relative;

}



.btn-check:focus+.btn-primary,

.btn-primary:focus {

  background-color: var(--whiteColor);

  color: var(--blackColor);

}



.btn-primary,

.btn-primary:active {

  background-color: var(--whiteColor) !important;

  color: var(--blackColor) !important;

  border-color: var(--blackColor) !important;

}



.mobile-nav.mean-container .mean-nav ul li a.active {

  color: var(--mainColor);

}



/* Fix for box sizing on Foundation Framework etc. */

.main-nav {

  background-color: transparent;

  box-shadow: 0px 5px 14px 1px #d8d8d8;

}



.main-nav nav ul {

  padding: 0;

  margin: 0;

  list-style-type: none;

}



.main-nav nav .navbar-nav {

  margin-left: auto;

  margin-right: auto;

}



.main-nav nav .navbar-nav .nav-item {

  position: relative;

  padding: 15px 0;

}



.main-nav nav .navbar-nav .nav-item a {

  padding: 0;

  -webkit-transition: .5s;

  transition: .5s;

  position: relative;

  color: var(--blackColor);

  font-size: 15px;

  font-weight: 600;

  font-family: var(--fontFamily);

  margin-left: 14px;

  margin-right: 14px;

}



.main-nav nav .navbar-nav .nav-item a i {

  right: 0;

  top: 7px;

  font-size: 12px;

  position: absolute;

}



.main-nav nav .navbar-nav .nav-item a:hover {

  color: var(--mainColor);

  -webkit-transition: 0.5s;

  transition: 0.5s;

}



.main-nav nav .navbar-nav .nav-item a.dropdown-toggle {

  padding-right: 15px;

  position: relative;

}



.main-nav nav .navbar-nav .nav-item a.dropdown-toggle::after {

  content: '\f107';

  font-family: "Font Awesome 5 Free";

  position: absolute;

  top: 2px;

  right: 0;

  border: 0px;

  font-size: 13px;

}



.main-nav nav .navbar-nav .nav-item a.active {

  color: var(--mainColor);

  -webkit-transition: 0.5s;

  transition: 0.5s;

}



.main-nav nav .navbar-nav .nav-item:hover a {

  color: var(--mainColor);

}



.main-nav nav .navbar-nav .nav-item:hover ul {

  opacity: 1;

  -webkit-transform: rotateY(0deg);

  transform: rotateY(0deg);

  visibility: visible;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu {

  left: 0;

  top: 60px;

  opacity: 0;

  z-index: 99;

  width: 200px;

  border: none;

  display: block;

  border-radius: 0px;

  visibility: hidden;

  position: absolute;

  -webkit-transform: rotateX(-20deg);

  transform: rotateX(-20deg);

  -webkit-transform-origin: top;

  transform-origin: top;

  background: var(--whiteColor);

  -webkit-transition: all 0.5s ease-in-out;

  transition: all 0.5s ease-in-out;

  -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);

  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);

  padding-top: 10px;

  padding-left: 0px;

  padding-right: 0px;

  padding-bottom: 10px;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li {

  position: relative;

  padding: 0;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li a {

  margin: 0;

  display: block;

  padding: 7px 20px;

  color: var(--blackColor);

  border-bottom: 1px dashed transparent;

  font-size: 15px;

  font-weight: 400;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li a i {

  top: 50%;

  position: absolute;

  right: 10px !important;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li a::before {

  content: '\f0da';

  font-size: 0px;

  font-weight: 600;

  color: var(--mainColor);

  -webkit-transition: .2s ease;

  transition: .2s ease;

  position: absolute;

  top: 50%;

  left: 10px;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

  z-index: 99;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a.active {

  color: var(--mainColor);

  padding-left: 25px;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li a:hover::before,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li a.active::before {

  font-size: 15px;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu {

  position: absolute;

  left: 101%;

  top: 0;

  opacity: 0 !important;

  visibility: hidden !important;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li .dropdown-menu {

  top: 20px;

  left: 100%;

  position: absolute;

  opacity: 0 !important;

  visibility: hidden !important;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a {

  color: var(--blackColor);

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a:hover,
.main-nav nav .navbar-nav .nav-item .dropdown-menu li .dropdown-menu li a.active {

  color: var(--mainColor);

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li:hover .dropdown-menu {

  opacity: 1 !important;

  visibility: visible !important;

  top: -5px !important;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li:hover .dropdown-menu li:hover .dropdown-menu {

  opacity: 1 !important;

  visibility: visible !important;

  top: -5px !important;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li:hover a {

  color: var(--mainColor);

}



.main-nav nav .navbar-nav .nav-item:last-child .dropdown-menu {

  left: auto;

  right: 0;

}



.navbar-light .navbar-brand {

  color: var(--mainColor);

  font-weight: bold;

  text-transform: uppercase;

  width: 172px;

}



.navbar-light .navbar-brand:hover {

  color: var(--mainColor);

  font-weight: bold;

  text-transform: uppercase;

}



.mean-container .mean-bar {

  position: relative;

}



.mobile-nav .menu-sidebar-small-device {

  display: none;

  margin: 0px;

  padding: 0px;

  list-style: none;

  position: absolute;

  top: 15px;

  right: 47px;

}



.mobile-nav .menu-sidebar-small-device .uni-button {

  padding: 5px 10px;

}



.menu-sidebar ul {

  margin: 0;

  padding: 0;

  list-style: none;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

}



.menu-sidebar ul li {

  display: inline-block;

  margin-left: 15px;

}



.menu-small-device {

  display: none;

  position: absolute;

  right: 80px;

  top: 14px;

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.menu-small-device li {

  list-style: none;

  display: inline-block;

}



.menu-small-device li {

  display: inline-block;

  margin-left: 0px;

  position: relative;

  padding: 0px 5px;

  font-size: 14px;

  font-family: var(--fontFamily2);

}



.menu-small-device li a {

  color: var(--whiteColor);

}



.menu-small-device li a:hover {

  color: var(--mainColor);

}



.menu-small-device li i {

  font-size: 20px;

}



.menu-small-device li span {

  width: 15px;

  height: 15px;

  line-height: 1.1;

  font-size: 10px;

  padding-bottom: 0px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--whiteColor);

  background-color: var(--mainColor);

  position: absolute;

  right: 0;

  bottom: 0;

}



.menu-small-device li .popup-button {

  width: unset;

  height: unset;

  position: relative;

  top: -11px;

  right: -10px;

}



.menu-small-device li .popup-button i {

  font-size: 16px;

}



.main-nav nav .navbar-nav {

  margin-right: 0;

}



/*================================================

Popup Area CSS

=================================================*/

.popup-button {

  border: 0px;

  font-size: 18px;

  border-radius: 0px;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: transparent;

  color: var(--blackColor);

  width: 50px;

  height: 41px;

  display: inline-block;

}



.popup {

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  position: fixed;

  z-index: 99999;

  visibility: hidden;

  background-color: #000000d4;

}



.popup .popup-content {

  width: 0%;

  height: 100%;

  opacity: 0;

  margin-left: 0;

  margin-right: auto;

}



.popup .popup-content .close-btn {

  position: absolute;

  top: 20px;

  right: 20px;

  background-color: transparent;

  color: red;

  border: 0px;

  font-size: 30px;

}



.popup .popup-content form {

  top: 20%;

  left: 50%;

  width: 80%;

  visibility: hidden;

  position: absolute;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

}



.popup .popup-content form .search-box {

  border-radius: 10px;

  border: 1px solid var(--mainColor);

}



.popup .popup-content form .search-box input {

  padding: 5px 20px;

}



.popup .popup-content form .search-box .form-control {

  border-radius: 10px;

  border: 0px solid transparent !important;

}



.popup .popup-content form .search-box .btn {

  padding: 5px 15px;

  color: var(--whiteColor);

  border-radius: 10px;

  background-color: var(--mainColor);

  font-size: 25px;

}



.popup .hi {

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  -webkit-transition-delay: .2s;

  transition-delay: .2s;

  opacity: 1;

  width: 100%;

  background-color: rgba(0, 0, 0, 0.5);

}



.popup .hi form {

  visibility: visible;

  top: 50% !important;

  -webkit-transition: 1s ease-in-out;

  transition: 1s ease-in-out;

}



/*================================================

Header Responsive Area CSS

=================================================*/

@media only screen and (max-width: 767px) {

  .topbar-right-side {

    -webkit-box-pack: center;

    -ms-flex-pack: center;

    justify-content: center;

  }

  .topbar-left-side {

    text-align: center;

  }

  .topbar-left-side ul li {

    margin-right: 7px;

    margin-left: 7px;

  }

}



@media only screen and (min-width: 768px) and (max-width: 991px) {

  .topbar-right-area {

    -webkit-box-pack: center;

    -ms-flex-pack: center;

    justify-content: center;

  }

  .topbar-right-area ul {

    text-align: center;

  }

  .topbar-right-area ul li {

    padding-top: 0px;

  }

  .topbar-left-area {

    text-align: center;

  }

}



@media only screen and (min-width: 992px) and (max-width: 1199px) {

  .main-nav nav .navbar-nav .nav-item a {

    margin-left: 10px;

    margin-right: 10px;

  }

}



@media only screen and (min-width: 1200px) and (max-width: 1399px) {

  .main-nav nav .navbar-nav .nav-item a {

    font-size: 14px;

    margin-left: 13px;

    margin-right: 13px;

  }

}



@media only screen and (max-width: 1199px) {

  .main-responsive-nav {

    background-color: #ffffff;

    height: 65px;

  }

  .mobile-nav {

    display: block;

    position: relative;

  }

  .mobile-nav .logo {

    top: 8px;

    left: 0px;

    z-index: 999;

    position: absolute;

    color: #ffffff;

    font-weight: bold;

    text-transform: uppercase;

    text-decoration: none;

    width: 90px;

  }

  .mobile-nav nav .navbar-nav {

    max-height: 64vh;

    overflow-y: scroll;

    -webkit-box-shadow: 0 7px 13px 0 rgba(0, 0, 0, 0.1);

    box-shadow: 0 7px 13px 0 rgba(0, 0, 0, 0.1);

    /* width */

    /* Track */

    /* Handle */

    /* Handle on hover */

  }

  .mobile-nav nav .navbar-nav .nav-item a i {

    display: none;

  }

  .mobile-nav nav .navbar-nav::-webkit-scrollbar {

    width: 7px;

  }

  .mobile-nav nav .navbar-nav::-webkit-scrollbar-track {

    background: #f1f1f1;

  }

  .mobile-nav nav .navbar-nav::-webkit-scrollbar-thumb {

    background: #888;

  }

  .mobile-nav nav .navbar-nav::-webkit-scrollbar-thumb:hover {

    background: #555;

  }

  .mean-container .mean-bar {

    background-color: #ffffff;

    padding: 0;

  }

  .mean-container a.meanmenu-reveal {

    padding: 5px 2px 0 0;

    -webkit-transition: 0s !important;

    transition: 0s !important;

  }

  .main-nav {

    display: none !important;

  }

  .menu-sidebar {

    display: none;

  }

  .menu-small-device {

    z-index: 2;

    right: 50px;

    top: 14px;

    display: block !important;

  }

  .menu-small-device .default-button {

    padding: 7px 10px;

    font-size: 14px;

  }

  .meanclose {

    top: 60% !important;

  }

  .topbar-left-area {

    text-align: center;

  }

  .topbar-left-area ul li {

    margin-left: 5px;

    margin-right: 5px;

  }

}



.footer {

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/footer-bg.jpg");

  position: relative;

}



.footer::before {

  content: '';

  width: 100%;

  height: 100%;

  background-color: rgba(15, 18, 33, 0.95);

  position: absolute;

  left: 0;

  top: 0;

  z-index: 0;

}



.footer .container {

  position: relative;

  z-index: 1;

}



.footer-logo-area p {

  font-size: 15px;

  color: #dfdfdf;

  margin-top: 20px;

  margin-bottom: 20px;

}



.footer-logo-area .footer-social-area ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.footer-logo-area .footer-social-area ul li {

  display: inline-block;

}



.footer-logo-area .footer-social-area ul li span {

  color: var(--whiteColor);

  margin-right: 10px;

  font-size: 15px;

  font-weight: 500;

  font-family: var(--fontFamily2);

}



.footer-logo-area .footer-social-area ul li a {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  background-color: var(--whiteColor);

}



.footer-logo-area .footer-social-area ul li a:hover {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.footer-links h3 {

  color: var(--whiteColor);

  margin-bottom: 20px;

  padding-bottom: 15px;

  position: relative;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.footer-links h3::before {

  content: '';

  width: 30%;

  height: 1px;

  background-color: var(--mainColor);

  position: absolute;

  left: 0;

  bottom: 0;

}



.footer-contact {

  padding-left: 30px;

}



.footer-contact-card {

  position: relative;

  padding-left: 25px;

  margin-top: 10px;

}



.footer-contact-card i {

  position: absolute;

  left: 0;

  color: var(--mainColor);

}



.footer-contact-card h5 {

  margin-bottom: 5px;

  color: var(--whiteColor);

  font-size: var(--fontSize);

  font-weight: 600;

}



.footer-contact-card p {

  font-size: 14px;

}



.footer-contact-card p a {

  color: var(--whiteColor);

}



.footer-quick-links {

  padding-left: 20px;

}



.footer-quick-links ul {

  margin: 0;

  padding: 0;

  list-style: none;

}



.footer-quick-links ul li {

  margin-top: 12px;

  color: var(--mainColor);

  font-size: 15px;

  font-family: var(--fontFamily2);

}



.footer-quick-links ul li a {

  margin-left: 5px;

  color: var(--whiteColor);

}



.footer-quick-links ul li a:hover {

  color: var(--mainColor);

}



.footer-newsletter {

  margin-bottom: -10px;

  margin-top: -2px;

}



.footer-newsletter p {

  color: var(--whiteColor);

  font-size: 15px;

}



.footer-newsletter .newsletter-form::-webkit-input-placeholder {

  color: var(--whiteColor) !important;

}



.footer-newsletter .newsletter-form:-ms-input-placeholder {

  color: var(--whiteColor) !important;

}



.footer-newsletter .newsletter-form::-ms-input-placeholder {

  color: var(--whiteColor) !important;

}



.footer-newsletter .newsletter-form::placeholder {

  color: var(--whiteColor) !important;

}



.footer-newsletter .newsletter-form .form-control {

  color: var(--whiteColor) !important;

  background-color: transparent;

  border: 0px;

  padding: 10px 15px;

  border: 1px solid #eeeeee50;

  border-radius: 10px;

  font-size: 15px;

  font-family: var(--fontFamily2);

}



.footer-newsletter .newsletter-form .form-control::-webkit-input-placeholder {

  color: var(--whiteColor);

}



.footer-newsletter .newsletter-form .form-control:-ms-input-placeholder {

  color: var(--whiteColor);

}



.footer-newsletter .newsletter-form .form-control::-ms-input-placeholder {

  color: var(--whiteColor);

}



.footer-newsletter .newsletter-form .form-control::placeholder {

  color: var(--whiteColor);

}



.footer-newsletter .newsletter-form .news-btn {

  width: 100%;

  padding: 10px 15px;

  margin-top: 10px;

}



.footer-newsletter .newsletter-form .news-btn:hover {

  background-color: var(--blackColor);

}



.validation-danger {

  color: red;

}



.validation-success {

  color: green;

}



/*================================================

CopyRight Area CSS

=================================================*/

.copyright {

  text-align: center;

  color: var(--whiteColor);

  position: relative;

  padding-top: 0px;

  padding-bottom: 20px;

}



.copyright p {

  padding-top: 20px;

  color: #dfdfdf;

  border-top: 1px solid #eeeeee20;

  font-size: 15px;

}



.copyright p a {

  font-weight: 600;

  text-decoration: none;

  color: var(--mainColor);

}



.copyright p strong {

  color: var(--whiteColor);

}



/*================================================

Go Top CSS

=================================================*/

.go-top {

  position: fixed;

  cursor: pointer;

  bottom: 0px;

  right: 20px;

  border-radius: 5px;

  color: var(--mainColor);

  z-index: 99;

  height: 40px;

  width: 50px;

  display: inline-block;

  padding: 0 10px 45px;

  text-align: center;

  opacity: 1;

  visibility: hidden;

  font-size: 25px;

  -webkit-transition: var(--transition);

  -webkit-transition: 0.5s ease-in-out;

  transition: 0.5s ease-in-out;

  -webkit-box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1);

  box-shadow: 0px 3px 10px 2px rgba(7, 7, 7, 0.1);

}



.go-top i {

  position: absolute;

  right: 0;

  left: 0;

  z-index: 9;

  top: 50%;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

  text-align: center;

  margin-left: auto;

  margin-right: auto;

}



.go-top:hover {

  -webkit-transition: all 0.5s linear;

  transition: all 0.5s linear;

}



.go-top.active {

  opacity: 1;

  visibility: visible;

  bottom: 65px;

  -webkit-animation: top-bottom 5s infinite linear;

  animation: top-bottom 5s infinite linear;

}



.main-nav nav .navbar-nav .nav-item .dropdown-menu li a::before {

  content: "\f0da";

  font-family: "Font Awesome 5 Free";

}



/*================================================

Default button Area CSS

=================================================*/

.default-button,
.content-btn-center a {

  padding: 12px 40px;

  border-radius: 0px;

  position: relative;

  display: inline-block;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  border: 1px solid rgb(202 175 27);

  overflow: hidden !important;

  color: var(--whiteColor);

  background-color: var(--mainColor);

  border-radius: 10px;

  font-size: 15px;

  font-weight: 700;

  font-family: var(--fontFamily2);

}



.default-button i {

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  font-size: 15px !important;

  margin-left: 5px;

}



.default-button::before {

  content: '';

  width: 0px;

  height: 100%;

  overflow: hidden;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--mainColor);

  position: absolute;

  right: 0;

  left: unset;

  top: 0;

  z-index: 0;

  -webkit-transform-origin: right;

  transform-origin: right;

}



.default-button span {

  position: relative;

  z-index: 1;

}



.default-button:hover,
.content-btn-center a:hover {

  border-radius: 20px 5px 20px 5px;

  color: var(--whiteColor);

  background-color: var(--blackColor);

}



.default-button-2 {

  border-radius: 25px;

}



.default-button-3 {

  background-color: var(--whiteColor);

  color: var(--mainColor);

}



.default-button-3:hover {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.default-button-3:hover i {

  color: var(--whiteColor) !important;

}



.read-more-btn {

  font-size: 15px;

  font-weight: 600;

  font-family: var(--fontFamily2);

}



.read-more-btn i {

  font-size: 14px !important;

  margin-left: 2px;

  position: relative;

  top: 1px;

}



.default-button-middle {

  display: table;

  margin-left: auto;

  margin-right: auto;

}



/*================================================

Default Section Title Area CSS

=================================================*/

.default-section-title span {

  color: var(--mainColor);

  display: inline-block;

  margin-bottom: 14px;

  font-size: 15px;

  font-weight: 600;

  font-family: var(--fontFamily2);

}



.documentation span,
.documentation h3 {

  z-index: 10;

  position: relative;

}



.documentation h3,
.documentation p {

  color: #fff;

  position: relative;

}



.default-section-title h3 {

  margin-bottom: 0px;

  line-height: 1.2;

  font-size: 38px;

  font-weight: 700;

  text-transform: uppercase;

}



.default-section-title p {

  margin-top: 14px;

}



.default-section-title-middle {

  max-width: 720px;

  text-align: center;

  margin-left: auto;

  margin-right: auto;

}



.default-section-title-2 a {

  float: right;

  line-height: 1;

  color: var(--mainColor);

  font-size: 15px;

  font-weight: 500;

  font-family: var(--fontFamily2);

}



/*================================================

Index 01 Banner Area CSS

=================================================*/

.banner-text-area h6 {

  color: var(--mainColor);

  margin-bottom: 12px;

  font-size: 15px;

  font-weight: 500;

  font-family: var(--fontFamily2);

}



.banner-text-area h1 {

  color: var(--whiteColor);

  margin-bottom: 15px;

  font-size: 54px;

  font-weight: 700;

}



.banner-text-area p {

  color: rgba(255, 255, 255, 0.8);

}



.banner-text-area .default-button {

  margin-top: 10px;

}



.banner-text-area-1 {

  max-width: 850px;

}



.banner-text-area-1 h1,
.banner-text-area-1 p {

  color: var(--blackColor);

}



.banner-text-area-1 p {

  max-width: 720px;

  background-color: white;

}



.banner-img-area-1 {

  position: relative;

  z-index: 1;

}



.banner-img-area-1 a {

  width: 80px;

  height: 80px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  -webkit-animation: pulse 2s infinite linear forwards;

  animation: pulse 2s infinite linear forwards;

  background-color: var(--whiteColor);

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

  padding-left: 7.5px;

  -webkit-transition: var(--transition);

  transition: var(--transition);

}



.banner-img-area-1 a:hover {

  background-color: var(--mainColor);

  color: var(--whiteColor);

}



.main-banner {

  position: relative;

  overflow: hidden;

  padding-top: 50px;

  padding-bottom: 50px;

}



.main-banner::before {

  content: '';

  height: 100%;

  width: 30%;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/banner/banner-1-bg.jpg");

  position: absolute;

  top: 0;

  right: 0;

}



.main-banner::after {

  content: '';

  height: 100%;

  width: 30%;

  background-color: rgba(0, 0, 0, 0.9);

  position: absolute;

  top: 0;

  right: 0;

}



.main-banner .banner-social-icons {

  position: absolute;

  right: 20px;

  top: 50%;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

  -webkit-transform-origin: center;

  transform-origin: center;

  z-index: 1;

}



.main-banner .banner-social-icons ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.main-banner .banner-social-icons ul a {

  width: 30px;

  height: 30px;

  font-size: 14px;

  margin: 5px 0px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  border: 1px solid #3d2828;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

}



.main-banner .banner-social-icons ul a:hover {

  color: var(--whiteColor);

  border-color: var(--mainColor);

  background-color: var(--mainColor);

}



.main-banner .banner-comment {

  font-size: 14px;

  font-weight: 500;

  font-family: var(--fontFamily2);

  position: absolute;

  left: 3%;

  top: 50%;

  -webkit-transform: translateY(-50%) rotate(-90deg);

  transform: translateY(-50%) rotate(-90deg);

  -webkit-transform-origin: left center;

  transform-origin: left center;

}



.main-banner .banner-comment a {

  color: var(--paragraphColor);

}



/*================================================

Index 01 Services Area CSS

=================================================*/

.service-card {

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  margin-top: 30px;

}



.service-card .service-card-img {

  position: relative;

}



.service-card .service-card-img::before {

  content: '';

  width: 100%;

  height: 30px;

  background-color: var(--whiteColor);

  position: absolute;

  left: 0;

  bottom: -2px;

  display: none;

}



.service-card .service-card-img i {

  width: 60px;

  height: 60px;

  font-size: 35px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--whiteColor);

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  position: absolute;

  bottom: 0;

  left: 30px;

  z-index: 1;

}



.service-card .service-card-img i::after {

  content: '';

  width: 0%;

  height: 0%;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--mainColor);

  position: absolute;

  left: 50%;

  top: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

  z-index: 0;

}



.service-card .service-card-img i::before {

  position: relative;

  z-index: 1;

}



.service-card .service-card-text {

  padding: 20px 25px 25px;

  background-color: var(--whiteColor);

}



.service-card .service-card-text h4 {

  margin-bottom: 12px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.service-card .service-card-text p {

  margin-bottom: 12px;

}



.service-card:hover .service-card-img i {

  -webkit-transform: rotateY(180deg);

  transform: rotateY(180deg);

  color: var(--whiteColor);

}



.service-card:hover .service-card-img i::after {

  height: 100%;

  width: 100%;

}



.service-slider-area-1 {

  position: relative;

}



.service-slider-area-1 .owl-nav {

  width: 106%;

  z-index: 0;

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

}



.service-slider-area-1 .owl-nav button,
.documentation .owl-nav button {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  -webkit-box-shadow: 0px 0px 20px -3px #d6d6d6;

  box-shadow: 0px 0px 20px -3px #d6d6d6;

  color: var(--mainColor) !important;

  background-color: var(--whiteColor) !important;

}



.service-slider-area-1 .owl-nav button:hover {

  color: var(--whiteColor) !important;

  background-color: var(--mainColor) !important;

}



.service-slider-area-1 .owl-next {

  float: right;

}



/*================================================

Index 01 Who We Are Area CSS

=================================================*/

.why-we-img {

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/why-we/ww1.jpg");

  height: 100%;

}



.why-we-img img {

  display: none;

}



.why-we-text-area {

  padding: 30px 0px 30px 50px;

  background-color: var(--whiteColor);

  position: relative;

  margin-top: 50px;

  margin-bottom: 50px;

  margin-left: -100px;

  box-shadow: 0px 0px 9px rgb(0 0 0 / 34%);

}



.why-we-text-area .why-we-text-list {

  margin-top: 25px;

  position: relative;

  padding-left: 50px;

}



.why-we-text-area .why-we-text-list i {

  font-size: 35px;

  color: var(--mainColor);

  position: absolute;

  left: 0;

}



.why-we-text-area .why-we-text-list h4 {

  margin-bottom: 12px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.why-we-text-area .why-we-text-list ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.why-we-text-area .why-we-text-list ul li {

  margin-top: 12px;

  position: relative;

  padding-left: 20px;

  font-weight: 500;

  font-size: var(--fontSize);

  font-family: var(--fontFamily2);

}



.why-we-text-area .why-we-text-list ul li::before {

  content: '';

  width: 10px;

  height: 10px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  border: 2px solid var(--mainColor);

  background-color: var(--mainColor);

  position: absolute;

  left: 0;

  top: 7px;

}



.why-we-text-area .why-we-text-list ul li:hover::before {

  background-color: var(--secondColor);

}



/*================================================

Index 01 Fun Facts Area CSS

=================================================*/

.fun-facts-1 {

  position: relative;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/fun-facts/fun-facts-bg.jpg");

}



.fun-facts-1::before {

  content: '';

  width: 100%;

  height: 100%;

  background-color: rgba(0, 0, 0, 0.85);

  position: absolute;

  top: 0;

  left: 0;

  z-index: 0;

}



.fun-facts-1 .container {

  position: relative;

  z-index: 1;

}



.fun-facts-card {

  margin-top: 30px;

  padding-left: 40px;

  position: relative;

  display: flex;

}



.fun-facts-card::before {

  content: '';

  width: 1px;

  height: 80%;

  background-color: rgba(0, 170, 85, 0.5);

  position: absolute;

  top: 50%;

  right: 20px;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

}



.fun-facts-card i {

  width: 70px;

  height: 70px;

  font-size: 40px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--whiteColor);

  position: absolute;

  left: 0;

}



.fun-facts-card h2 {

  margin-bottom: 0;

  color: var(--whiteColor);

  font-size: 36px;

  font-weight: 700;

}



.fun-facts-card h2 .sign-icon {

  font-size: 30px;

  position: relative;

  top: 1.8px;

}



.fun-facts-card p {

  color: var(--whiteColor);

  font-size: 14px;

}



.fun-facts-card:hover i {

  -webkit-transform: rotateY(180deg);

  transform: rotateY(180deg);

  -webkit-transform-origin: center;

  transform-origin: center;

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.last-card::before {

  display: none;

}



/*================================================

Index 01 Upcoming Events Area CSS

=================================================*/

.events-card {

  position: relative;

  margin-top: 30px;

}



.events-card::before {

  content: '';

  width: 0%;

  height: 100%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-image: -webkit-gradient(linear, left bottom, left top, from(#000000), color-stop(#000000b7), to(#00000020));

  background-image: linear-gradient(to top, #000000, #000000b7, #00000020);

  position: absolute;

  left: 0;

  bottom: 0;

}



.events-card .events-card-text {

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  padding: 30px 25px;

  position: absolute;

  opacity: 0;

  width: 100%;

  bottom: 0;

  left: 0;

}



.events-card .events-card-text ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.events-card .events-card-text ul li {

  display: inline-block;

  margin-right: 10px;

  color: var(--mainColor);

  font-size: 15px;

  font-weight: 500;

  font-family: var(--fontFamily2);

}



.events-card .events-card-text ul li:last-child {

  margin-right: 0px;

  color: var(--whiteColor);

}



.events-card .events-card-text h4 {

  margin-top: 12px;

  margin-bottom: 12px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.events-card .events-card-text h4 a {

  color: var(--whiteColor);

}



.events-card .events-card-text h4 a:hover {

  color: var(--mainColor);

}



.events-card .events-card-text p {

  color: var(--mainColor);

  font-size: 14px;

  margin-bottom: 8px;

}



.events-card .events-card-text p i {

  margin-right: 3px;

  font-size: 13px;

}



.events-card .events-card-text p a {

  color: rgba(255, 255, 255, 0.8);

}



.events-card .events-card-text .read-more-btn {

  color: var(--whiteColor);

}



.events-card .events-card-text .read-more-btn:hover {

  color: var(--mainColor);

}



.events-card:hover::before {

  width: 100%;

}



.events-card:hover .events-card-text {

  opacity: 1;

  -webkit-transition-delay: .3s;

  transition-delay: .3s;

}



.events-slider-area {

  position: relative;

}



.events-slider-area .owl-nav,
.documentation .owl-nav {

  width: 106%;

  z-index: 0;

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

}



.content-btn-center {

  position: relative;

  text-align: center;

  margin-top: 20px;

}





section.documentation {

  background: url(../images/bg-documentation.jpeg);

  background-size: cover;

  position: relative;

}



section.documentation:before {

  position: absolute;

  content: '';

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  background: rgb(0 0 0 / 62%);

}



.events-slider-area .owl-nav button,
.documentation .owl-nav button {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  -webkit-box-shadow: 0px 0px 20px -3px #d6d6d6;

  box-shadow: 0px 0px 20px -3px #d6d6d6;

  color: var(--mainColor) !important;

  background-color: var(--whiteColor) !important;

}



.events-slider-area .owl-nav button:hover {

  color: var(--whiteColor) !important;

  background-color: var(--mainColor) !important;

}



.events-slider-area .owl-next,
.documentation .owl-next {

  float: right;

}



/*================================================

Index 01 Explore Events Area CSS

=================================================*/

.explore-events-img {

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/why-we/ww2.jpg");

  height: 100%;

}



.explore-events-img img {

  display: none;

}



.explore-events-text-area {

  padding: 30px 50px 30px 0px;

  background-color: var(--whiteColor);

  position: relative;

  margin-top: 50px;

  margin-bottom: 50px;

  margin-right: -100px;

}



.explore-events-text-area .explore-events-text-list {

  margin-top: 25px;

  position: relative;

  padding-left: 50px;

}



.explore-events-text-area .explore-events-text-list i {

  font-size: 35px;

  color: var(--mainColor);

  position: absolute;

  left: 0;

}



.explore-events-text-area .explore-events-text-list h4 {

  margin-bottom: 12px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.explore-events-text-area .explore-events-text-list ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.explore-events-text-area .explore-events-text-list ul li {

  margin-top: 12px;

  position: relative;

  padding-left: 20px;

  font-weight: 500;

  font-size: var(--fontSize);

  font-family: var(--fontFamily2);

}



.explore-events-text-area .explore-events-text-list ul li::before {

  content: '';

  width: 10px;

  height: 10px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  border: 2px solid var(--mainColor);

  background-color: var(--mainColor);

  position: absolute;

  left: 0;

  top: 7px;

}



.explore-events-text-area .explore-events-text-list ul li:hover::before {

  background-color: var(--secondColor);

}



.explore-event .section-content {

  margin-top: 60px;

}



/*================================================

Index 01 Feedback Area CSS

=================================================*/

.feedback-card {

  padding: 30px;

  margin-top: 30px;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  background-color: var(--whiteColor);

  position: relative;

  border-radius: 5px;

}



.feedback-card .flaticon-quotation {

  font-size: 45px;

  color: var(--secondColor);

  position: absolute;

  bottom: 30px;

  right: 30px;

  z-index: 0;

}



.feedback-card p {

  margin-top: 15px;

  color: var(--blackColor);

  font-size: 16px;

  font-weight: 500;

  font-style: italic;

}



.feedback-card .feedback-intro-area {

  margin-top: 5px;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

}



.feedback-card .feedback-intro-area img {

  margin-right: 15px;

  border-radius: 50%;

  width: -webkit-fit-content !important;

  width: -moz-fit-content !important;

  width: fit-content !important;

}



.feedback-card .feedback-intro-area h5 {

  margin-bottom: 8px;

  font-size: 18px;

  font-weight: 700;

}



.feedback-card .feedback-intro-area span {

  color: var(--mainColor);

  font-size: 14px;

  font-family: var(--fontFamily2);

}



.stars ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.stars ul li {

  display: inline-block;

  font-size: 14px;

  color: var(--mainColor);

}



.feedback-slider-area {

  position: relative;

}



.feedback-slider-area .owl-nav {

  width: 106%;

  z-index: 0;

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

}



.feedback-slider-area .owl-nav button {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  -webkit-box-shadow: 0px 0px 20px -3px #d6d6d6;

  box-shadow: 0px 0px 20px -3px #d6d6d6;

  color: var(--mainColor) !important;

  background-color: var(--whiteColor) !important;

}



.feedback-slider-area .owl-nav button:hover {

  color: var(--whiteColor) !important;

  background-color: var(--mainColor) !important;

}



.feedback-slider-area .owl-next {

  float: right;

}



/*================================================

Index 01 team Area CSS

=================================================*/

.team-card {

  margin-top: 30px;

}



.team-card .team-card-img {

  position: relative;

}



.team-card .team-card-img::before {

  content: '';

  width: 100%;

  height: 0%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-image: -webkit-gradient(linear, left bottom, left top, from(#000000), color-stop(#00000050), to(#00000000));

  background-image: linear-gradient(to top, #000000, #00000050, #00000000);

  position: absolute;

  left: 0;

  bottom: 0;

  z-index: 0;

}



.team-card .team-card-img .team-social-icons {

  width: 100%;

  opacity: 0;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  text-align: center;

  position: absolute;

  bottom: 0px;

  z-index: 0;

}



.team-card .team-card-img .team-social-icons ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.team-card .team-card-img .team-social-icons ul li {

  display: inline-block;

}



.team-card .team-card-img .team-social-icons ul li a {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--whiteColor);

}



.team-card .team-card-img .team-social-icons ul li a:hover {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.team-card .team-card-text {

  text-align: center;

  padding: 25px 25px 0px;

}



.team-card .team-card-text h4 {

  margin-bottom: 8px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.team-card .team-card-text p {

  font-size: 14px;

  color: var(--mainColor);

}



.team-card:hover .team-card-img::before {

  height: 100%;

}



.team-card:hover .team-card-img .team-social-icons {

  -webkit-transition-delay: .3s;

  transition-delay: .3s;

  bottom: 25px;

  opacity: 1;

}



/*================================================

Index 01 Process Area CSS

=================================================*/

.process-card {

  margin-top: 30px;

  padding: 30px 25px 25px;

  background-color: var(--whiteColor);

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  position: relative;

  padding-left: 105px;

  display: f;

}



.process-card i {

  width: 60px;

  height: 60px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  background-color: var(--whiteColor);

  position: absolute;

  left: 25px;

}



.process-card h4 {

  margin-bottom: 10px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.process-card:hover i {

  -webkit-transform: rotateY(180deg);

  transform: rotateY(180deg);

  -webkit-transform-origin: center;

  transform-origin: center;

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



/*================================================

Index 01 Blog Area CSS

=================================================*/

.blog-card {

  margin-top: 30px;

}



.blog-card .blog-card-img {

  overflow: hidden;

}



.blog-card .blog-card-img img {

  width: 100%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

}



.blog-card .blog-card-text-area {

  padding: 30px 25px;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  background-color: var(--whiteColor);

}



.blog-card .blog-card-text-area h4 {

  margin-top: 18px;

  margin-bottom: 12px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.blog-card .blog-card-text-area p {

  margin-bottom: 12px;

}



.blog-card:hover .blog-card-img img {

  -webkit-transform: scale(1.1) rotate(2deg);

  transform: scale(1.1) rotate(2deg);

}



.blog-date ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.blog-date ul li {

  display: inline-block;

  position: relative;

  margin-right: 15px;

  font-size: 14px;

  font-family: var(--fontFamily2);

}



.blog-date ul li i {

  margin-right: 3px;

  color: var(--mainColor);

}



.blog-date ul li:last-child {

  margin-right: 0px;

}



.blog-date ul li:last-child::before {

  display: none;

}



.blog-date ul li::before {

  content: '/';

  position: absolute;

  right: -12px;

}



/*================================================

Index 02 Banner Area CSS

=================================================*/

.home-banner {

  background-color: #222222;

}



.home-banner .banner-text-area h1 {

  font-size: 48px;

}



.home-banner .banner-text-area p {

  max-width: 720px;

}



.home-banner-area {

  padding: 0px 20px 20px;

  position: relative;

  margin-left: 30px;

}



.home-banner-area::before {

  content: '';

  width: 100%;

  height: 50%;

  background-color: var(--whiteColor);

  position: absolute;

  bottom: 0;

  left: 0;

  z-index: 0;

  border-radius: 10px;

}



.home-banner-area img {

  position: relative;

  z-index: 1;

  border-radius: 10px;

}



/*================================================

Index 02 Process Area CSS

=================================================*/

.process-card-2 {

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

}



.process-card-2 h4,
.process-card-2 a,
.process-card-2 p {

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

}



.process-card-2:hover {

  background-color: var(--mainColor);

}



.process-card-2:hover i {

  color: var(--mainColor);

  background-color: var(--whiteColor);

}



.process-card-2:hover h4,
.process-card-2:hover a,
.process-card-2:hover p {

  color: var(--whiteColor);

}



/*================================================

Index 02 About Area CSS

=================================================*/

.about-text-area-2 {

  padding: 0px;

  margin: 0;

  background-color: transparent;

  padding-left: 25px;

}



.about-us-page .why-we-text-area.about-text-area-2 {

  box-shadow: none;

}





.about-img {

  position: relative;

  height: 100%;

}



.about-img .a-img-1 {

  position: relative;

  max-width: 60%;

}



.about-img .a-img-2 {

  position: absolute;

  max-width: 55%;

  right: 0;

  bottom: 0;

}



.about-img .a-img-3 {

  position: absolute;

  top: 0%;

  right: 5%;

  border-radius: 50%;

  display: none;

}



/*================================================

Index 02 Services Area CSS

=================================================*/

.service-2 .default-section-title h3,
.service-2 .default-section-title p {

  color: var(--whiteColor);

}



.service-card-2 {

  padding: 0px 25px 25px;

  margin-top: 60px;

  background-color: var(--whiteColor);

}



.service-card-2 i {

  width: 60px;

  height: 60px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--whiteColor);

  position: relative;

  margin-top: -40px;

  margin-bottom: 20px;

}



.service-card-2 h4 {

  margin-bottom: 12px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.service-card-2 p {

  margin-bottom: 12px;

}



.service-card-2:hover i {

  -webkit-transform: rotateY(180deg);

  transform: rotateY(180deg);

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.service-slider-area {

  position: relative;

}



.service-slider-area .owl-nav {

  width: 106%;

  z-index: 0;

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

}



.service-slider-area .owl-nav button {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  color: var(--mainColor) !important;

  background-color: var(--whiteColor) !important;

}



.service-slider-area .owl-nav button:hover {

  color: var(--whiteColor) !important;

  background-color: var(--mainColor) !important;

}



.service-slider-area .owl-next {

  float: right;

}



/*================================================

Index 02 Video Area CSS

=================================================*/

.video {

  position: relative;

}



.video::before {

  content: '';

  width: 100%;

  height: 50%;

  background-color: #222222;

  position: absolute;

  left: 0;

  top: 0;

}



.video-area {

  position: relative;

  z-index: 1;

}



.video-area a {

  width: 80px;

  height: 80px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  background-color: var(--whiteColor);

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

  -webkit-animation: pulse 2s infinite linear forwards;

  animation: pulse 2s infinite linear forwards;

  padding-left: 10px;

}



/*================================================

Index 02 Fun Facts Area CSS

=================================================*/

.fun-facts-card-2 i {

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

}



.fun-facts-card-2 h2 {

  color: var(--blackColor);

}



.fun-facts-card-2 p {

  color: var(--paragraphColor);

}



/*================================================

Index 02 Explore City Area CSS

=================================================*/

.about-img-2 .a-img-1 {

  float: right;

  max-width: 50%;

}



.about-img-2 .a-img-2 {

  left: 0;

  right: unset;

  max-width: 60%;

}



.about-img-2 .a-img-3 {

  bottom: 0;

  top: unset;

}



.explore-2 .default-section-title-middle {

  display: block;

  margin-bottom: 40px;

}



/*================================================

Index 02 Feedback Area CSS

=================================================*/

.feedback-card-2 {

  padding: 30px;

  margin-top: 30px;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  background-color: var(--whiteColor);

  position: relative;

}



.feedback-card-2 .flaticon-quotation {

  font-size: 45px;

  color: var(--secondColor);

  position: absolute;

  bottom: 00px;

  right: 30px;

  z-index: 0;

}



.feedback-card-2 p {

  margin-top: 10px;

  color: var(--blackColor);

  font-size: 16px;

  font-weight: 500;

  font-style: italic;

}



.feedback-card-2 .feedback-intro-area {

  margin-top: 0px;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

}



.feedback-card-2 .feedback-intro-area img {

  margin-right: 15px;

  border-radius: 50%;

  width: -webkit-fit-content !important;

  width: -moz-fit-content !important;

  width: fit-content !important;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  border: 2px solid var(--blackColor);

}



.feedback-card-2 .feedback-intro-area h5 {

  margin-bottom: 8px;

  font-size: 18px;

  font-weight: 700;

}



.feedback-card-2 .feedback-intro-area span {

  color: var(--blackColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  font-size: 14px;

  font-family: var(--fontFamily2);

}



.feedback-card-2:hover .feedback-intro-area span {

  color: var(--mainColor);

}



.feedback-card-2:hover .feedback-intro-area img {

  border-color: var(--mainColor);

}



.feedback-slider-area-2 .owl-dots {

  text-align: center;

}



.feedback-slider-area-2 .owl-dots .owl-dot {

  width: 12px;

  height: 12px;

  margin: 0px 3px;

  border-radius: 50%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  border: 1px solid var(--blackColor) !important;

}



.feedback-slider-area-2 .owl-dots .active {

  border-color: var(--mainColor) !important;

}



/*================================================

Index 03 Banner Area CSS

=================================================*/

.banner {

  overflow: hidden;

  padding-top: 25px;

}



.banner .container-fluid {

  padding-left: 70px;

  padding-right: 0;

}



.banner-img-3 {

  position: relative;

  z-index: 1;

}



.banner-img-3 img {

  width: 100%;

  position: relative;

  right: -50px;

}



.banner-img-3 a {

  width: 80px;

  height: 80px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--whiteColor);

  -webkit-animation: pulse 2s infinite linear forwards;

  animation: pulse 2s infinite linear forwards;

  background-color: var(--mainColor);

  position: absolute;

  top: 50%;

  left: 3%;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

  padding-left: 10px;

}



.banner-text-area-3 {

  position: relative;

  top: -15px;

}



.banner-text-area-3 h1 {

  font-size: 48px;

  color: var(--blackColor);

}



.banner-text-area-3 p {

  max-width: 720px;

  color: var(--blackColor);

}



/*================================================

Index 03 About Area CSS

=================================================*/

.about-img-3 {

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/about/a3-1.jpg");

  height: 100%;

  position: relative;

  z-index: 1;

}



.about-img-3 img {

  display: none;

}



.ai-2-2 {

  background-image: url("../images/about/a3-2.jpg");

  border-radius: 10px;

}



.about {

  position: relative;

}



.about .shape {

  position: absolute;

  top: 13%;

  left: 13%;

}



.about-3 .shape {

  left: unset;

  right: 13%;

  top: 26%;

}



.about-3 .section-content {

  margin-top: 50px;

}



/*================================================

Inner Area CSS

=================================================*/

.uni-banner {

  background-size: cover;

  background-repeat: no-repeat;

  background-position: center;

  background-image: url("../images/footer-bg.jpg");

  position: relative;

}



.uni-banner::before {

  content: '';

  width: 100%;

  height: 100%;

  background-color: rgba(0, 0, 0, 0.8);

  position: absolute;

  left: 0;

  top: 0;

  z-index: 0;

}



.uni-banner-text-area {

  position: relative;

  z-index: 1;

  text-align: center;

  padding-top: 100px;

  padding-bottom: 100px;

}



.uni-banner-text-area h1 {

  font-size: 48px;

  font-weight: 700;

  color: var(--whiteColor);

  font-family: var(--fontFamily);

  margin-bottom: 15px;

}



.uni-banner-text-area ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.uni-banner-text-area ul li {

  display: inline-block;

  margin: 0px 10px;

  position: relative;

  color: var(--mainColor);

  font-weight: 500;

  font-size: 15px;

  font-family: var(--fontFamily);

}



.uni-banner-text-area ul li a {

  color: var(--whiteColor);

}



.uni-banner-text-area ul li::after {

  content: '\f105';

  font-size: 12px;

  font-family: "Font Awesome 5 Free";

  font-weight: 600;

  position: absolute;

  right: -18px;

  top: 55%;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

}



.uni-banner-text-area ul li:last-child::after {

  display: none;

}



.uni-banner-text-area ul li:first-child {

  margin-left: 0px;

}



/*================================================

Inner Service area CSS

=================================================*/

.service-4 {

  background-size: cover;

  background-repeat: no-repeat;

  background-position: center;

  background-image: url("../images/footer-bg.jpg");

  position: relative;

}



.service-4::before {

  content: '';

  width: 100%;

  height: 100%;

  background-color: rgba(0, 0, 0, 0.8);

  position: absolute;

  left: 0;

  top: 0;

  z-index: 0;

}



.service-4 .container {

  position: relative;

  z-index: 1;

}



.service-4 .default-section-title h3,
.service-4 .default-section-title p {

  color: var(--whiteColor);

}



/*================================================

FAQ Area CSS

=================================================*/

.faq .accordion-item {

  background-color: transparent;

  margin-top: 15px;

  border: 1px solid #eeeeee !important;

}



.faq .accordion-item .accordion-body {

  background-color: transparent;

  padding-top: 15px;

}



.faq .accordion-item .accordion-body p {

  font-size: var(--fontSize);

  font-family: var(--fontFamily2);

}



.faq .accordion-button {

  border: 0px !important;

  min-height: 55px;

  position: relative;

  color: var(--blackColor) !important;

  -webkit-box-shadow: none !important;

  box-shadow: none !important;

  background-color: var(--whiteColor);

  padding: 15px 15px 15px 65px;

  border-radius: 5px !important;

  font-size: 18px;

  font-weight: 500;

  font-family: var(--fontFamily2);

}



.faq .accordion-button i {

  width: 50px;

  height: 100%;

  font-size: 25.5px;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: #ffffff;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: #020202;

  position: absolute;

  left: 0px;

}



.faq .accordion-button::after {

  display: none;

}



.faq .accordion-button .fa-minus-circle {

  opacity: 0;

}



.faq .accordion-button:not(.collapsed) {

  background-color: var(--mainColor);

  color: var(--whiteColor) !important;

}



.faq .accordion-button:not(.collapsed) i {

  -webkit-transform: rotateY(180deg);

  transform: rotateY(180deg);

  background-color: var(--mainColor);

}



.faq .accordion-button:not(.collapsed) .fa-minus-circle {

  opacity: 1;

}



.faq-img-area {

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url("../images/faq-bg.jpg");

  height: 100%;

  position: relative;

}



.faq-img-area img {

  display: none;

}



.faq-img-area a {

  width: 80px;

  height: 80px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--mainColor);

  background-color: var(--whiteColor);

  position: absolute;

  top: 50%;

  left: 50%;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

  padding-left: 10px;

}



.faq-text-area {

  margin-top: 50px;

  margin-bottom: 50px;

  padding: 50px 0px 50px 50px;

  background-color: var(--whiteColor);

  margin-left: -100px;

  position: relative;

  z-index: 1;

}



/*================================================

Pagination area CSS

=================================================*/

.paginations {

  display: table;

  margin-left: auto;

  margin-right: auto;

}



.paginations ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.paginations ul li {

  display: inline-block;

  text-align: center;

}



.paginations ul li a {

  width: 35px;

  height: 35px;

  margin: 0px 3px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--blackColor);

  border: 1px solid var(--secondColor);

  background-color: var(--whiteColor);

  font-size: 15px;

  font-weight: 600;

  font-family: var(--fontFamily2);

}



.paginations ul li a:hover {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.paginations ul li .active {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



/*================================================

Log In Page CSS

=================================================*/

.login-form {

  margin-top: 20px;

}



.login-form form .form-control {

  background-color: #f9f9f9;

  border: 0px solid var(--secondColor);

  padding: 10px 15px;

  margin-top: 20px;

}



.login-form form .form-check label {

  font-weight: 400;

  font-size: 14px;

  font-family: var(--fontFamily2);

}



.login-form form .default-button {

  width: 100%;

}



.login-form p {

  font-size: 14px;

  font-style: italic;

  font-family: var(--fontFamily2);

}



.form-check-input:checked {

  border-color: var(--mainColor);

  background-color: var(--mainColor);

}



.log-in-card {

  padding: 30px;

  margin-top: 30px;

  background-color: var(--whiteColor);

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  border-radius: 10px;

}



.log-in-card .default-section-title h3 {

  font-size: var(--card-title-fontSize);

}



.log-in-card .login-p {

  margin-top: 15px;

  text-align: center;

}



.log-in-card .login-p a {

  color: var(--mainColor);

}



.login-footer-area {

  text-align: center;

}



.login-footer-area span {

  text-align: center;

  position: relative;

  display: block;

  margin: 15px 0px;

  font-size: 15px;

  font-weight: 600;

  font-family: var(--fontFamily2);

}



.login-footer-area span::before {

  content: '';

  width: 47%;

  height: .5px;

  background-color: #70707050;

  position: absolute;

  left: 0;

  top: 50%;

  z-index: 1;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

}



.login-footer-area span::after {

  content: '';

  width: 47%;

  height: .5px;

  background-color: #70707050;

  position: absolute;

  right: 0;

  top: 50%;

  z-index: 1;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

}



.login-footer-area button {

  border: 0px;

  width: 100%;

  margin-bottom: 20px;

  padding: 12px 15px;

  color: var(--mainColor);

  border: 1px solid var(--secondColor);

  background-color: var(--whiteColor);

  font-size: 15px;

  font-weight: 00;

  font-family: var(--fontFamily2);

}



.login-footer-area p {

  font-size: 15px;

}



.login-footer-area p a {

  color: var(--mainColor);

}



/*================================================

Terms & Privacy area CSS

=================================================*/

.terms {

  margin-bottom: -15px;

}



.terms strong {

  color: var(--blackColor);

}



.terms a {

  color: var(--mainColor);

}



.terms h1,
.terms h2,
.terms h3,
.terms h4,
.terms h5 {

  margin-top: 25px;

  margin-bottom: 15px;

  font-family: var(--fontFamily);

  font-weight: 600;

}



.terms h6 {

  font-size: 20px;

  font-weight: 600;

  font-family: var(--fontFamily);

}



.terms h1 {

  font-size: 30px;

}



.terms h2 {

  font-size: 28px;

}



.terms h3 {

  font-size: 26px;

}



.terms h4 {

  font-size: 24px;

}



.terms h5 {

  font-size: 22px;

}



.terms p {

  font-size: var(--fontSize2);

  font-family: var(--fontFamily2);

}



.terms ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.terms ul li {

  margin: 10px 0px;

  font-size: var(--fontSize);

  color: var(--paragraphColor);

  font-family: var(--fontFamily2);

}



.terms ul li span {

  font-weight: 700;

  margin-right: 8px;

  color: var(--blackColor);

}



.terms .payment li {

  position: relative;

  padding-left: 20px;

}



.terms .payment li::before {

  content: '';

  width: 10px;

  height: 10px;

  border-radius: 50%;

  background-color: var(--mainColor);

  position: absolute;

  left: 0;

  top: 6px;

}



/*================================================

Error Area CSS

=================================================*/

.error {

  border-top: 1px solid #eeeeee;

}



.error-content {

  max-width: 600px;

  text-align: center;

  margin-left: auto;

  margin-right: auto;

}



.error-content h4 {

  margin-top: 25px;

  margin-bottom: 12px;

  font-size: 36px;

  font-weight: 700;

}



.error-content .default-button {

  margin-top: 8px;

}



/*================================================

Details Page Area CSS

=================================================*/

.mt-15 {

  margin-top: 25px;

}



.details-text-area h3 {

  margin-top: 28px;

  margin-bottom: 12px;

  font-size: 24px;

  font-weight: 700;

}



.details-text-area ul {

  margin: 0 0px 5px;

}



.details-text-area ul li {

  margin-bottom: 15px;

  font-size: 15px;

  font-weight: 500;

  font-family: var(--fontFamily2);

}



.details-map-area {

  width: 100%;

  height: 500px;

}



.details-map-area .d-map {

  width: 100%;

  height: 100%;

}



/*================================================

Sidebar Area CSS

=================================================*/

.sidebar-card {

  padding: 25px;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  background-color: var(--whiteColor);

  border-radius: 5px;

}



.sidebar-card h3 {

  margin-bottom: 20px;

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.sidebar-card p {

  margin-bottom: 18px;

}



.sidebar-area.events-details-sidebar h3 {

  margin-bottom: 12px;

}



.sidebar-area.events-details-sidebar .event-info-card h5 {

  margin-bottom: 3px;

}



.event-info-card {

  margin-top: 20px;

  position: relative;

  padding-left: 35px;

}



.event-info-card i {

  color: var(--mainColor);

  position: absolute;

  left: 0;

  top: 1.2px;

  font-size: 25px;

}



.event-info-card h5 {

  margin-bottom: 8px;

  font-size: 16px;

  font-weight: 600;

}



.event-info-card span {

  color: var(--paragraphColor);

  font-size: 15px;

  font-family: var(--fontFamily2);

}



.search-box .input-group {

  border: 1px solid #eeeeee;

  border-radius: 0px;

}



.search-box .form-control {

  background-color: var(--whiteColor);

  border: 0px;

  padding: 10px;

  border-radius: 0px;

}



.search-box .btn {

  border-radius: 0px;

  color: var(--whiteColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--mainColor);

}



.search-box .btn:hover {

  background-color: var(--blackColor);

}



.sidebar-category ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.sidebar-category ul li {

  margin-top: 12px;

  font-weight: 400;

  font-size: 15px;

  font-family: var(--fontFamily2);

}



.sidebar-category ul li i {

  margin-right: 3px;

  color: var(--mainColor);

}



.sidebar-category ul li a {

  color: var(--paragraphColor);

}



.sidebar-category ul li a:hover {

  color: var(--mainColor);

}



.sidebar-tag ul {

  margin: -10px 0 0;

  padding: 0px;

  list-style: none;

}



.sidebar-tag ul li {

  display: inline-block;

}



.sidebar-tag ul li a {

  padding: 5px 15px;

  border-radius: 5px;

  display: inline-block;

  border: 1px solid #eeeeee;

  background-color: var(--whiteColor);

  font-size: 14px;

  font-family: var(--fontFamily2);

  margin-right: 5px;

  margin-top: 10px;

}



.sidebar-tag ul li a:hover {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



/*================================================

Inner Projects Area CSS

=================================================*/

.service-card-4 {

  margin-top: 30px;

  position: relative;

}



.service-card-4::before {

  content: '';

  width: 100%;

  height: 0%;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: rgba(0, 0, 0, 0.8);

  position: absolute;

  left: 0;

  bottom: 0;

  z-index: 0;

}



.service-card-4 .service-card-4-text {

  opacity: 0;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  padding: 0px 25px 25px 0px;

  position: absolute;

  width: 100%;

  bottom: 0;

  left: 0;

}



.service-card-4 .service-card-4-text span {

  color: var(--mainColor);

  display: inline-block;

  margin-bottom: 8px;

  font-size: 15px;

  font-weight: 600;

  font-family: var(--fontFamily2);

}



.service-card-4 .service-card-4-text h5 {

  margin-bottom: 0px;

  font-size: 20px;

  font-weight: 600;

}



.service-card-4 .service-card-4-text h5 a {

  color: var(--whiteColor);

}



.service-card-4 .service-card-4-text h5 a:hover {

  color: var(--mainColor);

}



.service-card-4:hover::before {

  height: 100%;

}



.service-card-4:hover .service-card-4-text {

  opacity: 1;

  padding-left: 25px;

  -webkit-transition-delay: .3s;

  transition-delay: .3s;

}



/*================================================

Blog Details Page CSS

=================================================*/

.recent-news-card {

  margin-top: 20px;

  min-height: 90px;

  position: relative;

  padding-left: 105px;

}



.recent-news-card img {

  position: absolute;

  left: 0;

  border-radius: 5px;

  width: 90px;

}



.recent-news-card h5 {

  line-height: 1.4;

  padding-top: 5px;

  margin-bottom: 8px;

  font-weight: 600;

  font-size: 16px !important;

  font-size: var(--fontSize);

}



.recent-news-card p {

  font-size: 14px;

}



.blog-text-footer {

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: justify;

  -ms-flex-pack: justify;

  justify-content: space-between;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;

  border-radius: 0px;

  padding: 3px 15px 15px 15px;

  background-color: #f9fafb;

}



.blog-text-footer ul {

  margin: 0px;

  padding: 0px;

  list-style: none;

}



.blog-text-footer ul li {

  display: inline-block;

}



.blog-text-footer ul li span {

  font-weight: 600;

  margin-right: 10px;

  padding: 0px !important;

  background-color: transparent !important;

}



.blog-text-footer .tag-area {

  margin-top: 12px;

}



.blog-text-footer .tag-area ul li {

  margin-right: 5px;

  cursor: pointer;

  font-size: var(--fontSize);

  font-family: var(--fontFamily2);

}



.blog-text-footer .tag-area ul li i {

  color: var(--mainColor);

}



.blog-text-footer .tag-area ul li:hover {

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  color: var(--mainColor);

}



.blog-text-footer .tag-area ul li:first-child {

  padding: 0px;

}



.blog-text-footer .social-icons {

  margin-top: 12px;

}



.blog-text-footer .social-icons ul li a {

  width: 30px;

  height: 30px;

  border-radius: 50%;

  color: var(--mainColor);

  background-color: white;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

}



.blog-text-footer .social-icons ul li a:hover {

  color: var(--whiteColor);

  background-color: var(--mainColor);

}



.bd-comments {

  margin-top: 30px;

}



.bd-comments h3 {

  font-size: var(--card-title-fontSize);

  font-weight: 600;

}



.comment-card {

  margin-top: 30px;

  position: relative;

  padding-left: 90px;

}



.comment-card img {

  border-radius: 50%;

  position: absolute;

  left: 0;

}



.comment-card h5 {

  margin-bottom: 0px;

  font-weight: 600;

  font-size: 18.5px;

}



.comment-card span {

  color: var(--paragraphColor);

  margin-bottom: 10px;

  font-weight: 400;

  font-size: 14px;

  font-family: var(--fontFamily);

}



.comment-card p {

  margin-top: 10px;

  margin-bottom: 10px;

}



.comment-card a {

  color: var(--mainColor);

  font-weight: 500;

}



.bd-form {

  margin-top: 30px;

  border-radius: 0px;

  background-color: #f9fafb;

  padding: 30px;

}



.bd-form h3 {

  font-size: var(--card-title-fontSize);

  font-weight: 600;

  margin-top: 0px;

}



.bd-form p {

  font-size: 14px;

  margin-bottom: 5px;

}



.bd-form .form-control {

  border: 0px;

  margin-top: 15px;

  margin-bottom: 15px;

  padding: 12px 15px;

  border-radius: 0px;

  background-color: var(--whiteColor);

}



.bd-form .default-button {

  margin-top: 15px;

}



.blog-quote {

  background-color: #f9fafb;

  padding: 30px 30px 25px;

  position: relative;

  margin-bottom: 20px;

  margin-top: 10px;

}

.default-section-title {

  padding-right: 40px;

  height: 100%;

  align-self: flex-start;

}



.default-section-title p {

  line-height: 2;

}

.blog-quote i {

  font-size: 45px;

  color: var(--mainColor);

  position: absolute;

  top: 50%;

  left: 30px;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

}



.blog-quote p {

  color: var(--blackColor);

  max-width: 650px;

  text-align: center;

  margin-right: auto;

  margin-left: auto;

  font-size: 17px;

  font-weight: 600;

}



.blog-details-text-area h3 {

  margin-bottom: 12px;

}



.blog-details-text-area .blog-date {

  margin-top: 25px;

  margin-bottom: 0px;

}



.blog-details-text-area .blog-date ul {

  margin: 0px;

}



.blog-details-text-area .blog-date ul li {

  font-weight: 400;

}



/*================================================

Contact Page CSS

=================================================*/

.contact-card {

  height: 80%;

  margin-top: 30px;

  padding: 30px 20px 30px 100px;

  position: relative;

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--whiteColor);

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

}



.contact-card i {

  width: 60px;

  height: 60px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  color: var(--whiteColor);

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  background-color: var(--mainColor);

  position: absolute;

  left: 25px;

}



.contact-card h5 {

  margin-bottom: 12px;

  font-size: 20px;

  font-weight: 600;

}



.contact-card p {

  margin-bottom: 0px;

}



.contact-card p a {

  color: VAR(--paragraphColor);

}



.contact-form-text-area {

  padding: 30px;

  background-color: #f9fafb;

}



.contact-form-text-area form {

  margin-top: 15px;

}



.contact-form-text-area form .form-control {

  padding: 15px 15px;

  border: 1px solid #eeeeee;

  margin: 10px 0px;

}



.contact-form-text-area form .default-button {

  margin-top: 20px;

  border-radius: 5px;

  width: 100%;

}



.contact-form-text-area .form-check {

  margin-top: 10px;

  margin-bottom: 5px;

}



.contact-form-text-area .form-check .form-check-label {

  font-size: 15px;

  font-weight: 500;

  color: var(--paragraphColor);

}



.contact-form-text-area .form-check .form-check-label a {

  color: var(--mainColor);

}



.google-map {

  width: 100%;

  height: 100%;

}



.google-map .g-map {

  width: 100%;

  height: 100%;

  border-radius: 10px;

}



.with-errors ul li {

  color: red;

}



@-webkit-keyframes pulse {

  0% {

    -webkit-box-shadow: 0 0 0 0 #00aa55b9;

    box-shadow: 0 0 0 0 #00aa55b9;

  }

  70% {

    -webkit-box-shadow: 0 0 0 10px #00aa554f;

    box-shadow: 0 0 0 10px #00aa554f;

  }

  100% {

    -webkit-box-shadow: 0 0 0 0 #00aa5500;

    box-shadow: 0 0 0 0 #00aa5500;

  }

}



@keyframes pulse {

  0% {

    -webkit-box-shadow: 0 0 0 0 #00aa55b9;

    box-shadow: 0 0 0 0 #00aa55b9;

  }

  70% {

    -webkit-box-shadow: 0 0 0 10px #00aa554f;

    box-shadow: 0 0 0 10px #00aa554f;

  }

  100% {

    -webkit-box-shadow: 0 0 0 0 #00aa5500;

    box-shadow: 0 0 0 0 #00aa5500;

  }

}

/*# sourceMappingURL=style.css.map */

.inner-act {

  padding: 50px 40px;

}



.inner-act h3 {

  margin-bottom: 20px;

  font-size: 25px;

}



section.ojectives2 .row .col-lg-4:nth-child(2) .inner-act {

  background: #e0c220;

  color: #fff;

}



section.ojectives2 .row .col-lg-4:nth-child(2) .inner-act p {

  color: #fff;

}



section.ojectives2 {

  border-top: 2px solid #2424;

  border-bottom: 2px solid #2424;

}

.documentation-list .rapport-card-img {

  border: 1px solid;

  margin-bottom: 20px;

}

.icone-service {

  width: 60px;

  height: 60px;

  font-size: 30px;

  border-radius: 50%;

  display: -webkit-inline-box;

  display: -ms-inline-flexbox;

  display: inline-flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  -webkit-box-pack: center;

  -ms-flex-pack: center;

  justify-content: center;

  /* color: var(--mainColor); */

  -webkit-transition: .5s ease-in-out;

  transition: .5s ease-in-out;

  -webkit-box-shadow: var(--boxShadow);

  box-shadow: var(--boxShadow);

  background-color: var(--whiteColor);

  position: relative;

  left: 25px;

}



.icone-key {

  width: 60px;

  margin-right: 10px;

}



/* styles css */



.fateDeviseTitle {

  font-weight: 700;

  margin-top: .75em;

}



.strongColourBlack {

  font-weight: bold;

  color: rgb(85, 85, 85);

  font-size: 1.25em;

  text-align: center;

}



.textColourBlack {

  text-align: center;

  color: black;

  padding-bottom: 2em;

}



.textColourBlack>* {

  color: black !important;

  font-weight: 400;

  text-align: start;

}



.fateLogo {

  width: 300px !important;

}



.textAddress {

  color: black;

  font-weight: bold;

  cursor: pointer;

  transition: color 0.3s;

}



.textAddress:hover {

  color: rgb(255, 212, 4);

}



.navLinkStrong {

  color: black;

  font-size: 20px !important;

  font-weight: bold !important;

}



.strongerNav {

  font-size: 32px !important;

  font-weight: bold !important;

  color: black !important;

}



.strongerNav:hover {

  color: rgb(255, 212, 4) !important;

}



.navLinkStrong .dropdown-toggle {

  position: absolute !important;

  top: 50% !important;

}



.iconBigger {

  font-size: inherit !important;

}



.active-tab {

  color: rgb(255, 212, 4) !important;

}



/* Welcome.blade.php */

.cardDescription {

  display: -webkit-box;

  -webkit-line-clamp: 3;

  -webkit-box-orient: vertical;

  overflow: hidden;

  text-overflow: ellipsis;

}



.homeActionsCardContainer {

  width: 400px;

  padding: 10px;

  border-radius: 10px;

  border: 2px solid transparent;

  background-color: white;

  transition: border .3s;

}



.homeActionsCardContainer:hover {

  border: 2px solid rgb(243, 194, 60);

}



.homeActualiteImageContainer,
.homeActionImageContainer {

  width: 100%;

  height: 320px;

  object-fit: cover;

  background-color: rgb(190, 190, 190);

}



.homeActualiteImage,
.homeActionImage {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



/* .welcomeSelectLanguage {

    padding: 8px 12px;

    font-size: 1rem;

    border: 1px solid #ccc;

    border-radius: 6px;

    background-color: #fff;

    color: #333;

    outline: none;

    cursor: pointer;

    transition: border-color 0.3s ease, box-shadow 0.3s ease;

}



.welcomeSelectLanguage:hover {

    border-color: #666;

}



.welcomeSelectLanguage:focus {

    border-color: #007bff;

    box-shadow: 0 0 4px rgba(0, 123, 255, 0.4);

} */



/* ACTIONS */

.causeLocation {

  cursor: default;

}



.causeLocation:hover {

  color: white !important;

}



.actionImageContainer {

  width: 200px !important;

  height: 150px !important;

  overflow: hidden !important;

}



.actionImage {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.actionContainer {

  box-shadow: 0 0 20px var(--borderColourContainer);

  border: 2px solid var(--borderColourContainer);

  border-radius: 10px;

  padding: 10px 25px;

}



.actionContainer .expositionContainer {

  display: flex;

  justify-content: flex-start;

  align-items: flex-start;

  flex-wrap: wrap;

  gap: 2em;

  width: 100%;

}



.expositionContainer .expositionImageContainer {

  width: 200px;

  height: 175px;

  background-color: rgba(227, 227, 227, 0.246);

  overflow: hidden;

  border-radius: 10px;

}



.expositionContainer .expositionImage {

  width: 100%;

  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.3s ease-out;

}



.expositionImageContainer:hover .expositionImage {

  transform: scale(1.1);

}



.autreActionContainer {

  box-shadow: 0 0 20px var(--borderColourContainer);

  border: 2px solid var(--borderColourContainer);

  border-radius: 10px;

  padding: 10px 25px;

}



.actionContainer img {

  border-radius: 10px;

}



.actionContainer p {

  font-size: 1.25em;

  margin: 1.5em 0;

  font-weight: 600;

}



.actionsParAnneeContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  width: 100%;

}



.actionsParAnneeContainer .actionFilterYear {

  justify-self: flex-start;

  font-weight: bold;

  margin: 1em;

}



.actionFilterYear .icon {

  cursor: pointer;

  color: rgb(98, 98, 98) !important;

  transition: color .3s;

}



.actionFilterYear .icon:hover {

  color: rgb(172, 172, 172) !important;

}



.actionsParAnneeContainer .voirPlusButton {

  color: white !important;

  padding: 10px 25px;

  background-color: rgb(51, 201, 51);

  cursor: pointer;

  border-radius: 10px;

  font-weight: bold;

  border: 1px solid transparent;

  margin: 2em;

  transition: background-color 0.3s, border 0.3s, color .3s;

}



.actionsParAnneeContainer .voirPlusButton:hover {

  background-color: white !important;

  border: 1px solid rgb(51, 201, 51);

  color: rgb(51, 201, 51) !important;

}



.actionCardContainer {

  display: flex;

  justify-content: flex-start;

  align-items: center;

  flex-wrap: wrap;

  width: 95%;

}



.actionCard {

  display: flex;

  background-color: white !important;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  margin: .75em .5em;

  width: 380px !important;

  height: 430px !important;

  gap: 2em;

  box-shadow: 0 0 20px rgb(185, 185, 185);

  border-radius: 10px;

  padding: 10px 25px;

  cursor: pointer;

  border: 2px solid transparent;

  transition: border .3s;

}



.actionCard:hover {

  border: 2px solid rgb(243, 194, 60);

}



.actionCard .actionImgContainer {

  height: 250px;

  width: 100%;

  background-color: rgb(218, 218, 218);

  overflow: hidden;

  border-radius: 10px;

  display: flex;

  align-items: center;

  justify-content: center;

}



.actionCard .actionImgContainer img,

.actionCard .actionImgContainer .actionImage {

  width: 100% !important;

  height: 100% !important;

  object-fit: cover !important;

}



.actionCard .actionInfo {

  margin-bottom: 1em;

}



.actionCard .horizontalLine {

  margin: 0 !important;

}



.actionInfo .actionTitle {

  font-size: 1.25em;

  color: rgb(40, 40, 40);

  font-weight: 700;

}



.actionInfo .actionDescription {

  overflow: hidden;

  text-overflow: ellipsis;

  display: -webkit-box;

  -webkit-line-clamp: 3;

  line-clamp: 3;

  -webkit-box-orient: vertical;

  font-size: .75em;

  color: rgb(149, 149, 149);

  margin: 0;

  font-weight: 600;

}



.actionImgContainer img,
.actionImgContainer .actionImage {

  object-fit: cover;

  width: 100%;

  height: 100%;

  border-radius: 8px;

}



.actionFilterDescription {

  margin-top: -2em;

  text-align: center;

}



.actionsYearContainer {

  display: flex;

  justify-content: center;

  align-items: center;

}



.sectionActionYearContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

}



.sectionActionYearContainer .erreur {

  font-size: 1.75em;

  font-weight: 600;

}



.sectionActionYearContainer .erreur .anneeSpan {

  color: rgb(47, 209, 47);

  font-weight: bold;

}



.sectionTitleContainer {

  display: flex;

  justify-content: flex-start;

  align-items: flex-start;

  width: 90%;

}



.sectionTitleContainer .sectionTitle a {

  text-decoration: underline;

}



.actionsYearContainer .actionCardContainer {

  flex-wrap: wrap;

}



.projectYearLink {

  color: white !important;

  padding: 10px 25px;

  background-color: var(--borderColourContainer);

  cursor: pointer;

  border-radius: 10px;

  font-weight: bold;

  white-space: nowrap;

  overflow: hidden;

  text-overflow: ellipsis;

  margin: 2em;

  border: 1px solid transparent;

  transition: background-color 0.3s, border 0.3s, color .3s;

}



.projectYearLink:hover {

  background-color: white !important;

  border: 1px solid var(--borderColourContainer);

  color: var(--borderColourContainer) !important;

}



@media only screen and (max-width: 992px) {

  .actionsParAnneeContainer .actionCardContainer {

    flex-wrap: nowrap;

    width: 95%;

    gap: 2em;

    padding: .75em 2em;

    overflow-x: auto;

  }



  .actionCardContainer .actionCard {

    width: 100%;

  }

}



@media only screen and (max-width: 780px) {

  .sectionTitleContainer {

    justify-content: center !important;

    align-items: center !important;

    text-align: center !important;

    width: 100% !important;

  }

  .actionCardContainer {

    justify-content: center !important;

  }

  .actionFilterDescription {

    margin-top: 0 !important;

  }



  .actionCardContainer .actionCard {

    width: 270px !important;

    height: 340px !important;

  }



  .actionCard .actionImgContainer {

    width: 100% !important;

    margin-bottom: -1em;

  }



  .actionCard .actionInfo {

    margin-top: -1em;

    align-items: center !important;

    text-align: center !important;

  }



  .actionInfo .actionTitle {

    font-size: 1em !important;

  }



  .actionInfo .actionDescription {

    margin: -.5em;

    font-size: .75em !important;

  }

}





@media only screen and (max-width: 560px) {

  .actionsParAnneeContainer .actionCard {

    margin: 0 !important;

    margin-top: .5em !important;

  }

}



/* FATE.blade.php */

.lowMargin {

  margin: 0 !important;

  display: flex;

  justify-content: center;

  align-items: center;

  width: 100%;

  margin-top: -5em !important;

}



.lowMargin h3 {

  font-weight: bold;

  text-transform: uppercase;

  text-align: center;

  font-size: 1.75em;

}



.fateTeamContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-wrap: wrap;

  gap: 1.5em;

}



.fateTeamCard {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  width: 350px;

  padding: 10px;

  background-color: rgb(236, 236, 236);

  border: 2px solid transparent;

  border-radius: 10px;

  box-shadow: 0 0 10px rgb(97, 97, 97);

  transition: border .3s;

}



.fateTeamCard:hover {

  border: 2px solid rgb(243, 194, 60);

}



.fateTeamCard .imgContainer {

  align-self: flex-start;

  width: 100%;

  height: 250px;

  overflow: hidden;

  border-radius: 10px;

  margin-bottom: 1em;

}



.fateTeamCard .imageContainer .teamImg {

  object-fit: contain;

  width: 100%;

  height: 100%;

}



.fateTeamCard .teamInfo {

  display: flex;

  margin-top: .5em;

  gap: .5em;

  justify-content: flex-start;

  align-items: center;

  flex-direction: column;

}



.fateTeamCard .teamInfo .teamName {

  text-align: center;

  font-weight: bold;

  font-size: 1.5em;

}



.fateTeamCard .teamInfo .teamFunction {

  font-size: 1.25em;

  font-weight: 600;

}



/* HEADER */

.languageSwitcher {

  position: fixed;

  bottom: 20px;

  right: 20px;

  background: rgba(255, 255, 255, 0.95);

  border: 1px solid #ddd;

  border-radius: 10px;

  padding: 10px 14px;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

  z-index: 9999;

  display: flex;

  gap: 10px;

  align-items: center;

}



.languageSwitcher a {

  font-size: 1.2rem;

  text-decoration: none;

  transition: transform 0.2s ease;

}



.languageSwitcher a:hover {

  transform: scale(1.1);

}



.languageSwitcher a img {

  border-radius: 5px;

  box-shadow: 0 0 10px black;

}



#languageContainer {

  position: fixed;

  bottom: 5px;

  right: 15px;

  z-index: 300;

  display: flex;

  align-items: center;

}



#languageToggle {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  background-color: #fff;

  padding: 8px;

  border-radius: 8px;

  border: 1.5px solid #ccc;

  cursor: pointer;

  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);

  transition: transform .3s;

}



#languageToggle:hover {

  transform: scale(1.1);

}



#languageMenu {

  display: flex;

  flex-wrap: wrap;

  gap: 6px;

  padding: 6px;

  background: rgba(255, 255, 255, 0.95);

  border: 1px solid #ddd;

  border-radius: 8px;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

  z-index: 9999;

  margin-right: 10px;

  transition: transform 0.3s ease, opacity 0.3s ease;

  width: 178px;

}



#languageMenu.hidden {

  transform: translateX(200%);

  opacity: 0;

  pointer-events: none;

}



#languageMenu a img {

  border-radius: 5px;

  box-shadow: 0 0 10px black;

  width: 36px;
  /* fixe la taille pour homogénéité */

  height: auto;

}



#languageToggle:focus,
#languageMenu a:focus {

  outline: 2px solid #0078d7;

  outline-offset: 2px;

}



.noScroll {

  overflow: hidden;

}



.section {

  padding: 1.75em;

}



.headerWrapper {

  position: fixed;

  z-index: 1000;

  background: rgb(255, 255, 255);

  display: flex;

  justify-content: space-around;

  align-items: center;

  top: -1em;

  left: 0;

  padding: 0 2em;

  padding-top: 1em;

  padding-bottom: 0;

  /* padding: 2em;

    padding-bottom: 1.25em; */

  width: 100%;

  box-shadow: 0 2px 10px rgb(188, 188, 188);

}



.mobileNavToggle {

  display: none;

  z-index: 1100;

  color: black;

  font-weight: bold;

  font-size: 2em;

  cursor: pointer;

}



.mobileNav {

  display: none;

}



/* .logoImage {

    max-width: 150px;

    height: auto;

} */



.mainNav {

  display: flex;

  justify-content: space-between;

  align-items: center;

  flex-wrap: wrap;

  width: 100%;

  height: 100%;

}



.mainNav .logoImage {

  width: 300px;

}



.navList {

  display: flex;

  justify-content: center;

  align-items: center;

  list-style: none;

  gap: 1.5rem;

  height: 100%;

  padding-top: 1em;

}



.navItem {

  position: relative;

}



.selectedTab .navLinkWrapper>a {

  color: rgb(255, 212, 4) !important;

}



.navLink,
.dropdownIcon {

  color: black;

  font-family: var(--fontFamily);

  text-decoration: none;

  font-weight: bold;

  font-size: 1.5em;

}



.dropdownIcon {

  cursor: pointer;

  font-size: 1em;

  transition: color 0.3s ease-in-out;

}



.submenuList {

  display: none;

  position: absolute;

  top: 100%;

  left: -5em;

  padding: 1rem 1.25rem;

  background-color: white;

  width: auto;

  list-style: none;

  white-space: nowrap;

  z-index: 100;

  border-radius: 10px;

  box-shadow: 0 0 10px rgb(188, 188, 188);

}



.submenuList.partenairesSubmenuPush {

  left: 0 !important;

}



.submenuList.submenuOpen {

  display: block;

}



.submenuItem .submenuLink {

  font-weight: 700;

  padding: 10px 0;

  font-size: 1em;

  color: rgb(75, 75, 75);

  margin: 10px auto;

}



.submenuList .horizontalLine {

  width: 100%;

  height: 1px;

  opacity: .5;

  border: 1px solid rgb(189, 189, 189);

}



.hasSubmenu:hover .submenuList {

  display: block;

}



li.hasSubmenu:hover .dropdownIcon {

  color: rgb(233, 206, 69);

}



.hasSubmenu:hover .submenuList .submenuLink:hover {

  color: rgb(233, 206, 69);

}



.submenuOpen {

  display: block;

}



.activeTab {

  color: rgb(255, 212, 4) !important;

}



.strongLink {

  font-weight: 700;

}



.buttonLink {

  background: #fff;

  color: #000;

  padding: 0.4rem 0.8rem;

  border-radius: 5px;

}



.buttonNav {

  border: 1px solid;

  padding: 10px 25px !important;

  color: white;

  background-color: rgb(255, 212, 4);

  border-radius: 25px;

  transition: background-color 0.3s, color 0.3s;

}



.buttonNav:hover {

  color: rgb(255, 212, 4) !important;

  background-color: white !important;

}



@media only screen and (max-width: 1500px) {

  .navLink,
  .navLinkStrong {

    font-size: 15px !important;

  }



  .dropdownIcon {

    font-size: 9px !important;

  }



  .strongerNav {

    font-size: 35px !important;

  }



  .desktopOnly .logoImage {

    width: 15em;

  }

}



@media only screen and (max-width: 1266px) {

  .navLink,
  .navLinkStrong {

    font-size: 15px !important;

  }



  .dropdownIcon {

    font-size: 6px !important;

  }



  .strongerNav {

    font-size: 30px !important;

  }



  .desktopOnly .logoImage {

    width: 15em;

  }

}



@media only screen and (max-width: 1210px) {

  .desktopOnly .logoImage {

    width: 13em;

    padding: 0;

  }

}



@media only screen and (max-width: 1180px) {

  .navLink,
  .navLinkStrong {

    font-size: 13px !important;

    margin: 0;

    padding: 0;

  }



  .dropdownIcon {

    font-size: 6px !important;

  }



  .strongerNav {

    font-size: 23px !important;

  }



  .desktopOnly .logoImage {

    width: 12.5em;

    padding: 0;

  }

}





@media only screen and (max-width: 1085px) {

  .desktopOnly .logoImage {

    width: 11em;

  }



  .strongerNav {

    font-size: 19px;

  }



  .buttonNav {

    padding: 5px 12px !important;

  }

}



@media only screen and (max-width: 1026px) {

  .logoImage {

    width: 10em !important;

  }

}



@media only screen and (max-width: 1010px) {

  .mobileNavToggle,
  .mobileNav {

    display: block;

  }



  .mobileNav .logoImage {

    width: 16em !important;

    padding: 1em 0;

  }



  .headerWrapper {

    justify-content: space-between;

    align-items: center;

    padding: 1.25em 2em;

    padding-bottom: 0.75em;

  }



  .mainNav {

    display: none;

    flex-direction: column;

    position: fixed;

    background-color: white;

    width: 100%;

    height: 100vh;

    top: 0;

    left: 0;

    overflow-y: auto;

    padding: 2rem;

  }



  .navOpen {

    display: flex;

  }



  .desktopOnly {

    display: none;

  }



  .navList {

    flex-direction: column;

    gap: 1rem;

    align-items: flex-start;

  }



  .navItem {

    width: 100%;

  }



  .navLinkWrapper {

    padding-left: 0.5rem;

  }



  .dropdownIcon,
  .horizontalLine {

    display: none;

  }



  .submenuList {

    display: flex;

    flex-direction: column;

    margin-left: 1.5rem;

    margin-bottom: -1em;

    padding-left: 0.5rem;

    gap: 0.25rem;

    position: static;

    background: none;

    box-shadow: none;

  }



  .submenuLink,
  .submenuItem .submenuLink {

    font-size: 0.85em;

    font-weight: 400;

    color: #555;

    text-align: left;

    text-transform: none;

  }



  .buttonNav {

    background-color: white;

    border: none;

    border-radius: 0;

  }



  .strongerNav,
  .strongLink {

    font-size: 2em;

  }

}





@media only screen and (max-width: 350px) {

  .mobileNav .logoImage {

    width: 12em !important;

  }

}



/* Footer */

.footerContainer {

  box-shadow: 0 -5px 10px rgb(0, 0, 0);

}



.footerContactLink a {

  color: rgb(232, 210, 69) !important;

  transition: color .3s;

  font-weight: 600;

}



.footerContactLink:hover a {

  color: rgb(237, 231, 196) !important;

}



/* BANNERS */

.opacityLow {

  filter: brightness(1.5) !important;

}



/* PARTENAIRES */

.partenairesContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  width: 100%;

}



.partenairesContainer .sectionContainer {

  margin-top: 2em;

  display: flex;

  justify-content: center;

  align-items: flex-start;

  flex-direction: column;

  width: 70%;

}



.sectionContainer .sectionTitle {

  font-weight: bold;

}



.sectionContainer .sectionSubTitle,
.actionFilterDescription {

  font-weight: 700;

  font-size: 20px;

  color: rgb(98, 98, 98);

}



.sectionContainer .partenaireContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

}

.hover-zoom-border {

  border: 2px solid transparent;

  transition: transform 0.2s ease-in-out, border-color 0.2s ease-in-out;

}



.hover-zoom-border:hover {

  transform: scale(1.03);

  border-color: rgb(98, 98, 98);

}



.partenaireContainer .imageContainer {

  width: 200px;

  height: 120px;

  display: flex;

  justify-content: center;

  align-items: center;

  padding: 0 10px;

  flex-shrink: 0;

}



.imageContainer .partenaireImage {

  max-width: 100%;

  max-height: 100%;

  width: auto;

  height: auto;

  object-fit: contain;

}



.partenaireContainer .partenaireDiv {

  display: flex;

  justify-content: center;

  align-items: center;

  gap: 2em;

  box-shadow: 0 0 20px rgb(185, 185, 185);

  background-color: white;

  border-radius: 10px;

  padding: 10px 25px;

}



.partenaireDiv .partenaireDescription {

  font-size: 1.5em;

  color: rgb(122, 122, 122);

  font-weight: 700;

}



.imageContainer .partenaireImage {

  object-fit: contain;

  width: 100%;

  max-height: 100%;

  cursor: pointer;

}



.partenaireContainer .partenaireNom {

  cursor: pointer;

  font-weight: bold;

}



@media only screen and (max-width: 770px) {

  .partenaireDescription {

    font-size: 0.75em !important;

  }

}



@media only screen and (max-width: 475px) {

  .imageContainer {

    width: 30% !important;

  }

}



.horizontalLine {

  height: 1px;

  width: 100%;

  opacity: .5;

  border: 1px solid rgb(188, 188, 188) !important;

}



/* ACTUALITES */



.actualiteDetails {

  width: 80%;

}



.actualiteDate {

  color: rgb(194, 194, 194);

}



.actualiteContainer {

  display: flex;

  align-items: stretch;

  justify-content: space-evenly;

  gap: 2em;

  margin-bottom: 2em;

  box-shadow: 0 0 20px rgb(72, 135, 191);

  border: 2px solid rgb(72, 135, 191);

  background-color: white;

  border-radius: 10px;

  padding: 10px 25px;

}



.actualiteContainer .actuImage {

  width: 500px;

  object-fit: cover;

  border-radius: 10px;

}



.actualiteContainer .actualitesInfo {

  display: flex;

  flex: 1;

  flex-direction: column;

  justify-content: flex-start;

  margin-top: 2em;

}



.actualiteContainer .actualitesInfo .actuTitre {

  font-size: 1.5rem;

  font-weight: bold;

  margin-bottom: 0.5em;

}



.actualiteContainer .actualitesInfo .actuText {

  font-size: 1rem;

  line-height: 1.5;

}



@media (max-width: 768px) {

  .actualiteContainer {

    flex-direction: column;

    align-items: center;

  }



  .actualiteContainer .actuImage {

    width: 100%;

    height: auto;

  }



  .actualiteContainer .actualitesInfo {

    align-items: center;

    text-align: center;

  }



  .horizontalLine {

    width: 90% !important
  }

}



.autresActualitesContainer {

  flex-wrap: wrap;

  box-shadow: 0 0 20px var(--borderColourContainer);

  border: 2px solid var(--borderColourContainer);

  border-radius: 10px;

  margin-bottom: 2em;

  background-color: white;

}



@media only screen and (max-width: 405px) {

  .actualiteDetails {

    width: 95%;

  }



  .autresActualitesContainer {

    width: 95%;

  }

}



.autresActualitesContainer .actualite {

  width: 300px;

  height: auto;

  margin: 1em;

  border-radius: 10px;

  display: flex;

  flex-direction: column;

  cursor: pointer;

  padding: 20px;

  transition: background-color 0.3s;

}



.autresActualitesContainer .actualite:hover {

  background-color: rgb(227, 227, 227);

}



.autresActualitesContainer .actualite .imgContainer {

  width: 100%;

  height: 140px;

  overflow: hidden;

  border-radius: 10px;

}



.autresActualitesContainer .imgContainer {

  width: 100% !important;

}



.imgContainer .actuImage {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.actuInfo {

  padding: 0.5em;

}



.actuInfo .actuTitle {

  font-weight: bold;

  font-size: 1rem;

  margin-bottom: 0.3em;

}



.actuInfo .actuDesc {

  font-weight: 600;

  font-size: 0.9rem;

  overflow: hidden;

  text-overflow: ellipsis;

  display: -webkit-box;

  -webkit-line-clamp: 3;

  -webkit-box-orient: vertical;

}



.actualiteDescription {

  color: rgb(233, 206, 69);

  font-weight: 600;

}



@media only screen and (max-width: 1065px) {

  .actualiteContainer {

    display: flex;

    flex-direction: column !important;

  }

}



@media only screen and (max-width: 375px) {

  .fateLogo {

    width: 220px !important;

  }

}



@media only screen and (max-width: 285px) {

  .fateLogo {

    width: 170px !important;

  }

}



/* CONTACTS */

.formInfoContainer {

  width: 100%;

  padding: 20px 0;

  margin-bottom: 2em;

}



.formInfoContainer.form-success {

  background-color: rgb(47, 145, 47);

}



.formInfoContainer.form-error {

  background-color: rgb(205, 79, 79);

}



.formInfoContainer h1,
.formInfoContainer p {

  font-family: Verdana, Geneva, Tahoma, sans-serif;

  text-align: center;

  color: white;

  font-weight: bold;

}



@keyframes flashError {

  from {

    background-color: rgb(205, 79, 79);

  }



  to {

    background-color: white;

  }

}



.inputContainerError {

  animation: flashError 1s ease-in-out;

}



.contactCardsContainer {

  margin-top: -5em;

}



.responsive-iframe-container {

  position: relative;

  width: 100%;

  padding-bottom: 56.25%;
  /* 16:9 ratio */

  height: 0;

  overflow: hidden;

}



.responsive-iframe-container iframe {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  border: 0;

}



/* Soutenir */

.mainSupportContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  margin-top: -3em;

}



.supportSectionTitle {

  display: flex;

  justify-content: center;

  align-items: center;

  width: 100%;

  margin-top: 0em;

  text-align: center;

  text-transform: uppercase;

}



.supportSectionTitle h3 {

  font-weight: bold;

  margin: 0;

  margin-top: -1em;

  font-size: 2.25em !important;

}



.supportSubDescription {

  text-align: center;

  font-weight: 700;

  font-size: 1.25em;

  color: rgb(93, 93, 93);

}



.supportContainer {

  width: 95%;

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  gap: 2em;

}



.supportShareContainer {

  gap: 2em;

  flex-wrap: wrap;

}



.supportShareButton {

  background-color: black;

  color: white;

  padding: 15px 25px;

  border-radius: 10px;

  cursor: pointer;

  font-size: 1.75em;

  font-weight: bold;

  transition: background-color 0.3s;

}



.supportShareButton.twitter {

  background-color: rgb(61, 139, 194);

}



.supportShareButton.twitter:hover {

  background-color: rgb(32, 108, 162);

  color: white;

}



.supportShareButton.facebook {

  background-color: rgb(65, 61, 194);

}



.supportShareButton.facebook:hover {

  background-color: rgb(32, 23, 138);

  color: white;

}



.mainSupportContainer .horizontalLine {

  margin: 2.5em;

  width: 85%;

  opacity: 0.5;

}



.buttonContainer {

  width: 100%;

  display: flex;

  justify-content: center;

}



.buttonContainer .button {

  background-color: black;

  padding: 10px 25px;

  border: none;

  border-radius: 10px;

  color: white;

  font-weight: bold;

  font-size: 2em;

  cursor: pointer;

  transition: background-color 0.3s;

}



.buttonContainer .button.support {

  background-color: rgb(23, 207, 23);

}



.buttonContainer .button.support:hover {

  background-color: rgb(14, 163, 14);

}



.sectionTitle {

  font-weight: bold;

  text-align: center;

}



@media only screen and (max-width: 780px) {

  .mainSupportContainer {

    margin-top: 0;

  }

}



@media only screen and (max-width: 375px) {

  .button,
  .supportShareButton {

    font-size: 1.25em;

  }

}



@media only screen and (max-width: 275px) {

  .button,
  .supportShareButton {

    font-size: .95em !important;

  }

}



/* Soutenir */

.adhererContainer {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-direction: column;

  margin-top: -5em;

  gap: 2em;

}



.adhererContainer .adhererDescriptionContainer h1,
.adhererContainer .adhererDescriptionContainer p,
.whyJoinUsTitle {

  text-align: center;

  font-weight: 600;

}



.adhererContainer .adhererDescriptionContainer h1,
.whyJoinUsTitle {

  font-size: 2.15em;

}



.adhererContainer .adhererDescriptionContainer p {

  font-size: 1.25em;

}



.joinFateContainer {

  width: 100%;

  display: flex;

  justify-content: center;

  align-items: center;

}



.joinFateContainer .buttonJoinFATE {

  background-color: rgb(37, 165, 176);

  color: white;

  font-size: 1.5em;

  font-weight: 700;

  padding: 10px 25px;

  border: 2px solid transparent;

  border-radius: 10px;

  cursor: pointer;

  transition: border .3s, background-color .3s, color .3s;

}



#divParentFormJoin {

  width: 95%;

}



#joinFormContainer {

  width: 100%;

  max-width: 600px;

  margin: 40px auto 0;

  padding: 24px;

  background-color: white;

  box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);

  border-radius: 12px;

  transition: all 0.3s ease-in-out;

}



#joinForm {

  display: flex;

  flex-direction: column;

  gap: 20px;

}



#joinForm label {

  font-weight: bold;

  margin-bottom: 6px;

  display: inline-block;

  color: rgb(51, 51, 51);

}



#joinForm input,
#joinForm textarea {

  width: 100%;

  padding: 12px;

  border: 1px solid rgb(204, 204, 204);

  border-radius: 8px;

  font-size: 16px;

  transition: border-color 0.3s;

}



#joinForm input:focus,
#joinForm textarea:focus {

  border-color: rgb(0, 123, 255);

  outline: none;

}



#joinForm button[type="submit"] {

  align-self: flex-start;

  background-color: rgb(0, 123, 255);

  color: white;

  padding: 12px 24px;

  font-size: 16px;

  border: none;

  border-radius: 8px;

  cursor: pointer;

  transition: background-color 0.3s;

}



#joinForm button[type="submit"]:hover {

  background-color: rgb(0, 86, 179);

}



.joinFateContainer .buttonJoinFATE:hover {

  color: rgb(37, 165, 176);

  background-color: white;

  border: 2px solid rgb(37, 165, 176);

}



.joinFateCardsContainer {

  display: flex;

  justify-content: center;

  align-items: center;

}



.joinFateCardsContainer .joinFateCards {

  width: 100% !important;

  flex-wrap: wrap;

  padding: 2em;

  gap: 1.5em;

}



.joinCard {

  align-self: stretch;

  width: 340px;

  min-height: 580px;

  padding: 10px;

  background-color: rgb(236, 236, 236);

  border: 2px solid transparent;

  border-radius: 10px;

  box-shadow: 0 0 10px rgb(97, 97, 97);

  cursor: default;

  transition: border .3s;

}



.joinCard:hover {

  border: 2px solid rgb(243, 194, 60);

}





.joinCard .imgContainer {

  width: 100%;

  height: 50%;

  border-radius: 10px;

  overflow: hidden;

}



.imgContainer .imgCard {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.joinCard .horizontalLine {

  margin: 1em auto;

}



.joinCard .cardTitle {

  font-weight: bold;

  text-align: center;

  font-size: 1.25em;

}



.joinCard .joinCardDescription {

  font-weight: 700;

  overflow: hidden;

  text-overflow: ellipsis;

  display: -webkit-box;

  -webkit-line-clamp: 6;

  -webkit-box-orient: vertical;

}



/* .joinFateCards .joinCard {

  display: flex;

  justify-content: center;

  align-items: baseline;

} */



@media only screen and (max-width: 770px) {

  .adhererContainer {

    margin-top: -5em !important;

  }

}



@media only screen and (max-width: 590px) {

  .adhererContainer h1 {

    font-size: 1.5em !important;

  }



  .adhererContainer p {

    font-size: 1em !important;

  }

}



@media only screen and (max-width: 420px) {

  .joinCard {

    width: 130% !important;

  }

}



/* SPINNER CHARGEMENT */

.chargement {

  position: fixed;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  display: flex;

  justify-content: center;

  align-items: center;

  background-color: rgba(0, 0, 0, 0.5);

  z-index: 1000;

}



.spinner {

  border: 8px solid rgba(255, 255, 255, 0.3);

  border-top: 8px solid #fff;

  border-radius: 50%;

  width: 50px;

  height: 50px;

  animation: spin 1s linear infinite;

}



@keyframes spin {

  from {

    transform: rotate(0deg);

  }



  to {

    transform: rotate(360deg);

  }

}



@media (min-width: 992px) {

  .main-responsive-nav {

    display: none !important;

  }

}



@media (max-width: 991px) {

  .main-nav {

    display: none !important;

  }

}



/* Autres */

@keyframes blobForm {

  0% {

    border-radius: 91% 8% 63% 27% / 52% 94% 33% 7%;

  }



  10% {

    border-radius: 24% 87% 16% 79% / 63% 12% 99% 34%;

  }



  20% {

    border-radius: 56% 13% 90% 33% / 45% 89% 18% 71%;

  }



  30% {

    border-radius: 11% 92% 27% 65% / 74% 31% 84% 9%;

  }



  40% {

    border-radius: 68% 34% 19% 85% / 22% 77% 51% 48%;

  }



  50% {

    border-radius: 39% 97% 7% 71% / 60% 20% 96% 13%;

  }



  60% {

    border-radius: 88% 28% 43% 16% / 35% 59% 8% 90%;

  }



  70% {

    border-radius: 19% 76% 11% 83% / 93% 41% 27% 67%;

  }



  80% {

    border-radius: 31% 99% 22% 54% / 50% 36% 91% 18%;

  }



  90% {

    border-radius: 73% 15% 46% 88% / 25% 85% 40% 12%;

  }



  100% {

    border-radius: 91% 8% 63% 27% / 52% 94% 33% 7%;

  }

}



.backgroundForm {

  position: absolute;

  width: 225px;

  height: 225px;

  z-index: -1;

  border-radius: 50%;

  background-color: rgba(228, 161, 54, 0.05);

  box-shadow: 0 0 10px rgba(201, 140, 43, 0.519);

  filter: blur(10px);

  animation: blobForm 32s infinite;

  transition: border-radius 1.5s ease-in-out;

}



.backgroundForm.topLeft {

  top: 40%;

  left: 40px;

}



.backgroundForm.topRight {

  top: 40%;

  right: 40px;

}



.backgroundForm.bottomLeft {

  bottom: -20%;

  left: 40px;

}



.backgroundForm.bottomRight {

  bottom: -20%;

  right: 40px;

}



.erreurButtonFallback {

  color: white !important;

  padding: 10px 25px;

  background-color: rgb(51, 201, 51) !important;

  cursor: pointer;

  border-radius: 10px;

  font-weight: bold;

  border: 1px solid transparent !important;

  margin: 2em;

  transition: background-color 0.3s, border 0.3s, color .3s;

}



.erreurButtonFallback:hover {

  background-color: white !important;

  border: 1px solid rgb(51, 201, 51) !important;

  color: rgb(51, 201, 51) !important;

}





#languageContainer {

  position: fixed;

  bottom: 0px;

  right: 15px;

  z-index: 300;

  display: flex;

  align-items: center;

}



#languageToggle {

  background-color: #fff;

  padding: 8px;

  border-radius: 8px;

  border: 1.5px solid #ccc;

  cursor: pointer;

  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);

}



#languageMenu {

  display: flex;

  flex-wrap: wrap;
  /* permet le retour à la ligne */

  gap: 6px;

  padding: 6px;

  background: rgba(255, 255, 255, 0.95);

  border: 1px solid #ddd;

  border-radius: 8px;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

  z-index: 9999;

  margin-right: 10px;

  transition: transform 0.3s ease, opacity 0.3s ease;



  width: 178px;
  /* largeur fixée pour 4 drapeaux de ~36px + gaps */

  /* ajuste la largeur selon la taille des drapeaux et gaps */

}



#languageMenu.hidden {

  transform: translateX(200%);

  opacity: 0;

  pointer-events: none;

}



#languageMenu a img {

  border-radius: 5px;

  box-shadow: 0 0 10px black;

  width: 36px;
  /* fixe la taille pour homogénéité */

  height: auto;

}



#languageToggle:focus,

#languageMenu a:focus {

  outline: 2px solid #0078d7;

  outline-offset: 2px;

}



.brush-stroke {

  position: absolute;
  /* Permet de positionner librement */

  top: 59%;
  /* Positionne en haut */

  left: 50%;
  /* Centré horizontalement */

  z-index: -1;
  /* Passe derrière tout le reste */

  width: 100px;
  /* Ajuste la taille comme tu veux */

  opacity: 0.7;
  /* Facultatif : effet de transparence */

  pointer-events: none;
  /* Ignore les clics (facultatif) */

  transform: rotate(-25deg);

}



.brush-stroke2 {

  position: absolute;
  /* Permet de positionner librement */

  top: 29%;
  /* Positionne en haut */

  left: 50%;
  /* Centré horizontalement */

  z-index: -1;
  /* Passe derrière tout le reste */

  width: 100px;
  /* Ajuste la taille comme tu veux */

  opacity: 0.7;
  /* Facultatif : effet de transparence */

  pointer-events: none;
  /* Ignore les clics (facultatif) */

  transform: rotate(25deg);

}



.brush-stroke3 {

  position: absolute;
  /* Permet de positionner librement */

  top: 4%;
  /* Positionne en haut */

  left: 52%;
  /* Centré horizontalement */

  z-index: -1;
  /* Passe derrière tout le reste */

  width: 100px;
  /* Ajuste la taille comme tu veux */

  opacity: 0.7;
  /* Facultatif : effet de transparence */

  pointer-events: none;
  /* Ignore les clics (facultatif) */

  transform: rotate(45deg);

}



.brush-stroke4 {

  position: absolute;
  /* Permet de positionner librement */

  top: 84%;
  /* Positionne en haut */

  left: 52%;
  /* Centré horizontalement */

  z-index: -1;
  /* Passe derrière tout le reste */

  width: 100px;
  /* Ajuste la taille comme tu veux */

  opacity: 0.7;
  /* Facultatif : effet de transparence */

  pointer-events: none;
  /* Ignore les clics (facultatif) */

  transform: rotate(-45deg);

}





/* Conteneur plein écran */

#confetti-container {

  position: fixed;

  inset: 0;

  pointer-events: none;

  z-index: -1;

  overflow: hidden;

}

.brush-stroke,

.brush-stroke2,

.brush-stroke3,

.brush-stroke4 {

  width: 6.25vw;

  background-color: transparent !important;

  opacity: .5;

}



/* Un « confetti » = un symbole */

.confetti {

  position: absolute;

  font-family: 'Brush Script MT', cursive;

  font-weight: 700;

  filter: blur(2px) contrast(120%);

  opacity: 0.7;
  /* déjà dans la couleur mais garde un léger effet */

  animation: float 8s ease-in-out infinite;

}



/* Animation de flottement */

@keyframes float {

  0% {
    transform: translateY(0) rotate(var(--rot, 0deg));
  }

  50% {
    transform: translateY(-12px) rotate(var(--rot, 0deg));
  }

  100% {
    transform: translateY(0) rotate(var(--rot, 0deg));
  }

}



@media only screen and (max-width: 991px) {

  .brush-stroke,
  .brush-stroke2,
  .brush-stroke3,
  .brush-stroke4 {

    display: none;

  }

}



.video-wrapper {

  position: relative;

}



.banner-image {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  object-fit: cover;

  cursor: pointer;

  z-index: 2;

}



.play-button {

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  z-index: 3;

  font-size: 50px;

  color: white;

  background: transparent;

  border: none;

  cursor: pointer;

  text-decoration: none;

}



.lb-container,
.lb-nav,
.lb-outerContainer {

  border-radius: 10px !important;

}



.lb-image {

  border-radius: 20px !important;

}



@media only screen and (max-width: 510px) {

  .expositionImageContainer {

    width: 40% !important;

  }

}



@media only screen and (max-width: 480px) {

  .projectYearLink {

    font-size: 12px !important;

  }

}







/* Conteneur principal de la boîte de proverbe */

.proverbes-transition {

  padding: 2rem;

  display: flex;

  justify-content: center;

  align-items: center;

}



.proverb-overlay {

  display: flex;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  padding: 2rem;

  height: 100%;

  box-sizing: border-box;

}



/* Boîte du proverbe (fond, bordure, etc.) - position relative pour pseudo-éléments */

.proverb-box {

  position: relative;
  /* IMPORTANT pour les ::before et ::after */

  background-color: #ffffff;

  border: 2px solid #f4d03f;

  border-radius: 5px;

  width: 100%;

  height: 100%;

  padding: 2rem;

  display: flex;

  flex-direction: column;

  justify-content: center;

  align-items: center;

  text-align: center;

  box-sizing: border-box;

}



/* Texte principal du proverbe */

.proverb-text {

  font-size: 1.4rem;

  font-style: italic;

  color: #4a4a4a;

  line-height: 1.6;

  margin: 0 2rem;

  position: relative;

  z-index: 1;

  max-width: 1500px;
  /* ou 80% */

  word-break: break-word;

}



/* Origine ou source du proverbe */

.proverb-origin {

  font-size: 0.9rem;

  color: #888;

  font-style: italic;

  position: absolute;

  bottom: 10px;

  right: 15px;

}



/* Guillemets décoratifs (avant et après) */

.proverb-box::before,

.proverb-box::after {

  font-size: 3rem;

  color: #f4d03f;

  font-family: Georgia, serif;

  position: absolute;

  z-index: 0;

}



/* Guillemets ouvrants décoratifs */

.proverb-box::before {

  content: "“";

  top: 5px;

  left: 15px;

}



/* Guillemets fermants décoratifs */

.proverb-box::after {

  content: "”";

  bottom: 5px;

  right: 15px;

}



/* Transition d'opacité pour le texte et l'origine */

.proverb-text,

.proverb-origin {

  transition: opacity 0.5s ease-in-out;

}



/* Style du titre "Proverbe du jour" */

.proverb-title {

  font-size: 1.2rem;

  font-weight: bold;

  color: #333;

  margin-bottom: 1rem;

  text-transform: uppercase;

  letter-spacing: 1px;

}















-------------------------------------------------------------------------------
/* Styles pour la page partenaires */

.partenaires-page {

  font-family: 'Arial', sans-serif;

  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);

  visibility: hidden;

  opacity: 0;

  transition: all 0.5s ease-in-out;

}



.partenaires-page.loaded {

  visibility: visible;

  opacity: 1;

}



/* Loader de page */

.page-loader {

  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);

  display: flex;

  justify-content: center;

  align-items: center;

  z-index: 9999;

  transition: opacity 0.5s ease-in-out;

}



.page-loader.hidden {

  opacity: 0;

  pointer-events: none;

}



.loader-spinner {

  width: 50px;

  height: 50px;

  border: 4px solid #e9ecef;

  border-top: 4px solid rgb(224, 194, 32);

  border-radius: 50%;

  animation: spin 1s linear infinite;

}



@keyframes spin {

  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }

}



/* Animation des sections */

.section-fade-in {

  opacity: 0;

  transform: translateY(30px);

  transition: all 0.8s ease;

}



.section-fade-in.visible {

  opacity: 1;

  transform: translateY(0);

}



/* Container principal */

.partenairesContainer {

  max-width: 1200px;

  margin: 0 auto;

  padding: 60px 20px;

}



/* Sections de catégories */

.category-section {

  margin-bottom: 80px;

  position: relative;

}



.sectionContainer {

  text-align: center;

  margin-bottom: 50px;

  position: relative;

}



.sectionTitle {

  font-size: 3rem;

  font-weight: 700;

  color: #2c3e50;

  margin-bottom: 15px;

  position: relative;

  display: inline-block;

}



.sectionTitle::after {

  content: '';

  position: absolute;

  bottom: -10px;

  left: 50%;

  transform: translateX(-50%);

  width: 80px;

  height: 4px;

  background: linear-gradient(90deg, rgb(224, 194, 32), rgb(255, 212, 4));

  border-radius: 2px;

}



.sectionSubTitle {

  font-size: 1.4rem;

  color: #6c757d;

  max-width: 600px;

  margin: 0 auto;

  line-height: 1.6;

}



/* Grille des partenaires */

.partners-grid {

  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));

  gap: 30px;

  margin-top: 50px;

}



/* Cartes des partenaires */

.partner-card {

  background: white;

  border-radius: 15px;

  padding: 30px;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);

  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);

  position: relative;

  overflow: hidden;

  border: 1px solid #e9ecef;

  opacity: 0;

  transform: translateY(30px);

  min-height: 220px;

}



.partner-card.animate-in {

  opacity: 1;

  transform: translateY(0);

}



.partner-card:hover {

  transform: translateY(-10px);

  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);

  border-color: rgba(224, 194, 32, 0.3);

}



.partner-content {

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  gap: 20px;

}



/* Logo du partenaire */

.partner-logo {

  flex-shrink: 0;

  width: auto;

  max-width: 300px;

  height: auto;

  min-height: 100px;

  border-radius: 12px;

  overflow: hidden;

  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);

  transition: transform 0.3s ease;

  display: flex;

  align-items: center;

  justify-content: center;

  background: #f8f9fa;

}



.partner-card:hover .partner-logo {

  transform: scale(1.05);

}



.partner-logo img {

  width: 100%;

  height: auto;

  max-height: 100px;

  object-fit: contain;

  transition: transform 0.3s ease;

}



.partner-card:hover .partner-logo img {

  transform: scale(1.1);

}



/* Informations du partenaire */

.partner-info {

  flex: 1;

}



.partner-name {

  font-size: 1.6rem;

  font-weight: 700;

  color: #2c3e50;

  text-decoration: none;

  display: inline-block;

  margin-bottom: 10px;

  transition: color 0.3s ease;

  position: relative;

}



.partner-name::after {

  content: '';

  position: absolute;

  bottom: -2px;

  left: 0;

  width: 0;

  height: 2px;

  background: linear-gradient(90deg, rgb(224, 194, 32), rgb(255, 212, 4));

  transition: width 0.3s ease;

}



.partner-name:hover {

  color: rgb(224, 194, 32);

  text-decoration: none;

}



.partner-name:hover::after {

  width: 100%;

}



.partner-description {

  color: #555;

  line-height: 1.6;

  margin: 0;

  font-size: 1.1rem;

}



/* Icône d'ouverture externe */

.external-link-icon {

  opacity: 0;

  transform: translateX(-10px);

  transition: all 0.3s ease;

  color: rgb(224, 194, 32);

  margin-left: 8px;

  font-size: 0.9rem;

}



.partner-card:hover .external-link-icon {

  opacity: 1;

  transform: translateX(0);

}



/* Navigation par ancres */

.category-nav {

  position: fixed;

  right: 30px;

  top: 50%;

  transform: translateY(-50%);

  z-index: 1000;

  background: white;

  border-radius: 25px;

  padding: 15px 10px;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);

  backdrop-filter: blur(10px);

}



.category-nav a {

  display: block;

  width: 12px;

  height: 12px;

  border-radius: 50%;

  background: #ddd;

  margin: 15px 0;

  transition: all 0.3s ease;

  position: relative;

}



.category-nav a.active,

.category-nav a:hover {

  background: rgb(224, 194, 32);

  transform: scale(1.3);

}



.category-nav a::after {

  content: attr(data-title);

  position: absolute;

  right: 25px;

  top: 50%;

  transform: translateY(-50%);

  background: #333;

  color: white;

  padding: 5px 10px;

  border-radius: 5px;

  font-size: 0.8rem;

  white-space: nowrap;

  opacity: 0;

  pointer-events: none;

  transition: opacity 0.3s ease;

}



.category-nav a:hover::after {

  opacity: 1;

}



/* Compteur de partenaires */

.partners-count {

  display: inline-block;

  background: linear-gradient(135deg, rgb(224, 194, 32), rgb(255, 212, 4));

  color: white;

  padding: 10px 18px;

  border-radius: 20px;

  font-weight: 600;

  font-size: 1.1rem;

  margin-left: 15px;

  box-shadow: 0 3px 10px rgba(224, 194, 32, 0.3);

}



/* Responsive */

@media (max-width: 768px) {

  .partners-grid {

    grid-template-columns: 1fr;

    gap: 20px;

  }



  .partner-content {

    flex-direction: column;

    text-align: center;

  }



  .category-nav {

    display: none;

  }



  .sectionTitle {

    font-size: 2rem;

  }



  .partenairesContainer {

    padding: 30px 15px;

  }

}



/* Animation de chargement */

@keyframes fadeInUp {

  from {

    opacity: 0;

    transform: translateY(30px);

  }

  to {

    opacity: 1;

    transform: translateY(0);

  }

}



.animate-delay-1 {
  animation-delay: 0.1s;
}

.animate-delay-2 {
  animation-delay: 0.2s;
}

.animate-delay-3 {
  animation-delay: 0.3s;
}

.animate-delay-4 {
  animation-delay: 0.4s;
}

.animate-delay-5 {
  animation-delay: 0.5s;
}

.animate-delay-6 {
  animation-delay: 0.6s;
}

/* Pont invisible pour garder le menu ouvert au survol */
.submenuList::before {
  content: '';
  position: absolute;
  top: -40px;
  /* On remonte plus haut (40px au lieu de 20px) */
  left: 0;
  width: 100%;
  height: 40px;
  /* La hauteur du pont comble tout l'espace vide */
  background-color: transparent;
  /* Reste totalement invisible */
}

/* 1. Pour les liens principaux du menu (ACTUALITÉS, ACTIONS) */
.navLink:hover {
  background-color: transparent !important;
  /* Enlève le fond bloc */
  color: rgb(224, 194, 32) !important;
  /* Met uniquement le texte en jaune */
  text-decoration: none;
  /* Pas de soulignement */
}

/* 2. Pour les liens déroulants dans les sous-menus (Festival, Nos actions...) */
.hasSubmenu:hover .submenuList .submenuLink:hover {
  background-color: transparent !important;
  /* Enlève le fond bloc */
  color: rgb(224, 194, 32) !important;
  /* Met uniquement le texte en jaune */
  text-decoration: none;
  /* Pas de soulignement */
}

/* Style spécifique pour le bouton Adhérer en noir */
.buttonNav.btn-adherer-noir {
  background-color: black !important;
  color: white !important;
  border: 1px solid black !important;
}

.buttonNav.btn-adherer-noir:hover {
  background-color: white !important;
  color: black !important;
}

/* ==========================================
   BULLE DE SUGGESTION FLOTTANTE (Globale)
   ========================================== */
.suggestion-prompt {
  position: fixed !important;
  top: auto !important;
  bottom: 75px !important;
  right: 90px;
  z-index: 10000;
  background: linear-gradient(135deg, rgb(224, 194, 32) 0%, rgb(255, 212, 4) 100%);
  border-radius: 25px;
  padding: 15px 20px;
  box-shadow: 0 8px 25px rgba(224, 194, 32, 0.3);
  transform: translateX(100%) scale(0.8);
  opacity: 0;
  transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  border: 2px solid rgba(255, 255, 255, 0.4);
  max-width: 280px;

  /* === AJOUTS POUR EMPÊCHER L'ÉTIREMENT VERTICAL === */
  height: fit-content !important;
  min-height: 0 !important;
}

.suggestion-prompt.show {
  transform: translateX(0) scale(1);
  opacity: 1;
}

.suggestion-close {
  position: absolute;
  top: -8px;
  right: -8px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #dc3545;
  border: 2px solid white;
  color: white;
  font-size: 12px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.suggestion-close:hover {
  background: #c82333;
  transform: scale(1.1);
}

.suggestion-link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #2c3e50 !important;
  text-decoration: none !important;
  font-weight: 600;
  font-size: 14px;
  white-space: nowrap;
  transition: color 0.3s ease;
}

.suggestion-link:hover {
  color: #1a252f !important;
  text-decoration: none !important;
}

.suggestion-link i {
  font-size: 16px;
  animation: pulse 2s infinite;
  color: #2c3e50;
}

@keyframes float {

  0%,
  100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(-5px) scale(1.02);
  }
}

@keyframes pulse {

  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.7;
  }
}

@media (max-width: 768px) {
  .suggestion-prompt {
    right: 20px;
    top: auto;
    /* Force l'annulation de tout éventuel "top" */
    bottom: 20px;
    /* Place la bulle en bas de l'écran sur mobile */
    padding: 12px 16px;
    max-width: 250px;
  }

  .suggestion-close {
    top: -6px;
    right: -6px;
    width: 20px;
    height: 20px;
    font-size: 10px;
  }

  .suggestion-link {
    font-size: 13px;
  }

  .suggestion-link i {
    font-size: 14px;
  }
}

/* ==========================================
   EFFET HOVER JAUNE SUR LA NAVIGATION
   ========================================== */

/* Survol des liens principaux du menu et lien actif */
.navItem .navLink:hover,
.navItem .navLink.active {
  color: #FFC107 !important;
  /* Le fameux jaune */
  transition: color 0.3s ease;
}

/* Survol du petit "+" des menus déroulants */
.navItem .navLink:hover .dropdownIcon {
  color: #FFC107 !important;
  transition: color 0.3s ease;
}

/* Survol des liens à l'intérieur des sous-menus (Actualités, Partenaires...) */
.submenuList .submenuItem .submenuLink:hover {
  color: #FFC107 !important;
  background-color: transparent;
  /* Au cas où il y aurait un fond gris indésirable */
  transition: color 0.3s ease;
}

/* Masquer la barre supérieure de Google Translate */
.goog-te-banner-frame.skiptranslate,
.skiptranslate.goog-te-gadget {
  display: none !important;
}

/* Empêcher Google de décaler le body vers le bas */
body {
  top: 0px !important;
}