@charset "UTF-8";
/* ------------------------------------------------------ */
/* DIN
/* ------------------------------------------------------ */
@font-face {
  font-family: 'dinregular';
  src: url("../fonts/dinregular.eot");
  src: url("../fonts/dinregular.eot?#iefix") format("embedded-opentype"), url("../fonts/dinregular.woff2") format("woff2"), url("../fonts/dinregular.woff") format("woff"), url("../fonts/dinregular.ttf") format("truetype"), url("../fonts/dinregular.svg#dinregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'dinboldregular';
  src: url("../fonts/dinboldregular.eot");
  src: url("../fonts/dinboldregular.eot?#iefix") format("embedded-opentype"), url("../fonts/dinboldregular.woff2") format("woff2"), url("../fonts/dinboldregular.woff") format("woff"), url("../fonts/dinboldregular.ttf") format("truetype"), url("../fonts/dinboldregular.svg#dinboldregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* ------------------------------------------------------ */
/* JOSEFIN SANS
/* ------------------------------------------------------ */
@font-face {
  font-family: 'josefin_sansregular';
  src: url("../fonts/josefin_sansregular.eot");
  src: url("../fonts/josefin_sansregular.eot?#iefix") format("embedded-opentype"), url("../fonts/josefin_sansregular.woff2") format("woff2"), url("../fonts/josefin_sansregular.woff") format("woff"), url("../fonts/josefin_sansregular.ttf") format("truetype"), url("../fonts/josefin_sansregular.svg#josefin_sansregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'josefin_sanslight';
  src: url("../fonts/josefin_sanslight.eot");
  src: url("../fonts/josefin_sanslight.eot?#iefix") format("embedded-opentype"), url("../fonts/josefin_sanslight.woff2") format("woff2"), url("../fonts/josefin_sanslight.woff") format("woff"), url("../fonts/josefin_sanslight.ttf") format("truetype"), url("../fonts/josefin_sanslight.svg#josefin_sanslight") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'josefin_sanssemibold';
  src: url("../fonts/josefin_sanssemibold.eot");
  src: url("../fonts/josefin_sanssemibold.eot?#iefix") format("embedded-opentype"), url("../fonts/josefin_sanssemibold.woff2") format("woff2"), url("../fonts/josefin_sanssemibold.woff") format("woff"), url("../fonts/josefin_sanssemibold.ttf") format("truetype"), url("../fonts/josefin_sanssemibold.svg#josefin_sanssemibold") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'josefin_sansbold';
  src: url("../fonts/josefin_sansbold.eot");
  src: url("../fonts/josefin_sansbold.eot?#iefix") format("embedded-opentype"), url("../fonts/josefin_sansbold.woff2") format("woff2"), url("../fonts/josefin_sansbold.woff") format("woff"), url("../fonts/josefin_sansbold.ttf") format("truetype"), url("../fonts/josefin_sansbold.svg#josefin_sansbold") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* ------------------------------------------------------ */
/* MYRIAD PRO
/* ------------------------------------------------------ */
@font-face {
  font-family: 'myriad_proregular';
  src: url("../fonts/myriad_proregular.eot");
  src: url("../fonts/myriad_proregular.eot?#iefix") format("embedded-opentype"), url("../fonts/myriad_proregular.woff2") format("woff2"), url("../fonts/myriad_proregular.woff") format("woff"), url("../fonts/myriad_proregular.ttf") format("truetype"), url("../fonts/myriad_proregular.svg#myriad_proregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
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: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/* ------------------------------------------------------ */
/* MIXIN
/* ------------------------------------------------------ */
/* Responsive
/* ------------------------------------------------------ */
/* ------------------------------------------------------ */
/* TYPO
/* ------------------------------------------------------ */
/* ------------------------------------------------------ */
/* COLORS
/* ------------------------------------------------------ */
/* BREAK POINTS, may have to adapt at the beginning, depending of the application */
/* ------------------------------------------------------ */
/* CSS EASING ANIMATION
/* ------------------------------------------------------ */
/* ------------------------------------------------------ */
/* Base styles: projects defaults
/* ------------------------------------------------------ */
html, body {
  display: block;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 100%;
  font-family: "dinregular", Arial, Helvetica, sans-serif;
  font-weight: normal;
  outline: none;
  color: #676767;
  text-align: center;
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: antialiased;
  -webkit-osx-font-smoothing: grayscale;
  -moz-tap-highlight-color: transparent;
  -moz-tap-highlight-color: transparent;
  -moz-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -ms-tap-highlight-color: transparent;
  -ms-tap-highlight-color: transparent;
  -ms-font-smoothing: antialiased;
  -ms-osx-font-smoothing: grayscale;
  -o-tap-highlight-color: transparent;
  -o-tap-highlight-color: transparent;
  -o-font-smoothing: antialiased;
  -o-osx-font-smoothing: grayscale;
  -khtml-tap-highlight-color: transparent;
  -khtml-tap-highlight-color: transparent;
  -khtml-font-smoothing: antialiased;
  -khtml-osx-font-smoothing: grayscale;
  tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  font-smoothing: antialiased;
  osx-font-smoothing: grayscale;
}
html div:focus, body div:focus {
  outline: none;
}

img {
  outline: none;
}

a {
  outline: none;
  color: #676767;
  text-decoration: underline;
}
a img {
  border: 0;
}
a:hover, a:active, a:focus, a:visited {
  outline: none;
  color: #676767;
}

::-webkit-scrollbar {
  width: 0.3em;
  height: 0.3em;
}

::-webkit-scrollbar-thumb {
  background: #add25a;
}

::-webkit-scrollbar-track {
  background: #d6e9ad;
}

body {
  scrollbar-face-color: #add25a;
  scrollbar-track-color: #d6e9ad;
}

a::-moz-focus-inner {
  border: 0;
}

strong, em, a {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}

strong {
  color: #4b8950;
}

label {
  display: block;
  padding: 0.5em 0 0.5em 1em;
  text-align: left;
}

h2,
h3,
h4 {
  display: block;
  margin-bottom: 1em;
  text-transform: uppercase;
  font-size: 1.2em;
  font-family: "josefin_sanslight", Arial, Helvetica, sans-serif;
  line-height: 1.6em;
}
h2 strong,
h3 strong,
h4 strong {
  font-size: 1.1em;
  font-family: "josefin_sanssemibold", Arial, Helvetica, sans-serif;
}

h2 strong, h3 strong {
  color: #4b8950;
}

h3 {
  padding-top: 0;
  font-size: 1.8em;
}

h4 strong {
  color: #add25a;
}
h4.dark strong {
  color: #4b8950;
}

time {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
  line-height: 1.2em;
}

blockquote {
  font-family: "josefin_sanslight", Arial, Helvetica, sans-serif;
  font-size: 1.5em;
  position: relative;
  padding: 2.75em 3.25em 3.25em 3.25em;
  line-height: 1.5em;
}
blockquote:before, blockquote:after {
  position: absolute;
  display: block;
  overflow: hidden;
  background-image: url("../img/icons.svg");
  background-repeat: no-repeat;
  width: 32px;
  height: 32px;
  content: '';
}
blockquote:before {
  top: 1em;
  left: 1em;
  background-position: -128px 0;
}
blockquote:after {
  right: 1em;
  bottom: 2em;
  background-position: -96px 0;
}

q.note {
  font-size: 0.7em;
  float: right;
  padding-top: 1.5em;
  text-align: right;
  margin-bottom: -1em;
  margin-right: -1.5em;
  line-height: 1em;
}

p {
  padding-bottom: 1em;
  line-height: 1.6em;
  text-align: left;
  font-size: 1.4em;
}
p strong {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}

br {
  font-family: Arial, Helvetica, sans-serif !important;
}

figure {
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 0;
}
figure picture {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin: 0;
  padding: 0;
  width: 100%;
}
figure img {
  width: 100%;
}
figure figcaption {
  position: absolute;
  right: 1em;
  bottom: 1em;
  z-index: 4;
  color: #ffffff;
  font-size: 0.8em;
}
figure.left {
  margin-left: 0;
  text-align: left;
}
figure.video-popin {
  overflow: hidden;
  cursor: pointer;
}
figure.video-popin:before {
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(47, 47, 47, 0.81);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
  opacity: 0.75;
}
figure.video-popin:after {
  top: 50%;
  left: 50%;
  z-index: 3;
  width: 40px;
  background-image: url("../img/icons.svg");
  background-repeat: no-repeat;
  background-position: -224px 0;
  height: 40px;
  margin-top: -20px;
  margin-left: -20px;
  -moz-transform: translate3d(0, -50%, 0);
  -ms-transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0);
}
figure.video-popin:before, figure.video-popin:after {
  position: absolute;
  display: block;
  content: '';
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -moz-transform-origin: 0 0 0;
  -webkit-transform-origin: 0 0 0;
  transform-origin: 0 0 0;
}
figure.video-popin figcaption {
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -moz-transform-origin: 0 0 0;
  -webkit-transform-origin: 0 0 0;
  transform-origin: 0 0 0;
}
figure.video-popin picture, figure.video-popin img {
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -moz-transform-origin: 0 0 0;
  -webkit-transform-origin: 0 0 0;
  transform-origin: 0 0 0;
}
figure.video-popin:hover:before, figure.video-popin:hover:after {
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
figure.video-popin:hover figcaption {
  -moz-transition: -moz-transform 0.5s ease;
  -o-transition: -o-transform 0.5s ease;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  -moz-transform: translate3d(0, -50%, 0);
  -ms-transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0);
  right: 0;
  bottom: -100%;
  margin-bottom: -20px;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 2em;
  font-size: 2em;
}
figure.video-popin:hover picture, figure.video-popin:hover img {
  -webkit-filter: blur(1px);
  filter: blur(1px);
  -moz-transform: scale(1.01) translateZ(0);
  -ms-transform: scale(1.01) translateZ(0);
  -webkit-transform: scale(1.01) translateZ(0);
  transform: scale(1.01) translateZ(0);
}

dialog {
  position: absolute;
  top: 10%;
  right: 0;
  left: 0;
  z-index: 30;
  border-style: solid;
  border-width: 1px;
  border-color: #dddddd;
  display: none;
  margin: 0 auto;
  padding: 1em;
  width: 90%;
  background-color: #ffffff;
  text-align: justify;
  font-size: 0.8em;
  max-width: 1200px;
  max-height: 80%;
  height: 80%;
  overflow: hidden;
  overflow-y: scroll;
}
dialog .link {
  background-color: #81CFFE;
  color: white;
  text-decoration: none;
  padding: 1em 2em;
  top: 3em;
  position: absolute;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
dialog.sided {
  padding: 0;
  border: none;
}
dialog.sided .dialog-content {
  height: 100%;
  padding: 0;
  margin: 0;
}
dialog.sided .dialog-content .see-more-content {
  height: 100%;
}
dialog.sided table {
  height: 100%;
  width: 100%;
}
dialog.sided table td {
  width: 50%;
  vertical-align: top;
  text-align: center;
}
dialog.sided table td .wrapper-txt {
  padding: 6em 4em;
  height: 100%;
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  dialog.sided table td:first-child {
    display: none;
  }
}
dialog.sided {
  overflow-y: initial;
}
dialog .close-dialog {
  position: absolute;
  top: 1em;
  background-image: url("../img/icons.svg");
  background-position: -32px 0;
  background-repeat: no-repeat;
  right: 1em;
  display: block;
  width: 32px;
  height: 32px;
  cursor: pointer;
}
dialog .dialog-content {
  display: block;
  margin-top: 5em;
  padding: 0 0 2em 0;
  font-size: 0.8em;
}
dialog .dialog-content .see-more-content {
  display: block;
}
dialog video {
  width: 100%;
  height: 100%;
}

.nav-category {
  zoom: 1;
}
.nav-category:before, .nav-category:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}
.nav-category:after {
  clear: both;
}

.nav-category li {
  cursor: pointer;
  text-align: left;
  color: #add25a;
  border: #add25a 1px solid;
  border-radius: 8px;
  float: left;
  margin: 0 1em 0.5em 0;
  padding: 0.3em 0.5em;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.nav-category li:hover, .nav-category li.active {
  background: #add25a;
  color: white;
}

.grid-1200 {
  width: 100%;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .grid-1200 {
    width: 720px;
  }
}
@media screen and (min-width: 1024px) {
  .grid-1200 {
    width: 960px;
  }
}
@media screen and (min-width: 1248px) {
  .grid-1200 {
    width: 1200px;
  }
}

.alter {
  background-color: #f4f4f4;
}

.clearfix {
  clear: both;
}

.alter-green {
  background-color: #add25a;
  color: #ffffff;
}
.alter-green * {
  color: #ffffff;
}

.half {
  display: block;
  margin: 2em auto 0 auto;
  width: 80%;
  text-align: center;
}

.full-fix {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.table {
  display: table;
}
.table .cell {
  display: table-cell;
}
.table .cell .row {
  display: table-row;
}
.table.trio {
  padding-top: 1em;
  width: 100%;
}
.table.trio .cell {
  display: table;
  margin: 1em 0 4em;
  width: 100%;
}
.table.trio .cell strong {
  font-size: 1.5em;
}

.table-middle {
  display: inline-table;
  margin: auto;
  vertical-align: middle;
  text-align: center;
}
.table-middle > * {
  display: table-cell;
  margin: auto;
  vertical-align: middle;
  text-align: center;
}

.fix-3 {
  height: 3em;
}

.fix-5 {
  height: 5em;
}

.fix-7 {
  height: 7em;
}

.large {
  width: 100%;
}

.txt-center {
  text-align: center;
}

.txt-left {
  text-align: left;
}
.txt-left * {
  text-align: left;
}

.see-more {
  display: block;
  width: 100%;
  text-align: right;
  cursor: pointer;
}

.see-more-content {
  display: none;
}

.overlay {
  position: fixed;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  top: 0;
  left: 0;
  z-index: 20;
  display: none;
  width: 100%;
  height: 100%;
  background-color: #000000;
}

.dialog {
  overflow: visible;
}
.dialog .overlay {
  display: block;
}
.dialog dialog {
  display: inline-block;
}

.hide {
  display: none;
}

.fade {
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
.fade.fadeout {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.fade.fadein {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}

a.btn {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
  display: inline-block;
  background-color: #add25a;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.75em 3em;
  color: #ffffff;
  cursor: pointer;
}

/* Underline From Center */
.hvr-underline-from-center {
  display: block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}

.hvr-underline-from-center:before {
  content: "";
  position: absolute;
  z-index: 50;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.hvr-underline-from-center.top:before {
  content: "";
  position: absolute;
  z-index: 50;
  left: 50%;
  right: 50%;
  top: 0;
  background: #fff;
  height: 2px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.box:hover .hvr-underline-from-center:before, .box:focus .hvr-underline-from-center:before, .box:active .hvr-underline-from-center:before {
  left: 0;
  right: 0;
}

figure:hover > .hvr-underline-from-center:before, figure:focus > .hvr-underline-from-center:before, figure:active > .hvr-underline-from-center:before {
  left: 50%;
  right: 50%;
}

.video figure:hover > .hvr-underline-from-center:before, figure:focus > .hvr-underline-from-center:before, figure:active > .hvr-underline-from-center:before {
  left: 0;
  right: 0;
}

.nav-main {
  position: relative;
  display: table;
  width: 100%;
  background-color: #ffffff;
  vertical-align: middle;
  text-align: center;
  font-size: 1em;
}
.nav-main .logo {
  display: table-cell;
  width: 15%;
  text-align: left;
}
@media screen and (max-width: 1023px) {
  .nav-main .logo {
    width: 12%;
  }
}
@media screen and (max-width: 767px) {
  .nav-main .logo {
    position: absolute;
    top: 1em;
    left: 1em;
    z-index: 3;
    display: inline-table;
    vertical-align: middle;
    text-align: left;
  }
}
.nav-main .logo img {
  max-width: 90%;
}
@media screen and (max-width: 767px) {
  .nav-main .logo img {
    padding: 0;
    height: 2em;
    vertical-align: middle;
    text-align: center;
  }
}
.nav-main .wrapper {
  display: table-cell;
  position: relative;
  width: 76%;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .nav-main .wrapper {
    display: block;
    position: static;
    width: 100%;
  }
}
.nav-main .wrapper.social {
  display: table-cell;
  position: relative;
  width: 14%;
}
.nav-main ul {
  zoom: 1;
}
@media screen and (max-width: 767px) {
  .nav-main ul {
    position: absolute;
    top: 4em;
    z-index: 1;
    display: block;
    padding: 1px 0;
    width: 100%;
    background-color: #dddddd;
    list-style: none;
    vertical-align: middle;
    text-align: center;
    -moz-transition: -moz-transform, ease 0.5s;
    -o-transition: -o-transform, ease 0.5s;
    -webkit-transition: -webkit-transform, ease 0.5s;
    transition: transform, ease 0.5s;
    -moz-transform: translate3d(0, -100%, 0);
    -ms-transform: translate3d(0, -100%, 0);
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    -moz-transform-origin: 0 0 0;
    -webkit-transform-origin: 0 0 0;
    transform-origin: 0 0 0;
  }
}
.nav-main ul:before, .nav-main ul:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}
.nav-main ul:after {
  clear: both;
}
.nav-main ul li {
  display: inline-block;
  vertical-align: text-top;
}
@media screen and (max-width: 767px) {
  .nav-main ul li {
    display: block;
    margin-bottom: 1px;
    width: 100%;
    background-color: #ffffff;
    list-style: none;
    vertical-align: middle;
    text-align: center;
    float: none;
  }
}
.nav-main ul li.contact {
  border-left: 1px solid #dddddd;
}
.nav-main ul li.contact a {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}
.nav-main ul li.share {
  float: right;
  width: auto;
}
@media screen and (max-width: 767px) {
  .nav-main ul li.share {
    width: 100%;
    float: none;
  }
}
.nav-main ul li.share a {
  width: 19px;
  height: 19px;
  background: url(../img/tw.png) no-repeat 50% 50%;
  background-size: 18px 18px;
  text-indent: -1000px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .nav-main ul li.share a {
    width: 100%;
    text-indent: 0;
    background: none;
  }
}
@media screen and (max-width: 767px) {
  .nav-main ul li.share a:before {
    display: inline-block;
    overflow: hidden;
    margin: 0 0.5em;
    padding: 0;
    width: 18px;
    height: 18px;
    content: '';
    vertical-align: bottom;
    text-align: center;
    background: url(../img/tw.png) no-repeat 50% 50%;
    background-size: 18px 18px;
  }
}
.nav-main ul li.share a.share-fb {
  background: url(../img/f.png) no-repeat 50% 50%;
  background-size: 9px 19px;
}
@media screen and (max-width: 767px) {
  .nav-main ul li.share a.share-fb {
    background: none;
  }
}
.nav-main ul li.share a.share-fb:before {
  background: url(../img/f.png) no-repeat 50% 50%;
  background-size: 9px 19px;
}
.nav-main ul li.share a.share-yt {
  background: url(../img/yt.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}
@media screen and (max-width: 767px) {
  .nav-main ul li.share a.share-yt {
    background: none;
  }
}
.nav-main ul li.share a.share-yt:before {
  background: url(../img/yt.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}
.nav-main ul li a {
  padding: 0 0.4em;
  text-decoration: none;
  text-align: left;
  display: block;
  text-transform: uppercase;
  font-family: "dinregular", Arial, Helvetica, sans-serif;
  line-height: 1.4em;
  width: 9em;
  text-align: center;
}
@media screen and (max-width: 1247px) {
  .nav-main ul li a {
    padding: 0 0.4em;
    font-size: 10px;
    font-size: 0.625rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
@media screen and (max-width: 1023px) {
  .nav-main ul li a {
    width: 8em;
  }
}
@media screen and (max-width: 767px) {
  .nav-main ul li a {
    text-align: center;
    display: block;
    padding: 2em 0;
    width: 100%;
    color: #676767;
    vertical-align: middle;
    font-size: 14px;
    font-size: 0.875rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
.nav-main ul li a:hover {
  text-decoration: underline;
}

.unwrap .nav-main {
  display: block;
  height: 100%;
}
.unwrap .nav-main ul {
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.unwrap .menu-wrap .menu-button {
  background-position: -32px 0;
}
.unwrap header,
.unwrap section,
.unwrap footer {
  display: none;
}

.menu-wrap {
  position: relative;
  top: 0;
  left: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 4em;
  background-color: #ffffff;
}
.menu-wrap .menu-button {
  position: absolute;
  top: 1em;
  background-image: url("../img/icons.svg");
  background-position: -64px 0;
  background-repeat: no-repeat;
  right: 1em;
  width: 32px;
  height: 2em;
  cursor: pointer;
}

.home-header {
  overflow: hidden;
  margin: 0 auto;
  padding: 0;
  background-image: url("../img/home/header.jpg");
  background-repeat: no-repeat;
  background-size: 768px auto;
  background-position: center center;
  width: 100%;
  color: #ffffff;
  text-align: center;
  font-size: 0.3em;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3 / 2), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  .home-header {
    background-image: url("../img/home/header-retina.jpg");
  }
}
.home-header h1, .home-header h4 {
  text-align: left;
}
.home-header h1 {
  padding: 0.5em 0 0 5%;
  text-transform: uppercase;
  font-weight: normal;
  line-height: 1.25em;
  font-size: 3.9em;
  font-family: "josefin_sanslight", Arial, Helvetica, sans-serif;
}
.home-header h1 strong {
  font-size: 1.11em;
  font-family: "josefin_sanssemibold", Arial, Helvetica, sans-serif;
  color: #ffffff;
}
.home-header h4 {
  display: block;
  font-size: 1.95em;
  font-family: "josefin_sansregular", Arial, Helvetica, sans-serif;
  text-transform: none;
  text-indent: 0.35em;
  padding-left: 5%;
  line-height: 1.2em;
}

.section-main {
  position: relative;
  display: inline-block;
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
  font-size: 0.6em;
}
.section-main header,
.section-main article,
.section-main blockquote,
.section-main figure.full,
.section-main footer {
  display: inline-block;
  vertical-align: top;
}
.section-main header,
.section-main article,
.section-main figure.full,
.section-main footer, .section-main hr {
  width: 100%;
}
.section-main header {
  margin-bottom: 3em;
  padding: 2em 0 0 0.5em;
}
.section-main h1 {
  text-align: left;
  text-transform: uppercase;
  font-size: 3em;
  font-family: "josefin_sanslight", Arial, Helvetica, sans-serif;
  line-height: 1.25em;
}
.section-main h1 strong {
  color: #add25a;
  font-size: 1.1em;
  font-family: "josefin_sanssemibold", Arial, Helvetica, sans-serif;
}

.home-news {
  text-align: center;
}
.home-news table {
  width: 100%;
}
.home-news ul {
  display: block;
  margin-bottom: 1.5em;
}
.home-news ul.bullets {
  margin-bottom: 0;
}
.home-news ul li time, .home-news ul li label {
  display: block;
  margin: auto;
  text-align: center;
}

.grid-boxes li {
  display: none;
}
.grid-boxes li.active {
  display: block;
}

.laureat-highlight .box .txt {
  background: #4b8950;
}
.laureat-highlight .box .txt label strong {
  color: white;
}

.box {
  width: 30%;
  float: left;
  margin-right: 3%;
  margin: 0 0 3%;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .box {
    width: 100%;
    margin: 0 0 30px 0;
  }
}
.box:first-child {
  margin-right: 3%;
}
.box:hover .img img {
  width: 120%;
}
.box .img {
  position: relative;
  padding-bottom: 57.67%;
  overflow: hidden;
}
.box .img img {
  -moz-transition: width 0.18s ease;
  -o-transition: width 0.18s ease;
  -webkit-transition: width 0.18s ease;
  transition: width 0.18s ease;
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 5;
}
.box .txt {
  text-align: left;
  background: #add25a;
  color: white;
  padding: 0.4em 1em;
  height: 80px;
  max-height: 80px;
  overflow: hidden;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.box .txt p {
  padding: 0;
  margin: 0 0 6px;
  text-transform: uppercase;
  font-size: 12px;
  font-size: 0.75rem;
  /* Indiquer la font-size du body par défaut*/
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}
.box .txt label {
  padding: 0;
  text-align: left;
  text-transform: uppercase;
  font-size: 14px;
  font-size: 0.875rem;
  /* Indiquer la font-size du body par défaut*/
  line-height: 1.2em;
}

.home-news {
  padding: 2%;
  zoom: 1;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.home-news:before, .home-news:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}
.home-news:after {
  clear: both;
}
.home-news .filters {
  margin: 0 0 20px;
}
.home-news .btn {
  margin: 20px 0;
}
.home-news .desktop {
  display: table;
}
@media screen and (max-width: 767px) {
  .home-news .desktop {
    display: none;
  }
}
.home-news .mobile {
  display: none;
}
@media screen and (max-width: 767px) {
  .home-news .mobile {
    display: block;
  }
}

.highlight_1 {
  width: 70%;
  overflow: visible;
  vertical-align: top;
}
.highlight_1.laureats {
  width: 100%;
}
.highlight_1.laureats .wrapper {
  padding-bottom: 37%;
}
.mobile .highlight_1 {
  width: 100%;
}
.highlight_1 .wrapper {
  position: relative;
  padding-bottom: 44%;
  overflow: hidden;
}
.mobile .highlight_1 .wrapper {
  padding-bottom: 88%;
}

.highlight_2 {
  width: 30%;
  vertical-align: top;
}
.mobile .highlight_2 {
  width: 100%;
}
.highlight_2 .box {
  width: 100%;
  margin-right: 0;
  margin-left: 0;
  display: none;
}
.highlight_2 .box img {
  padding-bottom: 63%;
}
.highlight_2 a {
  background: #4b8950;
}

.articles-news, .articles-news-mobile {
  position: relative;
  overflow: visible;
  margin: 0 0 0 0 !important;
  width: 100%;
  text-align: center;
}
.articles-news .box, .articles-news-mobile .box {
  width: 42.5%;
  float: left;
  margin-right: 7%;
}
.mobile .articles-news .box, .mobile .articles-news-mobile .box {
  width: 100%;
  float: none;
  margin: 0;
}
.articles-news .box:first-child, .articles-news-mobile .box:first-child {
  margin-right: 7%;
}
.articles-news li, .articles-news-mobile li {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -moz-transition: all 1s ease;
  -o-transition: all 1s ease;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -moz-transform-origin: 0 0 0;
  -webkit-transform-origin: 0 0 0;
  transform-origin: 0 0 0;
  width: 101%;
}
.articles-news li.next, .articles-news-mobile li.next {
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}
.articles-news li.prev, .articles-news-mobile li.prev {
  -moz-transform: translate3d(-100%, 0, 0);
  -ms-transform: translate3d(-100%, 0, 0);
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}
.articles-news li.current, .articles-news-mobile li.current {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}

.bullets li {
  display: inline-block;
  margin: 1.5em 0.25em 0 0.25em;
  width: 9px;
  height: 9px;
  background-color: #dddddd;
  -moz-border-radius: 9px;
  -webkit-border-radius: 9px;
  border-radius: 9px;
  cursor: pointer;
}
.bullets li.current {
  background-color: #676767;
}

.home-large p {
  margin: 0 auto;
  width: 94%;
  text-align: center;
}
.home-large h2 {
  margin-bottom: 1em;
  font-size: 1.45em;
  line-height: 1.25em;
}
.home-large footer {
  margin: 0;
  padding-top: 3.75em;
  width: 100%;
  text-align: left;
  font-size: 0.8em;
}
.home-large footer p {
  padding-bottom: 0;
  width: 95%;
  text-align: left;
}

article {
  padding: 2em 0;
}
article.article-image-left, article.article-image-right {
  display: inline-table;
  padding: 0;
}
article.article-image-left figure, article.article-image-right figure {
  display: block;
  width: 100%;
  vertical-align: middle;
}
article.article-image-left aside, article.article-image-right aside {
  display: block;
  padding: 2em;
  vertical-align: middle;
}
article.small-top {
  padding-top: 1em;
}
article.small-bottom {
  padding-bottom: 1.5em;
}
article.no-offset-top {
  padding-top: 0;
}
article.no-offset-bottom {
  padding-bottom: 0;
}
article.no-offset {
  padding: 0;
}
article p:last-child,
article h2:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.home .footer-support {
  background: white !important;
}

.home hr {
  background: #add25a;
  color: #add25a;
  height: 1px;
  border: none;
  width: 30%;
}

.footer-support {
  padding-top: 2.5em;
  padding-bottom: 3em;
  text-align: center;
}
.footer-support
ul {
  width: 90%;
  text-align: center;
  margin: auto;
}
.footer-support
ul li {
  display: inline-block;
  margin: auto;
  padding: 0 1em 1em 1em;
  text-align: center;
}
.footer-support
ul li a {
  display: block;
}
.footer-support p {
  margin: 0 auto;
  padding: 2em 3em 2em 3em;
  text-align: center;
  font-size: 0.9rem;
}
.footer-support p strong {
  font-weight: normal;
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}

.support-publicis-consultants {
  width: 133px;
  background-position: -3px 0;
}

.support-axa {
  width: 40px;
  background-position: -136px 0;
}

.support-publicis-groupe {
  width: 40px;
  background-position: -176px 0;
}

.support-jcdecaux {
  width: 92px;
  background-position: -216px 0;
}

.support-fondation-cognacq-jay {
  width: 51px;
  background-position: -308px 0;
}

.support-prodigious {
  width: 91px;
  background-position: -359px 0;
}

.support-besv {
  width: 91px;
  background-position: -450px 0;
}

.support-bpe {
  width: 52px;
  background-position: -541px 0;
}

.slidebar {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  width: 89px;
  height: 100%;
  text-transform: uppercase;
  text-align: right;
  font-family: "josefin_sanssemibold", Arial, Helvetica, sans-serif;
  font-size: 0.6em;
  line-height: 1.5em;
}
.slidebar ul {
  position: absolute;
  width: 89px;
}
.slidebar ul li {
  position: relative;
  display: block;
  overflow: visible;
  padding: 1.5em 4em 1.5em 1em;
  height: 1em;
  color: transparent;
  cursor: pointer;
}
.slidebar ul li:after {
  position: absolute;
  -moz-border-radius: 2em;
  -webkit-border-radius: 2em;
  border-radius: 2em;
  top: 1.5em;
  right: 1.25em;
  border-width: 2px;
  border-style: solid;
  border-color: #add25a;
  width: 1.25em;
  height: 1.25em;
  content: '';
}
.slidebar ul li.before:after {
  background-color: #add25a;
}
.slidebar ul li.current {
  color: #676767;
}
.slidebar ul li.current:after {
  top: 1em;
  right: 0.75em;
  width: 2em;
  height: 2em;
  background-color: #ffffff;
}
.slidebar ul:hover li.current {
  color: transparent;
}
.slidebar ul:hover li:hover {
  color: #676767;
}

.footer-main {
  padding-bottom: 2em;
  width: 100%;
  background-color: #ffffff;
  text-align: center;
  font-size: 0.75em;
}
.footer-main ul {
  display: inline-block;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.footer-main ul li {
  display: inline-block;
  margin: 0 auto;
  margin-top: 23px;
  height: 17px;
  list-style: none;
  text-align: center;
  border-style: solid;
  border-color: #dddddd;
  border-width: 0 1px 0 0;
}
.footer-main ul li.share {
  float: right;
  width: auto;
  padding: 0 1em;
}
@media screen and (max-width: 767px) {
  .footer-main ul li.share {
    width: 100%;
    float: none;
  }
}
.footer-main ul li.share a {
  width: 19px;
  height: 19px;
  background: url(../img/tw.png) no-repeat 50% 50%;
  background-size: 18px 18px;
  text-indent: -1000px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .footer-main ul li.share a {
    width: 100%;
    text-indent: 0;
    background: none;
  }
}
@media screen and (max-width: 767px) {
  .footer-main ul li.share a:before {
    display: inline-block;
    overflow: hidden;
    margin: 0 0.5em;
    padding: 0;
    width: 18px;
    height: 18px;
    content: '';
    vertical-align: bottom;
    text-align: center;
    background: url(../img/tw.png) no-repeat 50% 50%;
    background-size: 18px 18px;
  }
}
.footer-main ul li.share a.share-fb {
  background: url(../img/f.png) no-repeat 50% 50%;
  background-size: 9px 19px;
}
@media screen and (max-width: 767px) {
  .footer-main ul li.share a.share-fb {
    background: none;
  }
}
.footer-main ul li.share a.share-fb:before {
  background: url(../img/f.png) no-repeat 50% 50%;
  background-size: 9px 19px;
}
.footer-main ul li.share a.share-yt {
  background: url(../img/yt.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}
@media screen and (max-width: 767px) {
  .footer-main ul li.share a.share-yt {
    background: none;
  }
}
.footer-main ul li.share a.share-yt:before {
  background: url(../img/yt.png) no-repeat 50% 50%;
  background-size: 18px 18px;
}
.footer-main ul li a {
  padding: 0 1em;
  color: #676767;
  text-align: center;
  text-transform: uppercase;
  line-height: 17px;
}
.footer-main ul li.last {
  border: none;
}

.better-grid {
  width: 100%;
}
.better-grid li {
  float: left;
  width: 20%;
  background: #add25a;
  color: white;
  padding-bottom: 20%;
  position: relative;
}
.better-grid li q {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  color: white;
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  .better-grid li q {
    font-size: 24px;
    font-size: 1.5rem;
    /* Indiquer la font-size du body par défaut*/
    line-height: 1.5em;
  }
}
@media screen and (max-width: 479px) {
  .better-grid li q {
    font-size: 14px;
    font-size: 0.875rem;
    /* Indiquer la font-size du body par défaut*/
    line-height: 22px;
  }
}
.better-grid li strong {
  font-size: 44px;
  font-size: 2.75rem;
  /* Indiquer la font-size du body par défaut*/
  padding: 0.15em 0;
  line-height: 1em;
  color: white;
}
@media screen and (max-width: 1247px) {
  .better-grid li strong {
    font-size: 36px;
    font-size: 2.25rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
@media screen and (max-width: 1023px) {
  .better-grid li strong {
    font-size: 28px;
    font-size: 1.75rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
@media screen and (max-width: 767px) {
  .better-grid li strong {
    font-size: 36px;
    font-size: 2.25rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
.better-grid li span {
  display: block;
}
.better-grid li:nth-of-type(odd) {
  background: white;
}
.better-grid li:nth-of-type(odd) q {
  color: #676767;
}
.better-grid li:nth-of-type(odd) strong {
  color: #4b8950;
}
@media screen and (max-width: 767px) {
  .better-grid li {
    width: 50%;
    padding-bottom: 50%;
  }
  .better-grid li:nth-child(3) {
    background: #add25a;
  }
  .better-grid li:nth-child(3) q {
    color: white;
  }
  .better-grid li:nth-child(3) strong {
    color: white;
  }
  .better-grid li:nth-child(4) {
    background: white;
  }
  .better-grid li:nth-child(4) q {
    color: #676767;
  }
  .better-grid li:nth-child(4) strong {
    color: #add25a;
  }
}

.cookies-banner {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #f4f4f4;
  border: 0;
  z-index: 99999;
  margin: 0 auto;
  z-index: 9;
  height: 120px;
}
@media screen and (max-width: 1024px) {
  .cookies-banner {
    height: auto;
  }
}
@media screen and (max-width: 640px) {
  .cookies-banner {
    border-top: 2px solid #add25a;
  }
}
.cookies-banner.active {
  display: block;
}
.cookies-banner .inner {
  padding: 12px;
  min-height: 50px;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  margin-top: 0px;
}
.cookies-banner .inner p {
  float: none;
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 20px;
  text-align: center;
  padding-bottom: 10px;
  font-size: 0.850rem;
  box-sizing: border-box;
}
@media screen and (max-width: 1024px) {
  .cookies-banner .inner p {
    padding: 20px 20px 20px 20px;
    font-size: 1em;
  }
}
@media screen and (max-width: 769px) {
  .cookies-banner .inner p {
    padding: 10px;
    font-size: 0.9em;
    text-align: center;
  }
}
.cookies-banner .inner ul {
  margin: 0;
  padding: 0;
}
.cookies-banner .inner ul li {
  float: left;
  width: 31%;
  list-style: none;
  line-height: 45px;
}
.cookies-banner .inner ul li:nth-child(1) {
  text-align: right;
}
@media screen and (max-width: 640px) {
  .cookies-banner .inner ul li:nth-child(1) {
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  .cookies-banner .inner ul li {
    float: none;
    width: auto;
    list-style: none;
    line-height: 30px;
  }
}
.cookies-banner .inner ul li a {
  line-height: 40px;
  color: #8b8a8a;
  text-decoration: none;
  line-height: 40px;
  padding-right: 10px;
  font-size: 1rem;
}
@media screen and (max-width: 640px) {
  .cookies-banner .inner ul li a {
    font-size: 14px;
  }
}
.cookies-banner .inner ul li #js-privacy_all_accept {
  background-color: #add25a;
  -webkit-appearance: none;
  padding: 10px;
  border-radius: 5px;
  border: 0;
  color: white;
  font-size: 16px;
  text-decoration: none;
  cursor: pointer;
  margin-top: 0;
  width: 60%;
  margin-right: 20px;
  margin-bottom: 0;
  margin-left: 10px;
}
@media screen and (max-width: 640px) {
  .cookies-banner .inner ul li #js-privacy_all_accept {
    font-size: 14px;
    margin-top: 10px;
  }
}

#js-privacy_overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: .9;
  background-color: black;
  z-index: 99999;
}

#privacy_popin {
  display: none;
  background-color: white;
  width: 90%;
  max-width: 800px;
  position: fixed;
  top: 5%;
  margin: 0 auto;
  left: 5%;
  margin-left: 0;
  z-index: 9999999;
  text-align: left;
}
@media (min-width: 900px) {
  #privacy_popin {
    width: 800px;
    margin-left: -400px;
    left: 50%;
  }
}
#privacy_popin #privacy_popin_content {
  position: relative;
  padding: 20px;
}
#privacy_popin a#js-privacy_close {
  position: absolute;
  top: 15px;
  right: 15px;
  text-decoration: none;
  font-size: 20px;
  color: black;
  display: block;
  background: url("../img/close.svg");
  width: 15px;
  height: 15px;
  background-size: 100%;
}
#privacy_popin h3 {
  margin: 0;
  padding: 10px 0 0 20px;
  font-size: 23px;
  color: #4b8950;
  font-weight: 600;
}
@media screen and (max-width: 640px) {
  #privacy_popin h3 {
    font-size: 16px;
    padding: 10px 0 0 10px;
  }
}
#privacy_popin p {
  font-size: 16px;
  padding: 10px 0 0 20px;
  line-height: 1.3rem;
}
@media screen and (max-width: 640px) {
  #privacy_popin p {
    padding: 10px 0 0 10px;
    font-size: 14px;
  }
}
#privacy_popin ul {
  padding: 10px 0 0 20px;
  margin: 0;
  width: 90%;
}
#privacy_popin ul li {
  text-align: left;
  list-style: none;
  margin: 10px 0;
  padding: 10px 0;
  border-bottom: 1px solid #ccc;
  clear: both;
}
#privacy_popin ul li span.intitule {
  position: relative;
  margin-right: 10px;
  width: 87%;
  display: inline-block;
  text-align: left;
  font-family: "Leroy-Merlin-Sans-Regular","Arial",sans-serif;
  font-size: 13px;
  line-height: 18px;
}
#privacy_popin ul li label.privacy_switch {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 25px;
  vertical-align: top;
  float: right;
}
#privacy_popin ul li label.privacy_switch input {
  display: none;
}
#privacy_popin .privacy_slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
  height: 27px;
  width: 42px;
}
#privacy_popin .privacy_slider:before {
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  left: 4px;
  bottom: 5px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 50%;
}
#privacy_popin .privacy_slider.privacy_round {
  border-radius: 34px;
}
#privacy_popin input:checked + .privacy_slider {
  background-color: #add25a;
}
#privacy_popin input:checked + .privacy_slider:before {
  -webkit-transform: translateX(15px);
  -ms-transform: translateX(15px);
  transform: translateX(15px);
}
#privacy_popin .clear {
  clear: both;
}
#privacy_popin input#js-save_privacy {
  background-color: #add25a;
  -webkit-appearance: none;
  padding: 10px;
  border-radius: 5px;
  border: 0;
  color: white;
  font-size: 16px;
  text-decoration: none;
  display: block;
  width: 200px;
  margin: 30px auto 0 auto;
  cursor: pointer;
}

figure.schematic-structure {
  display: inline-block;
  margin: auto;
  width: 95%;
  text-align: center;
}
figure.schematic-structure figcaption {
  position: inherit;
  right: inherit;
  bottom: inherit;
  font-size: 1em;
  color: #676767;
  line-height: 1.25em;
}
figure.schematic-structure figcaption strong {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}
figure.schematic-structure figure {
  margin-right: 0;
  width: 100%;
}
figure.schematic-structure picture, figure.schematic-structure img {
  width: 100%;
}
figure.schematic-structure .schema-team {
  padding-top: 1.5em;
  padding-bottom: 2em;
  margin: auto;
  background-color: #f4f4f4;
  text-align: center;
}
figure.schematic-structure .schema-team h4 {
  margin-bottom: 0.5em;
}
figure.schematic-structure .schema-delegates,
figure.schematic-structure .schema-treasurer {
  display: inline-block;
  padding-top: 1.75em;
  width: auto;
}
figure.schematic-structure .schema-delegates figure,
figure.schematic-structure .schema-treasurer figure {
  width: 6.25em;
  margin-top: 1em;
  margin-right: 0.5em;
  margin-left: 0.5em;
  vertical-align: top;
}
figure.schematic-structure .schema-delegates picture,
figure.schematic-structure .schema-treasurer picture {
  margin-bottom: 0.25em;
}
figure.schematic-structure .schema-delegates {
  float: left;
  margin-left: 1em;
}
figure.schematic-structure .schema-treasurer {
  float: right;
  margin-right: 1em;
}
figure.schematic-structure .tree-line {
  position: relative;
  margin-top: 1.5em;
}
figure.schematic-structure .tree-line:before {
  position: absolute;
  top: -1.5em;
  right: 50%;
  left: 50%;
  display: inline-block;
  margin: 0 auto;
  width: 3px;
  height: 1.5em;
  background-color: #add25a;
  content: '';
  text-align: center;
}
figure.schematic-structure .schema-committee {
  background-color: #add25a;
  padding-top: 2em;
  padding-bottom: 1.5em;
  color: #ffffff;
}
figure.schematic-structure .schema-committee h4 {
  margin-bottom: 0.25em;
  color: #ffffff;
}
figure.schematic-structure .schema-committee h4 strong {
  color: #ffffff;
}
figure.schematic-structure .schema-committee figcaption {
  margin: auto;
  text-align: center;
  text-decoration: none;
  width: 50%;
  color: #ffffff;
  line-height: 1.5em;
}
figure.schematic-structure .schema-jury {
  display: inline-block;
  padding: 2.75em 1.25em;
  width: 7.5em;
  background-color: #4b8950;
  color: #ffffff;
  text-align: center;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}
figure.schematic-structure .schema-jury.left {
  float: left;
}
figure.schematic-structure .schema-jury.right {
  float: right;
}
figure.schematic-structure .schema-jury figcaption,
figure.schematic-structure .schema-jury figcaption a.see-more {
  color: #ffffff;
  line-height: 1.5em;
  text-align: center;
  text-decoration: none;
}
figure.grid {
  margin: 0;
  padding: 2em 0 3em 0;
  width: 100%;
  border: none;
}
figure.grid ul {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 80em;
}
figure.grid ul li {
  position: absolute;
  display: table;
  width: 50%;
  font-family: "josefin_sansregular", Arial, Helvetica, sans-serif;
  font-size: 1.25em;
  height: 25%;
  vertical-align: middle;
}
figure.grid ul li q {
  display: table-cell;
  vertical-align: middle;
  line-height: 1em;
}
figure.grid ul li strong, figure.grid ul li span, figure.grid ul li em, figure.grid ul li mark {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1.1em;
}
figure.grid ul li strong {
  font-family: "josefin_sanssemibold", Arial, Helvetica, sans-serif;
  font-size: 2.5em;
  padding: 0.15em 0;
  color: #4b8950;
}
figure.grid ul li em {
  font-family: "josefin_sanslight", Arial, Helvetica, sans-serif;
  font-size: 2em;
}
figure.grid ul li mark {
  padding: 0.15em 0;
  font-family: "josefin_sansbold", Arial, Helvetica, sans-serif;
  font-size: 1em;
  background: none;
  color: #676767;
}
figure.grid ul li.li-1, figure.grid ul li.li-2 {
  top: 0;
}
figure.grid ul li.li-3, figure.grid ul li.li-4 {
  top: 25%;
}
figure.grid ul li.li-5, figure.grid ul li.li-6 {
  top: 50%;
}
figure.grid ul li.li-7, figure.grid ul li.li-8 {
  top: 75%;
}
figure.grid ul li.li-1, figure.grid ul li.li-4, figure.grid ul li.li-5, figure.grid ul li.li-8 {
  left: 0;
}
figure.grid ul li.li-2, figure.grid ul li.li-3, figure.grid ul li.li-6, figure.grid ul li.li-7 {
  left: 50%;
}
figure.grid ul li.li-1, figure.grid ul li.li-3, figure.grid ul li.li-5, figure.grid ul li.li-7 {
  background-color: #ffffff;
}
figure.grid ul li.li-1 figcaption, figure.grid ul li.li-3 figcaption, figure.grid ul li.li-5 figcaption, figure.grid ul li.li-7 figcaption {
  color: #676767;
}
figure.grid ul li.li-2, figure.grid ul li.li-4, figure.grid ul li.li-6, figure.grid ul li.li-8 {
  background-color: #add25a;
  color: #ffffff;
}
figure.grid ul li.li-2 *, figure.grid ul li.li-4 *, figure.grid ul li.li-6 *, figure.grid ul li.li-8 * {
  color: #ffffff;
}
figure.half {
  margin: 2em 0 2.5em 0;
  padding: 0;
}
figure.half ul {
  height: 53em;
}
figure.half ul li {
  height: 50%;
}
figure.half ul li.li-3, figure.half ul li.li-4 {
  top: 50%;
}
figure.half ul li figure {
  display: block;
  margin: auto;
  width: 80%;
  padding-top: 10%;
  padding-bottom: 10%;
  height: 80%;
  text-align: center;
}
figure.half ul li figure img {
  display: inline-block;
  margin: 1em auto 1em auto;
  width: 5em;
  text-align: center;
}
figure.half ul li figcaption {
  position: relative;
  right: auto;
  font-size: 0.9em;
  bottom: auto;
  left: auto;
  display: inline-block;
  margin: 1em auto 0 auto;
  width: 90%;
  text-align: center;
  line-height: 1.5em;
}

span.grid {
  display: table;
  margin: 0 auto;
  padding: 1em 1em 2.5em 1em;
  vertical-align: top;
  text-align: center;
}
span.trio {
  width: 20%;
}

ul.tabs {
  display: table;
  width: 100%;
}
ul.tabs li {
  display: table-cell;
  cursor: pointer;
  text-transform: uppercase;
  padding-top: 1em;
  padding-bottom: 1em;
  font-size: 1.25em;
}
ul.tabs li span {
  display: none;
}
ul.tabs li.active {
  background-color: #ffffff;
  color: #4b8950;
}
ul.tabs-content li {
  display: none;
  background-color: #ffffff;
  padding: 3em 1em 3em 1em;
}
ul.tabs-content li.active {
  display: block;
}
ul.tabs-content li .next-step {
  float: right;
  text-decoration: underline;
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
  padding-top: 1em;
  padding-bottom: 1em;
  cursor: pointer;
}
ul.tabs-content li .next-step:after {
  display: inline-block;
  text-decoration: none;
  content: '>';
  padding-left: 0.5em;
  font-family: "josefin_sansbold", Arial, Helvetica, sans-serif;
}

.num {
  border-style: solid;
  border-width: 1px;
  border-color: #4b8950;
  -moz-border-radius: 2em;
  -webkit-border-radius: 2em;
  border-radius: 2em;
  display: block;
  margin: auto;
  margin-bottom: 1em;
  width: 2em;
  color: #4b8950;
  text-align: center;
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
  line-height: 2em;
}

.margin-bottom-fix {
  margin-bottom: 0;
  padding-bottom: 0;
}
.margin-bottom-fix figure {
  margin-bottom: 0;
  padding-bottom: 0;
}

.duo {
  display: table;
}
.duo aside {
  display: table-cell;
  padding: 3em 0 1.5em 0;
  width: 50%;
  height: 100%;
}
.duo aside p {
  margin: auto;
  width: 75%;
  text-align: center;
}

footer.note {
  padding-top: 1em;
  font-size: 0.75em;
  line-height: 1.25em;
}

.field {
  display: inline-table;
  margin: 0 0 0 2%;
  padding: 6px;
  height: 22px;
  border: 1px solid #dddddd;
  background-color: #dddddd;
  vertical-align: middle;
  text-align: left;
}
.field * {
  display: table-cell;
  margin: 0;
  padding: 0;
  height: 100%;
  outline: none;
  border: none;
  background: transparent;
  color: #676767;
  font-size: 1em;
  font-family: "dinregular", Arial, Helvetica, sans-serif;
  vertical-align: middle;
  line-height: 1em;
}
.field *:focus:parent {
  border-color: #add25a;
}
.field input {
  width: 14em;
}
.field .icon {
  width: 32px;
  height: 100%;
  background-image: url("../img/icons.svg");
  background-repeat: no-repeat;
}
.field.search .icon {
  background-position: -160px -6px;
}
.field.dropdown {
  position: relative;
  float: right;
  overflow: visible;
  margin-right: 4%;
  padding: 6px 1em;
  cursor: pointer;
}
.field.dropdown select {
  position: relative;
  z-index: 2;
  display: block;
  margin: 0;
  padding: 0;
  width: 10em;
  height: 100%;
  border: none;
  background: transparent;
  -moz-appearance: none;
  -webkit-appearance: none;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  font-family: inherit;
  line-height: 1em;
  cursor: pointer;
}
.field.dropdown select option {
  display: block;
  text-align: center;
  font-family: "dinregular", Arial, Helvetica, sans-serif;
  line-height: 2em;
}
.field.dropdown ul {
  position: absolute;
  top: 35px;
  left: -1px;
  display: none;
  overflow: auto;
  overflow-x: hidden;
  width: 100%;
  height: 12em;
  border: 1px solid #dddddd;
  background-color: #dddddd;
}
.field.dropdown ul li {
  display: block;
  width: 100%;
  height: 2em;
  text-align: center;
  line-height: 2em;
  cursor: pointer;
}
.field.dropdown .icon {
  position: absolute;
  top: 4px;
  right: 0.5em;
  z-index: 1;
  display: block;
  margin-top: 5px;
  height: 16px;
  background-position: -192px -16px;
}
.field.dropdown.wrap .icon {
  background-position: -192px 0;
}
.field.dropdown.wrap ul {
  display: block;
}
.field:focus {
  border-color: #add25a;
}

.ipt-btn {
  display: inline-table;
  margin: 1px;
  width: 36px;
  border: 1px solid #dddddd;
  background-color: #dddddd;
  vertical-align: middle;
  text-align: center;
  font-size: 1em;
  line-height: 34px;
  cursor: pointer;
}

.index-10 {
  position: relative;
  z-index: 10;
}

.winners-list, .winner-list {
  margin-top: 1em;
  width: 100%;
  text-align: left;
}
.winners-list ul, .winner-list ul {
  text-align: center;
}
.winners-list ul li, .winner-list ul li {
  display: inline-block;
  overflow: hidden;
  margin: 1px;
  padding: 0;
  width: 32%;
  height: 11em;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-animation: fadein 0.25s ease forwards;
  -moz-animation: fadein 0.25s ease forwards;
  -ms-animation: fadein 0.25s ease forwards;
  -o-animation: fadein 0.25s ease forwards;
  animation: fadein 0.25s ease forwards;
  cursor: pointer;
}
.winners-list ul li.two, .winner-list ul li.two {
  cursor: default;
}
.winners-list ul li.two .cell, .winner-list ul li.two .cell {
  cursor: pointer;
}
.winners-list ul li.fadeout, .winner-list ul li.fadeout {
  -moz-animation-name: fadeout;
  -webkit-animation-name: fadeout;
  animation-name: fadeout;
}
.winners-list ul li.hide, .winner-list ul li.hide {
  display: none;
}
.winners-list ul li figure, .winner-list ul li figure {
  display: block;
  width: 100%;
  height: 100%;
}
.winners-list ul li figure:hover .icons, .winner-list ul li figure:hover .icons {
  display: none;
}
.winners-list ul li figure:hover .hover-state, .winner-list ul li figure:hover .hover-state {
  top: 0;
}
.winners-list ul li figure picture, .winner-list ul li figure picture {
  position: absolute;
  bottom: 0;
  left: 0;
  background-image: url("../img/profil.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  -moz-transition: -moz-transform 0.25s ease;
  -o-transition: -o-transform 0.25s ease;
  -webkit-transition: -webkit-transform 0.25s ease;
  transition: transform 0.25s ease;
  -moz-transform-origin: 0 0 0;
  -webkit-transform-origin: 0 0 0;
  transform-origin: 0 0 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
}
.winners-list ul li figure .icons, .winner-list ul li figure .icons {
  position: absolute;
  top: -10px;
  left: 0;
  z-index: 100;
  width: 100%;
  text-align: center;
}
.winners-list ul li figure .icons .icon, .winner-list ul li figure .icons .icon {
  display: inline-block;
  font-size: 12px;
  line-height: 1.2em;
  font-family: "josefin_sansbold", Arial, Helvetica, sans-serif;
}
.winners-list ul li figure .icons .icon.play, .winner-list ul li figure .icons .icon.play {
  background: #add25a url(../img/play-icon.png) 50% 50% no-repeat;
  width: 42px;
  height: 18px;
  border: 1.5px solid white;
  border-radius: 12px;
  color: #add25a;
  text-align: left;
}
.winners-list ul li figure .icons .icon.www, .winner-list ul li figure .icons .icon.www {
  background: #81CFFE;
  width: 42px;
  height: 18px;
  border: 1.5px solid white;
  border-radius: 12px;
}
.winners-list ul li figure .hover-state, .winner-list ul li figure .hover-state {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 100%;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.winners-list ul li figure .hover-state .cell, .winner-list ul li figure .hover-state .cell {
  height: 100%;
  width: 50%;
  display: inline-block;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  -moz-transition: background 0.7s ease;
  -o-transition: background 0.7s ease;
  -webkit-transition: background 0.7s ease;
  transition: background 0.7s ease;
}
.winners-list ul li figure .hover-state .cell.full, .winner-list ul li figure .hover-state .cell.full {
  width: 100%;
}
.winners-list ul li figure .hover-state .cell.play, .winner-list ul li figure .hover-state .cell.play {
  background: #add25a url(../img/play-icon2x.png) 50% 30% no-repeat;
  float: left;
}
.winners-list ul li figure .hover-state .cell.play:hover, .winner-list ul li figure .hover-state .cell.play:hover {
  background-color: #94c720;
}
.winners-list ul li figure .hover-state .cell.www, .winner-list ul li figure .hover-state .cell.www {
  background: #81CFFE;
}
.winners-list ul li figure .hover-state .cell.www:hover, .winner-list ul li figure .hover-state .cell.www:hover {
  background-color: #55b9f5;
}
.winners-list ul li figure .hover-state .cell.www .icon, .winner-list ul li figure .hover-state .cell.www .icon {
  position: relative;
  top: 10%;
  font-size: 28px;
  font-size: 1.75rem;
  /* Indiquer la font-size du body par défaut*/
  line-height: 1.2em;
  font-family: "josefin_sansbold", Arial, Helvetica, sans-serif;
}
@media screen and (max-width: 1023px) {
  .winners-list ul li figure .hover-state .cell.www .icon, .winner-list ul li figure .hover-state .cell.www .icon {
    top: 15%;
    font-size: 20px;
    font-size: 1.25rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
.winners-list ul li figure .hover-state .cell p, .winner-list ul li figure .hover-state .cell p {
  position: absolute;
  bottom: 8px;
  width: 100%;
  font-size: 12px;
  font-size: 0.75rem;
  /* Indiquer la font-size du body par défaut*/
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
}
@media screen and (max-width: 1023px) {
  .winners-list ul li figure .hover-state .cell p, .winner-list ul li figure .hover-state .cell p {
    font-size: 10px;
    font-size: 0.625rem;
    /* Indiquer la font-size du body par défaut*/
  }
}
.winners-list ul li figure figcaption, .winner-list ul li figure figcaption {
  position: absolute;
  bottom: 0;
  /*background: $lightGreenGrey;
  background: rgba($lightGreenGrey, 0.7);*/
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  -moz-transition: opacity 0.25s ease;
  -o-transition: opacity 0.25s ease;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  -moz-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  background: rgba(0, 0, 0, 0.2);
  left: 0;
  z-index: 3;
  display: block;
  padding: 15px 2px 4px;
  width: 100%;
  height: 68px;
  vertical-align: middle;
  text-align: center;
  overflow: visible;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.winners-list ul li figure figcaption img, .winner-list ul li figure figcaption img {
  width: 23px;
  position: absolute;
  top: -11.5px;
  left: 50%;
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  z-index: 100;
  display: none;
}
.winners-list ul li figure figcaption p, .winner-list ul li figure figcaption p {
  display: block;
  padding-top: 0;
  color: #ffffff;
  vertical-align: middle;
  text-align: center;
  font-size: 1em;
  line-height: 1.2em;
}
.winners-list ul li figure figcaption p strong, .winner-list ul li figure figcaption p strong {
  color: #ffffff;
}
.winners-list ul li figure a.goto-video, .winner-list ul li figure a.goto-video {
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  line-height: 2em;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -moz-transition: opacity 0.25s ease;
  -o-transition: opacity 0.25s ease;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}
.winners-list ul li.video figure:hover a, .winner-list ul li.video figure:hover a {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
.winners-list ul li.video figcaption img, .winner-list ul li.video figcaption img {
  display: block;
}
.winners-list ul li.suggest, .winner-list ul li.suggest {
  display: none;
}
.winners-list ul li.suggest figure, .winners-list ul li.suggest figcaption, .winner-list ul li.suggest figure, .winner-list ul li.suggest figcaption {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
  opacity: 0.6;
}
.winners-list ul li.suggest figcaption, .winner-list ul li.suggest figcaption {
  background: #676767;
  background: rgba(103, 103, 103, 0.8);
}
.winners-list ul li.suggest.more, .winner-list ul li.suggest.more {
  display: none;
}

.progress {
  position: relative;
}
.progress progress {
  /* Reset the default appearance */
  -moz-appearance: none;
  -webkit-appearance: none;
  /* Get rid of default border in Firefox. */
  border-style: none;
  border-width: 0;
  border-color: #dddddd;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #f4f4f4;
  color: #dddddd;
  /* Enlève la couleur d'arrière-plan */
}
.progress progress::-moz-progress-bar, .progress progress::-webkit-progress-value {
  border-style: none;
  border-width: 0;
  border-color: #dddddd;
  background-color: #dddddd;
  color: #dddddd;
}
.progress progress::-webkit-progress-bar {
  background: #f4f4f4;
}

figure.slide {
  padding: 2em 1em;
  width: 95%;
  text-align: center;
}
figure.slide .slide-view {
  position: relative;
  overflow: hidden;
  margin: auto;
  width: 95%;
  height: 12em;
  text-align: center;
}
figure.slide .slide-view ul {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  -moz-transition: left 0.5s ease;
  -o-transition: left 0.5s ease;
  -webkit-transition: left 0.5s ease;
  transition: left 0.5s ease;
}
figure.slide .slide-view ul li {
  position: absolute;
  top: 0;
  height: 100%;
}
figure.slide .slide-view ul li figure:hover figcaption {
  margin-bottom: -40px;
  font-size: 1em;
  line-height: 1em;
}
figure.slide .slide-view .slide-prev,
figure.slide .slide-view .slide-next {
  position: absolute;
  top: 0;
  z-index: 10;
  display: block;
  background-image: url("../img/icons.svg");
  background-repeat: no-repeat;
  margin: 0 1em;
  width: 20px;
  height: 100%;
  cursor: pointer;
}
figure.slide .slide-view .slide-prev {
  left: 0;
  background-position: -264px center;
}
figure.slide .slide-view .slide-next {
  right: 0;
  background-position: -284px center;
}
figure.slide .slide-view.no-prev .slide-prev, figure.slide .slide-view.no-next .slide-next {
  display: none;
}

.search-label {
  width: 13.5em;
}
.search-label label {
  padding-right: 4%;
  text-align: right;
}

@-webkit-keyframes fadein {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@-moz-keyframes fadein {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@-ms-keyframes fadein {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@-o-keyframes fadein {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
}
@-webkit-keyframes fadeout {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
}
@-moz-keyframes fadeout {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
}
@-ms-keyframes fadeout {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
}
@-o-keyframes fadeout {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
}
@keyframes fadeout {
  0% {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }
  100% {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
  }
}
.tree > ul {
  display: block;
  width: 100%;
}
.tree > ul > li {
  display: block;
  padding: 5em 0.25em 0 0;
  width: 100%;
}
.tree > ul > li > a {
  font-family: "dinboldregular", Arial, Helvetica, sans-serif;
  font-size: 2em;
  text-decoration: none;
  display: block;
  padding: 1em 0 0 0;
  line-height: 1.5em;
  cursor: pointer;
}
.tree > ul > li > ul {
  font-size: 0.8em;
  padding: 1em 0 0 0.25em;
}
.tree > ul > li > ul > li {
  padding: 1em 0 0 0.25em;
  text-align: right;
}
.tree > ul > li > ul > li > a {
  text-decoration: none;
  text-align: center;
  font-family: "josefin_sanslight", Arial, Helvetica, sans-serif;
  font-size: 2em;
  display: block;
  padding: 0;
  line-height: 1.75em;
  cursor: pointer;
}
.tree > ul > li > ul > li > a strong {
  font-family: "josefin_sanssemibold", Arial, Helvetica, sans-serif;
}

@media screen and (min-width: 480px) {
  .home-header {
    font-size: 0.45em;
  }
  .home-header h4 {
    font-size: 1.41em;
  }

  .section-main h1 {
    font-size: 3.5em;
  }

  figure.schematic-structure .schema-delegates {
    margin-left: 3.5em;
  }
  figure.schematic-structure .schema-delegates.permanent {
    margin-left: 1em;
  }
  figure.schematic-structure .schema-treasurer {
    margin-right: 3.5em;
  }
  figure.schematic-structure .schema-jury {
    width: 12em;
  }

  .winners-list ul li, .winner-list ul li {
    width: 24%;
    height: 12em;
  }

  .field.dropdown {
    margin-right: 6%;
  }

  .search-label label {
    padding-right: 6%;
  }

  ul.tabs li span {
    display: inline;
  }
}
@media screen and (min-width: 640px) {
  .home-header {
    font-size: 0.6em;
  }

  .section-main h1 {
    font-size: 4em;
  }

  .winners-list ul li, .winner-list ul li {
    width: 19%;
    height: 13em;
  }

  figure.schematic-structure {
    width: 70%;
  }
  figure.grid ul {
    height: 37em;
  }
  figure.grid ul li {
    width: 25%;
    height: 50%;
    font-size: 1em;
  }
  figure.grid ul li strong {
    font-size: 3em;
  }
  figure.grid ul li em {
    font-size: 2.5em;
  }
  figure.grid ul li.li-1, figure.grid ul li.li-2, figure.grid ul li.li-3, figure.grid ul li.li-4 {
    top: 0;
  }
  figure.grid ul li.li-5, figure.grid ul li.li-6, figure.grid ul li.li-7, figure.grid ul li.li-8 {
    top: 50%;
  }
  figure.grid ul li.li-1, figure.grid ul li.li-5 {
    left: 0;
  }
  figure.grid ul li.li-2, figure.grid ul li.li-6 {
    left: 25%;
  }
  figure.grid ul li.li-3, figure.grid ul li.li-7 {
    left: 50%;
  }
  figure.grid ul li.li-4, figure.grid ul li.li-8 {
    left: 75%;
  }
  figure.grid ul li.li-6, figure.grid ul li.li-8 {
    background-color: #ffffff;
  }
  figure.grid ul li.li-6 *, figure.grid ul li.li-8 * {
    color: #676767;
  }
  figure.grid ul li.li-6 strong, figure.grid ul li.li-8 strong {
    color: #4b8950;
  }
  figure.grid ul li.li-5, figure.grid ul li.li-7 {
    background-color: #add25a;
    color: #ffffff;
  }
  figure.grid ul li.li-5 *, figure.grid ul li.li-7 * {
    color: #ffffff;
  }
  figure.half ul {
    height: 20em;
  }
  figure.half ul li {
    height: 100%;
  }

  .field.dropdown {
    margin-right: 10%;
  }

  .search-label label {
    padding-right: 10%;
  }
}
@media screen and (min-width: 768px) {
  article {
    padding: 3em 0;
  }
  article.article-image-left figure, article.article-image-right figure {
    display: table-cell;
    width: 312px;
  }
  article.article-image-left aside, article.article-image-right aside {
    display: table-cell;
    width: 100%;
  }
  article.article-image-left {
    direction: rtl;
  }
  article.article-image-left aside, article.article-image-left figure {
    direction: ltr;
  }
  article.article-image-left figure {
    float: left;
  }
  article.article-image-right figure {
    float: right;
  }

  .half {
    width: 45%;
    display: inline-table;
    margin: 1em auto 0 auto;
  }

  .nav-main {
    font-size: 0.6em;
  }

  .menu-wrap {
    display: none;
  }

  .home-header {
    width: 684px;
    height: 226px;
    background-size: 720px 226px;
    padding-left: 36px;
    font-size: 0.6em;
  }
  .home-header h1 {
    padding: 0.5em 0 0 0;
  }
  .home-header h4 {
    padding-left: 0;
  }

  .section-main {
    width: 720px;
  }
  .section-main header,
  .section-main article,
  .section-main figure.full,
  .section-main footer, .section-main .hr {
    width: 100%;
  }
  .section-main blockquote {
    width: 594px;
    padding-left: 63px;
    padding-right: 63px;
  }
  .section-main blockquote:before {
    left: 1.5em;
  }
  .section-main blockquote:after {
    right: 1.5em;
  }

  .home-large h2 {
    font-size: 2.75em;
  }

  figure.half {
    width: 100%;
  }

  article.article-image-left figure {
    margin-right: 0;
  }

  .winners-list ul, .winner-list ul {
    text-align: left;
  }
  .winners-list ul li, .winner-list ul li {
    width: 12.29em;
    height: 14em;
  }
  .winners-list ul li figure img, .winner-list ul li figure img {
    width: 14em;
    left: -0.855em;
  }

  .tree > ul {
    display: table;
    margin-bottom: 3em;
  }
  .tree > ul > li {
    display: table-cell;
    width: auto;
    width: initial;
    padding-top: 1em;
    width: 33%;
  }
  .tree > ul > li > a {
    font-size: 1em;
  }
  .tree > ul > li > ul > li > a {
    font-size: 1em;
    padding: 1em 0 0 0;
  }

  .field {
    margin: 0 0 0 1em;
  }
  .field.dropdown {
    margin-right: 1em;
  }

  .table.trio .cell {
    width: 33%;
    margin: 0;
    display: table-cell;
  }
  .table.trio .cell strong {
    font-size: 1em;
  }

  .search-label label {
    padding-right: 1em;
  }

  .txt-less p {
    font-size: 0.9em;
  }

  .search-label {
    width: inherit;
    width: auto;
  }

  span.grid {
    display: inline-table;
  }

  dialog .close-dialog {
    top: 2em;
    right: 2em;
  }
  dialog .dialog-content {
    font-size: 0.9em;
    padding: 0 4em 2em 4em;
  }
}
@media screen and (min-width: 1024px) {
  p {
    font-size: 1.2em;
  }

  .nav-main {
    font-size: 0.69em;
  }

  .home-header {
    width: 912px;
    height: 301px;
    background-size: 960px 301px;
    padding-left: 48px;
    font-size: 0.8em;
  }

  .section-main {
    width: 960px;
    font-size: 0.8em;
  }
  .section-main header,
  .section-main article,
  .section-main figure.full,
  .section-main footer, .section-main .hr {
    width: 839px;
    margin-right: 121px;
  }
  .section-main blockquote {
    width: 671px;
    margin-right: 121px;
    padding-left: 84px;
    padding-right: 84px;
  }
  .section-main blockquote:before {
    top: 2em;
    left: 2.5em;
  }
  .section-main blockquote:after {
    bottom: 2.5em;
    right: 2.5em;
  }

  article.article-image-left figure, article.article-image-right figure {
    width: 416px;
  }

  .slidebar {
    display: block;
    width: 119px;
  }
  .slidebar ul {
    width: 119px;
  }

  .winners-list ul li, .winner-list ul li {
    width: 12.952em;
  }

  dialog .dialog-content {
    font-size: 1em;
  }
}
@media screen and (min-width: 1248px) {
  p {
    font-size: 1em;
  }

  .logo {
    width: 12%;
  }
  .logo img {
    width: 100%;
  }

  .nav-main {
    font-size: 0.75em;
  }

  .home-header {
    width: 1140px;
    height: 376px;
    background-size: 1200px 376px;
    padding-left: 60px;
    font-size: 1em;
  }

  .section-main {
    width: 1200px;
    font-size: 1em;
  }
  .section-main header,
  .section-main article,
  .section-main figure.full,
  .section-main footer, .section-main .hr {
    width: 1049px;
    margin-right: 151px;
  }
  .section-main blockquote {
    width: 839px;
    margin-right: 151px;
    padding-left: 105px;
    padding-right: 105px;
  }

  article.article-image-left figure, article.article-image-right figure {
    width: 520px;
  }

  .slidebar {
    width: 149px;
  }
  .slidebar ul {
    width: 149px;
  }

  .winners-list ul li, .winner-list ul li {
    width: 12.3459em;
  }
}
