@charset "utf-8";
/*
Theme Name: Thème de CaCCuFF
Theme URI: http://www.cdatagrid.com
License: Copyright © CaCCuFF
Description: Template du site web de CaCCuFF.
Author: Cdatagrid
Author URI: http://www.cdatagrid.com
Version: 1.0
Tags:
*/

body {

}

.header-top__left img {
  max-width: 100px;
  border-radius: 7px;
}
.sticky-header img {
  max-width: 60px;
  border-radius: 7px;
}
.mCustomScrollBox.mCS-light.mCSB_vertical.mCSB_inside {
  background: #f09f1c;
}
.nav-outer .mobile-nav-toggler .inner {
  background: #b23f4c;
}
.mobile-menu .navigation li > a::before {
  border-left: 5px solid #0d8442;
}
.mobile-menu .navigation li.current > a, .mobile-menu .navigation li > a:hover {
  color: #b42525;
}
.mobile-menu .social-links li a {
  border: 1px solid #0d8442;
  background: #0d8442;
}
.mobile-menu .social-links li a:hover {
  color: #ffffff;
  background:#e52727;
  border:#e52727;
}
.header-top {
  padding: 10px 0;
}
.main-menu .navigation > li > a {
  padding: 20px 0px 20px;
}
.header {
  background: #e52727;
  margin-bottom: 0px;
}
.header .main-menu .navigation > li > a{
	color:#ffffff;
}
.main-slider.style1 {
  height: 600px;
  overflow: hidden;
  margin-top: 0;
  margin-bottom: 0;
}
.main-slider .slide {
  padding-top: 140px;
}

