/*
Theme Name:		Hello Elementor Child
Template:		hello-elementor
Theme URI:		https://www.agence-saycom.fr/
Description:	Hello Elementor by Agence SayCom
Author:			Agence Saycom
Author URI:		http://www.agence-saycom.fr
Version:		1.0.0
License:		GNU General Public License v3.0
License URI:	http://www.gnu.org/licenses/gpl-3.0.html
Text Domain:	hello-elementor
*/

/* @import url('./styles/reset.css'); */

/* Empêche le scroll du site horizontalement */
* body{
	overflow-x: hidden !important;
}
/* ------------ */

/* Mise en forme des titres italiques et typo script */
.playfair {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  color: var(--e-global-color-primary);
}
/* Mettre la couleur de texte en secondaire, surtout pour les titres italiques */
.secondaire{
  color: var(--e-global-color-secondary);
}
/* Mettre la couleur de texte en blanc, surtout pour les titres italiques */
.white{
  color: #FFFFFF;
}
/* ------------ */

/* Pour supprimer la marge sous les icons */
div.icon-flex, div.icon-flex>div{
	display: flex;
}
/* ------------ */

/* Mise en form des cards prestations */
.icon-card-prestation > div{
    display: flex;
}
.card-prestation .elementor-icon, .card-prestation .icon-card-prestation{
	border-radius: 50%;
}
.card-prestation:hover .icon-card-prestation{
    transform: rotate(45deg);
    box-shadow: 0px 10px 80px -5px var(--e-global-color-primary);
}
/* ------------ */

/* Mise en forme des sous-activités sous forme de liste dans les pages d'activités */
div.liste-activites ul li span.elementor-icon-list-text{
    padding: 4px 10px;
    border-radius: 20px;
	border: 1px solid var(--e-global-color-primary) !important;
	background: rgb(from var(--e-global-color-primary) r g b / 3%) !important;

    margin-bottom: 8px;
	z-index: 2 !important;
}
@media screen and (max-width:768px){
	.liste-activites ul li span.elementor-icon-list-text{
		font-size: 80%;
	}
}
/* ------------ */


/* PERSONNALISATION DE LA SCROLLBAR */
*::-webkit-scrollbar {
    width: 10px;
}
::-webkit-scrollbar-track {
	background-color: var(--e-global-color-6f9af7a);
}
*::-webkit-scrollbar-thumb {
    background-color: var(--e-global-color-primary);
    border-radius: 10px;
    border: 0 none #FFFFFF;
	transition: 200ms;
}
*::-webkit-scrollbar-thumb:hover {
	background-color: var(--e-global-color-accent);
}
/* ------------ */

/* PERSONNALISATION SELECTION DU TEXTE */
::selection {
  color: var(--e-global-color-text);
  background:var(--e-global-color-primary);
} 
::-moz-selection {
  color: var(--e-global-color-text);
  background:var(--e-global-color-primary);
}
/* ------------ */

/* ANIMATION DES TEXTES A L'APPARITION */
/* Chaque mot devient un bloc animable */
.cascade-text .cascade-word {
  display: inline-block;
  will-change: transform, opacity, filter;
}
/* État initial (appliqué seulement une fois le JS prêt,
   pour que le texte reste visible si le JS échoue) */
.cascade-text.cascade-ready .cascade-word {
  opacity: 0;
  transform: translateY(0.5em);
  filter: blur(4px);
}
/* Déclenchement au scroll : chaque mot s'anime avec son propre délai */
.cascade-text.cascade-in .cascade-word {
  animation: cascadeIn 0.55s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: var(--cascade-delay, 0ms);
}
@keyframes cascadeIn {
  from { opacity: 0; transform: translateY(0.5em); filter: blur(4px); }
  to   { opacity: 1; transform: translateY(0);     filter: blur(0);  }
}
/* Respecte les utilisateurs qui désactivent les animations */
@media (prefers-reduced-motion: reduce) {
  .cascade-text.cascade-ready .cascade-word,
  .cascade-text.cascade-in .cascade-word {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
  }
}
/* ------------ */


/* Test de suppression des animations Elementor en version mobile */
@media (max-width: 767px) {
    .animated {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }
}
