/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url("../font/lato-regular.woff2") format("woff2"), url("../font/lato-regular.woff") format("woff"); }

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url("../font/lato-bold.woff2") format("woff2"), url("../font/lato-bold.woff") format("woff"); }

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url("../font/lato-black.woff2") format("woff2"), url("../font/lato-black.woff") format("woff"); }

:root {
  --color-primary: #bce4fa;
  --color-secondary: #e93b8e;
  --color-status: #2fb348;
  --color-error: #e23345; }

/* ** COLORS */
.green {
  color: var(--color-status); }

.red {
  color: var(--color-error); }

/* ** CLASSES */
.ghost {
  clear: both; }

.container, .large-content, .content {
  position: relative;
  width: 100%;
  margin: 0 auto; }

.large-content {
  max-width: 1280px; }

.content {
  max-width: 1024px; }

.table-middle {
  display: table;
  height: 100%;
  width: 100%; }

.cell-middle {
  display: table-cell;
  vertical-align: middle; }

.left {
  float: left; }

.right {
  float: right; }

.full-width {
  width: 100%; }

.two-column {
  width: 49%; }

.three-column {
  width: 32%; }

.one-third {
  width: 32.3%; }

.two-third {
  width: 65.6%; }

.column-left {
  margin-right: 1%; }

.column-right {
  margin-left: 1%; }

.column-middle {
  margin-left: 1%;
  margin-right: 1%; }

.transition,
.transition * {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }

.border {
  border: solid 1px black; }

.active {
  cursor: default; }

.bg-cover {
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }
  .bg-cover > img {
    width: 100%; }

.semi-transparent {
  opacity: 0.8; }

.overlay {
  display: none;
  z-index: 10;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8); }
  .overlay .table-middle .cell-middle {
    position: relative; }
    .overlay .table-middle .cell-middle .theater {
      position: relative;
      width: 100%;
      text-align: center; }
      .overlay .table-middle .cell-middle .theater iframe {
        width: 940px;
        height: 529px; }
  .overlay .btn-close {
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    top: 20px;
    right: 20px;
    background: url(../img/btn-close.png) top left no-repeat;
    background-size: contain; }

.loader.grey {
  display: none;
  background: url(../img/loader-grey.gif) top left no-repeat; }

/* ** GLOBAL */
*,
*::before,
*::after {
  box-sizing: border-box;
  -moz-box-sizing: border-box; }

* {
  outline: none; }

body {
  overflow-x: hidden;
  font-family: 'Hind', sans-serif; }

a {
  color: inherit; }

b {
  font-weight: 700; }

small {
  font-size: x-small; }

#logo-daily {
  z-index: 3;
  display: block;
  position: absolute;
  width: 29px;
  height: 38px;
  top: 10px;
  right: 10px;
  background: url(../img/logo-daily.png) top left no-repeat;
  background-size: contain; }

html,
body {
  margin: 0;
  padding: 0; }

p {
  margin: 1em 0; }

#header {
  padding: 0 10px 36px;
  position: relative;
  background-color: var(--color-primary);
  display: flex;
  flex-direction: column; }
  #header .headings {
    margin-right: -10px;
    margin-left: -10px;
    color: #fff;
    text-align: center; }
  #header #header-body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column; }
  #header .application-container,
  #header .confirmation {
    flex: 1 1 auto; }
  #header .confirmation {
    position: relative;
    padding-bottom: 33.33vw; }
    #header .confirmation .confirmation-content {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%; }

#header-body {
  min-height: 960px; }

#header-main-image {
  display: none; }

#header-main-image-mobile {
  display: block;
  width: 100%;
  height: auto; }

#main {
  padding: 32px 20px;
  text-align: center;
  color: #000; }

h2 {
  font: 1.375em Lato, sans-serif;
  text-transform: uppercase;
  color: var(--color-secondary); }
  h2 strong {
    font-weight: 900; }

