/* Colors
  ========================================================================== */
/* Typography
  ========================================================================== */
.site-header {
  background: transparent; }

.hero {
  position: relative;
  height: 100vh;
  min-height: 830px;
  background: url("../img/hero.jpg");
  background-size: cover; }
  .hero .content {
    height: 100%; }
  .hero::after {
    position: absolute;
    z-index: -1;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    pointer-events: none;
    background: rgba(0, 0, 0, 0.2); }
  .hero .container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .hero .node__content {
    position: absolute;
    z-index: 1;
    font-size: 0.875rem;
    padding-right: 15px;
    padding-left: 15px;
    text-align: right; }
  .hero canvas {
    position: absolute;
    top: 0;
    background: rgba(0, 0, 0, 0.5); }

.path-frontpage h2.hero__title {
  margin-bottom: 2.1875rem;
  font-family: "EB Garamond", Helvetica, Arial, sans-serif;
  font-size: 2.75rem;
  font-weight: 700; }

.events {
  padding: 3.2188rem 0; }

.news-listing {
  padding: 3rem 0; }

.quote {
  padding: 3rem 0;
  color: #000000;
  background: #ffffff; }
  .quote .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .quote blockquote {
    margin-bottom: 0;
    text-align: center; }
    .quote blockquote p {
      position: relative;
      margin-bottom: 2.1875rem;
      font-family: "EB Garamond", Helvetica, Arial, sans-serif;
      font-size: 2.375rem;
      font-weight: 500;
      line-height: 2.5rem;
      letter-spacing: -.01em; }
      .quote blockquote p::before, .quote blockquote p::after {
        position: absolute;
        font-size: 6.25rem;
        font-weight: 400;
        pointer-events: none;
        color: rgba(0, 0, 0, 0.2); }
    .quote blockquote p::before {
      content: '\00ab';
      top: -2.4rem;
      -webkit-transform: translateX(-2.4rem);
              transform: translateX(-2.4rem); }
    .quote blockquote p::after {
      content: '\00bb';
      bottom: -1rem;
      -webkit-transform: translateX(-1.4rem);
              transform: translateX(-1.4rem); }
    .quote blockquote footer {
      letter-spacing: .01em; }

#block-views-block-organization-bck-not-certified {
  margin-top: 8rem; }

.centers {
  padding: 4rem 0; }

.center {
  margin-bottom: 2rem; }
  .center__inner {
    position: relative;
    -webkit-perspective: 1000px;
            perspective: 1000px; }
    .center__inner > * {
      -webkit-transform: translateZ(0px);
              transform: translateZ(0px); }
  .center__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 80%;
    margin: 0 auto;
    padding-bottom: 3.125rem;
    text-align: center;
    color: #ffffff;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .center__content > * {
      -webkit-transform: translateZ(0px);
              transform: translateZ(0px); }
  .center__name {
    margin-bottom: 1rem;
    font-family: "EB Garamond", Helvetica, Arial, sans-serif;
    font-size: 2rem;
    font-weight: 600;
    line-height: 2rem;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.6); }
  .center__text {
    margin-bottom: 2.625rem;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.6); }
  .center__link {
    padding-right: 1.5625rem; }
  .center__img {
    width: 100%; }

.educational {
  padding-bottom: 3rem; }

.educational .col-md-3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

@media (min-width: 768px) {
  .centers-wrapper {
    display: grid;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    grid-template-columns: repeat(2, calc(50% - 1rem)); } }
@media (min-width: 992px) {
  .hero {
    position: relative;
    height: calc(100vh - 70px);
    min-height: auto;
    background-image: url("../img/hero.jpg");
    background-repeat: no-repeat;
    background-size: cover; }
    .hero .content {
      height: 100%; }
    .hero .node__content {
      right: 8.33333%;
      max-width: 33.33333%; }

  .events {
    padding: 6.4375rem 0; }

  .news-listing {
    padding: 6rem 0; }

  .quote {
    padding: 10rem 0; }
    .quote blockquote p {
      margin-bottom: 2.1875rem;
      font-size: 4.375rem;
      line-height: 4.25rem; }
      .quote blockquote p::before, .quote blockquote p::after {
        font-size: 6.25rem; }
    .quote blockquote p::before {
      top: -1.6rem; }
    .quote blockquote p::after {
      bottom: -1.5rem;
      -webkit-transform: translateX(-1.4rem);
              transform: translateX(-1.4rem); }

  .centers-wrapper {
    grid-template-columns: repeat(2, calc(50% - 2rem)); }

  .centers {
    padding: 8rem 0; }

  .center {
    margin-bottom: 4rem; }
    .center__name {
      font-size: 2rem;
      line-height: 2rem; }

  .educational {
    padding-bottom: 6rem; }

  #block-presentationdossierpedagogique .col-lg-3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }

  body.user-logged-in #main main > nav {
    position: absolute;
    top: 250px;
    z-index: 15;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }

  body {
    padding-bottom: 145px; }

  body .site-footer .logos {
    position: fixed; } }
@media (min-width: 1280px) {
  .events {
    padding-top: 9.4375rem; }
    .events .section__title {
      margin-top: -6rem; } }
@media (min-width: 1544px) {
  .hero {
    height: calc(100vh - 90px); }
    .hero .node__content {
      font-size: 1rem; }

  .centers-wrapper {
    grid-template-columns: repeat(3, 25%); }

  .center__name {
    font-size: 2.5rem;
    line-height: 2.8125rem; }
  .center:nth-child(3n + 1) .center__content {
    left: 50%;
    text-align: left; }
  .center:nth-child(3n + 3) .center__content {
    left: -50%;
    text-align: right; } }
