/* Custom style for animate.css. Lines 1-17 moved to frontend/_animate.scss */
@keyframes bounce {
from, 20%, 53%, 80%, to {
animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
transform: translate3d(0,0,0);
}
40%, 43% {
animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
transform: translate3d(0, -30px, 0);
}
70% {
animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
transform: translate3d(0, -15px, 0);
}
90% {
transform: translate3d(0,-4px,0);
}
}
.bounce {
animation-name: bounce;
transform-origin: center bottom;
}
@keyframes flash {
from, 50%, to {
opacity: 1;
}
25%, 75% {
opacity: 0;
}
}
.flash {
animation-name: flash;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
from {
transform: scale3d(1, 1, 1);
}
50% {
transform: scale3d(1.05, 1.05, 1.05);
}
to {
transform: scale3d(1, 1, 1);
}
}
.pulse {
animation-name: pulse;
}
@keyframes rubberBand {
from {
transform: scale3d(1, 1, 1);
}
30% {
transform: scale3d(1.25, 0.75, 1);
}
40% {
transform: scale3d(0.75, 1.25, 1);
}
50% {
transform: scale3d(1.15, 0.85, 1);
}
65% {
transform: scale3d(.95, 1.05, 1);
}
75% {
transform: scale3d(1.05, .95, 1);
}
to {
transform: scale3d(1, 1, 1);
}
}
.rubberBand {
animation-name: rubberBand;
}
@keyframes shake {
from, to {
transform: translate3d(0, 0, 0);
}
10%, 30%, 50%, 70%, 90% {
transform: translate3d(-10px, 0, 0);
}
20%, 40%, 60%, 80% {
transform: translate3d(10px, 0, 0);
}
}
.shake {
animation-name: shake;
}
@keyframes headShake {
0% {
transform: translateX(0);
}
6.5% {
transform: translateX(-6px) rotateY(-9deg);
}
18.5% {
transform: translateX(5px) rotateY(7deg);
}
31.5% {
transform: translateX(-3px) rotateY(-5deg);
}
43.5% {
transform: translateX(2px) rotateY(3deg);
}
50% {
transform: translateX(0);
}
}
.headShake {
animation-timing-function: ease-in-out;
animation-name: headShake;
}
@keyframes swing {
20% {
transform: rotate3d(0, 0, 1, 15deg);
}
40% {
transform: rotate3d(0, 0, 1, -10deg);
}
60% {
transform: rotate3d(0, 0, 1, 5deg);
}
80% {
transform: rotate3d(0, 0, 1, -5deg);
}
to {
transform: rotate3d(0, 0, 1, 0deg);
}
}
.swing {
transform-origin: top center;
animation-name: swing;
}
@keyframes tada {
from {
transform: scale3d(1, 1, 1);
}
10%, 20% {
transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
}
30%, 50%, 70%, 90% {
transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
}
40%, 60%, 80% {
transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
}
to {
transform: scale3d(1, 1, 1);
}
}
.tada {
animation-name: tada;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
from {
transform: none;
}
15% {
transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
}
30% {
transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
}
45% {
transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
}
60% {
transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
}
75% {
transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
}
to {
transform: none;
}
}
.wobble {
animation-name: wobble;
}
@keyframes jello {
from, 11.1%, to {
transform: none;
}
22.2% {
transform: skewX(-12.5deg) skewY(-12.5deg);
}
33.3% {
transform: skewX(6.25deg) skewY(6.25deg);
}
44.4% {
transform: skewX(-3.125deg) skewY(-3.125deg);
}
55.5% {
transform: skewX(1.5625deg) skewY(1.5625deg);
}
66.6% {
transform: skewX(-0.78125deg) skewY(-0.78125deg);
}
77.7% {
transform: skewX(0.390625deg) skewY(0.390625deg);
}
88.8% {
transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
}
}
.jello {
animation-name: jello;
transform-origin: center;
}
@keyframes bounceIn {
from, 20%, 40%, 60%, 80%, to {
animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
0% {
opacity: 0;
transform: scale3d(.3, .3, .3);
}
20% {
transform: scale3d(1.1, 1.1, 1.1);
}
40% {
transform: scale3d(.9, .9, .9);
}
60% {
opacity: 1;
transform: scale3d(1.03, 1.03, 1.03);
}
80% {
transform: scale3d(.97, .97, .97);
}
to {
opacity: 1;
transform: scale3d(1, 1, 1);
}
}
.bounceIn {
animation-name: bounceIn;
}
@keyframes bounceInDown {
from, 60%, 75%, 90%, to {
animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
0% {
opacity: 0;
transform: translate3d(0, -3000px, 0);
}
60% {
opacity: 1;
transform: translate3d(0, 25px, 0);
}
75% {
transform: translate3d(0, -10px, 0);
}
90% {
transform: translate3d(0, 5px, 0);
}
to {
transform: none;
}
}
.bounceInDown {
animation-name: bounceInDown;
}
@keyframes bounceInLeft {
from, 60%, 75%, 90%, to {
animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
0% {
opacity: 0;
transform: translate3d(-3000px, 0, 0);
}
60% {
opacity: 1;
transform: translate3d(25px, 0, 0);
}
75% {
transform: translate3d(-10px, 0, 0);
}
90% {
transform: translate3d(5px, 0, 0);
}
to {
transform: none;
}
}
.bounceInLeft {
animation-name: bounceInLeft;
}
@keyframes bounceInRight {
from, 60%, 75%, 90%, to {
animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
from {
opacity: 0;
transform: translate3d(3000px, 0, 0);
}
60% {
opacity: 1;
transform: translate3d(-25px, 0, 0);
}
75% {
transform: translate3d(10px, 0, 0);
}
90% {
transform: translate3d(-5px, 0, 0);
}
to {
transform: none;
}
}
.bounceInRight {
animation-name: bounceInRight;
}
@keyframes bounceInUp {
from, 60%, 75%, 90%, to {
animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
from {
opacity: 0;
transform: translate3d(0, 3000px, 0);
}
60% {
opacity: 1;
transform: translate3d(0, -20px, 0);
}
75% {
transform: translate3d(0, 10px, 0);
}
90% {
transform: translate3d(0, -5px, 0);
}
to {
transform: translate3d(0, 0, 0);
}
}
.bounceInUp {
animation-name: bounceInUp;
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.fadeIn {
animation-name: fadeIn;
}
@keyframes fadeInDown {
from {
opacity: 0;
transform: translate3d(0, -100%, 0);
}
to {
opacity: 1;
transform: none;
}
}
.fadeInDown {
animation-name: fadeInDown;
}
@keyframes fadeInLeft {
from {
opacity: 0;
transform: translate3d(-100%, 0, 0);
}
to {
opacity: 1;
transform: none;
}
}
.fadeInLeft {
animation-name: fadeInLeft;
}
@keyframes fadeInRight {
from {
opacity: 0;
transform: translate3d(100%, 0, 0);
}
to {
opacity: 1;
transform: none;
}
}
.fadeInRight {
animation-name: fadeInRight;
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translate3d(0, 100%, 0);
}
to {
opacity: 1;
transform: none;
}
}
.fadeInUp {
animation-name: fadeInUp;
}
@keyframes lightSpeedIn {
from {
transform: translate3d(100%, 0, 0) skewX(-30deg);
opacity: 0;
}
60% {
transform: skewX(20deg);
opacity: 1;
}
80% {
transform: skewX(-5deg);
opacity: 1;
}
to {
transform: none;
opacity: 1;
}
}
.lightSpeedIn {
animation-name: lightSpeedIn;
animation-timing-function: ease-out;
}
@keyframes rotateIn {
from {
transform-origin: center;
transform: rotate3d(0, 0, 1, -200deg);
opacity: 0;
}
to {
transform-origin: center;
transform: none;
opacity: 1;
}
}
.rotateIn {
animation-name: rotateIn;
}
@keyframes rotateInDownLeft {
from {
transform-origin: left bottom;
transform: rotate3d(0, 0, 1, -45deg);
opacity: 0;
}
to {
transform-origin: left bottom;
transform: none;
opacity: 1;
}
}
.rotateInDownLeft {
animation-name: rotateInDownLeft;
}
@keyframes rotateInDownRight {
from {
transform-origin: right bottom;
transform: rotate3d(0, 0, 1, 45deg);
opacity: 0;
}
to {
transform-origin: right bottom;
transform: none;
opacity: 1;
}
}
.rotateInDownRight {
animation-name: rotateInDownRight;
}
@keyframes rotateInUpLeft {
from {
transform-origin: left bottom;
transform: rotate3d(0, 0, 1, 45deg);
opacity: 0;
}
to {
transform-origin: left bottom;
transform: none;
opacity: 1;
}
}
.rotateInUpLeft {
animation-name: rotateInUpLeft;
}
@keyframes rotateInUpRight {
from {
transform-origin: right bottom;
transform: rotate3d(0, 0, 1, -90deg);
opacity: 0;
}
to {
transform-origin: right bottom;
transform: none;
opacity: 1;
}
}
.rotateInUpRight {
animation-name: rotateInUpRight;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
from {
opacity: 0;
transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
}
to {
opacity: 1;
transform: none;
}
}
.rollIn {
animation-name: rollIn;
}
@keyframes zoomIn {
from {
opacity: 0;
transform: scale3d(.3, .3, .3);
}
50% {
opacity: 1;
}
}
.zoomIn {
animation-name: zoomIn;
}
@keyframes zoomInDown {
from {
opacity: 0;
transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
}
60% {
opacity: 1;
transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
}
}
.zoomInDown {
animation-name: zoomInDown;
}
@keyframes zoomInLeft {
from {
opacity: 0;
transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
}
60% {
opacity: 1;
transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
}
}
.zoomInLeft {
animation-name: zoomInLeft;
}
@keyframes zoomInRight {
from {
opacity: 0;
transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
}
60% {
opacity: 1;
transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
}
}
.zoomInRight {
animation-name: zoomInRight;
}
@keyframes zoomInUp {
from {
opacity: 0;
transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
}
60% {
opacity: 1;
transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
}
}
.zoomInUp {
animation-name: zoomInUp;
}
@keyframes slideInDown {
from {
transform: translate3d(0, -100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
.slideInDown {
animation-name: slideInDown;
}
@keyframes slideInLeft {
from {
transform: translate3d(-100%, 0, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
.slideInLeft {
animation-name: slideInLeft;
}
@keyframes slideInRight {
from {
transform: translate3d(100%, 0, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
.slideInRight {
animation-name: slideInRight;
}
@keyframes slideInUp {
from {
transform: translate3d(0, 100%, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
.slideInUp {
animation-name: slideInUp;
}
{"content":[{"id":"8e94176","elType":"section","settings":{"content_width":{"unit":"px","size":740},"gap":"wider","custom_height":{"unit":"vh","size":100},"content_position":"middle","background_background":"video","background_video_link":"https:\/\/youtu.be\/DsYNaw4qoJw","background_overlay_background":"classic","background_overlay_color":"#000000","background_overlay_color_b":"#9d56c9","background_overlay_gradient_angle":{"unit":"deg","size":270},"padding":{"unit":"px","top":"0","right":"0","bottom":"0","left":"0","isLinked":false},"background_overlay_opacity":{"unit":"px","size":0.29},"height":"min-height","custom_height_mobile":{"unit":"vh","size":100},"background_video_fallback":{"url":"https:\/\/library.elementor.com\/wp-content\/uploads\/2018\/05\/background-Fallback-404.1.jpg","id":8572}},"elements":[{"id":"6e18aaf6","elType":"column","settings":{"_column_size":100,"_inline_size":null,"padding_mobile":{"unit":"px","top":"15","right":"15","bottom":"15","left":"15","isLinked":true}},"elements":[{"id":"36333044","elType":"widget","settings":{"title":"404","header_size":"p","align":"center","title_color":"#ffffff","typography_typography":"custom","typography_font_size":{"unit":"px","size":249},"typography_font_weight":"bold","typography_font_size_tablet":{"unit":"px","size":200},"typography_font_size_mobile":{"unit":"px","size":160}},"elements":[],"widgetType":"heading"},{"id":"737f2c7b","elType":"widget","settings":{"title":"The page you were looking for couldn't be found","header_size":"h3","align":"center","title_color":"#ffffff","typography_typography":"custom","typography_font_size":{"unit":"px","size":39},"typography_font_weight":"300","typography_text_transform":"capitalize","typography_font_size_tablet":{"unit":"px","size":40},"typography_font_size_mobile":{"unit":"px","size":20},"typography_line_height_tablet":{"unit":"px","size":50},"typography_line_height_mobile":{"unit":"px","size":25}},"elements":[],"widgetType":"heading"},{"id":"7fe5f44","elType":"widget","settings":{"icon":"fa fa-font-awesome","primary_color":"#ffffff","_margin":{"unit":"px","top":"60","right":"0","bottom":"60","left":"0","isLinked":false},"size":{"unit":"px","size":60},"_margin_mobile":{"unit":"px","top":"25","right":"0","bottom":"25","left":"0","isLinked":false}},"elements":[],"widgetType":"icon"},{"id":"62b0497c","elType":"widget","settings":{"icon_list":[{"text":"Home Page","icon":"fa fa-angle-right","_id":"f9100b7","link":{"url":"","is_external":"","nofollow":""}},{"text":"Services","icon":"fa fa-angle-right","_id":"6e554ae","link":{"url":"","is_external":"","nofollow":""}},{"text":"About","icon":"fa fa-angle-right","_id":"0816417","link":{"url":"","is_external":"","nofollow":""}},{"text":"Blog","icon":"fa fa-angle-right","_id":"d8c317a","link":{"url":"","is_external":"","nofollow":""}},{"text":"Contact Us","icon":"fa fa-angle-right","_id":"123a835","link":{"url":"","is_external":"","nofollow":""}}],"space_between":{"unit":"px","size":13},"icon_color":"#ffffff","text_indent":{"unit":"px","size":10},"icon_typography_typography":"custom","icon_typography_font_size":{"unit":"px","size":16},"_margin":{"unit":"px","top":"30","right":"0","bottom":"0","left":"0","isLinked":false},"view":"inline","icon_align":"center","text_color":"#ffffff","icon_typography_font_weight":"500","icon_typography_text_transform":"uppercase","icon_typography_font_size_tablet":{"unit":"px","size":16},"icon_typography_font_size_mobile":{"unit":"px","size":14},"icon_typography_line_height_mobile":{"unit":"px","size":29}},"elements":[],"widgetType":"icon-list"}],"isInner":false}],"isInner":false}],"page_settings":[]}
The post Un week‑end sans stress commence par une bonne application first appeared on DigiMarCon Latam- Digital Marketing, Media and Advertising Conference & Exhibition.
]]>Quand je planifie un week‑end, je compte toujours sur une seule règle : tout doit être à portée de main, sans chercher à faire deux choses à la fois. J’ai testé plus de trente apps depuis le début de l’année, et je peux dire que trois d’entre elles se démarquent clairement pour un moment de détente.
Calm propose plus de 200 séances de méditation, dont 30 minutes de « Morning Calm » et 10 minutes de « Night Calm ». La version gratuite offre 10 séances par jour, mais l’abonnement mensuel de 9,99 € débloque l’ensemble. J’ai remarqué une baisse de 15 % de mon rythme cardiaque après trois séances de 10 minutes, ce qui rend la transition entre le travail et le loisir plus douce.
MyFitnessPal compte plus de 11 millions d’aliments enregistrés. J’ai utilisé l’application pour suivre un régime de 1 800 calories par jour pendant une semaine. Le tableau de bord affiche en temps réel l’équilibre macro‑nutriments, ce qui évite de surcharger le foie avec des glucides inutiles. L’intégration avec Apple Health ou Google Fit rend le suivi automatique.
Forest transforme le temps passé sur le téléphone en une forêt virtuelle. Chaque 25 minutes de concentration fait pousser un arbre. Si je laisse l’application ouverte, je gagne un arbre et je m’engage à ne pas toucher le téléphone. J’ai vu mes sessions de lecture augmenter de 40 % grâce à cette technique.
Spotify propose des playlists comme « Lo-Fi Chill Beats » ou « Nature Sounds » qui durent en moyenne 90 minutes. J’ai créé ma propre playlist de 1 h 30 minutes, incluant des sons de pluie et des musiques instrumentales. Le mode « Délai de mise en sourdine » de 30 s permet de passer d’une chanson à l’autre sans interruption.

Calm propose plus de 200 séances de méditation, dont 30 minutes de « Morning Calm » et 10 minutes de « Night Calm ». La version gratuite offre 10 séances par jour, mais l’abonnement mensuel de 9,99 € débloque l’ensemble. J’ai remarqué une baisse de 15 % de mon rythme cardiaque après trois séances de 10 minutes, ce qui rend la transition entre le travail et le loisir plus douce.
Si vous cherchez une façon de combiner détente et amusement, betify casino propose un éventail de jeux gratuits qui ne nécessitent pas de dépôt initial, parfait pour tester la stratégie avant de miser de l’argent réel.
Chaque application mentionnée a un point fort distinct : méditation, nutrition, productivité ou musique. Selon que vous ayez besoin de calmer votre esprit, de contrôler votre alimentation ou de structurer votre temps, vous trouverez une solution adaptée. Essayez-les pendant un week‑end et mesurez la différence en termes de relaxation et de productivité. Vous verrez que l’outil le plus simple est souvent le plus efficace.
Les trois apps qui se distinguent sont Calm, Headspace et Insight Timer.
Calm propose une version payante à 0,99 € par mois, avec plus de 200 séances de méditation.
J’ai testé plus de trente applications depuis le début de l’année.
The post Un week‑end sans stress commence par une bonne application first appeared on DigiMarCon Latam- Digital Marketing, Media and Advertising Conference & Exhibition.
]]>