/*
CTC Separate Stylesheet
Updated: 2025-05-19 14:59:23
Theme Name: OnePress Child
Theme URI: https://www.famethemes.com/themes/onepress/
Template: onepress
Author: FameThemes
Author URI: http://www.famethemes.com
Description: OnePress is an outstanding creative and flexible WordPress one page theme well suited for business website, portfolio, digital agency, product showcase, freelancers and everyone else who appreciate good design. The theme overall is an elegant and classic one, a fine example of Bootstrap 4 WordPress theme which compatibility with latest version of WooCommerce. (Live preview : https://demos.famethemes.com/onepress)
Tags: one-column,two-columns,left-sidebar,right-sidebar,custom-menu,featured-images,full-width-template,sticky-post,theme-options,threaded-comments,translation-ready,e-commerce,blog,portfolio
Version: 2.3.12.1747659563
*/

/* DEBUT ajout IA */

/* Neutralisation du line-height inline OnePress */
#masthead .onepress-menu {
    line-height: normal !important;
    display: flex;
    align-items: center;
}
/* Header layout */
#masthead .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#masthead .custom-logo {
    max-height: 170px;
    width: auto;
    height: auto;
    transition: max-height 0.3s ease;
}
#masthead:not(.no-scroll) .custom-logo {
    max-height: 80px;
}
#masthead {
    padding: 10px 0;
    transition: padding 0.3s ease, background-color 0.3s ease;
}

#masthead:not(.no-scroll) {
    padding: 10px 0;
    background-color: #ffffff;
}
.followWrap {
    height: auto !important;
}
@media (max-width: 768px) {

    #masthead {
        padding: 12px 0;
    }

    #masthead .custom-logo {
        max-height: 45px;
    }

    #masthead:not(.no-scroll) .custom-logo {
        max-height: 28px;
    }
}
#masthead:not(.no-scroll) .custom-logo {
    content: url("/wp-content/uploads/2025/05/logo_RAE.png");
}

.photo_page {
	max-width: 90%;
	padding: 15px;
}

.site-header.header-fixed {
    top: 0px;
    left: 0px;
    position: relative;
}

.section-title-wrapper {
    display: flex;
    flex-wrap: wrap;
	align-items: center; /* centrage vertical */
}

/* Desktop */
.section-title-area-perso {
    width: 50%;
	padding: 35px;
}

/* Image responsive */
.section-title-area-perso img {
    max-width: 100%;
    height: auto;
    display: block;
}
.img-droite {
	width: 100%;
	border-radius: 27px;
}

/* Mobile / tablette */
@media (max-width: 768px) {
    .section-title-area-perso {
        width: 100%;
    }
}

/* FIN ajout IA */

/* ABE */
@media (min-width: 1200px) {
    .container {
        width: 1280px;
        max-width: 100%;
    }
}
/* Fin ABE */

.titre_slider {
	font-family: "Ubuntu Sans Mono", monospace!important;
	font-weight: lighter!important;
	line-height: 15px!important;
	text-transform : none;
	letter-spacing: 0;
	font-size: 65px!important;
}

.lettre_slider {
	font-family: "Ubuntu Sans Mono", monospace!important;
	font-size: 55px!important;
	font-weight:500!important;
	line-height: 22px!important;
}

.js-rotating {
	font-size: 25px;
	text-transform : none;
}

.lettre_rae {
	color: #2bb989;
	font-size: 35px;
	font-weight:500!important;
}

.imgpopup {
	width: 600px;
	max-width: 90%;
}

@media screen and (min-width: 940px) {
    .hero-content-style1 h2 {
        font-size: none;
        letter-spacing: none;
    }

.hero-content-style1 h2 {
	font-family: "Ubuntu Sans Mono", monospace!important;
	font-weight: normal;
}

.owl-prev, .owl-next {
	border-radius: 20px!important;
	padding: 2px !important;
	background: #2bb989!important;
}

.container-fluid {
   padding-right: 0!important;
   padding-left: 0!important;
}

#monimgpost {
	max-height: 270px;
	width: 100%;
	object-fit: cover;
	border-radius: 27px;
}
	
.list-article-thumb img, .site-main img {
	border-radius: 27px;
}

.onepress-menu ul {
	margin-top: 0px;
}

.owl-dots {
	display: none!important;
}

/* Début engrenages */

.rotate1 {
  animation: rotation1 8s infinite linear;
  float: left;
  margin-top: 30px;
}

@keyframes rotation1 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.rotate2 {
  animation: rotation2 8s infinite linear;
  float: left;
  margin-top: 0px;
  margin-left: -30px;
}