#list-videos {
  padding: 22px 0 32px;
  text-align: center; }
  #list-videos ul {
    max-width: 1024px;
    margin: 0 -16px;
    padding: 0 16px;
    overflow: auto;
    list-style-type: none;
    position: relative;
    overflow: visible; }
    #list-videos ul:not(:empty)::after, #list-videos ul:not(:empty)::before {
      content: "";
      display: block;
      position: absolute;
      z-index: -10; }
    #list-videos ul li {
      padding: 10px 0; }
      #list-videos ul li a {
        display: block;
        width: 100%;
        background: url(../img/play.png) no-repeat center; }

.video-title {
  font: .8125em Arial, Helvetica Neue, Helvetica, sans-serif;
  text-align: left;
  margin: 8px 0 0; }

.follow {
  margin: -4px 0 40px;
  font: .9375em Lato, sans-serif; }
  .follow strong {
    font-weight: 700; }
  .follow a {
    display: block;
    text-decoration: none; }
  .follow [class^="icon-"]:before,
  .follow [class*=" icon-"]:before {
    background-color: #fff; }

.legal-notice {
  max-width: 768px;
  margin: 0 auto;
  font: .8em Arial, Helvetica Neue, Helvetica, sans-serif;
  text-align: justify; }
  .legal-notice p {
    margin: 16px 0; }

input {
  border-radius: 0; }

input[type="search"] {
  -webkit-appearance: none; }

form {
  text-align: left; }
  form fieldset {
    border: 0;
    padding: 0;
    border: 0; }
    form fieldset legend {
      font: 900 1.5em Lato, sans-serif;
      text-transform: uppercase;
      margin-bottom: .2em; }
      form fieldset legend strong {
        font-size: 1.2em; }
    form fieldset + fieldset {
      margin-top: 20px; }
  form .form-item:not(.form-item-file) + .form-item {
    margin-top: 10px; }
  form .form-item-textfield label,
  form .form-item-email label,
  form .form-item-checkbox label {
    font: 400 .93em Lato, sans-serif; }
  form .form-item-textfield label,
  form .form-item-email label {
    display: block; }
  form .form-item label.required::after {
    content: '*'; }
  form input[type="text"],
  form input[type="email"] {
    max-width: 448px;
    width: 100%;
    border: none;
    height: 40px;
    padding-left: 10px;
    font: 400 .9em Lato, sans-serif; }
  form #prenom {
    background-image: url("../img/textfield-name.svg"); }
  form #mail {
    background-image: url("../img/textfield-email.svg"); }
  form .button {
    display: inline-block;
    padding: 1em 30px;
    background-color: var(--color-secondary);
    color: white;
    font: 400 .875em Lato, sans-serif;
    border: 0; }
    form .button.button-icon {
      padding: 1em 70px 1em 30px;
      background-repeat: no-repeat;
      background-position: 80% center;
      background-size: 24px auto; }
    form .button.button-icon-download {
      background-image: url("../img/icon-file.png"); }
    form .button.button-icon-send {
      background-image: url("../img/icon-video.png"); }

.confirmation {
  font: 900 2em Lato, sans-serif;
  color: #000;
  text-align: center; }

#file-errors,
.error {
  padding: 10px 0;
  color: red; }
  #file-errors p,
  .error p {
    margin: 0; }

#sponsors {
  display: none; }

.links {
  margin-top: 1.5em; }

.list-item {
  font: 700 .94em/1 Lato, sans-serif;
  display: flex;
  align-items: center; }
  .list-item::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 4px; }
  .list-item [class^="icon-"]:before {
    font-size: 1.4em; }
  .list-item + .list-item {
    margin-top: .5em; }
  .list-item a {
    text-decoration: none; }
  .list-item.list-item-info::before {
    background-image: url("../img/icon-info.svg"); }
  .list-item.list-item-facebook::before {
    background-image: url("../img/icon-facebook.svg"); }

.list-item + .list-item {
  margin-top: .5em; }

.icon-facebook-official::before {
  filter: invert(100%); }