/* Reduce slider height and about section padding on mobile */
@media (max-width: 767px) {
  .main-slider.style1 {
    height: auto;
    max-height: 360px;
    overflow: hidden;
  }
  .about-style1-area {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  /* Hide progress area on mobile */
  .progress-area {
    display: none !important;
  }

  /* When progress area is hidden, reduce the gap between
     the service section and the emergency section on mobile. */
  .service-style1-area.emergency-pub.pt-0 {
    margin-bottom: 0 !important;
    padding-bottom: 12px !important;
  }

  .emergency-service-info-area {
    padding-top: 12px !important;
  }

  /* Stack service images vertically on mobile */
  .about-style2__image {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .about-style2__image .inner {
    width: 100%;
    overflow: hidden;
  }

  .about-style2__image .inner img {
    width: 100%;
    height: auto;
    display: block;
  }

  .about-style2__image .overlay-image {
    position: static !important;
    width: 100% !important;
    bottom: auto !important;
    right: auto !important;
    overflow: hidden;
  }

  .about-style2__image .overlay-image img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  /* Override parent styles for gallery images to ensure same dimensions */
  .about-style2__image .inner .elt-galerie,
  .about-style2__image .overlay-image .elt-galerie {
    width: 100% !important;
  }
  
  .emergency-service-info__image-box .elt-galerie {
    width: 100% !important;
  }
}
.footer-widget-quote-box {
  background: rgba(0,0,0,0.15);
}
.main-slider .slide .image-layer::before{
	background:url("../images/pattern.png") rgba(0,0,0,0);
}
.breadcrumb-area-bg::before{
	background:url("../images/pattern.png") rgba(0,0,0,0);
}
.slogan-img-box::after {
  border: 2px dashed #d0d9ea;
}
.single-features-style1 .text-holder {
  padding-top: 30px;
}
.service-style1-area {
  background: #fff;
}
.footer-bottom .bottom-inner {
  padding: 10px 0px 10px;
}
.footer {
  padding-top: 60px;
  padding-bottom: 60px;
}
.bottom-parallax .footer-area {
  height: 563px;
}
.breadcrumb-area .inner-content {
  padding: 100px 0 100px;
}
.footer-widget-contact-info ul li .inner .icon {
  color: #fff;
}
.text-sponsor ul, .text-sponsor ol{
   margin-left: 20px;
}
.text-sponsor  li {
  list-style: decimal;
  list-style-position: inside;
}
.bloc-sponsor-elt img {
  height: 81px;
  display: table;
  margin: auto;
  width: auto;
}
.all-sponsor {
  text-align: center;
  width: 100%;
}
.bloc-sponsor-elt {
  margin-bottom: 20px;
}
.bloc-sponsor {
  display: inline-block;
  margin: 0 12px;
}
.btn-login {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-right: 25px;
  padding-left: 25px;
}
.btn-login .icon-login {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 2;
  margin-right:5px;
  font-size:18px;
}
.b-container {
  display: flex;
  margin-bottom: 0;
  position: relative;
  height: 100%;
  padding-top:40px;
}
.b-text {
  -moz-box-flex: 1;
  flex-grow: 1;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
  flex-direction: column;
  width: 60%;
  background: #0562B5;
  height: 100%;
}
.bg-overlay {
  pointer-events: none;
  position: absolute;
  z-index: 0;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  content: ' ';
  display: block;
  opacity: 0;
  transition: background-color 0.45s cubic-bezier(0.25, 1, 0.33, 1),opacity 0.45s cubic-bezier(0.25, 1, 0.33, 1);
  -webkit-transition: background-color 0.45s cubic-bezier(0.25, 1, 0.33, 1),opacity 0.45s cubic-bezier(0.25, 1, 0.33, 1);
}
.bg-contenu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #0562b5;
  opacity: 0.90;
}
.main-menu .navigation > li {
  margin-right: 50px;
}

/* Debut de correction d'image */
.elt-galerie .c4{
  font-family: inherit;
  position: relative;
  display: flex;
  flex-direction: column;
}
.elt-galerie .c3 {
  position: relative;
  width: 100%;
}
.elt-galerie .c2{
  overflow-y: hidden;
  border-top-right-radius: 6px;
  overflow-x: hidden;
  right: 0;
  position: relative;
  border-bottom-left-radius: 6px;
  top: 0;
  left: 0;
  bottom: 0;
  border-top-left-radius: 6px;
  border-bottom-right-radius: 6px;
}
.elt-galerie .c1{
  font-family: inherit;
  overflow-y: hidden;
  border-top-right-radius: 6px;
  overflow-x: hidden;
  position: relative;
  border-bottom-left-radius: 6px;
  width: 100%;
  padding-bottom: 100%;
  border-top-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

/* Mobile gallery: mixed aspect ratios for variety */
@media (max-width: 767px) {
  /* Default 1:1 aspect ratio for consistency */
  .elt-galerie .c1 {
    padding-bottom: 100%;
    width: 100%;
  }
}
.elt-galerie .c0{
  font-family: inherit;
  position: absolute;
  flex-wrap: wrap;
  display: flex;
  top: -1px;
  height: calc(100% + 2px);
  left: -1px;
  width: calc(100% + 2px);
}
.elt-galerie .ctn-img{
  box-sizing: border-box;
  padding-bottom: 1px;
  position: relative;
  width: 100%;
  display: flex;
  padding-top: 1px;
  padding-right: 1px;
  height: 100%;
  flex-grow: 1;
  padding-left: 1px;
  background:#2cade4;
}
.elt-galerie .ctn-img img,
.elt-galerie .ctn-img video {
  overflow-y: hidden;
  overflow-x: hidden;
  width: 100%;
  height: auto;
  object-fit: cover;
  visibility: visible;
  font-family: inherit;
  display: block;
}
.elt-galerie .ctn-img video {
  background: #1a1a1a;
}

/* Ajustement spécifique pour les vignettes vidéo : ratio 16:9 et vidéo entière visible */
.post-thumb--video .c1 {
  padding-bottom: 56.25%;
}
.post-thumb--video .ctn-img video {
  height: 100%;
  object-fit: contain;
}

/* Section galerie média – moins d’espace sous le breadcrumb */
.media-gallery-section {
  padding-top: 64px;
}
/* Titre galerie média – Festival Culturel 2025 (imposant) */
.media-gallery-title {
  color: var(--thm-primary);
  font-size: 52px;
  font-weight: 800;
  text-align: center;
  margin: 0 0 40px 0;
  padding: 0;
  line-height: 1.2;
  font-family: 'Kumbh Sans', sans-serif;
  letter-spacing: -0.02em;
}
@media (max-width: 991px) {
  .media-gallery-title {
    font-size: 42px;
  }
}
@media (max-width: 767px) {
  .media-gallery-section {
    padding-top: 48px;
  }
  .media-gallery-title {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 28px;
  }
}

/* Lightbox galerie média – navigation et infobar plus visibles */
.fancybox-infobar {
  font-size: 15px;
  font-weight: 600;
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
.fancybox-navigation button {
  width: 56px;
  height: 56px;
  padding: 0;
  margin: -28px 0 0;
  border-radius: 50%;
  background: rgba(229, 39, 39, 0.9) !important;
  transition: background 0.2s, transform 0.2s;
}
.fancybox-navigation button:hover {
  background: rgba(229, 39, 39, 1) !important;
  transform: scale(1.08);
}
.fancybox-navigation button:before {
  background: transparent !important;
}
.fancybox-navigation .fancybox-button--arrow_left {
  left: 20px;
}
.fancybox-navigation .fancybox-button--arrow_right {
  right: 20px;
}
.fancybox-navigation button svg {
  width: 28px;
  height: 28px;
  margin: 0 auto;
  display: block;
}
.fancybox-navigation button path {
  fill: #fff;
  stroke: #fff;
}
.fancybox-close-small {
  top: 16px !important;
  right: 16px !important;
  width: 44px !important;
  height: 44px !important;
}
.fancybox-close-small:after {
  font-size: 28px;
  color: #fff !important;
  width: 44px;
  height: 44px;
  line-height: 44px;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
}
.fancybox-close-small:hover:after {
  background: rgba(229, 39, 39, 0.9);
  color: #fff !important;
}

/* Lightbox galerie intégrée (media.html) – sans CDN */
.media-lightbox {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}
.media-lightbox.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.media-lightbox__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.92);
  cursor: pointer;
}
.media-lightbox__content {
  position: relative;
  z-index: 2;
  max-width: 90vw;
  max-height: 90vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.media-lightbox__content img {
  max-width: 100%;
  max-height: 90vh;
  width: auto;
  height: auto;
  object-fit: contain;
  cursor: pointer;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.5);
}
.media-lightbox__close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 10;
  width: 48px;
  height: 48px;
  border: none;
  border-radius: 50%;
  background: rgba(229, 39, 39, 0.9);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
}
.media-lightbox__close:hover {
  background: rgba(229, 39, 39, 1);
  transform: scale(1.05);
}
.media-lightbox__infobar {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 10;
  padding: 10px 16px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  border-radius: 8px;
}
.media-lightbox__prev,
.media-lightbox__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 56px;
  height: 56px;
  border: none;
  border-radius: 50%;
  background: rgba(229, 39, 39, 0.9);
  color: #fff;
  font-size: 32px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.media-lightbox__prev:hover,
