/* utils */
/* body */
/* a */
#border-bottom-only, form .form-control.border-bottom-only {
  border-top: 0;
  border-left: 0;
  border-right: 0;
  box-shadow: none; }

/* base */
body {
  background-color: #ebeff0;
  color: #5b5b5b;
  overflow-x: hidden; }

body,
input,
textarea,
select {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 20px;
  line-height: 1.5; }

a {
  color: inherit;
  text-decoration: none; }
  a:hover {
    text-decoration: none; }

@media (min-width: 1200px) {
  .container {
    width: 1300px; } }

@media (max-width: 768px) {
  html {
    overflow-x: hidden; } }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #245573;
  font-weight: 400; }
  h1 strong,
  h2 strong,
  h3 strong,
  h4 strong,
  h5 strong,
  h6 strong {
    font-weight: 600; }

h1.big {
  color: #FFFFFF;
  font-size: 3em;
  text-transform: uppercase; }

h2 {
  font-size: 1.85em; }

h3 {
  font-size: 1.5em;
  font-weight: 300; }

h4 {
  color: #39434d;
  font-size: 1.25em;
  margin: 0 0 0.25em 0; }

@media (max-width: 768px) {
  h1.big {
    color: #FFFFFF;
    font-size: 2em;
    text-transform: uppercase; } }

