html, body {
    font-size: 14px;
    font-family: 'Gilroy', 'Open Sans', sans-serif;
    color: #000000;
}
body {
    background-color: #ffffff;
}
.font-weight-bold {
    font-weight: 600 !important;
}
h1 {
    font-size: 32px;
}
a {
    color: #050559;
    text-decoration: underline;
}
a:hover,
a:focus {
    color: #050584;
    text-decoration: none;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
@media (min-width: 992px) {
    .modal-lg {
        max-width: 850px;
    }
}
.text-primary {
    color: #050559 !important;
}
.fox-label-required:after {
    content: '*';
    color: #ea005d;
    font-weight: bold;
    font-size: 20px;
    line-height: 1rem;
}
.fox-list {
    padding-left: 0;
    counter-reset: item;
}
.fox-list li {
    display: flex;
}
.fox-list li + li {
    margin-top: 1rem;
}
.fox-list li:before {
    content: counter(item) ". ";
    counter-increment: item;
    color: #ea005d;
    font-weight: 600;
    margin-right: 1rem;
}
.form-group label:not(.fox-checkbox-label) {
    font-weight: bold;
}
.form-control {
    height: calc(3rem + 2px) !important;
    background-color: #f8f8f8;
    border-radius: 8px;
}
.fox-color-primary {
    color: #050559;
}
.fox-navbar {
    height: 60px;
    background-color: #050559;
    color: #FFFFFF;
}
.fox-navbar a {
    text-decoration: none
}
.fox-form .invalid-feedback {
    font-size: 11px;
}
.fox-btn-lang {
    display: inline-flex;
    align-items: center;
    color: #F3F3F3;
    border-color: transparent;
    background-color: transparent;
    outline: none;
    box-shadow: none;
    transition: 0.2s;
}
.fox-btn-lang:hover {
    border-color: rgba(255, 255, 255, 0.54);
}
.fox-btn {
    display: inline-flex;
    align-items: center;
    background-color: #050559;
    font-size: 14px;
    font-weight: 600;
    padding: 1rem 2rem;
    height: calc(3rem + 2px);
    color: #efefef;
    line-height: 1;
    text-decoration: none;
    border-radius: 8px;
}
.fox-btn:hover:not(:disabled),
.fox-btn:focus:not(:disabled) {
    background-color: #050584;
    color: #efefef;
}
.fox-btn-outline {
    background-color: transparent;
    border: 2px solid #050559;
    font-size: 14px;
    color: #050559;
    line-height: calc(1.6em - 2px);
    text-decoration: none;
}
.fox-btn-outline:hover:not(:disabled),
.fox-btn-outline:focus:not(:disabled) {
    background-color: transparent;
    border-color: #050584;
    color: #050584;
}
.fox-btn-cta {
    background-color: #ea005d;
}
.fox-btn-cta:hover:not(:disabled),
.fox-btn-cta:focus:not(:disabled) {
    background-color: #f70060;
    color: #efefef;
}
.fox-modal .modal-lb {
    position: fixed;
    bottom: 2rem;
    left: 2rem;
    width: calc(100% - 4rem);
    max-width: 1140px;
    margin: 0;
}
@media (max-width: 768px) {
    .modal-lb {
        max-width: 100%;
    }
    .modal-lb .modal-footer {
        flex-direction: column;
    }
    .modal-lb .modal-footer > * {
        margin: 0.25rem 0;
    }
}
.fox-modal .modal-content {
    border-radius: 8px;
}
.fox-modal .modal-header {
    padding: 2rem 2rem 0 2rem;
    border-bottom: 0;
}
.fox-modal .modal-header .close {
    font-size: 21px;
    opacity: 0.2;
}
.fox-modal .modal-title {
    font-size: 24px;
    font-weight: 600;
    color: #050559;
}
.fox-modal .modal-footer {
    border-top: 0;
    padding: 0 2rem 2rem;
}
.fox-modal .modal-body {
    padding: 2rem;
}
.fox-modal .modal-body a {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
}
.fox-modal .modal-body a:hover,
.fox-modal .modal-body a:focus {
    color: inherit;
    text-decoration: none;
}
.fox-modal .btn-close {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    padding: 0;
    width: 1.5rem;
    height: 1.5rem;
    color: #000000;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000000'%3E%3Cpath d='M12,23C5.9,23,1,18.1,1,12S5.9,1,12,1s11,4.9,11,11S18.1,23,12,23z M12,3c-5,0-9,4-9,9c0,5,4,9,9,9c5,0,9-4,9-9 C21,7,17,3,12,3z'/%3E%3Cpath d='M9,16c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l6-6c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C9.5,15.9,9.3,16,9,16z'/%3E%3Cpath d='M15,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4C15.5,15.9,15.3,16,15,16z'/%3E%3C/svg%3E");
    border: 0;
    border-radius: 0.25rem;
    opacity: 0.25;
    cursor: pointer;
    transition: opacity 0.2s;
    outline: none !important;
    box-shadow: none !important;
}
.fox-modal .btn-close:hover {
    opacity: 0.5;
}

/* WELCOME -----------------------------------------------------------------------------------------*/

.fox-switch-app {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 8px;
    background-color: #ffffff;
    padding: 2rem;
    text-decoration: none;
    color: #000000;
    font-weight: 600;
}

.fox-switch-app .learn-more {
    position: relative;
    margin-top: 1rem;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.fox-switch-app .learn-more svg {
    margin-top: 5px;
    margin-left: 0.5rem;
}

/* PLATFORM ----------------------------------------------------------------------------------------*/

.fox-platform {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 1rem 2rem 1rem 3.5rem;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 8px;
    transition: 0.2s;
    cursor: pointer;
    text-align: left;
    font-weight: normal !important;
}
.fox-platform > div > b {
    font-size: 16px;
}
.fox-platform > img {
    margin-right: 1rem;
}
.fox-platform:after {
    content: '';
    position: absolute;
    margin-top: -12px;
    top: 50%;
    left: 1rem;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23CCCCCC'%3E%3Cpath d='M12,23C5.9,23,1,18.1,1,12S5.9,1,12,1s11,4.9,11,11S18.1,23,12,23z M12,3c-5,0-9,4-9,9c0,5,4,9,9,9c5,0,9-4,9-9 C21,7,17,3,12,3z'/%3E%3C/svg%3E%0A");
    animation: scaleIn 0.5s ease-in-out;
}

input[type=radio].fox-radio {
    position: absolute;
    left: -9999px;
    opacity: 0;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.fox-radio:checked + .fox-platform {
    border-color: #12e472;
}

.fox-radio:checked + .fox-platform:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2312e472'%3E%3Cpath d='M12,23C12,23,12,23,12,23C5.9,23,1,18.1,1,12C1,5.9,5.9,1,12,1c0,0,0,0,0,0c1.6,0,3.1,0.3,4.5,1C17,2.2,17.2,2.8,17,3.3 c-0.2,0.5-0.8,0.7-1.3,0.5C14.5,3.3,13.3,3,12,3c0,0,0,0,0,0c-5,0-9,4-9,9c0,5,4,9,9,9c0,0,0,0,0,0c5,0,9-4,9-9v-0.9 c0-0.6,0.4-1,1-1s1,0.4,1,1V12C23,18.1,18.1,23,12,23z'/%3E%3Cpath d='M12,15c-0.3,0-0.5-0.1-0.7-0.3l-3-3c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l2.3,2.3l9.3-9.3c0.4-0.4,1-0.4,1.4,0 c0.4,0.4,0.4,1,0,1.4l-10,10C12.5,14.9,12.3,15,12,15z'/%3E%3C/svg%3E");
}

@keyframes scaleIn {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1.0);
    }
}