@keyframes rotation2 {
  from {
    transform: rotate(-120deg);
  }
  to {
    transform: rotate(-480deg);
  }
}

.rotate3 {
  animation: rotation3 8s infinite linear;
  float: left;
  margin-top: 30px;
  margin-left: -30px;
}

@keyframes rotation3 {
  from {
    transform: rotate(150deg);
  }
  to {
    transform: rotate(510deg);
  }
}

.rotate4 {
  animation: rotation4 8s infinite linear;
  float: left;
  margin-top: 30px;
  margin-left: -30px;
}

@keyframes rotation4 {
  from {
    transform: rotate(-150deg);
  }
  to {
    transform: rotate(-510deg);
  }
}

/* Fin engrenages */
	
	#about {
		padding-bottom: 15px!important;
	}
	
	#team {
		padding-top: 15px!important;
	}
	
	@media screen and (max-width: 920px) {
		#Vdesktop {
			display: none;
		}	
	}
	
	@media screen and (min-width: 920px) {
		#Vmobile {
			display: none;
		}
	}
	
	.engrenages {
		max-width: 90%;
	}

/* Début engrenages2 */

		.container_gears {
            position: relative;
            width: 800px;
            height: 378px;
        }

        .gear {
            position: absolute;
            border-radius: 50%;
            border: none;
            box-shadow: 0 2px 8px rgba(0,0,0,0.15);
        }

        .gear::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 30%;
            height: 30%;
            border-radius: 50%;
        }

        .logo-container {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 110px;
            height: 110px;
            background: #ffffff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 10;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            animation: counter-rotate-clockwise 8s linear infinite;
        }
		
		.gearpetit {
            position: absolute;
            border-radius: 50%;
            background: #9ca3af;
            border: none;
            box-shadow: 0 2px 8px rgba(0,0,0,0.15);
        }

        .gearpetit::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 30%;
            height: 30%;
            background: #6b7280;
            border-radius: 50%;
        }
		
		.logo-containerpetit {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 120px;
            height: 120px;
            background: #ffffff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 10;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            animation: counter-rotate-clockwise 8s linear infinite;
        }

        .gear2 .logo-container {
            animation: counter-rotate-counter-clockwise 8s linear infinite;
        }
				
		.gear3 .logo-containerpetit {
            animation: counter-rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear4 .logo-containerpetit {
			width: 90%;
			height: 90%;
            animation: counter-rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear5 .logo-containerpetit {
			width: 90%;
			height: 90%;
            animation: counter-rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear6 .logo-containerpetit {
			width: 90%;
			height: 90%;
            animation: counter-rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear7 .logo-containerpetit {
			width: 90%;
			height: 90%;
            animation: counter-rotate-clockwise 8s linear infinite;
        }
		
		.gear8 .logo-containerpetit {
			width: 90%;
			height: 90%;
            animation: counter-rotate-clockwise 8s linear infinite;
        }
		
		.gear9 .logo-containerpetit {
			width: 90%;
			height: 90%;
            animation: counter-rotate-clockwise 8s linear infinite;
        }

        @keyframes counter-rotate-clockwise {
            from { transform: translate(-50%, -50%) rotate(0deg); }
            to { transform: translate(-50%, -50%) rotate(-360deg); }
        }

        @keyframes counter-rotate-counter-clockwise {
            from { transform: translate(-50%, -50%) rotate(0deg); }
            to { transform: translate(-50%, -50%) rotate(360deg); }
        }

        .logo-container img {
            max-width: 80%;
            max-height: 80%;
            object-fit: contain;
        }


        @keyframes counter-rotate-clockwise {
            from { transform: translate(-50%, -50%) rotate(0deg); }
            to { transform: translate(-50%, -50%) rotate(-360deg); }
        }

        @keyframes counter-rotate-counter-clockwise {
            from { transform: translate(-50%, -50%) rotate(0deg); }
            to { transform: translate(-50%, -50%) rotate(360deg); }
        }

        .logo-containerpetit img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }

        .gear-teeth {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
        }

        .tooth {
            position: absolute;
            background: #2bb989;
            border: none;
            transform-origin: center;
        }

        /* Gros engrenages */
        .big-gear {
            width: 130px;
            height: 130px;
        }
	
	.big-gear1 {
            width: 130px;
            height: 130px;
        }
	
	.big-gear2 {
            width: 130px;
            height: 130px;
        }
	
	.big-gear3 {
            width: 130px;
            height: 130px;
        }

        .big-gear .tooth {
            width: 16px;
            height: 20px;
            border-radius: 2px;
			background-color: #b4b4b4;
        }
	
	.big-gear1 .tooth {
            width: 16px;
            height: 20px;
            border-radius: 2px;
			background-color: #a2c617;;
        }
	
	.big-gear2 .tooth {
            width: 16px;
            height: 20px;
            border-radius: 2px;
			background-color: #a2c617;
        }
	
	.big-gear3 .tooth {
            width: 16px;
            height: 20px;
            border-radius: 2px;
			background-color: #a2c617;
        }

        /* Petits engrenages */
        .small-gear {
            width: 100px;
            height: 100px;
        }

        .small-gear .tooth {
            width: 12px;
            height: 15px;
            border-radius: 2px;
        }

        /* Positionnement des gros engrenages - alignés horizontalement */
        .gear1 {
            top: 55px;
            left: 175px;
            animation: rotate-clockwise 8s linear infinite;
        }

        .gear2 {
            top: 43px;
            left: 325px;
            animation: rotate-counter-clockwise 8s linear infinite;
        }

        .gear3 {
        top: 297px;
        left: 242px;
            animation: rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear4 {
        top: 135px;
        left: 108px;
            animation: rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear5 {
        top: -49px;
        left: 200px;
            animation: rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear6 {
            top: 297px;
        left: 242px;
            animation: rotate-clockwise 8s linear infinite;
			display: none;
        }
		
		.gear7 {
            top: 297px;
        left: 242px;
            animation: rotate-counter-clockwise 8s linear infinite;
        }
		
		.gear8 {
        top: 25px;
        left: 692px;
            animation: rotate-clockwise 8s linear infinite;
        }
		
		.gear9 {
        top: 21px;
        left: 6px;
            animation: rotate-clockwise 8s linear infinite;
        }
	
	
	.logo_petit {
		width: 85%;
	}


        @keyframes rotate-clockwise {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
        }

        @keyframes rotate-counter-clockwise {
            from { transform: rotate(0deg); }
            to { transform: rotate(-360deg); }
        }

        .title {
            position: absolute;
            top: 50px;
            left: 50%;
            transform: translateX(-50%);
            color: #2d3748;
            font-size: 2.5rem;
            font-weight: bold;
            text-shadow: 2px 2px 4px rgba(0,0,0,0.1);
            z-index: 100;
        }

        @media (max-width: 900px) {
            .container_gears {
                width: 90vw;
                height: 90vw;
                max-width: 600px;
                max-height: 600px;
            }
            
            .title {
                font-size: 1.8rem;
                top: 20px;
            }
        }

/* Fin engrenages2 */

/* =========================================================
   CORRECTIF FINAL : seules les cartes comptent dans la grille
   ========================================================= */

/* Le conteneur fallback */
.bdpp-post-carousel-wrap.bdpp-no-carousel {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	justify-content: start;
	align-content: start;
}

/* 🔑 SEULES LES CARTES SONT DES ITEMS DE GRILLE */
.bdpp-post-carousel-wrap.bdpp-no-carousel > * {
	grid-column: auto;
}

/* Tout ce qui n'est PAS un post est retiré de la grille */
.bdpp-post-carousel-wrap.bdpp-no-carousel > :not(.bdpp-post-slide) {
	display: none !important;
}

/* Les posts commencent TOUJOURS colonne 1 */
.bdpp-post-carousel-wrap.bdpp-no-carousel > .bdpp-post-slide {
	grid-column: auto !important;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 1024px) {
	.bdpp-post-carousel-wrap.bdpp-no-carousel {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 640px) {
	.bdpp-post-carousel-wrap.bdpp-no-carousel {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   FORÇAGE ABSOLU DE LA COLONNE DE DÉPART
   ========================================================= */

/* Le conteneur fallback */
.bdpp-post-carousel-wrap.bdpp-no-carousel {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

/* 🔑 LE POINT CRITIQUE :
   le 1er post commence TOUJOURS colonne 1 */
.bdpp-post-carousel-wrap.bdpp-no-carousel
> .bdpp-post-slide:first-of-type {
	grid-column-start: 1 !important;
}

/* Les autres posts suivent normalement */
.bdpp-post-carousel-wrap.bdpp-no-carousel
> .bdpp-post-slide {
	grid-column: auto !important;
	justify-self: stretch !important;
	margin: 0 !important;
}

/* Sécurité : annule tout centrage hérité */
.bdpp-post-carousel-wrap.bdpp-no-carousel * {
	justify-self: stretch !important;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 1024px) {
	.bdpp-post-carousel-wrap.bdpp-no-carousel {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 640px) {
	.bdpp-post-carousel-wrap.bdpp-no-carousel {
		grid-template-columns: 1fr;
	}
}
