.elementor-32 .elementor-element.elementor-element-33ffb96{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-32 .elementor-element.elementor-element-33ffb96:not(.elementor-motion-effects-element-type-background), .elementor-32 .elementor-element.elementor-element-33ffb96 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(90deg, #00467F 0%, #0E7ACA 100%);}.elementor-32 .elementor-element.elementor-element-f9fbffb{--display:flex;}.elementor-32 .elementor-element.elementor-element-7d46dd6 .elementor-heading-title{color:#FFFFFF;}.elementor-32 .elementor-element.elementor-element-5ec49fb{color:#FFFFFF;}.elementor-32 .elementor-element.elementor-element-831be55{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-32 .elementor-element.elementor-element-1a7ded5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-32 .elementor-element.elementor-element-c1e026b{--display:flex;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-32 .elementor-element.elementor-element-404bad3 img{width:100%;height:550px;object-fit:cover;object-position:center center;border-radius:15px 15px 15px 15px;}.elementor-32 .elementor-element.elementor-element-0db1071{--display:flex;--justify-content:flex-end;}.elementor-32 .elementor-element.elementor-element-08961d0 img{width:100%;height:300px;object-fit:cover;object-position:center center;border-radius:15px 15px 15px 15px;}.elementor-32 .elementor-element.elementor-element-923b899{width:var( --container-widget-width, 30% );max-width:30%;margin:100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:30%;--container-widget-flex-grow:0;text-align:center;}.elementor-32 .elementor-element.elementor-element-40426fb{width:var( --container-widget-width, 30% );max-width:30%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;--container-widget-width:30%;--container-widget-flex-grow:0;text-align:center;}.elementor-32 .elementor-element.elementor-element-f141241{width:var( --container-widget-width, 30% );max-width:30%;margin:100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:30%;--container-widget-flex-grow:0;text-align:center;}body.elementor-page-32:not(.elementor-motion-effects-element-type-background), body.elementor-page-32 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://remi-magenties.fr/wp-content/uploads/2025/07/elipse-haut-gauche-1.png");background-position:top left;background-repeat:no-repeat;background-size:contain;}:root{--page-title-display:none;}@media(max-width:1600px){.elementor-32 .elementor-element.elementor-element-923b899{--container-widget-width:40%;--container-widget-flex-grow:0;width:var( --container-widget-width, 40% );max-width:40%;}.elementor-32 .elementor-element.elementor-element-40426fb{--container-widget-width:40%;--container-widget-flex-grow:0;width:var( --container-widget-width, 40% );max-width:40%;}.elementor-32 .elementor-element.elementor-element-f141241{--container-widget-width:40%;--container-widget-flex-grow:0;width:var( --container-widget-width, 40% );max-width:40%;}}@media(max-width:767px){.elementor-32 .elementor-element.elementor-element-831be55{--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-32 .elementor-element.elementor-element-923b899{width:var( --container-widget-width, 95% );max-width:95%;margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:95%;--container-widget-flex-grow:0;}.elementor-32 .elementor-element.elementor-element-40426fb{width:var( --container-widget-width, 95% );max-width:95%;--container-widget-width:95%;--container-widget-flex-grow:0;}.elementor-32 .elementor-element.elementor-element-f141241{width:var( --container-widget-width, 95% );max-width:95%;margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:95%;--container-widget-flex-grow:0;}}/* Start custom CSS for html, class: .elementor-element-e50de9d */.timeline-container {
            max-width: 1400px;
            margin: 0 auto;
            padding: 40px 20px;
        }

        .timeline {
            position: relative;
            padding: 20px 0;
        }

        .timeline::before {
            content: '';
            position: absolute;
            left: 50%;
            top: 0;
            bottom: 0;
            width: 4px;
            background: linear-gradient(180deg, #00467F 0%, #0E7ACA 100%);
            transform: translateX(-50%);
            border-radius: 2px;
        }

        .timeline-item {
            position: relative;
            margin-bottom: 60px;
            width: 100%;
            display: flex;
            align-items: center;
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 0.6s ease forwards;
        }

        .timeline-item:nth-child(1) { animation-delay: 0.2s; }
        .timeline-item:nth-child(2) { animation-delay: 0.4s; }
        .timeline-item:nth-child(3) { animation-delay: 0.6s; }
        .timeline-item:nth-child(4) { animation-delay: 0.8s; }
        .timeline-item:nth-child(5) { animation-delay: 1.0s; }

        .timeline-item:nth-child(odd) {
            flex-direction: row;
        }

        .timeline-item:nth-child(even) {
            flex-direction: row-reverse;
        }

        .timeline-content {
            background: #ffffff;
            border-radius: 16px;
            padding: 30px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            width: 45%;
            position: relative;
            border: 1px solid #e8ecf4;
            transition: all 0.3s ease;
        }

        .timeline-content:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
        }

        .timeline-content::before {
            content: '';
            position: absolute;
            top: 50%;
            width: 0;
            height: 0;
            border: 15px solid transparent;
            transform: translateY(-50%);
        }

        .timeline-item:nth-child(odd) .timeline-content::before {
            right: -30px;
            border-left-color: #ffffff;
        }

        .timeline-item:nth-child(even) .timeline-content::before {
            left: -30px;
            border-right-color: #ffffff;
        }

        .timeline-marker {
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 20px;
            height: 20px;
            border-radius: 50%;
            background: linear-gradient(135deg, #0E7ACA 0%, #764ba2 100%);
            border: 4px solid #ffffff;
            box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.2);
            z-index: 10;
            transition: all 0.3s ease;
        }

        .timeline-marker:hover {
            transform: translateX(-50%) scale(1.3);
            box-shadow: 0 0 0 8px rgba(102, 126, 234, 0.3);
        }

        .timeline-date {
            font-size: 14px;
            font-weight: 600;
            color: #00467F;
            margin-bottom: 8px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .timeline-title {
            font-size: 22px;
            font-weight: 700;
            color: #00467F;
            margin-bottom: 12px;
            line-height: 1.3;
        }

        .timeline-company {
            font-size: 16px;
            color: #00467F;
            font-weight: 600;
            margin-bottom: 16px;
        }

        .timeline-description {
            font-size: 15px;
            color: #4a5568;
            line-height: 1.6;
            margin-bottom: 16px;
        }

        .timeline-skills {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
        }

        .skill-tag {
            background: linear-gradient(135deg, #00467F 0%, #0E7ACA 100%);
            color: white;
            padding: 4px 12px;
            border-radius: 20px;
            font-size: 12px;
            font-weight: 500;
            transition: all 0.3s ease;
        }

        .skill-tag:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(102, 126, 234, 0.3);
        }

        @keyframes fadeInUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* Responsive Design */
        @media (max-width: 768px) {
            .timeline::before {
                left: 30px;
            }

            .timeline-item {
                flex-direction: row !important;
                align-items: flex-start;
            }

            .timeline-content {
                width: calc(100% - 80px);
                margin-left: 60px;
            }

            .timeline-content::before {
                left: -30px !important;
                right: auto !important;
                border-right-color: #ffffff !important;
                border-left-color: transparent !important;
            }

            .timeline-marker {
                left: 30px;
            }

            .timeline-title {
                font-size: 18px;
            }

            .timeline-container {
                padding: 20px 10px;
            }
        }/* End custom CSS */