.media-lightbox__next:hover {
  background: rgba(229, 39, 39, 1);
  transform: translateY(-50%) scale(1.08);
}
.media-lightbox__prev {
  left: 20px;
}
.media-lightbox__next {
  right: 20px;
}

.elt-galerie .b-titl{
  box-sizing: border-box;
  padding-top: 12px;
  margin-top: -4px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-bottom: 12px;
  flex-direction: column;
}
.elt-galerie .b-titl span{
  -moz-box-orient: vertical;
  -webkit-box-orient: vertical; 
  -webkit-line-clamp: 2;
  display: -webkit-box;
  overflow-y: hidden;
  overflow-x: hidden;
  position: relative;
  word-break: break-word;
}
.elt-galerie .ctn-link{  
  font-family: inherit;
  padding-right: 2px;
  padding-left: 2px;
  box-sizing: border-box;
  flex-basis: 0px;
  padding-right: 4px;
  visibility: visible;
  display: flex;
  flex-shrink: 1;
  padding-top: 4px;
  padding-bottom: 4px;
  flex-direction: column;
  flex-grow: 1;
}
.elt-galerie .gnl{
  font-family: inherit;
  margin-left: -4px;
  margin-top: -4px;
  flex-wrap: wrap;
  justify-content: flex-start;
  display: flex;
  margin-bottom: -4px;
  margin-right: -4px;
  flex-direction: row;
  align-content: flex-start;
}




