/**
 * Atom FSE - Styles Globaux + Animations
 * Classes CSS globales disponibles pour tous les patterns/blocs du plugin
 */

/*====================================================
	GLOBAL STYLE
====================================================*/
/* Margins */
@media (max-width: 1024px) {
	.update-margin-mobile {
		margin:0rem!important;
	}
}

/* Forcer les ajustements en mode mobile */
@media (max-width: 781px) {
	.update-margin-mobile {
		margin:0rem!important;
	}
    .update-padding-mobile {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    .wp-block-cover {
        min-height: 500px !important;
    }
    .update-padding-y-mobile {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }
    .mobile-gap{
        gap:20px!important;
    }
}

/* Layout */
.entry-content.wp-block-post-content {
	padding: 0 !important;
}

/* Helpers */
.z-index {
    position: relative!important;
    z-index: 999!important;
}

.w-full{
    width: 100%!important;
}

.overflow-hidden {
	overflow: hidden!important;
}

/* Button icon */
.wp-block-button__link img {
    width: 18px!important;
    height: 18px!important;
    vertical-align: middle;
}

/*====================================================
	ANIMATIONS
====================================================*/
/* ANIMATION SPEED */
[class^="reveal-speed-"] {
	transition-property: all;
}
.reveal-speed-100 {
	transition-duration: 100ms;
}
.reveal-speed-200 {
	transition-duration: 200ms;
}
.reveal-speed-300 {
	transition-duration: 300ms;
}
.reveal-speed-400 {
	transition-duration: 400ms;
}
.reveal-speed-500 {
	transition-duration: 500ms;
}
.reveal-speed-600 {
	transition-duration: 600ms;
}
.reveal-speed-700 {
	transition-duration: 700ms;
}
.reveal-speed-800 {
	transition-duration: 800ms;
}
.reveal-speed-900 {
	transition-duration: 900ms;
}
.reveal-speed-1000 {
	transition-duration: 1000ms;
}
.reveal-speed-1100 {
	transition-duration: 1100ms;
}
.reveal-speed-1200 {
	transition-duration: 1200ms;
}
.reveal-speed-1300 {
	transition-duration: 1300ms;
}
.reveal-speed-1400 {
	transition-duration: 1400ms;
}
.reveal-speed-1500 {
	transition-duration: 1500ms;
}
.reveal-speed-1600 {
	transition-duration: 1600ms;
}
.reveal-speed-1700 {
	transition-duration: 1700ms;
}
.reveal-speed-1800 {
	transition-duration: 1800ms;
}
.reveal-speed-1900 {
	transition-duration: 1900ms;
}
.reveal-speed-2000 {
	transition-duration: 2000ms;
}
.reveal-speed-2100 {
	transition-duration: 2100ms;
}
.reveal-speed-2200 {
	transition-duration: 2200ms;
}
.reveal-speed-2300 {
	transition-duration: 2300ms;
}
.reveal-speed-2400 {
	transition-duration: 2400ms;
}
.reveal-speed-2500 {
	transition-duration: 2500ms;
}
.reveal-speed-2600 {
	transition-duration: 2600ms;
}
.reveal-speed-2700 {
	transition-duration: 2700ms;
}
.reveal-speed-2800 {
	transition-duration: 2800ms;
}
.reveal-speed-2900 {
	transition-duration: 2900ms;
}
.reveal-speed-3000 {
	transition-duration: 3000ms;
}

/* ANIMATION EASING */
.reveal-easing-linear {
	transition-timing-function: cubic-bezier(.25, .25, .75, .75);
}
.reveal-easing-ease {
	transition-timing-function: ease;
}
.reveal-easing-ease-out {
	transition-timing-function: ease-out;
}
.reveal-easing-ease-in-out {
	transition-timing-function: ease-in-out;
}
.reveal-easing-ease-out-back {
	transition-timing-function: cubic-bezier(.175, .885, .32, 1.275);
}
.reveal-easing-ease-in-out-back {
	transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
}
.reveal-easing-ease-out-sine {
	transition-timing-function: cubic-bezier(.39, .575, .565, 1);
}
.reveal-easing-ease-in-cubic {
	transition-timing-function: cubic-bezier(.55, .085, .68, .53);
}
.reveal-easing-ease-out-cubic {
	transition-timing-function: cubic-bezier(.25, .46, .45, .94);
}
.reveal-easing-ease-in-out-cubic {
	transition-timing-function: cubic-bezier(.455, .03, .515, .955);
}

/* OPACITY */
.r-opacity { opacity: 0; }
.in-view.r-opacity { opacity: 1; }

/* TRANSLATE: up, down, left, right, diagonals */
.r-top-s { transform: translateY(2rem); }
.r-top-m { transform: translateY(4rem); }
.r-top-l { transform: translateY(8rem); }
.r-top-xl { transform: translateY(10rem); }
.r-top-xxl { transform: translateY(16rem); }

.r-bottom-s { transform: translateY(-2rem); }
.r-bottom-m { transform: translateY(-4rem); }
.r-bottom-l { transform: translateY(-8rem); }
.r-bottom-xl { transform: translateY(-10rem); }
.r-bottom-xxl { transform: translateY(-16rem); }

.r-left-s { transform: translateX(2rem); }
.r-left-m { transform: translateX(4rem); }
.r-left-l { transform: translateX(8rem); }
.r-left-xl { transform: translateX(10rem); }
.r-left-xxl { transform: translateX(16rem); }

.r-right-s { transform: translateX(-2rem); }
.r-right-m { transform: translateX(-4rem); }
.r-right-l { transform: translateX(-4rem); }
.r-right-xl { transform: translateX(-10rem); }
.r-right-xxl { transform: translateX(-16rem); }

.r-left-top-s { transform: translate(2rem, 2rem); }
.r-left-top-m { transform: translate(4rem, 4rem); }
.r-left-top-l { transform: translate(6rem, 6rem); }
.r-left-top-xl { transform: translate(10rem, 10rem); }
.r-left-top-xxl { transform: translate(16rem, 16rem); }

.r-right-top-s { transform: translate(-2rem, 2rem); }
.r-right-top-m { transform: translate(-4rem, 4rem); }
.r-right-top-l { transform: translate(-6rem, 6rem); }
.r-right-top-xl { transform: translate(-10rem, 10rem); }
.r-right-top-xxl { transform: translate(-16rem, 16rem); }

.r-left-bottom-s { transform: translate(2rem, -2rem); }
.r-left-bottom-m { transform: translate(4rem, -4rem); }
.r-left-bottom-l { transform: translate(6rem, -6rem); }
.r-left-bottom-xl { transform: translate(10rem, -10rem); }
.r-left-bottom-xxl { transform: translate(16rem, -16rem); }

.r-right-bottom-s { transform: translate(-2rem, -2rem); }
.r-right-bottom-m { transform: translate(-4rem, -4rem); }
.r-right-bottom-l { transform: translate(-6rem, -6rem); }
.r-right-bottom-xl { transform: translate(-10rem, -10rem); }
.r-right-bottom-xxl { transform: translate(-16rem, -16rem); }

.in-view.r-top-s,
.in-view.r-top-m,
.in-view.r-top-l,
.in-view.r-top-xl,
.in-view.r-top-xxl,
.in-view.r-bottom-s,
.in-view.r-bottom-m,
.in-view.r-bottom-l,
.in-view.r-bottom-xl,
.in-view.r-bottom-xxl,
.in-view.r-left-s,
.in-view.r-left-m,
.in-view.r-left-l,
.in-view.r-left-xl,
.in-view.r-left-xxl,
.in-view.r-right-s,
.in-view.r-right-m,
.in-view.r-right-l,
.in-view.r-right-xl,
.in-view.r-right-xxl,
.in-view.r-left-top-s,
.in-view.r-left-top-m,
.in-view.r-left-top-l,
.in-view.r-left-top-xl,
.in-view.r-left-top-xxl,
.in-view.r-right-top-s,
.in-view.r-right-top-m,
.in-view.r-right-top-l,
.in-view.r-right-top-xl,
.in-view.r-right-top-xxl,
.in-view.r-left-bottom-s,
.in-view.r-left-bottom-m,
.in-view.r-left-bottom-l,
.in-view.r-left-bottom-xl,
.in-view.r-left-bottom-xxl,
.in-view.r-right-bottom-s,
.in-view.r-right-bottom-m,
.in-view.r-right-bottom-l,
.in-view.r-right-bottom-xl,
.in-view.r-right-bottom-xxl { transform: none; }

/* CLIP PATH: up, down, left, right */
.r-clip-up { clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%); }
.in-view.r-clip-up { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.r-clip-down { clip-path: polygon(0 0, 100% 0, 100% 0, 0 0); }
.in-view.r-clip-down { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.r-clip-right { clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); }
.in-view.r-clip-right { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.r-clip-left { clip-path: polygon(100% 0, 100% 0%, 100% 100%, 100% 100%); }
.in-view.r-clip-left { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

/* SCALES */
.r-zoom-in-s { transform: scale(0.9); }
.r-zoom-in-m { transform: scale(0.8); }
.r-zoom-in-l { transform: scale(0.6); }
.r-zoom-in-xl { transform: scale(0.4); }
.r-zoom-in-xxl { transform: scale(0.2); }

.r-zoom-out-s { transform: scale(1.1); }
.r-zoom-out-m { transform: scale(1.2); }
.r-zoom-out-l { transform: scale(1.4); }
.r-zoom-out-xl { transform: scale(1.6); }
.r-zoom-out-xxl { transform: scale(1.8); }

.in-view.r-zoom-in-s,
.in-view.r-zoom-in-m,
.in-view.r-zoom-in-l,
.in-view.r-zoom-in-xl,
.in-view.r-zoom-in-xxl,
.in-view.r-zoom-out-s,
.in-view.r-zoom-out-m,
.in-view.r-zoom-out-l,
.in-view.r-zoom-out-xl,
.in-view.r-zoom-out-xxl { transform: scale(1); }

/* SIZES */
.r-width-0 { width: 0; }
.in-view.r-width-0 { width: 100%; }

.r-height-0 { height: 0; }
.in-view.r-height-0 { height: 100%; }

/* OTHERS */
.r-unfold-top { transform: translateY(100%) rotateX(-80deg); }
.in-view.r-unfold-top { transform: none; }