:host,
:root {
    --color--primary: #283276;
    --color--primary-hover: #20285e;
    --color--primary-active: #181e47;
    --color--border: #ccc;
    --ft--contrasted-border-width: 0;
    --ft--contrasted-hidden: block;
    --ft-light-border: #e6e7e8;
    --ft-text-color: #58595b;
    --ft-light-hover-bg: #e6e7e8;
    --ft--toaster-border-width: 0 0 0 0.3125rem;
    --ft--color-error: #a00d10;
    --ft--border-error: #fae3e7;
    --ft--bg-error: #fff6f6;
    --ft--icon-error: var(--ft--color-error);
    --ft--color-success: #275c28;
    --ft--border-success: #dcf0cc;
    --ft--bg-success: #eff7ec;
    --ft--icon-success: var(--ft--color-success);
    --ft--color-warning: #654f29;
    --ft--border-warning: #faebcc;
    --ft--bg-warning: #fdfbee;
    --ft--icon-warning: var(--ft--color-warning);
    --ft--color-info: #005e7d;
    --ft--border-info: #c4ecf5;
    --ft--bg-info: #ecf6fb;
    --ft--icon-info: var(--ft--color-info);
    --ft--color-known-full-weak: #dbe3ff;
    --ft--color-known-full-medium: #c6dddd;
    --ft--color-known-full-default: #406bde;
    --ft--color-known-full-contrasted: #00a59b;
    --ft--color-known-uncomplete-weak: #f0e3fa;
    --ft--color-known-uncomplete-medium: #d1c8e0;
    --ft--color-known-uncomplete-default: #69408c;
    --ft--color-known-uncomplete-contrasted: #482393;
    --ft--stepper-bullet-bg: #939598;
    --ft--stepper-bullet-hover: #6d6f71;
    --ft--stepper-next-bullet-border: #bcbec0;
    --border-radius--btn: 12px;
    --pe-datepicker--day--border-radius: 12px;
    --pe-datepicker--day--bg-hover: #dbe3ff;
    --header-height: 60px;
    --ft--color-background-neutral-default-weakest: #F5F5F8;
    --ft--font-size-h1: 1.5rem;
}

@media (prefers-contrast:more) {
    :root {
        --color--primary: #181e47;
        --color--primary-hover: #10142f;
        --color--primary-active: #080a18;
        --ft--contrasted-border-width: 1px;
        --ft--contrasted-hidden: none;
        --ft-light-border: #939598;
        --ft-text-color: #414042;
        --ft-light-hover-bg: #f5f5f5;
        --ft--toaster-border-width: 1px 1px 1px 0.3125rem;
        --ft--border-error: #a00d10;
        --ft--border-success: #275c28;
        --ft--border-warning: #654f29;
        --ft--border-info: #005e7d;
        --ft--icon-error: var(--ft--bg-error);
        --ft--icon-success: var(--ft--bg-success);
        --ft--icon-warning: var(--ft--bg-warning);
        --ft--icon-info: var(--ft--bg-info);
        --ft--stepper-bullet-bg: #58595b;
        --ft--stepper-bullet-hover: #262527;
        --ft--stepper-next-bullet-border: #414042
    }
}

.high-contrast {
    --color--primary: #181e47;
    --color--primary-hover: #10142f;
    --color--primary-active: #080a18;
    --ft--contrasted-border-width: 1px;
    --ft--contrasted-hidden: none;
    --ft-light-border: #939598;
    --ft-text-color: #414042;
    --ft-light-hover-bg: #f5f5f5;
    --ft--toaster-border-width: 1px 1px 1px 0.3125rem;
    --ft--border-error: #a00d10;
    --ft--border-success: #275c28;
    --ft--border-warning: #654f29;
    --ft--border-info: #005e7d;
    --ft--icon-error: var(--ft--bg-error);
    --ft--icon-success: var(--ft--bg-success);
    --ft--icon-warning: var(--ft--bg-warning);
    --ft--icon-info: var(--ft--bg-info);
    --ft--stepper-bullet-bg: #58595b;
    --ft--stepper-bullet-hover: #262527;
    --ft--stepper-next-bullet-border: #414042
}

[type=checkbox]:checked,
[type=checkbox]:not(:checked),
[type=radio]:checked,
[type=radio]:not(:checked) {
    position: absolute;
    left: -9999px
}

.input-group-addon [type=checkbox]:checked,
.input-group-addon [type=checkbox]:not(:checked),
.input-group-addon [type=radio]:checked,
.input-group-addon [type=radio]:not(:checked) {
    position: static;
    left: 0
}

[type=checkbox]+.wrapper-label label,
[type=checkbox]+label {
    position: relative;
    padding-left: 25px;
    cursor: pointer;
    display: inline-block;
    font-weight: 400
}

[type=checkbox]+.wrapper-label label:before,
[type=checkbox]+label:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 14px;
    height: 14px;
    z-index: 0;
    border: 2px solid #878ba0;
    border-radius: 1px;
    margin-top: 2px;
    transition: .2s
}

[type=checkbox]+.wrapper-label label:after,
[type=checkbox]+.wrapper-label label:before,
[type=checkbox]+label:after,
[type=checkbox]+label:before {
    content: "";
    top: 1px;
    left: 2px;
    position: absolute;
    transition: border .25s, background-color .25s, width .2s .1s, height .2s .1s, top .2s .1s, left .2s .1s;
    z-index: 1
}

[type=checkbox]:not(:checked)+.wrapper-label label:before,
[type=checkbox]:not(:checked)+label:before {
    width: 0;
    height: 0;
    border: 3px solid transparent;
    left: 6px;
    top: 10px;
    transform: rotate(37deg);
    transform-origin: 100% 100%
}

[type=checkbox]:not(:checked)+.wrapper-label label:after,
[type=checkbox]:not(:checked)+label:after {
    height: 16px;
    width: 16px;
    background: #fff;
    border: 1px solid #878ba0;
    border-radius: 4px;
    z-index: 0
}

[type=checkbox]:checked+.wrapper-label label:before,
[type=checkbox]:checked+label:before {
    top: 1px;
    left: 3px;
    width: 7px;
    height: 10px;
    border-top: 2px solid transparent;
    border-left: 2px solid transparent;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(37deg);
    transform-origin: 100% 100%
}

[type=checkbox]:checked+.wrapper-label label:after,
[type=checkbox]:checked+label:after {
    width: 16px;
    height: 16px;
    border: 1px solid #283276;
    background-color: #283276;
    z-index: 0;
    border-radius: 4px
}

.candidat [type=checkbox]:checked+.wrapper-label label:after,
.candidat [type=checkbox]:checked+label:after,
.entreprise [type=checkbox]:checked+.wrapper-label label:after,
.entreprise [type=checkbox]:checked+label:after {
    border-color: #283276;
    background-color: #283276
}

[type=checkbox]:disabled+.wrapper-label label:after,
[type=checkbox]:disabled+label:after {
    background-color: #e6e7ec;
    border-color: #b5b8c5
}

[type=checkbox]:disabled:checked+.wrapper-label label:after,
[type=checkbox]:disabled:checked+label:after {
    background-color: #878ba0;
    border-color: #878ba0
}

[type=checkbox]:disabled:checked+.wrapper-label label:before,
[type=checkbox]:disabled:checked+label:before {
    border-right-color: #e6e7ec;
    border-bottom-color: #e6e7ec
}

[type=checkbox]:disabled+.wrapper-label label,
[type=checkbox]:disabled+label {
    cursor: default
}

[type=radio]:checked+.wrapper-label label,
[type=radio]:checked+label,
[type=radio]:not(:checked)+.wrapper-label label,
[type=radio]:not(:checked)+label {
    position: relative;
    padding-left: 25px;
    cursor: pointer;
    display: inline-block;
    transition: .28s ease
}

[type=radio]+.wrapper-label label:after,
[type=radio]+.wrapper-label label:before,
[type=radio]+label:after,
[type=radio]+label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    margin: 0 0 0 2px;
    width: 16px;
    height: 16px;
    z-index: 0;
    background: #fff;
    transition: transform .28s ease
}

[type=radio]:not(:checked)+.wrapper-label label:before,
[type=radio]:not(:checked)+label:before {
    border-radius: 50%;
    border: 1px solid #878ba0
}

[type=radio]:not(:checked)+.wrapper-label label:after,
[type=radio]:not(:checked)+label:after {
    border-radius: 50%;
    border: 1px solid #5a5a5a;
    z-index: -1;
    transform: scale(0)
}

[type=radio]:checked+.wrapper-label label:before,
[type=radio]:checked+label:before {
    border-radius: 50%;
    border: 1px solid #283276
}

[type=checkbox]:focus+.wrapper-label label:after,
[type=checkbox]:focus+label:after,
[type=radio]:focus:checked+.wrapper-label label:before,
[type=radio]:focus:checked+label:before,
[type=radio]:focus:not(:checked)+.wrapper-label label:before,
[type=radio]:focus:not(:checked)+label:before {
    outline: thin dotted #000;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: 0
}

.with-checked-bg [type=radio]:focus:checked+.wrapper-label label:before,
.with-checked-bg [type=radio]:focus:checked+label:before,
.with-checked-bg [type=radio]:focus:not(:checked)+.wrapper-label label:before,
.with-checked-bg [type=radio]:focus:not(:checked)+label:before {
    outline: none
}

[type=radio]:checked+.wrapper-label label:after,
[type=radio]:checked+label:after {
    border-radius: 50%;
    border: 1px solid #283276;
    background-color: #283276;
    z-index: 0;
    transform: scale(.5)
}