.elt-galerie .c1 {
    padding-bottom: 75%;
}

/* Fin correction d'image*/

/* Miniatures vidéo YouTube - galerie */
.yt-video-box {
  margin-bottom: 0;
}
.yt-thumbnail-link {
  display: block;
  text-decoration: none;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.yt-thumbnail-link:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  transform: translateY(-2px);
}
.yt-thumb-wrap {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 56.25%; /* ratio 16:9 */
  background: #1a1a1a;
  overflow: hidden;
}
.yt-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.yt-play-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 68px;
  height: 48px;
  margin: -24px 0 0 -34px;
  background: rgba(229, 39, 39, 0.9);
  border-radius: 12px;
  transition: background 0.25s ease, transform 0.25s ease;
}
.yt-play-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -10px 0 0 -6px;
  border-style: solid;
  border-width: 10px 0 10px 16px;
  border-color: transparent transparent transparent #fff;
}
.yt-thumbnail-link:hover .yt-play-icon {
  background: rgba(229, 39, 39, 1);
  transform: scale(1.08);
}
/* Titre en overlay sur la miniature */
.yt-thumb-title {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 12px 14px 10px;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.85));
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  font-family: 'Kumbh Sans', sans-serif;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  transition: background 0.25s ease;
}
.yt-thumbnail-link:hover .yt-thumb-title {
  background: linear-gradient(transparent, rgba(229, 39, 39, 0.92));
}
/* Légende sous la miniature */
.yt-caption {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.45;
  color: #555;
  max-width: 100%;
}
.yt-video-box .yt-caption {
  padding: 0 2px;
}
.about-style1__content .row .col-xl-6:last-child .yt-video-box {
  margin-top: 0;
}
/* Ligne vidéos supplémentaires (cachée par défaut) */
.yt-more-videos-row {
  display: none;
  margin-top: 24px;
}
.yt-more-videos-row.is-visible {
  display: flex;
}
.yt-more-videos-row .yt-video-box {
  margin-bottom: 0;
}
.btns-box button.btn-one {
  border: none;
  cursor: pointer;
  background-color: var(--thm-base);
}
@media (max-width: 1199px) {
  .yt-thumb-title {
    font-size: 14px;
    padding: 10px 12px 8px;
  }
  .yt-play-icon {
    width: 56px;
    height: 40px;
    margin: -20px 0 0 -28px;
  }
  .yt-play-icon::after {
    border-width: 8px 0 8px 14px;
    margin: -8px 0 0 -5px;
  }
}

.blog-page-two .single-blog-style1 .text-holder .btn-box.btn-lien .btn-link{
	background:none;
	
}
.blog-page-two .single-blog-style1 .text-holder .btn-box.btn-lien .btn-link:hover{
	background:none;
	color: var(--thm-primary);
	
}
.blog-page-two .single-blog-style1 .text-holder .btn-box.btn-lien {
  line-height: 0;
  margin-top: 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}




