/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.section_sticky{
    position:sticky;
    top:160px;
}

.sr-only{display:none}
.elementor-element a{
	font-weight:inherit;
}

#pageLoader {
	 position: fixed;
	 inset: 0;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 z-index: 9999;
	 transition: all 1.5s ease;
}
.elementor-editor-active #pageLoader{
	display:none;
}
 #pageLoader.fade-out {
	 pointer-events: none;
}
 #pageLoader .loader-text {
	 animation: pulseText 2s infinite ease-in-out;
}
 #pageLoader .loader-logo {
	 width: 250px;
	 height: auto;
	 position: absolute;
	 top: calc(50% - (125px / 2));
	 left: calc(50% - (250px / 2));
	 animation: pulse 2s infinite ease-in-out;
}
 @keyframes pulseText {
	 0%, 100% {
		 opacity: 1;
	}
	 50% {
		 opacity: 0;
	}
}
 @keyframes pulse {
	 0%, 100% {
		 transform: translateY(-100px);
		 opacity: 0.2;
	}
	 50% {
		 transform: translateY(20px);
		 opacity: 1;
	}
}
    /* Couches superposées */
    .loading-layer {
        position: absolute;
        inset: 0;
        transform: translateY(0);
        transition: transform 1.5s ease-in-out, opacity 1.5s ease-in-out;
        opacity: 1;
        mix-blend-mode: hard-light; /* effet "CMJN" sympa */
    }

    /* Couleurs CMJN + blanc */
    .loading-layer.cyan {
        background: #00ffff;
    }

    .loading-layer.magenta {
        background: #ff00ff;
    }

    .loading-layer.yellow {
        background: #ffff00;
    }

    .loading-layer.black {
        background: #000000;
    }

    .loading-layer.white {
        background: #ffffff;
    }

    #pageLoader {
        transition: opacity;
    }

    #pageLoader.fade-out {
        transition-delay: 1.2s;
        opacity: 0;
    }

    .fade-out .loading-layer {
        transform: translateY(100vh);
        opacity: 0;
    }

    /* Délai d’animation pour les couches (stagger effect) */
    .fade-out .cyan {
        transition-delay: 0.9s;
    }

    .fade-out .magenta {
        transition-delay: 0.7s;
    }

    .fade-out .yellow {
        transition-delay: 0.5s;
    }

    .fade-out .black {
        transition-delay: 0.3s;
    }

    .fade-out .white {
        transition-delay: 0.1s;
    }
 

header .header_sticky.is-scrolled {
    background: rgba(255, 255, 255, 0.50) !important;
    backdrop-filter: blur(15px) saturate(180%);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}

.hero_title{
	text-align:center;
}
.hero_title span{
	color:var(--e-global-color-text);
	position:relative;
	z-index:1;
}
.hero_title span:before{
	inset:0;
	background:var( --e-global-color-secondary );
	content:'';
	position:absolute;
    top: -5px;
    left: -5px;
    width: calc(100% + 5px);
    height: calc(100% + 5px);
    transform: rotate(-3deg);
	z-index:-1;
	border-radius:25px;
}

.liste-valeurs {
	list-style: none;
	padding: 0;
	width:100%;
	max-width:80%;
}
 @media (max-width: 991px) {
	 .liste-valeurs {
		 max-width: 330px;
	}
}
 .liste-valeurs li {
	 transition: transform 0.1s;
	 color: #fff;
	 border-radius: 25px;
	 text-align: center;
	 padding: 7px 30px !important;
	 background-color: var(--e-global-color-secondary);
	 margin: 20px 0 !important;
}
 .liste-valeurs li:nth-child(1) {
	 transform: rotate(-3deg);
}
 .liste-valeurs li:nth-child(2) {
	 transform: rotate(1deg);
}
 .liste-valeurs li:nth-child(3) {
	 transform: rotate(-1.5deg);
}
 .liste-valeurs li:nth-child(4) {
	 transform: rotate(2.5deg);
}
 .liste-valeurs li:nth-child(5) {
	 transform: rotate(-1deg);
}
 .liste-valeurs li:nth-child(6) {
	 transform: rotate(1.5deg);
}
 .liste-valeurs li:hover {
	 transform: rotate(0deg);
}
 

