.elementor-16366 .elementor-element.elementor-element-13bd2ba{--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;--justify-content:center;--align-items:flex-start;--overlay-opacity:0.53;--padding-top:4em;--padding-bottom:6em;--padding-left:0em;--padding-right:0em;}.elementor-16366 .elementor-element.elementor-element-13bd2ba:not(.elementor-motion-effects-element-type-background), .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-16366 .elementor-element.elementor-element-13bd2ba::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-background-video-container::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .e-con-inner > .elementor-background-video-container::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-background-slideshow::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .e-con-inner > .elementor-background-slideshow::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-size:contain;}.elementor-16366 .elementor-element.elementor-element-aae6eb5{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-16366 .elementor-element.elementor-element-feb0bc4{text-align:start;}.elementor-16366 .elementor-element.elementor-element-feb0bc4 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-09fbf7d );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-16366 .elementor-element.elementor-element-aa7a7f2{width:100%;max-width:100%;margin:0em 6em calc(var(--kit-widget-spacing, 0px) + 0em) 0em;font-family:var( --e-global-typography-d0b1385-font-family ), Sans-serif;font-size:var( --e-global-typography-d0b1385-font-size );font-weight:var( --e-global-typography-d0b1385-font-weight );text-transform:var( --e-global-typography-d0b1385-text-transform );line-height:var( --e-global-typography-d0b1385-line-height );color:var( --e-global-color-text );}.elementor-16366 .elementor-element.elementor-element-aa7a7f2 p{margin-block-end:30px;}.elementor-16366 .elementor-element.elementor-element-365ce41{--spacer-size:50px;}.elementor-16366 .elementor-element.elementor-element-f7fc99d{--display:flex;--min-height:185px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-11em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;--z-index:70;}.elementor-16366 .elementor-element.elementor-element-f7fc99d:not(.elementor-motion-effects-element-type-background), .elementor-16366 .elementor-element.elementor-element-f7fc99d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://febrap.plesk.graphylabs.com/wp-content/uploads/2025/08/courbe_02.png");background-position:bottom center;background-repeat:no-repeat;background-size:cover;}.elementor-16366 .elementor-element.elementor-element-8ba0f3f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:4em;--padding-bottom:4em;--padding-left:0em;--padding-right:0em;}.elementor-16366 .elementor-element.elementor-element-8ba0f3f:not(.elementor-motion-effects-element-type-background), .elementor-16366 .elementor-element.elementor-element-8ba0f3f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-5626444 );}.elementor-16366 .elementor-element.elementor-element-2f2e42e{--display:flex;}.elementor-16366 .elementor-element.elementor-element-2f2e42e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-16366 .elementor-element.elementor-element-5006c35{--display:flex;--padding-top:5em;--padding-bottom:5em;--padding-left:5em;--padding-right:5em;}.elementor-16366 .elementor-element.elementor-element-5006c35:not(.elementor-motion-effects-element-type-background), .elementor-16366 .elementor-element.elementor-element-5006c35 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-16366 .elementor-element.elementor-element-572df1e .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );color:var( --e-global-color-09fbf7d );}@media(max-width:1024px){.elementor-16366 .elementor-element.elementor-element-13bd2ba{--padding-top:4em;--padding-bottom:2em;--padding-left:0em;--padding-right:0em;}.elementor-16366 .elementor-element.elementor-element-aae6eb5{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-16366 .elementor-element.elementor-element-feb0bc4 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-16366 .elementor-element.elementor-element-aa7a7f2{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 0em) 0em;font-size:var( --e-global-typography-d0b1385-font-size );line-height:var( --e-global-typography-d0b1385-line-height );}.elementor-16366 .elementor-element.elementor-element-8ba0f3f{--padding-top:2em;--padding-bottom:4em;--padding-left:1em;--padding-right:1em;}.elementor-16366 .elementor-element.elementor-element-5006c35{--padding-top:3em;--padding-bottom:3em;--padding-left:3em;--padding-right:3em;}.elementor-16366 .elementor-element.elementor-element-572df1e .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}}@media(max-width:767px){.elementor-16366 .elementor-element.elementor-element-13bd2ba::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-background-video-container::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .e-con-inner > .elementor-background-video-container::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-background-slideshow::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .e-con-inner > .elementor-background-slideshow::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-position:center center;background-size:cover;}.elementor-16366 .elementor-element.elementor-element-13bd2ba{--padding-top:2em;--padding-bottom:2em;--padding-left:0em;--padding-right:0em;}.elementor-16366 .elementor-element.elementor-element-aae6eb5{--width:100%;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-16366 .elementor-element.elementor-element-feb0bc4{text-align:start;}.elementor-16366 .elementor-element.elementor-element-feb0bc4 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-16366 .elementor-element.elementor-element-aa7a7f2{text-align:start;font-size:var( --e-global-typography-d0b1385-font-size );line-height:var( --e-global-typography-d0b1385-line-height );}.elementor-16366 .elementor-element.elementor-element-8ba0f3f{--padding-top:4em;--padding-bottom:2em;--padding-left:1em;--padding-right:1em;}.elementor-16366 .elementor-element.elementor-element-2f2e42e{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16366 .elementor-element.elementor-element-5006c35{--padding-top:2em;--padding-bottom:2em;--padding-left:2em;--padding-right:2em;}.elementor-16366 .elementor-element.elementor-element-572df1e .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}}@media(min-width:768px){.elementor-16366 .elementor-element.elementor-element-aae6eb5{--width:100%;}.elementor-16366 .elementor-element.elementor-element-2f2e42e{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-16366 .elementor-element.elementor-element-aae6eb5{--width:95%;}.elementor-16366 .elementor-element.elementor-element-2f2e42e{--width:100%;}}@media(min-width:1025px){.elementor-16366 .elementor-element.elementor-element-13bd2ba::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-background-video-container::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .e-con-inner > .elementor-background-video-container::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-background-slideshow::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .e-con-inner > .elementor-background-slideshow::before, .elementor-16366 .elementor-element.elementor-element-13bd2ba > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-attachment:fixed;}}/* Start custom CSS for html, class: .elementor-element-49f9c0b */* { margin: 0; padding: 0; box-sizing: border-box; }

        :root {
            --primary-blue: #287CAA;
            --secondary-yellow: #F8AD00;
            --dark-blue: #164A79;
            --text-color: #333333;
            --gray: #8F8F8F;
            --light-gray: #EBEBEB;
            --very-light-gray: #F8F8F8;
            --white: #FFFFFF;
        }

        body {
            font-family: 'Overpass', sans-serif;
            color: var(--text-color);
            line-height: 1.6;
            overflow-x: hidden;
            background: var(--very-light-gray);
        }

        h1, h2, h3, h4 { font-family: 'DM Sans', sans-serif; }

        .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

        /* ── BREADCRUMB ── */
        .breadcrumb { background: var(--very-light-gray); padding: 15px 0; }

        .breadcrumb-nav {
            display: flex; align-items: center; gap: 10px;
            font-size: 14px; color: var(--gray); flex-wrap: wrap;
        }

        .breadcrumb-nav a { color: var(--primary-blue); text-decoration: none; }
        .breadcrumb-nav a:hover { color: var(--dark-blue); text-decoration: underline; }
        .breadcrumb-nav .current { color: var(--text-color); font-weight: 600; }

        /* ── HERO ── */
        .hero {
            background: linear-gradient(135deg, var(--secondary-yellow) 0%, #FFD54F 100%);
            padding: 60px 20px 50px;
            position: relative;
            overflow: hidden;
        }

        .hero::before {
            content: '';
            position: absolute;
            top: -30%; right: -5%;
            width: 380px; height: 380px;
            background: rgba(255,255,255,0.15);
            border-radius: 50%;
        }

        .hero-inner {
            position: relative; z-index: 2;
            max-width: 850px; margin: 0 auto;
            text-align: center;
        }

        .hero h1 {
            font-size: clamp(32px, 5vw, 48px);
            font-weight: 800;
            text-transform: uppercase;
            color: var(--dark-blue);
            line-height: 1.1em;
            margin-bottom: 18px;
        }

        .hero-excerpt {
            font-size: clamp(16px, 2vw, 19px);
            line-height: 1.7;
            color: var(--text-color);
            font-weight: 600;
            max-width: 650px;
            margin: 0 auto 25px;
        }

        .hero-features {
            display: flex;
            gap: 20px;
            justify-content: center;
            flex-wrap: wrap;
            margin-top: 25px;
        }

        .hero-feature {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 14px;
            font-weight: 600;
            color: var(--dark-blue);
            background: rgba(255,255,255,0.5);
            padding: 8px 16px;
            border-radius: 30px;
        }

        .hero-feature svg {
            width: 18px; height: 18px;
            stroke: var(--dark-blue);
            fill: none;
            stroke-width: 2.5;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        /* ── PROGRESS BAR ── */
        .progress-bar-section {
            background: var(--white);
            padding: 20px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
            position: sticky;
            top: 0;
            z-index: 90;
        }

        .progress-inner {
            max-width: 900px;
            margin: 0 auto;
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .progress-label {
            font-size: 13px;
            font-weight: 700;
            color: var(--gray);
            text-transform: uppercase;
            letter-spacing: 0.5px;
            white-space: nowrap;
        }

        .progress-track {
            flex: 1;
            height: 8px;
            background: var(--light-gray);
            border-radius: 10px;
            overflow: hidden;
        }

        .progress-fill {
            height: 100%;
            background: linear-gradient(90deg, var(--secondary-yellow), #FFD54F);
            width: 0%;
            transition: width 0.4s ease;
            border-radius: 10px;
        }

        .progress-percent {
            font-size: 14px;
            font-weight: 700;
            color: var(--dark-blue);
            white-space: nowrap;
            min-width: 40px;
            text-align: right;
        }

        /* ── MAIN FORM LAYOUT ── */
        .form-section {
            background: var(--very-light-gray);
            padding: 50px 20px;
        }

        .form-container {
            max-width: 900px;
            margin: 0 auto;
            background: var(--white);
            padding: 50px;
            border-radius: 8px;
            box-shadow: 0 4px 25px rgba(0,0,0,0.08);
        }

        /* Steps */
        .form-step {
            display: none;
        }

        .form-step.active {
            display: block;
            animation: fadeInUp 0.5s ease;
        }

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

        .step-header {
            margin-bottom: 35px;
            padding-bottom: 20px;
            border-bottom: 3px solid var(--secondary-yellow);
        }

        .step-number {
            font-size: 13px;
            font-weight: 700;
            color: var(--gray);
            text-transform: uppercase;
            letter-spacing: 0.8px;
            margin-bottom: 8px;
        }

        .step-title {
            font-size: clamp(22px, 3vw, 28px);
            font-weight: 900;
            text-transform: uppercase;
            color: var(--dark-blue);
            margin-bottom: 10px;
        }

        .step-description {
            font-size: 15px;
            color: var(--gray);
            line-height: 1.7;
        }

        /* ── FORM GROUPS ── */
        .form-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
            margin-bottom: 25px;
        }

        .form-grid.single { grid-template-columns: 1fr; }

        .form-group {
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .form-label {
            font-size: 14px;
            font-weight: 700;
            color: var(--text-color);
        }

        .form-label .optional {
            font-weight: 400;
            color: var(--gray);
            font-size: 13px;
        }

        .form-input,
        .form-select,
        .form-textarea {
            padding: 12px 16px;
            border: 2px solid var(--light-gray);
            border-radius: 4px;
            background: var(--white);
            font-family: 'Overpass', sans-serif;
            font-size: 15px;
            color: var(--text-color);
            transition: all 0.25s ease;
            outline: none;
        }

        .form-input::placeholder,
        .form-textarea::placeholder {
            color: var(--gray);
            opacity: 0.6;
        }

        .form-input:focus,
        .form-select:focus,
        .form-textarea:focus {
            border-color: var(--secondary-yellow);
            background: #FFFBF0;
        }

        .form-textarea {
            min-height: 100px;
            resize: vertical;
            line-height: 1.6;
        }

        .form-select {
            appearance: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23333333' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 16px center;
            background-size: 12px;
            padding-right: 40px;
            cursor: pointer;
        }

        .form-hint {
            font-size: 13px;
            color: var(--gray);
            line-height: 1.5;
            font-style: italic;
        }

        /* ── DYNAMIC LISTS (experiences, formations, compétences) ── */
        .dynamic-list {
            display: flex;
            flex-direction: column;
            gap: 15px;
            margin-bottom: 20px;
        }

        .dynamic-item {
            background: var(--very-light-gray);
            padding: 20px;
            border-radius: 6px;
            border-left: 4px solid var(--secondary-yellow);
            position: relative;
        }

        .dynamic-item-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px;
        }

        .dynamic-item-title {
            font-size: 15px;
            font-weight: 700;
            color: var(--dark-blue);
        }

        .btn-remove {
            background: transparent;
            border: none;
            color: var(--gray);
            cursor: pointer;
            padding: 5px 10px;
            font-size: 13px;
            font-weight: 600;
            transition: color 0.2s ease;
        }

        .btn-remove:hover { color: #DC2626; }

        .btn-add {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: transparent;
            border: 2px dashed var(--light-gray);
            color: var(--primary-blue);
            padding: 12px 20px;
            border-radius: 6px;
            font-family: 'DM Sans', sans-serif;
            font-size: 14px;
            font-weight: 700;
            cursor: pointer;
            transition: all 0.25s ease;
            width: 100%;
            justify-content: center;
        }

        .btn-add:hover {
            border-color: var(--secondary-yellow);
            background: #FFFBF0;
            color: var(--dark-blue);
        }

        .btn-add svg {
            width: 16px; height: 16px;
            stroke: currentColor;
            fill: none;
            stroke-width: 2.5;
        }

        /* ── FORM NAVIGATION ── */
        .form-nav {
            display: flex;
            gap: 15px;
            margin-top: 40px;
            padding-top: 25px;
            border-top: 1px solid var(--light-gray);
        }

        .btn-nav {
            flex: 1;
            padding: 14px 25px;
            font-family: 'DM Sans', sans-serif;
            font-size: 15px;
            font-weight: 700;
            cursor: pointer;
            border: 2px solid;
            border-radius: 50px;
            transition: all 0.3s ease;
            text-align: center;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
        }

        .btn-prev {
            background: transparent;
            color: var(--dark-blue);
            border-color: var(--light-gray);
        }

        .btn-prev:hover {
            background: var(--very-light-gray);
            border-color: var(--dark-blue);
        }

        .btn-next,
        .btn-submit {
            background: var(--secondary-yellow);
            color: var(--dark-blue);
            border-color: var(--secondary-yellow);
        }

        .btn-next:hover,
        .btn-submit:hover {
            background: var(--dark-blue);
            color: var(--white);
            border-color: var(--dark-blue);
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(22,74,121,0.25);
        }

        .btn-nav svg {
            width: 16px; height: 16px;
            stroke: currentColor;
            fill: none;
            stroke-width: 2.5;
        }

        /* ── INFO BOXES ── */
        .info-box {
            background: #EEF7FF;
            border-left: 4px solid var(--primary-blue);
            padding: 16px 20px;
            margin-bottom: 25px;
            border-radius: 4px;
            font-size: 14px;
            line-height: 1.7;
            color: var(--text-color);
        }

        .info-box strong { color: var(--primary-blue); }

        /* ── AIDE SIDEBAR (optional) ── */
        .help-box {
            background: #FFFBF0;
            border-left: 4px solid var(--secondary-yellow);
            padding: 16px 20px;
            margin-bottom: 25px;
            border-radius: 4px;
            font-size: 14px;
            line-height: 1.7;
        }

        .help-box strong { color: var(--dark-blue); }

        /* ── RESPONSIVE ── */
        @media (max-width: 968px) {
            .form-container { padding: 30px 20px; }
            .form-grid { grid-template-columns: 1fr; }
            .form-nav { flex-direction: column; }
            .btn-nav { width: 100%; }
            .progress-inner { flex-direction: column; gap: 10px; }
            .progress-track { width: 100%; }
        }

        /* ── SUCCESS MESSAGE ── */
        .success-message {
            display: none;
            text-align: center;
            padding: 60px 30px;
        }

        .success-message.active { display: block; }

        .success-icon {
            width: 80px; height: 80px;
            background: linear-gradient(135deg, #2E7D50, #0A875A);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 25px;
        }

        .success-icon svg {
            width: 40px; height: 40px;
            stroke: var(--white);
            fill: none;
            stroke-width: 3;
        }

        .success-message h2 {
            font-size: 28px;
            font-weight: 900;
            text-transform: uppercase;
            color: var(--dark-blue);
            margin-bottom: 15px;
        }

        .success-message p {
            font-size: 16px;
            color: var(--gray);
            line-height: 1.7;
            margin-bottom: 30px;
        }

        .btn-download {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            background: var(--secondary-yellow);
            color: var(--dark-blue);
            padding: 16px 35px;
            border-radius: 50px;
            text-decoration: none;
            font-family: 'DM Sans', sans-serif;
            font-weight: 700;
            font-size: 16px;
            border: 2px solid var(--secondary-yellow);
            transition: all 0.3s ease;
        }

        .btn-download:hover {
            background: var(--dark-blue);
            color: var(--white);
            border-color: var(--dark-blue);
            transform: translateY(-2px);
        }

        .btn-download svg {
            width: 18px; height: 18px;
            stroke: currentColor;
            fill: none;
            stroke-width: 2.5;
        }/* End custom CSS */