.bg-contenu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 25px;
  text-align: left;
  background-image:url("../images/s2.jpg");
  background-size: cover;
}
.bg-contenu2{
  background-image:url("../images/s1.jpg");
}
.bg-contenu2::before{
	background:#ac404e;
}
.b-text ul li {
  margin: 0 0 2px;
  position: relative;
  line-height: 25px;
  padding-left: 30px;
}
.b-text ul li::before {
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  display: inline-block;
  color: #ffffff;
  font-size: 20px;
  top: 2px;
  padding-right: 7px;
  content: "\e90a";
  top: 2px;
  left: -2px;
  height: 8px;
  margin-right: 0;
  width: 8px;
}
.about-style1-area.p-b-services {
  padding: 120px 0 80px;
}
.footer-widget-contact-info {
  margin-top: 30px;
}
.bottom-parallax .footer-area{
	background-image:url(../images/bg-footer.png);
	background-repeat:no-repeat;
	background-size:100% auto;
	background-color: #cf2626;
}
.service-style1-area::before {
	background: #fff;
}
.sub-img img{
	max-width:100px;
	height:auto;
}
.mis-icon img{
	min-width:100%;
	max-width:100%;
	height:auto;
}
.mis-icon{
	display:flex;
	justify-content:center;
	min-width:40px;
	width:40px;
	height:40px;
	margin-right:7px;
}
.blog-elt-ctn ul{
	margin-left:20px;
}
.blog-elt-ctn li{
	list-style-image:url("../images/check-icon.png");
	list-style-position: inside;
}
.mis-bloc {
  line-height: normal;
  margin-bottom: 12px;
}
.form-input label{
  color: #797989;
  font-size: 14px;
  font-family: 'Kumbh Sans', sans-serif;
}
.form-group-content {
  padding-left: 20px;
}
.form-input{
  margin: 0;
  padding: 0 0 0 20px;
  position: relative;
  padding: 0 0 0 .0625rem;
  float: left;
  clear: both;
  width: 100%;
}
.form-input label {
  position: relative;
  left: auto;
  top: auto;
}
.form-group-content label {
  display: inline-block;
  width: auto;
  padding: .125rem 0 0 2.375rem;
  line-height: 1.25rem;
  cursor: pointer;
  text-align: left;
  transition: color .15s linear;
}
.form-group-content input {
  position: absolute;
  top: .375rem;
  left: 0;
  transition: border-color .3s;
  height: 1.25rem;
  width: 1.25rem;
}
.main-contact-form-area.main-request {
  position: relative;
  display: block;
  background: #ffffff;
  padding: 20px 0px 60px;
}
.p-contact.contact-info-style2-area .contact-info-style1__content {
  padding-left: 0px;
}
.p-contact .contact-info-style2__image {
  max-width: 100%;
}
.contact-info-style2-area.p-contact {
  padding-bottom: 50px;
}
.service-details__content .text-box2.text-box-ville .text-box2-single {
  padding: 10px 10px 10px;
}
.service-details__content .text-box2.text-box-ville {
  margin-top: 10px;
  margin-bottom: 10px;
}
.service-details__content .text-box2.text-box-ville .text-box2-single h4 {
  margin: 0 0 6px;
}
.single-features-style1 .text-holder p {
  margin: 0;
  letter-spacing: -0.05em;
}
.emergency-service-info__content-box {
  padding: 56px 61px 52px;
}
.features-style1__content ul li {
  padding-top: 30px;
  padding-bottom: 30px;
}
.footer-logo img{
	max-width: 230px;
	display: block; 
	margin:auto;
}
.single-footer-widget .our-company-info .footer-logo a {
  display: block;
}
.footer-widget-links ul li a, .single-footer-widget .our-company-info .text-box p, .footer-bottom .bottom-inner .copyright p{
  color: #fff;
}
.bottom-parallax {
  opacity: 1;
  z-index: 1;
}

.bloc-img-service .image {
  width: 100%;
  height: 500px;
}
.bloc-img-service .radio {
  display: none;
}
.bloc-img-service .images {
  overflow: hidden;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
}
.bloc-img-service .images-inner {
  width: 500%;
  transition: all 800ms cubic-bezier(0.770, 0.000, 0.175, 1.000);
  transition-timing-function: cubic-bezier(0.770, 0.000, 0.175, 1.000);
}
.bloc-img-service .image-slide {
  width: 20%;
  float: left;
}
.bloc-img-service .image-slide,
.bloc-img-service .fake-radio,
.bloc-img-service .radio-btn {
  transition: all 0.5s ease-out;
}
.bloc-img-service .fake-radio {
  float: right;
}




/* Move slides overflowed container */
.bloc-img-service #slide1:checked ~ .images .images-inner {
  margin-left: 0;
}
.bloc-img-service #slide2:checked ~ .images .images-inner {
  margin-left: -100%;
}
.bloc-img-service #slide3:checked ~ .images .images-inner {
  margin-left: -200%;
}




