﻿@charset "UTF-8";
/*$font: 'Avenir LT', sans-serif !default;*/
/*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */
/*
Document
========
*/
/**
Use a better box model (opinionated).
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

/**
Use a more readable tab size (opinionated).
*/
:root {
  -moz-tab-size: 4;
  tab-size: 4;
}

/**
1. Correct the line height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/*
Sections
========
*/
/**
Remove the margin in all browsers.
*/
body {
  margin: 0;
}

/**
Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
*/
body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
}

/*
Grouping content
================
*/
/**
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
}

/*
Text-level semantics
====================
*/
/**
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr[title] {
  text-decoration: underline dotted;
}

/**
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
Tabular data
============
*/
/**
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
}

/*
Forms
=====
*/
/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
Remove the inheritance of text transform in Edge and Firefox.
1. Remove the inheritance of text transform in Firefox.
*/
button,
select { /* 1 */
  text-transform: none;
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
Remove the inner border and padding in Firefox.
*/
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
Restore the focus styles unset by the previous rule.
*/
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
Remove the additional ':invalid' styles in Firefox.
See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
*/
:-moz-ui-invalid {
  box-shadow: none;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/
legend {
  padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Interactive
===========
*/
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}

header {
  position: relative;
}
header:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(90deg, #502A7D 18.75%, #0074C8 100%);
  z-index: 0;
}
header .menuContainer {
  height: 12.5rem;
  padding: 1.875rem 0;
  position: relative;
  background-image: url(/media/Images/bgHumania.jpg);
  background-position: center;
  background-repeat: no-repeat;
}
header .menuContainer .wrapper {
  height: 12.5rem;
  position: relative;
}
header .menuContainer nav {
  background-color: #502a7d;
  position: fixed;
  z-index: 5000;
  top: 0;
  right: 0;
  height: 100%;
  max-width: 440px;
  width: 100%;
  padding: 100px 40px 60px 40px;
  overflow-y: auto;
  transform: translateX(100%);
  transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
header .menuContainer nav ul.main {
  list-style-type: none;
  padding: 0;
}
header .menuContainer nav ul.main li {
  margin-bottom: 20px;
  transform: translateX(40px);
  opacity: 0;
  transition: all 0.3s ease;
}
header .menuContainer nav ul.main li:before {
  display: none;
}
header .menuContainer nav ul.main li a {
  color: #ffffff;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1rem;
  display: block;
  letter-spacing: 2px;
  font-weight: 600;
  padding: 0.625rem 0;
  transition: all 0.3s ease;
}
header .menuContainer nav ul.main li a:hover {
  color: #ea5c60;
}
header .menuContainer nav.open {
  transform: translateX(0px);
}
header .menuContainer nav.open ul.main li {
  transform: translateX(0px);
  opacity: 1;
}
header .menuContainer nav.open ul.main li:nth-child(1) {
  transition-delay: 0.15s;
}
header .menuContainer nav.open ul.main li:nth-child(2) {
  transition-delay: 0.3s;
}
header .menuContainer nav.open ul.main li:nth-child(3) {
  transition-delay: 0.45s;
}
header .menuContainer nav.open ul.main li:nth-child(4) {
  transition-delay: 0.6s;
}
header .menuContainer nav.open ul.main li:nth-child(5) {
  transition-delay: 0.75s;
}
header .menuContainer nav.open ul.main li:nth-child(6) {
  transition-delay: 0.9s;
}
header .menuContainer nav.open ul.main li:nth-child(7) {
  transition-delay: 1.05s;
}
header .menuContainer nav.open ul.main li:nth-child(8) {
  transition-delay: 1.2s;
}
header .menuContainer nav.open ul.main li:nth-child(9) {
  transition-delay: 1.35s;
}
header .menuContainer nav.open ul.main li:nth-child(10) {
  transition-delay: 1.5s;
}
header .menuContainer .menu {
  display: flex;
  justify-content: space-between;
  position: relative;
}
header .menuContainer .menu .leftSide {
  display: flex;
  justify-content: flex-start;
}
header .menuContainer .menu .leftSide .logo {
  width: 13.75rem;
  height: 2.25rem;
  margin-right: 2.25rem;
}
header .menuContainer .menu .leftSide .textHeader {
  font-family: "Product Sans", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 125%;
  color: white;
}
header .menuContainer .menu .leftSide .textHeader P {
  font-family: "Product Sans", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 125%;
  color: white;
  margin: 0;
}
header .menuContainer .menu .rightSide {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 2.5rem;
}
header .menuContainer .menu .rightSide .langSwitch {
  font-family: "Product Sans", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 125%;
  text-transform: uppercase;
  margin-right: 1.25rem;
  color: white;
}
header .menuContainer .menu .rightSide .btn {
  text-transform: uppercase;
  margin-right: 2.5rem;
  padding: 0.375rem 1.25rem;
  border: 0.1875rem solid white;
  color: #0074C8;
}
header .menuContainer .menu .rightSide .btn:hover {
  color: #0074c8;
  background: rgba(255, 255, 255, 0.7);
}
header .menuContainer .menu .rightSide .menuIcon {
  width: 3.125rem;
  height: 2.4375rem;
  position: relative;
  border-radius: 4px;
  z-index: 5010;
  cursor: pointer;
}
header .menuContainer .menu .rightSide .menuIcon .menuIconContainer {
  position: relative;
  width: 3.125rem;
  height: 2.4375rem;
}
header .menuContainer .menu .rightSide .menuIcon span {
  position: relative;
  margin-top: 0.5625rem;
  margin-bottom: 0.5625rem;
  user-select: none;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -0.9375rem;
  margin-top: -0.09375rem;
}
header .menuContainer .menu .rightSide .menuIcon span:before {
  position: absolute;
  content: "";
  top: -0.5625rem;
}
header .menuContainer .menu .rightSide .menuIcon span:after {
  position: absolute;
  content: "";
  top: 0.5625rem;
}
header .menuContainer .menu .rightSide .menuIcon span, header .menuContainer .menu .rightSide .menuIcon span::before, header .menuContainer .menu .rightSide .menuIcon span::after {
  display: block;
  width: 1.875rem;
  height: 0.125rem;
  background-color: #ffffff;
  -webkit-transition-property: background-color, -webkit-transform;
  -moz-transition-property: background-color, -moz-transform;
  -o-transition-property: background-color, -o-transform;
  transition-property: background-color, transform;
  -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
header .menuContainer .menu .rightSide .menuIcon.open .menuIconContainer {
  position: fixed;
}
header .menuContainer .menu .rightSide .menuIcon.open span {
  background-color: transparent;
}
header .menuContainer .menu .rightSide .menuIcon.open span:before {
  background-color: #ffffff;
  transform: translateY(0.5625rem) rotate(45deg);
}
header .menuContainer .menu .rightSide .menuIcon.open span:after {
  background-color: #ffffff;
  transform: translateY(-0.5625rem) rotate(-45deg);
}

::-webkit-input-placeholder {
  color: #999;
}

::-moz-placeholder {
  color: #999;
}

:-ms-input-placeholder {
  color: #999;
}

:-moz-placeholder {
  color: #999;
}

input[type=text], input[type=number], input[type=email], input[type=search], input[type=tel], textarea, select {
  font-size: 1rem;
  font-family: "Product Sans", sans-serif;
  line-height: 150%;
  padding: 0.75rem 1rem;
  background: #FFFFFF;
  border: 1px solid #7FB9E3;
  border-radius: 0.375rem;
  color: #181716;
  transition: all 300ms ease;
}
input[type=text]:focus, input[type=number]:focus, input[type=email]:focus, input[type=search]:focus, input[type=tel]:focus, textarea:focus, select:focus {
  outline: 0;
  border-width: 2px;
  padding: 0.6875rem 0.9375rem;
}
input[type=text].error, input[type=text].input-validation-error, input[type=number].error, input[type=number].input-validation-error, input[type=email].error, input[type=email].input-validation-error, input[type=search].error, input[type=search].input-validation-error, input[type=tel].error, input[type=tel].input-validation-error, textarea.error, textarea.input-validation-error, select.error, select.input-validation-error {
  color: #EA5C60;
  border-color: #EA5C60;
}
label.error, .field-validation-error {
  color: #EA5C60;
}

.fakeSelect {
  overflow: hidden;
  position: relative;
}
.fakeSelect select {
  background: transparent;
  border: none;
  width: calc(100% + 30px);
}
.fakeSelect svg {
  right: 1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.fakeCheckbox input {
  position: absolute;
  opacity: 0.001;
}
.fakeCheckbox input + .icon .unchecked {
  display: inline-block;
}
.fakeCheckbox input + .icon .checked {
  display: none;
}
.fakeCheckbox input:checked + .icon .checked {
  display: inline-block;
}
.fakeCheckbox input:checked + .icon .unchecked {
  display: none;
}
.fakeRadio input {
  position: absolute;
  opacity: 0.001;
}
.fakeRadio input + .icon .unchecked {
  display: inline-block;
}
.fakeRadio input + .icon .checked {
  display: none;
}
.fakeRadio input:checked + .icon .checked {
  display: inline-block;
}
.fakeRadio input:checked + .icon .unchecked {
  display: none;
}
input[type=submit], input[type=button], .btn, .formSubmit button {
  padding: 0.5rem 1.5rem;
  background-color: white;
  border-radius: 5rem;
  color: #0074C8;
  font-family: "Product Sans", sans-serif;
  font-weight: 600;
  font-size: 0.9375rem;
  line-height: 1.125rem;
  transition: all ease 300ms;
  letter-spacing: -0.015rem;
  text-align: center;
  display: inline-block;
  /* Bouton secondaire */
}
input[type=submit]:hover, input[type=submit]:focus, input[type=submit].active, input[type=button]:hover, input[type=button]:focus, input[type=button].active, .btn:hover, .btn:focus, .btn.active, .formSubmit button:hover, .formSubmit button:focus, .formSubmit button.active {
  outline: 0;
  background-color: #7FB9E3;
  color: #0074C8;
  cursor: pointer;
  text-decoration: none;
}
input[type=submit].blue, input[type=button].blue, .btn.blue, .formSubmit button.blue {
  color: #0074C8;
  background-color: #E6F1FA;
}
input[type=submit].arrow, input[type=button].arrow, .btn.arrow, .formSubmit button.arrow {
  padding: 0.5625rem 1.5rem 0.5625rem 2.75rem;
  color: #0074C8;
  background-color: #E6F1FA;
  text-transform: uppercase;
  position: relative;
}
input[type=submit].arrow:before, input[type=button].arrow:before, .btn.arrow:before, .formSubmit button.arrow:before {
  content: "";
  width: 0.5rem;
  height: 0.8125rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 1.5rem;
  -webkit-mask-image: url(../images/icon/arrowLeft.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  background-color: #0074C8;
  transition: all 300ms ease;
}
input[type=submit].arrow:hover, input[type=submit].arrow:focus, input[type=button].arrow:hover, input[type=button].arrow:focus, .btn.arrow:hover, .btn.arrow:focus, .formSubmit button.arrow:hover, .formSubmit button.arrow:focus {
  color: #0070f9;
  background-color: #c4def3;
}
input[type=submit].arrow:hover:before, input[type=submit].arrow:focus:before, input[type=button].arrow:hover:before, input[type=button].arrow:focus:before, .btn.arrow:hover:before, .btn.arrow:focus:before, .formSubmit button.arrow:hover:before, .formSubmit button.arrow:focus:before {
  background-color: #0070f9;
}
input[type=submit].big, input[type=button].big, .btn.big, .formSubmit button.big {
  padding: 1rem 1.75rem;
  font-size: 1.25rem;
  font-weight: normal;
  letter-spacing: -0.015rem;
  line-height: 1.5rem;
  color: #0074C8;
  background-color: transparent;
  border: 0.09375rem solid #0074C8;
}
input[type=submit].big.arrow, input[type=button].big.arrow, .btn.big.arrow, .formSubmit button.big.arrow {
  position: relative;
  text-transform: none;
  padding-right: 3.25rem;
}
input[type=submit].big.arrow:before, input[type=button].big.arrow:before, .btn.big.arrow:before, .formSubmit button.big.arrow:before {
  content: "";
  width: 0.5rem;
  height: 0.8125rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  right: 1.75rem;
  left: unset;
  -webkit-mask-image: url(../images/icon/arrowLeft.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  background-color: #0074C8;
  transition: all 300ms ease;
}
input[type=submit].big:hover, input[type=submit].big:focus, input[type=button].big:hover, input[type=button].big:focus, .btn.big:hover, .btn.big:focus, .formSubmit button.big:hover, .formSubmit button.big:focus {
  background-color: #0074c8;
  color: white;
}
input[type=submit].big:hover:before, input[type=submit].big:focus:before, input[type=button].big:hover:before, input[type=button].big:focus:before, .btn.big:hover:before, .btn.big:focus:before, .formSubmit button.big:hover:before, .formSubmit button.big:focus:before {
  background-color: white;
}
/* Transition pour les submits ici (si différente des .btn) */
.inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}
.inputfile.input-validation-error + label {
  border-color: #EA5C60;
  color: #EA5C60;
}
.inputfile + label {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-content: stretch;
  align-items: stretch;
  cursor: pointer;
  border: 1px solid #cfcfd3;
  border-radius: 3px;
  display: flex !important;
  margin-bottom: 0 !important;
}
.inputfile + label .fileName {
  max-width: 50%;
  display: block;
  font-size: 1rem;
  color: #181716;
  font-weight: 400;
  height: 100%;
  padding: 0.4375rem 1rem;
}
.inputfile + label .button {
  font-size: 1rem;
  color: #181716;
  font-weight: 400;
  min-width: 7.5625rem;
  box-sizing: border-box;
  text-align: center;
  padding: 0.4375rem 0.75rem;
  display: block;
  border-left: 1px solid #cfcfd3;
  background: #FFF;
  border-radius: 0 3px 3px 0;
}
.inputfile + label * {
  pointer-events: none;
}
footer, .footer {
  z-index: 1;
  position: relative;
  width: 100%;
  background: #000000;
  font-size: 0.75rem;
  padding: 3.75rem 0;
  box-sizing: border-box;
}
footer a, .footer a {
  text-decoration: none;
}
footer a:hover, .footer a:hover {
  text-decoration: underline;
}
footer .wrapper, .footer .wrapper {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-content: center;
  align-items: center;
}
footer .firstRow, .footer .firstRow {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
footer .firstRow .logo, .footer .firstRow .logo {
  width: 14.6875rem;
  height: 2.4375rem;
}
footer .firstRow .link, .footer .firstRow .link {
  display: flex;
  align-items: center;
}
footer .firstRow .link a, .footer .firstRow .link a {
  color: #B8B8B8;
  font-weight: 600;
  font-size: 1.125rem;
  font-family: "Product Sans", sans-serif;
  line-height: 135%;
  margin-right: 2.5rem;
}
footer .firstRow .link .linkdin, .footer .firstRow .link .linkdin {
  width: 2.125rem;
  height: 2.125rem;
  -webkit-mask-image: url(../images/icon/linkdin.svg);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  background-color: white;
  transition: all 300ms ease;
  margin-right: 0;
}
footer .firstRow .link .linkdin:hover, .footer .firstRow .link .linkdin:hover {
  background-color: #2867B2;
}
footer .secondRow, .footer .secondRow {
  margin-top: 1.75rem;
  width: 100%;
}
footer .secondRow ul, .footer .secondRow ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer .secondRow ul li, .footer .secondRow ul li {
  list-style: none;
}
footer .secondRow ul li:before, .footer .secondRow ul li:before {
  display: none;
}
footer .secondRow ul li a, .footer .secondRow ul li a {
  color: #B8B8B8;
  font-weight: 400;
  font-size: 0.90625rem;
  font-family: "Product Sans", sans-serif;
  line-height: 150%;
}
footer .thirdRow, .footer .thirdRow {
  width: 100%;
  color: #B8B8B8;
  font-weight: 400;
  font-size: 0.90625rem;
  font-family: "Product Sans", sans-serif;
  line-height: 150%;
  margin-top: 2.0625rem;
}

.modalContainer {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: RGBA(234, 92, 96, 0.5);
  z-index: 9999;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.modalContainer.open {
  opacity: 1;
  pointer-events: unset;
  visibility: visible;
  transition: all ease 300ms;
}
.modalContainer .modal {
  width: 900px;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  padding: 3.125rem;
  overflow: overlay;
  max-height: 95vh;
  overscroll-behavior: contain;
}
.modalContainer .modal h3 {
  text-align: center;
  margin: 0;
}
.modalContainer .modal .closeModal {
  position: absolute;
  top: 1.625rem;
  right: 1.25rem;
  width: 1.25rem;
  height: 1.25rem;
  background-image: url(../images/icon/closeModal.svg);
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
}
.modalContainer .modal form {
  padding-top: 1.875rem;
}
.modalContainer .modal form .row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-content: flex-start;
  align-items: flex-start;
}
.modalContainer .modal form label {
  margin-bottom: 0.5625rem;
  -webkit-appearance: none;
}
.modalContainer .modal form label .title {
  color: #181716;
  font-family: "Product Sans", sans-serif;
  font-size: 1.125rem;
  line-height: 135%;
  margin-bottom: 0.4375rem;
  display: block;
  width: 100%;
  color: black;
}
.modalContainer .modal form label input, .modalContainer .modal form label textarea, .modalContainer .modal form label select {
  width: 100%;
}
.modalContainer .modal form label input::placeholder, .modalContainer .modal form label textarea::placeholder, .modalContainer .modal form label select::placeholder {
  color: #677071;
}
.modalContainer .modal form label input:active, .modalContainer .modal form label input:focus, .modalContainer .modal form label textarea:active, .modalContainer .modal form label textarea:focus, .modalContainer .modal form label select:active, .modalContainer .modal form label select:focus {
  border-color: #0070f9;
}
.modalContainer .modal form label span.error {
  color: #EA5C60;
  font-family: "Product Sans", sans-serif;
  font-size: 0.90625rem;
  line-height: 150%;
  opacity: 0;
  display: inline-block;
  transition: all 300ms ease;
}
.modalContainer .modal form label.error input {
  border-color: #EA5C60;
  border-width: 1.5px;
  padding: 0.71875rem 0.96875rem;
}
.modalContainer .modal form label.error span.error {
  opacity: 1;
}
.modalContainer .modal form label.firstname {
  width: calc(50% - 1.5625rem);
}
.modalContainer .modal form label.lastname {
  width: calc(50% - 1.5625rem);
}
.modalContainer .modal form label.email {
  width: calc(50% - 1.5625rem);
}
.modalContainer .modal form label.phone {
  width: calc(50% - 1.5625rem);
}
.modalContainer .modal form label.msg {
  width: 100%;
}
.modalContainer .modal form label.msg textarea {
  min-height: 7.5rem;
  resize: none;
}
.modalContainer .modal form label.expertise {
  width: 100%;
}
.modalContainer .modal form .fileTextcontainer {
  padding-top: 0.625rem;
  text-align: center;
}
.modalContainer .modal form .fileTextcontainer .fileContainer {
  margin: 1.3125rem 0 2.5rem;
}
.modalContainer .modal form .fileTextcontainer .fileContainer .fileText {
  font-size: 0.90625rem;
  line-height: 150%;
  font-family: "Product Sans", sans-serif;
  color: black;
  margin-top: 0.8125rem;
}
.modalContainer .modal form .fileTextcontainer .btn.big.arrow {
  margin-top: 2.5rem;
}
.modalContainer .modal form .fileTextcontainer .btn.big.arrow.spontaneous {
  margin-top: 2.0625rem;
}
.modalContainer .modal form .inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}
.modalContainer .modal form .fileLabel {
  position: relative;
}
.modalContainer .modal form .fileLabel span.error {
  position: absolute;
  left: 50%;
  bottom: -22px;
  transform: translateX(-50%);
  font-weight: normal;
  width: 100%;
}
.modalContainer .modal .confirmationTitle, .modalContainer .modal .confirmation, .modalContainer .modal .errorOnRequest, .modalContainer .modal .errorTitle {
  display: none;
}
.modalContainer .modal.confirm, .modalContainer .modal.requestError {
  text-align: center;
}
.modalContainer .modal.confirm .formTitle, .modalContainer .modal.requestError .formTitle {
  display: none;
}
.modalContainer .modal.confirm form, .modalContainer .modal.requestError form {
  display: none;
}
.modalContainer .modal.confirm .btn.big, .modalContainer .modal.requestError .btn.big {
  margin-top: 2.25rem;
}
.modalContainer .modal.confirm .confirmation {
  display: block;
}
.modalContainer .modal.confirm .confirmationTitle {
  display: block;
  margin-bottom: 1.4375rem;
}
.modalContainer .modal.requestError .errorOnRequest {
  display: block;
}
.modalContainer .modal.requestError .errorTitle {
  display: block;
  margin-bottom: 1.4375rem;
}

.noMarginBottom {
  margin-bottom: 0 !important;
}

.removeFile {
  margin-left: 1.875rem;
  cursor: pointer;
}
.removeFile.noStyle {
  margin: 0;
  cursor: unset;
  pointer-events: none;
  display: none;
}

.linkCandidature {
  cursor: pointer;
}

.noBorder {
  border: 0px !important;
}

@media screen and (min-width: 667px) {
  header .menuContainer nav {
    padding: 120px 90px 70px 90px;
  }
}
@media screen and (min-width: 996px) {
  footer .firstRow .removeOn995, .footer .firstRow .removeOn995 {
    display: none;
  }
}
@media screen and (max-width: 995px) {
  header .menuContainer .menu .leftSide {
    flex-wrap: wrap;
  }
  header .menuContainer .menu .leftSide .logo {
    margin: 0;
  }
  header .menuContainer .menu .leftSide .textHeader {
    margin-top: 0.9375rem;
    width: 100%;
  }
  header .menuContainer .menu .rightSide {
    min-width: 21.4375rem;
  }
  header .menuContainer .menu .rightSide .langSwitch {
    font-size: 1.5rem;
    margin-right: 1.125rem;
  }
  header .menuContainer .menu .rightSide .btn {
    min-width: 14.625rem;
    text-align: center;
  }
  .modalContainer .modal {
    width: 95%;
  }
  footer .firstRow .link, .footer .firstRow .link {
    display: flex;
    flex-flow: column;
    align-items: flex-end;
  }
  footer .firstRow .link a, .footer .firstRow .link a {
    margin-right: 0;
  }
  footer .firstRow .link .linkdin, .footer .firstRow .link .linkdin {
    display: block;
    margin-left: auto;
  }
  footer .secondRow, .footer .secondRow {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .m {
    display: none !important;
  }
  a[href^="tel:"] {
    text-decoration: none;
    cursor: default;
    color: inherit;
    pointer-events: none;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .popin {
    width: 90% !important;
    left: 5% !important;
    top: 2.75em !important;
    position: absolute !important;
    height: auto !important;
  }
  .d {
    display: none !important;
  }
  body {
    min-width: 320px;
  }
  form {
    position: relative;
    display: block;
    height: auto;
  }
  header .menuContainer {
    height: 9.375rem;
    padding: 1.3125rem 0;
    background-image: url(/media/Images/bgHumania_mobile.jpg);
    background-size: cover;
  }
  header .menuContainer .wrapper {
    height: 9.375rem;
  }
  header .menuContainer .menu .leftSide .logo {
    width: 10.5rem;
    height: 1.75rem;
  }
  header .menuContainer .menu .leftSide .textHeader {
    margin-top: 0.9375rem;
    width: 100%;
  }
  header .menuContainer .menu .rightSide {
    min-width: 8.75rem;
    height: 2rem;
  }
  header .menuContainer .menu .rightSide .langSwitch {
    font-size: 1.5rem;
    margin-right: 1.125rem;
  }
  header .menuContainer .menu .rightSide .btn {
    min-width: 1.5rem;
    min-height: 1.375rem;
    margin-right: 2.25rem;
    margin-right: 2.25rem;
    mask-image: url(../images/icon/offreEmploi.svg);
    mask-repeat: no-repeat;
    mask-size: cover;
    background-color: white;
    padding: 0;
    border-radius: 0;
  }
  header .menuContainer .menu .rightSide .btn .btnText {
    display: none;
  }
  header .menuContainer .menu .rightSide .menuIcon {
    width: 1.5625rem;
  }
  header .menuContainer .menu .rightSide .menuIcon .menuIconContainer {
    width: 1.5625rem;
  }
  header .menuContainer .menu .rightSide .menuIcon .menuIconContainer span, header .menuContainer .menu .rightSide .menuIcon .menuIconContainer span::before, header .menuContainer .menu .rightSide .menuIcon .menuIconContainer span::after {
    width: 1.5625rem;
    height: 3px;
  }
  header .menuContainer nav.open {
    width: 100%;
    left: 0;
    max-width: unset;
  }
  input[type=submit], input[type=button], .btn, .formSubmit button {
    padding: 0.375rem 1.125rem;
    font-size: 0.75rem;
    line-height: 0.875rem;
  }
  input[type=submit].arrow, input[type=button].arrow, .btn.arrow, .formSubmit button.arrow {
    padding: 0.3125rem 1.125rem 0.3125rem 2rem;
  }
  input[type=submit].arrow:before, input[type=button].arrow:before, .btn.arrow:before, .formSubmit button.arrow:before {
    width: 0.375rem;
    height: 0.6875rem;
    left: 1.125rem;
  }
  input[type=submit].big, input[type=button].big, .btn.big, .formSubmit button.big {
    padding: 0.625rem 1.625rem;
    font-size: 1rem;
    line-height: 110%;
  }
  input[type=submit].big.arrow, input[type=button].big.arrow, .btn.big.arrow, .formSubmit button.big.arrow {
    padding-right: 2.625rem;
  }
  input[type=submit].big.arrow:before, input[type=button].big.arrow:before, .btn.big.arrow:before, .formSubmit button.big.arrow:before {
    width: 0.375rem;
    height: 0.6875rem;
    right: 1.625rem;
    left: unset;
  }
  .modalContainer .modal {
    padding: 1.5rem 1.25rem 1.25rem;
  }
  .modalContainer .modal .closeModal {
    top: 0.4375rem;
    right: 0.625rem;
  }
  .modalContainer .modal form .row {
    flex-wrap: wrap;
  }
  .modalContainer .modal form label .title {
    font-size: 0.90625rem;
    margin-bottom: 0.3125rem;
  }
  .modalContainer .modal form label span.error {
    font-size: 0.65625rem;
  }
  .modalContainer .modal form label.firstname {
    width: 100%;
  }
  .modalContainer .modal form label.lastname {
    width: 100%;
  }
  .modalContainer .modal form label.email {
    width: 100%;
  }
  .modalContainer .modal form label.phone {
    width: 100%;
  }
  .modalContainer .modal form label.msg {
    width: 100%;
  }
  .modalContainer .modal form label.msg textarea {
    min-height: 7.5rem;
    resize: none;
  }
  .modalContainer .modal form label.expertise {
    width: 100%;
  }
  .modalContainer .modal form .fileTextcontainer .fileContainer {
    margin: 1rem 0 1.25rem;
  }
  .modalContainer .modal form .fileTextcontainer .fileContainer .fileText {
    font-size: 0.65625rem;
    line-height: 110%;
    margin-top: 0.625rem;
  }
  .modalContainer .modal form .fileTextcontainer .btn.big.arrow {
    margin-top: 1.25rem;
  }
  footer, .footer {
    padding: 2.125rem 0;
  }
  footer .wrapper, .footer .wrapper {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
    align-items: center;
  }
  footer .firstRow, .footer .firstRow {
    justify-content: center;
    flex-wrap: wrap;
  }
  footer .firstRow .logo, .footer .firstRow .logo {
    width: 12.875rem;
    height: 2.125rem;
    position: relative;
    display: flex;
  }
  footer .firstRow .logo img, .footer .firstRow .logo img {
    object-fit: cover;
  }
  footer .firstRow .link, .footer .firstRow .link {
    width: 100%;
    margin: 2.8125rem 0 0;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
  }
  footer .firstRow .link a, .footer .firstRow .link a {
    margin: 0 0 0.9375rem;
    font-size: 0.96875rem;
    width: 100%;
  }
  footer .firstRow .link .linkdin, .footer .firstRow .link .linkdin {
    margin: 0 auto;
    width: 1.75rem;
    height: 1.75rem;
  }
  footer .secondRow, .footer .secondRow {
    margin-top: 1.6875rem;
    text-align: center;
    justify-content: center;
  }
  footer .secondRow ul li a, .footer .secondRow ul li a {
    font-size: 0.78125rem;
    line-height: 145%;
  }
  footer .thirdRow, .footer .thirdRow {
    margin-top: 1.6875rem;
    text-align: center;
    font-size: 0.65625rem;
  }
  .menuMobile {
    height: calc(100% - 3.75rem);
    top: 3.75rem;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    left: 0;
    width: 100%;
    display: none;
  }
}