.entreprise [type=radio]:checked+.wrapper-label label:after,
.entreprise [type=radio]:checked+label:after {
    border-color: #283276;
    background-color: #283276
}

.entreprise [type=radio]:checked+.wrapper-label label:before,
.entreprise [type=radio]:checked+label:before {
    border: 1px solid #283276
}

.candidat [type=radio]:checked+.wrapper-label label:after,
.candidat [type=radio]:checked+label:after {
    border-color: #283276;
    background-color: #283276
}

.candidat [type=radio]:checked+.wrapper-label label:before,
.candidat [type=radio]:checked+label:before {
    border: 1px solid #283276
}

[type=radio]:disabled+.wrapper-label label:after,
[type=radio]:disabled+.wrapper-label label:before,
[type=radio]:disabled+label:after,
[type=radio]:disabled+label:before {
    background: #e6e7ec;
    border-color: #878ba0
}

[type=radio]:disabled+.wrapper-label label:after,
[type=radio]:disabled+label:after {
    background-color: #b5b8c5
}

[type=checkbox]:checked+.wrapper-label label,
[type=checkbox]:checked+label,
[type=radio]:checked+.wrapper-label label,
[type=radio]:checked+label {
    font-weight: 700
}

[type=checkbox]:disabled+.wrapper-label label,
[type=checkbox]:disabled+label,
[type=radio]:disabled+.wrapper-label label,
[type=radio]:disabled+label {
    color: #878ba0
}

.with-checked-bg [type=checkbox]:checked+.wrapper-label label,
.with-checked-bg [type=checkbox]:checked+label,
.with-checked-bg [type=radio]:checked+.wrapper-label label,
.with-checked-bg [type=radio]:checked+label {
    background: #e4e4e4
}

.with-checked-bg [type=checkbox]:focus+.wrapper-label label,
.with-checked-bg [type=checkbox]:focus+label,
.with-checked-bg [type=radio]:focus+.wrapper-label label,
.with-checked-bg [type=radio]:focus+label {
    background: #e4e4e4;
    outline: thin dotted !important;
    outline: 3px auto -webkit-focus-ring-color !important;
    outline-offset: -2px
}

.with-checked-bg [type=checkbox]+.wrapper-label label,
.with-checked-bg [type=checkbox]+label,
.with-checked-bg [type=radio]+.wrapper-label label,
.with-checked-bg [type=radio]+label {
    background: transparent;
    border-radius: 4px;
    padding: 8px 16px 8px 32px
}

.with-checked-bg [type=checkbox]+.wrapper-label label:after,
.with-checked-bg [type=checkbox]+.wrapper-label label:before,
.with-checked-bg [type=checkbox]+label:after,
.with-checked-bg [type=checkbox]+label:before,
.with-checked-bg [type=radio]+.wrapper-label label:after,
.with-checked-bg [type=radio]+.wrapper-label label:before,
.with-checked-bg [type=radio]+label:after,
.with-checked-bg [type=radio]+label:before {
    left: 7px;
    top: 9px
}

.with-checked-bg .checkbox {
    margin-top: 8px;
    margin-bottom: 8px
}

.checked-block [type=radio]:not(:checked)+.wrapper-label label,
.checked-block [type=radio]:not(:checked)+label {
    padding: 10px 15px 10px 40px
}

.checked-block [type=radio]:checked+.wrapper-label label,
.checked-block [type=radio]:checked+label {
    padding-left: 40px
}

.checked-block label {
    display: block !important;
    border: 2px solid transparent;
    border-radius: 4px;
    transition: border .3s;
    padding: 10px 15px 10px 40px
}

.checked-block input:focus+.wrapper-label label,
.checked-block input:focus+label,
.checked-block label:hover {
    border: 2px solid #cdcfd8
}

.checked-block input:checked+.wrapper-label label,
.checked-block input:checked+label {
    border: 2px solid #283276
}

.checked-block [type=radio]+.wrapper-label label:after,
.checked-block [type=radio]+.wrapper-label label:before,
.checked-block [type=radio]+label:after,
.checked-block [type=radio]+label:before {
    left: 10px;
    top: 50%
}

.checked-block [type=radio]+.wrapper-label label:before,
.checked-block [type=radio]+label:before {
    transform: translateY(-50%)
}

.checked-block [type=radio]+.wrapper-label label:after,
.checked-block [type=radio]+label:after {
    transform: translateY(-50%) scale(.5)
}

.candidat .checked-block input:checked+.wrapper-label label,
.candidat .checked-block input:checked+label,
.entreprise .checked-block input:checked+.wrapper-label label,
.entreprise .checked-block input:checked+label {
    border: 2px solid #283276
}

.checkbox.with-help,
.radio.with-help {
    padding-left: 25px
}

.checkbox.with-help label,
.radio.with-help label {
    display: inline;
    padding-left: 0;
    position: static
}

.steps {
    z-index: 0;
    padding: 0
}

.steps h1 {
    margin-bottom: 25px
}

.steps .steps-list,
.steps ul {
    margin-top: 40px;
    margin-bottom: 40px
}

.steps .steps-list li,
.steps ul li {
    list-style: none
}

.steps .steps-list li .statut,
.steps ul li .statut {
    display: none
}

.steps .steps-list li.past a>span:first-child,
.steps .steps-list li.past button>span:first-child,
.steps ul li.past a>span:first-child,
.steps ul li.past button>span:first-child {
    text-decoration: underline
}

.steps .steps-list li.past a:focus>span:first-child,
.steps .steps-list li.past a:hover>span:first-child,
.steps .steps-list li.past button:focus>span:first-child,
.steps .steps-list li.past button:hover>span:first-child,
.steps ul li.past a:focus>span:first-child,
.steps ul li.past a:hover>span:first-child,
.steps ul li.past button:focus>span:first-child,
.steps ul li.past button:hover>span:first-child {
    text-decoration: none
}

.steps .steps-list li a,
.steps .steps-list li button,
.steps ul li a,
.steps ul li button {
    padding: 0;
    display: block
}

.steps .steps-list li a:focus,
.steps .steps-list li a:hover,
.steps .steps-list li button:focus,
.steps .steps-list li button:hover,
.steps ul li a:focus,
.steps ul li a:hover,
.steps ul li button:focus,
.steps ul li button:hover {
    background-color: transparent
}