/* Color of bullets */
.bloc-img-service #slide1:checked ~ div .fake-radio .radio-btn:nth-child(1),
.bloc-img-service #slide2:checked ~ div .fake-radio .radio-btn:nth-child(2),
.bloc-img-service #slide3:checked ~ div .fake-radio .radio-btn:nth-child(3) {
  background: #ac404e;
}
.bloc-img-service .radio-btn {
  width: 9px;
  height: 9px;
  border-radius: 5px;
  background: gray;
  display: inline-block !important;
  margin: 0 1px;
  cursor: pointer;
}
/* Color of bullets - END */




/* Text of slides */
.bloc-img-service #slide1:checked ~ .labels .label:nth-child(1),
.bloc-img-service #slide2:checked ~ .labels .label:nth-child(2),
.bloc-img-service #slide3:checked ~ .labels .label:nth-child(3) {
  opacity: 1;
}

.bloc-img-service .label {
  opacity: 0;
  position: absolute;
}
/* Text of slides - END */



/* Calculate AUTOPLAY for BULLETS */
@keyframes bullet {
  0%, 33.32333333333334%	{
    background: #ac404e;
  }
  33.333333333333336%, 100% {
    background: gray;
  }
}


.bloc-img-service #play1:checked ~ div .fake-radio .radio-btn:nth-child(1) {
  animation: bullet 12300ms infinite -1000ms;
}

.bloc-img-service #play1:checked ~ div .fake-radio .radio-btn:nth-child(2) {
  animation: bullet 12300ms infinite 3100ms;	
}

.bloc-img-service #play1:checked ~ div .fake-radio .radio-btn:nth-child(3) {
  animation: bullet 12300ms infinite 7200ms;	
}
/* Calculate AUTOPLAY for BULLETS - END */




/* Calculate AUTOPLAY for SLIDES */
@keyframes slide {
  0%, 25.203252032520325%	{ margin-left: 0; }
  33.333333333333336%, 58.53658536585366%	{ margin-left: -100%; }
  66.66666666666667%, 91.869918699187%	{ margin-left: -200%; }
}


.bloc-img-service .st-slider > #play1:checked ~ .images .images-inner {
  animation: slide 12300ms infinite;	
}
/* Calculate AUTOPLAY for SLIDES - END */





/* Calculate AUTOPLAY for CAPTION */
@keyframes caption {
  0%, 33.32333333333334%	{
    opacity: 1;
  }
  33.333333333333336%, 100% {
    opacity: 0;
  }
}


.bloc-img-service #play1:checked ~ .labels .label:nth-child(1) {
  animation: caption 12300ms infinite -1000ms;
}

.bloc-img-service #play1:checked ~ .labels .label:nth-child(2) {
  animation: caption 12300ms infinite 3100ms;	
}

.bloc-img-service #play1:checked ~ .labels .label:nth-child(3) {
  animation: caption 12300ms infinite 7200ms;	
}
/* Calculate AUTOPLAY for CAPTION - END */