strong,
b {
  font-weight: 400;
  color: #2399d9; }

p {
  color: #1b1b1b;
  font-weight: 300; }

/* components */
.card {
  margin: 0 auto;
  min-height: 645px; }
  .card img {
    margin-bottom: 0.5em;
    width: 100%; }
  .card h4 {
    margin: 1.75em 0 1em 0; }
  .card p {
    font-weight: 300;
    line-height: 1;
    padding: 0 1.75em 2.5em; }

@media (max-width: 768px) {
  .card {
    margin: 1em auto; }
    .card h4 {
      margin: 1em 0 1em 0; }
    .card p {
      padding-bottom: 10px; } }

.fact, .screen {
  margin: 0 auto;
  text-align: center; }
  .fact img, .screen img {
    margin-bottom: 0.5em;
    width: 110px; }
  .fact h4, .screen h4 {
    margin: 1em 0 1em 0; }
  .fact p, .screen p {
    padding: 0 0.5em; }

@media (max-width: 768px) {
  .fact, .screen {
    margin: 1em auto; }
    .fact h4, .screen h4 {
      margin: 1em 0 1em 0; }
    .fact p, .screen p {
      padding: 0; } }

.pack {
  margin: 0 auto;
  text-align: left; }
  .pack .picture {
    display: inline-block;
    float: left;
    width: 100px; }
  .pack .info {
    padding: 3px 0 0 10px;
    display: inline-block;
    width: 260px; }
  .pack img {
    width: 100px; }
  .pack hr {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 20px;
    width: 100px; }
  .pack p {
    font-size: 0.9em; }
  .pack h4 {
    font-weight: normal; }
    .pack h4 strong {
      font-weight: normal; }

@media (max-width: 768px) {
  .pack {
    margin: 1em auto; }
    .pack h4 {
      margin: 1em 0 1em 0; }
    .pack p {
      padding: 0; } }

.screen img {
  height: 160px;
  width: auto; }

.screen h4 {
  margin-bottom: 15px; }

.screen p {
  margin: 0 auto;
  width: 80%; }

.row {
  padding: 30px 0; }

.bg-variant-green-blue {
  background-color: #ebeff0; }

.bg-variant-blue {
  background-color: #2399d9; }

.bg-variant-white {
  background-color: #FFFFFF; }

.text-variant-white {
  color: #FFFFFF; }

.btn {
  font-size: 1.1em;
  font-weight: bold;
  min-width: 270px;
  text-transform: uppercase; }
  .btn.btn-primary {
    background-color: #2399d9;
    border-color: transparent;
    border-bottom: 2px solid #1f82bb; }
  .btn.btn-inverse {
    background-color: #FFFFFF;
    border-color: #d0d0d0;
    border-bottom: 2px solid #d0d0d0;
    color: #2399d9; }

hr {
  border-top: 1px solid #d0d0d0;
  margin-top: 30px;
  margin-bottom: 30px;
  width: 206px; }

section {
  padding-bottom: 25px;
  padding-top: 30px; }

.cookie-alert {
  background: #d0d0d0;
  bottom: 0;
  font-size: 0.8em;
  padding: 0.5em;
  position: fixed;
  text-align: center;
  width: 100%;
  z-index: 2147483647; }
  .cookie-alert a {
    margin: 0 5px; }
  .cookie-alert p {
    margin: 0; }
  .cookie-alert .cookie-alert-close {
    cursor: pointer;
    font-weight: 700; }

@media (max-width: 768px) {
  .mobile-no-padding {
    padding-left: 0;
    padding-right: 0;
    margin: -15px; }
  .mobile-submit {
    min-width: 100%;
    float: none !important; } }

/* layout */
.brand-banner {
  background: url("../image_compressed/header.jpg");
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
  height: 100vh;
  min-height: 550px;
  width: 100%; }
  .brand-banner.brand-mini {
    height: 45vh;
    min-height: 420px; }

.inner {
  position: relative;
  text-align: center;
  width: 100%; }
  .inner .brand {
    vertical-align: middle; }
    .inner .brand .brand-header {
      line-height: 55vh; }
      .inner .brand .brand-header img {
        height: 260px; }
    .inner .brand .brand-title {
      margin-top: 50px; }
      .inner .brand .brand-title h2 {
        color: #FFFFFF;
        font-size: 1.1em;
        font-weight: 700;
        margin-bottom: 20px; }
      .inner .brand .brand-title p {
        color: #FFFFFF;
        font-weight: 300; }
    .inner .brand .brand-footer img {
      width: 80px; }

@media (max-width: 768px) {
  .brand-banner {
    height: 140vh; }
    .brand-banner.brand-mini {
      height: 45vh;
      min-height: 0;
      height: 100%; }
  .inner {
    position: relative;
    text-align: center;
    width: 100%; }
    .inner .brand .brand-header img {
      height: 210px; } }

footer {
  font-size: 0.8em;
  padding: 50px 0 20px 0; }
  footer img {
    height: 23px;
    width: 23px; }
  footer .row {
    padding: 10px 0; }

.navbar {
  padding: .5em 0; }
  .navbar.navbar-default {
    border-bottom: 1px solid #2399d9; }
  .navbar.navbar-fixed-top {
    padding: 0.5em 0; }

.navbar-brand img {
  bottom: 13px;
  display: block;
  height: 2em;
  position: absolute; }

.navbar-brand {
  padding: 0px; }

.navbar-brand > img {
  height: 40px;
  margin-left: 15px;
  position: absolute;
  top: 17px;
  width: auto; }

.navbar-default {
  background: none;
  border: none; }
  .navbar-default .navbar-nav > li > a {
    color: #FFFFFF;
    font-size: 0.7em;
    font-weight: 700;
    padding-bottom: 3px;
    text-transform: uppercase; }
    .navbar-default .navbar-nav > li > a:not(.no-underline):focus, .navbar-default .navbar-nav > li > a:not(.no-underline):hover {
      border-bottom: 1px solid #FFFFFF;
      color: #FFFFFF; }
  .navbar-default .navbar-nav .open > a {
    background-color: transparent;
    color: #FFFFFF; }
    .navbar-default .navbar-nav .open > a:focus, .navbar-default .navbar-nav .open > a:hover {
      background-color: transparent;
      color: #FFFFFF; }
  .navbar-default .navbar-nav .dropdown-menu {
    text-align: center;
    margin-top: 10px; }
    .navbar-default .navbar-nav .dropdown-menu.connexion {
      padding: 20px;
      right: -87px; }
      .navbar-default .navbar-nav .dropdown-menu.connexion .form-group {
        margin-bottom: 20px; }
    .navbar-default .navbar-nav .dropdown-menu.lang {
      text-align: left;
      right: -57px; }
    .navbar-default .navbar-nav .dropdown-menu.home {
      right: -47px; }
    .navbar-default .navbar-nav .dropdown-menu.societe {
      right: -38px; }
    .navbar-default .navbar-nav .dropdown-menu:before {
      content: "";
      border-style: solid;
      border-width: 0 5px 8px 5px;
      border-color: transparent transparent #ffffff transparent;
      height: 0;
      position: absolute;
      top: -8px;
      right: 47%;
      width: 0; }
    .navbar-default .navbar-nav .dropdown-menu a:active, .navbar-default .navbar-nav .dropdown-menu a:focus, .navbar-default .navbar-nav .dropdown-menu a:hover {
      background-color: transparent;
      color: #2399d9; }
  .navbar-default .navbar-nav .lang-arrow {
    border-style: solid;
    border-width: 4px 3px 0 3px;
    border-color: #ffffff transparent transparent transparent;
    height: 0;
    width: 0;
    position: absolute;
    top: 24px;
    right: 3px; }
  .navbar-default .navbar-toggle {
    border-color: #FFFFFF; }
    .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
      background: none; }
    .navbar-default .navbar-toggle .icon-bar {
      background-color: #FFFFFF; }

.navbar-fixed-top {
  background: #2399d9;
  opacity: 0.9; }

.navbar-right {
  margin-right: 30px; }

@media (max-width: 768px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #FFFFFF; } }

@media (min-width: 768px) and (max-width: 991px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #333; } }

form label {
  color: #7c7c7e;
  font-weight: 300; }

form .form_error {
  color: #ea4444; }
  form .form_error input {
    color: #ea4444;
    border-color: #ea4444; }
  form .form_error span {
    font-size: 0.7em;
    float: right; }

form .checkbox input[type="checkbox"] {
  position: relative; }

form .form-control {
  border-radius: 0;
  font-size: 1.1em;
  min-height: 45px; }
  form .form-control.border-bottom-only {
    padding: 6px 0; }
    form .form-control.border-bottom-only:focus {
      box-shadow: none; }
  form .form-controltextarea {
    height: 240px; }

form .form-group {
  margin-bottom: 30px; }

/* pages */
#they-thrust-us {
  background-image: url("../image_compressed/background_logo.png"); }
  #they-thrust-us img {
    display: block;
    margin: 10px; }

#contact-us {
  background-image: url("../image_compressed/map.png");
  background-repeat: no-repeat;
  padding-top: 500px; }
  #contact-us form .form-control {
    padding: 6px 12px; }
  #contact-us h1 {
    margin-top: 0; }
  #contact-us .container {
    padding: 0 60px; }
  #contact-us .logo-contact div {
    height: 70px;
    margin: 25px 0; }
  #contact-us .logo-contact img {
    height: 70px;
    margin-right: 30px; }
  #contact-us .logo-contact p {
    font-size: 0.8em;
    font-weight: normal;
    line-height: 1.5; }
    #contact-us .logo-contact p.phone-contact {
      padding-top: 8px; }
    #contact-us .logo-contact p.email-contact {
      padding-top: 21px; }
    #contact-us form input[type="checkbox"] {
      width: 25px;
      min-height: 25px;
      height: 25px;
      position: absolute;
      top: 0;
      left: 0;
    }
    #contact-us form .form-checkbox {
      position: relative;
    }
    #contact-us form .form-checkbox label {
      margin-left: 35px;
    }

@media (max-width: 768px) {
  #contact-us .container {
    padding: 0 20px; } }

#nearby-your-needs {
  background: url("../images/editeur/fond_annonceur_2.png");
  padding: 120px; }
  #nearby-your-needs h1 {
    margin-top: 0;
    margin-bottom: 0; }

@media (max-width: 768px) {
  #offer .col-xs-12 {
    margin: 0;
    padding-left: 5px;
    padding-right: 5px; } }

@media (max-width: 768px) {
  .g-recaptcha {
    margin-bottom: 30px;  } }

.font14 {
  font-size: 14px;
}
.privacy-table tr td {
  padding: 5px;
}