.btn-upink_cto{
    display: block;
    height: 75px;
    margin: 20px auto;
    position: relative;
    width: 160px;
}
.btn-upink_cto span{
    border-radius: .8rem;
    filter: drop-shadow(0 5px 2px rgba(25, 23, 21, .5));
    line-height: 14px;
    margin: 0;
	left:0;
    padding: 10px 12px 5px;
    position: absolute;
}
.btn-upink_cto__part--primary{
    background-color: var(--e-global-color-primary);
    color: #fff;
    top: 0;
    transform: rotate(5deg);
}
.btn-upink_cto_white .btn-upink_cto__part--primary{
    background-color: var(--e-global-color-accent);
    color: var(--e-global-color-text);
}
.btn-upink_cto__part--secondary{
    background-color: var( --e-global-color-secondary );
    color: var(--e-global-color-text);
    font-family: "Obviously", Sans-serif;
	font-weight:700;
    text-transform: uppercase;
    top: 25px;
    transform: rotate(-4deg);
}
.btn-upink_cto:hover .btn-upink_cto__part--secondary{
	transform: rotate(0);
}

.btn-upink_more{
    display: block;
    height: 65px;
    margin: 20px auto;
    position: relative;
    width: 90px;
}
.btn-upink_more:after{
	content:'';
	background-image:url('/wp-content/themes/hello-theme-child-master/assets/btn-plus.png');
    left: 72px;
    position: absolute;
    top: 15px;
    transform: rotate(4deg);
    transition: transform .1s;
    width: 29px;
    height: 29px;
}
.btn-upink_more_white:after{
	background-image:url('/wp-content/themes/hello-theme-child-master/assets/btn-plus_white.png');
}
.btn-upink_more:hover:after {
    transform: rotate(-16deg);
}
.btn-upink_more span{
    position: absolute;
    color: #191715;
    left: 0;
    border-radius: .8rem;
    line-height: 14px;
    padding: 10px 12px 5px;
	filter: drop-shadow(0 5px 2px rgba(25, 23, 21, .5));
    margin: 0;
}
.btn-upink_more__part--en{
    background-color: var(--e-global-color-accent);
    top: 0;
    transform: rotate(-10deg);
}
.btn-upink_more__part--savoir{
    background-color: var( --e-global-color-secondary );
    font-family: "Obviously", Sans-serif;
	font-size:600;
    text-transform: uppercase;
    top: 25px;
    transform: rotate(4deg);
}

.btn-upink_link{
    border-radius: .8rem;
    line-height: 14px;
    padding: 10px 12px 5px;
	filter: drop-shadow(0 5px 2px rgba(25, 23, 21, .5));
    margin: 0;
    background-color: var( --e-global-color-secondary );
}
.btn-upink_link__text{
	color: var( --e-global-color-text );
	position:relative;
	padding-right: 30px !important;
}
.btn-upink_link__text:after{
	content:'';
	background-image:url('/wp-content/themes/hello-theme-child-master/assets/arrow.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 12px;
    pointer-events: none;
    position: absolute;
    right: 8px;
    top: 42%;
    transform: translateY(-50%);
    width: 12px;
}
.btn-upink_link:hover .btn-upink_link__text:after{
	right: 5px;
}





/*Effet au menu du header*/
/* item du menu */

.elementor-nav-menu .elementor-item{
  position:relative;
  padding:12px 22px;
  border-radius:30px;
  overflow:hidden;
  color:#0505A9;
  transition:color .35s ease;
}

/* peinture */

.elementor-nav-menu .elementor-item::before,
.elementor-nav-menu .elementor-item::after{
  content:"";
  position:absolute;
  bottom:-180%;
  width:140%;
  height:200%;
  background:#fff !important;
  border-radius:50%;
  transition:transform 1.5s cubic-bezier(.25,.8,.25,1);
  z-index:-1;
}

/* blob gauche */

.elementor-nav-menu .elementor-item::before{
  left:-20%;
  transform:translateY(0);
}

/* blob droite */

.elementor-nav-menu .elementor-item::after{
  right:-20%;
  transform:translateY(0);
}

/* hover */

.elementor-nav-menu .elementor-item:hover{
  color:#fff;
}

.elementor-nav-menu .elementor-item:hover::before,
.elementor-nav-menu .elementor-item:hover::after{
  transform:translateY(-80%);
}