/* TOAST ------------------------------------------------------------------------------------------ */

#toast-container {
    position: fixed;
    right: 12px;
    bottom: 12px;
    z-index: 999999;
}
#toast-container * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#toast-container .toast {
    position: relative;
    overflow: hidden;
    margin: 0 0 6px;
    padding: 15px 15px 15px 50px;
    width: 300px;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    border-radius: 3px 3px 3px 3px;
    background-position: 15px center;
    background-repeat: no-repeat;
    -moz-box-shadow: 0 0 12px #999999;
    -webkit-box-shadow: 0 0 12px #999999;
    box-shadow: 0 0 12px #999999;
    color: #FFFFFF;
    opacity: 0.8;
}
#toast-container .toast.toast-success {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important;
    background-color: #51A351;
}

/* PROCESSING ------------------------------------------------------------------------------------- */

.fox-processing {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 0;
    z-index: 1040;
    background-color: rgba(0, 0, 0, 0);
    color: #FFFFFF;
    transition: background-color 0.15s linear;
    overflow: hidden;
}
.fox-processing.d-flex {
    height: auto;
    background-color: rgba(0, 0, 0, 0.5);
}
.fox-processing .caption {
    margin-bottom: 10px;
}
.fox-processing > .loader > div {
    display: inline-block;
    width: 18px;
    height: 18px;
    background-color: white;
    border-radius: 100%;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.fox-processing >  .loader .bounce-1 {
    animation-delay: -0.32s;
}
.fox-processing >  .loader .bounce-2 {
    animation-delay: -0.16s;
}
@keyframes sk-bouncedelay {
    0%, 80%, 100% {
        transform: scale(0);
    }
    40% {
        transform: scale(1.0);
    }
}

/* CHECKBOX ------------------------------------------------------------------------------------- */

input[type=checkbox].fox-checkbox,
input[type=checkbox].form-check-input {
    position: absolute;
    left: -9999px;
    opacity: 0;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
input[type=checkbox].fox-checkbox:focus + label:before,
input[type=checkbox].fox-checkbox:focus + .fox-checkbox-label:before,
input[type=checkbox].form-check-input:focus + label:before {
    box-shadow: none;
}
.fox-checkbox + label, 
.fox-checkbox + .k-checkbox-label,
.form-check-input + label {
     position: relative;
     margin: 4px 10px;
     padding-left: 26px;
     cursor: pointer;
     color: inherit;
     display: inline-block;
     min-height: 16px;
     line-height: 16px;
     font-size: 1rem;
     -webkit-user-select: none;
     -moz-user-select: none;
     -khtml-user-select: none;
     -ms-user-select: none
}
.fox-checkbox + label:after, 
.fox-checkbox + label:before, 
.fox-checkbox + .fox-checkbox-label:after, 
.fox-checkbox + .fox-checkbox-label:before,
.form-check-input + label:after,
.form-check-input + label:before {
    content: '';
    position: absolute;
    box-sizing: border-box;
    transition: transform .25s, border .25s, background-color .25s, width .2s .1s, height .2s .1s, top .2s .1s, left .2s .1s;
}
.fox-checkbox + label:before, 
.fox-checkbox + .fox-checkbox-label:before,
.form-check-input + label:before {
    top: 5px;
    left: 8px;
    width: 7px;
    height: 7px;
    border: 2px solid transparent;
    border-radius: 3px !important;
    transform: rotate(-45deg) !important;
    transform-origin: 0 100%;
}
.fox-checkbox + label:after, 
.fox-checkbox + .fox-checkbox-label:after,
.form-check-input + label:after {
   top: 0;
   left: 0;
   height: 16px;
   width: 16px;
   background-color: transparent;
   border: 2px solid #050559;
   border-radius: 2px;
}
.fox-checkbox:not(:checked) + label:before, 
.fox-checkbox:not(:checked) + .fox-checkbox-label:before,
.form-check-input:not(:checked) + label:before {
    width: 6px;
    border-color: transparent;
}
.fox-checkbox:not(:checked) + label:after, 
.fox-checkbox:not(:checked) + .k-checkbox-label:after,
.form-check-input:not(:checked) + label:after {
   background-color: transparent;
   border-color: #050584;
}
.fox-checkbox:checked + label:before,
.fox-checkbox:checked + .fox-checkbox-label:before,
.form-check-input:checked + label:before {
    width: 15px;
    border-color: transparent transparent #050584 #050584;
}
.fox-checkbox:checked + label:after,
.fox-checkbox:checked + .fox-checkbox-label:after,
.form-check-input:checked + label:after{
    border-color: #050584;
    clip-path: polygon(0 0, 12px 0, 12px 8px, 20px 8px, 20px 20px, 0 20px);
}
.fox-checkbox:indeterminate + label:before, 
.fox-checkbox:indeterminate + .fox-checkbox-label:before {
    top: 7px;
    left: 3px;
    height: 0;
    width: 10px;
    border-color: transparent transparent #050584 transparent;
    border-width: 0 0 2px 0;
    transform: rotate(0deg) !important;
}
.fox-checkbox:indeterminate + label:after,
.fox-checkbox:indeterminate + .k-checkbox-label:after {
   border-color: #050559;
}
.fox-checkbox:disabled + label,
.fox-checkbox:disabled + .k-checkbox-label {
    color: #DADADA;
    cursor: inherit;
}
.fox-checkbox:disabled:checked + label:before,
.fox-checkbox:disabled:checked + .fox-checkbox-label:before {
    border-color: transparent transparent #FFFFFF #FFFFFF;
                           }
.fox-checkbox:disabled:indeterminate + label:before,
.fox-checkbox:disabled:indeterminate + .k-checkbox-label:before {
    border-color: transparent transparent #FFFFFF transparent;
}
.fox-checkbox:disabled:not(:checked) + label:after,
.fox-checkbox:disabled:not(:checked) + .fox-checkbox-label:after {
    border-color: #DADADA;
}
.fox-checkbox:disabled:indeterminate + label:after, 
.fox-checkbox:disabled:indeterminate + .k-checkbox-label:after {
    border-color: #DADADA;
}
.fox-checkbox:disabled:checked + label:after, 
.fox-checkbox:disabled:checked + .fox-checkbox-label:after {
    border-color: #DADADA;
}
.fox-checkbox.invalid:checked + label:after,
.fox-checkbox.invalid:checked + .fox-checkbox-label:after {
  border-color: #DC3545;
}
.fox-checkbox:checked + .fox-checkbox-label:after {
    border-radius: 2px;
}
.fox-checkbox-label:before {
    background-color: transparent;
}
.fox-checkbox-label:after {
    content: '';
    height: 16px;
    width: 16px;
    transform: scale(1);
}

/* LANGUAGES ----------------------------------------------------------------------------------- */

.languages {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
}
.language-wrapper {
    padding: 0.25rem;
}
.language {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem;
    height: 100%;
    border-radius: 0.375rem;
    cursor: pointer;
    font-weight: bold;
}
.language:hover {
    background-color: #F3F3F3;
}
.language.selected {
    background-color: #F3F3F3;
}
.language img {
    margin-bottom: 0.5rem;
    width: 48px;
}

/* MULTISELECT --------------------------------------------------------------------------------- */

span.multiselect-native-select {
    position: relative;
}
span.multiselect-native-select select {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px -1px -1px -3px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    left: 50%;
    top: 30px;
}
.multiselect {
    overflow: hidden;
    text-overflow: ellipsis;
}
.multiselect.dropdown-toggle:after {
    display: none;
}
.multiselect-native-select {
    display: flex;
    flex-direction: column;
}
.multiselect-native-select > * {
    order: 2;
}
.multiselect-native-select .btn-group {
    width: 100%;
    order: 1;
}
.multiselect {
    padding: 0.375rem calc(1.5rem + 20px) 0.375rem 0.75rem;
    height: calc(3rem + 2px) !important;
    background: #f8f8f8 url("data:image/svg+xml;charset=UTF-8,%3csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' style='enable-background:new 0 0 20 20;' xml:space='preserve'%3e%3cpath fill='%23050584' d='M10,0C4.5,0,0,4.5,0,10s4.5,10,10,10s10-4.5,10-10S15.5,0,10,0z M13.7,9.7l-3,3C10.5,12.9,10.3,13,10,13s-0.5-0.1-0.7-0.3 l-3-3c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l2.3,2.3l2.3-2.3c0.4-0.4,1-0.4,1.4,0S14.1,9.3,13.7,9.7z'/%3e%3c/svg%3e");
    background-size: 20px 20px;
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    border: 1px solid #ced4da;
    border-radius: 8px;
    font-size: 1rem;
    line-height: 1.5;
    color: #495057;
    text-align: left !important;
    cursor: pointer;
    box-shadow: none !important;
}
.btn-group.show .multiselect {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' style='enable-background:new 0 0 20 20;' xml:space='preserve'%3e%3cpath fill='%23050584' d='M10,0C4.5,0,0,4.5,0,10s4.5,10,10,10s10-4.5,10-10S15.5,0,10,0z M13.7,11.7C13.5,11.9,13.3,12,13,12s-0.5-0.1-0.7-0.3 L10,9.4l-2.3,2.3c-0.4,0.4-1,0.4-1.4,0s-0.4-1,0-1.4l3-3c0.4-0.4,1-0.4,1.4,0l3,3C14.1,10.7,14.1,11.3,13.7,11.7z'/%3e%3c/svg%3e");
}
.multiselect:focus {
    border-color: #ced4da;
}
.multiselect-native-select select.is-invalid ~ .btn-group .multiselect {
    border-color: #dc3545;
}
.multiselect .multiselect-selected-text {
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
    overflow: hidden;
}
.multiselect-container {
    position: absolute;
    list-style-type: none;
    margin: 0;
    padding: 0;
    width: 100%;
    margin-top: 5px;
    border-radius: 8px;
}
.multiselect-option {
    padding: 0.25rem 0.5rem 0.25rem 0.5rem;
}
.multiselect-option {
    cursor: pointer;
    outline: 0 !important;
}
.multiselect-option.active {
    color: #000000;
    background-color: transparent;
}
.multiselect-option:focus {
    background-color: transparent;
}
.multiselect-option:hover {
    color: #16181b;
    text-decoration: none;
    background-color: #efefef;
}
.multiselect-option label {
    font-weight: normal !important;
}
.multiselect-option.active label {
    font-weight: 700 !important;
}
.multiselect-option .form-check {
    padding: 0;
}

/* WIBI -------------------------------------------------------------------------------------- */

body.wibi {
    color: #292929;
}
.wibi .fox-navbar {
    background-color: #F3F1EF;
}
.wibi .fox-btn-lang {
    color: #0b2e13;
}
.wibi .fox-btn {
    background-color: #4B4B82;
}
.wibi .fox-btn:hover,
.wibi .fox-btn:focus {
    background-color: #463C6E;
}
.wibi .fox-btn-outline {
    background: transparent;
    border-color: #4B4B82;
    color: #4B4B82;
}
.wibi .fox-btn-outline:hover,
.wibi .fox-btn-outline:focus {
    background: #DFDFED;
    color: #463C6E;
    border-color: #463C6E;
}
.wibi .fox-label-required:after {
    color: #CD0000;
}
.wibi .fox-color-primary {
    color: #4B4B82;
}
.wibi .fox-modal .modal-title {
    color: #4B4B82;
}