@media only screen and (min-width: 1024px) {
  #header {
    padding: 0 0 24px;
    background-image: url("../img/bg-header-main.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: relative; }
    #header .headings {
      margin-left: auto;
      margin-right: auto; }
    #header #header-body {
      flex-direction: row;
      justify-content: center;
      align-items: center;
      /* flex-start */ }
      #header #header-body .headings {
        width: 58%; }
        #header #header-body .headings img {
          width: 100%; }
      #header #header-body .application-container,
      #header #header-body .confirmation {
        padding: 42px 20px 16px; }
      #header #header-body .application-container,
      #header #header-body .confirmation {
        flex: 0 1 auto;
        width: 38%; }
      #header #header-body .form-container {
        position: relative; }
  #header-body {
    min-height: 630px; }
  #header-main-image {
    display: block; }
  #header-main-image-mobile {
    display: none; }
  .subheading {
    font-size: 1.6875em; }
    .subheading br {
      display: inline; }
  h2 {
    font-size: 2em; }
  .follow a {
    display: inline-block; }
  #list-videos {
    position: relative; }
    #list-videos ul {
      display: flex;
      flex-wrap: wrap;
      margin: 0 auto;
      padding: 0;
      position: relative;
      overflow: visible; }
      #list-videos ul li {
        width: 25%;
        padding: 10px; }
      #list-videos ul::before {
        content: "";
        display: block;
        position: absolute;
        z-index: -10;
        top: calc(100% - 36px);
        right: calc(100% + 42px);
        width: 76px;
        height: 63px;
        background: url("../img/bg-main-tool.svg") no-repeat center;
        background-size: 200px auto; }
      #list-videos ul::after {
        content: "";
        display: block;
        position: absolute;
        z-index: -10;
        bottom: calc(100% - 50px);
        left: calc(100% + 20px);
        width: 136px;
        height: 81px;
        background: url("../img/bg-main-gearwheels.svg") no-repeat center;
        background-size: 200px auto; }
  .confirmation {
    font-size: 2.5em; }
  #file-wrapper {
    min-height: 72px; } }

@media only screen and (min-width: 1366px) {
  #header #header-body .form-container {
    position: relative; }
    #header #header-body .form-container #sponsors {
      display: flex;
      position: absolute;
      bottom: 0;
      left: 274px; }
      #header #header-body .form-container #sponsors img + img {
        margin-left: 24px; } }

/* #Tablet ================================================== */
@media only screen and (max-width: 1024px) {
  #logo-daily {
    z-index: 10;
    display: block;
    position: absolute;
    width: 15px;
    height: 20px; }
  .overlay .table-middle .cell-middle .theater iframe {
    width: 730px;
    height: 411px; }
  /* ** CONCOURS */
  #concours {
    padding-bottom: 4%; }
    #concours > .content > .left,
    #concours > .content > .right {
      float: none; }
    #concours > .content > .left {
      display: block;
      background-image: none;
      margin: 0 auto 20px; }
      #concours > .content > .left > img:first-child {
        margin: 0 auto 20px; }
      #concours > .content > .left > img:last-child {
        display: none; }
    #concours > .content > .right {
      width: 80%;
      margin: 0 auto; } }

/* #Mobile ================================================== */
@media only screen and (max-width: 767px) {
  /* ** CLASSES */
  .victory {
    font-size: 0.6em; }
    .victory img {
      width: 40px;
      height: 40px; }
  .error {
    padding-left: 0; }
  .overlay .table-middle .cell-middle .theater iframe {
    width: 300px;
    height: 169px; }
  /* ** CONCOURS */
  #concours {
    border: none; }
    #concours > .content > .left {
      width: 100%;
      text-align: center; }
      #concours > .content > .left > img:first-child {
        width: 70%;
        max-width: 260px; }
      #concours > .content > .left h1 img {
        width: 85%;
        max-width: 390px;
        height: auto; }
      #concours > .content > .left p {
        margin-left: 0;
        margin-bottom: 0px;
        text-align: left; }
    #concours > .content > .right {
      width: 96%; }
      #concours > .content > .right #form-wrapper form {
        padding-left: 0;
        border-left: none; }
        #concours > .content > .right #form-wrapper form fieldset:nth-child(n) legend:before {
          content: none; } }