@media only screen and (max-width: 767px) {
  .header {
    background: #ffffff;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .bottom-parallax .footer-area {
    height: auto;
  }
  .slogan-img-box {
    padding: 50px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .bottom-parallax .footer-area {
    height: auto;
  }
  	 .header-button-style1.header-login {
    display: block;
	margin-left: 0;
  }
  .header-contact-info-style1 ul li .text {
	  position: relative;
	  padding-left: 10px;
	}
	.header-contact-info-style1 ul li {
	  margin-right: 10px;
	}
  .header-login .btn-one .txt {
    display: none;
  }
	.btn-login {
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  padding: 10px;
	  border-radius: 50%;
	}
	.btn-login .icon-login{
		margin:0;
	}
}
@media only screen and (max-width: 991px) {
  .features-style1__content ul li {
	  padding-top: 0;
	  padding-bottom: 0;
	  margin-bottom: 15px;
	}
	  .btn-login {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 10px;
		border-radius: 50%;
	  }
}
@media only screen and (max-width: 767px) {
  .bottom-parallax .footer-area {
    height: auto;
  }
  .bloc-img-service .image {
	  width: 100%;
	  height: 400px;
	}
	 .features-style1__content ul {
		display: block;
		padding: 20px 0 20px;
	  }
	.header-login.header-button-style1 {
    position: relative;
    display: block;
    line-height: 0;
    margin-left: 0;
    margin-right: 85px;
    margin-top: -14px;
  }
    .header-login .btn-one .txt {
    display: none;
  }
   .btn-login .icon-login {
    margin: 0;
  }

  /* Center the "See more video" button on mobile */
  .about-style1__content .btns-box {
    text-align: center !important;
  }
  .about-style1__content .btns-box .btn-one {
    display: inline-block;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 576px) {
  .bloc-img-service .image {
	  width: 100%;
	  height: 300px;
	}
}

/* Gallery Images with Rounded Borders */
.yt-thumb {
  border-radius: 12px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}

a[data-fancybox]:hover .yt-thumb {
  transform: scale(1.03);
  box-shadow: 0 8px 24px rgba(13, 132, 66, 0.25);
}

.yt-thumbnail-link {
  display: block;
}

.yt-caption {
  font-size: 14px;
  color: #666;
  margin-top: 8px;
  text-align: center;
}

/* Gallery on mobile only */
@media (min-width: 768px) {
  /* Desktop: disable gallery links, make images static */
  a[data-fancybox="galerie-home"] {
    pointer-events: none;
    cursor: default;
  }
  
  a[data-fancybox="galerie-home"]:hover .elt-galerie {
    transform: none;
  }
}

@media (max-width: 767px) {
  /* Mobile: enable gallery links and force identical dimensions */
  a[data-fancybox="galerie-home"] {
    pointer-events: auto;
    cursor: pointer;
    display: block !important;
    width: 100% !important;
  }
  
  a[data-fancybox="galerie-home"]:hover .elt-galerie {
    transform: scale(1.02);
  }
  
  /* Force consistent dimensions across all gallery images */
  a[data-fancybox="galerie-home"] figure.elt-galerie,
  a[data-fancybox="galerie-home"] .stargas-img,
  a[data-fancybox="galerie-home"] .ctn-link,
  a[data-fancybox="galerie-home"] .c4,
  a[data-fancybox="galerie-home"] .c3,
  a[data-fancybox="galerie-home"] .c2,
  a[data-fancybox="galerie-home"] .c0,
  a[data-fancybox="galerie-home"] .ctn-img {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  /* 1:1 square aspect ratio */
  a[data-fancybox="galerie-home"] .c1 {
    padding-bottom: 100% !important;
    width: 100% !important;
  }
  
  a[data-fancybox="galerie-home"] .ctn-img {
    height: 100% !important;
  }
  
  a[data-fancybox="galerie-home"] .ctn-img img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }
}
@media (max-width: 767px) {
  .breadcrumb-area .inner-content {
    padding: 80px 0 40px !important;
    text-align: center;
  }

  .breadcrumb-area .title h2 {
    font-size: 30px !important;
    line-height: 1.2em !important;
  }

  .breadcrumb-menu {
    bottom: -12px !important;
  }

  .breadcrumb-menu ul {
    padding: 10px 20px 10px !important;
    border-radius: 16px !important;
  }

  .breadcrumb-menu ul li {
    font-size: 12px !important;
    padding-right: 8px !important;
    margin-right: 8px !important;
  }

  /* Reduce any additional top margin on the next section */
  .contact-info-style2-area.p-contact {
    padding-top: 12px !important;
  }
}

/* Style pour la section "Coming Soon pour le festival 2026" */
.coming-soon-text {
    font-size: 1.5rem;
    color: var(--thm-primary);
    font-weight: 500;
    letter-spacing: 1px;
    margin: 2rem 0;
    padding: 2rem;
    background-color: rgba(229, 39, 39, 0.05);
    border-radius: 8px;
    border-left: 4px solid var(--thm-primary);
}

/* Animation de clignotement pour le texte */
@keyframes blink {
    0% { opacity: 0.6; }
    50% { opacity: 1; }
    100% { opacity: 0.6; }
}

.coming-soon-text::after {
    content: " ...";
    animation: blink 1.5s infinite;
}

/* Responsive */
@media (max-width: 767px) {
    .coming-soon-text {
        font-size: 1.2rem;
        padding: 1.5rem;
    }
}




