.steps .steps-list li a:focus .circle,
.steps .steps-list li a:hover .circle,
.steps .steps-list li button:focus .circle,
.steps .steps-list li button:hover .circle,
.steps ul li a:focus .circle,
.steps ul li a:hover .circle,
.steps ul li button:focus .circle,
.steps ul li button:hover .circle {
    background: #fff;
    color: var(--color-decorative-blue-weak, #b0bff0)
}

.steps .steps-list li a:focus,
.steps .steps-list li button:focus,
.steps ul li a:focus,
.steps ul li button:focus {
    background: none
}

.steps .steps-list li>span:first-child,
.steps .steps-list li a>span:first-child,
.steps .steps-list li button>span:first-child,
.steps ul li>span:first-child,
.steps ul li a>span:first-child,
.steps ul li button>span:first-child {
    position: relative;
    vertical-align: middle;
    display: inline-block;
    max-width: 70%
}

.steps .steps-list li.active>div,
.steps .steps-list li.active>span,
.steps ul li.active>div,
.steps ul li.active>span {
    font-weight: 700;
    color: #283276
}

.steps .steps-list li.active .circle,
.steps ul li.active .circle {
    background-color: #406bde;
    border-color: #406bde;
    color: #fff
}

.steps .steps-list li.active:not(.past) a,
.steps .steps-list li.active:not(.past) button,
.steps ul li.active:not(.past) a,
.steps ul li.active:not(.past) button {
    color: #283276
}

.steps .steps-list li.active:not(.past) .statut,
.steps ul li.active:not(.past) .statut {
    display: block
}

.steps .steps-list li.dotted,
.steps ul li.dotted {
    display: none
}

.steps .steps-list li:before,
.steps ul li:before {
    content: "";
    display: block;
    background: url(gfx/step-bg-circle.svg) repeat-y 100% 0;
    height: 40px;
    margin-right: .875rem;
    z-index: 1
}

.steps .steps-list li:first-child:before,
.steps ul li:first-child:before {
    content: none
}

.steps .steps-list li .steps-list li:before,
.steps .steps-list li ul li:before,
.steps ul li .steps-list li:before,
.steps ul li ul li:before {
    height: 20px
}

.steps .steps-list li .steps-list li:first-child:before,
.steps .steps-list li ul li:first-child:before,
.steps ul li .steps-list li:first-child:before,
.steps ul li ul li:first-child:before {
    content: ""
}

.steps .steps-list li .steps-list,
.steps .steps-list li ul,
.steps ul li .steps-list,
.steps ul li ul {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0
}

.steps .steps-list li .steps-list li .circle,
.steps .steps-list li ul li .circle,
.steps ul li .steps-list li .circle,
.steps ul li ul li .circle {
    width: 12px;
    height: 12px;
    padding: 0;
    margin-right: 9px;
    vertical-align: -2px;
    margin-left: 21px
}

.steps .steps-list li .steps-list li a,
.steps .steps-list li .steps-list li button,
.steps .steps-list li ul li a,
.steps .steps-list li ul li button,
.steps ul li .steps-list li a,
.steps ul li .steps-list li button,
.steps ul li ul li a,
.steps ul li ul li button {
    position: relative;
    display: block
}

.steps .steps-list li .steps-list li a:focus,
.steps .steps-list li .steps-list li a:hover,
.steps .steps-list li .steps-list li button:focus,
.steps .steps-list li .steps-list li button:hover,
.steps .steps-list li ul li a:focus,
.steps .steps-list li ul li a:hover,
.steps .steps-list li ul li button:focus,
.steps .steps-list li ul li button:hover,
.steps ul li .steps-list li a:focus,
.steps ul li .steps-list li a:hover,
.steps ul li .steps-list li button:focus,
.steps ul li .steps-list li button:hover,
.steps ul li ul li a:focus,
.steps ul li ul li a:hover,
.steps ul li ul li button:focus,
.steps ul li ul li button:hover {
    text-decoration: none
}

.steps .steps-list li .steps-list li:not(.active) .circle,
.steps .steps-list li ul li:not(.active) .circle,
.steps ul li .steps-list li:not(.active) .circle,
.steps ul li ul li:not(.active) .circle {
    border: 1px solid var(--color-decorative-blue-weak, #b0bff0);
    background-color: transparent
}

.steps .steps-list li .circle,
.steps ul li .circle {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    border-radius: 12px;
    width: 2rem;
    height: 2rem;
    padding: .5rem 0;
    border: 1px solid var(--color-decorative-blue-weak, #b0bff0);
    background-color: transparent;
    color: #2e2e31;
    text-align: center;
    line-height: 1;
    margin-left: 10px;
    display: inline-block;
    z-index: 2
}

.steps .steps-list li.past a:hover,
.steps .steps-list li.past button:hover,
.steps ul li.past a:hover,
.steps ul li.past button:hover {
    text-decoration: none
}

.steps .steps-list .steps-list li.past,
.steps .steps-list .steps-list li.past a,
.steps .steps-list .steps-list li.past button,
.steps .steps-list li.past>a,
.steps .steps-list li.past>button,
.steps .steps-list ul li.past,
.steps .steps-list ul li.past a,
.steps .steps-list ul li.past button,
.steps ul .steps-list li.past,
.steps ul .steps-list li.past a,
.steps ul .steps-list li.past button,
.steps ul li.past>a,
.steps ul li.past>button,
.steps ul ul li.past,
.steps ul ul li.past a,
.steps ul ul li.past button {
    color: #2e2e31 !important
}

.steps .steps-list .steps-list li.past .circle,
.steps .steps-list .steps-list li.past a .circle,
.steps .steps-list .steps-list li.past button .circle,
.steps .steps-list li.past>a .circle,
.steps .steps-list li.past>button .circle,
.steps .steps-list ul li.past .circle,
.steps .steps-list ul li.past a .circle,
.steps .steps-list ul li.past button .circle,
.steps ul .steps-list li.past .circle,
.steps ul .steps-list li.past a .circle,
.steps ul .steps-list li.past button .circle,
.steps ul li.past>a .circle,
.steps ul li.past>button .circle,
.steps ul ul li.past .circle,
.steps ul ul li.past a .circle,
.steps ul ul li.past button .circle {
    color: #283276;
    background: var(--color-decorative-blue-weak, #b0bff0);
    border-color: transparent
}

.mobile-steps {
    font-size: 12px;
    font-size: .75rem;
    position: relative
}

.mobile-steps .warning {
    color: #fff !important
}

.mobile-steps .steps-list li:before,
.mobile-steps ul li:before {
    content: none
}

.mobile-steps .nav {
    display: table;
    margin: 15px 0;
    width: 100%
}

.mobile-steps .nav a,
.mobile-steps .nav button {
    top: 0
}

.mobile-steps .dotted {
    background: url(gfx/step-bg-circle-y.svg) repeat-x 0 0;
    position: absolute;
    width: 76%;
    height: 5px;
    left: 11%;
    top: 17px
}

.mobile-steps.steps .steps-list li.active>span:first-child,
.mobile-steps.steps ul li.active>span:first-child {
    color: #fff
}

.mobile-steps .nav>li {
    display: table-cell;
    text-align: center;
    width: auto;
    min-width: 65px
}

.mobile-steps .nav>li .circle {
    display: inline-block;
    margin: 0;
    background: #fff;
    position: relative;
    vertical-align: top;
    box-shadow: 0 0 0 6px #fff;
    text-decoration: none !important
}

.mobile-steps .nav>li .circle+span {
    display: block;
    text-align: center;
    line-height: 12px;
    margin-top: 8px
}

.mobile-steps .nav>li a:focus,
.mobile-steps .nav>li button:focus {
    outline-offset: 8px
}

.mobile-steps .steps-list li.active span+span,
.mobile-steps ul li.active span+span {
    color: #283276
}

@media print {
    .panel-left {
        display: none
    }

    .form {
        padding: 0 0 10px
    }
}

.app-mobile-pe .wrapper .content .errorMessage,
.errorMessage {
    --radius-content-box-radius-default: 12px;
    --color-background-error-default: #ffeceb;
    color: initial;
    text-align: left;
    margin-bottom: .75rem;
    border-radius: var(--radius-content-box-radius-default, 12px);
    background: var(--color-background-error-default, #ffeceb)
}

.app-mobile-pe .wrapper .content .errorMessage .error-outer,
.app-mobile-pe .wrapper .content .errorMessage p,
.errorMessage .error-outer,
.errorMessage p {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
    gap: 1rem
}

.app-mobile-pe .wrapper .content .errorMessage .error-outer,
.app-mobile-pe .wrapper .content .errorMessage p:before,
.errorMessage .error-outer,
.errorMessage p:before {
    content: "";
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.5 24c10 0 12-2 12-12s-2-12-12-12-12 2-12 12 2 12 12 12zm0-8.875A1.125 1.125 0 0 1 11.375 14V6a1.125 1.125 0 0 1 2.25 0v8c0 .621-.504 1.125-1.125 1.125zm-1.125 2.25c0-.938.187-1.125 1.125-1.125.937 0 1.125.188 1.125 1.125 0 .938-.188 1.125-1.125 1.125-.938 0-1.125-.188-1.125-1.125z' fill='%23F04438'/%3E%3C/svg%3E");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    vertical-align: bottom;
    display: inline-block
}

.app-mobile-pe .wrapper .content .successMessage,
.successMessage {
    --radius-content-box-radius-default: 12px;
    --color-background-success-default-weaker: #d9f6e8;
    color: initial;
    text-align: left;
    margin-bottom: .75rem;
    padding: 12px;
    border-radius: var(--radius-content-box-radius-default, 12px);
    background: var(--color-background-success-default-weaker, #d9f6e8)
}

.app-mobile-pe .wrapper .content .successMessage p,
.successMessage p {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
    gap: 1rem
}

.app-mobile-pe .wrapper .content .successMessage p:before,
.successMessage p:before {
    content: "";
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.5 24c10 0 12-2 12-12s-2-12-12-12-12 2-12 12 2 12 12 12zm6.579-15.535a1.125 1.125 0 1 0-1.158-1.93 27.056 27.056 0 0 0-8.384 7.886 9.142 9.142 0 0 0-2.413-2.357 1.125 1.125 0 0 0-1.248 1.872 6.893 6.893 0 0 1 2.087 2.189l.572.954a1.125 1.125 0 0 0 1.901.045l.766-1.148a24.806 24.806 0 0 1 7.877-7.511z' fill='%2309AA5F'/%3E%3C/svg%3E");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    vertical-align: bottom;
    display: inline-block
}

body {
    font-size: 16px;
    font-size: 1rem;
    background: var(--color-background-neutral-default-weaker, #e6e7ec)
}

.main .wrapper.container,
.wrapper .container {
    background: #fff;
    margin-top: 2rem;
    box-shadow: var(--shadow-panel-x, -2px) var(--shadow-panel-y, 0) var(--shadow-panel-blur, 8px) 0 var(--shadow-panel-color, rgba(15, 20, 56, .08));
    border-radius: 12px;
    padding: 32px 40px;
    position: relative
}

@media (max-width:30em) {

    .main .wrapper.container,
    .wrapper .container {
        border-radius: 0;
        padding: 24px !important
    }
}

@media (max-width:425px) {

    .main .wrapper.container,
    .wrapper .container {
        margin-top: 30px
    }
}

.main .wrapper.container+.container,
.wrapper .container+.container {
    padding: 20px;
    text-align: center;
    margin-top: 15px
}

.main .wrapper.container+.container.container-with-link,
.wrapper .container+.container.container-with-link {
    text-align: initial
}

.main .wrapper.container.container-with-link,
.wrapper .container.container-with-link {
    padding: 10px 10px 10px 20px;
    max-width: 37.5rem
}

.main .wrapper.container.container-with-link .t5,
.wrapper .container.container-with-link .t5 {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.35
}

.main .wrapper.container.container-with-link .t5 [class*=icon],
.wrapper .container.container-with-link .t5 [class*=icon] {
    position: relative;
    top: -4px;
    font-size: 21px;
    font-size: 1.3125rem;
    color: #9ea2b3
}

.main .wrapper.container.container-with-link ul,
.wrapper .container.container-with-link ul {
    padding: 0 16px
}

.main .wrapper.small-container,
.wrapper.small-container {
    max-width: 445px
}

main {
    overflow: unset;
    padding-top: 0
}

.main {
    background: none
}

.main-container {
    padding: 32px 40px;
    box-shadow: var(--shadow-panel-x, -2px) var(--shadow-panel-y, 0) var(--shadow-panel-blur, 8px) 0 var(--shadow-panel-color, rgba(15, 20, 56, .08));
    border-radius: 12px;
    position: relative;
    background: #fff
}

@media (max-width:30em) {
    .main-container {
        border-radius: 0;
        padding: 24px !important
    }
}

.main-container.container {
    margin-top: 2rem
}

.main-container:not(.large-container),
.main-footer:not(.large-container) {
    max-width: 445px
}

.large-container {
    max-width: 890px
}

.block-footer,
.block-header,
.main-footer {
    text-align: center
}

.block-header .block-header-logos {
    padding: 12px 16px;
    border-radius: 12px;
    display: inline-block
}

@media (max-width:30em) {
    .block-header .block-header-logos {
        padding: 12px 8px
    }
}

.block-header .block-header-logo-republic {
    width: 70px
}

.block-header .block-header-logo-ft-pro {
    width: 194px;
    margin-left: 20px
}

.block-header .block-header-link {
    display: inline-block
}

.block-header .title {
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 300;
    margin-top: 20px
}

.block-header .subtitle {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 400;
    margin: 10px 0 9px;
    font-family: Marianne, system-ui, sans-serif !important
}

.block-header+.block-body {
    border-top: 1px solid #eee;
    padding-top: 20px
}

.block-header+main {
    border-top: 1px solid #eee;
    padding-top: 18px;
    margin-top: 18px
}

.block-header+main>.block-body {
    margin-top: 0
}

main:has(.intro) {
    border-top: none;
    margin-top: 0;
    padding-top: .5rem
}

.mb-2 {
    margin-bottom: 1rem !important
}

.pt-2 {
    padding-top: 1rem
}

.mt-2 {
    margin-top: 1rem
}

.form-wrapper {
    background-color: var(--color-background-neutral-default-weakest, #f5f5f8);
    margin: 20px -40px -32px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px
}

@media (max-width:30em) {
    .form-wrapper {
        margin: 20px -24px -32px;
        margin-top: 0
    }
}

.form-wrapper .form-collapse-wrapper {
    position: relative;
    padding: 0 40px
}

@media (max-width:30em) {
    .form-wrapper .form-collapse-wrapper {
        padding: 0 24px
    }
}

.form-wrapper .h-line {
    margin: 0
}

.form-wrapper .t4 {
    font-size: 16px;
    font-size: 1rem
}

.form-wrapper .collapse>div,
.form-wrapper .collapsing>div {
    padding: 20px 0
}

.form-wrapper .collapse.in>div,
.form-wrapper .collapsing>div {
    border-top: 1px solid #d1d3d4
}

.btn-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-align: center;
    align-items: center
}

.btn-wrapper .t4 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    white-space: nowrap
}

@media (max-width:30em) {
    .btn-wrapper .t4 {
        padding-top: 1rem;
        white-space: normal;
        font-size: .875rem
    }
}

.btn-wrapper button[aria-expanded] {
    background-color: #e6e7e8;
    width: 1.5rem;
    min-width: 1.5rem;
    height: 1.5rem;
    position: absolute;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    margin: 0
}

.btn-wrapper button[aria-expanded]:after {
    position: absolute;
    content: "";
    left: 0;
    width: 27.8125rem;
    height: 5rem;
    transform: translateX(-13.1875rem);
    background-color: transparent
}

@media (max-width:30em) {
    .btn-wrapper button[aria-expanded]:after {
        width: 90vw;
        transform: translateX(-44vw)
    }
}

.btn-wrapper button[aria-expanded][aria-expanded=false] {
    transform: translateY(3.5rem) rotate(.5turn);
    box-shadow: 0 -4px 4px 0 rgba(0, 0, 0, .1)
}

.btn-wrapper button[aria-expanded][aria-expanded=false]:after {
    top: 0
}

.btn-wrapper button[aria-expanded][aria-expanded=true] {
    transform: translateY(3.5rem) rotate(0);
    box-shadow: none
}

.btn-wrapper button[aria-expanded][aria-expanded=true]:after {
    top: -3.5rem
}

.btn-wrapper button[aria-expanded] [class^=icon-] {
    font-size: 10px;
    font-size: .625rem;
    place-self: center;
    margin: 0
}

.accessibility .btn-wrapper button[aria-expanded] {
    border: 1px solid #fff !important
}

.block-with-illustration {
    text-align: initial;
    display: -ms-flexbox;
    display: flex;
    place-items: center
}

.block-with-illustration .block-img {
    margin-right: 20px
}

.block-with-illustration .block-img img,
.block-with-illustration .block-img svg {
    width: 130px;
    max-width: 130px;
    height: auto
}

.block-with-illustration .block-list {
    -ms-flex-item-align: start;
    align-self: flex-start;
    min-height: 170px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    padding: 20px;
    border-radius: 4px;
    background: var(--color-background-primary-default-weakest, #e9e8f1);
    color: #262527
}

.block-with-illustration .block-list hr {
    width: 100%;
    margin: 20px 0;
    border-top-color: var(--color-border-neutral-default-strong, #b5b8c5)
}

.block-with-illustration .block-list ul {
    margin-bottom: 14px
}

.block-with-illustration .block-list .btn {
    margin-top: auto;
    font-weight: 500;
    margin-bottom: 0
}

.notice {
    padding: 15px
}

.notice p {
    font-family: Marianne, system-ui, sans-serif !important;
    font-size: 16px;
    font-size: 1rem;
    color: #666;
    font-weight: 300
}

.notice p.large {
    font-size: 18px;
    font-size: 1.125rem
}

.notice p .emphasis,
.notice p strong {
    font-weight: 500
}

.form-group.has-error input {
    border-color: #e3234b
}

.form-group .help-block {
    margin-top: 5px;
    text-align: left
}

.input-group .form-control:not(:first-child):not(:last-child).input-group-prepend {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px
}

.small {
    font-size: inherit
}

.content.row {
    margin-left: 0;
    margin-right: 0
}

.form-control[disabled],
fieldset[disabled] .form-control {
    cursor: default !important
}

/* 
.btn {
    margin-top: 30px
} */

.btn[type=reset] {
    margin-top: 8px
}

.f-line.submit+.btn {
    margin-top: 8px !important
}

.h-line {
    position: relative;
    width: 100%;
    margin: 1.5rem 0
}

.h-line p {
    margin: 0 auto;
    position: absolute;
    margin-top: -8px;
    width: 100%;
    display: inline-block;
    text-align: center
}

.h-line p span {
    padding: 0 8px;
    background-color: #fff
}

.form-group-with-space {
    margin-top: 25px
}

.footer-pe,
.header-pe {
    max-width: 445px;
    padding: 40px 5px;
    box-shadow: none;
    background: none;
    border: none
}

.footer-pe .container-fluid,
.header-pe .container-fluid {
    box-shadow: none
}

.footer-pe p,
.header-pe p {
    color: #414042
}

.footer-pe a,
.header-pe a {
    color: #414042;
    display: block
}

.footer-pe a abbr,
.header-pe a abbr {
    cursor: pointer !important
}

.footer-pe a:hover,
.header-pe a:hover {
    text-decoration: none;
    color: #2e2e31
}

.footer-pe .row,
.header-pe .row {
    padding-bottom: 15px
}

.footer-pe .col-xs-3,
.footer-pe .col-xs-4,
.header-pe .col-xs-3,
.header-pe .col-xs-4 {
    padding-top: 18px;
    border-right: 1px solid #cecfd3
}

.footer-pe .col-xs-3 [class*=icon-],
.footer-pe .col-xs-4 [class*=icon-],
.header-pe .col-xs-3 [class*=icon-],
.header-pe .col-xs-4 [class*=icon-] {
    margin-bottom: 4px;
    display: block;
    font-size: 20px;
    font-size: 1.25rem
}

.footer-pe .col-xs-3:last-child,
.footer-pe .col-xs-4:last-child,
.header-pe .col-xs-3:last-child,
.header-pe .col-xs-4:last-child {
    border-right: none
}

@media (max-width:30em) {
    aside .small-container {
        margin-top: 2rem !important;
        max-width: 90vw !important;
        border-radius: 12px;
        padding: 24px !important
    }

    aside a {
        display: block
    }
}

.footer-pe {
    padding-top: 70px
}

@media (max-width:30em) {
    .footer-pe {
        padding-top: 24px
    }
}

.footer-pe a {
    color: var(--color-text-content-default, #2e2e31);
    display: block
}

@media (max-width:30em) {
    .footer-pe a {
        padding: .5rem 0;
        text-align: left
    }
}

.footer-pe a:hover {
    text-decoration: none
}

@media (max-width:30em) {
    .footer-pe a br {
        display: none
    }
}

.footer-pe .row {
    margin-bottom: 5px;
    padding-bottom: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

@media (max-width:30em) {
    .footer-pe .row {
        -ms-flex-direction: column;
        flex-direction: column;
        padding-bottom: 24px
    }
}

.footer-pe .col-xs-3,
.footer-pe .col-xs-4 {
    padding-top: 4px
}

@media (max-width:30em) {

    .footer-pe .col-xs-3,
    .footer-pe .col-xs-4 {
        width: 100% !important;
        border: 0
    }
}

@media (max-width:30em) {

    .footer-pe .col-xs-3 [class*=icon-],
    .footer-pe .col-xs-4 [class*=icon-] {
        display: inline-block !important;
        margin-bottom: .125rem;
        vertical-align: bottom;
        margin-right: .5rem
    }
}

.header-pe-with-padding {
    padding-top: 34px
}

header img,
header svg {
    width: 105px;
    height: auto
}

header .t2 {
    margin: 12px auto 20px;
    font-size: 24px;
    font-size: 1.5rem
}

header .deconnexion {
    position: absolute;
    top: -23px;
    font-size: 12px;
    font-size: .75rem;
    right: 8px
}

header .deconnexion [class*=icon-] {
    vertical-align: -1px
}

.alert-success {
    color: #283276
}

.subtitle {
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400
}

[data-loading]:disabled {
    height: 40px
}

[data-loading]:disabled .loader {
    margin-top: 3px
}

.title-part {
    text-align: center;
    border-bottom: 1px solid #d1d1d1;
    line-height: 0;
    padding: 0;
    margin: 30px 0
}

.title-part span {
    background: #fff;
    padding: 0 15px;
    font-size: 12px;
    font-size: .75rem
}

.error-block+.help-block {
    margin-top: -10px
}

fieldset+fieldset {
    margin-top: 25px
}

.block-footer.t4 {
    border-top: 1px solid #eee;
    margin-top: 15px;
    margin-bottom: 0;
    padding-top: 20px
}

.block-footer.t4,
.block-footer.t4 a {
    font-size: 15px;
    font-size: .9375rem
}

form .t7 {
    color: #888;
    font-style: italic
}

.italic {
    color: #575d7d
}

button.btn {
    margin-top: 20px;
    margin-bottom: 10px
}

.add-more {
    margin-bottom: 18px;
    display: block
}

.popover .icon-success,
.popover li.message-success {
    color: var(--ft-feedback-green-50, #068148)
}

.popover .icon-error,
.popover li.message-error {
    color: var(--ft-feedback-red-50, #ba251a)
}

.popover li {
    list-style-type: none;
    margin: 5px 0
}

.popover li:first-child {
    margin: 0 0 5px
}

.confirmation [class*=icon-].icon-success {
    font-size: 50px;
    font-size: 3.125rem;
    padding-bottom: 20px;
    display: block;
    color: var(--ft-feedback-green-50, #068148)
}

.acces-erreur [class*=icon-].icon-error,
.confirmation-erreur [class*=icon-].icon-error,
.cookies [class*=icon-].icon-error {
    font-size: 50px;
    font-size: 3.125rem;
    padding-bottom: 20px;
    display: block;
    color: var(--ft-feedback-red-50, #ba251a)
}

.consentement .t7 {
    font-weight: 400;
    color: #878ba0
}

.acces-erreur .t5 {
    margin-bottom: 20px
}

.securite h2,
.securite h3 {
    margin: 20px 0 8px;
    line-height: inherit
}

.faq .t5 {
    display: block
}

.faq li {
    list-style: none
}

.faq li.question {
    margin-left: 15px;
    margin-bottom: 15px
}

.faq li.question .reponse {
    margin-left: 15px;
    padding-top: 10px;
    height: 100%
}

.faq .collapsed [class*=icon-].icon-chevron-down,
.faq [class*=icon-].icon-chevron-right {
    display: none
}

.faq .collapsed [class*=icon-].icon-chevron-right {
    display: inline
}

.faq h2 {
    margin: 8px 0
}

.faq h3 {
    margin: 5px 0
}

.t5 {
    font-size: 16px;
    font-size: 1rem
}

.confirmation p.t5 {
    color: #283276
}

.btn-lg.btn-block {
    text-transform: none
}

.acces-erreur p.t5,
.confirmation-erreur p.t5,
.cookies p.t5 {
    color: var(--ft-feedback-red-50, #ba251a)
}

.cgu header {
    margin-bottom: 30px
}

.container .fade {
    opacity: 0;
    filter: alpha(opacity=0);
    transition: opacity .5s ease-in-out
}

.container .fade.in {
    opacity: 1;
    filter: alpha(opacity=100)
}

body.navigateur-obsolete .row {
    margin: 0
}

body.navigateur-obsolete .col-xs-12 {
    padding: 0
}

body.navigateur-obsolete .btn-block {
    width: auto
}

.creation .radio-inline {
    padding-left: 0
}

.creation .control-label,
.creation label {
    color: #000
}

legend.control-label {
    font-size: 1rem
}

.connexion .alert-info {
    background: transparent;
    border: none;
    text-align: center
}

.connexion .remember {
    margin: 0;
    text-align: left
}

.connexion .remember label {
    padding-left: 8px;
    cursor: pointer
}

.connexion .remember input[type=checkbox] {
    position: relative;
    margin: 0;
    left: -8px
}

.candidat.connexion #content hr {
    margin-bottom: 35px
}

.candidat.connexion #content hr+.info {
    margin-top: -20px
}

.candidat.connexion #content .app-mobile-pe .wrapper .content .errorMessage+hr+.info,
.candidat.connexion #content .app-mobile-pe .wrapper .content .successMessage+hr+.info,
.candidat.connexion #content .errorMessage+hr+.info,
.candidat.connexion #content .successMessage+hr+.info {
    margin-top: 15px
}

.info {
    text-align: center;
    margin-bottom: 15px;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 300;
    color: #58595b
}

.info.success [class*=icon-] {
    color: var(--ft-feedback-green-50, #068148)
}

.info.error [class*=icon-] {
    color: var(--ft-feedback-red-50, #ba251a)
}

.info [class*=icon-] {
    position: relative;
    top: 2px;
    right: 3px
}

.intro {
    font-size: 14px;
    font-size: .875rem;
    margin-bottom: 15px
}

.help-link {
    color: #2baacd;
    margin-bottom: 30px
}

.help-link .help-icon {
    font-size: 16px;
    font-size: 1rem;
    position: relative;
    top: 2px
}

.username-wrapper {
    background-color: #f3f3f3;
    padding: 20px;
    text-align: center;
    color: #666;
    font-size: 14px;
    font-size: .875rem;
    margin-bottom: 15px
}

.username-wrapper .username {
    font-weight: 700
}

.note {
    color: #666;
    font-size: 14px;
    font-size: .875rem;
    font-style: italic
}

.form-control+.note {
    margin-top: 3px
}

.form-buttons.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 24px 0 0
}

@media (min-width:30rem) {
    .form-buttons.row {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        gap: 2rem
    }
}

.form-buttons.row:after,
.form-buttons.row:before {
    display: none
}

.form-buttons.row .btn {
    margin: 0;
    text-transform: none
}

@media (min-width:30rem) {
    .form-buttons.row .btn:not(:first-child:last-child) {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        -ms-flex-positive: 0;
        flex-grow: 0
    }
}

.form-buttons.row .btn.btn-primary {
    margin-bottom: 15px
}

@media (min-width:30rem) {
    .form-buttons.row .btn.btn-primary {
        margin-bottom: 0
    }
}

.popover-requirements {
    position: absolute;
    top: 40px;
    max-width: 280px;
    font-size: 14px;
    font-size: .875rem
}

.popover-requirements kbd {
    padding: .1em .6em;
    border: 1px solid #ccc;
    font-size: 12px;
    font-size: .75rem;
    font-family: system-ui, sans-serif;
    background-color: #f7f7f7;
    color: #333;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 2px #fff;
    border-radius: 3px;
    display: inline-block;
    margin: 0 .1em;
    text-shadow: 0 1px 0 #fff;
    line-height: 1.4;
    white-space: nowrap;
    font-style: normal
}

.popover-requirements .popover-content {
    padding: 0
}

.popover-requirements.bottom>.arrow {
    left: 50px
}

.popover-requirements.bottom>.arrow:after {
    border-bottom-color: #fff !important
}

.popover-requirements li,
.popover-requirements li:first-child {
    margin: 0
}

.popover-visible {
    display: block;
    top: 60px
}

.input-requirements>.title,
.input-requirements>.title+.content {
    padding: 0 14px
}

.input-requirements>.title {
    padding-top: 9px
}

.input-requirements .title {
    margin-bottom: 5px;
    font-weight: 400
}

.input-requirements .content {
    line-height: 1.8em;
    margin-bottom: 14px
}

.input-requirements .content [class^=icon-] {
    font-size: 18px;
    font-size: 1.125rem;
    position: relative;
    top: 3px;
    left: -2px
}

.input-requirements .content .success [class^=icon-] {
    color: var(--ft-feedback-green-50, #068148)
}

.input-requirements .content .error [class^=icon-] {
    color: var(--ft-feedback-orange-50, #f79009)
}

.input-requirements .content+.optional-rules {
    margin-top: 14px
}

.input-requirements .optional-rules {
    background-color: #f3f3f3;
    padding: 9px 14px
}

.input-requirements .optional-rules [class^=icon-check] {
    display: none
}

.input-requirements .optional-rules .content {
    margin-bottom: 0
}

.input-right-button,
.view-password-btn {
    position: absolute;
    top: 1.875rem;
    right: 0
}

.view-password-btn {
    border-radius: 8px;
    height: 2.25rem;
    top: .625rem;
    width: 2.25rem
}

.access button {
    margin-top: 20px;
    margin-bottom: 30px
}

@media (max-width:30em) {
    .access button {
        margin-top: 0 !important;
        margin-bottom: 24px !important;
        width: 100%
    }
}

.cgu .article h1 {
    font-weight: 200;
    font-size: 30px;
    font-size: 1.875rem
}

.cgu .article h2 {
    font-weight: 200;
    font-size: 20px;
    font-size: 1.25rem
}

.cgu .article h2,
.cgu .article h3 {
    margin-bottom: 5px;
    margin-top: 20px;
    font-weight: 400;
    color: #283276
}

.cgu .article h3 {
    font-size: 13px;
    font-size: .8125rem
}

.cgu .article p {
    padding: 0 0 14px;
    margin: 0
}

.cgu .article ol,
.cgu .article ul {
    margin-bottom: 14px
}

.cgu .article ul li {
    margin: 0 0 8px 23px
}

.cgu .article a {
    color: #2458e5;
    text-decoration: underline
}

.cgu .article a:active,
.cgu .article a:active:focus,
.cgu .article a:hover {
    outline: none;
    text-decoration: none;
    color: #23527c
}

.modal-help .modal-content .modal-footer button.btn {
    margin-top: 15px
}

.modification-compte .modal .modal-content {
    background: #fff;
    margin-top: 30px;
    padding: 30px 45px;
    box-shadow: 0 0 8px #ccc;
    border-radius: 6px;
    position: relative;
    text-align: center
}

.modification-compte .modal .modal-content .modal-header {
    background: none
}

.modification-compte .modal .modal-content .modal-header .modal-title {
    font-size: 24px;
    font-size: 1.5rem;
    color: #666;
    margin-bottom: 10px;
    font-weight: 200
}

.modification-compte .modal .modal-content .modal-body {
    border-top: 1px solid #e5e5e5
}

.modification-compte .modal .modal-content .modal-body .icon-error {
    font-size: 34px;
    font-size: 2.125rem;
    float: none;
    color: #e3224a
}

.modification-compte .modal .modal-content .modal-footer {
    border: none;
    text-align: center
}

.modification-compte .modal .modal-content .modal-footer button {
    margin: 0
}

.candidat.connexion .identifiant-mdp .identifiant input {
    background-color: #f8f8fa;
    border: none
}

.candidat.connexion .identifiant-mdp button[type=button].btn-lg {
    margin-top: 15px
}

.candidat.connexion .virtual-pad {
    margin-bottom: 15px
}

.candidat.connexion .keyboard {
    background-color: #d7dadf;
    padding: 10px;
    border-radius: 5px;
    margin-bottom: 10px;
    position: relative
}

.candidat.connexion .keyboard .password input {
    height: 38px
}

.candidat.connexion .keyboard .label-placeholder:before {
    top: 9px
}

.candidat.connexion .keyboard-btn-group {
    margin-bottom: 5px;
    padding: 0 20px
}

.candidat.connexion .keyboard-btn-group button {
    width: 48px;
    height: 48px;
    margin: 2px;
    padding: 0;
    border: none;
    box-shadow: 0 1px 0 #b5b6ba;
    border-radius: 3px;
    background-size: 75%;
    background-color: #fefefe;
    background-repeat: no-repeat;
    background-position: 50%
}

.candidat.connexion .keyboard-btn-group button:active,
.candidat.connexion .keyboard-btn-group button:hover {
    box-shadow: 0 1px 6px #b5b6ba
}

.candidat.connexion .keyboard-btn-group .toucheE {
    background-image: url(gfx/icn-clavier-virtuel-0.svg)
}

.candidat.connexion .keyboard-btn-group .toucheA {
    background-image: url(gfx/icn-clavier-virtuel-1.svg)
}

.candidat.connexion .keyboard-btn-group .toucheD {
    background-image: url(gfx/icn-clavier-virtuel-2.svg)
}

.candidat.connexion .keyboard-btn-group .toucheB {
    background-image: url(gfx/icn-clavier-virtuel-3.svg)
}

.candidat.connexion .keyboard-btn-group .toucheH {
    background-image: url(gfx/icn-clavier-virtuel-4.svg)
}

.candidat.connexion .keyboard-btn-group .toucheI {
    background-image: url(gfx/icn-clavier-virtuel-5.svg)
}

.candidat.connexion .keyboard-btn-group .toucheJ {
    background-image: url(gfx/icn-clavier-virtuel-6.svg)
}

.candidat.connexion .keyboard-btn-group .toucheF {
    background-image: url(gfx/icn-clavier-virtuel-7.svg)
}

.candidat.connexion .keyboard-btn-group .toucheG {
    background-image: url(gfx/icn-clavier-virtuel-8.svg)
}

.candidat.connexion .keyboard-btn-group .toucheC {
    background-image: url(gfx/icn-clavier-virtuel-9.svg)
}

.candidat.connexion .keyboard-btn-group+button {
    font-size: 12px;
    padding-left: 8px;
    padding-bottom: 5px;
    padding-top: 5px
}

.candidat.connexion .button-reset-input {
    position: absolute;
    top: 16px;
    right: 16px
}

.candidat.connexion .button-reset-input .reset-input {
    padding: 5px 0 0 1px;
    height: 25px;
    width: 25px;
    background: #dfe1e7;
    border-radius: 20px;
    box-shadow: none;
    border: none;
    outline: none
}

.accessibility header {
    box-shadow: none
}

.accessibility .block-header-link,
.accessibility .block-header-logo-ft,
.accessibility .block-header-logo-ft-pro,
.accessibility .block-header-logo-republic,
.accessibility .block-header-logos {
    background: #fff !important
}

.accessibility .keyboard-btn-group button {
    background-color: #ff0 !important
}

.accessibility .f-line input {
    color: #555 !important;
    background-color: #fff !important;
    background-image: none;
    border: 1px solid #ccc
}

.accessibility .btn.link-service:focus:focus-visible,
.accessibility .form-buttons .btn:focus,
.accessibility .form-buttons .btn:focus-visible {
    outline-offset: 3px !important
}

.accessibility .btn-primary:focus,
.accessibility .btn-primary:focus-visible {
    outline: 2px solid #00fff3 !important
}

.accessibility h2.text-primary {
    color: #fff !important
}

.accessibility footer {
    border-top: none
}

.accessibility footer .container-fluid {
    border-bottom: none
}

.accessibility .ae-connexion .app-mobile-pe .wrapper .content .errorMessage,
.accessibility .ae-connexion .errorMessage,
.app-mobile-pe .wrapper .content .accessibility .ae-connexion .errorMessage {
    border: 1px solid #fff !important
}

.list-conseils-securite {
    margin-top: 1rem;
    padding: 0 20px
}

@media (max-width:30em) {
    .list-conseils-securite {
        padding: 0
    }
}

.list-conseils-securite li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: left
}

.list-conseils-securite li:not(:last-of-type) {
    margin-bottom: 1rem
}

.list-conseils-securite li p {
    margin: 0
}

.icon-img {
    -ms-flex: 1 0 44px;
    flex: 1 0 44px;
    background: #f5f5f8;
    border-radius: 100%;
    height: 44px;
    width: 44px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 15px
}

@media (max-width:30em) {
    .icon-img {
        height: 24px;
        width: 24px;
        -ms-flex: 1 0 24px;
        flex: 1 0 24px
    }
}

.candidat.consentement .detail-aide {
    border-bottom: 1px solid #eee;
    margin-bottom: 0
}

.candidat.consentement .detail-aide .content-aide {
    padding: 0 20px;
    text-align: left;
    border: none !important
}

.candidat.consentement .detail-aide .content-aide ul {
    padding: 10px 10px 20px;
    margin: 0
}

.candidat.consentement .detail-aide .content-aide ul li {
    list-style-type: disc
}

.candidat.consentement .detail-aide>button {
    background: none;
    border: none;
    padding: 18px 10px 18px 13px
}

.candidat.consentement .detail-aide>button:hover {
    background: #f9f9f9
}

.candidat.consentement .list-unstyled {
    border-top: 1px solid #eee;
    padding-top: 25px
}

.candidat.consentement p.t5 {
    margin-bottom: 20px
}

.candidat.consentement .partner-container {
    display: table;
    width: 100%
}

.candidat.consentement .partner-container .conteneur-logo {
    display: table-cell;
    width: 80px;
    height: 80px;
    border: 1px solid #eee;
    overflow: hidden;
    -webkit-border-radius: 100%;
    position: relative;
    box-shadow: 1px 1px 4px #eee;
    border-radius: 15px;
    margin: 0 auto
}

.candidat.consentement .partner-container .conteneur-logo .partner-logo {
    width: 100%;
    height: auto;
    max-width: 165px;
    margin: auto
}

.candidat.consentement .partner-container .conteneur-logo+p {
    padding-left: 25px;
    text-align: left
}

.candidat.consentement .partner-container p {
    display: table-cell;
    vertical-align: middle
}

.candidat.consentement ul {
    margin-top: 20px;
    margin-bottom: 30px
}

#messages,
.img-app-mobile {
    display: none
}

.app-mobile-pe .wrapper .content .errorMessage p:last-child,
.app-mobile-pe .wrapper .content .successMessage p:last-child,
.errorMessage p:last-child,
.successMessage p:last-child {
    margin-bottom: 0
}

.f-line .form-control.with-icon-right {
    padding-right: 34px
}

.f-line .input-right-button {
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 0
}

.small-container {
    padding-block: 24px
}

.small-container .small-title {
    font-size: 16px;
    font-size: 1rem;
    display: inline-block;
    margin-right: 10px
}

.form-control {
    font-size: 16px;
    font-size: 1rem
}

.label-icon {
    top: 2.5rem
}

.has-feedback label~.form-control-feedback {
    top: 2rem
}

.app-mobile-pe {
    font-family: Roboto, Helvetica, Arial, sans-serif !important;
    background: #fff
}

.app-mobile-pe .wrapper.small-container {
    max-width: 640px !important;
    box-shadow: none
}

.app-mobile-pe .img-app-mobile {
    display: block;
    position: relative;
    z-index: 1;
    margin: 0 auto;
    width: 100%;
    max-width: 640px
}

.app-mobile-pe .img-app-mobile img {
    width: 100%
}

.app-mobile-pe .img-app-mobile img+img {
    position: absolute;
    top: 75px
}

.app-mobile-pe .wrapper {
    margin: 0 auto;
    padding: 20px 15px;
    border-radius: 0
}

.app-mobile-pe .wrapper header a,
.app-mobile-pe .wrapper header h1,
.app-mobile-pe .wrapper header img {
    display: none
}

.app-mobile-pe .wrapper header p {
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: 300;
    color: #7c7c7c
}

.app-mobile-pe .wrapper .content {
    margin: 0
}

.app-mobile-pe .wrapper .content .notification {
    border: none
}

.app-mobile-pe .wrapper .content:before,
.app-mobile-pe .wrapper .content hr {
    display: none
}

.app-mobile-pe .wrapper .content .errorMessage,
.app-mobile-pe .wrapper .content .successMessage {
    font-size: 16px;
    font-size: 1rem;
    padding: 10px;
    border-radius: 3px;
    line-height: normal
}

.app-mobile-pe .wrapper .content form {
    margin-top: 20px
}

.app-mobile-pe .wrapper .content form p {
    display: none
}

.app-mobile-pe .wrapper .content form p.need-help {
    display: block;
    margin-top: 15px;
    text-align: center
}

.app-mobile-pe .wrapper .content form .f-line:before {
    top: 37px !important;
    left: 15px;
    font-size: 20px;
    font-size: 1.25rem
}

.app-mobile-pe .wrapper .content form .f-line .form-control-feedback {
    display: none
}

.app-mobile-pe .wrapper .content form .f-line input {
    font-weight: 300;
    font-size: 17px;
    font-size: 1.0625rem;
    padding: 0 0 0 45px;
    height: 52px !important;
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, .075)
}

.app-mobile-pe .wrapper .content form .f-line input:disabled {
    background: #f0f0ef
}

.app-mobile-pe .wrapper .content form .f-line input::-webkit-input-placeholder {
    font-style: italic
}

.app-mobile-pe .wrapper .content form .f-line input::-moz-placeholder {
    font-style: italic
}

.app-mobile-pe .wrapper .content form .f-line input:-ms-input-placeholder {
    font-style: italic
}

.app-mobile-pe .wrapper .content form .f-line input:-moz-placeholder {
    font-style: italic
}

.app-mobile-pe .wrapper .content form .f-line+.f-line {
    margin-top: 20px
}

.app-mobile-pe .wrapper .content form .row.no-gutters {
    margin: 20px 0 0;
    text-align: left
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember {
    width: 100%;
    padding: 0
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:checked,
.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:not(:checked) {
    position: absolute;
    left: -9999px
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember .input-group-addon [type=checkbox]:checked,
.app-mobile-pe .wrapper .content form .row.no-gutters .remember .input-group-addon [type=checkbox]:not(:checked) {
    position: static;
    left: 0
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]+label {
    position: relative;
    padding: 10px 0 10px 40px;
    cursor: pointer;
    display: block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
    color: #6cbe45;
    margin-bottom: 0;
    background: rgba(108, 190, 69, .09);
    border-radius: 3px
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]+label:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 16px;
    z-index: 0;
    border: 2px solid #878ba0;
    border-radius: 1px;
    margin-top: 2px;
    transition: .2s
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]+label:after,
.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]+label:before {
    content: "";
    top: 14px;
    left: 10px;
    position: absolute;
    transition: border .25s, background-color .25s, width .2s .1s, height .2s .1s, top .2s .1s, left .2s .1s;
    z-index: 1
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:not(:checked)+label:before {
    width: 0;
    height: 0;
    border: 3px solid transparent;
    top: 14px;
    left: 10px;
    transform: rotate(37deg);
    transform-origin: 100% 100%
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:not(:checked)+label:after {
    height: 16px;
    width: 16px;
    background: #fff;
    border: 1px solid #6cbe45;
    border-radius: 2px;
    z-index: 0
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:checked+label:before {
    top: 14px;
    left: 11px;
    width: 6px;
    height: 10px;
    border-top: 2px solid transparent;
    border-left: 2px solid transparent;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(37deg);
    transform-origin: 100% 100%
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:checked+label:after {
    width: 16px;
    height: 16px;
    border: 1px solid #6cbe45;
    background-color: #6cbe45;
    border-radius: 2px;
    z-index: 0
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember [type=checkbox]:focus+label:after {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember+.col-xs-6 {
    width: 100%
}

.app-mobile-pe .wrapper .content form .row.no-gutters .remember+.col-xs-6 p {
    margin: 10px 0 0
}

.app-mobile-pe .wrapper .content form .row.no-gutters .col-xs-12 {
    width: 100%
}

.app-mobile-pe .wrapper .content form .row.no-gutters .col-xs-12 p {
    margin: 10px 0 0
}

.app-mobile-pe .wrapper .content .btn {
    text-transform: inherit;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
    padding: 15px 16px;
    margin: 25px 0 0
}

.app-mobile-pe .wrapper .content .btn.col-xs-6 {
    width: 49%;
    margin-left: 2px;
    min-height: 53px
}

.app-mobile-pe .wrapper .content .btn.col-xs-6+.btn {
    margin: 25px 0 0
}

.app-mobile-pe .wrapper .content .btn+p {
    padding-top: 27px;
    clear: both
}

.app-mobile-pe .wrapper .content .btn-default {
    border: 1px solid #94979a
}

.app-mobile-pe .wrapper .content .btn-default:focus,
.app-mobile-pe .wrapper .content .btn-default:hover {
    background: #f5f5f5;
    color: #939598
}

.app-mobile-pe .wrapper .content [data-loading]:disabled {
    height: 53px
}

.app-mobile-pe .wrapper .content [data-loading]:disabled .loader {
    margin-top: 10px
}

.app-mobile-pe .wrapper .content+p {
    display: none
}

.app-mobile-pe main {
    border-top: 0 none;
    padding-top: 0;
    margin-top: 0
}

.app-mobile-pe footer {
    display: none
}

.app-mobile-pe .modal-help .modal-content .modal-body {
    padding: 0 10px 10px
}

.app-mobile-pe .modal-help .modal-content .modal-body .help-heading {
    background: none;
    padding-left: 0;
    padding-bottom: 20px
}

.app-mobile-pe .modal-help .modal-content .modal-body .text-link {
    color: #847c7c;
    font-weight: 300;
    text-decoration: underline
}

.app-mobile-pe .modal-help .modal-content .list-answer>li>.btn-reset [class*=icon-] {
    right: 0;
    color: #283276
}

.app-mobile-pe .modal-help .modal-content .modal-footer {
    margin-top: 5px;
    padding: 0 15px
}

.app-mobile-pe .modal-help .modal-header {
    background: #283276;
    padding: 19px 15px;
    height: auto
}

.agent header .t6 {
    color: #88888a;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
    margin-bottom: 20px
}

.agent .btn-primary {
    color: #fff;
    background-color: #003466;
    border-color: #003466
}

.agent .btn-primary:focus,
.agent .btn-primary:hover {
    background-color: #0a2e51;
    border-color: #0a2e51
}

.agent .text-agent {
    color: #003466
}

.modal-accompagnement .modal-content .modal-body {
    height: auto
}

.modal-accompagnement .modal-content .modal-body .help-heading {
    padding-bottom: 0;
    min-height: 100px
}

.modal-accompagnement .modal-content .modal-body .help-heading .help-title {
    color: #283276
}

@media screen and (max-width:767px) {
    .modal-accompagnement .modal-content .modal-body .help-heading {
        background: none;
        padding-left: 0;
        min-height: auto
    }
}

.modal-accompagnement .intro {
    font-size: 13px;
    font-size: .8125rem;
    margin-bottom: 24px
}

.modal-accompagnement .video {
    width: 100%
}

@media screen and (max-width:414px) {
    .modal-accompagnement .video {
        height: auto
    }
}

[type=radio]:checked+label {
    position: static
}

.accessibility .access button:focus {
    outline-offset: 3px
}

.submit input.button {
    margin-top: 20px;
    font-family: Roboto, Helvetica, Arial, sans-serif;
    border-radius: 100px;
    font-size: 12px !important;
    font-size: .75rem !important;
    text-transform: uppercase;
    display: block;
    width: 100%;
    padding: 10px 16px;
    line-height: 1.3333333;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap
}

.submit input.button:focus,
.submit input.button:hover {
    color: #fff;
    text-decoration: none
}

.need-help {
    text-align: right
}

.f-line~.f-line {
    margin-top: 10px
}

.f-line .need-help {
    float: right;
    margin: 0 0 5px
}

.f-line .need-help.t6 {
    font-family: system-ui, sans-serif !important
}

.btn-lg,
.f-line .need-help.t6 {
    font-size: 16px;
    font-size: 1rem
}

.app-mobile-pe .wrapper .content .errorMessage,
.errorMessage {
    padding: 12px;
    animation: slide .7s ease-in-out 1s;
    width: 100%;
    z-index: 998
}

[data-loading].btn-primary .loader {
    left: calc(50% - 9px);
    text-align: center
}

.label-placeholder {
    margin-bottom: 10px;
    position: relative
}

.label-placeholder:before {
    display: none;
    font-family: icons;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    top: 9px;
    position: absolute;
    left: 10px;
    font-size: 15px;
    font-size: .9375rem;
    color: #bebebe
}

.label-placeholder.identifiant:before {
    content: "\e90b"
}

.label-placeholder.codepostal:before {
    content: "\e9df"
}

.label-placeholder.key:before,
.label-placeholder.password:before {
    content: "\e935"
}

.label-placeholder.with-visible-label {
    text-align: left
}

.label-placeholder.with-visible-label:before {
    top: 2.5rem
}

.label-placeholder label {
    color: #000
}

.label-placeholder label.short {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.label-placeholder input {
    display: block;
    width: 100%;
    height: 34px;
    padding: 6px 12px;
    font-size: 14px;
    font-size: .875rem;
    background-color: #fff;
    background-image: none;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    padding-left: 12px
}

.label-placeholder .aide-connexion {
    margin-top: 0;
    height: auto;
    position: relative;
    top: -16px
}

.keyboard-group .form-label {
    display: block;
    text-align: left
}

.content .notification {
    border-top: 1px solid #eee;
    margin: 15px 0 0;
    padding: 30px 0;
    text-align: center;
    color: #32708f
}

.content .notification [class^=icon-] {
    font-size: 16px;
    font-size: 1rem;
    position: relative;
    top: 3px
}

.container+.container {
    padding: 20px;
    text-align: center;
    margin-top: 20px
}

.container+.container.conseils {
    margin-top: 30px
}

.spinner div {
    display: none !important
}

@media (max-width:767px) {
    .block-img {
        display: none
    }

    .block-with-illustration {
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media (max-width:30em) {

    .container,
    .wrapper .container {
        padding: 16px 24px
    }
}

@media only screen and (max-width:320px) {
    .candidat.connexion .keyboard-btn-group {
        padding: 0
    }

    .app-mobile .img-app-mobile img+img {
        top: 65px
    }

    .app-mobile .wrapper {
        padding-top: 80px
    }
}

@media only screen and (max-width:420px) {
    .candidat.connexion .keyboard-btn-group {
        padding: 0
    }
}

@media only screen and (max-width:390px) {
    header {
        margin: 10px 0 0
    }

    header img {
        width: 100px
    }

    header h1.t1 {
        font-size: 25px;
        font-size: 1.5625rem
    }

    form+.t4 {
        margin-bottom: 10px
    }

    .footer-pe {
        padding: 10px 5px 60px
    }

    .modification-compte header,
    .modification-password header {
        margin: 23px 0 0
    }

    .modification-compte header .deconnexion,
    .modification-password header .deconnexion {
        position: absolute;
        top: 0;
        width: 100%;
        text-align: right;
        font-size: 12px;
        font-size: .75rem;
        padding: 7px 12px;
        left: 0;
        background: #e5e6e8
    }

    .footer-pe,
    body>.container {
        width: 100%
    }

    body>.container {
        margin: 0;
        border-radius: 0;
        padding: 20px
    }

    .h-line {
        margin: 2.5rem 0
    }

    .social .col-xs-6 {
        width: 100%;
        margin-bottom: 10px
    }

    .candidat.connexion .keyboard {
        padding: 5px
    }

    .candidat.connexion .button-reset-input {
        top: 12px;
        right: 12px
    }

    .connexion .checkbox.col-xs-6 label {
        padding-left: 20px
    }
}

@media screen and (min-width:1024px) {
    .popover-requirements {
        position: absolute;
        top: -40px;
        max-width: 280px;
        margin-left: 10px;
        width: 280px;
        left: 105%;
        font-size: 14px;
        font-size: .875rem
    }

    .popover-requirements kbd {
        padding: .1em .6em;
        border: 1px solid #ccc;
        font-size: 12px;
        font-size: .75rem;
        font-family: system-ui, sans-serif;
        background-color: #f7f7f7;
        color: #333;
        box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 2px #fff;
        border-radius: 3px;
        display: inline-block;
        margin: 0 .1em;
        text-shadow: 0 1px 0 #fff;
        line-height: 1.4;
        white-space: nowrap;
        font-style: normal
    }

    .popover-requirements .popover-content {
        padding: 0
    }

    .popover-requirements.bottom {
        margin-top: 0
    }

    .popover-requirements.bottom>.arrow {
        position: absolute;
        display: block;
        top: 40%;
        left: -10px;
        width: 0;
        height: 0;
        margin-top: -11px;
        border-right-width: 11px;
        border-color: transparent;
        border-right-color: rgba(0, 0, 0, .25);
        border-left-width: 0;
        border-bottom-width: 0;
        border-top-width: 0;
        border-style: solid
    }

    .popover-requirements.bottom>.arrow:before {
        position: absolute;
        display: block;
        border-top-color: transparent !important;
        border-bottom-color: transparent !important;
        border-style: solid;
        content: " ";
        border-width: 10px;
        bottom: -10px;
        left: 0;
        top: 1px;
        margin-left: 10px;
        border-right-color: rgba(0, 0, 0, .25);
        border-left-width: 0
    }

    .popover-requirements.bottom>.arrow:after {
        position: absolute;
        display: block;
        border-bottom-color: transparent !important;
        border-style: solid;
        content: " ";
        border-width: 10px;
        bottom: -10px;
        left: 1px;
        top: 1px;
        margin-left: 10px;
        border-right-color: #fff;
        border-left-width: 0
    }

    .popover-requirements li,
    .popover-requirements li:first-child {
        margin: 0
    }

    .popover-visible {
        top: -40px;
        display: block;
        top: -60px
    }
}

.modal-body-list {
    padding-left: 26px
}

.ae-connexion .app-mobile-pe .wrapper .content .errorMessage,
.ae-connexion .errorMessage,
.app-mobile-pe .wrapper .content .ae-connexion .errorMessage {
    display: -ms-flexbox;
    display: flex
}

.ae-connexion .app-mobile-pe .wrapper .content .errorMessage .icon-close-round-full,
.ae-connexion .errorMessage .icon-close-round-full,
.app-mobile-pe .wrapper .content .ae-connexion .errorMessage .icon-close-round-full {
    display: inline-block;
    margin-right: 8px;
    margin-top: 5px;
    color: #f04438
}

.ae-connexion .app-mobile-pe .wrapper .content .errorMessage .errorMessage-title,
.ae-connexion .errorMessage .errorMessage-title,
.app-mobile-pe .wrapper .content .ae-connexion .errorMessage .errorMessage-title {
    font-size: 18px;
    font-size: 1.125rem;
    font-family: Marianne, system-ui, sans-serif !important
}


.input-group-append .btn-secondary:focus:not(:hover) {
    border-color: #5B5D65;
}

.btn-secondary,
a.btn-secondary {
    background-color: #ffffff;
    color: var(--ft--color-text-color);
    border-color: #5B5D65;
}

.high-contrast .btn-secondary,
.high-contrast a.btn-secondary {
    border-color: #2E2E31;
}

.btn-secondary:hover,
.btn-secondary:focus,
a.btn-secondary:hover,
a.btn-secondary:focus {
    --ft--color-primary: $on-primary;
    background-color: #5B5D65;
    color: #ffffff;
}

.high-contrast .btn-secondary:hover,
.high-contrast .btn-secondary:focus,
.high-contrast a.btn-secondary:hover,
.high-contrast a.btn-secondary:focus {
    background-color: #44454B;
}

.btn-secondary:not(:disabled):not(.disabled):not([aria-disabled=true]):active,
.btn-secondary:not(:disabled):not(.disabled):not([aria-disabled=true]).active,
a.btn-secondary:not(:disabled):not(.disabled):not([aria-disabled=true]):active,
a.btn-secondary:not(:disabled):not(.disabled):not([aria-disabled=true]).active {
    --ft--color-primary: $on-primary;
    background-color: #44454B;
    color: #ffffff;
}

.show>.btn-secondary.dropdown-toggle:focus {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-color: transparent;
    -webkit-box-shadow: 0 0 0 0.125rem #2E2E31 inset, 0 0 0 0.25rem #ffffff inset;
    box-shadow: 0 0 0 0.125rem #2E2E31 inset, 0 0 0 0.25rem #ffffff inset;
}


.btn:where(:not(.btn-ratio-square):not(.close)) .icon:where(:first-child),
.btn:where(:not(.btn-ratio-square):not(.close)) ft-icon:where(:first-child) {
    margin-right: 0.375rem;
}

.btn:where(:not(.btn-ratio-square):not(.close)) .icon:where(:last-child),
.btn:where(:not(.btn-ratio-square):not(.close)) ft-icon:where(:last-child) {
    margin-left: 0.5rem;
}

.btn:not(.btn-link) {
    font-weight: 500;
}

.btn {
    font-size: var(--ft--font-size-text);
}

/* Composition "Repel"
*  Repel : Deux zones disposées de part et d'autre dans leur parent lorsque l'espace le permet.
*/
.repel {
    --gutter: 1rem;
    --vertical-alignment: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: var(--vertical-alignment, flex-start);
    -ms-flex-align: var(--vertical-alignment, flex-start);
    align-items: var(--vertical-alignment, flex-start);
    gap: var(--gutter, 0);
}

.block-indispo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    background: var(--ft--color-background-neutral-default-weakest);
    padding: 1.5rem 2rem;
    border-radius: 0.75rem;
}

@media (max-width: 767.98px) {
    .block-indispo {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center;
    }
}

.block-indispo p:last-child,
.block-indispo ul:last-child,
.block-indispo ol:last-child {
    margin-bottom: 0;
}

.block-indispo-heading {
    margin-bottom: 1rem;
    font-weight: 700;
}

.block-indispo-illu {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    max-width: 10rem;
    width: auto;
    height: auto;
}

.m-0 {
    margin: 0 !important;
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important;
}

.d-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

/*# sourceMappingURL=app.css.map */